mirror of
https://github.com/LukeHagar/plexjs.git
synced 2025-12-06 12:37:46 +00:00
Compare commits
30 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e038f1fdcf | ||
|
|
835f4244ec | ||
|
|
287c5cb9ad | ||
|
|
521174faf5 | ||
|
|
6fe948fa1e | ||
|
|
4abb238f51 | ||
|
|
c10b6af7de | ||
|
|
6bec4430ff | ||
|
|
3fe4aee2ea | ||
|
|
5b4a51bee7 | ||
|
|
b0cc884d46 | ||
|
|
a1dc07ae78 | ||
|
|
d100297e1d | ||
|
|
14f7d530ec | ||
|
|
622219b018 | ||
|
|
c4dd496e24 | ||
|
|
cdda7f840f | ||
|
|
2c04752d88 | ||
|
|
242d7d78f2 | ||
|
|
779aa2dc9e | ||
|
|
0d73a769fb | ||
|
|
eeadc8c329 | ||
|
|
dbe2e37bba | ||
|
|
6c314bea48 | ||
|
|
9e28d57f15 | ||
|
|
9da9389549 | ||
|
|
fd886229c2 | ||
|
|
8a8615f241 | ||
|
|
29b8ad88d9 | ||
|
|
fd13b3d892 |
23
.github/workflows/codesee-arch-diagram.yml
vendored
23
.github/workflows/codesee-arch-diagram.yml
vendored
@@ -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
33
.github/workflows/publish-jsr.yaml
vendored
Normal 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
|
||||||
11
.github/workflows/speakeasy_sdk_generation.yml
vendored
11
.github/workflows/speakeasy_sdk_generation.yml
vendored
@@ -4,7 +4,8 @@ permissions:
|
|||||||
contents: write
|
contents: write
|
||||||
pull-requests: write
|
pull-requests: write
|
||||||
statuses: write
|
statuses: write
|
||||||
"on":
|
|
||||||
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
inputs:
|
inputs:
|
||||||
force:
|
force:
|
||||||
@@ -13,17 +14,13 @@ permissions:
|
|||||||
default: false
|
default: false
|
||||||
schedule:
|
schedule:
|
||||||
- cron: 0 0 * * *
|
- cron: 0 0 * * *
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
generate:
|
generate:
|
||||||
uses: speakeasy-api/sdk-generation-action/.github/workflows/sdk-generation.yaml@v14
|
uses: speakeasy-api/sdk-generation-action/.github/workflows/workflow-executor.yaml@v15
|
||||||
with:
|
with:
|
||||||
force: ${{ github.event.inputs.force }}
|
force: ${{ github.event.inputs.force }}
|
||||||
languages: |
|
|
||||||
- typescript
|
|
||||||
mode: direct
|
mode: direct
|
||||||
openapi_docs: |
|
|
||||||
- https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
|
|
||||||
publish_typescript: true
|
|
||||||
speakeasy_version: latest
|
speakeasy_version: latest
|
||||||
secrets:
|
secrets:
|
||||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
/*
|
**/*
|
||||||
/docs/**/*.md
|
|
||||||
!/**/*.ts
|
!/**/*.ts
|
||||||
!/**/*.js
|
!/**/*.js
|
||||||
!/**/*.map
|
!/**/*.map
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
lockVersion: 2.0.0
|
lockVersion: 2.0.0
|
||||||
id: 16f22cbf-f23f-4419-8924-3a4b06381947
|
id: 16f22cbf-f23f-4419-8924-3a4b06381947
|
||||||
management:
|
management:
|
||||||
docChecksum: e34dac84738ebf2d447ea2b9055a6eeb
|
docChecksum: 7a43cd3413d535205cfaee20a4b6a250
|
||||||
docVersion: 0.0.3
|
docVersion: 0.0.3
|
||||||
speakeasyVersion: 1.204.1
|
speakeasyVersion: 1.274.1
|
||||||
generationVersion: 2.279.1
|
generationVersion: 2.314.0
|
||||||
releaseVersion: 0.10.0
|
releaseVersion: 0.14.0
|
||||||
configChecksum: c2caa0bd788a98a059e51f793eff1525
|
configChecksum: 174408b6a33150c64008fb08840eecc3
|
||||||
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,13 +14,14 @@ management:
|
|||||||
features:
|
features:
|
||||||
typescript:
|
typescript:
|
||||||
constsAndDefaults: 0.1.5
|
constsAndDefaults: 0.1.5
|
||||||
core: 3.6.1
|
core: 3.9.0
|
||||||
flattening: 2.81.1
|
flattening: 2.81.1
|
||||||
globalSecurity: 2.82.4
|
globalSecurity: 2.82.9
|
||||||
globalServerURLs: 2.82.3
|
globalServerURLs: 2.82.4
|
||||||
|
globals: 2.82.1
|
||||||
methodServerURLs: 2.82.1
|
methodServerURLs: 2.82.1
|
||||||
nameOverrides: 2.81.1
|
nameOverrides: 2.81.2
|
||||||
responseFormat: 0.2.0
|
responseFormat: 0.2.3
|
||||||
generatedFiles:
|
generatedFiles:
|
||||||
- src/sdk/server.ts
|
- src/sdk/server.ts
|
||||||
- src/sdk/media.ts
|
- src/sdk/media.ts
|
||||||
@@ -41,12 +42,12 @@ generatedFiles:
|
|||||||
- .eslintrc.js
|
- .eslintrc.js
|
||||||
- .npmignore
|
- .npmignore
|
||||||
- RUNTIMES.md
|
- RUNTIMES.md
|
||||||
|
- jsr.json
|
||||||
- package.json
|
- package.json
|
||||||
- src/index.ts
|
- src/index.ts
|
||||||
- src/lib/base64.ts
|
- src/lib/base64.ts
|
||||||
- src/lib/config.ts
|
- src/lib/config.ts
|
||||||
- src/lib/encodings.ts
|
- src/lib/encodings.ts
|
||||||
- src/lib/event-streams.ts
|
|
||||||
- src/lib/http.ts
|
- src/lib/http.ts
|
||||||
- src/lib/retries.ts
|
- src/lib/retries.ts
|
||||||
- src/lib/schemas.ts
|
- src/lib/schemas.ts
|
||||||
@@ -57,7 +58,6 @@ generatedFiles:
|
|||||||
- src/models/errors/sdkerror.ts
|
- src/models/errors/sdkerror.ts
|
||||||
- src/models/errors/sdkvalidationerror.ts
|
- src/models/errors/sdkvalidationerror.ts
|
||||||
- src/types/blobs.ts
|
- src/types/blobs.ts
|
||||||
- src/types/decimal.ts
|
|
||||||
- src/types/index.ts
|
- src/types/index.ts
|
||||||
- src/types/operations.ts
|
- src/types/operations.ts
|
||||||
- src/types/rfcdate.ts
|
- src/types/rfcdate.ts
|
||||||
|
|||||||
@@ -12,13 +12,15 @@ generation:
|
|||||||
auth:
|
auth:
|
||||||
oAuth2ClientCredentialsEnabled: false
|
oAuth2ClientCredentialsEnabled: false
|
||||||
typescript:
|
typescript:
|
||||||
version: 0.10.0
|
version: 0.14.0
|
||||||
additionalDependencies:
|
additionalDependencies:
|
||||||
dependencies: {}
|
dependencies: {}
|
||||||
devDependencies: {}
|
devDependencies: {}
|
||||||
peerDependencies: {}
|
peerDependencies: {}
|
||||||
|
additionalPackageJSON: {}
|
||||||
author: LukeHagar
|
author: LukeHagar
|
||||||
clientServerStatusCodesAsErrors: true
|
clientServerStatusCodesAsErrors: true
|
||||||
|
enumFormat: enum
|
||||||
flattenGlobalSecurity: true
|
flattenGlobalSecurity: true
|
||||||
imports:
|
imports:
|
||||||
option: openapi
|
option: openapi
|
||||||
23
.speakeasy/workflow.lock
Normal file
23
.speakeasy/workflow.lock
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
speakeasyVersion: 1.274.1
|
||||||
|
sources:
|
||||||
|
my-source: {}
|
||||||
|
targets:
|
||||||
|
plexjs:
|
||||||
|
source: my-source
|
||||||
|
outLocation: /github/workspace/repo
|
||||||
|
workflow:
|
||||||
|
workflowVersion: 1.0.0
|
||||||
|
speakeasyVersion: latest
|
||||||
|
sources:
|
||||||
|
my-source:
|
||||||
|
inputs:
|
||||||
|
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
|
||||||
|
targets:
|
||||||
|
plexjs:
|
||||||
|
target: typescript
|
||||||
|
source: my-source
|
||||||
|
publish:
|
||||||
|
npm:
|
||||||
|
token: $NPM_TOKEN
|
||||||
|
codeSamples:
|
||||||
|
output: codeSamples.yaml
|
||||||
15
.speakeasy/workflow.yaml
Normal file
15
.speakeasy/workflow.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
workflowVersion: 1.0.0
|
||||||
|
speakeasyVersion: latest
|
||||||
|
sources:
|
||||||
|
my-source:
|
||||||
|
inputs:
|
||||||
|
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
|
||||||
|
targets:
|
||||||
|
plexjs:
|
||||||
|
target: typescript
|
||||||
|
source: my-source
|
||||||
|
codeSamples:
|
||||||
|
output: codeSamples.yaml
|
||||||
|
publish:
|
||||||
|
npm:
|
||||||
|
token: $NPM_TOKEN
|
||||||
26
Makefile
26
Makefile
@@ -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; }
|
|
||||||
113
README.md
113
README.md
@@ -31,12 +31,13 @@ yarn add @lukehagar/plexjs
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerCapabilities();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
@@ -173,14 +174,15 @@ Validation errors can also occur when either method arguments or data returned f
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import * as errors from "@lukehagar/plexjs/models/errors";
|
import * as errors from "@lukehagar/plexjs/models/errors";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
let result;
|
let result;
|
||||||
try {
|
try {
|
||||||
result = await sdk.server.getServerCapabilities();
|
result = await plexAPI.server.getServerCapabilities();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
switch (true) {
|
switch (true) {
|
||||||
case err instanceof errors.SDKValidationError: {
|
case err instanceof errors.SDKValidationError: {
|
||||||
@@ -223,13 +225,14 @@ You can override the default server globally by passing a server index to the `s
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
serverIdx: 0,
|
||||||
serverIdx: 0,
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerCapabilities();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
@@ -253,13 +256,14 @@ The default server can also be overridden globally by passing a URL to the `serv
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
serverURL: "{protocol}://{ip}:{port}",
|
||||||
serverURL: "{protocol}://{ip}:{port}",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerCapabilities();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
@@ -275,13 +279,15 @@ The server URL can also be overridden on a per-operation basis, provided a serve
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
|
const plexAPI = new PlexAPI({
|
||||||
|
xPlexClientIdentifier: "Postman",
|
||||||
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const sdk = new PlexAPI();
|
|
||||||
|
|
||||||
const xPlexClientIdentifier = "<value>";
|
|
||||||
const strong = false;
|
const strong = false;
|
||||||
|
const xPlexClientIdentifier = "Postman";
|
||||||
|
|
||||||
const result = await sdk.plex.getPin(xPlexClientIdentifier, strong, {
|
const result = await plexAPI.plex.getPin(strong, xPlexClientIdentifier, {
|
||||||
serverURL: "https://plex.tv/api/v2",
|
serverURL: "https://plex.tv/api/v2",
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -358,12 +364,13 @@ To authenticate with the API the `accessToken` parameter must be set when initia
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerCapabilities();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
@@ -380,6 +387,50 @@ run();
|
|||||||
For supported JavaScript runtimes, please consult [RUNTIMES.md](RUNTIMES.md).
|
For supported JavaScript runtimes, please consult [RUNTIMES.md](RUNTIMES.md).
|
||||||
<!-- End Requirements [requirements] -->
|
<!-- End Requirements [requirements] -->
|
||||||
|
|
||||||
|
<!-- Start Global Parameters [global-parameters] -->
|
||||||
|
## Global Parameters
|
||||||
|
|
||||||
|
A parameter is configured globally. This parameter must be set on the SDK client instance itself during initialization. When configured as an option during SDK initialization, This global value will be used as the default on the operations that use it. When such operations are called, there is a place in each to override the global value, if needed.
|
||||||
|
|
||||||
|
For example, you can set `X-Plex-Client-Identifier` to `"Postman"` at SDK initialization and then you do not have to pass the same value on calls to operations like `getPin`. But if you want to do so you may, which will locally override the global setting. See the example code below for a demonstration.
|
||||||
|
|
||||||
|
|
||||||
|
### Available Globals
|
||||||
|
|
||||||
|
The following global parameter is available. The required parameter must be set when you initialize the SDK client.
|
||||||
|
|
||||||
|
| Name | Type | Required | Description |
|
||||||
|
| ---- | ---- |:--------:| ----------- |
|
||||||
|
| xPlexClientIdentifier | string | ✔️ | The unique identifier for the client application
|
||||||
|
This is used to track the client application and its usage
|
||||||
|
(UUID, serial number, or other number unique per device)
|
||||||
|
|
|
||||||
|
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
|
const plexAPI = new PlexAPI({
|
||||||
|
xPlexClientIdentifier: "Postman",
|
||||||
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
|
const strong = false;
|
||||||
|
const xPlexClientIdentifier = "Postman";
|
||||||
|
|
||||||
|
const result = await plexAPI.plex.getPin(strong, xPlexClientIdentifier);
|
||||||
|
|
||||||
|
// Handle the result
|
||||||
|
console.log(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
run();
|
||||||
|
|
||||||
|
```
|
||||||
|
<!-- End Global Parameters [global-parameters] -->
|
||||||
|
|
||||||
<!-- Placeholder for Future Speakeasy SDK Sections -->
|
<!-- Placeholder for Future Speakeasy SDK Sections -->
|
||||||
|
|
||||||
# Development
|
# Development
|
||||||
|
|||||||
152
RELEASES.md
152
RELEASES.md
@@ -228,4 +228,154 @@ Based on:
|
|||||||
### Generated
|
### Generated
|
||||||
- [typescript v0.10.0] .
|
- [typescript v0.10.0] .
|
||||||
### Releases
|
### Releases
|
||||||
- [NPM v0.10.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.10.0 - .
|
- [NPM v0.10.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.10.0 - .
|
||||||
|
|
||||||
|
## 2024-03-13 00:25:35
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc 0.0.3
|
||||||
|
- Speakeasy CLI 1.207.1 (2.280.6) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.10.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.10.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.10.1 - .
|
||||||
|
|
||||||
|
## 2024-03-14 00:25:24
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc 0.0.3
|
||||||
|
- Speakeasy CLI 1.209.2 (2.281.2) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.10.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.10.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.10.2 - .
|
||||||
|
|
||||||
|
## 2024-03-15 15:02:11
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.209.3 (2.281.2) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.10.3] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.10.3] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.10.3 - .
|
||||||
|
|
||||||
|
## 2024-03-20 00:25:49
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.213.0 (2.283.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.10.4] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.10.4] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.10.4 - .
|
||||||
|
|
||||||
|
## 2024-03-27 00:25:29
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.227.0 (2.291.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.11.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.11.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.11.0 - .
|
||||||
|
|
||||||
|
## 2024-03-29 16:36:42
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.228.1 (2.292.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.12.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.12.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.12.0 - .
|
||||||
|
|
||||||
|
## 2024-04-02 00:26:20
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.231.1 (2.295.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.12.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.12.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.12.1 - .
|
||||||
|
|
||||||
|
## 2024-04-13 00:23:00
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.252.0 (2.306.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.12.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.12.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.12.2 - .
|
||||||
|
|
||||||
|
## 2024-04-18 00:26:16
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.257.1 (2.308.2) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.12.3] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.12.3] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.12.3 - .
|
||||||
|
|
||||||
|
## 2024-04-19 00:26:47
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.260.6 (2.311.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.13.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.13.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.13.0 - .
|
||||||
|
|
||||||
|
## 2024-04-20 00:26:02
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.267.0 (2.312.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.13.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.13.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.13.0 - .
|
||||||
|
|
||||||
|
## 2024-04-22 16:14:48
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.267.2 (2.312.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.13.1] .
|
||||||
|
### Releases
|
||||||
|
- [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 - .
|
||||||
11
USAGE.md
11
USAGE.md
@@ -2,12 +2,13 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerCapabilities();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
|
|||||||
760
codeSamples.yaml
Normal file
760
codeSamples.yaml
Normal file
@@ -0,0 +1,760 @@
|
|||||||
|
overlay: 1.0.0
|
||||||
|
info:
|
||||||
|
title: CodeSamples overlay for typescript target
|
||||||
|
version: 0.0.0
|
||||||
|
actions:
|
||||||
|
- 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"]["/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"]["/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"]["/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"]["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/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"]["/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();
|
||||||
|
- 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"]["/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"]["/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"]["/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"]["/:/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"]["/:/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"]["/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"]["/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"]["/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"]["/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"]["/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"]["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"]["/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"]["/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"]["/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"]["/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"]["/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"]["/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"]["/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"]["/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"]["/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"]["/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"]["/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"]["/"]["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"]["/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"]["/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"]["/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"]["/:/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/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"]["/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"]["/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"]["/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"]["/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"]["/:/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"]["/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}/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/{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/{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"]["/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"]["/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"]["/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"]["/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"]["/:/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"]["/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/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"]["/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/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"]["/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"]["/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/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"]["/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();
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
| Field | Type | Required | Description | Example |
|
||||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| `xPlexClientIdentifier` | *string* | :heavy_check_mark: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> |
|
| `strong` | *boolean* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> | |
|
||||||
| `strong` | *boolean* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> |
|
| `xPlexClientIdentifier` | *string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | Postman |
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
| Field | Type | Required | Description | Example |
|
||||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| `pinID` | *string* | :heavy_check_mark: | The PinID to retrieve an access token for |
|
| `pinID` | *string* | :heavy_check_mark: | The PinID to retrieve an access token for | |
|
||||||
| `xPlexClientIdentifier` | *string* | :heavy_check_mark: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> |
|
| `xPlexClientIdentifier` | *string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | Postman |
|
||||||
@@ -26,12 +26,13 @@ Get Server Activities
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.activities.getServerActivities();
|
async function run() {
|
||||||
|
const result = await plexAPI.activities.getServerActivities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -67,14 +68,15 @@ Cancel Server Activities
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const activityUUID = "<value>";
|
const activityUUID = "<value>";
|
||||||
|
|
||||||
const result = await sdk.activities.cancelServerActivities(activityUUID);
|
const result = await plexAPI.activities.cancelServerActivities(activityUUID);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -22,15 +22,16 @@ This endpoint provides the caller with a temporary token with the same access le
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { GetTransientTokenQueryParamType, Scope } from "@lukehagar/plexjs/models/operations";
|
import { GetTransientTokenQueryParamType, Scope } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const type = GetTransientTokenQueryParamType.Delegation;
|
const type = GetTransientTokenQueryParamType.Delegation;
|
||||||
const scope = Scope.All;
|
const scope = Scope.All;
|
||||||
|
|
||||||
const result = await sdk.authentication.getTransientToken(type, scope);
|
const result = await plexAPI.authentication.getTransientToken(type, scope);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -70,14 +71,15 @@ Note: requires Plex Media Server >= 1.15.4.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const source = "server://client-identifier";
|
const source = "server://client-identifier";
|
||||||
|
|
||||||
const result = await sdk.authentication.getSourceConnectionInformation(source);
|
const result = await plexAPI.authentication.getSourceConnectionInformation(source);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -23,12 +23,13 @@ Returns a list of butler tasks
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.butler.getButlerTasks();
|
async function run() {
|
||||||
|
const result = await plexAPI.butler.getButlerTasks();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -69,12 +70,13 @@ This endpoint will attempt to start all Butler tasks that are enabled in the set
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.butler.startAllTasks();
|
async function run() {
|
||||||
|
const result = await plexAPI.butler.startAllTasks();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -111,12 +113,13 @@ This endpoint will stop all currently running tasks and remove any scheduled tas
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.butler.stopAllTasks();
|
async function run() {
|
||||||
|
const result = await plexAPI.butler.stopAllTasks();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -158,14 +161,15 @@ This endpoint will attempt to start a single Butler task that is enabled in the
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { TaskName } from "@lukehagar/plexjs/models/operations";
|
import { TaskName } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const taskName = TaskName.CleanOldBundles;
|
const taskName = TaskName.CleanOldBundles;
|
||||||
|
|
||||||
const result = await sdk.butler.startTask(taskName);
|
const result = await plexAPI.butler.startTask(taskName);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -204,14 +208,15 @@ This endpoint will stop a currently running task by name, or remove it from the
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { PathParamTaskName } from "@lukehagar/plexjs/models/operations";
|
import { PathParamTaskName } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const taskName = PathParamTaskName.BackupDatabase;
|
const taskName = PathParamTaskName.BackupDatabase;
|
||||||
|
|
||||||
const result = await sdk.butler.stopTask(taskName);
|
const result = await plexAPI.butler.stopTask(taskName);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -21,15 +21,16 @@ Get Global Hubs filtered by the parameters provided.
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { OnlyTransient } from "@lukehagar/plexjs/models/operations";
|
import { OnlyTransient } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const count = 1262.49;
|
const count = 1262.49;
|
||||||
const onlyTransient = OnlyTransient.One;
|
const onlyTransient = OnlyTransient.One;
|
||||||
|
|
||||||
const result = await sdk.hubs.getGlobalHubs(count, onlyTransient);
|
const result = await plexAPI.hubs.getGlobalHubs(count, onlyTransient);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -69,16 +70,17 @@ This endpoint will return a list of library specific hubs
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { QueryParamOnlyTransient } from "@lukehagar/plexjs/models/operations";
|
import { QueryParamOnlyTransient } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const sectionId = 6728.76;
|
const sectionId = 6728.76;
|
||||||
const count = 9010.22;
|
const count = 9010.22;
|
||||||
const onlyTransient = QueryParamOnlyTransient.Zero;
|
const onlyTransient = QueryParamOnlyTransient.Zero;
|
||||||
|
|
||||||
const result = await sdk.hubs.getLibraryHubs(sectionId, count, onlyTransient);
|
const result = await plexAPI.hubs.getLibraryHubs(sectionId, count, onlyTransient);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -29,15 +29,16 @@ This resource returns hash values for local files
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const url = "file://C:\Image.png&type=13";
|
const url = "file://C:\Image.png&type=13";
|
||||||
const type = 4462.17;
|
const type = 4462.17;
|
||||||
|
|
||||||
const result = await sdk.library.getFileHash(url, type);
|
const result = await plexAPI.library.getFileHash(url, type);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -76,12 +77,13 @@ This endpoint will return the recently added content.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.library.getRecentlyAdded();
|
async function run() {
|
||||||
|
const result = await plexAPI.library.getRecentlyAdded();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -123,12 +125,13 @@ This allows a client to provide a rich interface around the media (e.g. allow so
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.library.getLibraries();
|
async function run() {
|
||||||
|
const result = await plexAPI.library.getLibraries();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -204,15 +207,16 @@ Each type in the library comes with a set of filters and sorts, aiding in buildi
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { IncludeDetails } from "@lukehagar/plexjs/models/operations";
|
import { IncludeDetails } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const sectionId = 1000;
|
const sectionId = 1000;
|
||||||
const includeDetails = IncludeDetails.Zero;
|
const includeDetails = IncludeDetails.Zero;
|
||||||
|
|
||||||
const result = await sdk.library.getLibrary(sectionId, includeDetails);
|
const result = await plexAPI.library.getLibrary(sectionId, includeDetails);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -250,14 +254,15 @@ Delate a library using a specific section
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const sectionId = 1000;
|
const sectionId = 1000;
|
||||||
|
|
||||||
const result = await sdk.library.deleteLibrary(sectionId);
|
const result = await plexAPI.library.deleteLibrary(sectionId);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -315,15 +320,16 @@ Fetches details from a specific section of the library identified by a section k
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { Tag } from "@lukehagar/plexjs/models/operations";
|
import { Tag } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const sectionId = 451092;
|
const sectionId = 451092;
|
||||||
const tag = Tag.Unwatched;
|
const tag = Tag.Unwatched;
|
||||||
|
|
||||||
const result = await sdk.library.getLibraryItems(sectionId, tag);
|
const result = await plexAPI.library.getLibraryItems(sectionId, tag);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -361,14 +367,15 @@ This endpoint Refreshes the library.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const sectionId = 934.16;
|
const sectionId = 934.16;
|
||||||
|
|
||||||
const result = await sdk.library.refreshLibrary(sectionId);
|
const result = await plexAPI.library.refreshLibrary(sectionId);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -424,15 +431,16 @@ Each type in the library comes with a set of filters and sorts, aiding in buildi
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { Type } from "@lukehagar/plexjs/models/operations";
|
import { Type } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const sectionId = 933505;
|
const sectionId = 933505;
|
||||||
const type = Type.Four;
|
const type = Type.Four;
|
||||||
|
|
||||||
const result = await sdk.library.searchLibrary(sectionId, type);
|
const result = await plexAPI.library.searchLibrary(sectionId, type);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -470,14 +478,15 @@ This endpoint will return the metadata of a library item specified with the rati
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const ratingKey = 8382.31;
|
const ratingKey = 8382.31;
|
||||||
|
|
||||||
const result = await sdk.library.getMetadata(ratingKey);
|
const result = await plexAPI.library.getMetadata(ratingKey);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -515,14 +524,15 @@ This endpoint will return the children of of a library item specified with the r
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const ratingKey = 1539.14;
|
const ratingKey = 1539.14;
|
||||||
|
|
||||||
const result = await sdk.library.getMetadataChildren(ratingKey);
|
const result = await plexAPI.library.getMetadataChildren(ratingKey);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -560,12 +570,13 @@ This endpoint will return the on deck content.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.library.getOnDeck();
|
async function run() {
|
||||||
|
const result = await plexAPI.library.getOnDeck();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -23,16 +23,17 @@ This endpoint will write a single-line log message, including a level and source
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { Level } from "@lukehagar/plexjs/models/operations";
|
import { Level } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const level = Level.Three;
|
const level = Level.Three;
|
||||||
const message = "Test log message";
|
const message = "Test log message";
|
||||||
const source = "Postman";
|
const source = "Postman";
|
||||||
|
|
||||||
const result = await sdk.log.logLine(level, message, source);
|
const result = await plexAPI.log.logLine(level, message, source);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -92,12 +93,13 @@ Ensure each parameter is properly URL-encoded to avoid interpretation issues.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.log.logMultiLine("level=4&message=Test%20message%201&source=postman
|
async function run() {
|
||||||
|
const result = await plexAPI.log.logMultiLine("level=4&message=Test%20message%201&source=postman
|
||||||
level=3&message=Test%20message%202&source=postman
|
level=3&message=Test%20message%202&source=postman
|
||||||
level=1&message=Test%20message%203&source=postman");
|
level=1&message=Test%20message%203&source=postman");
|
||||||
|
|
||||||
@@ -137,12 +139,13 @@ This endpoint will enable all Plex Media Serverlogs to be sent to the Papertrail
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.log.enablePaperTrail();
|
async function run() {
|
||||||
|
const result = await plexAPI.log.enablePaperTrail();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -21,14 +21,15 @@ This will mark the provided media key as Played.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const key = 59398;
|
const key = 59398;
|
||||||
|
|
||||||
const result = await sdk.media.markPlayed(key);
|
const result = await plexAPI.media.markPlayed(key);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -65,14 +66,15 @@ This will mark the provided media key as Unplayed.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const key = 59398;
|
const key = 59398;
|
||||||
|
|
||||||
const result = await sdk.media.markUnplayed(key);
|
const result = await plexAPI.media.markUnplayed(key);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -110,16 +112,17 @@ This API command can be used to update the play progress of a media item.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const key = "<value>";
|
const key = "<value>";
|
||||||
const time = 6900.91;
|
const time = 6900.91;
|
||||||
const state = "<value>";
|
const state = "<value>";
|
||||||
|
|
||||||
const result = await sdk.media.updatePlayProgress(key, time, state);
|
const result = await plexAPI.media.updatePlayProgress(key, time, state);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -34,12 +34,13 @@ Create a new playlist. By default the playlist is blank. To create a playlist al
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { QueryParamType, Smart } from "@lukehagar/plexjs/models/operations";
|
import { QueryParamType, Smart } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.playlists.createPlaylist({
|
async function run() {
|
||||||
|
const result = await plexAPI.playlists.createPlaylist({
|
||||||
title: "<value>",
|
title: "<value>",
|
||||||
type: QueryParamType.Photo,
|
type: QueryParamType.Photo,
|
||||||
smart: Smart.One,
|
smart: Smart.One,
|
||||||
@@ -82,15 +83,16 @@ Get All Playlists given the specified filters.
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { PlaylistType, QueryParamSmart } from "@lukehagar/plexjs/models/operations";
|
import { PlaylistType, QueryParamSmart } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const playlistType = PlaylistType.Audio;
|
const playlistType = PlaylistType.Audio;
|
||||||
const smart = QueryParamSmart.Zero;
|
const smart = QueryParamSmart.Zero;
|
||||||
|
|
||||||
const result = await sdk.playlists.getPlaylists(playlistType, smart);
|
const result = await plexAPI.playlists.getPlaylists(playlistType, smart);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -130,14 +132,15 @@ Smart playlist details contain the `content` attribute. This is the content URI
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const playlistID = 4109.48;
|
const playlistID = 4109.48;
|
||||||
|
|
||||||
const result = await sdk.playlists.getPlaylist(playlistID);
|
const result = await plexAPI.playlists.getPlaylist(playlistID);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -175,14 +178,15 @@ This endpoint will delete a playlist
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const playlistID = 216.22;
|
const playlistID = 216.22;
|
||||||
|
|
||||||
const result = await sdk.playlists.deletePlaylist(playlistID);
|
const result = await plexAPI.playlists.deletePlaylist(playlistID);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -220,16 +224,17 @@ From PMS version 1.9.1 clients can also edit playlist metadata using this endpoi
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const playlistID = 3915;
|
const playlistID = 3915;
|
||||||
const title = "<value>";
|
const title = "<value>";
|
||||||
const summary = "<value>";
|
const summary = "<value>";
|
||||||
|
|
||||||
const result = await sdk.playlists.updatePlaylist(playlistID, title, summary);
|
const result = await plexAPI.playlists.updatePlaylist(playlistID, title, summary);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -272,15 +277,16 @@ Note that for dumb playlists, items have a `playlistItemID` attribute which is u
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const playlistID = 5004.46;
|
const playlistID = 5004.46;
|
||||||
const type = 9403.59;
|
const type = 9403.59;
|
||||||
|
|
||||||
const result = await sdk.playlists.getPlaylistContents(playlistID, type);
|
const result = await plexAPI.playlists.getPlaylistContents(playlistID, type);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -319,14 +325,15 @@ Clears a playlist, only works with dumb playlists. Returns the playlist.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const playlistID = 1893.18;
|
const playlistID = 1893.18;
|
||||||
|
|
||||||
const result = await sdk.playlists.clearPlaylistContents(playlistID);
|
const result = await plexAPI.playlists.clearPlaylistContents(playlistID);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -365,16 +372,17 @@ With a smart playlist, passing a new `uri` parameter replaces the rules for the
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const playlistID = 8502.01;
|
const playlistID = 8502.01;
|
||||||
const uri = "server://12345/com.plexapp.plugins.library/library/metadata/1";
|
const uri = "server://12345/com.plexapp.plugins.library/library/metadata/1";
|
||||||
const playQueueID = 123;
|
const playQueueID = 123;
|
||||||
|
|
||||||
const result = await sdk.playlists.addPlaylistContents(playlistID, uri, playQueueID);
|
const result = await plexAPI.playlists.addPlaylistContents(playlistID, uri, playQueueID);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -415,15 +423,16 @@ Imports m3u playlists by passing a path on the server to scan for m3u-formatted
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { Force } from "@lukehagar/plexjs/models/operations";
|
import { Force } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const path = "/home/barkley/playlist.m3u";
|
const path = "/home/barkley/playlist.m3u";
|
||||||
const force = Force.Zero;
|
const force = Force.Zero;
|
||||||
|
|
||||||
const result = await sdk.playlists.uploadPlaylist(path, force);
|
const result = await plexAPI.playlists.uploadPlaylist(path, force);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -20,13 +20,15 @@ Retrieve a Pin from Plex.tv for authentication flows
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI();
|
xPlexClientIdentifier: "Postman",
|
||||||
|
});
|
||||||
|
|
||||||
const xPlexClientIdentifier = "<value>";
|
async function run() {
|
||||||
const strong = false;
|
const strong = false;
|
||||||
|
const xPlexClientIdentifier = "Postman";
|
||||||
|
|
||||||
const result = await sdk.plex.getPin(xPlexClientIdentifier, strong);
|
const result = await plexAPI.plex.getPin(strong, xPlexClientIdentifier);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -37,13 +39,13 @@ run();
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Parameter | Type | Required | Description |
|
| Parameter | Type | Required | Description | Example |
|
||||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||||
| `xPlexClientIdentifier` | *string* | :heavy_check_mark: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> |
|
| `strong` | *boolean* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> | |
|
||||||
| `strong` | *boolean* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> |
|
| `xPlexClientIdentifier` | *string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | [object Object] |
|
||||||
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
|
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | |
|
||||||
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
|
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | |
|
||||||
| `options.serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. |
|
| `options.serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | http://localhost:8080 |
|
||||||
|
|
||||||
|
|
||||||
### Response
|
### Response
|
||||||
@@ -65,13 +67,15 @@ Retrieve an Access Token from Plex.tv after the Pin has already been authenticat
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI();
|
xPlexClientIdentifier: "Postman",
|
||||||
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const pinID = "<value>";
|
const pinID = "<value>";
|
||||||
const xPlexClientIdentifier = "<value>";
|
const xPlexClientIdentifier = "Postman";
|
||||||
|
|
||||||
const result = await sdk.plex.getToken(pinID, xPlexClientIdentifier);
|
const result = await plexAPI.plex.getToken(pinID, xPlexClientIdentifier);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -82,13 +86,13 @@ run();
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Parameter | Type | Required | Description |
|
| Parameter | Type | Required | Description | Example |
|
||||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||||
| `pinID` | *string* | :heavy_check_mark: | The PinID to retrieve an access token for |
|
| `pinID` | *string* | :heavy_check_mark: | The PinID to retrieve an access token for | |
|
||||||
| `xPlexClientIdentifier` | *string* | :heavy_check_mark: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> |
|
| `xPlexClientIdentifier` | *string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | [object Object] |
|
||||||
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
|
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | |
|
||||||
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
|
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | |
|
||||||
| `options.serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. |
|
| `options.serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | http://localhost:8080 |
|
||||||
|
|
||||||
|
|
||||||
### Response
|
### Response
|
||||||
|
|||||||
@@ -33,16 +33,17 @@ This request is intended to be very fast, and called as the user types.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const query = "dylan";
|
const query = "dylan";
|
||||||
const sectionId = 1516.53;
|
const sectionId = 1516.53;
|
||||||
const limit = 5;
|
const limit = 5;
|
||||||
|
|
||||||
const result = await sdk.search.performSearch(query, sectionId, limit);
|
const result = await plexAPI.search.performSearch(query, sectionId, limit);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -85,16 +86,17 @@ Results, as well as their containing per-type hubs, contain a `distance` attribu
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const query = "dead+poop";
|
const query = "dead+poop";
|
||||||
const sectionId = 4094.8;
|
const sectionId = 4094.8;
|
||||||
const limit = 5;
|
const limit = 5;
|
||||||
|
|
||||||
const result = await sdk.search.performVoiceSearch(query, sectionId, limit);
|
const result = await plexAPI.search.performVoiceSearch(query, sectionId, limit);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -133,14 +135,15 @@ This will search the database for the string provided.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const query = "110";
|
const query = "110";
|
||||||
|
|
||||||
const result = await sdk.search.getSearchResults(query);
|
const result = await plexAPI.search.getSearchResults(query);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -26,12 +26,13 @@ Server Capabilities
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerCapabilities();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -67,12 +68,13 @@ Get Server Preferences
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerPreferences();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerPreferences();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -108,12 +110,13 @@ Get Available Clients
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getAvailableClients();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getAvailableClients();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -149,12 +152,13 @@ Get Devices
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getDevices();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getDevices();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -190,12 +194,13 @@ Get Server Identity
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerIdentity();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerIdentity();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -231,12 +236,13 @@ Returns MyPlex Account Information
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getMyPlexAccount();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getMyPlexAccount();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -274,12 +280,13 @@ Plex's Photo transcoder is used throughout the service to serve images at specif
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { MinSize, Upscale } from "@lukehagar/plexjs/models/operations";
|
import { MinSize, Upscale } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getResizedPhoto({
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getResizedPhoto({
|
||||||
width: 110,
|
width: 110,
|
||||||
height: 165,
|
height: 165,
|
||||||
opacity: 100,
|
opacity: 100,
|
||||||
@@ -324,12 +331,13 @@ Get Server List
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.server.getServerList();
|
async function run() {
|
||||||
|
const result = await plexAPI.server.getServerList();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -22,12 +22,13 @@ This will retrieve the "Now Playing" Information of the PMS.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.sessions.getSessions();
|
async function run() {
|
||||||
|
const result = await plexAPI.sessions.getSessions();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -63,12 +64,13 @@ This will Retrieve a listing of all history views.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.sessions.getSessionHistory();
|
async function run() {
|
||||||
|
const result = await plexAPI.sessions.getSessionHistory();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -104,12 +106,13 @@ Get Transcode Sessions
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.sessions.getTranscodeSessions();
|
async function run() {
|
||||||
|
const result = await plexAPI.sessions.getTranscodeSessions();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -145,14 +148,15 @@ Stop a Transcode Session
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const sessionKey = "zz7llzqlx8w9vnrsbnwhbmep";
|
const sessionKey = "zz7llzqlx8w9vnrsbnwhbmep";
|
||||||
|
|
||||||
const result = await sdk.sessions.stopTranscodeSession(sessionKey);
|
const result = await plexAPI.sessions.stopTranscodeSession(sessionKey);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -19,14 +19,15 @@ This will return the media statistics for the server
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const timespan = 411769;
|
const timespan = 411769;
|
||||||
|
|
||||||
const result = await sdk.statistics.getStatistics(timespan);
|
const result = await plexAPI.statistics.getStatistics(timespan);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -22,12 +22,13 @@ Querying status of updates
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.updater.getUpdateStatus();
|
async function run() {
|
||||||
|
const result = await plexAPI.updater.getUpdateStatus();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -64,14 +65,15 @@ Checking for updates
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { Download } from "@lukehagar/plexjs/models/operations";
|
import { Download } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const download = Download.One;
|
const download = Download.One;
|
||||||
|
|
||||||
const result = await sdk.updater.checkForUpdates(download);
|
const result = await plexAPI.updater.checkForUpdates(download);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
@@ -110,15 +112,16 @@ Note that these two parameters are effectively mutually exclusive. The `tonight`
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { Skip, Tonight } from "@lukehagar/plexjs/models/operations";
|
import { Skip, Tonight } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
const tonight = Tonight.One;
|
const tonight = Tonight.One;
|
||||||
const skip = Skip.Zero;
|
const skip = Skip.Zero;
|
||||||
|
|
||||||
const result = await sdk.updater.applyUpdates(tonight, skip);
|
const result = await plexAPI.updater.applyUpdates(tonight, skip);
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|||||||
@@ -21,12 +21,13 @@ Get the timeline for a media item
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { State } from "@lukehagar/plexjs/models/operations";
|
import { State } from "@lukehagar/plexjs/models/operations";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.video.getTimeline({
|
async function run() {
|
||||||
|
const result = await plexAPI.video.getTimeline({
|
||||||
ratingKey: 716.56,
|
ratingKey: 716.56,
|
||||||
key: "<key>",
|
key: "<key>",
|
||||||
state: State.Paused,
|
state: State.Paused,
|
||||||
@@ -74,12 +75,13 @@ Begin a Universal Transcode Session
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
async function run() {
|
const plexAPI = new PlexAPI({
|
||||||
const sdk = new PlexAPI({
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
xPlexClientIdentifier: "Postman",
|
||||||
});
|
});
|
||||||
|
|
||||||
const result = await sdk.video.startUniversalTranscode({
|
async function run() {
|
||||||
|
const result = await plexAPI.video.startUniversalTranscode({
|
||||||
hasMDE: 8924.99,
|
hasMDE: 8924.99,
|
||||||
path: "/etc/mail",
|
path: "/etc/mail",
|
||||||
mediaIndex: 9962.95,
|
mediaIndex: 9962.95,
|
||||||
|
|||||||
457
files.gen
457
files.gen
@@ -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
|
|
||||||
27
jsr.json
Normal file
27
jsr.json
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
"name": "@lukehagar/plexjs",
|
||||||
|
"version": "0.14.0",
|
||||||
|
"exports": {
|
||||||
|
".": "./src/index.ts",
|
||||||
|
"./models/errors": "./src/models/errors/index.ts",
|
||||||
|
"./models/components": "./src/models/components/index.ts",
|
||||||
|
"./models/operations": "./src/models/operations/index.ts",
|
||||||
|
"./lib/config": "./src/lib/config.ts",
|
||||||
|
"./lib/http": "./src/lib/http.ts",
|
||||||
|
"./lib/retries": "./src/lib/retries.ts",
|
||||||
|
"./lib/sdks": "./src/lib/sdks.ts",
|
||||||
|
"./types": "./src/types/index.ts"
|
||||||
|
},
|
||||||
|
"publish": {
|
||||||
|
"include": [
|
||||||
|
"LICENSE",
|
||||||
|
"README.md",
|
||||||
|
"RUNTIMES.md",
|
||||||
|
"USAGE.md",
|
||||||
|
"jsr.json",
|
||||||
|
"src/**/*.ts"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
618
package-lock.json
generated
618
package-lock.json
generated
@@ -1,25 +1,21 @@
|
|||||||
{
|
{
|
||||||
"name": "@lukehagar/plexjs",
|
"name": "@lukehagar/plexjs",
|
||||||
"version": "0.10.0",
|
"version": "0.14.0",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "@lukehagar/plexjs",
|
"name": "@lukehagar/plexjs",
|
||||||
"version": "0.10.0",
|
"version": "0.14.0",
|
||||||
"dependencies": {
|
|
||||||
"decimal.js": "^10.4.3",
|
|
||||||
"jsonpath": "^1.1.1"
|
|
||||||
},
|
|
||||||
"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"
|
||||||
@@ -104,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"
|
||||||
@@ -221,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": {
|
||||||
@@ -262,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": {
|
||||||
@@ -290,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",
|
||||||
@@ -307,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": {
|
||||||
@@ -334,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",
|
||||||
@@ -347,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",
|
||||||
@@ -375,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",
|
||||||
@@ -770,15 +766,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/decimal.js": {
|
|
||||||
"version": "10.4.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz",
|
|
||||||
"integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA=="
|
|
||||||
},
|
|
||||||
"node_modules/deep-is": {
|
"node_modules/deep-is": {
|
||||||
"version": "0.1.4",
|
"version": "0.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
|
||||||
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
|
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
|
||||||
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/define-data-property": {
|
"node_modules/define-data-property": {
|
||||||
"version": "1.1.4",
|
"version": "1.1.4",
|
||||||
@@ -985,105 +977,17 @@
|
|||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/escodegen": {
|
|
||||||
"version": "1.14.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz",
|
|
||||||
"integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==",
|
|
||||||
"dependencies": {
|
|
||||||
"esprima": "^4.0.1",
|
|
||||||
"estraverse": "^4.2.0",
|
|
||||||
"esutils": "^2.0.2",
|
|
||||||
"optionator": "^0.8.1"
|
|
||||||
},
|
|
||||||
"bin": {
|
|
||||||
"escodegen": "bin/escodegen.js",
|
|
||||||
"esgenerate": "bin/esgenerate.js"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4.0"
|
|
||||||
},
|
|
||||||
"optionalDependencies": {
|
|
||||||
"source-map": "~0.6.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/escodegen/node_modules/esprima": {
|
|
||||||
"version": "4.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
|
|
||||||
"integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
|
|
||||||
"bin": {
|
|
||||||
"esparse": "bin/esparse.js",
|
|
||||||
"esvalidate": "bin/esvalidate.js"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/escodegen/node_modules/estraverse": {
|
|
||||||
"version": "4.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
|
|
||||||
"integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/escodegen/node_modules/levn": {
|
|
||||||
"version": "0.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
|
|
||||||
"integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
|
|
||||||
"dependencies": {
|
|
||||||
"prelude-ls": "~1.1.2",
|
|
||||||
"type-check": "~0.3.2"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 0.8.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/escodegen/node_modules/optionator": {
|
|
||||||
"version": "0.8.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
|
|
||||||
"integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
|
|
||||||
"dependencies": {
|
|
||||||
"deep-is": "~0.1.3",
|
|
||||||
"fast-levenshtein": "~2.0.6",
|
|
||||||
"levn": "~0.3.0",
|
|
||||||
"prelude-ls": "~1.1.2",
|
|
||||||
"type-check": "~0.3.2",
|
|
||||||
"word-wrap": "~1.2.3"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 0.8.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/escodegen/node_modules/prelude-ls": {
|
|
||||||
"version": "1.1.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
|
|
||||||
"integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 0.8.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/escodegen/node_modules/type-check": {
|
|
||||||
"version": "0.3.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
|
|
||||||
"integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
|
|
||||||
"dependencies": {
|
|
||||||
"prelude-ls": "~1.1.2"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 0.8.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"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",
|
||||||
@@ -1349,18 +1253,6 @@
|
|||||||
"url": "https://opencollective.com/eslint"
|
"url": "https://opencollective.com/eslint"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/esprima": {
|
|
||||||
"version": "1.2.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz",
|
|
||||||
"integrity": "sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A==",
|
|
||||||
"bin": {
|
|
||||||
"esparse": "bin/esparse.js",
|
|
||||||
"esvalidate": "bin/esvalidate.js"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.4.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/esquery": {
|
"node_modules/esquery": {
|
||||||
"version": "1.5.0",
|
"version": "1.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
|
||||||
@@ -1398,6 +1290,7 @@
|
|||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
|
||||||
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
|
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
|
||||||
|
"dev": true,
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
@@ -1445,7 +1338,8 @@
|
|||||||
"node_modules/fast-levenshtein": {
|
"node_modules/fast-levenshtein": {
|
||||||
"version": "2.0.6",
|
"version": "2.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
|
||||||
"integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="
|
"integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
|
||||||
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/fastq": {
|
"node_modules/fastq": {
|
||||||
"version": "1.17.1",
|
"version": "1.17.1",
|
||||||
@@ -2179,16 +2073,6 @@
|
|||||||
"json5": "lib/cli.js"
|
"json5": "lib/cli.js"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/jsonpath": {
|
|
||||||
"version": "1.1.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz",
|
|
||||||
"integrity": "sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==",
|
|
||||||
"dependencies": {
|
|
||||||
"esprima": "1.2.2",
|
|
||||||
"static-eval": "2.0.2",
|
|
||||||
"underscore": "1.12.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/keyv": {
|
"node_modules/keyv": {
|
||||||
"version": "4.5.4",
|
"version": "4.5.4",
|
||||||
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
|
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
|
||||||
@@ -2267,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"
|
||||||
@@ -2785,23 +2669,6 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/source-map": {
|
|
||||||
"version": "0.6.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
|
||||||
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
|
||||||
"optional": true,
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.10.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/static-eval": {
|
|
||||||
"version": "2.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz",
|
|
||||||
"integrity": "sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==",
|
|
||||||
"dependencies": {
|
|
||||||
"escodegen": "^1.8.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/string.prototype.trim": {
|
"node_modules/string.prototype.trim": {
|
||||||
"version": "1.2.8",
|
"version": "1.2.8",
|
||||||
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
|
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
|
||||||
@@ -2932,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"
|
||||||
@@ -3053,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",
|
||||||
@@ -3080,11 +2947,6 @@
|
|||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/underscore": {
|
|
||||||
"version": "1.12.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
|
|
||||||
"integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw=="
|
|
||||||
},
|
|
||||||
"node_modules/uri-js": {
|
"node_modules/uri-js": {
|
||||||
"version": "4.4.1",
|
"version": "4.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||||
@@ -3144,14 +3006,6 @@
|
|||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/word-wrap": {
|
|
||||||
"version": "1.2.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
|
|
||||||
"integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.10.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/wrappy": {
|
"node_modules/wrappy": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||||
@@ -3177,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"
|
||||||
@@ -3247,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": {
|
||||||
@@ -3341,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": {
|
||||||
@@ -3697,15 +3551,11 @@
|
|||||||
"ms": "2.1.2"
|
"ms": "2.1.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"decimal.js": {
|
|
||||||
"version": "10.4.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz",
|
|
||||||
"integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA=="
|
|
||||||
},
|
|
||||||
"deep-is": {
|
"deep-is": {
|
||||||
"version": "0.1.4",
|
"version": "0.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
|
||||||
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
|
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
|
||||||
|
"dev": true
|
||||||
},
|
},
|
||||||
"define-data-property": {
|
"define-data-property": {
|
||||||
"version": "1.1.4",
|
"version": "1.1.4",
|
||||||
@@ -3864,76 +3714,17 @@
|
|||||||
"integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
|
"integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"escodegen": {
|
|
||||||
"version": "1.14.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz",
|
|
||||||
"integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==",
|
|
||||||
"requires": {
|
|
||||||
"esprima": "^4.0.1",
|
|
||||||
"estraverse": "^4.2.0",
|
|
||||||
"esutils": "^2.0.2",
|
|
||||||
"optionator": "^0.8.1",
|
|
||||||
"source-map": "~0.6.1"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"esprima": {
|
|
||||||
"version": "4.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
|
|
||||||
"integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="
|
|
||||||
},
|
|
||||||
"estraverse": {
|
|
||||||
"version": "4.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
|
|
||||||
"integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw=="
|
|
||||||
},
|
|
||||||
"levn": {
|
|
||||||
"version": "0.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
|
|
||||||
"integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
|
|
||||||
"requires": {
|
|
||||||
"prelude-ls": "~1.1.2",
|
|
||||||
"type-check": "~0.3.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"optionator": {
|
|
||||||
"version": "0.8.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
|
|
||||||
"integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
|
|
||||||
"requires": {
|
|
||||||
"deep-is": "~0.1.3",
|
|
||||||
"fast-levenshtein": "~2.0.6",
|
|
||||||
"levn": "~0.3.0",
|
|
||||||
"prelude-ls": "~1.1.2",
|
|
||||||
"type-check": "~0.3.2",
|
|
||||||
"word-wrap": "~1.2.3"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"prelude-ls": {
|
|
||||||
"version": "1.1.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
|
|
||||||
"integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w=="
|
|
||||||
},
|
|
||||||
"type-check": {
|
|
||||||
"version": "0.3.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
|
|
||||||
"integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
|
|
||||||
"requires": {
|
|
||||||
"prelude-ls": "~1.1.2"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"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",
|
||||||
@@ -4144,11 +3935,6 @@
|
|||||||
"eslint-visitor-keys": "^3.4.1"
|
"eslint-visitor-keys": "^3.4.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"esprima": {
|
|
||||||
"version": "1.2.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz",
|
|
||||||
"integrity": "sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A=="
|
|
||||||
},
|
|
||||||
"esquery": {
|
"esquery": {
|
||||||
"version": "1.5.0",
|
"version": "1.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
|
||||||
@@ -4176,7 +3962,8 @@
|
|||||||
"esutils": {
|
"esutils": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
|
||||||
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
|
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
|
||||||
|
"dev": true
|
||||||
},
|
},
|
||||||
"fast-deep-equal": {
|
"fast-deep-equal": {
|
||||||
"version": "3.1.3",
|
"version": "3.1.3",
|
||||||
@@ -4217,7 +4004,8 @@
|
|||||||
"fast-levenshtein": {
|
"fast-levenshtein": {
|
||||||
"version": "2.0.6",
|
"version": "2.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
|
||||||
"integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="
|
"integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
|
||||||
|
"dev": true
|
||||||
},
|
},
|
||||||
"fastq": {
|
"fastq": {
|
||||||
"version": "1.17.1",
|
"version": "1.17.1",
|
||||||
@@ -4740,16 +4528,6 @@
|
|||||||
"minimist": "^1.2.0"
|
"minimist": "^1.2.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jsonpath": {
|
|
||||||
"version": "1.1.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz",
|
|
||||||
"integrity": "sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==",
|
|
||||||
"requires": {
|
|
||||||
"esprima": "1.2.2",
|
|
||||||
"static-eval": "2.0.2",
|
|
||||||
"underscore": "1.12.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"keyv": {
|
"keyv": {
|
||||||
"version": "4.5.4",
|
"version": "4.5.4",
|
||||||
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
|
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
|
||||||
@@ -4810,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"
|
||||||
@@ -5155,20 +4933,6 @@
|
|||||||
"integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
|
"integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"source-map": {
|
|
||||||
"version": "0.6.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
|
||||||
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"static-eval": {
|
|
||||||
"version": "2.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz",
|
|
||||||
"integrity": "sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==",
|
|
||||||
"requires": {
|
|
||||||
"escodegen": "^1.8.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"string.prototype.trim": {
|
"string.prototype.trim": {
|
||||||
"version": "1.2.8",
|
"version": "1.2.8",
|
||||||
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
|
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
|
||||||
@@ -5260,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": {}
|
||||||
},
|
},
|
||||||
@@ -5346,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": {
|
||||||
@@ -5363,11 +5127,6 @@
|
|||||||
"which-boxed-primitive": "^1.0.2"
|
"which-boxed-primitive": "^1.0.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"underscore": {
|
|
||||||
"version": "1.12.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
|
|
||||||
"integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw=="
|
|
||||||
},
|
|
||||||
"uri-js": {
|
"uri-js": {
|
||||||
"version": "4.4.1",
|
"version": "4.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||||
@@ -5412,11 +5171,6 @@
|
|||||||
"has-tostringtag": "^1.0.1"
|
"has-tostringtag": "^1.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"word-wrap": {
|
|
||||||
"version": "1.2.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
|
|
||||||
"integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA=="
|
|
||||||
},
|
|
||||||
"wrappy": {
|
"wrappy": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||||
@@ -5436,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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
20
package.json
20
package.json
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@lukehagar/plexjs",
|
"name": "@lukehagar/plexjs",
|
||||||
"version": "0.10.0",
|
"version": "0.14.0",
|
||||||
"author": "LukeHagar",
|
"author": "LukeHagar",
|
||||||
"main": "./index.js",
|
"main": "./index.js",
|
||||||
"sideEffects": false,
|
"sideEffects": false,
|
||||||
"repository": {
|
"repository": {
|
||||||
@@ -14,22 +14,20 @@
|
|||||||
"build": "tsc",
|
"build": "tsc",
|
||||||
"prepare": "npm run build"
|
"prepare": "npm run build"
|
||||||
},
|
},
|
||||||
"keywords": [],
|
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"zod": ">= 3"
|
"zod": ">= 3"
|
||||||
},
|
},
|
||||||
"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": {
|
||||||
"decimal.js": "^10.4.3",
|
|
||||||
"jsonpath": "^1.1.1"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
|
|||||||
@@ -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. */
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
import { HTTPClient } from "./http";
|
import { HTTPClient } from "./http";
|
||||||
import { RetryConfig } from "./retries";
|
import { RetryConfig } from "./retries";
|
||||||
import { pathToFunc } from "./url";
|
import { Params, pathToFunc } from "./url";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Contains the list of servers available to the SDK
|
* Contains the list of servers available to the SDK
|
||||||
@@ -27,6 +27,11 @@ export enum ServerProtocol {
|
|||||||
export type SDKOptions = {
|
export type SDKOptions = {
|
||||||
accessToken?: string | (() => Promise<string>);
|
accessToken?: string | (() => Promise<string>);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Allows setting the xPlexClientIdentifier parameter for all supported operations
|
||||||
|
*/
|
||||||
|
xPlexClientIdentifier?: string;
|
||||||
|
|
||||||
httpClient?: HTTPClient;
|
httpClient?: HTTPClient;
|
||||||
/**
|
/**
|
||||||
* Allows overriding the default server used by the SDK
|
* Allows overriding the default server used by the SDK
|
||||||
@@ -57,17 +62,20 @@ export type SDKOptions = {
|
|||||||
export function serverURLFromOptions(options: SDKOptions): URL | null {
|
export function serverURLFromOptions(options: SDKOptions): URL | null {
|
||||||
let serverURL = options.serverURL;
|
let serverURL = options.serverURL;
|
||||||
|
|
||||||
const serverParams = [
|
const serverParams: Params[] = [
|
||||||
{
|
{
|
||||||
protocol: options.protocol?.toString() ?? "http",
|
protocol: options.protocol ?? "http",
|
||||||
ip: options.ip?.toString() ?? "10.10.10.47",
|
ip: options.ip ?? "10.10.10.47",
|
||||||
port: options.port?.toString() ?? "32400",
|
port: options.port ?? "32400",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
let params: Record<string, string> = {};
|
let params: Params = {};
|
||||||
const serverIdx = options.serverIdx ?? 0;
|
|
||||||
|
|
||||||
if (!serverURL) {
|
if (!serverURL) {
|
||||||
|
const serverIdx = options.serverIdx ?? 0;
|
||||||
|
if (serverIdx < 0 || serverIdx >= ServerList.length) {
|
||||||
|
throw new Error(`Invalid server index ${serverIdx}`);
|
||||||
|
}
|
||||||
serverURL = ServerList[serverIdx] || "";
|
serverURL = ServerList[serverIdx] || "";
|
||||||
params = serverParams[serverIdx] || {};
|
params = serverParams[serverIdx] || {};
|
||||||
}
|
}
|
||||||
@@ -76,10 +84,10 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
|
|||||||
return new URL(u);
|
return new URL(u);
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SDK_METADATA = Object.freeze({
|
export const SDK_METADATA = {
|
||||||
language: "typescript",
|
language: "typescript",
|
||||||
openapiDocVersion: "0.0.3",
|
openapiDocVersion: "0.0.3",
|
||||||
sdkVersion: "0.10.0",
|
sdkVersion: "0.14.0",
|
||||||
genVersion: "2.279.1",
|
genVersion: "2.314.0",
|
||||||
userAgent: "speakeasy-sdk/typescript 0.10.0 2.279.1 0.0.3 @lukehagar/plexjs",
|
userAgent: "speakeasy-sdk/typescript 0.14.0 2.314.0 0.0.3 @lukehagar/plexjs",
|
||||||
});
|
} as const;
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ export function encodeMatrix(
|
|||||||
key: string,
|
key: string,
|
||||||
value: unknown,
|
value: unknown,
|
||||||
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
||||||
) {
|
): string {
|
||||||
let out = "";
|
let out = "";
|
||||||
const pairs: [string, unknown][] = options?.explode
|
const pairs: [string, unknown][] = options?.explode
|
||||||
? explode(key, value)
|
? explode(key, value)
|
||||||
@@ -65,7 +65,7 @@ export function encodeLabel(
|
|||||||
key: string,
|
key: string,
|
||||||
value: unknown,
|
value: unknown,
|
||||||
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
||||||
) {
|
): string {
|
||||||
let out = "";
|
let out = "";
|
||||||
const pairs: [string, unknown][] = options?.explode
|
const pairs: [string, unknown][] = options?.explode
|
||||||
? explode(key, value)
|
? explode(key, value)
|
||||||
@@ -100,7 +100,13 @@ export function encodeLabel(
|
|||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
|
|
||||||
function formEncoder(sep: string) {
|
type FormEncoder = (
|
||||||
|
key: string,
|
||||||
|
value: unknown,
|
||||||
|
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
||||||
|
) => string;
|
||||||
|
|
||||||
|
function formEncoder(sep: string): FormEncoder {
|
||||||
return (
|
return (
|
||||||
key: string,
|
key: string,
|
||||||
value: unknown,
|
value: unknown,
|
||||||
@@ -157,7 +163,7 @@ export function encodeBodyForm(
|
|||||||
key: string,
|
key: string,
|
||||||
value: unknown,
|
value: unknown,
|
||||||
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
||||||
) {
|
): string {
|
||||||
let out = "";
|
let out = "";
|
||||||
const pairs: [string, unknown][] = options?.explode
|
const pairs: [string, unknown][] = options?.explode
|
||||||
? explode(key, value)
|
? explode(key, value)
|
||||||
@@ -200,7 +206,7 @@ export function encodeDeepObject(
|
|||||||
key: string,
|
key: string,
|
||||||
value: unknown,
|
value: unknown,
|
||||||
options?: { charEncoding?: "percent" | "none" },
|
options?: { charEncoding?: "percent" | "none" },
|
||||||
) {
|
): string {
|
||||||
if (value == null) {
|
if (value == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
@@ -247,7 +253,7 @@ export function encodeJSON(
|
|||||||
key: string,
|
key: string,
|
||||||
value: unknown,
|
value: unknown,
|
||||||
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
||||||
) {
|
): string {
|
||||||
if (typeof value === "undefined") {
|
if (typeof value === "undefined") {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
@@ -265,7 +271,7 @@ export const encodeSimple = (
|
|||||||
key: string,
|
key: string,
|
||||||
value: unknown,
|
value: unknown,
|
||||||
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
options?: { explode?: boolean; charEncoding?: "percent" | "none" },
|
||||||
) => {
|
): string => {
|
||||||
let out = "";
|
let out = "";
|
||||||
const pairs: [string, unknown][] = options?.explode
|
const pairs: [string, unknown][] = options?.explode
|
||||||
? explode(key, value)
|
? explode(key, value)
|
||||||
@@ -337,7 +343,7 @@ function serializeValue(value: unknown): string {
|
|||||||
return `${value}`;
|
return `${value}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
function jsonReplacer(_: string, value: unknown) {
|
function jsonReplacer(_: string, value: unknown): unknown {
|
||||||
if (value instanceof Uint8Array) {
|
if (value instanceof Uint8Array) {
|
||||||
return bytesToBase64(value);
|
return bytesToBase64(value);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1,192 +0,0 @@
|
|||||||
/*
|
|
||||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
||||||
*/
|
|
||||||
|
|
||||||
export type ServerEvent<T> = {
|
|
||||||
data?: T | undefined;
|
|
||||||
event?: string | undefined;
|
|
||||||
retry?: number | undefined;
|
|
||||||
id?: string | undefined;
|
|
||||||
};
|
|
||||||
const LF = 0x0a;
|
|
||||||
const CR = 0x0d;
|
|
||||||
const NEWLINE_CHARS = new Set([LF, CR]);
|
|
||||||
const MESSAGE_BOUNDARIES = [
|
|
||||||
new Uint8Array([CR, LF, CR, LF]),
|
|
||||||
new Uint8Array([CR, CR]),
|
|
||||||
new Uint8Array([LF, LF]),
|
|
||||||
];
|
|
||||||
|
|
||||||
export class EventStream<Event extends ServerEvent<unknown>> {
|
|
||||||
private readonly stream: ReadableStream<Uint8Array>;
|
|
||||||
private readonly decoder: (rawEvent: ServerEvent<string>) => Event;
|
|
||||||
|
|
||||||
constructor(init: {
|
|
||||||
stream: ReadableStream<Uint8Array>;
|
|
||||||
decoder: (rawEvent: ServerEvent<string>) => Event;
|
|
||||||
}) {
|
|
||||||
this.stream = init.stream;
|
|
||||||
this.decoder = init.decoder;
|
|
||||||
}
|
|
||||||
|
|
||||||
async *[Symbol.asyncIterator]() {
|
|
||||||
const reader = this.stream.getReader();
|
|
||||||
let buffer = new Uint8Array([]);
|
|
||||||
let position = 0;
|
|
||||||
|
|
||||||
try {
|
|
||||||
while (true) {
|
|
||||||
const { done, value } = await reader.read();
|
|
||||||
if (done) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
const newBuffer = new Uint8Array(buffer.length + value.length);
|
|
||||||
newBuffer.set(buffer);
|
|
||||||
newBuffer.set(value, buffer.length);
|
|
||||||
buffer = newBuffer;
|
|
||||||
|
|
||||||
for (let i = position; i < buffer.length; i++) {
|
|
||||||
const boundary = findBoundary(buffer, i);
|
|
||||||
if (boundary == null) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
const chunk = buffer.slice(position, i);
|
|
||||||
position = i + boundary.length;
|
|
||||||
const event = parseEvent(chunk, this.decoder);
|
|
||||||
if (event != null) {
|
|
||||||
yield event;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (position > 0) {
|
|
||||||
buffer = buffer.slice(position);
|
|
||||||
position = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (buffer.length > 0) {
|
|
||||||
const event = parseEvent(buffer, this.decoder);
|
|
||||||
if (event != null) {
|
|
||||||
yield event;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} finally {
|
|
||||||
reader.releaseLock();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function findBoundary(buffer: Uint8Array, start: number): Uint8Array | null {
|
|
||||||
const char1 = buffer[start];
|
|
||||||
const char2 = buffer[start + 1];
|
|
||||||
|
|
||||||
// Don't bother checking if the first two characters are not new line
|
|
||||||
// characters.
|
|
||||||
if (
|
|
||||||
char1 == null ||
|
|
||||||
char2 == null ||
|
|
||||||
!NEWLINE_CHARS.has(char1) ||
|
|
||||||
!NEWLINE_CHARS.has(char2)
|
|
||||||
) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (const s of MESSAGE_BOUNDARIES) {
|
|
||||||
const seq = peekSequence(start, buffer, s);
|
|
||||||
if (seq != null) {
|
|
||||||
return seq;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
function peekSequence(
|
|
||||||
position: number,
|
|
||||||
buffer: Uint8Array,
|
|
||||||
sequence: Uint8Array,
|
|
||||||
): Uint8Array | null {
|
|
||||||
if (sequence.length > buffer.length - position) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (let i = 0; i < sequence.length; i++) {
|
|
||||||
if (buffer[position + i] !== sequence[i]) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return sequence;
|
|
||||||
}
|
|
||||||
|
|
||||||
function parseEvent<Event extends ServerEvent<unknown>>(
|
|
||||||
chunk: Uint8Array,
|
|
||||||
decoder: (rawEvent: ServerEvent<string>) => Event,
|
|
||||||
) {
|
|
||||||
if (!chunk.length) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
const td = new TextDecoder();
|
|
||||||
const raw = td.decode(chunk);
|
|
||||||
const lines = raw.split(/\r?\n|\r/g);
|
|
||||||
let publish = false;
|
|
||||||
const rawEvent: ServerEvent<string> = {};
|
|
||||||
|
|
||||||
for (const line of lines) {
|
|
||||||
if (!line) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
const delim = line.indexOf(":");
|
|
||||||
// Lines starting with a colon are ignored.
|
|
||||||
if (delim === 0) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
const field = delim > 0 ? line.substring(0, delim) : "";
|
|
||||||
let value = delim > 0 ? line.substring(delim + 1) : "";
|
|
||||||
if (value.charAt(0) === " ") {
|
|
||||||
value = value.substring(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (field) {
|
|
||||||
case "event": {
|
|
||||||
publish = true;
|
|
||||||
rawEvent.event = value;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "data": {
|
|
||||||
publish = true;
|
|
||||||
rawEvent.data ??= "";
|
|
||||||
rawEvent.data += value + "\n";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "id": {
|
|
||||||
publish = true;
|
|
||||||
rawEvent.id = value;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case "retry": {
|
|
||||||
const r = parseInt(value, 10);
|
|
||||||
if (!Number.isNaN(r)) {
|
|
||||||
publish = true;
|
|
||||||
rawEvent.retry = r;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!publish) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (rawEvent.data != null) {
|
|
||||||
rawEvent.data = rawEvent.data.slice(0, -1);
|
|
||||||
}
|
|
||||||
|
|
||||||
return decoder(rawEvent);
|
|
||||||
}
|
|
||||||
@@ -7,15 +7,28 @@ export type Fetcher = (
|
|||||||
init?: RequestInit,
|
init?: RequestInit,
|
||||||
) => Promise<Response>;
|
) => Promise<Response>;
|
||||||
|
|
||||||
|
export type Awaitable<T> = T | Promise<T>;
|
||||||
|
|
||||||
const DEFAULT_FETCHER: Fetcher = (input, init) => fetch(input, init);
|
const DEFAULT_FETCHER: Fetcher = (input, init) => 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;
|
||||||
}
|
}
|
||||||
|
|
||||||
type BeforeRequestHook = (req: Request) => Request | void;
|
export type BeforeRequestHook = (req: Request) => Awaitable<Request | void>;
|
||||||
type RequestErrorHook = (err: unknown, req: Request) => void;
|
export type RequestErrorHook = (err: unknown, req: Request) => Awaitable<void>;
|
||||||
type ResponseHook = (res: Response, req: Request) => void;
|
export type ResponseHook = (res: Response, req: Request) => Awaitable<void>;
|
||||||
|
|
||||||
export class HTTPClient {
|
export class HTTPClient {
|
||||||
private fetcher: Fetcher;
|
private fetcher: Fetcher;
|
||||||
@@ -28,17 +41,27 @@ export class HTTPClient {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async request(request: Request): Promise<Response> {
|
async request(request: Request): Promise<Response> {
|
||||||
const req = this.requestHooks.reduce((currentReq, fn) => {
|
let req = request;
|
||||||
const nextRequest = fn(currentReq);
|
for (const hook of this.requestHooks) {
|
||||||
return nextRequest || currentReq;
|
const nextRequest = await hook(req);
|
||||||
}, request);
|
if (nextRequest) {
|
||||||
|
req = nextRequest;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const res = await this.fetcher(req);
|
const res = await this.fetcher(req);
|
||||||
this.responseHooks.forEach((fn) => fn(res, req));
|
|
||||||
|
for (const hook of this.responseHooks) {
|
||||||
|
await hook(res, req);
|
||||||
|
}
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
this.requestErrorHooks.forEach((fn) => fn(err, req));
|
for (const hook of this.requestErrorHooks) {
|
||||||
|
await hook(err, req);
|
||||||
|
}
|
||||||
|
|
||||||
throw err;
|
throw err;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -88,7 +111,7 @@ export class HTTPClient {
|
|||||||
| [hook: "beforeRequest", fn: BeforeRequestHook]
|
| [hook: "beforeRequest", fn: BeforeRequestHook]
|
||||||
| [hook: "requestError", fn: RequestErrorHook]
|
| [hook: "requestError", fn: RequestErrorHook]
|
||||||
| [hook: "response", fn: ResponseHook]
|
| [hook: "response", fn: ResponseHook]
|
||||||
) {
|
): this {
|
||||||
let target: unknown[];
|
let target: unknown[];
|
||||||
if (args[0] === "beforeRequest") {
|
if (args[0] === "beforeRequest") {
|
||||||
target = this.requestHooks;
|
target = this.requestHooks;
|
||||||
@@ -108,7 +131,7 @@ export class HTTPClient {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
clone() {
|
clone(): HTTPClient {
|
||||||
const child = new HTTPClient(this.options);
|
const child = new HTTPClient(this.options);
|
||||||
child.requestHooks = this.requestHooks.slice();
|
child.requestHooks = this.requestHooks.slice();
|
||||||
child.requestErrorHooks = this.requestErrorHooks.slice();
|
child.requestErrorHooks = this.requestErrorHooks.slice();
|
||||||
@@ -148,7 +171,7 @@ const codeRangeRE = new RegExp("^[0-9]xx$", "i");
|
|||||||
export function matchStatusCode(
|
export function matchStatusCode(
|
||||||
response: Response,
|
response: Response,
|
||||||
codes: number | string | (number | string)[],
|
codes: number | string | (number | string)[],
|
||||||
) {
|
): boolean {
|
||||||
const actual = `${response.status}`;
|
const actual = `${response.status}`;
|
||||||
const expectedCodes = Array.isArray(codes) ? codes : [codes];
|
const expectedCodes = Array.isArray(codes) ? codes : [codes];
|
||||||
if (!expectedCodes.length) {
|
if (!expectedCodes.length) {
|
||||||
|
|||||||
@@ -40,7 +40,11 @@ export class ClientSDK {
|
|||||||
this.client = client;
|
this.client = client;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected createRequest$(conf: RequestConfig, options?: RequestOptions) {
|
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;
|
||||||
@@ -71,10 +75,10 @@ export class ClientSDK {
|
|||||||
|
|
||||||
const headers = new Headers(opHeaders);
|
const headers = new Headers(opHeaders);
|
||||||
|
|
||||||
const username = security?.basic.username || "";
|
const username = security?.basic.username;
|
||||||
const password = security?.basic.password || "";
|
const password = security?.basic.password;
|
||||||
if (username) {
|
if (username != null || password != null) {
|
||||||
const encoded = stringToBase64([username, password].join(":"));
|
const encoded = stringToBase64([username || "", password || ""].join(":"));
|
||||||
headers.set("Authorization", `Basic ${encoded}`);
|
headers.set("Authorization", `Basic ${encoded}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -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$(
|
||||||
@@ -109,7 +118,7 @@ export class ClientSDK {
|
|||||||
context: HookContext;
|
context: HookContext;
|
||||||
errorCodes: number | string | (number | string)[];
|
errorCodes: number | string | (number | string)[];
|
||||||
}
|
}
|
||||||
) {
|
): Promise<Response> {
|
||||||
const { context, errorCodes } = options;
|
const { context, errorCodes } = options;
|
||||||
|
|
||||||
let response = await this.client.request(await this.hooks$.beforeRequest(context, req));
|
let response = await this.client.request(await this.hooks$.beforeRequest(context, req));
|
||||||
|
|||||||
@@ -30,21 +30,15 @@ export class SecurityError extends Error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export type SecurityState = {
|
export type SecurityState = {
|
||||||
basic: { username: string; password?: string };
|
basic: { username?: string | undefined; password?: string | undefined };
|
||||||
headers: Record<string, string>;
|
headers: Record<string, string>;
|
||||||
queryParams: Record<string, string>;
|
queryParams: Record<string, string>;
|
||||||
cookies: Record<string, string>;
|
cookies: Record<string, string>;
|
||||||
};
|
};
|
||||||
|
|
||||||
type SecurityInputBasicPacked = {
|
|
||||||
type: "http:basic";
|
|
||||||
value: { username: string; password?: string } | null | undefined;
|
|
||||||
};
|
|
||||||
|
|
||||||
type SecurityInputBasic = {
|
type SecurityInputBasic = {
|
||||||
type: "http:basic";
|
type: "http:basic";
|
||||||
value: string | null | undefined;
|
value: { username?: string | undefined; password?: string | undefined } | null | undefined;
|
||||||
fieldName: "username" | "password";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
type SecurityInputBearer = {
|
type SecurityInputBearer = {
|
||||||
@@ -79,7 +73,6 @@ type SecurityInputOAuth2ClientCredentials = {
|
|||||||
|
|
||||||
export type SecurityInput =
|
export type SecurityInput =
|
||||||
| SecurityInputBasic
|
| SecurityInputBasic
|
||||||
| SecurityInputBasicPacked
|
|
||||||
| SecurityInputBearer
|
| SecurityInputBearer
|
||||||
| SecurityInputAPIKey
|
| SecurityInputAPIKey
|
||||||
| SecurityInputOAuth2
|
| SecurityInputOAuth2
|
||||||
@@ -94,7 +87,21 @@ export function resolveSecurity(...options: SecurityInput[][]): SecurityState |
|
|||||||
cookies: {},
|
cookies: {},
|
||||||
};
|
};
|
||||||
|
|
||||||
const option = options.find((opts) => opts.every((o) => Boolean(o.value)));
|
const option = options.find((opts) => {
|
||||||
|
return opts.every((o) => {
|
||||||
|
if (o.value == null) {
|
||||||
|
return false;
|
||||||
|
} else if (o.type === "http:basic") {
|
||||||
|
return o.value.username != null || o.value.password != null;
|
||||||
|
} else if (typeof o.value === "string") {
|
||||||
|
return !!o.value;
|
||||||
|
} else {
|
||||||
|
throw new Error(
|
||||||
|
`Unrecognized security type: ${o.type} (value type: ${typeof o.value})`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
if (option == null) {
|
if (option == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -139,16 +146,12 @@ export function resolveSecurity(...options: SecurityInput[][]): SecurityState |
|
|||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
|
|
||||||
function applyBasic(state: SecurityState, spec: SecurityInputBasic | SecurityInputBasicPacked) {
|
function applyBasic(state: SecurityState, spec: SecurityInputBasic) {
|
||||||
if (spec.value == null) {
|
if (spec.value == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ("fieldName" in spec) {
|
state.basic = spec.value;
|
||||||
state.basic[spec.fieldName] = spec.value;
|
|
||||||
} else {
|
|
||||||
state.basic = spec.value;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function applyBearer(
|
function applyBearer(
|
||||||
@@ -166,8 +169,14 @@ function applyBearer(
|
|||||||
|
|
||||||
state.headers[spec.fieldName] = value;
|
state.headers[spec.fieldName] = value;
|
||||||
}
|
}
|
||||||
export function resolveGlobalSecurity(security: Partial<components.Security> | null | undefined) {
|
export function resolveGlobalSecurity(
|
||||||
|
security: Partial<components.Security> | null | undefined
|
||||||
|
): SecurityState | null {
|
||||||
return resolveSecurity([
|
return resolveSecurity([
|
||||||
{ value: security?.accessToken, fieldName: "X-Plex-Token", type: "apiKey:header" },
|
{
|
||||||
|
fieldName: "X-Plex-Token",
|
||||||
|
type: "apiKey:header",
|
||||||
|
value: security?.accessToken,
|
||||||
|
},
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,10 +4,12 @@
|
|||||||
|
|
||||||
const hasOwn = Object.prototype.hasOwnProperty;
|
const hasOwn = Object.prototype.hasOwnProperty;
|
||||||
|
|
||||||
|
export type Params = Partial<Record<string, string | number>>;
|
||||||
|
|
||||||
export function pathToFunc(
|
export function pathToFunc(
|
||||||
pathPattern: string,
|
pathPattern: string,
|
||||||
options?: { charEncoding?: "percent" | "none" },
|
options?: { charEncoding?: "percent" | "none" },
|
||||||
): (params?: Record<string, string | number>) => string {
|
): (params?: Params) => string {
|
||||||
const paramRE = /\{([a-zA-Z0-9_]+?)\}/g;
|
const paramRE = /\{([a-zA-Z0-9_]+?)\}/g;
|
||||||
|
|
||||||
return function buildURLPath(params: Record<string, unknown> = {}): string {
|
return function buildURLPath(params: Record<string, unknown> = {}): string {
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type Security = {
|
export type Security = {
|
||||||
accessToken: string;
|
accessToken: string;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type AddPlaylistContentsErrors = {
|
export type AddPlaylistContentsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace AddPlaylistContentsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<AddPlaylistContentsErrors$.Outbound> | undefined;
|
errors?: Array<AddPlaylistContentsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type ApplyUpdatesErrors = {
|
export type ApplyUpdatesErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace ApplyUpdatesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<ApplyUpdatesErrors$.Outbound> | undefined;
|
errors?: Array<ApplyUpdatesErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type CancelServerActivitiesErrors = {
|
export type CancelServerActivitiesErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -119,6 +119,7 @@ export namespace CancelServerActivitiesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<CancelServerActivitiesErrors$.Outbound> | undefined;
|
errors?: Array<CancelServerActivitiesErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type CheckForUpdatesErrors = {
|
export type CheckForUpdatesErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace CheckForUpdatesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<CheckForUpdatesErrors$.Outbound> | undefined;
|
errors?: Array<CheckForUpdatesErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type ClearPlaylistContentsErrors = {
|
export type ClearPlaylistContentsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -119,6 +119,7 @@ export namespace ClearPlaylistContentsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<ClearPlaylistContentsErrors$.Outbound> | undefined;
|
errors?: Array<ClearPlaylistContentsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type CreatePlaylistErrors = {
|
export type CreatePlaylistErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace CreatePlaylistResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<CreatePlaylistErrors$.Outbound> | undefined;
|
errors?: Array<CreatePlaylistErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type DeleteLibraryErrors = {
|
export type DeleteLibraryErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace DeleteLibraryResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<DeleteLibraryErrors$.Outbound> | undefined;
|
errors?: Array<DeleteLibraryErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type DeletePlaylistErrors = {
|
export type DeletePlaylistErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace DeletePlaylistResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<DeletePlaylistErrors$.Outbound> | undefined;
|
errors?: Array<DeletePlaylistErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type EnablePaperTrailErrors = {
|
export type EnablePaperTrailErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace EnablePaperTrailResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<EnablePaperTrailErrors$.Outbound> | undefined;
|
errors?: Array<EnablePaperTrailErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetAvailableClientsErrors = {
|
export type GetAvailableClientsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace GetAvailableClientsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetAvailableClientsErrors$.Outbound> | undefined;
|
errors?: Array<GetAvailableClientsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetButlerTasksErrors = {
|
export type GetButlerTasksErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetButlerTasksResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetButlerTasksErrors$.Outbound> | undefined;
|
errors?: Array<GetButlerTasksErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetDevicesErrors = {
|
export type GetDevicesErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetDevicesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetDevicesErrors$.Outbound> | undefined;
|
errors?: Array<GetDevicesErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetFileHashErrors = {
|
export type GetFileHashErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetFileHashResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetFileHashErrors$.Outbound> | undefined;
|
errors?: Array<GetFileHashErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetGlobalHubsErrors = {
|
export type GetGlobalHubsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetGlobalHubsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetGlobalHubsErrors$.Outbound> | undefined;
|
errors?: Array<GetGlobalHubsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetLibrariesErrors = {
|
export type GetLibrariesErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetLibrariesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetLibrariesErrors$.Outbound> | undefined;
|
errors?: Array<GetLibrariesErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetLibraryErrors = {
|
export type GetLibraryErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetLibraryResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetLibraryErrors$.Outbound> | undefined;
|
errors?: Array<GetLibraryErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetLibraryHubsErrors = {
|
export type GetLibraryHubsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetLibraryHubsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetLibraryHubsErrors$.Outbound> | undefined;
|
errors?: Array<GetLibraryHubsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetMetadataErrors = {
|
export type GetMetadataErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetMetadataResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetMetadataErrors$.Outbound> | undefined;
|
errors?: Array<GetMetadataErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetMetadataChildrenErrors = {
|
export type GetMetadataChildrenErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace GetMetadataChildrenResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetMetadataChildrenErrors$.Outbound> | undefined;
|
errors?: Array<GetMetadataChildrenErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetMyPlexAccountErrors = {
|
export type GetMyPlexAccountErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetMyPlexAccountResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetMyPlexAccountErrors$.Outbound> | undefined;
|
errors?: Array<GetMyPlexAccountErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetOnDeckErrors = {
|
export type GetOnDeckErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetOnDeckResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetOnDeckErrors$.Outbound> | undefined;
|
errors?: Array<GetOnDeckErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetPinErrors = {
|
export type GetPinErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetPinResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetPinErrors$.Outbound> | undefined;
|
errors?: Array<GetPinErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetPlaylistErrors = {
|
export type GetPlaylistErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetPlaylistResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetPlaylistErrors$.Outbound> | undefined;
|
errors?: Array<GetPlaylistErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetPlaylistContentsErrors = {
|
export type GetPlaylistContentsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace GetPlaylistContentsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetPlaylistContentsErrors$.Outbound> | undefined;
|
errors?: Array<GetPlaylistContentsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetPlaylistsErrors = {
|
export type GetPlaylistsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetPlaylistsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetPlaylistsErrors$.Outbound> | undefined;
|
errors?: Array<GetPlaylistsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetRecentlyAddedErrors = {
|
export type GetRecentlyAddedErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetRecentlyAddedResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetRecentlyAddedErrors$.Outbound> | undefined;
|
errors?: Array<GetRecentlyAddedErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetResizedPhotoErrors = {
|
export type GetResizedPhotoErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetResizedPhotoResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetResizedPhotoErrors$.Outbound> | undefined;
|
errors?: Array<GetResizedPhotoErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetSearchResultsErrors = {
|
export type GetSearchResultsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetSearchResultsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetSearchResultsErrors$.Outbound> | undefined;
|
errors?: Array<GetSearchResultsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetServerActivitiesErrors = {
|
export type GetServerActivitiesErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace GetServerActivitiesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetServerActivitiesErrors$.Outbound> | undefined;
|
errors?: Array<GetServerActivitiesErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type Errors = {
|
export type Errors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -119,6 +119,7 @@ export namespace GetServerCapabilitiesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<Errors$.Outbound> | undefined;
|
errors?: Array<Errors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetServerIdentityErrors = {
|
export type GetServerIdentityErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetServerIdentityResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetServerIdentityErrors$.Outbound> | undefined;
|
errors?: Array<GetServerIdentityErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetServerListErrors = {
|
export type GetServerListErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetServerListResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetServerListErrors$.Outbound> | undefined;
|
errors?: Array<GetServerListErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetServerPreferencesErrors = {
|
export type GetServerPreferencesErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace GetServerPreferencesResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetServerPreferencesErrors$.Outbound> | undefined;
|
errors?: Array<GetServerPreferencesErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetSessionHistoryErrors = {
|
export type GetSessionHistoryErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetSessionHistoryResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetSessionHistoryErrors$.Outbound> | undefined;
|
errors?: Array<GetSessionHistoryErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetSessionsErrors = {
|
export type GetSessionsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetSessionsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetSessionsErrors$.Outbound> | undefined;
|
errors?: Array<GetSessionsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetSourceConnectionInformationErrors = {
|
export type GetSourceConnectionInformationErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -129,6 +129,7 @@ export namespace GetSourceConnectionInformationResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetSourceConnectionInformationErrors$.Outbound> | undefined;
|
errors?: Array<GetSourceConnectionInformationErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetStatisticsErrors = {
|
export type GetStatisticsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetStatisticsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetStatisticsErrors$.Outbound> | undefined;
|
errors?: Array<GetStatisticsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetTimelineErrors = {
|
export type GetTimelineErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetTimelineResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetTimelineErrors$.Outbound> | undefined;
|
errors?: Array<GetTimelineErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetTokenErrors = {
|
export type GetTokenErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetTokenResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetTokenErrors$.Outbound> | undefined;
|
errors?: Array<GetTokenErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetTranscodeSessionsErrors = {
|
export type GetTranscodeSessionsErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace GetTranscodeSessionsResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetTranscodeSessionsErrors$.Outbound> | undefined;
|
errors?: Array<GetTranscodeSessionsErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetTransientTokenErrors = {
|
export type GetTransientTokenErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetTransientTokenResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetTransientTokenErrors$.Outbound> | undefined;
|
errors?: Array<GetTransientTokenErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type GetUpdateStatusErrors = {
|
export type GetUpdateStatusErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace GetUpdateStatusResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<GetUpdateStatusErrors$.Outbound> | undefined;
|
errors?: Array<GetUpdateStatusErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type LogLineErrors = {
|
export type LogLineErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace LogLineResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<LogLineErrors$.Outbound> | undefined;
|
errors?: Array<LogLineErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type LogMultiLineErrors = {
|
export type LogMultiLineErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace LogMultiLineResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<LogMultiLineErrors$.Outbound> | undefined;
|
errors?: Array<LogMultiLineErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type MarkPlayedErrors = {
|
export type MarkPlayedErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace MarkPlayedResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<MarkPlayedErrors$.Outbound> | undefined;
|
errors?: Array<MarkPlayedErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type MarkUnplayedErrors = {
|
export type MarkUnplayedErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace MarkUnplayedResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<MarkUnplayedErrors$.Outbound> | undefined;
|
errors?: Array<MarkUnplayedErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type PerformSearchErrors = {
|
export type PerformSearchErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace PerformSearchResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<PerformSearchErrors$.Outbound> | undefined;
|
errors?: Array<PerformSearchErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type PerformVoiceSearchErrors = {
|
export type PerformVoiceSearchErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace PerformVoiceSearchResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<PerformVoiceSearchErrors$.Outbound> | undefined;
|
errors?: Array<PerformVoiceSearchErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type RefreshLibraryErrors = {
|
export type RefreshLibraryErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace RefreshLibraryResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<RefreshLibraryErrors$.Outbound> | undefined;
|
errors?: Array<RefreshLibraryErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ export class SDKValidationError extends Error {
|
|||||||
this.rawValue = rawValue;
|
this.rawValue = rawValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override toString() {
|
public override toString(): string {
|
||||||
return `${this.message}: ${this.cause}`;
|
return `${this.message}: ${this.cause}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@ export class SDKValidationError extends Error {
|
|||||||
* is a ZodError or some other recognized error type, otherwise return the
|
* is a ZodError or some other recognized error type, otherwise return the
|
||||||
* default error message.
|
* default error message.
|
||||||
*/
|
*/
|
||||||
public pretty() {
|
public pretty(): string {
|
||||||
if (this.cause instanceof z.ZodError) {
|
if (this.cause instanceof z.ZodError) {
|
||||||
return `${this.message}\n${formatZodError(this.cause)}`;
|
return `${this.message}\n${formatZodError(this.cause)}`;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type StartAllTasksErrors = {
|
export type StartAllTasksErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace StartAllTasksResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<StartAllTasksErrors$.Outbound> | undefined;
|
errors?: Array<StartAllTasksErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type StartTaskErrors = {
|
export type StartTaskErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace StartTaskResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<StartTaskErrors$.Outbound> | undefined;
|
errors?: Array<StartTaskErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type StartUniversalTranscodeErrors = {
|
export type StartUniversalTranscodeErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -120,6 +120,7 @@ export namespace StartUniversalTranscodeResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<StartUniversalTranscodeErrors$.Outbound> | undefined;
|
errors?: Array<StartUniversalTranscodeErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type StopAllTasksErrors = {
|
export type StopAllTasksErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace StopAllTasksResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<StopAllTasksErrors$.Outbound> | undefined;
|
errors?: Array<StopAllTasksErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type StopTaskErrors = {
|
export type StopTaskErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -115,6 +115,7 @@ export namespace StopTaskResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<StopTaskErrors$.Outbound> | undefined;
|
errors?: Array<StopTaskErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
@@ -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 { z } from "zod";
|
import * as z from "zod";
|
||||||
|
|
||||||
export type StopTranscodeSessionErrors = {
|
export type StopTranscodeSessionErrors = {
|
||||||
code?: number | undefined;
|
code?: number | undefined;
|
||||||
@@ -116,6 +116,7 @@ export namespace StopTranscodeSessionResponseBody$ {
|
|||||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Outbound = {
|
export type Outbound = {
|
||||||
errors?: Array<StopTranscodeSessionErrors$.Outbound> | undefined;
|
errors?: Array<StopTranscodeSessionErrors$.Outbound> | undefined;
|
||||||
RawResponse?: never | undefined;
|
RawResponse?: never | undefined;
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user