Compare commits

...

23 Commits

Author SHA1 Message Date
speakeasybot
bc1fa68557 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.8 2024-05-03 00:29:29 +00:00
speakeasybot
182d88f7f1 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.4 2024-05-02 00:27:06 +00:00
speakeasybot
300cbb21cd ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.4 2024-05-01 00:29:38 +00:00
speakeasybot
53f3bfd615 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.0 2024-04-30 00:28:14 +00:00
speakeasybot
92b22220f1 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.276.0 2024-04-29 00:28:07 +00:00
speakeasybot
a42f887042 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.276.0 2024-04-28 00:30:12 +00:00
speakeasybot
8b9c5c6e41 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.276.0 2024-04-27 00:26:39 +00:00
speakeasybot
eab41f5f41 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.274.1 2024-04-26 00:27:29 +00:00
speakeasybot
e038f1fdcf ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.274.1 2024-04-25 00:31:21 +00:00
Luke Hagar
835f4244ec regenerated 2024-04-24 15:51:11 -05:00
speakeasybot
287c5cb9ad ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.269.1 2024-04-23 00:27:12 +00:00
Luke Hagar
521174faf5 Update jsr.json 2024-04-22 11:37:36 -05:00
Luke Hagar
6fe948fa1e Update publish-jsr.yaml 2024-04-22 11:35:59 -05:00
Luke Hagar
4abb238f51 Update publish-jsr.yaml 2024-04-22 11:35:41 -05:00
Luke Hagar
c10b6af7de Merge branch 'main' of https://github.com/LukeHagar/plexjs 2024-04-22 11:34:22 -05:00
Luke Hagar
6bec4430ff Separated publish action 2024-04-22 11:34:20 -05:00
Luke Hagar
3fe4aee2ea Update speakeasy_sdk_generation.yml 2024-04-22 11:31:20 -05:00
speakeasybot
5b4a51bee7 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.267.2 2024-04-22 16:28:00 +00:00
Luke Hagar
b0cc884d46 Merge branch 'main' of https://github.com/LukeHagar/plexjs 2024-04-22 11:23:11 -05:00
Luke Hagar
a1dc07ae78 Updated generation to also publish to JSR 2024-04-22 11:22:58 -05:00
Luke Hagar
d100297e1d CodeSee is gone 2024-04-22 11:20:58 -05:00
Luke Hagar
14f7d530ec Updated workflow artifacts 2024-04-22 11:20:16 -05:00
Luke Hagar
622219b018 Removed legacy artifacts 2024-04-22 11:20:01 -05:00
36 changed files with 1689 additions and 832 deletions

View File

@@ -1,23 +0,0 @@
# This workflow was added by CodeSee. Learn more at https://codesee.io/
# This is v2.0 of this workflow file
on:
push:
branches:
- main
pull_request_target:
types: [opened, synchronize, reopened]
name: CodeSee
permissions: read-all
jobs:
codesee:
runs-on: ubuntu-latest
continue-on-error: true
name: Analyze the repo with CodeSee
steps:
- uses: Codesee-io/codesee-action@v2
with:
codesee-token: ${{ secrets.CODESEE_ARCH_DIAG_API_TOKEN }}
codesee-url: https://app.codesee.io

33
.github/workflows/publish-jsr.yaml vendored Normal file
View File

@@ -0,0 +1,33 @@
name: Publish to JSR
permissions:
checks: write
contents: write
pull-requests: write
statuses: write
on:
workflow_dispatch:
push:
branches:
- main
jobs:
publish:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 18
- name: Install dependencies
run: npm install
- name: Publish package
run: npx jsr publish

View File

@@ -1,26 +1,28 @@
name: Generate name: Generate
permissions: permissions:
checks: write checks: write
contents: write contents: write
pull-requests: write pull-requests: write
statuses: write statuses: write
"on":
workflow_dispatch: on:
inputs: workflow_dispatch:
force: inputs:
description: Force generation of SDKs force:
type: boolean description: Force generation of SDKs
default: false type: boolean
schedule: default: false
- cron: 0 0 * * * schedule:
- cron: 0 0 * * *
jobs: jobs:
generate: generate:
uses: speakeasy-api/sdk-generation-action/.github/workflows/workflow-executor.yaml@v15 uses: speakeasy-api/sdk-generation-action/.github/workflows/workflow-executor.yaml@v15
with: with:
force: ${{ github.event.inputs.force }} force: ${{ github.event.inputs.force }}
mode: direct mode: direct
speakeasy_version: latest speakeasy_version: latest
secrets: secrets:
github_access_token: ${{ secrets.GITHUB_TOKEN }} github_access_token: ${{ secrets.GITHUB_TOKEN }}
npm_token: ${{ secrets.NPM_TOKEN }} npm_token: ${{ secrets.NPM_TOKEN }}
speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }} speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }}

View File

@@ -3,10 +3,10 @@ id: 16f22cbf-f23f-4419-8924-3a4b06381947
management: management:
docChecksum: 7a43cd3413d535205cfaee20a4b6a250 docChecksum: 7a43cd3413d535205cfaee20a4b6a250
docVersion: 0.0.3 docVersion: 0.0.3
speakeasyVersion: 1.267.2 speakeasyVersion: 1.277.8
generationVersion: 2.312.1 generationVersion: 2.319.10
releaseVersion: 0.13.1 releaseVersion: 0.14.2
configChecksum: 1ff69678442629cebb3690db99f39502 configChecksum: 2565798d4bdc6007bc5296ad6dc6ee55
repoURL: https://github.com/LukeHagar/plexjs.git repoURL: https://github.com/LukeHagar/plexjs.git
repoSubDirectory: . repoSubDirectory: .
installationURL: https://github.com/LukeHagar/plexjs installationURL: https://github.com/LukeHagar/plexjs
@@ -14,7 +14,7 @@ management:
features: features:
typescript: typescript:
constsAndDefaults: 0.1.5 constsAndDefaults: 0.1.5
core: 3.8.0 core: 3.9.3
flattening: 2.81.1 flattening: 2.81.1
globalSecurity: 2.82.9 globalSecurity: 2.82.9
globalServerURLs: 2.82.4 globalServerURLs: 2.82.4

View File

@@ -12,7 +12,7 @@ generation:
auth: auth:
oAuth2ClientCredentialsEnabled: false oAuth2ClientCredentialsEnabled: false
typescript: typescript:
version: 0.13.1 version: 0.14.2
additionalDependencies: additionalDependencies:
dependencies: {} dependencies: {}
devDependencies: {} devDependencies: {}

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.267.2 speakeasyVersion: 1.277.8
sources: sources:
my-source: {} my-source: {}
targets: targets:
@@ -19,3 +19,5 @@ workflow:
publish: publish:
npm: npm:
token: $NPM_TOKEN token: $NPM_TOKEN
codeSamples:
output: codeSamples.yaml

View File

@@ -1,13 +1,15 @@
workflowVersion: 1.0.0 workflowVersion: 1.0.0
speakeasyVersion: latest speakeasyVersion: latest
sources: sources:
my-source: my-source:
inputs: inputs:
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml - location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
targets: targets:
plexjs: plexjs:
target: typescript target: typescript
source: my-source source: my-source
publish: codeSamples:
npm: output: codeSamples.yaml
token: $NPM_TOKEN publish:
npm:
token: $NPM_TOKEN

View File

@@ -1,26 +0,0 @@
.PHONY: *
all: speakeasy
speakeasy: check-speakeasy
speakeasy generate sdk --lang typescript -o . -s ./openapi.yaml
speakeasy-validate: check-speakeasy
speakeasy validate openapi -s ./openapi.yaml
openapi:
curl https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml > ./openapi.yaml
# This will replace the generation source in your workflow file with your local schema path
generate-from-local:
@if ! which sed >/dev/null; then \
echo "sed is not installed. Please install it using the following command:"; \
echo "For Ubuntu/Debian: apt-get install sed"; \
echo "For macOS: sed is pre-installed"; \
exit 1; \
fi
@sed -i '' '/openapi_docs: |/{n;s|-.*|- ./openapi.yaml|;}' ./.github/workflows/speakeasy_sdk_generation.yml
check-speakeasy:
@command -v speakeasy >/dev/null 2>&1 || { echo >&2 "speakeasy CLI is not installed. Please install before continuing."; exit 1; }

View File

@@ -348,4 +348,114 @@ Based on:
### Generated ### Generated
- [typescript v0.13.1] . - [typescript v0.13.1] .
### Releases ### Releases
- [NPM v0.13.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.13.1 - . - [NPM v0.13.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.13.1 - .
## 2024-04-22 16:25:57
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.267.2 (2.312.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.13.2] .
### Releases
- [NPM v0.13.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.13.2 - .
## 2024-04-23 00:26:56
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.269.1 (2.312.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.13.2] .
### Releases
- [NPM v0.13.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.13.2 - .
## 2024-04-25 00:28:39
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.274.1 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-26 00:27:03
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.274.1 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-27 00:26:14
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.276.0 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-28 00:29:48
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.276.0 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-29 00:27:42
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.276.0 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-30 00:26:07
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.0 (2.317.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.1] .
### Releases
- [NPM v0.14.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.1 - .
## 2024-05-01 00:29:15
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.4 (2.318.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.1] .
### Releases
- [NPM v0.14.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.1 - .
## 2024-05-02 00:26:42
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.4 (2.318.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.1] .
### Releases
- [NPM v0.14.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.1 - .
## 2024-05-03 00:27:14
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.8 (2.319.10) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.2] .
### Releases
- [NPM v0.14.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.2 - .

760
codeSamples.yaml Normal file
View File

@@ -0,0 +1,760 @@
overlay: 1.0.0
info:
title: CodeSamples overlay for typescript target
version: 0.0.0
actions:
- target: $["paths"]["/:/prefs"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getServerPreferences
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getServerPreferences();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/hubs"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getGlobalHubs
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { OnlyTransient } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const count = 1262.49;\n const onlyTransient = OnlyTransient.One;\n \n const result = await plexAPI.getGlobalHubs(count, onlyTransient);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/sections"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getLibraries
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getLibraries();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getServerCapabilities
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getServerCapabilities();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/pins"]["post"]
update:
x-codeSamples:
- lang: typescript
label: getPin
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const strong = false;\n const xPlexClientIdentifier = \"Postman\";\n \n const result = await plexAPI.getPin(strong, xPlexClientIdentifier);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/playlists/{playlistID}"]["put"]
update:
x-codeSamples:
- lang: typescript
label: updatePlaylist
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const playlistID = 3915;\n const title = \"<value>\";\n const summary = \"<value>\";\n \n const result = await plexAPI.updatePlaylist(playlistID, title, summary);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/playlists/upload"]["post"]
update:
x-codeSamples:
- lang: typescript
label: uploadPlaylist
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Force } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const path = \"/home/barkley/playlist.m3u\";\n const force = Force.Zero;\n \n const result = await plexAPI.uploadPlaylist(path, force);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/status/sessions/history/all"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getSessionHistory
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getSessionHistory();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/library/metadata/{ratingKey}/children"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getMetadataChildren
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const ratingKey = 1539.14;\n \n const result = await plexAPI.getMetadataChildren(ratingKey);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/:/timeline"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getTimeline
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { State } from "@lukehagar/plexjs/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getTimeline({
ratingKey: 716.56,
key: "<key>",
state: State.Paused,
hasMDE: 7574.33,
time: 3327.51,
duration: 7585.39,
context: "<value>",
playQueueItemID: 1406.21,
playBackTime: 2699.34,
row: 3536.42,
});
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/playlists/{playlistID}"]["delete"]
update:
x-codeSamples:
- lang: typescript
label: deletePlaylist
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const playlistID = 216.22;\n \n const result = await plexAPI.deletePlaylist(playlistID);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/security/token"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getTransientToken
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { GetTransientTokenQueryParamType, Scope } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const type = GetTransientTokenQueryParamType.Delegation;\n const scope = Scope.All;\n \n const result = await plexAPI.getTransientToken(type, scope);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/devices"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getDevices
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getDevices();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/identity"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getServerIdentity
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getServerIdentity();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/servers"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getServerList
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getServerList();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/library/sections/{sectionId}/refresh"]["get"]
update:
x-codeSamples:
- lang: typescript
label: refreshLibrary
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const sectionId = 934.16;\n \n const result = await plexAPI.refreshLibrary(sectionId);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/playlists"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getPlaylists
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { PlaylistType, QueryParamSmart } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const playlistType = PlaylistType.Audio;\n const smart = QueryParamSmart.Zero;\n \n const result = await plexAPI.getPlaylists(playlistType, smart);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/updater/status"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getUpdateStatus
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getUpdateStatus();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/updater/check"]["put"]
update:
x-codeSamples:
- lang: typescript
label: checkForUpdates
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Download } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const download = Download.One;\n \n const result = await plexAPI.checkForUpdates(download);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/butler"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getButlerTasks
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getButlerTasks();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/butler"]["delete"]
update:
x-codeSamples:
- lang: typescript
label: stopAllTasks
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.stopAllTasks();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/library/sections/{sectionId}"]["delete"]
update:
x-codeSamples:
- lang: typescript
label: deleteLibrary
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const sectionId = 1000;\n \n const result = await plexAPI.deleteLibrary(sectionId);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/playlists/{playlistID}"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getPlaylist
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const playlistID = 4109.48;\n \n const result = await plexAPI.getPlaylist(playlistID);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/status/sessions"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getSessions
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getSessions();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/butler"]["post"]
update:
x-codeSamples:
- lang: typescript
label: startAllTasks
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.startAllTasks();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/butler/{taskName}"]["post"]
update:
x-codeSamples:
- lang: typescript
label: startTask
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { TaskName } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const taskName = TaskName.CleanOldBundles;\n \n const result = await plexAPI.startTask(taskName);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/sections/{sectionId}/{tag}"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getLibraryItems
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Tag } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const sectionId = 451092;\n const tag = Tag.Unwatched;\n \n const result = await plexAPI.getLibraryItems(sectionId, tag);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/metadata/{ratingKey}"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getMetadata
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const ratingKey = 8382.31;\n \n const result = await plexAPI.getMetadata(ratingKey);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/playlists"]["post"]
update:
x-codeSamples:
- lang: typescript
label: createPlaylist
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { QueryParamType, Smart } from "@lukehagar/plexjs/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.createPlaylist({
title: "<value>",
type: QueryParamType.Photo,
smart: Smart.One,
uri: "https://inborn-brochure.biz",
});
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/activities/{activityUUID}"]["delete"]
update:
x-codeSamples:
- lang: typescript
label: cancelServerActivities
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const activityUUID = \"<value>\";\n \n const result = await plexAPI.cancelServerActivities(activityUUID);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/sections/{sectionId}"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getLibrary
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { IncludeDetails } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const sectionId = 1000;\n const includeDetails = IncludeDetails.Zero;\n \n const result = await plexAPI.getLibrary(sectionId, includeDetails);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/security/resources"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getSourceConnectionInformation
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const source = \"server://client-identifier\";\n \n const result = await plexAPI.getSourceConnectionInformation(source);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/statistics/media"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getStatistics
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const timespan = 411769;\n \n const result = await plexAPI.getStatistics(timespan);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/:/scrobble"]["get"]
update:
x-codeSamples:
- lang: typescript
label: markPlayed
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const key = 59398;\n \n const result = await plexAPI.markPlayed(key);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/video/:/transcode/universal/start.mpd"]["get"]
update:
x-codeSamples:
- lang: typescript
label: startUniversalTranscode
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.startUniversalTranscode({
hasMDE: 8924.99,
path: "/etc/mail",
mediaIndex: 9962.95,
partIndex: 1232.82,
protocol: "<value>",
});
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/hubs/search"]["get"]
update:
x-codeSamples:
- lang: typescript
label: performSearch
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const query = \"dylan\";\n const sectionId = 1516.53;\n const limit = 5;\n \n const result = await plexAPI.performSearch(query, sectionId, limit);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/recentlyAdded"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getRecentlyAdded
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getRecentlyAdded();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/search"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getSearchResults
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const query = \"110\";\n \n const result = await plexAPI.getSearchResults(query);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/hashes"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getFileHash
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const url = \"file://C:\\Image.png&type=13\";\n const type = 4462.17;\n \n const result = await plexAPI.getFileHash(url, type);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/onDeck"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getOnDeck
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getOnDeck();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/log"]["post"]
update:
x-codeSamples:
- lang: typescript
label: logMultiLine
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.logMultiLine("level=4&message=Test%20message%201&source=postman
level=3&message=Test%20message%202&source=postman
level=1&message=Test%20message%203&source=postman");
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/playlists/{playlistID}/items"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getPlaylistContents
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const playlistID = 5004.46;\n const type = 9403.59;\n \n const result = await plexAPI.getPlaylistContents(playlistID, type);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/hubs/sections/{sectionId}"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getLibraryHubs
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { QueryParamOnlyTransient } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const sectionId = 6728.76;\n const count = 9010.22;\n const onlyTransient = QueryParamOnlyTransient.Zero;\n \n const result = await plexAPI.getLibraryHubs(sectionId, count, onlyTransient);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/pins/{pinID}"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getToken
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const pinID = \"<value>\";\n const xPlexClientIdentifier = \"Postman\";\n \n const result = await plexAPI.getToken(pinID, xPlexClientIdentifier);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/photo/:/transcode"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getResizedPhoto
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { MinSize, Upscale } from "@lukehagar/plexjs/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getResizedPhoto({
width: 110,
height: 165,
opacity: 100,
blur: 20,
minSize: MinSize.One,
upscale: Upscale.Zero,
url: "/library/metadata/49564/thumb/1654258204",
});
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/playlists/{playlistID}/items"]["delete"]
update:
x-codeSamples:
- lang: typescript
label: clearPlaylistContents
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const playlistID = 1893.18;\n \n const result = await plexAPI.clearPlaylistContents(playlistID);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/updater/apply"]["put"]
update:
x-codeSamples:
- lang: typescript
label: applyUpdates
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Skip, Tonight } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const tonight = Tonight.One;\n const skip = Skip.Zero;\n \n const result = await plexAPI.applyUpdates(tonight, skip);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/transcode/sessions"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getTranscodeSessions
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getTranscodeSessions();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/clients"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getAvailableClients
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getAvailableClients();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/butler/{taskName}"]["delete"]
update:
x-codeSamples:
- lang: typescript
label: stopTask
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { PathParamTaskName } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const taskName = PathParamTaskName.BackupDatabase;\n \n const result = await plexAPI.stopTask(taskName);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/hubs/search/voice"]["get"]
update:
x-codeSamples:
- lang: typescript
label: performVoiceSearch
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const query = \"dead+poop\";\n const sectionId = 4094.8;\n const limit = 5;\n \n const result = await plexAPI.performVoiceSearch(query, sectionId, limit);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/log"]["get"]
update:
x-codeSamples:
- lang: typescript
label: logLine
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Level } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const level = Level.Three;\n const message = \"Test log message\";\n const source = \"Postman\";\n \n const result = await plexAPI.logLine(level, message, source);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/playlists/{playlistID}/items"]["put"]
update:
x-codeSamples:
- lang: typescript
label: addPlaylistContents
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const playlistID = 8502.01;\n const uri = \"server://12345/com.plexapp.plugins.library/library/metadata/1\";\n const playQueueID = 123;\n \n const result = await plexAPI.addPlaylistContents(playlistID, uri, playQueueID);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/myplex/account"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getMyPlexAccount
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getMyPlexAccount();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/:/unscrobble"]["get"]
update:
x-codeSamples:
- lang: typescript
label: markUnplayed
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const key = 59398;\n \n const result = await plexAPI.markUnplayed(key);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/activities"]["get"]
update:
x-codeSamples:
- lang: typescript
label: getServerActivities
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.getServerActivities();
// Handle the result
console.log(result)
}
run();
- target: $["paths"]["/transcode/sessions/{sessionKey}"]["delete"]
update:
x-codeSamples:
- lang: typescript
label: stopTranscodeSession
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const sessionKey = \"zz7llzqlx8w9vnrsbnwhbmep\";\n \n const result = await plexAPI.stopTranscodeSession(sessionKey);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/:/progress"]["post"]
update:
x-codeSamples:
- lang: typescript
label: updatePlayProgress
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const key = \"<value>\";\n const time = 6900.91;\n const state = \"<value>\";\n \n const result = await plexAPI.updatePlayProgress(key, time, state);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/library/sections/{sectionId}/search"]["get"]
update:
x-codeSamples:
- lang: typescript
label: searchLibrary
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Type } from \"@lukehagar/plexjs/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"Postman\",\n});\n\nasync function run() {\n const sectionId = 933505;\n const type = Type.Four;\n \n const result = await plexAPI.searchLibrary(sectionId, type);\n\n // Handle the result\n console.log(result)\n}\n\nrun();"
- target: $["paths"]["/log/networked"]["get"]
update:
x-codeSamples:
- lang: typescript
label: enablePaperTrail
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const result = await plexAPI.enablePaperTrail();
// Handle the result
console.log(result)
}
run();

457
files.gen
View File

@@ -1,457 +0,0 @@
src/sdk/server.ts
src/sdk/media.ts
src/sdk/activities.ts
src/sdk/butler.ts
src/sdk/hubs.ts
src/sdk/search.ts
src/sdk/library.ts
src/sdk/log.ts
src/sdk/playlists.ts
src/sdk/security.ts
src/sdk/sessions.ts
src/sdk/updater.ts
src/sdk/video.ts
src/sdk/sdk.ts
.eslintrc.js
.npmignore
package-lock.json
package.json
src/index.ts
src/lib/base64.ts
src/lib/config.ts
src/lib/encodings.ts
src/lib/http.ts
src/lib/retries.ts
src/lib/sdks.ts
src/lib/security.ts
src/lib/url.ts
src/sdk/index.ts
src/models/errors/sdkerror.ts
src/types/blobs.ts
src/types/decimal.ts
src/types/index.ts
src/types/operations.ts
src/types/rfcdate.ts
tsconfig.json
src/models/operations/getservercapabilities.ts
src/models/operations/getserverpreferences.ts
src/models/operations/getavailableclients.ts
src/models/operations/getdevices.ts
src/models/operations/getserveridentity.ts
src/models/operations/getmyplexaccount.ts
src/models/operations/getresizedphoto.ts
src/models/operations/getserverlist.ts
src/models/operations/markplayed.ts
src/models/operations/markunplayed.ts
src/models/operations/updateplayprogress.ts
src/models/operations/getserveractivities.ts
src/models/operations/cancelserveractivities.ts
src/models/operations/getbutlertasks.ts
src/models/operations/startalltasks.ts
src/models/operations/stopalltasks.ts
src/models/operations/starttask.ts
src/models/operations/stoptask.ts
src/models/operations/getglobalhubs.ts
src/models/operations/getlibraryhubs.ts
src/models/operations/performsearch.ts
src/models/operations/performvoicesearch.ts
src/models/operations/getsearchresults.ts
src/models/operations/getfilehash.ts
src/models/operations/getrecentlyadded.ts
src/models/operations/getlibraries.ts
src/models/operations/getlibrary.ts
src/models/operations/deletelibrary.ts
src/models/operations/getlibraryitems.ts
src/models/operations/refreshlibrary.ts
src/models/operations/getlatestlibraryitems.ts
src/models/operations/getcommonlibraryitems.ts
src/models/operations/getmetadata.ts
src/models/operations/getmetadatachildren.ts
src/models/operations/getondeck.ts
src/models/operations/logline.ts
src/models/operations/logmultiline.ts
src/models/operations/enablepapertrail.ts
src/models/operations/createplaylist.ts
src/models/operations/getplaylists.ts
src/models/operations/getplaylist.ts
src/models/operations/deleteplaylist.ts
src/models/operations/updateplaylist.ts
src/models/operations/getplaylistcontents.ts
src/models/operations/clearplaylistcontents.ts
src/models/operations/addplaylistcontents.ts
src/models/operations/uploadplaylist.ts
src/models/operations/gettransienttoken.ts
src/models/operations/getsourceconnectioninformation.ts
src/models/operations/getsessions.ts
src/models/operations/getsessionhistory.ts
src/models/operations/gettranscodesessions.ts
src/models/operations/stoptranscodesession.ts
src/models/operations/getupdatestatus.ts
src/models/operations/checkforupdates.ts
src/models/operations/applyupdates.ts
src/models/operations/startuniversaltranscode.ts
src/models/operations/gettimeline.ts
src/models/errors/getservercapabilities.ts
src/models/errors/getserverpreferences.ts
src/models/errors/getavailableclients.ts
src/models/errors/getdevices.ts
src/models/errors/getserveridentity.ts
src/models/errors/getmyplexaccount.ts
src/models/errors/getresizedphoto.ts
src/models/errors/getserverlist.ts
src/models/errors/markplayed.ts
src/models/errors/markunplayed.ts
src/models/errors/updateplayprogress.ts
src/models/errors/getserveractivities.ts
src/models/errors/cancelserveractivities.ts
src/models/errors/getbutlertasks.ts
src/models/errors/startalltasks.ts
src/models/errors/stopalltasks.ts
src/models/errors/starttask.ts
src/models/errors/stoptask.ts
src/models/errors/getglobalhubs.ts
src/models/errors/getlibraryhubs.ts
src/models/errors/performsearch.ts
src/models/errors/performvoicesearch.ts
src/models/errors/getsearchresults.ts
src/models/errors/getfilehash.ts
src/models/errors/getrecentlyadded.ts
src/models/errors/getlibraries.ts
src/models/errors/getlibrary.ts
src/models/errors/deletelibrary.ts
src/models/errors/getlibraryitems.ts
src/models/errors/refreshlibrary.ts
src/models/errors/getlatestlibraryitems.ts
src/models/errors/getcommonlibraryitems.ts
src/models/errors/getmetadata.ts
src/models/errors/getmetadatachildren.ts
src/models/errors/getondeck.ts
src/models/errors/logline.ts
src/models/errors/logmultiline.ts
src/models/errors/enablepapertrail.ts
src/models/errors/createplaylist.ts
src/models/errors/getplaylists.ts
src/models/errors/getplaylist.ts
src/models/errors/deleteplaylist.ts
src/models/errors/updateplaylist.ts
src/models/errors/getplaylistcontents.ts
src/models/errors/clearplaylistcontents.ts
src/models/errors/addplaylistcontents.ts
src/models/errors/uploadplaylist.ts
src/models/errors/gettransienttoken.ts
src/models/errors/getsourceconnectioninformation.ts
src/models/errors/getsessions.ts
src/models/errors/getsessionhistory.ts
src/models/errors/gettranscodesessions.ts
src/models/errors/stoptranscodesession.ts
src/models/errors/getupdatestatus.ts
src/models/errors/checkforupdates.ts
src/models/errors/applyupdates.ts
src/models/errors/startuniversaltranscode.ts
src/models/errors/gettimeline.ts
src/models/components/security.ts
src/models/errors/index.ts
src/models/operations/index.ts
src/models/components/index.ts
docs/models/operations/directory.md
docs/models/operations/mediacontainer.md
docs/models/operations/getservercapabilitiesresponsebody.md
docs/models/operations/getservercapabilitiesresponse.md
docs/models/operations/getserverpreferencesresponse.md
docs/models/operations/server.md
docs/models/operations/getavailableclientsmediacontainer.md
docs/models/operations/responsebody.md
docs/models/operations/getavailableclientsresponse.md
docs/models/operations/device.md
docs/models/operations/getdevicesmediacontainer.md
docs/models/operations/getdevicesresponsebody.md
docs/models/operations/getdevicesresponse.md
docs/models/operations/getserveridentitymediacontainer.md
docs/models/operations/getserveridentityresponsebody.md
docs/models/operations/getserveridentityresponse.md
docs/models/operations/myplex.md
docs/models/operations/getmyplexaccountresponsebody.md
docs/models/operations/getmyplexaccountresponse.md
docs/models/operations/minsize.md
docs/models/operations/upscale.md
docs/models/operations/getresizedphotorequest.md
docs/models/operations/getresizedphotoresponse.md
docs/models/operations/getserverlistserver.md
docs/models/operations/getserverlistmediacontainer.md
docs/models/operations/getserverlistresponsebody.md
docs/models/operations/getserverlistresponse.md
docs/models/operations/markplayedrequest.md
docs/models/operations/markplayedresponse.md
docs/models/operations/markunplayedrequest.md
docs/models/operations/markunplayedresponse.md
docs/models/operations/updateplayprogressrequest.md
docs/models/operations/updateplayprogressresponse.md
docs/models/operations/context.md
docs/models/operations/activity.md
docs/models/operations/getserveractivitiesmediacontainer.md
docs/models/operations/getserveractivitiesresponsebody.md
docs/models/operations/getserveractivitiesresponse.md
docs/models/operations/cancelserveractivitiesrequest.md
docs/models/operations/cancelserveractivitiesresponse.md
docs/models/operations/butlertask.md
docs/models/operations/butlertasks.md
docs/models/operations/getbutlertasksresponsebody.md
docs/models/operations/getbutlertasksresponse.md
docs/models/operations/startalltasksresponse.md
docs/models/operations/stopalltasksresponse.md
docs/models/operations/taskname.md
docs/models/operations/starttaskrequest.md
docs/models/operations/starttaskresponse.md
docs/models/operations/pathparamtaskname.md
docs/models/operations/stoptaskrequest.md
docs/models/operations/stoptaskresponse.md
docs/models/operations/onlytransient.md
docs/models/operations/getglobalhubsrequest.md
docs/models/operations/getglobalhubsresponse.md
docs/models/operations/queryparamonlytransient.md
docs/models/operations/getlibraryhubsrequest.md
docs/models/operations/getlibraryhubsresponse.md
docs/models/operations/performsearchrequest.md
docs/models/operations/performsearchresponse.md
docs/models/operations/performvoicesearchrequest.md
docs/models/operations/performvoicesearchresponse.md
docs/models/operations/getsearchresultsrequest.md
docs/models/operations/getsearchresultspart.md
docs/models/operations/getsearchresultsmedia.md
docs/models/operations/getsearchresultsgenre.md
docs/models/operations/getsearchresultsdirector.md
docs/models/operations/getsearchresultswriter.md
docs/models/operations/getsearchresultscountry.md
docs/models/operations/getsearchresultsrole.md
docs/models/operations/getsearchresultsmetadata.md
docs/models/operations/provider.md
docs/models/operations/getsearchresultsmediacontainer.md
docs/models/operations/getsearchresultsresponsebody.md
docs/models/operations/getsearchresultsresponse.md
docs/models/operations/getfilehashrequest.md
docs/models/operations/getfilehashresponse.md
docs/models/operations/part.md
docs/models/operations/media.md
docs/models/operations/genre.md
docs/models/operations/director.md
docs/models/operations/writer.md
docs/models/operations/country.md
docs/models/operations/role.md
docs/models/operations/metadata.md
docs/models/operations/getrecentlyaddedmediacontainer.md
docs/models/operations/getrecentlyaddedresponsebody.md
docs/models/operations/getrecentlyaddedresponse.md
docs/models/operations/getlibrariesresponse.md
docs/models/operations/includedetails.md
docs/models/operations/getlibraryrequest.md
docs/models/operations/getlibraryresponse.md
docs/models/operations/deletelibraryrequest.md
docs/models/operations/deletelibraryresponse.md
docs/models/operations/getlibraryitemsrequest.md
docs/models/operations/getlibraryitemsresponse.md
docs/models/operations/refreshlibraryrequest.md
docs/models/operations/refreshlibraryresponse.md
docs/models/operations/getlatestlibraryitemsrequest.md
docs/models/operations/getlatestlibraryitemsresponse.md
docs/models/operations/getcommonlibraryitemsrequest.md
docs/models/operations/getcommonlibraryitemsresponse.md
docs/models/operations/getmetadatarequest.md
docs/models/operations/getmetadataresponse.md
docs/models/operations/getmetadatachildrenrequest.md
docs/models/operations/getmetadatachildrenresponse.md
docs/models/operations/stream.md
docs/models/operations/getondeckpart.md
docs/models/operations/getondeckmedia.md
docs/models/operations/guids.md
docs/models/operations/getondeckmetadata.md
docs/models/operations/getondeckmediacontainer.md
docs/models/operations/getondeckresponsebody.md
docs/models/operations/getondeckresponse.md
docs/models/operations/level.md
docs/models/operations/loglinerequest.md
docs/models/operations/loglineresponse.md
docs/models/operations/logmultilineresponse.md
docs/models/operations/enablepapertrailresponse.md
docs/models/operations/typet.md
docs/models/operations/smart.md
docs/models/operations/createplaylistrequest.md
docs/models/operations/createplaylistresponse.md
docs/models/operations/playlisttype.md
docs/models/operations/queryparamsmart.md
docs/models/operations/getplaylistsrequest.md
docs/models/operations/getplaylistsresponse.md
docs/models/operations/getplaylistrequest.md
docs/models/operations/getplaylistresponse.md
docs/models/operations/deleteplaylistrequest.md
docs/models/operations/deleteplaylistresponse.md
docs/models/operations/updateplaylistrequest.md
docs/models/operations/updateplaylistresponse.md
docs/models/operations/getplaylistcontentsrequest.md
docs/models/operations/getplaylistcontentsresponse.md
docs/models/operations/clearplaylistcontentsrequest.md
docs/models/operations/clearplaylistcontentsresponse.md
docs/models/operations/addplaylistcontentsrequest.md
docs/models/operations/addplaylistcontentsresponse.md
docs/models/operations/force.md
docs/models/operations/uploadplaylistrequest.md
docs/models/operations/uploadplaylistresponse.md
docs/models/operations/queryparamtype.md
docs/models/operations/scope.md
docs/models/operations/gettransienttokenrequest.md
docs/models/operations/gettransienttokenresponse.md
docs/models/operations/getsourceconnectioninformationrequest.md
docs/models/operations/getsourceconnectioninformationresponse.md
docs/models/operations/getsessionsresponse.md
docs/models/operations/getsessionhistoryresponse.md
docs/models/operations/transcodesession.md
docs/models/operations/gettranscodesessionsmediacontainer.md
docs/models/operations/gettranscodesessionsresponsebody.md
docs/models/operations/gettranscodesessionsresponse.md
docs/models/operations/stoptranscodesessionrequest.md
docs/models/operations/stoptranscodesessionresponse.md
docs/models/operations/getupdatestatusresponse.md
docs/models/operations/download.md
docs/models/operations/checkforupdatesrequest.md
docs/models/operations/checkforupdatesresponse.md
docs/models/operations/tonight.md
docs/models/operations/skip.md
docs/models/operations/applyupdatesrequest.md
docs/models/operations/applyupdatesresponse.md
docs/models/operations/startuniversaltranscoderequest.md
docs/models/operations/startuniversaltranscoderesponse.md
docs/models/operations/state.md
docs/models/operations/gettimelinerequest.md
docs/models/operations/gettimelineresponse.md
docs/models/errors/errors.md
docs/models/errors/getservercapabilitiesresponsebody.md
docs/models/errors/getserverpreferenceserrors.md
docs/models/errors/getserverpreferencesresponsebody.md
docs/models/errors/getavailableclientserrors.md
docs/models/errors/getavailableclientsresponsebody.md
docs/models/errors/getdeviceserrors.md
docs/models/errors/getdevicesresponsebody.md
docs/models/errors/getserveridentityerrors.md
docs/models/errors/getserveridentityresponsebody.md
docs/models/errors/getmyplexaccounterrors.md
docs/models/errors/getmyplexaccountresponsebody.md
docs/models/errors/getresizedphotoerrors.md
docs/models/errors/getresizedphotoresponsebody.md
docs/models/errors/getserverlisterrors.md
docs/models/errors/getserverlistresponsebody.md
docs/models/errors/markplayederrors.md
docs/models/errors/markplayedresponsebody.md
docs/models/errors/markunplayederrors.md
docs/models/errors/markunplayedresponsebody.md
docs/models/errors/updateplayprogresserrors.md
docs/models/errors/updateplayprogressresponsebody.md
docs/models/errors/getserveractivitieserrors.md
docs/models/errors/getserveractivitiesresponsebody.md
docs/models/errors/cancelserveractivitieserrors.md
docs/models/errors/cancelserveractivitiesresponsebody.md
docs/models/errors/getbutlertaskserrors.md
docs/models/errors/getbutlertasksresponsebody.md
docs/models/errors/startalltaskserrors.md
docs/models/errors/startalltasksresponsebody.md
docs/models/errors/stopalltaskserrors.md
docs/models/errors/stopalltasksresponsebody.md
docs/models/errors/starttaskerrors.md
docs/models/errors/starttaskresponsebody.md
docs/models/errors/stoptaskerrors.md
docs/models/errors/stoptaskresponsebody.md
docs/models/errors/getglobalhubserrors.md
docs/models/errors/getglobalhubsresponsebody.md
docs/models/errors/getlibraryhubserrors.md
docs/models/errors/getlibraryhubsresponsebody.md
docs/models/errors/performsearcherrors.md
docs/models/errors/performsearchresponsebody.md
docs/models/errors/performvoicesearcherrors.md
docs/models/errors/performvoicesearchresponsebody.md
docs/models/errors/getsearchresultserrors.md
docs/models/errors/getsearchresultsresponsebody.md
docs/models/errors/getfilehasherrors.md
docs/models/errors/getfilehashresponsebody.md
docs/models/errors/getrecentlyaddederrors.md
docs/models/errors/getrecentlyaddedresponsebody.md
docs/models/errors/getlibrarieserrors.md
docs/models/errors/getlibrariesresponsebody.md
docs/models/errors/getlibraryerrors.md
docs/models/errors/getlibraryresponsebody.md
docs/models/errors/deletelibraryerrors.md
docs/models/errors/deletelibraryresponsebody.md
docs/models/errors/getlibraryitemserrors.md
docs/models/errors/getlibraryitemsresponsebody.md
docs/models/errors/refreshlibraryerrors.md
docs/models/errors/refreshlibraryresponsebody.md
docs/models/errors/getlatestlibraryitemserrors.md
docs/models/errors/getlatestlibraryitemsresponsebody.md
docs/models/errors/getcommonlibraryitemserrors.md
docs/models/errors/getcommonlibraryitemsresponsebody.md
docs/models/errors/getmetadataerrors.md
docs/models/errors/getmetadataresponsebody.md
docs/models/errors/getmetadatachildrenerrors.md
docs/models/errors/getmetadatachildrenresponsebody.md
docs/models/errors/getondeckerrors.md
docs/models/errors/getondeckresponsebody.md
docs/models/errors/loglineerrors.md
docs/models/errors/loglineresponsebody.md
docs/models/errors/logmultilineerrors.md
docs/models/errors/logmultilineresponsebody.md
docs/models/errors/enablepapertrailerrors.md
docs/models/errors/enablepapertrailresponsebody.md
docs/models/errors/createplaylisterrors.md
docs/models/errors/createplaylistresponsebody.md
docs/models/errors/getplaylistserrors.md
docs/models/errors/getplaylistsresponsebody.md
docs/models/errors/getplaylisterrors.md
docs/models/errors/getplaylistresponsebody.md
docs/models/errors/deleteplaylisterrors.md
docs/models/errors/deleteplaylistresponsebody.md
docs/models/errors/updateplaylisterrors.md
docs/models/errors/updateplaylistresponsebody.md
docs/models/errors/getplaylistcontentserrors.md
docs/models/errors/getplaylistcontentsresponsebody.md
docs/models/errors/clearplaylistcontentserrors.md
docs/models/errors/clearplaylistcontentsresponsebody.md
docs/models/errors/addplaylistcontentserrors.md
docs/models/errors/addplaylistcontentsresponsebody.md
docs/models/errors/uploadplaylisterrors.md
docs/models/errors/uploadplaylistresponsebody.md
docs/models/errors/gettransienttokenerrors.md
docs/models/errors/gettransienttokenresponsebody.md
docs/models/errors/getsourceconnectioninformationerrors.md
docs/models/errors/getsourceconnectioninformationresponsebody.md
docs/models/errors/getsessionserrors.md
docs/models/errors/getsessionsresponsebody.md
docs/models/errors/getsessionhistoryerrors.md
docs/models/errors/getsessionhistoryresponsebody.md
docs/models/errors/gettranscodesessionserrors.md
docs/models/errors/gettranscodesessionsresponsebody.md
docs/models/errors/stoptranscodesessionerrors.md
docs/models/errors/stoptranscodesessionresponsebody.md
docs/models/errors/getupdatestatuserrors.md
docs/models/errors/getupdatestatusresponsebody.md
docs/models/errors/checkforupdateserrors.md
docs/models/errors/checkforupdatesresponsebody.md
docs/models/errors/applyupdateserrors.md
docs/models/errors/applyupdatesresponsebody.md
docs/models/errors/startuniversaltranscodeerrors.md
docs/models/errors/startuniversaltranscoderesponsebody.md
docs/models/errors/gettimelineerrors.md
docs/models/errors/gettimelineresponsebody.md
docs/models/components/security.md
docs/sdks/plexapi/README.md
docs/sdks/server/README.md
docs/sdks/media/README.md
docs/sdks/activities/README.md
docs/sdks/butler/README.md
docs/sdks/hubs/README.md
docs/sdks/search/README.md
docs/sdks/library/README.md
docs/sdks/log/README.md
docs/sdks/playlists/README.md
docs/sdks/security/README.md
docs/sdks/sessions/README.md
docs/sdks/updater/README.md
docs/sdks/video/README.md
USAGE.md
.gitattributes

View File

@@ -2,7 +2,7 @@
{ {
"name": "@lukehagar/plexjs", "name": "@lukehagar/plexjs",
"version": "0.13.1", "version": "0.14.2",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",
"./models/errors": "./src/models/errors/index.ts", "./models/errors": "./src/models/errors/index.ts",
@@ -20,6 +20,7 @@
"README.md", "README.md",
"RUNTIMES.md", "RUNTIMES.md",
"USAGE.md", "USAGE.md",
"jsr.json",
"src/**/*.ts" "src/**/*.ts"
] ]
} }

350
package-lock.json generated
View File

@@ -1,21 +1,21 @@
{ {
"name": "@lukehagar/plexjs", "name": "@lukehagar/plexjs",
"version": "0.13.1", "version": "0.14.2",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@lukehagar/plexjs", "name": "@lukehagar/plexjs",
"version": "0.13.1", "version": "0.14.2",
"devDependencies": { "devDependencies": {
"@types/jsonpath": "^0.2.4", "@types/jsonpath": "^0.2.4",
"@typescript-eslint/eslint-plugin": "^6.13.2", "@typescript-eslint/eslint-plugin": "^7.7.1",
"@typescript-eslint/parser": "^6.13.2", "@typescript-eslint/parser": "^7.7.1",
"eslint": "^8.55.0", "eslint": "^8.57.0",
"eslint-import-resolver-typescript": "^3.6.1", "eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-import": "^2.29.0", "eslint-plugin-import": "^2.29.1",
"typescript": "^5.3.3", "typescript": "^5.4.5",
"zod": "^3.22.4" "zod": "^3.23.4"
}, },
"peerDependencies": { "peerDependencies": {
"zod": ">= 3" "zod": ">= 3"
@@ -100,9 +100,9 @@
} }
}, },
"node_modules/@eslint/js": { "node_modules/@eslint/js": {
"version": "8.56.0", "version": "8.57.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
"integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
"dev": true, "dev": true,
"engines": { "engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0" "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -217,39 +217,39 @@
"dev": true "dev": true
}, },
"node_modules/@types/semver": { "node_modules/@types/semver": {
"version": "7.5.7", "version": "7.5.8",
"resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.7.tgz", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
"integrity": "sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg==", "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==",
"dev": true "dev": true
}, },
"node_modules/@typescript-eslint/eslint-plugin": { "node_modules/@typescript-eslint/eslint-plugin": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.7.1.tgz",
"integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", "integrity": "sha512-KwfdWXJBOviaBVhxO3p5TJiLpNuh2iyXyjmWN0f1nU87pwyvfS0EmjC6ukQVYVFJd/K1+0NWGPDXiyEyQorn0Q==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@eslint-community/regexpp": "^4.5.1", "@eslint-community/regexpp": "^4.10.0",
"@typescript-eslint/scope-manager": "6.21.0", "@typescript-eslint/scope-manager": "7.7.1",
"@typescript-eslint/type-utils": "6.21.0", "@typescript-eslint/type-utils": "7.7.1",
"@typescript-eslint/utils": "6.21.0", "@typescript-eslint/utils": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0", "@typescript-eslint/visitor-keys": "7.7.1",
"debug": "^4.3.4", "debug": "^4.3.4",
"graphemer": "^1.4.0", "graphemer": "^1.4.0",
"ignore": "^5.2.4", "ignore": "^5.3.1",
"natural-compare": "^1.4.0", "natural-compare": "^1.4.0",
"semver": "^7.5.4", "semver": "^7.6.0",
"ts-api-utils": "^1.0.1" "ts-api-utils": "^1.3.0"
}, },
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
"url": "https://opencollective.com/typescript-eslint" "url": "https://opencollective.com/typescript-eslint"
}, },
"peerDependencies": { "peerDependencies": {
"@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", "@typescript-eslint/parser": "^7.0.0",
"eslint": "^7.0.0 || ^8.0.0" "eslint": "^8.56.0"
}, },
"peerDependenciesMeta": { "peerDependenciesMeta": {
"typescript": { "typescript": {
@@ -258,26 +258,26 @@
} }
}, },
"node_modules/@typescript-eslint/parser": { "node_modules/@typescript-eslint/parser": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.7.1.tgz",
"integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", "integrity": "sha512-vmPzBOOtz48F6JAGVS/kZYk4EkXao6iGrD838sp1w3NQQC0W8ry/q641KU4PrG7AKNAf56NOcR8GOpH8l9FPCw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@typescript-eslint/scope-manager": "6.21.0", "@typescript-eslint/scope-manager": "7.7.1",
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/typescript-estree": "6.21.0", "@typescript-eslint/typescript-estree": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0", "@typescript-eslint/visitor-keys": "7.7.1",
"debug": "^4.3.4" "debug": "^4.3.4"
}, },
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
"url": "https://opencollective.com/typescript-eslint" "url": "https://opencollective.com/typescript-eslint"
}, },
"peerDependencies": { "peerDependencies": {
"eslint": "^7.0.0 || ^8.0.0" "eslint": "^8.56.0"
}, },
"peerDependenciesMeta": { "peerDependenciesMeta": {
"typescript": { "typescript": {
@@ -286,16 +286,16 @@
} }
}, },
"node_modules/@typescript-eslint/scope-manager": { "node_modules/@typescript-eslint/scope-manager": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.7.1.tgz",
"integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", "integrity": "sha512-PytBif2SF+9SpEUKynYn5g1RHFddJUcyynGpztX3l/ik7KmZEv19WCMhUBkHXPU9es/VWGD3/zg3wg90+Dh2rA==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0" "@typescript-eslint/visitor-keys": "7.7.1"
}, },
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
@@ -303,25 +303,25 @@
} }
}, },
"node_modules/@typescript-eslint/type-utils": { "node_modules/@typescript-eslint/type-utils": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.7.1.tgz",
"integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", "integrity": "sha512-ZksJLW3WF7o75zaBPScdW1Gbkwhd/lyeXGf1kQCxJaOeITscoSl0MjynVvCzuV5boUz/3fOI06Lz8La55mu29Q==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@typescript-eslint/typescript-estree": "6.21.0", "@typescript-eslint/typescript-estree": "7.7.1",
"@typescript-eslint/utils": "6.21.0", "@typescript-eslint/utils": "7.7.1",
"debug": "^4.3.4", "debug": "^4.3.4",
"ts-api-utils": "^1.0.1" "ts-api-utils": "^1.3.0"
}, },
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
"url": "https://opencollective.com/typescript-eslint" "url": "https://opencollective.com/typescript-eslint"
}, },
"peerDependencies": { "peerDependencies": {
"eslint": "^7.0.0 || ^8.0.0" "eslint": "^8.56.0"
}, },
"peerDependenciesMeta": { "peerDependenciesMeta": {
"typescript": { "typescript": {
@@ -330,12 +330,12 @@
} }
}, },
"node_modules/@typescript-eslint/types": { "node_modules/@typescript-eslint/types": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.7.1.tgz",
"integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", "integrity": "sha512-AmPmnGW1ZLTpWa+/2omPrPfR7BcbUU4oha5VIbSbS1a1Tv966bklvLNXxp3mrbc+P2j4MNOTfDffNsk4o0c6/w==",
"dev": true, "dev": true,
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
@@ -343,22 +343,22 @@
} }
}, },
"node_modules/@typescript-eslint/typescript-estree": { "node_modules/@typescript-eslint/typescript-estree": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.7.1.tgz",
"integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", "integrity": "sha512-CXe0JHCXru8Fa36dteXqmH2YxngKJjkQLjxzoj6LYwzZ7qZvgsLSc+eqItCrqIop8Vl2UKoAi0StVWu97FQZIQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0", "@typescript-eslint/visitor-keys": "7.7.1",
"debug": "^4.3.4", "debug": "^4.3.4",
"globby": "^11.1.0", "globby": "^11.1.0",
"is-glob": "^4.0.3", "is-glob": "^4.0.3",
"minimatch": "9.0.3", "minimatch": "^9.0.4",
"semver": "^7.5.4", "semver": "^7.6.0",
"ts-api-utils": "^1.0.1" "ts-api-utils": "^1.3.0"
}, },
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
@@ -371,41 +371,41 @@
} }
}, },
"node_modules/@typescript-eslint/utils": { "node_modules/@typescript-eslint/utils": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.7.1.tgz",
"integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", "integrity": "sha512-QUvBxPEaBXf41ZBbaidKICgVL8Hin0p6prQDu6bbetWo39BKbWJxRsErOzMNT1rXvTll+J7ChrbmMCXM9rsvOQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@eslint-community/eslint-utils": "^4.4.0", "@eslint-community/eslint-utils": "^4.4.0",
"@types/json-schema": "^7.0.12", "@types/json-schema": "^7.0.15",
"@types/semver": "^7.5.0", "@types/semver": "^7.5.8",
"@typescript-eslint/scope-manager": "6.21.0", "@typescript-eslint/scope-manager": "7.7.1",
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/typescript-estree": "6.21.0", "@typescript-eslint/typescript-estree": "7.7.1",
"semver": "^7.5.4" "semver": "^7.6.0"
}, },
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
"url": "https://opencollective.com/typescript-eslint" "url": "https://opencollective.com/typescript-eslint"
}, },
"peerDependencies": { "peerDependencies": {
"eslint": "^7.0.0 || ^8.0.0" "eslint": "^8.56.0"
} }
}, },
"node_modules/@typescript-eslint/visitor-keys": { "node_modules/@typescript-eslint/visitor-keys": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.7.1.tgz",
"integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", "integrity": "sha512-gBL3Eq25uADw1LQ9kVpf3hRM+DWzs0uZknHYK3hq4jcTPqVCClHGDnB6UUUV2SFeBeA4KWHWbbLqmbGcZ4FYbw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"eslint-visitor-keys": "^3.4.1" "eslint-visitor-keys": "^3.4.3"
}, },
"engines": { "engines": {
"node": "^16.0.0 || >=18.0.0" "node": "^18.18.0 || >=20.0.0"
}, },
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
@@ -978,16 +978,16 @@
} }
}, },
"node_modules/eslint": { "node_modules/eslint": {
"version": "8.56.0", "version": "8.57.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
"integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.6.1", "@eslint-community/regexpp": "^4.6.1",
"@eslint/eslintrc": "^2.1.4", "@eslint/eslintrc": "^2.1.4",
"@eslint/js": "8.56.0", "@eslint/js": "8.57.0",
"@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/config-array": "^0.11.14",
"@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8", "@nodelib/fs.walk": "^1.2.8",
"@ungap/structured-clone": "^1.2.0", "@ungap/structured-clone": "^1.2.0",
@@ -2151,9 +2151,9 @@
} }
}, },
"node_modules/minimatch": { "node_modules/minimatch": {
"version": "9.0.3", "version": "9.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
"integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"brace-expansion": "^2.0.1" "brace-expansion": "^2.0.1"
@@ -2799,9 +2799,9 @@
} }
}, },
"node_modules/ts-api-utils": { "node_modules/ts-api-utils": {
"version": "1.2.1", "version": "1.3.0",
"resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.2.1.tgz", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
"integrity": "sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==", "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==",
"dev": true, "dev": true,
"engines": { "engines": {
"node": ">=16" "node": ">=16"
@@ -2920,9 +2920,9 @@
} }
}, },
"node_modules/typescript": { "node_modules/typescript": {
"version": "5.3.3", "version": "5.4.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
"integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==",
"dev": true, "dev": true,
"bin": { "bin": {
"tsc": "bin/tsc", "tsc": "bin/tsc",
@@ -3031,9 +3031,9 @@
} }
}, },
"node_modules/zod": { "node_modules/zod": {
"version": "3.22.4", "version": "3.23.4",
"resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.4.tgz",
"integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", "integrity": "sha512-/AtWOKbBgjzEYYQRNfoGKHObgfAZag6qUJX1VbHo2PRBgS+wfWagEY2mizjfyAPcGesrJOcx/wcl0L9WnVrHFw==",
"dev": true, "dev": true,
"funding": { "funding": {
"url": "https://github.com/sponsors/colinhacks" "url": "https://github.com/sponsors/colinhacks"
@@ -3101,9 +3101,9 @@
} }
}, },
"@eslint/js": { "@eslint/js": {
"version": "8.56.0", "version": "8.57.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
"integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
"dev": true "dev": true
}, },
"@humanwhocodes/config-array": { "@humanwhocodes/config-array": {
@@ -3195,110 +3195,110 @@
"dev": true "dev": true
}, },
"@types/semver": { "@types/semver": {
"version": "7.5.7", "version": "7.5.8",
"resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.7.tgz", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
"integrity": "sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg==", "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==",
"dev": true "dev": true
}, },
"@typescript-eslint/eslint-plugin": { "@typescript-eslint/eslint-plugin": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.7.1.tgz",
"integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", "integrity": "sha512-KwfdWXJBOviaBVhxO3p5TJiLpNuh2iyXyjmWN0f1nU87pwyvfS0EmjC6ukQVYVFJd/K1+0NWGPDXiyEyQorn0Q==",
"dev": true, "dev": true,
"requires": { "requires": {
"@eslint-community/regexpp": "^4.5.1", "@eslint-community/regexpp": "^4.10.0",
"@typescript-eslint/scope-manager": "6.21.0", "@typescript-eslint/scope-manager": "7.7.1",
"@typescript-eslint/type-utils": "6.21.0", "@typescript-eslint/type-utils": "7.7.1",
"@typescript-eslint/utils": "6.21.0", "@typescript-eslint/utils": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0", "@typescript-eslint/visitor-keys": "7.7.1",
"debug": "^4.3.4", "debug": "^4.3.4",
"graphemer": "^1.4.0", "graphemer": "^1.4.0",
"ignore": "^5.2.4", "ignore": "^5.3.1",
"natural-compare": "^1.4.0", "natural-compare": "^1.4.0",
"semver": "^7.5.4", "semver": "^7.6.0",
"ts-api-utils": "^1.0.1" "ts-api-utils": "^1.3.0"
} }
}, },
"@typescript-eslint/parser": { "@typescript-eslint/parser": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.7.1.tgz",
"integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", "integrity": "sha512-vmPzBOOtz48F6JAGVS/kZYk4EkXao6iGrD838sp1w3NQQC0W8ry/q641KU4PrG7AKNAf56NOcR8GOpH8l9FPCw==",
"dev": true, "dev": true,
"requires": { "requires": {
"@typescript-eslint/scope-manager": "6.21.0", "@typescript-eslint/scope-manager": "7.7.1",
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/typescript-estree": "6.21.0", "@typescript-eslint/typescript-estree": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0", "@typescript-eslint/visitor-keys": "7.7.1",
"debug": "^4.3.4" "debug": "^4.3.4"
} }
}, },
"@typescript-eslint/scope-manager": { "@typescript-eslint/scope-manager": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.7.1.tgz",
"integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", "integrity": "sha512-PytBif2SF+9SpEUKynYn5g1RHFddJUcyynGpztX3l/ik7KmZEv19WCMhUBkHXPU9es/VWGD3/zg3wg90+Dh2rA==",
"dev": true, "dev": true,
"requires": { "requires": {
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0" "@typescript-eslint/visitor-keys": "7.7.1"
} }
}, },
"@typescript-eslint/type-utils": { "@typescript-eslint/type-utils": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.7.1.tgz",
"integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", "integrity": "sha512-ZksJLW3WF7o75zaBPScdW1Gbkwhd/lyeXGf1kQCxJaOeITscoSl0MjynVvCzuV5boUz/3fOI06Lz8La55mu29Q==",
"dev": true, "dev": true,
"requires": { "requires": {
"@typescript-eslint/typescript-estree": "6.21.0", "@typescript-eslint/typescript-estree": "7.7.1",
"@typescript-eslint/utils": "6.21.0", "@typescript-eslint/utils": "7.7.1",
"debug": "^4.3.4", "debug": "^4.3.4",
"ts-api-utils": "^1.0.1" "ts-api-utils": "^1.3.0"
} }
}, },
"@typescript-eslint/types": { "@typescript-eslint/types": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.7.1.tgz",
"integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", "integrity": "sha512-AmPmnGW1ZLTpWa+/2omPrPfR7BcbUU4oha5VIbSbS1a1Tv966bklvLNXxp3mrbc+P2j4MNOTfDffNsk4o0c6/w==",
"dev": true "dev": true
}, },
"@typescript-eslint/typescript-estree": { "@typescript-eslint/typescript-estree": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.7.1.tgz",
"integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", "integrity": "sha512-CXe0JHCXru8Fa36dteXqmH2YxngKJjkQLjxzoj6LYwzZ7qZvgsLSc+eqItCrqIop8Vl2UKoAi0StVWu97FQZIQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/visitor-keys": "6.21.0", "@typescript-eslint/visitor-keys": "7.7.1",
"debug": "^4.3.4", "debug": "^4.3.4",
"globby": "^11.1.0", "globby": "^11.1.0",
"is-glob": "^4.0.3", "is-glob": "^4.0.3",
"minimatch": "9.0.3", "minimatch": "^9.0.4",
"semver": "^7.5.4", "semver": "^7.6.0",
"ts-api-utils": "^1.0.1" "ts-api-utils": "^1.3.0"
} }
}, },
"@typescript-eslint/utils": { "@typescript-eslint/utils": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.7.1.tgz",
"integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", "integrity": "sha512-QUvBxPEaBXf41ZBbaidKICgVL8Hin0p6prQDu6bbetWo39BKbWJxRsErOzMNT1rXvTll+J7ChrbmMCXM9rsvOQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"@eslint-community/eslint-utils": "^4.4.0", "@eslint-community/eslint-utils": "^4.4.0",
"@types/json-schema": "^7.0.12", "@types/json-schema": "^7.0.15",
"@types/semver": "^7.5.0", "@types/semver": "^7.5.8",
"@typescript-eslint/scope-manager": "6.21.0", "@typescript-eslint/scope-manager": "7.7.1",
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"@typescript-eslint/typescript-estree": "6.21.0", "@typescript-eslint/typescript-estree": "7.7.1",
"semver": "^7.5.4" "semver": "^7.6.0"
} }
}, },
"@typescript-eslint/visitor-keys": { "@typescript-eslint/visitor-keys": {
"version": "6.21.0", "version": "7.7.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.7.1.tgz",
"integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", "integrity": "sha512-gBL3Eq25uADw1LQ9kVpf3hRM+DWzs0uZknHYK3hq4jcTPqVCClHGDnB6UUUV2SFeBeA4KWHWbbLqmbGcZ4FYbw==",
"dev": true, "dev": true,
"requires": { "requires": {
"@typescript-eslint/types": "6.21.0", "@typescript-eslint/types": "7.7.1",
"eslint-visitor-keys": "^3.4.1" "eslint-visitor-keys": "^3.4.3"
} }
}, },
"@ungap/structured-clone": { "@ungap/structured-clone": {
@@ -3715,16 +3715,16 @@
"dev": true "dev": true
}, },
"eslint": { "eslint": {
"version": "8.56.0", "version": "8.57.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
"integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.6.1", "@eslint-community/regexpp": "^4.6.1",
"@eslint/eslintrc": "^2.1.4", "@eslint/eslintrc": "^2.1.4",
"@eslint/js": "8.56.0", "@eslint/js": "8.57.0",
"@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/config-array": "^0.11.14",
"@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8", "@nodelib/fs.walk": "^1.2.8",
"@ungap/structured-clone": "^1.2.0", "@ungap/structured-clone": "^1.2.0",
@@ -4588,9 +4588,9 @@
} }
}, },
"minimatch": { "minimatch": {
"version": "9.0.3", "version": "9.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
"integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
"dev": true, "dev": true,
"requires": { "requires": {
"brace-expansion": "^2.0.1" "brace-expansion": "^2.0.1"
@@ -5024,9 +5024,9 @@
} }
}, },
"ts-api-utils": { "ts-api-utils": {
"version": "1.2.1", "version": "1.3.0",
"resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.2.1.tgz", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
"integrity": "sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==", "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==",
"dev": true, "dev": true,
"requires": {} "requires": {}
}, },
@@ -5110,9 +5110,9 @@
} }
}, },
"typescript": { "typescript": {
"version": "5.3.3", "version": "5.4.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
"integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==",
"dev": true "dev": true
}, },
"unbox-primitive": { "unbox-primitive": {
@@ -5190,9 +5190,9 @@
"dev": true "dev": true
}, },
"zod": { "zod": {
"version": "3.22.4", "version": "3.23.4",
"resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.4.tgz",
"integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", "integrity": "sha512-/AtWOKbBgjzEYYQRNfoGKHObgfAZag6qUJX1VbHo2PRBgS+wfWagEY2mizjfyAPcGesrJOcx/wcl0L9WnVrHFw==",
"dev": true "dev": true
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"name": "@lukehagar/plexjs", "name": "@lukehagar/plexjs",
"version": "0.13.1", "version": "0.14.2",
"author": "LukeHagar", "author": "LukeHagar",
"main": "./index.js", "main": "./index.js",
"sideEffects": false, "sideEffects": false,
@@ -19,13 +19,13 @@
}, },
"devDependencies": { "devDependencies": {
"@types/jsonpath": "^0.2.4", "@types/jsonpath": "^0.2.4",
"@typescript-eslint/eslint-plugin": "^6.13.2", "@typescript-eslint/eslint-plugin": "^7.7.1",
"@typescript-eslint/parser": "^6.13.2", "@typescript-eslint/parser": "^7.7.1",
"eslint": "^8.55.0", "eslint": "^8.57.0",
"eslint-import-resolver-typescript": "^3.6.1", "eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-import": "^2.29.0", "eslint-plugin-import": "^2.29.1",
"typescript": "^5.3.3", "typescript": "^5.4.5",
"zod": "^3.22.4" "zod": "^3.23.4"
}, },
"dependencies": { "dependencies": {

View File

@@ -2,6 +2,7 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/ */
import { RequestInput } from "../lib/http";
import { import {
AfterErrorContext, AfterErrorContext,
AfterErrorHook, AfterErrorHook,
@@ -9,6 +10,8 @@ import {
AfterSuccessHook, AfterSuccessHook,
BeforeRequestContext, BeforeRequestContext,
BeforeRequestHook, BeforeRequestHook,
BeforeCreateRequestHook,
BeforeCreateRequestContext,
Hooks, Hooks,
SDKInitHook, SDKInitHook,
SDKInitOptions, SDKInitOptions,
@@ -18,6 +21,7 @@ import { initHooks } from "./registration";
export class SDKHooks implements Hooks { export class SDKHooks implements Hooks {
sdkInitHooks: SDKInitHook[] = []; sdkInitHooks: SDKInitHook[] = [];
beforeCreateRequestHooks: BeforeCreateRequestHook[] = [];
beforeRequestHooks: BeforeRequestHook[] = []; beforeRequestHooks: BeforeRequestHook[] = [];
afterSuccessHooks: AfterSuccessHook[] = []; afterSuccessHooks: AfterSuccessHook[] = [];
afterErrorHooks: AfterErrorHook[] = []; afterErrorHooks: AfterErrorHook[] = [];
@@ -30,6 +34,10 @@ export class SDKHooks implements Hooks {
this.sdkInitHooks.push(hook); this.sdkInitHooks.push(hook);
} }
registerBeforeCreateRequestHook(hook: BeforeCreateRequestHook) {
this.beforeCreateRequestHooks.push(hook);
}
registerBeforeRequestHook(hook: BeforeRequestHook) { registerBeforeRequestHook(hook: BeforeRequestHook) {
this.beforeRequestHooks.push(hook); this.beforeRequestHooks.push(hook);
} }
@@ -46,6 +54,16 @@ export class SDKHooks implements Hooks {
return this.sdkInitHooks.reduce((opts, hook) => hook.sdkInit(opts), opts); return this.sdkInitHooks.reduce((opts, hook) => hook.sdkInit(opts), opts);
} }
beforeCreateRequest(hookCtx: BeforeCreateRequestContext, input: RequestInput): RequestInput {
let inp = input;
for (const hook of this.beforeCreateRequestHooks) {
inp = hook.beforeCreateRequest(hookCtx, inp);
}
return inp;
}
async beforeRequest(hookCtx: BeforeRequestContext, request: Request): Promise<Request> { async beforeRequest(hookCtx: BeforeRequestContext, request: Request): Promise<Request> {
let req = request; let req = request;

View File

@@ -2,7 +2,7 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/ */
import { HTTPClient } from "../lib/http"; import { HTTPClient, RequestInput } from "../lib/http";
export type HookContext = { export type HookContext = {
operationID: string; operationID: string;
@@ -16,6 +16,8 @@ export type SDKInitOptions = {
baseURL: URL | null; baseURL: URL | null;
client: HTTPClient; client: HTTPClient;
}; };
export type BeforeCreateRequestContext = HookContext & {};
export type BeforeRequestContext = HookContext & {}; export type BeforeRequestContext = HookContext & {};
export type AfterSuccessContext = HookContext & {}; export type AfterSuccessContext = HookContext & {};
export type AfterErrorContext = HookContext & {}; export type AfterErrorContext = HookContext & {};
@@ -28,30 +30,41 @@ export interface SDKInitHook {
sdkInit: (opts: SDKInitOptions) => SDKInitOptions; sdkInit: (opts: SDKInitOptions) => SDKInitOptions;
} }
/** export interface BeforeCreateRequestHook {
* BeforeRequestHook is called before the SDK sends a request. The hook can /**
* modify the request before it is sent or throw an error to stop the request * A hook that is called before the SDK creates a `Request` object. The hook
* from being sent. * can modify how a request is constructed since certain modifications, like
*/ * changing the request URL, cannot be done on a request object directly.
*/
beforeCreateRequest: (hookCtx: BeforeCreateRequestContext, input: RequestInput) => RequestInput;
}
export interface BeforeRequestHook { export interface BeforeRequestHook {
/**
* A hook that is called before the SDK sends a request. The hook can
* introduce instrumentation code such as logging, tracing and metrics or
* replace the request before it is sent or throw an error to stop the
* request from being sent.
*/
beforeRequest: (hookCtx: BeforeRequestContext, request: Request) => Awaitable<Request>; beforeRequest: (hookCtx: BeforeRequestContext, request: Request) => Awaitable<Request>;
} }
/**
* AfterSuccessHook is called after the SDK receives a response. The hook can
* modify the response before it is handled or throw an error to stop the
* response from being handled.
*/
export interface AfterSuccessHook { export interface AfterSuccessHook {
/**
* A hook that is called after the SDK receives a response. The hook can
* introduce instrumentation code such as logging, tracing and metrics or
* modify the response before it is handled or throw an error to stop the
* response from being handled.
*/
afterSuccess: (hookCtx: AfterSuccessContext, response: Response) => Awaitable<Response>; afterSuccess: (hookCtx: AfterSuccessContext, response: Response) => Awaitable<Response>;
} }
/**
* AfterErrorHook is called after the SDK encounters an error, or a
* non-successful response. The hook can modify the response if available
* otherwise modify the error.
*/
export interface AfterErrorHook { export interface AfterErrorHook {
/**
* A hook that is called after the SDK encounters an error, or a
* non-successful response. The hook can introduce instrumentation code such
* as logging, tracing and metrics or modify the response or error values.
*/
afterError: ( afterError: (
hookCtx: AfterErrorContext, hookCtx: AfterErrorContext,
response: Response | null, response: Response | null,
@@ -65,6 +78,8 @@ export interface AfterErrorHook {
export interface Hooks { export interface Hooks {
/** Registers a hook to be used by the SDK for initialization event. */ /** Registers a hook to be used by the SDK for initialization event. */
registerSDKInitHook(hook: SDKInitHook): void; registerSDKInitHook(hook: SDKInitHook): void;
/** Registers a hook to be used by the SDK for to modify `Request` construction. */
registerBeforeCreateRequestHook(hook: BeforeCreateRequestHook): void;
/** Registers a hook to be used by the SDK for the before request event. */ /** Registers a hook to be used by the SDK for the before request event. */
registerBeforeRequestHook(hook: BeforeRequestHook): void; registerBeforeRequestHook(hook: BeforeRequestHook): void;
/** Registers a hook to be used by the SDK for the after success event. */ /** Registers a hook to be used by the SDK for the after success event. */

View File

@@ -87,7 +87,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
export const SDK_METADATA = { export const SDK_METADATA = {
language: "typescript", language: "typescript",
openapiDocVersion: "0.0.3", openapiDocVersion: "0.0.3",
sdkVersion: "0.13.1", sdkVersion: "0.14.2",
genVersion: "2.312.1", genVersion: "2.319.10",
userAgent: "speakeasy-sdk/typescript 0.13.1 2.312.1 0.0.3 @lukehagar/plexjs", userAgent: "speakeasy-sdk/typescript 0.14.2 2.319.10 0.0.3 @lukehagar/plexjs",
} as const; } as const;

View File

@@ -9,7 +9,28 @@ export type Fetcher = (
export type Awaitable<T> = T | Promise<T>; export type Awaitable<T> = T | Promise<T>;
const DEFAULT_FETCHER: Fetcher = (input, init) => fetch(input, init); const DEFAULT_FETCHER: Fetcher = (input, init) => {
// If input is a Request and init is undefined, Bun will discard the method,
// headers, body and other options that were set on the request object.
// Node.js and browers would ignore an undefined init value. This check is
// therefore needed for interop with Bun.
if (init == null) {
return fetch(input);
} else {
return fetch(input, init);
}
};
export type RequestInput = {
/**
* The URL the request will use.
*/
url: URL;
/**
* Options used to create a [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request).
*/
options?: RequestInit | undefined;
};
export interface HTTPClientOptions { export interface HTTPClientOptions {
fetcher?: Fetcher; fetcher?: Fetcher;
@@ -130,29 +151,56 @@ export class HTTPClient {
} }
} }
export function matchContentType(response: Response, pattern: string): boolean { // A semicolon surrounded by optional whitespace characters is used to separate
if (pattern === "*" || pattern === "*/*") { // segments in a media type string.
const mediaParamSeparator = /\s*;\s*/g;
function matchContentType(response: Response, pattern: string): boolean {
// `*` is a special case which means anything is acceptable.
if (pattern === "*") {
return true; return true;
} }
const contentType = let contentType =
response.headers.get("content-type") ?? "application/octet-stream"; response.headers.get("content-type")?.trim() || "application/octet-stream";
contentType = contentType.toLowerCase();
const idx = contentType.split(";").findIndex((raw) => { const wantParts = pattern.toLowerCase().trim().split(mediaParamSeparator);
const ctype = raw.trim(); const [wantType = "", ...wantParams] = wantParts;
if (ctype === pattern) {
return true;
}
const parts = ctype.split("/"); if (wantType.split("/").length !== 2) {
if (parts.length !== 2) { return false;
}
const gotParts = contentType.split(mediaParamSeparator);
const [gotType = "", ...gotParams] = gotParts;
const [type = "", subtype = ""] = gotType.split("/");
if (!type || !subtype) {
return false;
}
if (
wantType !== "*/*" &&
gotType !== wantType &&
`${type}/*` !== wantType &&
`*/${subtype}` !== wantType
) {
return false;
}
if (gotParams.length < wantParams.length) {
return false;
}
const params = new Set(gotParams);
for (const wantParam of wantParams) {
if (!params.has(wantParam)) {
return false; return false;
} }
}
return `${parts[0]}/*` === pattern || `*/${parts[1]}` === pattern; return true;
});
return idx >= 0;
} }
const codeRangeRE = new RegExp("^[0-9]xx$", "i"); const codeRangeRE = new RegExp("^[0-9]xx$", "i");

View File

@@ -40,7 +40,11 @@ export class ClientSDK {
this.client = client; this.client = client;
} }
protected createRequest$(conf: RequestConfig, options?: RequestOptions): Request { protected createRequest$(
context: HookContext,
conf: RequestConfig,
options?: RequestOptions
): Request {
const { method, path, query, headers: opHeaders, security } = conf; const { method, path, query, headers: opHeaders, security } = conf;
const base = conf.baseURL ?? this.baseURL; const base = conf.baseURL ?? this.baseURL;
@@ -95,12 +99,17 @@ export class ClientSDK {
headers.set(k, v); headers.set(k, v);
} }
return new Request(reqURL, { const input = this.hooks$.beforeCreateRequest(context, {
...options?.fetchOptions, url: reqURL,
body: conf.body ?? null, options: {
headers, ...options?.fetchOptions,
method, body: conf.body ?? null,
headers,
method,
},
}); });
return new Request(input.url, input.options);
} }
protected async do$( protected async do$(

View File

@@ -68,7 +68,7 @@ type SecurityInputOAuth2 = {
type SecurityInputOAuth2ClientCredentials = { type SecurityInputOAuth2ClientCredentials = {
type: "oauth2:client_credentials"; type: "oauth2:client_credentials";
value: string | null | undefined; value: string | null | undefined;
fieldName: "clientID" | "clientSecret"; fieldName: string;
}; };
export type SecurityInput = export type SecurityInput =

View File

@@ -4,6 +4,7 @@
export class SDKError extends Error { export class SDKError extends Error {
public readonly statusCode: number; public readonly statusCode: number;
public readonly contentType: string;
constructor( constructor(
message: string, message: string,
@@ -11,11 +12,13 @@ export class SDKError extends Error {
public readonly body: string = "" public readonly body: string = ""
) { ) {
const statusCode = rawResponse.status; const statusCode = rawResponse.status;
const contentType = rawResponse.headers.get("content-type") || "";
const bodyString = body.length > 0 ? `\n${body}` : ""; const bodyString = body.length > 0 ? `\n${body}` : "";
super(`${message}: Status ${statusCode}${bodyString}`); super(`${message}: Status ${statusCode} Content-Type ${contentType} Body ${bodyString}`);
this.statusCode = statusCode; this.statusCode = statusCode;
this.contentType = contentType;
this.name = "SDKError"; this.name = "SDKError";
} }

View File

@@ -72,6 +72,7 @@ export class Activities extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -88,6 +89,7 @@ export class Activities extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -118,7 +120,11 @@ export class Activities extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -173,6 +179,7 @@ export class Activities extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "DELETE", method: "DELETE",
@@ -190,6 +197,7 @@ export class Activities extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -209,7 +217,11 @@ export class Activities extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -91,6 +91,7 @@ export class Authentication extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -108,6 +109,7 @@ export class Authentication extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -127,7 +129,11 @@ export class Authentication extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -189,6 +195,7 @@ export class Authentication extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -206,6 +213,7 @@ export class Authentication extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -225,7 +233,11 @@ export class Authentication extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -70,6 +70,7 @@ export class Butler extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -86,6 +87,7 @@ export class Butler extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -116,7 +118,11 @@ export class Butler extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -157,6 +163,7 @@ export class Butler extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "POST", method: "POST",
@@ -173,6 +180,7 @@ export class Butler extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -192,7 +200,11 @@ export class Butler extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -235,6 +247,7 @@ export class Butler extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "DELETE", method: "DELETE",
@@ -251,6 +264,7 @@ export class Butler extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -270,7 +284,11 @@ export class Butler extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -336,6 +354,7 @@ export class Butler extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "POST", method: "POST",
@@ -353,6 +372,7 @@ export class Butler extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, [200, 202])) { if (this.matchStatusCode(response, [200, 202])) {
@@ -372,7 +392,11 @@ export class Butler extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -434,6 +458,7 @@ export class Butler extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "404", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "404", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "DELETE", method: "DELETE",
@@ -451,6 +476,7 @@ export class Butler extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -470,7 +496,11 @@ export class Butler extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -93,6 +93,7 @@ export class Hubs extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -110,6 +111,7 @@ export class Hubs extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -140,7 +142,11 @@ export class Hubs extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -208,6 +214,7 @@ export class Hubs extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -225,6 +232,7 @@ export class Hubs extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -255,7 +263,11 @@ export class Hubs extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
} }

View File

@@ -90,6 +90,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -107,6 +108,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -126,7 +128,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -169,6 +175,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -185,6 +192,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -215,7 +223,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -257,6 +269,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -273,6 +286,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -303,7 +317,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -406,6 +424,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -423,6 +442,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -453,7 +473,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -508,6 +532,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "DELETE", method: "DELETE",
@@ -525,6 +550,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -544,7 +570,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -631,6 +661,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["4XX", "5XX"] }; const doOptions = { context, errorCodes: ["4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -648,6 +679,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -665,7 +697,11 @@ export class Library extends ClientSDK {
return result; return result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -723,6 +759,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -740,6 +777,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -759,7 +797,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -846,6 +888,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["4XX", "5XX"] }; const doOptions = { context, errorCodes: ["4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -863,6 +906,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -880,7 +924,11 @@ export class Library extends ClientSDK {
return result; return result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -936,6 +984,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -953,6 +1002,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -983,7 +1033,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -1041,6 +1095,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -1058,6 +1113,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -1088,7 +1144,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -1125,6 +1185,7 @@ export class Library extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -1141,6 +1202,7 @@ export class Library extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -1171,7 +1233,11 @@ export class Library extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
} }

View File

@@ -98,6 +98,7 @@ export class Log extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -115,6 +116,7 @@ export class Log extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -134,7 +136,11 @@ export class Log extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -208,6 +214,7 @@ export class Log extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "POST", method: "POST",
@@ -225,6 +232,7 @@ export class Log extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -244,7 +252,11 @@ export class Log extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -287,6 +299,7 @@ export class Log extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "403", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "403", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -303,6 +316,7 @@ export class Log extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -322,7 +336,11 @@ export class Log extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -87,6 +87,7 @@ export class Media extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -104,6 +105,7 @@ export class Media extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -123,7 +125,11 @@ export class Media extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -182,6 +188,7 @@ export class Media extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -199,6 +206,7 @@ export class Media extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -218,7 +226,11 @@ export class Media extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -284,6 +296,7 @@ export class Media extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "POST", method: "POST",
@@ -301,6 +314,7 @@ export class Media extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -320,7 +334,11 @@ export class Media extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -94,6 +94,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "POST", method: "POST",
@@ -111,6 +112,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -141,7 +143,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -200,6 +206,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -217,6 +224,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -247,7 +255,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -304,6 +316,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -321,6 +334,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -351,7 +365,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -407,6 +425,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "DELETE", method: "DELETE",
@@ -424,6 +443,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -443,7 +463,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -517,6 +541,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "PUT", method: "PUT",
@@ -534,6 +559,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -553,7 +579,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -624,6 +654,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -641,6 +672,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -671,7 +703,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -727,6 +763,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "DELETE", method: "DELETE",
@@ -744,6 +781,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -763,7 +801,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -838,6 +880,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "PUT", method: "PUT",
@@ -855,6 +898,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -885,7 +929,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -942,6 +990,7 @@ export class Playlists extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "POST", method: "POST",
@@ -959,6 +1008,7 @@ export class Playlists extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -978,7 +1028,11 @@ export class Playlists extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -89,6 +89,7 @@ export class Plex extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
method: "POST", method: "POST",
baseURL: baseURL$, baseURL: baseURL$,
@@ -106,6 +107,7 @@ export class Plex extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -136,7 +138,11 @@ export class Plex extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -193,6 +199,7 @@ export class Plex extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
method: "GET", method: "GET",
baseURL: baseURL$, baseURL: baseURL$,
@@ -210,6 +217,7 @@ export class Plex extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -229,7 +237,11 @@ export class Plex extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -108,6 +108,7 @@ export class Search extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -125,6 +126,7 @@ export class Search extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -144,7 +146,11 @@ export class Search extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -216,6 +222,7 @@ export class Search extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -233,6 +240,7 @@ export class Search extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -252,7 +260,11 @@ export class Search extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -311,6 +323,7 @@ export class Search extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -328,6 +341,7 @@ export class Search extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -358,7 +372,11 @@ export class Search extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
} }

View File

@@ -72,6 +72,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -88,6 +89,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -118,7 +120,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -156,6 +162,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -172,6 +179,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -202,7 +210,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -240,6 +252,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -256,6 +269,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -286,7 +300,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -322,6 +340,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -338,6 +357,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -368,7 +388,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -406,6 +430,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -422,6 +447,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -452,7 +478,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -488,6 +518,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -504,6 +535,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -534,7 +566,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -600,6 +636,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -617,6 +654,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -636,7 +674,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -678,6 +720,7 @@ export class Server extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -694,6 +737,7 @@ export class Server extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -724,7 +768,11 @@ export class Server extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
} }

View File

@@ -70,6 +70,7 @@ export class Sessions extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -86,6 +87,7 @@ export class Sessions extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -116,7 +118,11 @@ export class Sessions extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -154,6 +160,7 @@ export class Sessions extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -170,6 +177,7 @@ export class Sessions extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -200,7 +208,11 @@ export class Sessions extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -238,6 +250,7 @@ export class Sessions extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -254,6 +267,7 @@ export class Sessions extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -284,7 +298,11 @@ export class Sessions extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -339,6 +357,7 @@ export class Sessions extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "DELETE", method: "DELETE",
@@ -356,6 +375,7 @@ export class Sessions extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 204)) { if (this.matchStatusCode(response, 204)) {
@@ -375,7 +395,11 @@ export class Sessions extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -90,6 +90,7 @@ export class Statistics extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -107,6 +108,7 @@ export class Statistics extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -137,7 +139,11 @@ export class Statistics extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
} }

View File

@@ -70,6 +70,7 @@ export class Updater extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -86,6 +87,7 @@ export class Updater extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchResponse(response, 200, "application/json")) { if (this.matchResponse(response, 200, "application/json")) {
@@ -116,7 +118,11 @@ export class Updater extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
} }
@@ -172,6 +178,7 @@ export class Updater extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "PUT", method: "PUT",
@@ -189,6 +196,7 @@ export class Updater extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -208,7 +216,11 @@ export class Updater extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -274,6 +286,7 @@ export class Updater extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "500", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "500", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "PUT", method: "PUT",
@@ -291,6 +304,7 @@ export class Updater extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -310,7 +324,11 @@ export class Updater extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(

View File

@@ -108,6 +108,7 @@ export class Video extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -125,6 +126,7 @@ export class Video extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -144,7 +146,11 @@ export class Video extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(
@@ -257,6 +263,7 @@ export class Video extends ClientSDK {
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] }; const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$( const request = this.createRequest$(
context,
{ {
security: securitySettings$, security: securitySettings$,
method: "GET", method: "GET",
@@ -274,6 +281,7 @@ export class Video extends ClientSDK {
ContentType: response.headers.get("content-type") ?? "application/octet-stream", ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status, StatusCode: response.status,
RawResponse: response, RawResponse: response,
Headers: {},
}; };
if (this.matchStatusCode(response, 200)) { if (this.matchStatusCode(response, 200)) {
@@ -293,7 +301,11 @@ export class Video extends ClientSDK {
throw result; throw result;
} else { } else {
const responseBody = await response.text(); const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody); throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
} }
return schemas$.parse( return schemas$.parse(