mirror of
https://github.com/LukeHagar/plexjs.git
synced 2025-12-06 12:37:46 +00:00
Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0d73a769fb | ||
|
|
eeadc8c329 | ||
|
|
dbe2e37bba | ||
|
|
6c314bea48 | ||
|
|
9e28d57f15 | ||
|
|
9da9389549 | ||
|
|
fd886229c2 | ||
|
|
8a8615f241 | ||
|
|
29b8ad88d9 | ||
|
|
fd13b3d892 | ||
|
|
fc0ebfe782 | ||
|
|
9503c9033d | ||
|
|
1c5fa25562 | ||
|
|
3020866795 | ||
|
|
b0f89ba7d4 | ||
|
|
d7d14f28e8 |
49
.github/workflows/speakeasy_sdk_generation.yml
vendored
49
.github/workflows/speakeasy_sdk_generation.yml
vendored
@@ -1,31 +1,26 @@
|
||||
name: Generate
|
||||
permissions:
|
||||
checks: write
|
||||
contents: write
|
||||
pull-requests: write
|
||||
statuses: write
|
||||
checks: write
|
||||
contents: write
|
||||
pull-requests: write
|
||||
statuses: write
|
||||
"on":
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
force:
|
||||
description: Force generation of SDKs
|
||||
type: boolean
|
||||
default: false
|
||||
schedule:
|
||||
- cron: 0 0 * * *
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
force:
|
||||
description: Force generation of SDKs
|
||||
type: boolean
|
||||
default: false
|
||||
schedule:
|
||||
- cron: 0 0 * * *
|
||||
jobs:
|
||||
generate:
|
||||
uses: speakeasy-api/sdk-generation-action/.github/workflows/sdk-generation.yaml@v14
|
||||
with:
|
||||
force: ${{ github.event.inputs.force }}
|
||||
languages: |
|
||||
- typescript
|
||||
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
|
||||
secrets:
|
||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
npm_token: ${{ secrets.NPM_TOKEN }}
|
||||
speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }}
|
||||
generate:
|
||||
uses: speakeasy-api/sdk-generation-action/.github/workflows/workflow-executor.yaml@v15
|
||||
with:
|
||||
force: ${{ github.event.inputs.force }}
|
||||
mode: direct
|
||||
speakeasy_version: latest
|
||||
secrets:
|
||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
npm_token: ${{ secrets.NPM_TOKEN }}
|
||||
speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }}
|
||||
|
||||
@@ -1,26 +1,27 @@
|
||||
lockVersion: 2.0.0
|
||||
id: 16f22cbf-f23f-4419-8924-3a4b06381947
|
||||
management:
|
||||
docChecksum: e34dac84738ebf2d447ea2b9055a6eeb
|
||||
docChecksum: a91eaf9ec1e6a3a6f4bf0571f5b18bae
|
||||
docVersion: 0.0.3
|
||||
speakeasyVersion: internal
|
||||
generationVersion: 2.272.4
|
||||
releaseVersion: 0.9.0
|
||||
configChecksum: 040310a82f908de279e981b0c7911a38
|
||||
speakeasyVersion: 1.231.1
|
||||
generationVersion: 2.295.1
|
||||
releaseVersion: 0.12.1
|
||||
configChecksum: 8d21b1fe71b049ddde2e7694c17c983b
|
||||
repoURL: https://github.com/LukeHagar/plexjs.git
|
||||
repoSubDirectory: .
|
||||
installationURL: https://github.com/LukeHagar/plexjs
|
||||
published: true
|
||||
features:
|
||||
typescript:
|
||||
constsAndDefaults: 0.1.3
|
||||
core: 3.6.1
|
||||
constsAndDefaults: 0.1.5
|
||||
core: 3.7.0
|
||||
flattening: 2.81.1
|
||||
globalSecurity: 2.82.3
|
||||
globalServerURLs: 2.82.3
|
||||
globalSecurity: 2.82.9
|
||||
globalServerURLs: 2.82.4
|
||||
globals: 2.82.1
|
||||
methodServerURLs: 2.82.1
|
||||
nameOverrides: 2.81.1
|
||||
responseFormat: 0.1.0
|
||||
responseFormat: 0.2.3
|
||||
generatedFiles:
|
||||
- src/sdk/server.ts
|
||||
- src/sdk/media.ts
|
||||
@@ -46,7 +47,6 @@ generatedFiles:
|
||||
- src/lib/base64.ts
|
||||
- src/lib/config.ts
|
||||
- src/lib/encodings.ts
|
||||
- src/lib/event-streams.ts
|
||||
- src/lib/http.ts
|
||||
- src/lib/retries.ts
|
||||
- src/lib/schemas.ts
|
||||
@@ -57,7 +57,6 @@ generatedFiles:
|
||||
- src/models/errors/sdkerror.ts
|
||||
- src/models/errors/sdkvalidationerror.ts
|
||||
- src/types/blobs.ts
|
||||
- src/types/decimal.ts
|
||||
- src/types/index.ts
|
||||
- src/types/operations.ts
|
||||
- src/types/rfcdate.ts
|
||||
|
||||
12
.speakeasy/workflow.yaml
Normal file
12
.speakeasy/workflow.yaml
Normal file
@@ -0,0 +1,12 @@
|
||||
workflowVersion: 1.0.0
|
||||
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
|
||||
57
README.md
57
README.md
@@ -34,6 +34,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerCapabilities();
|
||||
@@ -176,6 +177,7 @@ import * as errors from "@lukehagar/plexjs/models/errors";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
let result;
|
||||
@@ -227,6 +229,7 @@ async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
serverIdx: 0,
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerCapabilities();
|
||||
@@ -257,6 +260,7 @@ async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
serverURL: "{protocol}://{ip}:{port}",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerCapabilities();
|
||||
@@ -276,12 +280,14 @@ The server URL can also be overridden on a per-operation basis, provided a serve
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
async function run() {
|
||||
const sdk = new PlexAPI();
|
||||
const sdk = new PlexAPI({
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const xPlexClientIdentifier = "<value>";
|
||||
const strong = false;
|
||||
const xPlexClientIdentifier = "<value>";
|
||||
|
||||
const result = await sdk.plex.getPin(xPlexClientIdentifier, strong, {
|
||||
const result = await sdk.plex.getPin(strong, xPlexClientIdentifier, {
|
||||
serverURL: "https://plex.tv/api/v2",
|
||||
});
|
||||
|
||||
@@ -361,6 +367,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerCapabilities();
|
||||
@@ -380,6 +387,50 @@ run();
|
||||
For supported JavaScript runtimes, please consult [RUNTIMES.md](RUNTIMES.md).
|
||||
<!-- 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 `"<value>"` 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";
|
||||
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const strong = false;
|
||||
const xPlexClientIdentifier = "<value>";
|
||||
|
||||
const result = await sdk.plex.getPin(strong, xPlexClientIdentifier);
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
|
||||
```
|
||||
<!-- End Global Parameters [global-parameters] -->
|
||||
|
||||
<!-- Placeholder for Future Speakeasy SDK Sections -->
|
||||
|
||||
# Development
|
||||
|
||||
102
RELEASES.md
102
RELEASES.md
@@ -198,4 +198,104 @@ Based on:
|
||||
### Generated
|
||||
- [typescript v0.9.0] .
|
||||
### Releases
|
||||
- [NPM v0.9.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.9.0 - .
|
||||
- [NPM v0.9.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.9.0 - .
|
||||
|
||||
## 2024-03-01 00:29:35
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc 0.0.3
|
||||
- Speakeasy CLI 1.198.1 (2.275.4) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [typescript v0.9.1] .
|
||||
### Releases
|
||||
- [NPM v0.9.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.9.1 - .
|
||||
|
||||
## 2024-03-02 00:24:38
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc 0.0.3
|
||||
- Speakeasy CLI 1.200.0 (2.277.0) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [typescript v0.9.2] .
|
||||
### Releases
|
||||
- [NPM v0.9.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.9.2 - .
|
||||
|
||||
## 2024-03-08 00:26:13
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc 0.0.3
|
||||
- Speakeasy CLI 1.204.1 (2.279.1) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [typescript v0.10.0] .
|
||||
### Releases
|
||||
- [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 - .
|
||||
1
USAGE.md
1
USAGE.md
@@ -5,6 +5,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerCapabilities();
|
||||
|
||||
@@ -5,5 +5,5 @@
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `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/> |
|
||||
@@ -6,4 +6,4 @@
|
||||
| Field | Type | Required | Description |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `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/> |
|
||||
@@ -29,6 +29,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.activities.getServerActivities();
|
||||
@@ -70,6 +71,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const activityUUID = "<value>";
|
||||
|
||||
@@ -25,6 +25,7 @@ import { GetTransientTokenQueryParamType, Scope } from "@lukehagar/plexjs/models
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const type = GetTransientTokenQueryParamType.Delegation;
|
||||
@@ -73,6 +74,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const source = "server://client-identifier";
|
||||
|
||||
@@ -26,6 +26,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.butler.getButlerTasks();
|
||||
@@ -72,6 +73,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.butler.startAllTasks();
|
||||
@@ -114,6 +116,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.butler.stopAllTasks();
|
||||
@@ -161,6 +164,7 @@ import { TaskName } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const taskName = TaskName.CleanOldBundles;
|
||||
@@ -207,6 +211,7 @@ import { PathParamTaskName } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const taskName = PathParamTaskName.BackupDatabase;
|
||||
|
||||
@@ -24,6 +24,7 @@ import { OnlyTransient } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const count = 1262.49;
|
||||
@@ -72,6 +73,7 @@ import { QueryParamOnlyTransient } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const sectionId = 6728.76;
|
||||
|
||||
@@ -32,6 +32,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const url = "file://C:\Image.png&type=13";
|
||||
@@ -79,6 +80,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.library.getRecentlyAdded();
|
||||
@@ -126,6 +128,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.library.getLibraries();
|
||||
@@ -207,6 +210,7 @@ import { IncludeDetails } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const sectionId = 1000;
|
||||
@@ -253,6 +257,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const sectionId = 1000;
|
||||
@@ -318,6 +323,7 @@ import { Tag } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const sectionId = 451092;
|
||||
@@ -364,6 +370,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const sectionId = 934.16;
|
||||
@@ -427,6 +434,7 @@ import { Type } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const sectionId = 933505;
|
||||
@@ -473,6 +481,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const ratingKey = 8382.31;
|
||||
@@ -518,6 +527,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const ratingKey = 1539.14;
|
||||
@@ -563,6 +573,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.library.getOnDeck();
|
||||
|
||||
@@ -26,6 +26,7 @@ import { Level } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const level = Level.Three;
|
||||
@@ -95,6 +96,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.log.logMultiLine("level=4&message=Test%20message%201&source=postman
|
||||
@@ -140,6 +142,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.log.enablePaperTrail();
|
||||
|
||||
@@ -24,6 +24,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const key = 59398;
|
||||
@@ -68,6 +69,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const key = 59398;
|
||||
@@ -113,6 +115,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const key = "<value>";
|
||||
|
||||
@@ -37,6 +37,7 @@ import { QueryParamType, Smart } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.playlists.createPlaylist({
|
||||
@@ -85,6 +86,7 @@ import { PlaylistType, QueryParamSmart } from "@lukehagar/plexjs/models/operatio
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const playlistType = PlaylistType.Audio;
|
||||
@@ -133,6 +135,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const playlistID = 4109.48;
|
||||
@@ -178,6 +181,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const playlistID = 216.22;
|
||||
@@ -223,6 +227,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const playlistID = 3915;
|
||||
@@ -275,6 +280,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const playlistID = 5004.46;
|
||||
@@ -322,6 +328,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const playlistID = 1893.18;
|
||||
@@ -368,6 +375,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const playlistID = 8502.01;
|
||||
@@ -418,6 +426,7 @@ import { Force } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const path = "/home/barkley/playlist.m3u";
|
||||
|
||||
@@ -21,12 +21,14 @@ Retrieve a Pin from Plex.tv for authentication flows
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
async function run() {
|
||||
const sdk = new PlexAPI();
|
||||
const sdk = new PlexAPI({
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const xPlexClientIdentifier = "<value>";
|
||||
const strong = false;
|
||||
const xPlexClientIdentifier = "<value>";
|
||||
|
||||
const result = await sdk.plex.getPin(xPlexClientIdentifier, strong);
|
||||
const result = await sdk.plex.getPin(strong, xPlexClientIdentifier);
|
||||
|
||||
// Handle the result
|
||||
console.log(result)
|
||||
@@ -39,8 +41,8 @@ run();
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `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/> |
|
||||
| `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/> |
|
||||
| `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.serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. |
|
||||
@@ -66,7 +68,9 @@ Retrieve an Access Token from Plex.tv after the Pin has already been authenticat
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
async function run() {
|
||||
const sdk = new PlexAPI();
|
||||
const sdk = new PlexAPI({
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const pinID = "<value>";
|
||||
const xPlexClientIdentifier = "<value>";
|
||||
@@ -85,7 +89,7 @@ run();
|
||||
| Parameter | Type | Required | Description |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `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/> |
|
||||
| `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.serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. |
|
||||
|
||||
@@ -36,6 +36,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const query = "dylan";
|
||||
@@ -88,6 +89,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const query = "dead+poop";
|
||||
@@ -136,6 +138,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const query = "110";
|
||||
|
||||
@@ -29,6 +29,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerCapabilities();
|
||||
@@ -70,6 +71,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerPreferences();
|
||||
@@ -111,6 +113,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getAvailableClients();
|
||||
@@ -152,6 +155,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getDevices();
|
||||
@@ -193,6 +197,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerIdentity();
|
||||
@@ -234,6 +239,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getMyPlexAccount();
|
||||
@@ -277,14 +283,15 @@ import { MinSize, Upscale } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getResizedPhoto({
|
||||
width: 110,
|
||||
height: 165,
|
||||
opacity: 643869,
|
||||
blur: 4000,
|
||||
minSize: MinSize.Zero,
|
||||
opacity: 100,
|
||||
blur: 20,
|
||||
minSize: MinSize.One,
|
||||
upscale: Upscale.Zero,
|
||||
url: "/library/metadata/49564/thumb/1654258204",
|
||||
});
|
||||
@@ -327,6 +334,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.server.getServerList();
|
||||
|
||||
@@ -25,6 +25,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.sessions.getSessions();
|
||||
@@ -66,6 +67,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.sessions.getSessionHistory();
|
||||
@@ -107,6 +109,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.sessions.getTranscodeSessions();
|
||||
@@ -148,6 +151,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const sessionKey = "zz7llzqlx8w9vnrsbnwhbmep";
|
||||
|
||||
@@ -22,6 +22,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const timespan = 411769;
|
||||
|
||||
@@ -25,6 +25,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.updater.getUpdateStatus();
|
||||
@@ -67,6 +68,7 @@ import { Download } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const download = Download.One;
|
||||
@@ -113,6 +115,7 @@ import { Skip, Tonight } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const tonight = Tonight.One;
|
||||
|
||||
@@ -24,6 +24,7 @@ import { State } from "@lukehagar/plexjs/models/operations";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.video.getTimeline({
|
||||
@@ -77,6 +78,7 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
||||
async function run() {
|
||||
const sdk = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "<value>",
|
||||
});
|
||||
|
||||
const result = await sdk.video.startUniversalTranscode({
|
||||
|
||||
2
gen.yaml
2
gen.yaml
@@ -12,7 +12,7 @@ generation:
|
||||
auth:
|
||||
oAuth2ClientCredentialsEnabled: false
|
||||
typescript:
|
||||
version: 0.9.0
|
||||
version: 0.12.1
|
||||
additionalDependencies:
|
||||
dependencies: {}
|
||||
devDependencies: {}
|
||||
|
||||
272
package-lock.json
generated
272
package-lock.json
generated
@@ -1,16 +1,12 @@
|
||||
{
|
||||
"name": "@lukehagar/plexjs",
|
||||
"version": "0.9.0",
|
||||
"version": "0.12.1",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@lukehagar/plexjs",
|
||||
"version": "0.9.0",
|
||||
"dependencies": {
|
||||
"decimal.js": "^10.4.3",
|
||||
"jsonpath": "^1.1.1"
|
||||
},
|
||||
"version": "0.12.1",
|
||||
"devDependencies": {
|
||||
"@types/jsonpath": "^0.2.4",
|
||||
"@typescript-eslint/eslint-plugin": "^6.13.2",
|
||||
@@ -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": {
|
||||
"version": "0.1.4",
|
||||
"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": {
|
||||
"version": "1.1.4",
|
||||
@@ -985,94 +977,6 @@
|
||||
"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": {
|
||||
"version": "8.56.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz",
|
||||
@@ -1349,18 +1253,6 @@
|
||||
"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": {
|
||||
"version": "1.5.0",
|
||||
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
|
||||
@@ -1398,6 +1290,7 @@
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
|
||||
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
@@ -1445,7 +1338,8 @@
|
||||
"node_modules/fast-levenshtein": {
|
||||
"version": "2.0.6",
|
||||
"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": {
|
||||
"version": "1.17.1",
|
||||
@@ -2179,16 +2073,6 @@
|
||||
"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": {
|
||||
"version": "4.5.4",
|
||||
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
|
||||
@@ -2785,23 +2669,6 @@
|
||||
"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": {
|
||||
"version": "1.2.8",
|
||||
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
|
||||
@@ -3080,11 +2947,6 @@
|
||||
"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": {
|
||||
"version": "4.4.1",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||
@@ -3144,14 +3006,6 @@
|
||||
"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": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
@@ -3697,15 +3551,11 @@
|
||||
"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": {
|
||||
"version": "0.1.4",
|
||||
"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": {
|
||||
"version": "1.1.4",
|
||||
@@ -3864,65 +3714,6 @@
|
||||
"integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
|
||||
"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": {
|
||||
"version": "8.56.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz",
|
||||
@@ -4144,11 +3935,6 @@
|
||||
"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": {
|
||||
"version": "1.5.0",
|
||||
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
|
||||
@@ -4176,7 +3962,8 @@
|
||||
"esutils": {
|
||||
"version": "2.0.3",
|
||||
"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": {
|
||||
"version": "3.1.3",
|
||||
@@ -4217,7 +4004,8 @@
|
||||
"fast-levenshtein": {
|
||||
"version": "2.0.6",
|
||||
"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": {
|
||||
"version": "1.17.1",
|
||||
@@ -4740,16 +4528,6 @@
|
||||
"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": {
|
||||
"version": "4.5.4",
|
||||
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
|
||||
@@ -5155,20 +4933,6 @@
|
||||
"integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
|
||||
"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": {
|
||||
"version": "1.2.8",
|
||||
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
|
||||
@@ -5363,11 +5127,6 @@
|
||||
"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": {
|
||||
"version": "4.4.1",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||
@@ -5412,11 +5171,6 @@
|
||||
"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": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@lukehagar/plexjs",
|
||||
"version": "0.9.0",
|
||||
"version": "0.12.1",
|
||||
"author": "LukeHagar",
|
||||
"main": "./index.js",
|
||||
"sideEffects": false,
|
||||
@@ -29,7 +29,6 @@
|
||||
"zod": "^3.22.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"decimal.js": "^10.4.3",
|
||||
"jsonpath": "^1.1.1"
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,13 +14,17 @@ import {
|
||||
SDKInitOptions,
|
||||
} from "./types";
|
||||
|
||||
import { initHooks } from "./registration";
|
||||
|
||||
export class SDKHooks implements Hooks {
|
||||
sdkInitHooks: SDKInitHook[] = [];
|
||||
beforeRequestHooks: BeforeRequestHook[] = [];
|
||||
afterSuccessHooks: AfterSuccessHook[] = [];
|
||||
afterErrorHooks: AfterErrorHook[] = [];
|
||||
|
||||
constructor() {}
|
||||
constructor() {
|
||||
initHooks(this);
|
||||
}
|
||||
|
||||
registerSDKInitHook(hook: SDKInitHook) {
|
||||
this.sdkInitHooks.push(hook);
|
||||
|
||||
@@ -7,7 +7,7 @@ import { HTTPClient } from "../lib/http";
|
||||
export type HookContext = {
|
||||
operationID: string;
|
||||
oAuth2Scopes?: string[];
|
||||
security?: string | (() => Promise<string>);
|
||||
securitySource?: any | (() => Promise<any>);
|
||||
};
|
||||
|
||||
export type Awaitable<T> = T | Promise<T>;
|
||||
|
||||
@@ -27,6 +27,11 @@ export enum ServerProtocol {
|
||||
export type SDKOptions = {
|
||||
accessToken?: string | (() => Promise<string>);
|
||||
|
||||
/**
|
||||
* Allows setting the xPlexClientIdentifier parameter for all supported operations
|
||||
*/
|
||||
xPlexClientIdentifier?: string;
|
||||
|
||||
httpClient?: HTTPClient;
|
||||
/**
|
||||
* Allows overriding the default server used by the SDK
|
||||
@@ -65,9 +70,12 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
|
||||
},
|
||||
];
|
||||
let params: Record<string, string> = {};
|
||||
const serverIdx = options.serverIdx ?? 0;
|
||||
|
||||
if (!serverURL) {
|
||||
const serverIdx = options.serverIdx ?? 0;
|
||||
if (serverIdx < 0 || serverIdx >= ServerList.length) {
|
||||
throw new Error(`Invalid server index ${serverIdx}`);
|
||||
}
|
||||
serverURL = ServerList[serverIdx] || "";
|
||||
params = serverParams[serverIdx] || {};
|
||||
}
|
||||
@@ -79,7 +87,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
|
||||
export const SDK_METADATA = Object.freeze({
|
||||
language: "typescript",
|
||||
openapiDocVersion: "0.0.3",
|
||||
sdkVersion: "0.9.0",
|
||||
genVersion: "2.272.4",
|
||||
userAgent: "speakeasy-sdk/typescript 0.9.0 2.272.4 0.0.3 @lukehagar/plexjs",
|
||||
sdkVersion: "0.12.1",
|
||||
genVersion: "2.295.1",
|
||||
userAgent: "speakeasy-sdk/typescript 0.12.1 2.295.1 0.0.3 @lukehagar/plexjs",
|
||||
});
|
||||
|
||||
@@ -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,17 @@ export type Fetcher = (
|
||||
init?: RequestInit,
|
||||
) => Promise<Response>;
|
||||
|
||||
type Awaitable<T> = T | Promise<T>;
|
||||
|
||||
const DEFAULT_FETCHER: Fetcher = (input, init) => fetch(input, init);
|
||||
|
||||
export interface HTTPClientOptions {
|
||||
fetcher?: Fetcher;
|
||||
}
|
||||
|
||||
type BeforeRequestHook = (req: Request) => Request | void;
|
||||
type RequestErrorHook = (err: unknown, req: Request) => void;
|
||||
type ResponseHook = (res: Response, req: Request) => void;
|
||||
type BeforeRequestHook = (req: Request) => Awaitable<Request | void>;
|
||||
type RequestErrorHook = (err: unknown, req: Request) => Awaitable<void>;
|
||||
type ResponseHook = (res: Response, req: Request) => Awaitable<void>;
|
||||
|
||||
export class HTTPClient {
|
||||
private fetcher: Fetcher;
|
||||
@@ -28,17 +30,27 @@ export class HTTPClient {
|
||||
}
|
||||
|
||||
async request(request: Request): Promise<Response> {
|
||||
const req = this.requestHooks.reduce((currentReq, fn) => {
|
||||
const nextRequest = fn(currentReq);
|
||||
return nextRequest || currentReq;
|
||||
}, request);
|
||||
let req = request;
|
||||
for (const hook of this.requestHooks) {
|
||||
const nextRequest = await hook(req);
|
||||
if (nextRequest) {
|
||||
req = nextRequest;
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
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;
|
||||
} catch (err) {
|
||||
this.requestErrorHooks.forEach((fn) => fn(err, req));
|
||||
for (const hook of this.requestErrorHooks) {
|
||||
await hook(err, req);
|
||||
}
|
||||
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,10 +71,10 @@ export class ClientSDK {
|
||||
|
||||
const headers = new Headers(opHeaders);
|
||||
|
||||
const username = security?.basic.username || "";
|
||||
const password = security?.basic.password || "";
|
||||
if (username) {
|
||||
const encoded = stringToBase64([username, password].join(":"));
|
||||
const username = security?.basic.username;
|
||||
const password = security?.basic.password;
|
||||
if (username != null || password != null) {
|
||||
const encoded = stringToBase64([username || "", password || ""].join(":"));
|
||||
headers.set("Authorization", `Basic ${encoded}`);
|
||||
}
|
||||
|
||||
|
||||
@@ -30,21 +30,15 @@ export class SecurityError extends Error {
|
||||
}
|
||||
|
||||
export type SecurityState = {
|
||||
basic: { username: string; password?: string };
|
||||
basic: { username?: string | undefined; password?: string | undefined };
|
||||
headers: Record<string, string>;
|
||||
queryParams: Record<string, string>;
|
||||
cookies: Record<string, string>;
|
||||
};
|
||||
|
||||
type SecurityInputBasicPacked = {
|
||||
type: "http:basic";
|
||||
value: { username: string; password?: string } | null | undefined;
|
||||
};
|
||||
|
||||
type SecurityInputBasic = {
|
||||
type: "http:basic";
|
||||
value: string | null | undefined;
|
||||
fieldName: "username" | "password";
|
||||
value: { username?: string | undefined; password?: string | undefined } | null | undefined;
|
||||
};
|
||||
|
||||
type SecurityInputBearer = {
|
||||
@@ -71,12 +65,18 @@ type SecurityInputOAuth2 = {
|
||||
fieldName: string;
|
||||
};
|
||||
|
||||
type SecurityInputOAuth2ClientCredentials = {
|
||||
type: "oauth2:client_credentials";
|
||||
value: string | null | undefined;
|
||||
fieldName: "clientID" | "clientSecret";
|
||||
};
|
||||
|
||||
export type SecurityInput =
|
||||
| SecurityInputBasic
|
||||
| SecurityInputBasicPacked
|
||||
| SecurityInputBearer
|
||||
| SecurityInputAPIKey
|
||||
| SecurityInputOAuth2
|
||||
| SecurityInputOAuth2ClientCredentials
|
||||
| SecurityInputOIDC;
|
||||
|
||||
export function resolveSecurity(...options: SecurityInput[][]): SecurityState | null {
|
||||
@@ -87,7 +87,21 @@ export function resolveSecurity(...options: SecurityInput[][]): SecurityState |
|
||||
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) {
|
||||
return null;
|
||||
}
|
||||
@@ -118,6 +132,8 @@ export function resolveSecurity(...options: SecurityInput[][]): SecurityState |
|
||||
case "oauth2":
|
||||
applyBearer(state, spec);
|
||||
break;
|
||||
case "oauth2:client_credentials":
|
||||
break;
|
||||
case "openIdConnect":
|
||||
applyBearer(state, spec);
|
||||
break;
|
||||
@@ -130,16 +146,12 @@ export function resolveSecurity(...options: SecurityInput[][]): SecurityState |
|
||||
return state;
|
||||
}
|
||||
|
||||
function applyBasic(state: SecurityState, spec: SecurityInputBasic | SecurityInputBasicPacked) {
|
||||
function applyBasic(state: SecurityState, spec: SecurityInputBasic) {
|
||||
if (spec.value == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ("fieldName" in spec) {
|
||||
state.basic[spec.fieldName] = spec.value;
|
||||
} else {
|
||||
state.basic = spec.value;
|
||||
}
|
||||
state.basic = spec.value;
|
||||
}
|
||||
|
||||
function applyBearer(
|
||||
@@ -159,6 +171,10 @@ function applyBearer(
|
||||
}
|
||||
export function resolveGlobalSecurity(security: Partial<components.Security> | null | undefined) {
|
||||
return resolveSecurity([
|
||||
{ value: security?.accessToken, fieldName: "X-Plex-Token", type: "apiKey:header" },
|
||||
{
|
||||
fieldName: "X-Plex-Token",
|
||||
type: "apiKey:header",
|
||||
value: security?.accessToken,
|
||||
},
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,39 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import * as z from "zod";
|
||||
|
||||
export type Security = {
|
||||
accessToken: string;
|
||||
};
|
||||
|
||||
/** @internal */
|
||||
export namespace Security$ {
|
||||
export type Inbound = {
|
||||
accessToken: string;
|
||||
};
|
||||
|
||||
export const inboundSchema: z.ZodType<Security, z.ZodTypeDef, Inbound> = z
|
||||
.object({
|
||||
accessToken: z.string(),
|
||||
})
|
||||
.transform((v) => {
|
||||
return {
|
||||
accessToken: v.accessToken,
|
||||
};
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
accessToken: string;
|
||||
};
|
||||
|
||||
export const outboundSchema: z.ZodType<Outbound, z.ZodTypeDef, Security> = z
|
||||
.object({
|
||||
accessToken: z.string(),
|
||||
})
|
||||
.transform((v) => {
|
||||
return {
|
||||
accessToken: v.accessToken,
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type AddPlaylistContentsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace AddPlaylistContentsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<AddPlaylistContentsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type ApplyUpdatesErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace ApplyUpdatesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<ApplyUpdatesErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type CancelServerActivitiesErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -119,6 +119,7 @@ export namespace CancelServerActivitiesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<CancelServerActivitiesErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type CheckForUpdatesErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace CheckForUpdatesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<CheckForUpdatesErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type ClearPlaylistContentsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -119,6 +119,7 @@ export namespace ClearPlaylistContentsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<ClearPlaylistContentsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type CreatePlaylistErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace CreatePlaylistResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<CreatePlaylistErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type DeleteLibraryErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace DeleteLibraryResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<DeleteLibraryErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type DeletePlaylistErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace DeletePlaylistResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<DeletePlaylistErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type EnablePaperTrailErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace EnablePaperTrailResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<EnablePaperTrailErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetAvailableClientsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace GetAvailableClientsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetAvailableClientsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetButlerTasksErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetButlerTasksResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetButlerTasksErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetDevicesErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetDevicesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetDevicesErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetFileHashErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetFileHashResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetFileHashErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetGlobalHubsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetGlobalHubsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetGlobalHubsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetLibrariesErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetLibrariesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetLibrariesErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetLibraryErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetLibraryResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetLibraryErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetLibraryHubsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetLibraryHubsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetLibraryHubsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetMetadataErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetMetadataResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetMetadataErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetMetadataChildrenErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace GetMetadataChildrenResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetMetadataChildrenErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetMyPlexAccountErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetMyPlexAccountResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetMyPlexAccountErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetOnDeckErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetOnDeckResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetOnDeckErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetPinErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetPinResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetPinErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetPlaylistErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetPlaylistResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetPlaylistErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetPlaylistContentsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace GetPlaylistContentsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetPlaylistContentsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetPlaylistsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetPlaylistsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetPlaylistsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetRecentlyAddedErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetRecentlyAddedResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetRecentlyAddedErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetResizedPhotoErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetResizedPhotoResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetResizedPhotoErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetSearchResultsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetSearchResultsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetSearchResultsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetServerActivitiesErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace GetServerActivitiesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetServerActivitiesErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type Errors = {
|
||||
code?: number | undefined;
|
||||
@@ -119,6 +119,7 @@ export namespace GetServerCapabilitiesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<Errors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetServerIdentityErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetServerIdentityResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetServerIdentityErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetServerListErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetServerListResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetServerListErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetServerPreferencesErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace GetServerPreferencesResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetServerPreferencesErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetSessionHistoryErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetSessionHistoryResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetSessionHistoryErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetSessionsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetSessionsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetSessionsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetSourceConnectionInformationErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -129,6 +129,7 @@ export namespace GetSourceConnectionInformationResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetSourceConnectionInformationErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetStatisticsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetStatisticsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetStatisticsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetTimelineErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetTimelineResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetTimelineErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetTokenErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetTokenResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetTokenErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetTranscodeSessionsErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace GetTranscodeSessionsResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetTranscodeSessionsErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetTransientTokenErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetTransientTokenResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetTransientTokenErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type GetUpdateStatusErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace GetUpdateStatusResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<GetUpdateStatusErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type LogLineErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace LogLineResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<LogLineErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type LogMultiLineErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace LogMultiLineResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<LogMultiLineErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type MarkPlayedErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace MarkPlayedResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<MarkPlayedErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type MarkUnplayedErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace MarkUnplayedResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<MarkUnplayedErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type PerformSearchErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace PerformSearchResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<PerformSearchErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type PerformVoiceSearchErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace PerformVoiceSearchResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<PerformVoiceSearchErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type RefreshLibraryErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace RefreshLibraryResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<RefreshLibraryErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type StartAllTasksErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace StartAllTasksResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<StartAllTasksErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type StartTaskErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace StartTaskResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<StartTaskErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type StartUniversalTranscodeErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -120,6 +120,7 @@ export namespace StartUniversalTranscodeResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<StartUniversalTranscodeErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type StopAllTasksErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace StopAllTasksResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<StopAllTasksErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type StopTaskErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace StopTaskResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<StopTaskErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type StopTranscodeSessionErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -116,6 +116,7 @@ export namespace StopTranscodeSessionResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<StopTranscodeSessionErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type UpdatePlaylistErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace UpdatePlaylistResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<UpdatePlaylistErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type UpdatePlayProgressErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace UpdatePlayProgressResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<UpdatePlayProgressErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type UploadPlaylistErrors = {
|
||||
code?: number | undefined;
|
||||
@@ -115,6 +115,7 @@ export namespace UploadPlaylistResponseBody$ {
|
||||
...(v.RawResponse === undefined ? null : { rawResponse: v.RawResponse }),
|
||||
});
|
||||
});
|
||||
|
||||
export type Outbound = {
|
||||
errors?: Array<UploadPlaylistErrors$.Outbound> | undefined;
|
||||
RawResponse?: never | undefined;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type AddPlaylistContentsRequest = {
|
||||
/**
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
/**
|
||||
* Indicate that you want the update to run during the next Butler execution. Omitting this or setting it to false indicates that the update should install
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type CancelServerActivitiesRequest = {
|
||||
/**
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
/**
|
||||
* Indicate that you want to start download any updates found.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type ClearPlaylistContentsRequest = {
|
||||
/**
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
/**
|
||||
* type of playlist to create
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type DeleteLibraryRequest = {
|
||||
/**
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
||||
*/
|
||||
|
||||
import { z } from "zod";
|
||||
import * as z from "zod";
|
||||
|
||||
export type DeletePlaylistRequest = {
|
||||
/**
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user