@sparqjs/schema-vue 0.1.0

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.
Files changed (190) hide show
  1. package/dist/asset/index.d.ts +5 -0
  2. package/dist/asset/index.d.ts.map +1 -0
  3. package/dist/asset/picker/AssetPickerParts.d.ts +43 -0
  4. package/dist/asset/picker/AssetPickerParts.d.ts.map +1 -0
  5. package/dist/asset/picker/AssetPickerRoot.d.ts +36 -0
  6. package/dist/asset/picker/AssetPickerRoot.d.ts.map +1 -0
  7. package/dist/asset/picker/AssetPickerServerPanel.d.ts +38 -0
  8. package/dist/asset/picker/AssetPickerServerPanel.d.ts.map +1 -0
  9. package/dist/asset/picker/index.d.ts +4 -0
  10. package/dist/asset/picker/index.d.ts.map +1 -0
  11. package/dist/asset/picker/service.d.ts +4 -0
  12. package/dist/asset/picker/service.d.ts.map +1 -0
  13. package/dist/asset/picker/types.d.ts +50 -0
  14. package/dist/asset/picker/types.d.ts.map +1 -0
  15. package/dist/asset/preview/AssetPreview.d.ts +64 -0
  16. package/dist/asset/preview/AssetPreview.d.ts.map +1 -0
  17. package/dist/asset/preview/index.d.ts +3 -0
  18. package/dist/asset/preview/index.d.ts.map +1 -0
  19. package/dist/asset/preview/registry.d.ts +35 -0
  20. package/dist/asset/preview/registry.d.ts.map +1 -0
  21. package/dist/asset/service.d.ts +39 -0
  22. package/dist/asset/service.d.ts.map +1 -0
  23. package/dist/asset/upload/AssetUploadPanel.d.ts +82 -0
  24. package/dist/asset/upload/AssetUploadPanel.d.ts.map +1 -0
  25. package/dist/asset/upload/executor.d.ts +59 -0
  26. package/dist/asset/upload/executor.d.ts.map +1 -0
  27. package/dist/asset/upload/files.d.ts +16 -0
  28. package/dist/asset/upload/files.d.ts.map +1 -0
  29. package/dist/asset/upload/hash-file.d.ts +7 -0
  30. package/dist/asset/upload/hash-file.d.ts.map +1 -0
  31. package/dist/asset/upload/hash-worker.d.ts +2 -0
  32. package/dist/asset/upload/hash-worker.d.ts.map +1 -0
  33. package/dist/asset/upload/index.d.ts +6 -0
  34. package/dist/asset/upload/index.d.ts.map +1 -0
  35. package/dist/asset/upload/queue.d.ts +23 -0
  36. package/dist/asset/upload/queue.d.ts.map +1 -0
  37. package/dist/assets/hash-worker-DEktbSny.js +8 -0
  38. package/dist/assets/hash-worker-DEktbSny.js.map +1 -0
  39. package/dist/components/SparqView.d.ts +65 -0
  40. package/dist/components/SparqView.d.ts.map +1 -0
  41. package/dist/custom-components/IconInput/IconInput.d.ts +45 -0
  42. package/dist/custom-components/IconInput/IconInput.d.ts.map +1 -0
  43. package/dist/custom-components/IconInput/SqIcon.d.ts +29 -0
  44. package/dist/custom-components/IconInput/SqIcon.d.ts.map +1 -0
  45. package/dist/custom-components/IconInput/SqIconInput.d.ts +184 -0
  46. package/dist/custom-components/IconInput/SqIconInput.d.ts.map +1 -0
  47. package/dist/custom-components/IconInput/index.d.ts +5 -0
  48. package/dist/custom-components/IconInput/index.d.ts.map +1 -0
  49. package/dist/custom-components/JsonEditor/JsonEditor.d.ts +39 -0
  50. package/dist/custom-components/JsonEditor/JsonEditor.d.ts.map +1 -0
  51. package/dist/custom-components/JsonEditor/SqJson.d.ts +103 -0
  52. package/dist/custom-components/JsonEditor/SqJson.d.ts.map +1 -0
  53. package/dist/custom-components/JsonEditor/index.d.ts +5 -0
  54. package/dist/custom-components/JsonEditor/index.d.ts.map +1 -0
  55. package/dist/custom-components/KeyValueEditor/KeyValueEditor.d.ts +37 -0
  56. package/dist/custom-components/KeyValueEditor/KeyValueEditor.d.ts.map +1 -0
  57. package/dist/custom-components/KeyValueEditor/SqKeyValue.d.ts +102 -0
  58. package/dist/custom-components/KeyValueEditor/SqKeyValue.d.ts.map +1 -0
  59. package/dist/custom-components/KeyValueEditor/index.d.ts +5 -0
  60. package/dist/custom-components/KeyValueEditor/index.d.ts.map +1 -0
  61. package/dist/custom-components/RichText/RichText.d.ts +49 -0
  62. package/dist/custom-components/RichText/RichText.d.ts.map +1 -0
  63. package/dist/custom-components/RichText/SqRichText.d.ts +139 -0
  64. package/dist/custom-components/RichText/SqRichText.d.ts.map +1 -0
  65. package/dist/custom-components/RichText/index.d.ts +3 -0
  66. package/dist/custom-components/RichText/index.d.ts.map +1 -0
  67. package/dist/custom-components/Upload/SqFileUpload.d.ts +42 -0
  68. package/dist/custom-components/Upload/SqFileUpload.d.ts.map +1 -0
  69. package/dist/custom-components/Upload/SqImageUpload.d.ts +42 -0
  70. package/dist/custom-components/Upload/SqImageUpload.d.ts.map +1 -0
  71. package/dist/custom-components/Upload/SqUpload.d.ts +45 -0
  72. package/dist/custom-components/Upload/SqUpload.d.ts.map +1 -0
  73. package/dist/custom-components/Upload/Upload.d.ts +44 -0
  74. package/dist/custom-components/Upload/Upload.d.ts.map +1 -0
  75. package/dist/custom-components/Upload/index.d.ts +5 -0
  76. package/dist/custom-components/Upload/index.d.ts.map +1 -0
  77. package/dist/custom-components/index.d.ts +681 -0
  78. package/dist/custom-components/index.d.ts.map +1 -0
  79. package/dist/custom-components/shared/props.d.ts +5 -0
  80. package/dist/custom-components/shared/props.d.ts.map +1 -0
  81. package/dist/custom-components/shared/render.d.ts +4 -0
  82. package/dist/custom-components/shared/render.d.ts.map +1 -0
  83. package/dist/custom-components/shared/standalone.d.ts +53 -0
  84. package/dist/custom-components/shared/standalone.d.ts.map +1 -0
  85. package/dist/custom-components/types.d.ts +20 -0
  86. package/dist/custom-components/types.d.ts.map +1 -0
  87. package/dist/display-format.d.ts +2 -0
  88. package/dist/display-format.d.ts.map +1 -0
  89. package/dist/index.d.ts +15 -0
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +5995 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/install.d.ts +9 -0
  94. package/dist/install.d.ts.map +1 -0
  95. package/dist/keys.d.ts +74 -0
  96. package/dist/keys.d.ts.map +1 -0
  97. package/dist/presentation/host.d.ts +33 -0
  98. package/dist/presentation/host.d.ts.map +1 -0
  99. package/dist/presentation/index.d.ts +2 -0
  100. package/dist/presentation/index.d.ts.map +1 -0
  101. package/dist/registry/component.d.ts +121 -0
  102. package/dist/registry/component.d.ts.map +1 -0
  103. package/dist/registry/contribution.d.ts +95 -0
  104. package/dist/registry/contribution.d.ts.map +1 -0
  105. package/dist/registry/icon.d.ts +21 -0
  106. package/dist/registry/icon.d.ts.map +1 -0
  107. package/dist/registry/index.d.ts +5 -0
  108. package/dist/registry/index.d.ts.map +1 -0
  109. package/dist/registry/rich-text.d.ts +52 -0
  110. package/dist/registry/rich-text.d.ts.map +1 -0
  111. package/dist/render/action-context.d.ts +16 -0
  112. package/dist/render/action-context.d.ts.map +1 -0
  113. package/dist/render/audit.d.ts +5 -0
  114. package/dist/render/audit.d.ts.map +1 -0
  115. package/dist/render/container-structure.d.ts +20 -0
  116. package/dist/render/container-structure.d.ts.map +1 -0
  117. package/dist/render/context.d.ts +52 -0
  118. package/dist/render/context.d.ts.map +1 -0
  119. package/dist/render/embedded-view.d.ts +5 -0
  120. package/dist/render/embedded-view.d.ts.map +1 -0
  121. package/dist/render/field-node.d.ts +11 -0
  122. package/dist/render/field-node.d.ts.map +1 -0
  123. package/dist/render/index.d.ts +22 -0
  124. package/dist/render/index.d.ts.map +1 -0
  125. package/dist/render/layout-node.d.ts +22 -0
  126. package/dist/render/layout-node.d.ts.map +1 -0
  127. package/dist/render/page-structure.d.ts +7 -0
  128. package/dist/render/page-structure.d.ts.map +1 -0
  129. package/dist/render/structure.d.ts +7 -0
  130. package/dist/render/structure.d.ts.map +1 -0
  131. package/dist/render/view-node.d.ts +2 -0
  132. package/dist/render/view-node.d.ts.map +1 -0
  133. package/dist/render/view-structures.d.ts +24 -0
  134. package/dist/render/view-structures.d.ts.map +1 -0
  135. package/dist/runtime/controller.d.ts +4 -0
  136. package/dist/runtime/controller.d.ts.map +1 -0
  137. package/dist/runtime/feedback.d.ts +19 -0
  138. package/dist/runtime/feedback.d.ts.map +1 -0
  139. package/dist/runtime/index.d.ts +6 -0
  140. package/dist/runtime/index.d.ts.map +1 -0
  141. package/dist/runtime/renderer.d.ts +8 -0
  142. package/dist/runtime/renderer.d.ts.map +1 -0
  143. package/dist/runtime/state.d.ts +6 -0
  144. package/dist/runtime/state.d.ts.map +1 -0
  145. package/dist/runtime/write-back.d.ts +11 -0
  146. package/dist/runtime/write-back.d.ts.map +1 -0
  147. package/dist/semantic-components/FieldDisplay.d.ts +12 -0
  148. package/dist/semantic-components/FieldDisplay.d.ts.map +1 -0
  149. package/dist/semantic-components/FieldLink.d.ts +8 -0
  150. package/dist/semantic-components/FieldLink.d.ts.map +1 -0
  151. package/dist/semantic-components/HelpText.d.ts +8 -0
  152. package/dist/semantic-components/HelpText.d.ts.map +1 -0
  153. package/dist/semantic-components/SectionBlock.d.ts +8 -0
  154. package/dist/semantic-components/SectionBlock.d.ts.map +1 -0
  155. package/dist/semantic-components/StatusTag.d.ts +14 -0
  156. package/dist/semantic-components/StatusTag.d.ts.map +1 -0
  157. package/dist/semantic-components/Thumbnail.d.ts +8 -0
  158. package/dist/semantic-components/Thumbnail.d.ts.map +1 -0
  159. package/dist/semantic-components/index.d.ts +16 -0
  160. package/dist/semantic-components/index.d.ts.map +1 -0
  161. package/dist/semantic-components/types.d.ts +28 -0
  162. package/dist/semantic-components/types.d.ts.map +1 -0
  163. package/dist/shell/audit-panel.d.ts +12 -0
  164. package/dist/shell/audit-panel.d.ts.map +1 -0
  165. package/dist/shell/detail-shell.d.ts +4 -0
  166. package/dist/shell/detail-shell.d.ts.map +1 -0
  167. package/dist/shell/index.d.ts +3 -0
  168. package/dist/shell/index.d.ts.map +1 -0
  169. package/dist/types.d.ts +403 -0
  170. package/dist/types.d.ts.map +1 -0
  171. package/dist/ui/adapter.d.ts +53 -0
  172. package/dist/ui/adapter.d.ts.map +1 -0
  173. package/dist/ui/index.d.ts +4 -0
  174. package/dist/ui/index.d.ts.map +1 -0
  175. package/dist/ui/kit.d.ts +56 -0
  176. package/dist/ui/kit.d.ts.map +1 -0
  177. package/dist/ui/schema-ui.d.ts +86 -0
  178. package/dist/ui/schema-ui.d.ts.map +1 -0
  179. package/package.json +41 -0
  180. package/src/asset/picker/style.css +537 -0
  181. package/src/asset/preview/style.css +382 -0
  182. package/src/asset/upload/style.css +167 -0
  183. package/src/custom-components/IconInput/style.css +101 -0
  184. package/src/custom-components/KeyValueEditor/style.css +44 -0
  185. package/src/custom-components/Upload/style.css +313 -0
  186. package/src/detail/style.css +427 -0
  187. package/src/render/style.css +230 -0
  188. package/src/semantic-components/style.css +263 -0
  189. package/src/style.css +9 -0
  190. package/src/tokens.css +44 -0
@@ -0,0 +1,5 @@
1
+ export * from './service';
2
+ export * from './picker';
3
+ export * from './preview';
4
+ export * from './upload';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/asset/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA"}
@@ -0,0 +1,43 @@
1
+ import { type VNode } from 'vue';
2
+ import type { SparqAsset, SparqAssetType } from '../service';
3
+ import { type SparqAssetPreviewRegistry } from '../preview';
4
+ import type { UiKit } from '../../ui';
5
+ import type { AssetPickerRequest, SparqAssetListPayload } from './types';
6
+ export type AssetPickerTab = 'server' | 'upload' | 'remote';
7
+ export interface AssetPickerToolbarState {
8
+ ui: UiKit;
9
+ request: AssetPickerRequest;
10
+ tab: AssetPickerTab;
11
+ selectedCount: number;
12
+ limit: number;
13
+ canConfirm: boolean;
14
+ setTab: (tab: AssetPickerTab) => void;
15
+ confirm: () => void;
16
+ }
17
+ export interface AssetPickerListState {
18
+ ui: UiKit;
19
+ assetPreviews?: SparqAssetPreviewRegistry;
20
+ request: AssetPickerRequest;
21
+ payload: SparqAssetListPayload;
22
+ search: {
23
+ page: number;
24
+ };
25
+ totalPages: number;
26
+ pickerType: SparqAssetType | undefined;
27
+ selected: SparqAsset[];
28
+ toggleAsset: (asset: SparqAsset) => void;
29
+ confirmAsset: (asset: SparqAsset) => void;
30
+ openPreview: (asset: SparqAsset) => void;
31
+ isSameAsset: (left: SparqAsset, right: SparqAsset) => boolean;
32
+ canSelectAsset: (asset: SparqAsset, pickerType: SparqAssetType | undefined) => boolean;
33
+ resolveLimit: (request: AssetPickerRequest | undefined) => number;
34
+ }
35
+ export declare function renderHeader(close: () => void, ui: UiKit): VNode;
36
+ export declare function renderToolbar(state: AssetPickerToolbarState): VNode;
37
+ export declare function renderSelectedPanel(selected: SparqAsset[], removeSelected: (asset: SparqAsset) => void, ui: UiKit, assetPreviews?: SparqAssetPreviewRegistry): VNode;
38
+ export declare function renderAssetCard(asset: SparqAsset, state: AssetPickerListState, index: number): VNode;
39
+ export declare function renderAssetTable(state: AssetPickerListState): VNode;
40
+ export declare function renderPagination(state: AssetPickerListState): VNode;
41
+ export declare function renderUiButton(ui: UiKit, label: string, props: Record<string, unknown>): VNode;
42
+ export declare function renderUiInput(ui: UiKit, value: string, props: Record<string, unknown>): VNode;
43
+ //# sourceMappingURL=AssetPickerParts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetPickerParts.d.ts","sourceRoot":"","sources":["../../../src/asset/picker/AssetPickerParts.tsx"],"names":[],"mappings":"AACA,OAAO,EAAK,KAAK,KAAK,EAAE,MAAM,KAAK,CAAA;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAOH,KAAK,yBAAyB,EACjC,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAExE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE3D,MAAM,WAAW,uBAAuB;IACpC,EAAE,EAAE,KAAK,CAAA;IACT,OAAO,EAAE,kBAAkB,CAAA;IAC3B,GAAG,EAAE,cAAc,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,OAAO,CAAA;IACnB,MAAM,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,CAAA;IACrC,OAAO,EAAE,MAAM,IAAI,CAAA;CACtB;AAED,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,KAAK,CAAA;IACT,aAAa,CAAC,EAAE,yBAAyB,CAAA;IACzC,OAAO,EAAE,kBAAkB,CAAA;IAC3B,OAAO,EAAE,qBAAqB,CAAA;IAC9B,MAAM,EAAE;QACJ,IAAI,EAAE,MAAM,CAAA;KACf,CAAA;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,cAAc,GAAG,SAAS,CAAA;IACtC,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACxC,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACzC,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACxC,WAAW,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,KAAK,OAAO,CAAA;IAC7D,cAAc,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,GAAG,SAAS,KAAK,OAAO,CAAA;IACtF,YAAY,EAAE,CAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS,KAAK,MAAM,CAAA;CACpE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,KAAK,GAAG,KAAK,CAUhE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAiCnE;AAED,wBAAgB,mBAAmB,CAC/B,QAAQ,EAAE,UAAU,EAAE,EACtB,cAAc,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EAC3C,EAAE,EAAE,KAAK,EACT,aAAa,CAAC,EAAE,yBAAyB,GAC1C,KAAK,CA2BP;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAsCpG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,GAAG,KAAK,CA0CnE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,GAAG,KAAK,CAwBnE;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAiB9F;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAW7F"}
@@ -0,0 +1,36 @@
1
+ import { type PropType } from 'vue';
2
+ import type { UiKit } from '../../ui';
3
+ import type { AssetPickerRequestRef, SparqAssetPickerViewPreference } from './types';
4
+ export declare const AssetPickerRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
5
+ request: {
6
+ type: PropType<AssetPickerRequestRef>;
7
+ required: true;
8
+ };
9
+ uiKit: {
10
+ type: PropType<UiKit>;
11
+ default: undefined;
12
+ };
13
+ viewPreference: {
14
+ type: PropType<SparqAssetPickerViewPreference>;
15
+ default: undefined;
16
+ };
17
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
18
+ [key: string]: any;
19
+ }> | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
20
+ request: {
21
+ type: PropType<AssetPickerRequestRef>;
22
+ required: true;
23
+ };
24
+ uiKit: {
25
+ type: PropType<UiKit>;
26
+ default: undefined;
27
+ };
28
+ viewPreference: {
29
+ type: PropType<SparqAssetPickerViewPreference>;
30
+ default: undefined;
31
+ };
32
+ }>> & Readonly<{}>, {
33
+ uiKit: UiKit;
34
+ viewPreference: SparqAssetPickerViewPreference;
35
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
36
+ //# sourceMappingURL=AssetPickerRoot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetPickerRoot.d.ts","sourceRoot":"","sources":["../../../src/asset/picker/AssetPickerRoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8D,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAA;AAY/F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAGrC,OAAO,KAAK,EAER,qBAAqB,EAIrB,8BAA8B,EACjC,MAAM,SAAS,CAAA;AAchB,eAAO,MAAM,eAAe;;cAIA,QAAQ,CAAC,qBAAqB,CAAC;;;;cAI/B,QAAQ,CAAC,KAAK,CAAC;;;;cAIf,QAAQ,CAAC,8BAA8B,CAAC;;;;;;;cARxC,QAAQ,CAAC,qBAAqB,CAAC;;;;cAI/B,QAAQ,CAAC,KAAK,CAAC;;;;cAIf,QAAQ,CAAC,8BAA8B,CAAC;;;;;;4EA6ZlE,CAAA"}
@@ -0,0 +1,38 @@
1
+ import { type VNode } from 'vue';
2
+ import type { SparqAsset, SparqAssetType } from '../service';
3
+ import type { SparqAssetPreviewRegistry } from '../preview';
4
+ import type { UiKit } from '../../ui';
5
+ import type { AssetPickerRequest, SparqAssetListPayload, SparqAssetOption } from './types';
6
+ export type AssetPickerView = 'grid' | 'list';
7
+ export interface AssetPickerServerState {
8
+ ui: UiKit;
9
+ assetPreviews?: SparqAssetPreviewRegistry;
10
+ request: AssetPickerRequest;
11
+ view: AssetPickerView;
12
+ search: {
13
+ title: string;
14
+ type: string;
15
+ page: number;
16
+ limit: number;
17
+ group: string;
18
+ };
19
+ payload: SparqAssetListPayload;
20
+ loading: boolean;
21
+ totalPages: number;
22
+ typeOptions: SparqAssetOption[];
23
+ groupOptions: SparqAssetOption[];
24
+ pickerType: SparqAssetType | undefined;
25
+ selected: SparqAsset[];
26
+ setView: (view: AssetPickerView) => void;
27
+ submitSearch: () => void;
28
+ loadAssets: () => void;
29
+ toggleAsset: (asset: SparqAsset) => void;
30
+ confirmAsset: (asset: SparqAsset) => void;
31
+ openPreview: (asset: SparqAsset) => void;
32
+ isSameAsset: (left: SparqAsset, right: SparqAsset) => boolean;
33
+ canSelectAsset: (asset: SparqAsset, pickerType: SparqAssetType | undefined) => boolean;
34
+ resolveLimit: (request: AssetPickerRequest | undefined) => number;
35
+ handleAssetGridKeydown: (event: KeyboardEvent) => void;
36
+ }
37
+ export declare function renderServerPanel(state: AssetPickerServerState): VNode;
38
+ //# sourceMappingURL=AssetPickerServerPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetPickerServerPanel.d.ts","sourceRoot":"","sources":["../../../src/asset/picker/AssetPickerServerPanel.tsx"],"names":[],"mappings":"AACA,OAAO,EAAK,KAAK,KAAK,EAAE,MAAM,KAAK,CAAA;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAErC,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1F,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7C,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,KAAK,CAAA;IACT,aAAa,CAAC,EAAE,yBAAyB,CAAA;IACzC,OAAO,EAAE,kBAAkB,CAAA;IAC3B,IAAI,EAAE,eAAe,CAAA;IACrB,MAAM,EAAE;QACJ,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,OAAO,EAAE,qBAAqB,CAAA;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,gBAAgB,EAAE,CAAA;IAC/B,YAAY,EAAE,gBAAgB,EAAE,CAAA;IAChC,UAAU,EAAE,cAAc,GAAG,SAAS,CAAA;IACtC,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,OAAO,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;IACxC,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACxC,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACzC,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACxC,WAAW,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,KAAK,OAAO,CAAA;IAC7D,cAAc,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,GAAG,SAAS,KAAK,OAAO,CAAA;IACtF,YAAY,EAAE,CAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS,KAAK,MAAM,CAAA;IACjE,sBAAsB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAA;CACzD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,KAAK,CA8EtE"}
@@ -0,0 +1,4 @@
1
+ export { createAssetPickerService } from './service';
2
+ export { AssetPickerRoot } from './AssetPickerRoot';
3
+ export type { AssetPickerRequest, AssetPickerRequestRef, CreateAssetPickerServiceOptions, SparqAssetListPayload, SparqAssetListQuery, SparqAssetOption, SparqAssetPickerView, SparqAssetPickerViewPreference, SparqAssetRemotePayload, } from './types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/asset/picker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,YAAY,EACR,kBAAkB,EAClB,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,8BAA8B,EAC9B,uBAAuB,GAC1B,MAAM,SAAS,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { SparqAssetService } from '../service';
2
+ import type { CreateAssetPickerServiceOptions } from './types';
3
+ export declare function createAssetPickerService(options: CreateAssetPickerServiceOptions): SparqAssetService;
4
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/asset/picker/service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE/D,OAAO,KAAK,EAAsB,+BAA+B,EAAE,MAAM,SAAS,CAAA;AAElF,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,+BAA+B,GAAG,iBAAiB,CA2CpG"}
@@ -0,0 +1,50 @@
1
+ import type { Ref } from 'vue';
2
+ import type { SparqAsset, SparqAssetPickOptions, SparqAssetService } from '../service';
3
+ import type { UiKit } from '../../ui';
4
+ export interface SparqAssetOption {
5
+ label: string;
6
+ value: string;
7
+ }
8
+ export interface SparqAssetListQuery {
9
+ type?: string;
10
+ title?: string;
11
+ page: number;
12
+ limit: number;
13
+ group?: string;
14
+ field?: string;
15
+ props?: Record<string, unknown>;
16
+ }
17
+ export interface SparqAssetListPayload {
18
+ results: SparqAsset[];
19
+ total: number;
20
+ groups?: SparqAssetOption[];
21
+ types?: SparqAssetOption[];
22
+ }
23
+ export interface SparqAssetRemotePayload {
24
+ url: string;
25
+ local?: boolean;
26
+ type?: string;
27
+ field?: string;
28
+ props?: Record<string, unknown>;
29
+ }
30
+ export type SparqAssetPickerView = 'grid' | 'list';
31
+ export interface SparqAssetPickerViewPreference {
32
+ read?: () => SparqAssetPickerView | undefined;
33
+ write?: (view: SparqAssetPickerView) => void;
34
+ }
35
+ export interface CreateAssetPickerServiceOptions {
36
+ upload: SparqAssetService['upload'];
37
+ list?: (query: SparqAssetListQuery) => Promise<SparqAssetListPayload>;
38
+ addRemote?: (payload: SparqAssetRemotePayload) => Promise<SparqAsset | null | undefined>;
39
+ uiKit?: UiKit;
40
+ mountTarget?: HTMLElement | (() => HTMLElement | undefined);
41
+ viewPreference?: SparqAssetPickerViewPreference;
42
+ }
43
+ export interface AssetPickerRequest {
44
+ config: CreateAssetPickerServiceOptions;
45
+ options: SparqAssetPickOptions;
46
+ resolve: (assets: SparqAsset[]) => void;
47
+ reject: (reason?: unknown) => void;
48
+ }
49
+ export type AssetPickerRequestRef = Ref<AssetPickerRequest | undefined>;
50
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/asset/picker/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9B,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACtF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAErC,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC3B,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACpC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,MAAM,CAAA;AAElD,MAAM,WAAW,8BAA8B;IAC3C,IAAI,CAAC,EAAE,MAAM,oBAAoB,GAAG,SAAS,CAAA;IAC7C,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAA;CAC/C;AAED,MAAM,WAAW,+BAA+B;IAC5C,MAAM,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACnC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAA;IACrE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,OAAO,CAAC,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;IACxF,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,WAAW,CAAC,EAAE,WAAW,GAAG,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC,CAAA;IAC3D,cAAc,CAAC,EAAE,8BAA8B,CAAA;CAClD;AAED,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,+BAA+B,CAAA;IACvC,OAAO,EAAE,qBAAqB,CAAA;IAC9B,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,IAAI,CAAA;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;CACrC;AAED,MAAM,MAAM,qBAAqB,GAAG,GAAG,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAA"}
@@ -0,0 +1,64 @@
1
+ import { type PropType, type Ref, type VNode } from 'vue';
2
+ import type { SparqAsset, SparqAssetType } from '../service';
3
+ import { type SparqAssetPreviewDefinition, type SparqAssetPreviewRegistry } from './registry';
4
+ export type AssetPreviewSize = 'card' | 'thumb';
5
+ export interface AssetPreviewState {
6
+ asset: Ref<SparqAsset | undefined>;
7
+ scale: Ref<number>;
8
+ rotate: Ref<number>;
9
+ loading: Ref<boolean>;
10
+ failed: Ref<boolean>;
11
+ open: (asset: SparqAsset) => void;
12
+ close: () => void;
13
+ markLoaded: () => void;
14
+ markFailed: () => void;
15
+ zoomIn: () => void;
16
+ zoomOut: () => void;
17
+ rotateLeft: () => void;
18
+ rotateRight: () => void;
19
+ reset: () => void;
20
+ }
21
+ export interface AssetPreviewDialogOptions {
22
+ close: () => void;
23
+ scale?: number;
24
+ rotate?: number;
25
+ loading?: boolean;
26
+ failed?: boolean;
27
+ onLoad?: () => void;
28
+ onError?: () => void;
29
+ zoomIn?: () => void;
30
+ zoomOut?: () => void;
31
+ rotateLeft?: () => void;
32
+ rotateRight?: () => void;
33
+ reset?: () => void;
34
+ }
35
+ /** renderer 默认安装的图片预览实现,插件可以使用更高层级或同 key 覆盖。 */
36
+ export declare const builtInImageAssetPreview: SparqAssetPreviewDefinition;
37
+ export declare const AssetPreviewDialog: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
38
+ asset: {
39
+ type: PropType<SparqAsset>;
40
+ required: true;
41
+ };
42
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
43
+ [key: string]: any;
44
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
45
+ close: () => true;
46
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
47
+ asset: {
48
+ type: PropType<SparqAsset>;
49
+ required: true;
50
+ };
51
+ }>> & Readonly<{
52
+ onClose?: (() => any) | undefined;
53
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
54
+ export declare function createAssetPreviewState(): AssetPreviewState;
55
+ export declare function renderAssetPreviewDialog(asset: SparqAsset, options: (() => void) | AssetPreviewDialogOptions, registry?: SparqAssetPreviewRegistry): VNode;
56
+ export declare function renderAssetPreviewThumb(asset: SparqAsset, size: AssetPreviewSize, openPreview?: (asset: SparqAsset) => void, registry?: SparqAssetPreviewRegistry): VNode;
57
+ export declare function resolveAssetLabel(asset: SparqAsset): string;
58
+ export declare function resolveAssetSummary(asset: SparqAsset): string;
59
+ export declare function resolveAssetTypeLabel(type: SparqAssetType): string;
60
+ export declare function resolveAssetType(asset: SparqAsset): SparqAssetType;
61
+ export declare function resolveAssetFileLabel(asset: SparqAsset): string;
62
+ export declare function isPreviewableAsset(asset: SparqAsset, registry?: SparqAssetPreviewRegistry): boolean;
63
+ export declare function formatAssetSize(size: number | undefined): string;
64
+ //# sourceMappingURL=AssetPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetPreview.d.ts","sourceRoot":"","sources":["../../../src/asset/preview/AssetPreview.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './AssetPreview';
2
+ export * from './registry';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/asset/preview/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA"}
@@ -0,0 +1,35 @@
1
+ import { type VNode } from 'vue';
2
+ import type { SchemaRendererContributionPoint, SchemaRendererKernel } from '../../registry';
3
+ import type { SparqAsset } from '../service';
4
+ import type { AssetPreviewDialogOptions, AssetPreviewSize } from './AssetPreview';
5
+ /** 插件提供的单类资源预览实现。matcher 决定该实现是否适用于当前资源。 */
6
+ export interface SparqAssetPreviewDefinition {
7
+ /** 预览实现的稳定标识,用于覆盖、诊断和卸载恢复。 */
8
+ key: string;
9
+ /** 同层级存在多个匹配实现时,数值更大的实现优先。 */
10
+ priority?: number;
11
+ /** 根据资源类型、MIME、扩展名或插件元数据判断是否支持该资源。 */
12
+ matcher: (asset: SparqAsset) => boolean;
13
+ /** 渲染完整预览弹窗;实现负责关闭入口、加载状态和键盘交互。 */
14
+ renderDialog: (asset: SparqAsset, options: AssetPreviewDialogOptions) => VNode;
15
+ /** 渲染缩略内容;外层点击行为和统一尺寸由 renderer 管理。 */
16
+ renderThumb?: (asset: SparqAsset, size: AssetPreviewSize) => VNode;
17
+ }
18
+ /** 根据资源解析当前生效预览实现的领域注册表。 */
19
+ export interface SparqAssetPreviewRegistry {
20
+ /** 按贡献层级、同层 priority 和最近安装顺序返回第一个 matcher 命中的实现。 */
21
+ resolve(asset: SparqAsset): SparqAssetPreviewDefinition | undefined;
22
+ /** 返回当前生效实现,供插件管理和诊断界面展示。 */
23
+ entries(): readonly SparqAssetPreviewDefinition[];
24
+ }
25
+ /** Schema Vue 资源预览贡献点。 */
26
+ export declare const schemaRendererAssetPreviewPoint: SchemaRendererContributionPoint<SparqAssetPreviewDefinition>;
27
+ /** 创建随 Kernel 安装和卸载自动失效的资源预览注册表。 */
28
+ export declare function createLiveSparqAssetPreviewRegistry(kernel: SchemaRendererKernel): SparqAssetPreviewRegistry;
29
+ /**
30
+ * 获取当前 Vue 应用提供的资源预览注册表。
31
+ *
32
+ * 未安装 renderer 时返回 undefined,由纯渲染函数继续使用内置图片预览和文件占位回退。
33
+ */
34
+ export declare function useSparqAssetPreviewRegistry(): SparqAssetPreviewRegistry | undefined;
35
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/asset/preview/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,KAAK,EAAE,MAAM,KAAK,CAAA;AAEpD,OAAO,KAAK,EACR,+BAA+B,EAE/B,oBAAoB,EACvB,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjF,4CAA4C;AAC5C,MAAM,WAAW,2BAA2B;IACxC,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sCAAsC;IACtC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAA;IACvC,mCAAmC;IACnC,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB,KAAK,KAAK,CAAA;IAC9E,uCAAuC;IACvC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,KAAK,KAAK,CAAA;CACrE;AAED,4BAA4B;AAC5B,MAAM,WAAW,yBAAyB;IACtC,oDAAoD;IACpD,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,2BAA2B,GAAG,SAAS,CAAA;IACnE,6BAA6B;IAC7B,OAAO,IAAI,SAAS,2BAA2B,EAAE,CAAA;CACpD;AAED,0BAA0B;AAC1B,eAAO,MAAM,+BAA+B,EAEvC,+BAA+B,CAAC,2BAA2B,CAAC,CAAA;AAEjE,oCAAoC;AACpC,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,oBAAoB,GAAG,yBAAyB,CAE3G;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,yBAAyB,GAAG,SAAS,CAEpF"}
@@ -0,0 +1,39 @@
1
+ import type { AssetDescriptor, AssetType } from '@sparqjs/schema-protocol';
2
+ export type SparqAssetType = AssetType;
3
+ export type SparqAsset = AssetDescriptor;
4
+ export interface SparqUploadOptions {
5
+ type?: SparqAssetType;
6
+ accept?: string;
7
+ multiple?: boolean;
8
+ maxSize?: number;
9
+ title?: string;
10
+ group?: string;
11
+ field?: string;
12
+ props?: Record<string, unknown>;
13
+ }
14
+ /** 上传执行期间由调用方提供的取消信号和进度接收器。 */
15
+ export interface SparqUploadExecution {
16
+ signal?: AbortSignal;
17
+ onProgress?: (progress: number) => void;
18
+ onPhase?: (phase: SparqUploadPhase) => void;
19
+ }
20
+ export interface SparqAssetPickOptions extends SparqUploadOptions {
21
+ limit?: number;
22
+ }
23
+ export type SparqUploadPhase = 'preparing' | 'hashing' | 'uploading' | 'completing';
24
+ export type SparqUploadTaskStatus = 'pending' | 'uploading' | 'success' | 'error' | 'canceled';
25
+ export interface SparqUploadTask {
26
+ id: string;
27
+ file: File;
28
+ progress: number;
29
+ status: SparqUploadTaskStatus;
30
+ phase?: SparqUploadPhase;
31
+ asset?: SparqAsset;
32
+ error?: Error;
33
+ }
34
+ export interface SparqAssetService {
35
+ upload(file: File, options: SparqUploadOptions, execution?: SparqUploadExecution): Promise<SparqAsset>;
36
+ pick?(options: SparqAssetPickOptions): Promise<SparqAsset[]>;
37
+ setUiKit?(uiKit: import('../ui').UiKit): void;
38
+ }
39
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/asset/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAE1E,MAAM,MAAM,cAAc,GAAG,SAAS,CAAA;AACtC,MAAM,MAAM,UAAU,GAAG,eAAe,CAAA;AAExC,MAAM,WAAW,kBAAkB;IAC/B,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED,+BAA+B;AAC/B,MAAM,WAAW,oBAAoB;IACjC,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;CAC9C;AAED,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,YAAY,CAAA;AAEnF,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAA;AAE9F,MAAM,WAAW,eAAe;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,qBAAqB,CAAA;IAC7B,KAAK,CAAC,EAAE,gBAAgB,CAAA;IACxB,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAA;CAChB;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,EAAE,SAAS,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACtG,IAAI,CAAC,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;IAC5D,QAAQ,CAAC,CAAC,KAAK,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,IAAI,CAAA;CAChD"}
@@ -0,0 +1,82 @@
1
+ import { type PropType } from 'vue';
2
+ import type { SparqUploadTask } from '../service';
3
+ export declare const SparqAssetUploadPanel: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ tasks: {
5
+ type: PropType<SparqUploadTask[]>;
6
+ default: () => never[];
7
+ };
8
+ accept: {
9
+ type: StringConstructor;
10
+ default: undefined;
11
+ };
12
+ multiple: {
13
+ type: BooleanConstructor;
14
+ default: boolean;
15
+ };
16
+ disabled: {
17
+ type: BooleanConstructor;
18
+ default: boolean;
19
+ };
20
+ compact: {
21
+ type: BooleanConstructor;
22
+ default: boolean;
23
+ };
24
+ removable: {
25
+ type: BooleanConstructor;
26
+ default: boolean;
27
+ };
28
+ emptyText: {
29
+ type: StringConstructor;
30
+ default: string;
31
+ };
32
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
33
+ [key: string]: any;
34
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
35
+ addFiles: (_files: File[]) => true;
36
+ cancel: (_task: SparqUploadTask) => true;
37
+ retry: (_task: SparqUploadTask) => true;
38
+ remove: (_task: SparqUploadTask) => true;
39
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
40
+ tasks: {
41
+ type: PropType<SparqUploadTask[]>;
42
+ default: () => never[];
43
+ };
44
+ accept: {
45
+ type: StringConstructor;
46
+ default: undefined;
47
+ };
48
+ multiple: {
49
+ type: BooleanConstructor;
50
+ default: boolean;
51
+ };
52
+ disabled: {
53
+ type: BooleanConstructor;
54
+ default: boolean;
55
+ };
56
+ compact: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
60
+ removable: {
61
+ type: BooleanConstructor;
62
+ default: boolean;
63
+ };
64
+ emptyText: {
65
+ type: StringConstructor;
66
+ default: string;
67
+ };
68
+ }>> & Readonly<{
69
+ onCancel?: ((_task: SparqUploadTask) => any) | undefined;
70
+ onAddFiles?: ((_files: File[]) => any) | undefined;
71
+ onRetry?: ((_task: SparqUploadTask) => any) | undefined;
72
+ onRemove?: ((_task: SparqUploadTask) => any) | undefined;
73
+ }>, {
74
+ tasks: SparqUploadTask[];
75
+ accept: string;
76
+ multiple: boolean;
77
+ disabled: boolean;
78
+ compact: boolean;
79
+ removable: boolean;
80
+ emptyText: string;
81
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
82
+ //# sourceMappingURL=AssetUploadPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetUploadPanel.d.ts","sourceRoot":"","sources":["../../../src/asset/upload/AssetUploadPanel.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAA;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEjD,eAAO,MAAM,qBAAqB;;cAIP,QAAQ,CAAC,eAAe,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA6B3B,IAAI,EAAE;oBACT,eAAe;mBAChB,eAAe;oBACd,eAAe;;;cAhCZ,QAAQ,CAAC,eAAe,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EAoGpD,CAAA"}
@@ -0,0 +1,59 @@
1
+ import type { SparqAsset, SparqAssetService, SparqUploadExecution, SparqUploadOptions } from '../service';
2
+ import { hashSparqUploadFile } from './hash-file';
3
+ export declare const defaultSparqMultipartThreshold: number;
4
+ export interface SparqMultipartMetadata {
5
+ title: string;
6
+ original_title: string;
7
+ bucket?: string;
8
+ content_type?: string;
9
+ driver?: string;
10
+ visibility?: string;
11
+ group_code?: string;
12
+ metadata?: Record<string, unknown>;
13
+ md5?: string;
14
+ sha256?: string;
15
+ }
16
+ export interface SparqPrepareUploadInput extends SparqMultipartMetadata {
17
+ size: number;
18
+ }
19
+ export interface SparqPrepareUploadResult {
20
+ exists: boolean;
21
+ asset?: SparqAsset;
22
+ bucket?: string;
23
+ key: string;
24
+ upload_id?: string;
25
+ part_size?: number;
26
+ }
27
+ export interface SparqUploadedPart {
28
+ part_no: number;
29
+ size: number;
30
+ etag?: string;
31
+ }
32
+ export interface SparqMultipartUploadTransport {
33
+ uploadDirect(file: File, options: SparqUploadOptions, execution?: SparqUploadExecution): Promise<SparqAsset>;
34
+ prepare(input: SparqPrepareUploadInput, signal?: AbortSignal): Promise<SparqPrepareUploadResult>;
35
+ uploadPart(input: {
36
+ upload_id: string;
37
+ part_no: number;
38
+ file: Blob;
39
+ }, execution?: {
40
+ signal?: AbortSignal;
41
+ onProgress?: (loaded: number) => void;
42
+ }): Promise<SparqUploadedPart>;
43
+ listParts(uploadId: string, signal?: AbortSignal): Promise<SparqUploadedPart[]>;
44
+ complete(input: SparqMultipartMetadata & {
45
+ upload_id: string;
46
+ key: string;
47
+ }, signal?: AbortSignal): Promise<SparqAsset>;
48
+ abort(uploadId: string): Promise<void>;
49
+ }
50
+ export interface CreateSparqUploadExecutorOptions {
51
+ multipartThreshold?: number;
52
+ partConcurrency?: number;
53
+ partRetries?: number;
54
+ hashFile?: typeof hashSparqUploadFile;
55
+ resolveMetadata?: (file: File, options: SparqUploadOptions) => SparqMultipartMetadata;
56
+ }
57
+ /** 创建普通上传与分片上传共用的执行入口,调用方只提供强类型传输实现。 */
58
+ export declare function createSparqUploadExecutor(transport: SparqMultipartUploadTransport, options?: CreateSparqUploadExecutorOptions): SparqAssetService['upload'];
59
+ //# sourceMappingURL=executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/asset/upload/executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { SparqUploadOptions } from '../service';
2
+ export type SparqUploadValidationCode = 'type_not_allowed' | 'file_too_large';
3
+ export declare class SparqUploadValidationError extends Error {
4
+ readonly code: SparqUploadValidationCode;
5
+ constructor(code: SparqUploadValidationCode, message: string);
6
+ }
7
+ export interface SparqUploadFileFilterResult {
8
+ accepted: File[];
9
+ rejected: Array<{
10
+ file: File;
11
+ error: SparqUploadValidationError;
12
+ }>;
13
+ }
14
+ export declare function validateSparqUploadFile(file: File, options: Pick<SparqUploadOptions, 'accept' | 'maxSize' | 'type'>): SparqUploadValidationError | undefined;
15
+ export declare function filterSparqUploadFiles(files: readonly File[], options: Pick<SparqUploadOptions, 'accept' | 'maxSize' | 'type'>): SparqUploadFileFilterResult;
16
+ //# sourceMappingURL=files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../../src/asset/upload/files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,MAAM,MAAM,yBAAyB,GAAG,kBAAkB,GAAG,gBAAgB,CAAA;AAE7E,qBAAa,0BAA2B,SAAQ,KAAK;IAE7C,QAAQ,CAAC,IAAI,EAAE,yBAAyB;gBAA/B,IAAI,EAAE,yBAAyB,EACxC,OAAO,EAAE,MAAM;CAKtB;AAED,MAAM,WAAW,2BAA2B;IACxC,QAAQ,EAAE,IAAI,EAAE,CAAA;IAChB,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,0BAA0B,CAAA;KAAE,CAAC,CAAA;CACrE;AAED,wBAAgB,uBAAuB,CACnC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC,GACjE,0BAA0B,GAAG,SAAS,CAQxC;AAED,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC,GACjE,2BAA2B,CAS7B"}
@@ -0,0 +1,7 @@
1
+ export interface SparqFileHashes {
2
+ md5: string;
3
+ sha256: string;
4
+ }
5
+ /** 在独立 Worker 中增量计算文件指纹;Worker 或 WASM 不可用时由上层降级为无指纹上传。 */
6
+ export declare function hashSparqUploadFile(file: File, signal?: AbortSignal, onProgress?: (progress: number) => void): Promise<SparqFileHashes>;
7
+ //# sourceMappingURL=hash-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash-file.d.ts","sourceRoot":"","sources":["../../../src/asset/upload/hash-file.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;CACjB;AAoBD,0DAA0D;AAC1D,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,WAAW,EACpB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,GACxC,OAAO,CAAC,eAAe,CAAC,CAgC1B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hash-worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash-worker.d.ts","sourceRoot":"","sources":["../../../src/asset/upload/hash-worker.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAE,CAAA"}
@@ -0,0 +1,6 @@
1
+ export { SparqAssetUploadPanel } from './AssetUploadPanel';
2
+ export * from './files';
3
+ export * from './queue';
4
+ export * from './executor';
5
+ export * from './hash-file';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/asset/upload/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA"}
@@ -0,0 +1,23 @@
1
+ import { type ShallowRef } from 'vue';
2
+ import type { SparqAsset, SparqAssetService, SparqUploadOptions, SparqUploadTask } from '../service';
3
+ export interface SparqUploadQueueOptions {
4
+ upload: SparqAssetService['upload'];
5
+ concurrency?: number;
6
+ autoStart?: boolean;
7
+ onSuccess?: (asset: SparqAsset, task: SparqUploadTask) => void;
8
+ onError?: (error: Error, task: SparqUploadTask) => void;
9
+ }
10
+ export interface SparqUploadQueue {
11
+ tasks: ShallowRef<SparqUploadTask[]>;
12
+ add(files: readonly File[], options: SparqUploadOptions): SparqUploadTask[];
13
+ waitFor(tasks: readonly SparqUploadTask[]): Promise<SparqUploadTask[]>;
14
+ start(): void;
15
+ cancel(task: SparqUploadTask | string): void;
16
+ retry(task: SparqUploadTask | string): void;
17
+ remove(task: SparqUploadTask | string): void;
18
+ clearFinished(): void;
19
+ reset(): void;
20
+ }
21
+ /** 创建由调用方上传执行器驱动的内存队列;队列生命周期和清理由持有方负责。 */
22
+ export declare function createSparqUploadQueue(options: SparqUploadQueueOptions): SparqUploadQueue;
23
+ //# sourceMappingURL=queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/asset/upload/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,KAAK,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAGpG,MAAM,WAAW,uBAAuB;IACpC,MAAM,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACnC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;IAC9D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;CAC1D;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC,CAAA;IACpC,GAAG,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,OAAO,EAAE,kBAAkB,GAAG,eAAe,EAAE,CAAA;IAC3E,OAAO,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAA;IACtE,KAAK,IAAI,IAAI,CAAA;IACb,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAAA;IAC5C,KAAK,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAAA;IAC3C,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAAA;IAC5C,aAAa,IAAI,IAAI,CAAA;IACrB,KAAK,IAAI,IAAI,CAAA;CAChB;AAID,0CAA0C;AAC1C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,uBAAuB,GAAG,gBAAgB,CAiMzF"}