@anvilkit/plugin-asset-manager 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +96 -3
- package/dist/adapters/data-url.d.cts +1 -0
- package/dist/adapters/data-url.d.cts.map +1 -1
- package/dist/adapters/data-url.d.ts +1 -0
- package/dist/adapters/data-url.d.ts.map +1 -1
- package/dist/adapters/s3-multipart.cjs +425 -0
- package/dist/adapters/s3-multipart.d.cts +43 -0
- package/dist/adapters/s3-multipart.d.cts.map +1 -0
- package/dist/adapters/s3-multipart.d.ts +43 -0
- package/dist/adapters/s3-multipart.d.ts.map +1 -0
- package/dist/adapters/s3-multipart.js +387 -0
- package/dist/adapters/s3-presigned.d.cts +2 -0
- package/dist/adapters/s3-presigned.d.cts.map +1 -1
- package/dist/adapters/s3-presigned.d.ts +2 -0
- package/dist/adapters/s3-presigned.d.ts.map +1 -1
- package/dist/i18n/provider.d.cts +1 -0
- package/dist/i18n/provider.d.cts.map +1 -1
- package/dist/i18n/provider.d.ts +1 -0
- package/dist/i18n/provider.d.ts.map +1 -1
- package/dist/index.cjs +14 -0
- package/dist/index.d.cts +9 -3
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/plugin.cjs +152 -12
- package/dist/plugin.d.cts +49 -1
- package/dist/plugin.d.cts.map +1 -1
- package/dist/plugin.d.ts +49 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +147 -13
- package/dist/sources/composite-source.cjs +3 -0
- package/dist/sources/composite-source.d.cts.map +1 -1
- package/dist/sources/composite-source.d.ts.map +1 -1
- package/dist/sources/composite-source.js +3 -0
- package/dist/sources/federated-search.cjs +45 -7
- package/dist/sources/federated-search.d.cts.map +1 -1
- package/dist/sources/federated-search.d.ts.map +1 -1
- package/dist/sources/federated-search.js +45 -7
- package/dist/sources/provider.d.cts +5 -0
- package/dist/sources/provider.d.cts.map +1 -1
- package/dist/sources/provider.d.ts +5 -0
- package/dist/sources/provider.d.ts.map +1 -1
- package/dist/sources/unsplash/index.d.cts +1 -0
- package/dist/sources/unsplash/index.d.cts.map +1 -1
- package/dist/sources/unsplash/index.d.ts +1 -0
- package/dist/sources/unsplash/index.d.ts.map +1 -1
- package/dist/testing/index.d.cts +4 -0
- package/dist/testing/index.d.cts.map +1 -1
- package/dist/testing/index.d.ts +4 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/types/categories.d.cts +3 -0
- package/dist/types/categories.d.cts.map +1 -1
- package/dist/types/categories.d.ts +3 -0
- package/dist/types/categories.d.ts.map +1 -1
- package/dist/types/data-source.d.cts +9 -0
- package/dist/types/data-source.d.cts.map +1 -1
- package/dist/types/data-source.d.ts +9 -0
- package/dist/types/data-source.d.ts.map +1 -1
- package/dist/types/filter.d.cts +11 -0
- package/dist/types/filter.d.cts.map +1 -1
- package/dist/types/filter.d.ts +11 -0
- package/dist/types/filter.d.ts.map +1 -1
- package/dist/types/folders.d.cts +2 -0
- package/dist/types/folders.d.cts.map +1 -1
- package/dist/types/folders.d.ts +2 -0
- package/dist/types/folders.d.ts.map +1 -1
- package/dist/types/options.d.cts +57 -1
- package/dist/types/options.d.cts.map +1 -1
- package/dist/types/options.d.ts +57 -1
- package/dist/types/options.d.ts.map +1 -1
- package/dist/types/resumable.cjs +42 -0
- package/dist/types/resumable.d.cts +204 -0
- package/dist/types/resumable.d.cts.map +1 -0
- package/dist/types/resumable.d.ts +204 -0
- package/dist/types/resumable.d.ts.map +1 -0
- package/dist/types/resumable.js +4 -0
- package/dist/types/transform.cjs +18 -0
- package/dist/types/transform.d.cts +45 -0
- package/dist/types/transform.d.cts.map +1 -0
- package/dist/types/transform.d.ts +45 -0
- package/dist/types/transform.d.ts.map +1 -0
- package/dist/types/transform.js +1 -0
- package/dist/types/types.d.cts +17 -0
- package/dist/types/types.d.cts.map +1 -1
- package/dist/types/types.d.ts +17 -0
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/unsplash.d.cts +2 -0
- package/dist/types/unsplash.d.cts.map +1 -1
- package/dist/types/unsplash.d.ts +2 -0
- package/dist/types/unsplash.d.ts.map +1 -1
- package/dist/ui/AssetBrowser.d.cts +3 -1
- package/dist/ui/AssetBrowser.d.cts.map +1 -1
- package/dist/ui/AssetBrowser.d.ts +3 -1
- package/dist/ui/AssetBrowser.d.ts.map +1 -1
- package/dist/ui/AssetCommandPalette.d.cts +4 -1
- package/dist/ui/AssetCommandPalette.d.cts.map +1 -1
- package/dist/ui/AssetCommandPalette.d.ts +4 -1
- package/dist/ui/AssetCommandPalette.d.ts.map +1 -1
- package/dist/ui/AssetManagerUI.cjs +3 -1
- package/dist/ui/AssetManagerUI.d.cts +11 -2
- package/dist/ui/AssetManagerUI.d.cts.map +1 -1
- package/dist/ui/AssetManagerUI.d.ts +11 -2
- package/dist/ui/AssetManagerUI.d.ts.map +1 -1
- package/dist/ui/AssetManagerUI.js +3 -1
- package/dist/ui/DeleteAssetDialog.d.cts +4 -1
- package/dist/ui/DeleteAssetDialog.d.cts.map +1 -1
- package/dist/ui/DeleteAssetDialog.d.ts +4 -1
- package/dist/ui/DeleteAssetDialog.d.ts.map +1 -1
- package/dist/ui/DeleteFolderDialog.d.cts +4 -1
- package/dist/ui/DeleteFolderDialog.d.cts.map +1 -1
- package/dist/ui/DeleteFolderDialog.d.ts +4 -1
- package/dist/ui/DeleteFolderDialog.d.ts.map +1 -1
- package/dist/ui/EmptyFolderState.d.cts +4 -1
- package/dist/ui/EmptyFolderState.d.cts.map +1 -1
- package/dist/ui/EmptyFolderState.d.ts +4 -1
- package/dist/ui/EmptyFolderState.d.ts.map +1 -1
- package/dist/ui/FolderBreadcrumb.d.cts +4 -1
- package/dist/ui/FolderBreadcrumb.d.cts.map +1 -1
- package/dist/ui/FolderBreadcrumb.d.ts +4 -1
- package/dist/ui/FolderBreadcrumb.d.ts.map +1 -1
- package/dist/ui/FolderNameDialog.d.cts +3 -1
- package/dist/ui/FolderNameDialog.d.cts.map +1 -1
- package/dist/ui/FolderNameDialog.d.ts +3 -1
- package/dist/ui/FolderNameDialog.d.ts.map +1 -1
- package/dist/ui/FolderTree.d.cts +4 -1
- package/dist/ui/FolderTree.d.cts.map +1 -1
- package/dist/ui/FolderTree.d.ts +4 -1
- package/dist/ui/FolderTree.d.ts.map +1 -1
- package/dist/ui/MetadataPanel.d.cts +4 -1
- package/dist/ui/MetadataPanel.d.cts.map +1 -1
- package/dist/ui/MetadataPanel.d.ts +4 -1
- package/dist/ui/MetadataPanel.d.ts.map +1 -1
- package/dist/ui/MoveTargetPicker.d.cts +3 -1
- package/dist/ui/MoveTargetPicker.d.cts.map +1 -1
- package/dist/ui/MoveTargetPicker.d.ts +3 -1
- package/dist/ui/MoveTargetPicker.d.ts.map +1 -1
- package/dist/ui/ReplaceAssetDialog.cjs +7 -2
- package/dist/ui/ReplaceAssetDialog.d.cts +5 -2
- package/dist/ui/ReplaceAssetDialog.d.cts.map +1 -1
- package/dist/ui/ReplaceAssetDialog.d.ts +5 -2
- package/dist/ui/ReplaceAssetDialog.d.ts.map +1 -1
- package/dist/ui/ReplaceAssetDialog.js +7 -2
- package/dist/ui/UnsplashPanel.d.cts +4 -1
- package/dist/ui/UnsplashPanel.d.cts.map +1 -1
- package/dist/ui/UnsplashPanel.d.ts +4 -1
- package/dist/ui/UnsplashPanel.d.ts.map +1 -1
- package/dist/ui/UploadButton.cjs +7 -2
- package/dist/ui/UploadButton.d.cts +6 -2
- package/dist/ui/UploadButton.d.cts.map +1 -1
- package/dist/ui/UploadButton.d.ts +6 -2
- package/dist/ui/UploadButton.d.ts.map +1 -1
- package/dist/ui/UploadButton.js +7 -2
- package/dist/utils/asset-reference.cjs +87 -4
- package/dist/utils/asset-reference.d.cts +30 -6
- package/dist/utils/asset-reference.d.cts.map +1 -1
- package/dist/utils/asset-reference.d.ts +30 -6
- package/dist/utils/asset-reference.d.ts.map +1 -1
- package/dist/utils/asset-reference.js +83 -3
- package/dist/utils/csp.cjs +16 -0
- package/dist/utils/csp.d.cts +23 -0
- package/dist/utils/csp.d.cts.map +1 -1
- package/dist/utils/csp.d.ts +23 -0
- package/dist/utils/csp.d.ts.map +1 -1
- package/dist/utils/csp.js +16 -0
- package/dist/utils/data-source.cjs +19 -5
- package/dist/utils/data-source.d.cts +5 -1
- package/dist/utils/data-source.d.cts.map +1 -1
- package/dist/utils/data-source.d.ts +5 -1
- package/dist/utils/data-source.d.ts.map +1 -1
- package/dist/utils/data-source.js +19 -5
- package/dist/utils/errors.d.cts +5 -0
- package/dist/utils/errors.d.cts.map +1 -1
- package/dist/utils/errors.d.ts +5 -0
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/query-param-transform.cjs +101 -0
- package/dist/utils/query-param-transform.d.cts +46 -0
- package/dist/utils/query-param-transform.d.cts.map +1 -0
- package/dist/utils/query-param-transform.d.ts +46 -0
- package/dist/utils/query-param-transform.d.ts.map +1 -0
- package/dist/utils/query-param-transform.js +60 -0
- package/dist/utils/registry.cjs +3 -0
- package/dist/utils/registry.d.cts +8 -0
- package/dist/utils/registry.d.cts.map +1 -1
- package/dist/utils/registry.d.ts +8 -0
- package/dist/utils/registry.d.ts.map +1 -1
- package/dist/utils/registry.js +3 -0
- package/dist/utils/resolver.cjs +19 -11
- package/dist/utils/resolver.d.cts +24 -0
- package/dist/utils/resolver.d.cts.map +1 -1
- package/dist/utils/resolver.d.ts +24 -0
- package/dist/utils/resolver.d.ts.map +1 -1
- package/dist/utils/resolver.js +19 -11
- package/dist/utils/retry.d.cts +2 -0
- package/dist/utils/retry.d.cts.map +1 -1
- package/dist/utils/retry.d.ts +2 -0
- package/dist/utils/retry.d.ts.map +1 -1
- package/dist/utils/run-resumable-upload.cjs +160 -0
- package/dist/utils/run-resumable-upload.d.cts +56 -0
- package/dist/utils/run-resumable-upload.d.cts.map +1 -0
- package/dist/utils/run-resumable-upload.d.ts +56 -0
- package/dist/utils/run-resumable-upload.d.ts.map +1 -0
- package/dist/utils/run-resumable-upload.js +122 -0
- package/dist/utils/sniff-file-type.cjs +209 -0
- package/dist/utils/sniff-file-type.d.cts +25 -0
- package/dist/utils/sniff-file-type.d.cts.map +1 -0
- package/dist/utils/sniff-file-type.d.ts +25 -0
- package/dist/utils/sniff-file-type.d.ts.map +1 -0
- package/dist/utils/sniff-file-type.js +164 -0
- package/dist/utils/studio-asset-source.cjs +11 -6
- package/dist/utils/studio-asset-source.d.cts +5 -1
- package/dist/utils/studio-asset-source.d.cts.map +1 -1
- package/dist/utils/studio-asset-source.d.ts +5 -1
- package/dist/utils/studio-asset-source.d.ts.map +1 -1
- package/dist/utils/studio-asset-source.js +11 -6
- package/dist/utils/upload-session-store.cjs +125 -0
- package/dist/utils/upload-session-store.d.cts +55 -0
- package/dist/utils/upload-session-store.d.cts.map +1 -0
- package/dist/utils/upload-session-store.d.ts +55 -0
- package/dist/utils/upload-session-store.d.ts.map +1 -0
- package/dist/utils/upload-session-store.js +84 -0
- package/dist/utils/validate-upload-result.cjs +9 -1
- package/dist/utils/validate-upload-result.d.cts +1 -0
- package/dist/utils/validate-upload-result.d.cts.map +1 -1
- package/dist/utils/validate-upload-result.d.ts +1 -0
- package/dist/utils/validate-upload-result.d.ts.map +1 -1
- package/dist/utils/validate-upload-result.js +9 -1
- package/dist/version.cjs +1 -1
- package/dist/version.d.cts +1 -1
- package/dist/version.d.cts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/meta/config.json +1 -1
- package/package.json +42 -12
package/dist/testing/index.d.ts
CHANGED
|
@@ -7,10 +7,13 @@
|
|
|
7
7
|
* on the registry + uploader contracts owned by this package.
|
|
8
8
|
*/
|
|
9
9
|
import type { AssetRegistry, UploadAdapter, UploadResult } from "../types/types.js";
|
|
10
|
+
/** Options for constructing a registry fixture in tests. */
|
|
10
11
|
export interface CreateTestRegistryOptions {
|
|
11
12
|
readonly initial?: readonly UploadResult[];
|
|
12
13
|
}
|
|
14
|
+
/** Create an in-memory registry preloaded with optional upload rows. */
|
|
13
15
|
export declare function createTestRegistry(options?: CreateTestRegistryOptions): AssetRegistry;
|
|
16
|
+
/** Options for the deterministic fake uploader helper. */
|
|
14
17
|
export interface FakeUploaderOptions {
|
|
15
18
|
/**
|
|
16
19
|
* Optional map keyed by `File.name`. When a file is uploaded whose
|
|
@@ -20,5 +23,6 @@ export interface FakeUploaderOptions {
|
|
|
20
23
|
*/
|
|
21
24
|
readonly responses?: Record<string, UploadResult>;
|
|
22
25
|
}
|
|
26
|
+
/** Create a deterministic fake upload adapter for plugin and host tests. */
|
|
23
27
|
export declare function fakeUploader(options?: FakeUploaderOptions): UploadAdapter;
|
|
24
28
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAEX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,MAAM,mBAAmB,CAAC;AAG3B,MAAM,WAAW,yBAAyB;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CAC3C;AAED,wBAAgB,kBAAkB,CACjC,OAAO,GAAE,yBAA8B,GACrC,aAAa,CAMf;AAED,MAAM,WAAW,mBAAmB;IACnC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAClD;AAED,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,aAAa,CAkB7E"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAEX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,MAAM,mBAAmB,CAAC;AAG3B,4DAA4D;AAC5D,MAAM,WAAW,yBAAyB;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CAC3C;AAED,wEAAwE;AACxE,wBAAgB,kBAAkB,CACjC,OAAO,GAAE,yBAA8B,GACrC,aAAa,CAMf;AAED,0DAA0D;AAC1D,MAAM,WAAW,mBAAmB;IACnC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAClD;AAED,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,aAAa,CAkB7E"}
|
|
@@ -8,12 +8,14 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import type { AssetSourceId } from "./filter.js";
|
|
10
10
|
import type { AssetKind, UploadResult } from "./types.js";
|
|
11
|
+
/** One selectable option within an asset facet filter. */
|
|
11
12
|
export interface AssetFacetOption {
|
|
12
13
|
readonly value: string;
|
|
13
14
|
readonly label: string;
|
|
14
15
|
/** Populated by memoized facet counts when available. */
|
|
15
16
|
readonly count?: number;
|
|
16
17
|
}
|
|
18
|
+
/** Describes a facet filter available in the asset browser. */
|
|
17
19
|
export interface AssetFacetDefinition {
|
|
18
20
|
/** Stable key; used in `AssetFilter.facets[id]`. */
|
|
19
21
|
readonly id: string;
|
|
@@ -31,6 +33,7 @@ export interface AssetFacetDefinition {
|
|
|
31
33
|
/** When true, the facet is delegated to the source instead of matched locally. */
|
|
32
34
|
readonly remote?: boolean;
|
|
33
35
|
}
|
|
36
|
+
/** Top-level asset category exposed to the browser UI. */
|
|
34
37
|
export interface AssetCategory {
|
|
35
38
|
readonly id: string;
|
|
36
39
|
readonly label: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"categories.d.cts","sourceRoot":"","sources":["../../src/types/categories.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACpC,oDAAoD;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IACvC,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC9C,gEAAgE;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1E,mFAAmF;IACnF,QAAQ,CAAC,OAAO,CAAC,EACd,SAAS,gBAAgB,EAAE,GAC3B,CAAC,CAAC,GAAG,EAAE;QACP,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC/C,kFAAkF;IAClF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE;QAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;KACtC,CAAC;IACF,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACnB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"categories.d.cts","sourceRoot":"","sources":["../../src/types/categories.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D,0DAA0D;AAC1D,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,+DAA+D;AAC/D,MAAM,WAAW,oBAAoB;IACpC,oDAAoD;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IACvC,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC9C,gEAAgE;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1E,mFAAmF;IACnF,QAAQ,CAAC,OAAO,CAAC,EACd,SAAS,gBAAgB,EAAE,GAC3B,CAAC,CAAC,GAAG,EAAE;QACP,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC/C,kFAAkF;IAClF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE;QAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;KACtC,CAAC;IACF,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACnB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACF"}
|
|
@@ -8,12 +8,14 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import type { AssetSourceId } from "./filter.js";
|
|
10
10
|
import type { AssetKind, UploadResult } from "./types.js";
|
|
11
|
+
/** One selectable option within an asset facet filter. */
|
|
11
12
|
export interface AssetFacetOption {
|
|
12
13
|
readonly value: string;
|
|
13
14
|
readonly label: string;
|
|
14
15
|
/** Populated by memoized facet counts when available. */
|
|
15
16
|
readonly count?: number;
|
|
16
17
|
}
|
|
18
|
+
/** Describes a facet filter available in the asset browser. */
|
|
17
19
|
export interface AssetFacetDefinition {
|
|
18
20
|
/** Stable key; used in `AssetFilter.facets[id]`. */
|
|
19
21
|
readonly id: string;
|
|
@@ -31,6 +33,7 @@ export interface AssetFacetDefinition {
|
|
|
31
33
|
/** When true, the facet is delegated to the source instead of matched locally. */
|
|
32
34
|
readonly remote?: boolean;
|
|
33
35
|
}
|
|
36
|
+
/** Top-level asset category exposed to the browser UI. */
|
|
34
37
|
export interface AssetCategory {
|
|
35
38
|
readonly id: string;
|
|
36
39
|
readonly label: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"categories.d.ts","sourceRoot":"","sources":["../../src/types/categories.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACpC,oDAAoD;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IACvC,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC9C,gEAAgE;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1E,mFAAmF;IACnF,QAAQ,CAAC,OAAO,CAAC,EACd,SAAS,gBAAgB,EAAE,GAC3B,CAAC,CAAC,GAAG,EAAE;QACP,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC/C,kFAAkF;IAClF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE;QAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;KACtC,CAAC;IACF,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACnB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"categories.d.ts","sourceRoot":"","sources":["../../src/types/categories.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D,0DAA0D;AAC1D,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,+DAA+D;AAC/D,MAAM,WAAW,oBAAoB;IACpC,oDAAoD;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IACvC,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC9C,gEAAgE;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1E,mFAAmF;IACnF,QAAQ,CAAC,OAAO,CAAC,EACd,SAAS,gBAAgB,EAAE,GAC3B,CAAC,CAAC,GAAG,EAAE;QACP,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;KAC/B,KAAK,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC/C,kFAAkF;IAClF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE;QAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;KACtC,CAAC;IACF,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACnB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACF"}
|
|
@@ -36,6 +36,7 @@ export type AssetSourceStatus = {
|
|
|
36
36
|
readonly phase: "error";
|
|
37
37
|
readonly error: AssetSourceError;
|
|
38
38
|
};
|
|
39
|
+
/** Host-supplied read and mutation plane for the local asset library. */
|
|
39
40
|
export interface AssetDataSource {
|
|
40
41
|
/**
|
|
41
42
|
* THE single read. Scoped by `query.folderId` (null=root, undefined=all),
|
|
@@ -43,17 +44,25 @@ export interface AssetDataSource {
|
|
|
43
44
|
* its `folderPath` breadcrumb in one envelope. No separate `listFolders`.
|
|
44
45
|
*/
|
|
45
46
|
list?(query: AssetFilter, signal?: AbortSignal): Promise<AssetListPage>;
|
|
47
|
+
/** Remove an asset by id from the backing library. */
|
|
46
48
|
remove?(id: string, signal?: AbortSignal): Promise<void>;
|
|
49
|
+
/** Replace an asset's binary contents and return the updated upload row. */
|
|
47
50
|
replace?(id: string, payload: ReplacePayload, signal?: AbortSignal): Promise<UploadResult>;
|
|
51
|
+
/** Rename an asset and return the updated upload row. */
|
|
48
52
|
rename?(id: string, name: string, signal?: AbortSignal): Promise<UploadResult>;
|
|
49
53
|
/** Move an asset into a folder. `null` ⇒ root. */
|
|
50
54
|
move?(id: string, folderId: FolderId | null, signal?: AbortSignal): Promise<void>;
|
|
55
|
+
/** Create a child folder under `parentId`, or under root when `null`. */
|
|
51
56
|
createFolder?(parentId: FolderId | null, name: string, signal?: AbortSignal): Promise<AssetFolder>;
|
|
57
|
+
/** Rename a folder and return the updated folder record. */
|
|
52
58
|
renameFolder?(id: FolderId, name: string, signal?: AbortSignal): Promise<AssetFolder>;
|
|
59
|
+
/** Remove a folder, optionally cascading through descendants and assets. */
|
|
53
60
|
removeFolder?(id: FolderId, opts?: {
|
|
54
61
|
readonly cascade?: boolean;
|
|
55
62
|
}, signal?: AbortSignal): Promise<void>;
|
|
63
|
+
/** Move a folder under `parentId`, or to root when `null`. */
|
|
56
64
|
moveFolder?(id: FolderId, parentId: FolderId | null, signal?: AbortSignal): Promise<AssetFolder>;
|
|
65
|
+
/** Subscribe to data-source loading and mutation status updates. */
|
|
57
66
|
subscribeStatus?(listener: (status: AssetSourceStatus) => void): () => void;
|
|
58
67
|
}
|
|
59
68
|
//# sourceMappingURL=data-source.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-source.d.cts","sourceRoot":"","sources":["../../src/types/data-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC;AAElC,wFAAwF;AACxF,MAAM,MAAM,iBAAiB,GAC1B;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzD;IACA,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,EAAE,EACR,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,SAAS,GACT,cAAc,GACd,cAAc,GACd,YAAY,CAAC;IAChB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACnB,GACD;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAEjE,MAAM,WAAW,eAAe;IAE/B;;;;OAIG;IACH,IAAI,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAGxE,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,CACP,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,YAAY,CAAC,CAAC;IACzB,MAAM,CAAC,CACN,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,YAAY,CAAC,CAAC;IACzB,kDAAkD;IAClD,IAAI,CAAC,CACJ,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAAC;IAGjB,YAAY,CAAC,CACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,YAAY,CAAC,CACZ,EAAE,EAAE,QAAQ,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,YAAY,CAAC,CACZ,EAAE,EAAE,QAAQ,EACZ,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,EACrC,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,UAAU,CAAC,CACV,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAAC;IAGxB,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CAC5E"}
|
|
1
|
+
{"version":3,"file":"data-source.d.cts","sourceRoot":"","sources":["../../src/types/data-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ export type AssetSourceStatus = {
|
|
|
36
36
|
readonly phase: "error";
|
|
37
37
|
readonly error: AssetSourceError;
|
|
38
38
|
};
|
|
39
|
+
/** Host-supplied read and mutation plane for the local asset library. */
|
|
39
40
|
export interface AssetDataSource {
|
|
40
41
|
/**
|
|
41
42
|
* THE single read. Scoped by `query.folderId` (null=root, undefined=all),
|
|
@@ -43,17 +44,25 @@ export interface AssetDataSource {
|
|
|
43
44
|
* its `folderPath` breadcrumb in one envelope. No separate `listFolders`.
|
|
44
45
|
*/
|
|
45
46
|
list?(query: AssetFilter, signal?: AbortSignal): Promise<AssetListPage>;
|
|
47
|
+
/** Remove an asset by id from the backing library. */
|
|
46
48
|
remove?(id: string, signal?: AbortSignal): Promise<void>;
|
|
49
|
+
/** Replace an asset's binary contents and return the updated upload row. */
|
|
47
50
|
replace?(id: string, payload: ReplacePayload, signal?: AbortSignal): Promise<UploadResult>;
|
|
51
|
+
/** Rename an asset and return the updated upload row. */
|
|
48
52
|
rename?(id: string, name: string, signal?: AbortSignal): Promise<UploadResult>;
|
|
49
53
|
/** Move an asset into a folder. `null` ⇒ root. */
|
|
50
54
|
move?(id: string, folderId: FolderId | null, signal?: AbortSignal): Promise<void>;
|
|
55
|
+
/** Create a child folder under `parentId`, or under root when `null`. */
|
|
51
56
|
createFolder?(parentId: FolderId | null, name: string, signal?: AbortSignal): Promise<AssetFolder>;
|
|
57
|
+
/** Rename a folder and return the updated folder record. */
|
|
52
58
|
renameFolder?(id: FolderId, name: string, signal?: AbortSignal): Promise<AssetFolder>;
|
|
59
|
+
/** Remove a folder, optionally cascading through descendants and assets. */
|
|
53
60
|
removeFolder?(id: FolderId, opts?: {
|
|
54
61
|
readonly cascade?: boolean;
|
|
55
62
|
}, signal?: AbortSignal): Promise<void>;
|
|
63
|
+
/** Move a folder under `parentId`, or to root when `null`. */
|
|
56
64
|
moveFolder?(id: FolderId, parentId: FolderId | null, signal?: AbortSignal): Promise<AssetFolder>;
|
|
65
|
+
/** Subscribe to data-source loading and mutation status updates. */
|
|
57
66
|
subscribeStatus?(listener: (status: AssetSourceStatus) => void): () => void;
|
|
58
67
|
}
|
|
59
68
|
//# sourceMappingURL=data-source.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-source.d.ts","sourceRoot":"","sources":["../../src/types/data-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC;AAElC,wFAAwF;AACxF,MAAM,MAAM,iBAAiB,GAC1B;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzD;IACA,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,EAAE,EACR,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,SAAS,GACT,cAAc,GACd,cAAc,GACd,YAAY,CAAC;IAChB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACnB,GACD;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAEjE,MAAM,WAAW,eAAe;IAE/B;;;;OAIG;IACH,IAAI,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAGxE,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,CACP,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,YAAY,CAAC,CAAC;IACzB,MAAM,CAAC,CACN,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,YAAY,CAAC,CAAC;IACzB,kDAAkD;IAClD,IAAI,CAAC,CACJ,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAAC;IAGjB,YAAY,CAAC,CACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,YAAY,CAAC,CACZ,EAAE,EAAE,QAAQ,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,YAAY,CAAC,CACZ,EAAE,EAAE,QAAQ,EACZ,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,EACrC,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,UAAU,CAAC,CACV,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAAC;IAGxB,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CAC5E"}
|
|
1
|
+
{"version":3,"file":"data-source.d.ts","sourceRoot":"","sources":["../../src/types/data-source.ts"],"names":[],"mappings":"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"}
|
package/dist/types/filter.d.cts
CHANGED
|
@@ -16,6 +16,7 @@ import type { AssetSearchOptions, AssetSearchPage } from "./types.js";
|
|
|
16
16
|
*/
|
|
17
17
|
export type AssetSourceId = "local" | "unsplash" | (string & {});
|
|
18
18
|
export type AssetSortField = "recent" | "name" | "size" | "kind" | "relevance";
|
|
19
|
+
/** Sort selection for asset search and list queries. */
|
|
19
20
|
export interface AssetSort {
|
|
20
21
|
readonly field: AssetSortField;
|
|
21
22
|
/** Defaults are field-appropriate: `recent`→`desc`, `name`→`asc`. */
|
|
@@ -51,5 +52,15 @@ export interface AssetListPage extends AssetSearchPage {
|
|
|
51
52
|
readonly folderPath?: readonly AssetFolder[];
|
|
52
53
|
/** Per-source page tokens for federated paging, keyed by source id. */
|
|
53
54
|
readonly sourceCursors?: Readonly<Record<string, string | undefined>>;
|
|
55
|
+
/**
|
|
56
|
+
* Per-source errors for a federated page, keyed by source id — set when a
|
|
57
|
+
* provider failed for this page while others succeeded (the failed provider's
|
|
58
|
+
* items are dropped but its cursor is carried forward). Mirrors core's
|
|
59
|
+
* `StudioAssetListPage.sourceErrors`.
|
|
60
|
+
*/
|
|
61
|
+
readonly sourceErrors?: Readonly<Record<string, {
|
|
62
|
+
readonly message: string;
|
|
63
|
+
readonly code?: string;
|
|
64
|
+
}>>;
|
|
54
65
|
}
|
|
55
66
|
//# sourceMappingURL=filter.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.d.cts","sourceRoot":"","sources":["../../src/types/filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAE/E,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACpC;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACtD,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC5C,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9D,kEAAkE;IAClE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;CAC1B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAc,SAAQ,eAAe;IACrD,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,sEAAsE;IACtE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC7C,uEAAuE;IACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"filter.d.cts","sourceRoot":"","sources":["../../src/types/filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAE/E,wDAAwD;AACxD,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACpC;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACtD,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC5C,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9D,kEAAkE;IAClE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;CAC1B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAc,SAAQ,eAAe;IACrD,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,sEAAsE;IACtE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC7C,uEAAuE;IACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IACtE;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAC/B,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CACpE,CAAC;CACF"}
|
package/dist/types/filter.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ import type { AssetSearchOptions, AssetSearchPage } from "./types.js";
|
|
|
16
16
|
*/
|
|
17
17
|
export type AssetSourceId = "local" | "unsplash" | (string & {});
|
|
18
18
|
export type AssetSortField = "recent" | "name" | "size" | "kind" | "relevance";
|
|
19
|
+
/** Sort selection for asset search and list queries. */
|
|
19
20
|
export interface AssetSort {
|
|
20
21
|
readonly field: AssetSortField;
|
|
21
22
|
/** Defaults are field-appropriate: `recent`→`desc`, `name`→`asc`. */
|
|
@@ -51,5 +52,15 @@ export interface AssetListPage extends AssetSearchPage {
|
|
|
51
52
|
readonly folderPath?: readonly AssetFolder[];
|
|
52
53
|
/** Per-source page tokens for federated paging, keyed by source id. */
|
|
53
54
|
readonly sourceCursors?: Readonly<Record<string, string | undefined>>;
|
|
55
|
+
/**
|
|
56
|
+
* Per-source errors for a federated page, keyed by source id — set when a
|
|
57
|
+
* provider failed for this page while others succeeded (the failed provider's
|
|
58
|
+
* items are dropped but its cursor is carried forward). Mirrors core's
|
|
59
|
+
* `StudioAssetListPage.sourceErrors`.
|
|
60
|
+
*/
|
|
61
|
+
readonly sourceErrors?: Readonly<Record<string, {
|
|
62
|
+
readonly message: string;
|
|
63
|
+
readonly code?: string;
|
|
64
|
+
}>>;
|
|
54
65
|
}
|
|
55
66
|
//# sourceMappingURL=filter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/types/filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAE/E,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACpC;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACtD,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC5C,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9D,kEAAkE;IAClE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;CAC1B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAc,SAAQ,eAAe;IACrD,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,sEAAsE;IACtE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC7C,uEAAuE;IACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/types/filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAE/E,wDAAwD;AACxD,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACpC;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACtD,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC5C,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9D,kEAAkE;IAClE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;CAC1B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAc,SAAQ,eAAe;IACrD,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,sEAAsE;IACtE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC7C,uEAAuE;IACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IACtE;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAC/B,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CACpE,CAAC;CACF"}
|
package/dist/types/folders.d.cts
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
/** Canonical id of a folder. `null` (never a real id) denotes the root. */
|
|
11
11
|
export type FolderId = string;
|
|
12
|
+
/** Folder node returned by the asset library data source. */
|
|
12
13
|
export interface AssetFolder {
|
|
13
14
|
readonly id: FolderId;
|
|
14
15
|
/** Display name; trimmed, non-empty. Siblings are case-insensitively unique. */
|
|
@@ -30,6 +31,7 @@ export interface AssetFolder {
|
|
|
30
31
|
/** Optional host-opaque metadata (e.g. color label, ACL). */
|
|
31
32
|
readonly meta?: Readonly<Record<string, string | number | boolean>>;
|
|
32
33
|
}
|
|
34
|
+
/** Feature flags that control folder support in the plugin UI and source. */
|
|
33
35
|
export interface FolderOptions {
|
|
34
36
|
/** Maximum nesting depth. `undefined` ⇒ unbounded. */
|
|
35
37
|
readonly maxDepth?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"folders.d.cts","sourceRoot":"","sources":["../../src/types/folders.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,2EAA2E;AAC3E,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IACnC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE;QAChB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,aAAa;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAE3E"}
|
|
1
|
+
{"version":3,"file":"folders.d.cts","sourceRoot":"","sources":["../../src/types/folders.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,2EAA2E;AAC3E,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,6DAA6D;AAC7D,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IACnC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE;QAChB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CACpE;AAED,6EAA6E;AAC7E,MAAM,WAAW,aAAa;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAE3E"}
|
package/dist/types/folders.d.ts
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
/** Canonical id of a folder. `null` (never a real id) denotes the root. */
|
|
11
11
|
export type FolderId = string;
|
|
12
|
+
/** Folder node returned by the asset library data source. */
|
|
12
13
|
export interface AssetFolder {
|
|
13
14
|
readonly id: FolderId;
|
|
14
15
|
/** Display name; trimmed, non-empty. Siblings are case-insensitively unique. */
|
|
@@ -30,6 +31,7 @@ export interface AssetFolder {
|
|
|
30
31
|
/** Optional host-opaque metadata (e.g. color label, ACL). */
|
|
31
32
|
readonly meta?: Readonly<Record<string, string | number | boolean>>;
|
|
32
33
|
}
|
|
34
|
+
/** Feature flags that control folder support in the plugin UI and source. */
|
|
33
35
|
export interface FolderOptions {
|
|
34
36
|
/** Maximum nesting depth. `undefined` ⇒ unbounded. */
|
|
35
37
|
readonly maxDepth?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"folders.d.ts","sourceRoot":"","sources":["../../src/types/folders.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,2EAA2E;AAC3E,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IACnC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE;QAChB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,aAAa;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAE3E"}
|
|
1
|
+
{"version":3,"file":"folders.d.ts","sourceRoot":"","sources":["../../src/types/folders.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,2EAA2E;AAC3E,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,6DAA6D;AAC7D,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IACnC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE;QAChB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CACpE;AAED,6EAA6E;AAC7E,MAAM,WAAW,aAAa;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAE3E"}
|
package/dist/types/options.d.cts
CHANGED
|
@@ -11,8 +11,11 @@ import type { AssetSourceProvider } from "../sources/provider.js";
|
|
|
11
11
|
import type { AssetCategory, AssetFacetDefinition } from "./categories.js";
|
|
12
12
|
import type { AssetDataSource } from "./data-source.js";
|
|
13
13
|
import type { FolderOptions } from "./folders.js";
|
|
14
|
-
import type {
|
|
14
|
+
import type { ResumableUploadConfig } from "./resumable.js";
|
|
15
|
+
import type { TransformResolver } from "./transform.js";
|
|
16
|
+
import type { AssetDeletedHook, UploadAdapter, UploadResult } from "./types.js";
|
|
15
17
|
import type { UnsplashSourceOptions } from "./unsplash.js";
|
|
18
|
+
/** Configuration accepted by `createAssetManagerPlugin()`. */
|
|
16
19
|
export interface AssetManagerOptions {
|
|
17
20
|
/**
|
|
18
21
|
* Binary ingest: `File → UploadResult`. WIDENED to optional in PRD 0002 —
|
|
@@ -22,6 +25,33 @@ export interface AssetManagerOptions {
|
|
|
22
25
|
* assigns (pure widening).
|
|
23
26
|
*/
|
|
24
27
|
readonly uploader?: UploadAdapter;
|
|
28
|
+
/**
|
|
29
|
+
* Opt-in resumable / multipart upload for large media. When set, files at or
|
|
30
|
+
* above `resumable.threshold` upload through the session-based
|
|
31
|
+
* {@link ResumableUploadConfig.adapter} (chunked, per-part retry, resumable
|
|
32
|
+
* across interruptions); smaller files keep using the single-shot
|
|
33
|
+
* `uploader`. Omitted ⇒ every upload is single-shot (unchanged default).
|
|
34
|
+
*/
|
|
35
|
+
readonly resumable?: ResumableUploadConfig;
|
|
36
|
+
/**
|
|
37
|
+
* Opt-in content deduplication. When `true`, each upload's bytes are hashed
|
|
38
|
+
* (SHA-256) before the adapter runs; if an asset with the same hash already
|
|
39
|
+
* exists in the registry, that existing asset is reused (its reference is
|
|
40
|
+
* dispatched) instead of re-uploading. The computed digest is stored on
|
|
41
|
+
* `AssetMeta.hash`. Off by default — hashing reads the whole file, and
|
|
42
|
+
* distinct-but-identical uploads are kept separate unless enabled.
|
|
43
|
+
*/
|
|
44
|
+
readonly dedupe?: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Opt-in magic-byte content sniffing. When `true`, each upload's leading
|
|
47
|
+
* bytes are inspected and rejected (`CONTENT_TYPE_MISMATCH`) if the detected
|
|
48
|
+
* type contradicts a declared, specific `file.type` — defense-in-depth
|
|
49
|
+
* against spoofed/empty browser MIME beyond the `acceptedMimeTypes` /
|
|
50
|
+
* `acceptedFileExtensions` checks. Off by default; unsignable types and
|
|
51
|
+
* generic declarations (`application/octet-stream`) pass. The backend should
|
|
52
|
+
* still validate independently.
|
|
53
|
+
*/
|
|
54
|
+
readonly sniffContent?: boolean;
|
|
25
55
|
/**
|
|
26
56
|
* Unified local-library data plane (list + asset/folder CRUD). Omitted ⇒ a
|
|
27
57
|
* full in-memory default over the built-in registry + a folder side-index.
|
|
@@ -46,6 +76,14 @@ export interface AssetManagerOptions {
|
|
|
46
76
|
readonly facets?: readonly AssetFacetDefinition[];
|
|
47
77
|
readonly maxFileSize?: number;
|
|
48
78
|
readonly acceptedMimeTypes?: readonly string[];
|
|
79
|
+
/**
|
|
80
|
+
* Optional extension allowlist, matched case-insensitively against `File.name`.
|
|
81
|
+
* Entries may be supplied with or without the leading dot (`".png"` or `"png"`).
|
|
82
|
+
* When both MIME and extension allowlists are configured, both known MIME types
|
|
83
|
+
* and extensions must be accepted; an empty browser MIME type can still pass via
|
|
84
|
+
* a matching extension.
|
|
85
|
+
*/
|
|
86
|
+
readonly acceptedFileExtensions?: readonly string[];
|
|
49
87
|
/**
|
|
50
88
|
* Permit `data:` URLs through the trust boundary. Defaults to `false` —
|
|
51
89
|
* `http`, `https`, and `blob` are always allowed; every other scheme is
|
|
@@ -64,5 +102,23 @@ export interface AssetManagerOptions {
|
|
|
64
102
|
* (overriding the default-for-images behavior).
|
|
65
103
|
*/
|
|
66
104
|
readonly getThumbnail?: (entry: UploadResult) => string | undefined;
|
|
105
|
+
/**
|
|
106
|
+
* Maps an asset + {@link AssetTransform} to a derivative URL (resize / crop /
|
|
107
|
+
* format / quality), produced by the host's image CDN or service. Wired into
|
|
108
|
+
* the IR resolver so an `asset://<id>?w=…&fm=…` reference resolves to the
|
|
109
|
+
* derivative URL at export / render time. Omitted ⇒ transforms are ignored
|
|
110
|
+
* and the original URL is used. See `createQueryParamTransformResolver` for a
|
|
111
|
+
* built-in query-param CDN mapping.
|
|
112
|
+
*/
|
|
113
|
+
readonly transformResolver?: TransformResolver;
|
|
114
|
+
/**
|
|
115
|
+
* Called when an asset is deleted through the source (default in-memory data
|
|
116
|
+
* plane / lightweight registry source), with the record at deletion time.
|
|
117
|
+
* Use it to release backend objects tied to the upload. `blob:` URLs minted
|
|
118
|
+
* by the built-in `inMemoryUploader` are revoked automatically regardless of
|
|
119
|
+
* this hook. Not invoked when a host-owned `dataSource` owns the asset plane
|
|
120
|
+
* — that backend owns its own deletion.
|
|
121
|
+
*/
|
|
122
|
+
readonly onAssetDeleted?: AssetDeletedHook;
|
|
67
123
|
}
|
|
68
124
|
//# sourceMappingURL=options.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.cts","sourceRoot":"","sources":["../../src/types/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"options.d.cts","sourceRoot":"","sources":["../../src/types/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE3D,8DAA8D;AAC9D,MAAM,WAAW,mBAAmB;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC3C;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;OAQG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC;IACtC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;IAC3C,6EAA6E;IAC7E,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IAC1C,yDAAyD;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC/C,gEAAgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAGlD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C;;;;;;OAMG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpD;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAC7C;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,MAAM,GAAG,SAAS,CAAC;IACpE;;;;;;;OAOG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,gBAAgB,CAAC;CAC3C"}
|
package/dist/types/options.d.ts
CHANGED
|
@@ -11,8 +11,11 @@ import type { AssetSourceProvider } from "../sources/provider.js";
|
|
|
11
11
|
import type { AssetCategory, AssetFacetDefinition } from "./categories.js";
|
|
12
12
|
import type { AssetDataSource } from "./data-source.js";
|
|
13
13
|
import type { FolderOptions } from "./folders.js";
|
|
14
|
-
import type {
|
|
14
|
+
import type { ResumableUploadConfig } from "./resumable.js";
|
|
15
|
+
import type { TransformResolver } from "./transform.js";
|
|
16
|
+
import type { AssetDeletedHook, UploadAdapter, UploadResult } from "./types.js";
|
|
15
17
|
import type { UnsplashSourceOptions } from "./unsplash.js";
|
|
18
|
+
/** Configuration accepted by `createAssetManagerPlugin()`. */
|
|
16
19
|
export interface AssetManagerOptions {
|
|
17
20
|
/**
|
|
18
21
|
* Binary ingest: `File → UploadResult`. WIDENED to optional in PRD 0002 —
|
|
@@ -22,6 +25,33 @@ export interface AssetManagerOptions {
|
|
|
22
25
|
* assigns (pure widening).
|
|
23
26
|
*/
|
|
24
27
|
readonly uploader?: UploadAdapter;
|
|
28
|
+
/**
|
|
29
|
+
* Opt-in resumable / multipart upload for large media. When set, files at or
|
|
30
|
+
* above `resumable.threshold` upload through the session-based
|
|
31
|
+
* {@link ResumableUploadConfig.adapter} (chunked, per-part retry, resumable
|
|
32
|
+
* across interruptions); smaller files keep using the single-shot
|
|
33
|
+
* `uploader`. Omitted ⇒ every upload is single-shot (unchanged default).
|
|
34
|
+
*/
|
|
35
|
+
readonly resumable?: ResumableUploadConfig;
|
|
36
|
+
/**
|
|
37
|
+
* Opt-in content deduplication. When `true`, each upload's bytes are hashed
|
|
38
|
+
* (SHA-256) before the adapter runs; if an asset with the same hash already
|
|
39
|
+
* exists in the registry, that existing asset is reused (its reference is
|
|
40
|
+
* dispatched) instead of re-uploading. The computed digest is stored on
|
|
41
|
+
* `AssetMeta.hash`. Off by default — hashing reads the whole file, and
|
|
42
|
+
* distinct-but-identical uploads are kept separate unless enabled.
|
|
43
|
+
*/
|
|
44
|
+
readonly dedupe?: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Opt-in magic-byte content sniffing. When `true`, each upload's leading
|
|
47
|
+
* bytes are inspected and rejected (`CONTENT_TYPE_MISMATCH`) if the detected
|
|
48
|
+
* type contradicts a declared, specific `file.type` — defense-in-depth
|
|
49
|
+
* against spoofed/empty browser MIME beyond the `acceptedMimeTypes` /
|
|
50
|
+
* `acceptedFileExtensions` checks. Off by default; unsignable types and
|
|
51
|
+
* generic declarations (`application/octet-stream`) pass. The backend should
|
|
52
|
+
* still validate independently.
|
|
53
|
+
*/
|
|
54
|
+
readonly sniffContent?: boolean;
|
|
25
55
|
/**
|
|
26
56
|
* Unified local-library data plane (list + asset/folder CRUD). Omitted ⇒ a
|
|
27
57
|
* full in-memory default over the built-in registry + a folder side-index.
|
|
@@ -46,6 +76,14 @@ export interface AssetManagerOptions {
|
|
|
46
76
|
readonly facets?: readonly AssetFacetDefinition[];
|
|
47
77
|
readonly maxFileSize?: number;
|
|
48
78
|
readonly acceptedMimeTypes?: readonly string[];
|
|
79
|
+
/**
|
|
80
|
+
* Optional extension allowlist, matched case-insensitively against `File.name`.
|
|
81
|
+
* Entries may be supplied with or without the leading dot (`".png"` or `"png"`).
|
|
82
|
+
* When both MIME and extension allowlists are configured, both known MIME types
|
|
83
|
+
* and extensions must be accepted; an empty browser MIME type can still pass via
|
|
84
|
+
* a matching extension.
|
|
85
|
+
*/
|
|
86
|
+
readonly acceptedFileExtensions?: readonly string[];
|
|
49
87
|
/**
|
|
50
88
|
* Permit `data:` URLs through the trust boundary. Defaults to `false` —
|
|
51
89
|
* `http`, `https`, and `blob` are always allowed; every other scheme is
|
|
@@ -64,5 +102,23 @@ export interface AssetManagerOptions {
|
|
|
64
102
|
* (overriding the default-for-images behavior).
|
|
65
103
|
*/
|
|
66
104
|
readonly getThumbnail?: (entry: UploadResult) => string | undefined;
|
|
105
|
+
/**
|
|
106
|
+
* Maps an asset + {@link AssetTransform} to a derivative URL (resize / crop /
|
|
107
|
+
* format / quality), produced by the host's image CDN or service. Wired into
|
|
108
|
+
* the IR resolver so an `asset://<id>?w=…&fm=…` reference resolves to the
|
|
109
|
+
* derivative URL at export / render time. Omitted ⇒ transforms are ignored
|
|
110
|
+
* and the original URL is used. See `createQueryParamTransformResolver` for a
|
|
111
|
+
* built-in query-param CDN mapping.
|
|
112
|
+
*/
|
|
113
|
+
readonly transformResolver?: TransformResolver;
|
|
114
|
+
/**
|
|
115
|
+
* Called when an asset is deleted through the source (default in-memory data
|
|
116
|
+
* plane / lightweight registry source), with the record at deletion time.
|
|
117
|
+
* Use it to release backend objects tied to the upload. `blob:` URLs minted
|
|
118
|
+
* by the built-in `inMemoryUploader` are revoked automatically regardless of
|
|
119
|
+
* this hook. Not invoked when a host-owned `dataSource` owns the asset plane
|
|
120
|
+
* — that backend owns its own deletion.
|
|
121
|
+
*/
|
|
122
|
+
readonly onAssetDeleted?: AssetDeletedHook;
|
|
67
123
|
}
|
|
68
124
|
//# sourceMappingURL=options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/types/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/types/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE3D,8DAA8D;AAC9D,MAAM,WAAW,mBAAmB;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC3C;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;OAQG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC;IACtC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;IAC3C,6EAA6E;IAC7E,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IAC1C,yDAAyD;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC/C,gEAAgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAGlD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C;;;;;;OAMG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpD;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAC7C;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,MAAM,GAAG,SAAS,CAAC;IACpE;;;;;;;OAOG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,gBAAgB,CAAC;CAC3C"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
(()=>{
|
|
16
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
17
|
+
})();
|
|
18
|
+
(()=>{
|
|
19
|
+
__webpack_require__.r = (exports1)=>{
|
|
20
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
21
|
+
value: 'Module'
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
24
|
+
value: true
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
var __webpack_exports__ = {};
|
|
29
|
+
__webpack_require__.r(__webpack_exports__);
|
|
30
|
+
function isResumableAdapter(value) {
|
|
31
|
+
return "object" == typeof value && null !== value && "function" == typeof value.begin && "function" == typeof value.uploadPart && "function" == typeof value.complete && "function" == typeof value.abort;
|
|
32
|
+
}
|
|
33
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
34
|
+
isResumableAdapter: ()=>isResumableAdapter
|
|
35
|
+
});
|
|
36
|
+
exports.isResumableAdapter = __webpack_exports__.isResumableAdapter;
|
|
37
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
38
|
+
"isResumableAdapter"
|
|
39
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
40
|
+
Object.defineProperty(exports, '__esModule', {
|
|
41
|
+
value: true
|
|
42
|
+
});
|