@uploadcare/file-uploader 1.15.0-alpha.12 → 1.15.0-alpha.13

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 (191) hide show
  1. package/abstract/ActivityBlock.d.ts +5 -5
  2. package/abstract/ActivityBlock.d.ts.map +1 -1
  3. package/abstract/Block.d.ts +3 -9
  4. package/abstract/Block.d.ts.map +1 -1
  5. package/abstract/CTX.d.ts +6 -6
  6. package/abstract/CTX.d.ts.map +1 -1
  7. package/abstract/LocaleManager.d.ts +3 -3
  8. package/abstract/LocaleManager.d.ts.map +1 -1
  9. package/abstract/ModalManager.d.ts +13 -18
  10. package/abstract/ModalManager.d.ts.map +1 -1
  11. package/abstract/ModalManager.js +19 -10
  12. package/abstract/SecureUploadsManager.d.ts +2 -2
  13. package/abstract/SecureUploadsManager.d.ts.map +1 -1
  14. package/abstract/SolutionBlock.d.ts +2 -2
  15. package/abstract/SolutionBlock.d.ts.map +1 -1
  16. package/abstract/TypedCollection.d.ts +44 -44
  17. package/abstract/TypedCollection.d.ts.map +1 -1
  18. package/abstract/TypedCollection.js +53 -33
  19. package/abstract/TypedData.d.ts +71 -25
  20. package/abstract/TypedData.d.ts.map +1 -1
  21. package/abstract/TypedData.js +74 -17
  22. package/abstract/UploaderBlock.d.ts +10 -10
  23. package/abstract/UploaderBlock.d.ts.map +1 -1
  24. package/abstract/UploaderBlock.js +22 -10
  25. package/abstract/UploaderPublicApi.d.ts +24 -23
  26. package/abstract/UploaderPublicApi.d.ts.map +1 -1
  27. package/abstract/UploaderPublicApi.js +21 -10
  28. package/abstract/ValidationManager.d.ts +121 -6
  29. package/abstract/ValidationManager.d.ts.map +1 -1
  30. package/abstract/ValidationManager.js +1 -1
  31. package/abstract/a11y.d.ts +2 -2
  32. package/abstract/a11y.d.ts.map +1 -1
  33. package/abstract/buildOutputCollectionState.d.ts +1 -1
  34. package/abstract/buildOutputCollectionState.d.ts.map +1 -1
  35. package/abstract/defineComponents.d.ts.map +1 -1
  36. package/abstract/l10nProcessor.d.ts.map +1 -1
  37. package/abstract/loadFileUploaderFrom.d.ts +1 -1
  38. package/abstract/loadFileUploaderFrom.d.ts.map +1 -1
  39. package/abstract/localeRegistry.d.ts.map +1 -1
  40. package/abstract/sharedConfigKey.d.ts.map +1 -1
  41. package/abstract/uploadEntrySchema.d.ts +119 -63
  42. package/abstract/uploadEntrySchema.d.ts.map +1 -1
  43. package/abstract/uploadEntrySchema.js +62 -81
  44. package/blocks/CameraSource/CameraSource.d.ts +9 -9
  45. package/blocks/CameraSource/CameraSource.d.ts.map +1 -1
  46. package/blocks/CameraSource/calcCameraModes.d.ts +1 -1
  47. package/blocks/CameraSource/constants.d.ts.map +1 -1
  48. package/blocks/CloudImageEditor/src/CloudImageEditorBlock.d.ts.map +1 -1
  49. package/blocks/CloudImageEditor/src/CropFrame.d.ts +1 -1
  50. package/blocks/CloudImageEditor/src/EditorImageCropper.d.ts +3 -3
  51. package/blocks/CloudImageEditor/src/EditorImageFader.d.ts +1 -1
  52. package/blocks/CloudImageEditor/src/EditorImageFader.d.ts.map +1 -1
  53. package/blocks/CloudImageEditor/src/EditorSlider.d.ts +1 -1
  54. package/blocks/CloudImageEditor/src/EditorSlider.d.ts.map +1 -1
  55. package/blocks/CloudImageEditor/src/EditorToolbar.d.ts +1 -1
  56. package/blocks/CloudImageEditor/src/crop-utils.d.ts +14 -14
  57. package/blocks/CloudImageEditor/src/crop-utils.d.ts.map +1 -1
  58. package/blocks/CloudImageEditor/src/cropper-constants.d.ts.map +1 -1
  59. package/blocks/CloudImageEditor/src/lib/applyFocusVisiblePolyfill.d.ts +1 -1
  60. package/blocks/CloudImageEditor/src/lib/applyFocusVisiblePolyfill.d.ts.map +1 -1
  61. package/blocks/CloudImageEditor/src/lib/parseCropPreset.d.ts +1 -1
  62. package/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts +3 -3
  63. package/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts.map +1 -1
  64. package/blocks/CloudImageEditor/src/state.d.ts +4 -4
  65. package/blocks/CloudImageEditor/src/svg-sprite.d.ts.map +1 -1
  66. package/blocks/CloudImageEditor/src/types.d.ts +8 -58
  67. package/blocks/CloudImageEditor/src/types.d.ts.map +1 -1
  68. package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts +5 -2
  69. package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts.map +1 -1
  70. package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.js +7 -3
  71. package/blocks/Config/Config.d.ts +3 -12
  72. package/blocks/Config/Config.d.ts.map +1 -1
  73. package/blocks/Config/assertions.d.ts +1 -1
  74. package/blocks/Config/initialConfig.d.ts +1 -1
  75. package/blocks/Config/initialConfig.d.ts.map +1 -1
  76. package/blocks/Config/initialConfig.js +1 -1
  77. package/blocks/Config/normalizeConfigValue.d.ts.map +1 -1
  78. package/blocks/Config/side-effects.d.ts.map +1 -1
  79. package/blocks/Config/validatorsType.d.ts +1 -1
  80. package/blocks/Config/validatorsType.d.ts.map +1 -1
  81. package/blocks/DropArea/DropArea.d.ts +2 -2
  82. package/blocks/DropArea/DropArea.d.ts.map +1 -1
  83. package/blocks/DropArea/addDropzone.d.ts.map +1 -1
  84. package/blocks/DropArea/drop-area.css +4 -2
  85. package/blocks/DropArea/getDropItems.d.ts +2 -2
  86. package/blocks/DropArea/getDropItems.d.ts.map +1 -1
  87. package/blocks/ExternalSource/ExternalSource.d.ts +3 -3
  88. package/blocks/ExternalSource/ExternalSource.d.ts.map +1 -1
  89. package/blocks/ExternalSource/MessageBridge.d.ts +3 -3
  90. package/blocks/ExternalSource/MessageBridge.d.ts.map +1 -1
  91. package/blocks/ExternalSource/query-string.d.ts.map +1 -1
  92. package/blocks/ExternalSource/types.d.ts +64 -64
  93. package/blocks/ExternalSource/types.d.ts.map +1 -1
  94. package/blocks/FileItem/FileItem.d.ts +20 -24
  95. package/blocks/FileItem/FileItem.d.ts.map +1 -1
  96. package/blocks/FileItem/FileItem.js +120 -121
  97. package/blocks/FileItem/file-item.css +29 -6
  98. package/blocks/Img/ImgBase.d.ts +3 -3
  99. package/blocks/Img/ImgBase.d.ts.map +1 -1
  100. package/blocks/Img/ImgBase.js +9 -9
  101. package/blocks/Img/ImgConfig.d.ts.map +1 -1
  102. package/blocks/Img/configurations.d.ts.map +1 -1
  103. package/blocks/Modal/Modal.d.ts +4 -4
  104. package/blocks/Modal/Modal.d.ts.map +1 -1
  105. package/blocks/ProgressBar/ProgressBar.d.ts +6 -1
  106. package/blocks/ProgressBar/ProgressBar.d.ts.map +1 -1
  107. package/blocks/ProgressBar/ProgressBar.js +44 -42
  108. package/blocks/Range/Range.d.ts.map +1 -1
  109. package/blocks/SimpleBtn/SimpleBtn.d.ts +2 -2
  110. package/blocks/SimpleBtn/SimpleBtn.d.ts.map +1 -1
  111. package/blocks/SourceBtn/SourceBtn.d.ts +2 -5
  112. package/blocks/SourceBtn/SourceBtn.d.ts.map +1 -1
  113. package/blocks/SourceBtn/SourceBtn.js +5 -5
  114. package/blocks/SourceList/SourceList.js +2 -2
  115. package/blocks/Spinner/Spinner.d.ts.map +1 -1
  116. package/blocks/Thumb/Thumb.d.ts +22 -6
  117. package/blocks/Thumb/Thumb.d.ts.map +1 -1
  118. package/blocks/Thumb/Thumb.js +73 -21
  119. package/blocks/UploadCtxProvider/EventEmitter.d.ts +20 -20
  120. package/blocks/UploadCtxProvider/EventEmitter.d.ts.map +1 -1
  121. package/blocks/UploadCtxProvider/UploadCtxProvider.d.ts +4 -4
  122. package/blocks/UploadCtxProvider/UploadCtxProvider.d.ts.map +1 -1
  123. package/blocks/UploadList/UploadList.d.ts +3 -3
  124. package/blocks/UploadList/UploadList.d.ts.map +1 -1
  125. package/blocks/svg-backgrounds/svg-backgrounds.d.ts +3 -3
  126. package/blocks/svg-backgrounds/svg-backgrounds.d.ts.map +1 -1
  127. package/blocks/themes/uc-basic/svg-sprite.d.ts.map +1 -1
  128. package/blocks/utils/UploadSource.d.ts.map +1 -1
  129. package/blocks/utils/debounce.d.ts +3 -1
  130. package/blocks/utils/debounce.d.ts.map +1 -1
  131. package/blocks/utils/resizeImage.d.ts +1 -1
  132. package/blocks/utils/resizeImage.d.ts.map +1 -1
  133. package/blocks/utils/throttle.d.ts +3 -1
  134. package/blocks/utils/throttle.d.ts.map +1 -1
  135. package/blocks/utils/userAgent.d.ts +1 -1
  136. package/blocks/utils/userAgent.d.ts.map +1 -1
  137. package/env.d.ts.map +1 -1
  138. package/index.ssr.js +1 -1
  139. package/package.json +6 -5
  140. package/solutions/file-uploader/inline/FileUploaderInline.d.ts +2 -2
  141. package/solutions/file-uploader/inline/FileUploaderInline.d.ts.map +1 -1
  142. package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts +10 -10
  143. package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts.map +1 -1
  144. package/solutions/file-uploader/minimal/index.css +5 -0
  145. package/solutions/file-uploader/regular/FileUploaderRegular.d.ts +2 -2
  146. package/solutions/file-uploader/regular/FileUploaderRegular.d.ts.map +1 -1
  147. package/types/jsx.d.ts +1 -1
  148. package/utils/browser-info.d.ts +13 -0
  149. package/utils/browser-info.d.ts.map +1 -0
  150. package/utils/browser-info.js +22 -0
  151. package/utils/browser-info.test.d.ts +2 -0
  152. package/utils/browser-info.test.d.ts.map +1 -0
  153. package/utils/browser-info.test.js +109 -0
  154. package/utils/cdn-utils.d.ts +3 -3
  155. package/utils/cdn-utils.d.ts.map +1 -1
  156. package/utils/fileTypes.d.ts +5 -1
  157. package/utils/fileTypes.d.ts.map +1 -1
  158. package/utils/fileTypes.js +18 -2
  159. package/utils/getPluralForm.d.ts.map +1 -1
  160. package/utils/isSecureTokenExpired.d.ts +1 -1
  161. package/utils/memoize.d.ts.map +1 -1
  162. package/utils/mixinClass.d.ts +3 -1
  163. package/utils/mixinClass.d.ts.map +1 -1
  164. package/utils/prettyBytes.d.ts.map +1 -1
  165. package/utils/template-utils.d.ts +1 -1
  166. package/utils/template-utils.d.ts.map +1 -1
  167. package/utils/toKebabCase.d.ts.map +1 -1
  168. package/utils/transparentPixelSrc.d.ts.map +1 -1
  169. package/utils/uniqueArray.d.ts.map +1 -1
  170. package/utils/validators/collection/validateCollectionUploadError.d.ts +1 -1
  171. package/utils/validators/collection/validateMultiple.d.ts +1 -1
  172. package/utils/validators/file/validateFileType.d.ts +1 -1
  173. package/utils/validators/file/validateIsImage.d.ts +1 -1
  174. package/utils/validators/file/validateMaxSizeLimit.d.ts +1 -1
  175. package/utils/validators/file/validateUploadError.d.ts +1 -1
  176. package/utils/waitForAttribute.d.ts +1 -1
  177. package/utils/waitForAttribute.d.ts.map +1 -1
  178. package/web/file-uploader.iife.min.js +4 -4
  179. package/web/file-uploader.min.js +4 -4
  180. package/web/uc-basic.min.css +1 -1
  181. package/web/uc-cloud-image-editor.min.js +2 -2
  182. package/web/uc-file-uploader-inline.min.css +1 -1
  183. package/web/uc-file-uploader-inline.min.js +4 -4
  184. package/web/uc-file-uploader-minimal.min.css +1 -1
  185. package/web/uc-file-uploader-minimal.min.js +4 -4
  186. package/web/uc-file-uploader-regular.min.css +1 -1
  187. package/web/uc-file-uploader-regular.min.js +4 -4
  188. package/web/uc-img.min.js +1 -1
  189. package/blocks/utils/supportCapture.d.ts +0 -2
  190. package/blocks/utils/supportCapture.d.ts.map +0 -1
  191. package/blocks/utils/supportCapture.js +0 -3
@@ -46,11 +46,11 @@ export class ActivityBlock extends Block {
46
46
  registerActivity(name: string, options?: {
47
47
  onActivate?: (() => void) | undefined;
48
48
  onDeactivate?: (() => void) | undefined;
49
- } | undefined): void;
49
+ }): void;
50
50
  unregisterActivity(): void;
51
51
  get activityKey(): string;
52
52
  /** @type {ActivityParamsMap[keyof ActivityParamsMap]} */
53
- get activityParams(): import("../blocks/ExternalSource/ExternalSource.js").ActivityParams | import("../blocks/CloudImageEditorActivity/CloudImageEditorActivity.js").ActivityParams;
53
+ get activityParams(): ActivityParamsMap[keyof ActivityParamsMap];
54
54
  /** @type {String} */
55
55
  get initActivity(): string;
56
56
  /** @type {String} */
@@ -70,10 +70,10 @@ export namespace ActivityBlock {
70
70
  }>;
71
71
  }
72
72
  export type ActivityParamsMap = {
73
- 'cloud-image-edit': import('../blocks/CloudImageEditorActivity/CloudImageEditorActivity.js').ActivityParams;
74
- external: import('../blocks/ExternalSource/ExternalSource.js').ActivityParams;
73
+ "cloud-image-edit": import("../blocks/CloudImageEditorActivity/CloudImageEditorActivity.js").ActivityParams;
74
+ external: import("../blocks/ExternalSource/ExternalSource.js").ActivityParams;
75
75
  };
76
- export type RegisteredActivityType = (typeof ActivityBlock)['activities'][keyof (typeof ActivityBlock)['activities']];
76
+ export type RegisteredActivityType = (typeof ActivityBlock)["activities"][keyof (typeof ActivityBlock)["activities"]];
77
77
  export type ActivityType = RegisteredActivityType | (string & {}) | null;
78
78
  import { Block } from './Block.js';
79
79
  //# sourceMappingURL=ActivityBlock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActivityBlock.d.ts","sourceRoot":"","sources":["ActivityBlock.js"],"names":[],"mappings":"AASA;;;;;GAKG;AAEH;IA+EE;;;;;;OAMG;IACH,kCAAsC;IArFtC,iBAAiB;IACjB,kCAAuB;IAEvB;;;;;;MAA+B;IAE/B;;MAAqE;IAErE,eAAe;IACf,oBAKC;IAED,eAAe;IACf,kBAaC;IA8BD,eAAe;IACf,sBAWC;IAED,eAAe;IACf,8BAEC;IAWD,4CAEC;IAED,iCAEC;IAED;;;;;;;OAOG;IACH;4BAHiB,IAAI;8BACJ,IAAI;yBAQpB;IAED,2BAKC;IAoBD,0BAEC;IAED,yDAAyD;IACzD,oLAEC;IAED,qBAAqB;IACrB,2BAEC;IAED,qBAAqB;IACrB,2BAEC;IAED,oBA4BC;IA7KC,8CAAyB;CA8K5B;;;;;;;;;;;;gCA/LY;IACZ,kBAAsB,EAAE,OAAO,gEAAgE,EAAE,cAAc,CAAC;IAChH,UAAc,OAAO,4CAA4C,EAAE,cAAc,CAAC;CAC/E;qCAwMU,CAAC,oBAAoB,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,YAAY,CAAC,CAAC;2BAChF,sBAAsB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,IAAI;sBAnNrC,YAAY"}
1
+ {"version":3,"file":"ActivityBlock.d.ts","sourceRoot":"","sources":["ActivityBlock.js"],"names":[],"mappings":"AASA;;;;;GAKG;AAEH;IA+EE;;;;;;OAMG;IACH,kCAAsC;IArFtC,iBAAiB;IACjB,kCAAuB;IAEvB;;;;;;MAA+B;IAE/B;;MAAqE;IAErE,eAAe;IACf,oBAKC;IAED,eAAe;IACf,kBAaC;IA8BD,eAAe;IACf,sBAWC;IAED,eAAe;IACf,8BAEC;IAWD,4CAEC;IAED,iCAEC;IAED;;;;;;;OAOG;IACH,yCAHG;QAA6B,UAAU,UAAzB,IAAI;QACW,YAAY,UAA3B,IAAI;KAAwB,QAQ5C;IAED,2BAKC;IAoBD,0BAEC;IAED,yDAAyD;IACzD,sBADW,iBAAiB,CAAC,MAAM,iBAAiB,CAAC,CAGpD;IAED,qBAAqB;IACrB,2BAEC;IAED,qBAAqB;IACrB,2BAEC;IAED,oBA4BC;IA7KC,8CAAyB;CA8K5B;;;;;;;;;;;;gCA/LY;IACZ,kBAAsB,EAAE,OAAO,gEAAgE,EAAE,cAAc,CAAC;IAC5G,QAAQ,EAAE,OAAO,4CAA4C,EAAE,cAAc,CAAC;CAC/E;qCAwMU,CAAC,OAAO,aAAa,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,OAAO,aAAa,EAAE,YAAY,CAAC,CAAC;2BAChF,sBAAsB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,IAAI;sBAnNrC,YAAY"}
@@ -4,12 +4,12 @@ export class Block extends BaseComponent<any> {
4
4
  /** @type {string[]} */
5
5
  static styleAttrs: string[];
6
6
  /** @param {String} [name] */
7
- static reg(name?: string | undefined): void;
7
+ static reg(name?: string): void;
8
8
  constructor();
9
9
  /** @protected */
10
10
  protected requireCtxName: boolean;
11
11
  /** @type {import('./ActivityBlock.js').ActivityType} */
12
- activityType: import('./ActivityBlock.js').ActivityType;
12
+ activityType: import("./ActivityBlock.js").ActivityType;
13
13
  init$: {};
14
14
  /**
15
15
  * @param {String} str
@@ -41,13 +41,7 @@ export class Block extends BaseComponent<any> {
41
41
  * @param {Parameters<import('../blocks/UploadCtxProvider/EventEmitter.js').EventEmitter['emit']>[1]} [payload]
42
42
  * @param {Parameters<import('../blocks/UploadCtxProvider/EventEmitter.js').EventEmitter['emit']>[2]} [options]
43
43
  */
44
- emit(type: [type: "change" | "file-added" | "file-removed" | "file-upload-start" | "file-upload-progress" | "file-upload-success" | "file-upload-failed" | "file-url-changed" | "modal-open" | "modal-close" | "done-click" | "upload-click" | "activity-change" | "common-upload-start" | "common-upload-progress" | "common-upload-success" | "common-upload-failed" | "group-created", payload?: unknown, ({
45
- debounce?: number | boolean | undefined;
46
- } | undefined)?][0], payload?: [type: "change" | "file-added" | "file-removed" | "file-upload-start" | "file-upload-progress" | "file-upload-success" | "file-upload-failed" | "file-url-changed" | "modal-open" | "modal-close" | "done-click" | "upload-click" | "activity-change" | "common-upload-start" | "common-upload-progress" | "common-upload-success" | "common-upload-failed" | "group-created", payload?: unknown, ({
47
- debounce?: number | boolean | undefined;
48
- } | undefined)?][1], options?: [type: "change" | "file-added" | "file-removed" | "file-upload-start" | "file-upload-progress" | "file-upload-success" | "file-upload-failed" | "file-url-changed" | "modal-open" | "modal-close" | "done-click" | "upload-click" | "activity-change" | "common-upload-start" | "common-upload-progress" | "common-upload-success" | "common-upload-failed" | "group-created", payload?: unknown, ({
49
- debounce?: number | boolean | undefined;
50
- } | undefined)?][2]): void;
44
+ emit(type: Parameters<import("../blocks/UploadCtxProvider/EventEmitter.js").EventEmitter["emit"]>[0], payload?: Parameters<import("../blocks/UploadCtxProvider/EventEmitter.js").EventEmitter["emit"]>[1], options?: Parameters<import("../blocks/UploadCtxProvider/EventEmitter.js").EventEmitter["emit"]>[2]): void;
51
45
  /**
52
46
  * @param {(block: Block) => boolean} callback
53
47
  * @returns {Boolean}
@@ -1 +1 @@
1
- {"version":3,"file":"Block.d.ts","sourceRoot":"","sources":["Block.js"],"names":[],"mappings":"AAoBA;IACE,4BAA4B;IAC5B,2BADW,MAAM,GAAG,IAAI,CACS;IAEjC,uBAAuB;IACvB,mBADW,MAAM,EAAE,CACI;IAoUvB,6BAA6B;IAC7B,4CAQC;IAzRD,cAMC;IAxDD,iBAAiB;IACjB,kCAAuB;IAEvB,wDAAwD;IACxD,cADW,OAAO,oBAAoB,EAAE,YAAY,CAChC;IAEpB,UAAmB;IAEnB;;;;OAIG;IACH;;eAcC;IAED;;;;;OAKG;IACH,kBAIC;IAED;;;;OAIG;IACH,wBAJW,MAAM,YACN,MAAM,IAAI,QAKpB;IAIC,uDAAuD;IACvD,mBADW,IAAI,MAAM,EAAE,IAAI;QAAE,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAC,CACjB;IAKpC;;;;OAIG;IACH,WAJW;;qBAAuF,CAAC,CAAC,YACzF;;qBAAuF,CAAC,CAAC,YACzF;;qBAAuF,CAAC,CAAC,QASnG;IAED;;;OAGG;IACH,gCAHmB,KAAK,KAAK,OAAO,WAUnC;IAED;;;OAGG;IACH,oCAFW,GAAG,QASb;IAsED;;;OAGG;IACH,wCAEC;IAED;;;OAGG;IACH,4BAEC;IAED;;;OAGG;IACH,kCAEC;IAED,yBAAyB;IACzB,iCAEC;IAwBD;;;;OAIG;IACH,qCAMC;IAED;;;;OAIG;IACH,iCAHa,eAAe,CA6B3B;IAED,iDAAiD;IACjD,yCA8BC;IA3BG,eAAe;IACf,mBAuBE;IAKN;;;;OAIG;IACH,6HAFwD,IAAI,QAQ3D;IAED,8BAA8B;IAC9B,oBADY,OAAO,EAAE,QAWpB;CAYF;;8BAtWmC,sBAAsB;6BAc7B,mBAAmB;qBAD3B,WAAW"}
1
+ {"version":3,"file":"Block.d.ts","sourceRoot":"","sources":["Block.js"],"names":[],"mappings":"AAoBA;IACE,4BAA4B;IAC5B,2BADW,MAAM,GAAG,IAAI,CACS;IAEjC,uBAAuB;IACvB,mBADW,MAAM,EAAE,CACI;IAoUvB,6BAA6B;IAC7B,gCAQC;IAzRD,cAMC;IAxDD,iBAAiB;IACjB,kCAAuB;IAEvB,wDAAwD;IACxD,cADW,OAAO,oBAAoB,EAAE,YAAY,CAChC;IAEpB,UAAmB;IAEnB;;;;OAIG;IACH,8BAHW;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,UAiB5C;IAED;;;;;OAKG;IACH,kBAIC;IAED;;;;OAIG;IACH,wBAJW,MAAM,YACN,MAAM,IAAI,QAKpB;IAIC,uDAAuD;IACvD,mBADW,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;QAAE,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAC,CACjB;IAKpC;;;;OAIG;IACH,WAJW,UAAU,CAAC,OAAO,6CAA6C,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,YACzF,UAAU,CAAC,OAAO,6CAA6C,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,YACzF,UAAU,CAAC,OAAO,6CAA6C,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QASnG;IAED;;;OAGG;IACH,wBAHW,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,WAUnC;IAED;;;OAGG;IACH,oCAFW,GAAG,QASb;IAsED;;;OAGG;IACH,2BAHa,YAAY,CAKxB;IAED;;;OAGG;IACH,4BAEC;IAED;;;OAGG;IACH,sBAHa,IAAI,GAAG,IAAI,CAKvB;IAED,yBAAyB;IACzB,sBADW,GAAG,CAAC,KAAK,CAAC,CAGpB;IAwBD;;;;OAIG;IACH,qCAMC;IAED;;;;OAIG;IACH,iCAHa,OAAO,QAAQ,CA6B3B;IAED,iDAAiD;IACjD,WADc,OAAO,UAAU,EAAE,UAAU,CA+B1C;IA3BG,eAAe;IACf,mBAuBE;IAKN;;;;OAIG;IACH,eAJmD,CAAC,SAAvC,MAAO,OAAO,UAAU,EAAE,UAAW,OACvC,CAAC,YACD,CAAC,KAAK,EAAE,OAAO,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,QAQ3D;IAED,8BAA8B;IAC9B,oBADY,OAAO,EAAE,QAWpB;CAYF;;8BAtWmC,sBAAsB;6BAc7B,mBAAmB;qBAD3B,WAAW"}
package/abstract/CTX.d.ts CHANGED
@@ -1,25 +1,25 @@
1
1
  export function blockCtx(): {};
2
- export function activityBlockCtx(fnCtx: import('./Block').Block): {
2
+ export function activityBlockCtx(fnCtx: import("./Block").Block): {
3
3
  '*currentActivity': null;
4
4
  '*currentActivityParams': {};
5
5
  '*history': never[];
6
6
  '*historyBack': null;
7
7
  '*closeModal': () => void;
8
8
  };
9
- export function uploaderBlockCtx(fnCtx: import('./Block').Block): {
9
+ export function uploaderBlockCtx(fnCtx: import("./Block").Block): {
10
10
  '*commonProgress': number;
11
11
  '*uploadList': never[];
12
12
  '*uploadQueue': Queue;
13
13
  /** @type {ReturnType<import('../types').OutputErrorCollection>[]} */
14
- '*collectionErrors': ReturnType<import('../types').OutputErrorCollection>[];
14
+ '*collectionErrors': ReturnType<import("../types").OutputErrorCollection>[];
15
15
  /** @type {import('../types').OutputCollectionState | null} */
16
- '*collectionState': import('../types').OutputCollectionState | null;
16
+ '*collectionState': import("../types").OutputCollectionState | null;
17
17
  /** @type {import('@uploadcare/upload-client').UploadcareGroup | null} */
18
- '*groupInfo': import('@uploadcare/upload-client').UploadcareGroup | null;
18
+ '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
19
19
  /** @type {Set<string>} */
20
20
  '*uploadTrigger': Set<string>;
21
21
  /** @type {import('./SecureUploadsManager.js').SecureUploadsManager | null} */
22
- '*secureUploadsManager': import('./SecureUploadsManager.js').SecureUploadsManager | null;
22
+ '*secureUploadsManager': import("./SecureUploadsManager.js").SecureUploadsManager | null;
23
23
  '*currentActivity': null;
24
24
  '*currentActivityParams': {};
25
25
  '*history': never[];
@@ -1 +1 @@
1
- {"version":3,"file":"CTX.d.ts","sourceRoot":"","sources":["CTX.js"],"names":[],"mappings":"AAGO,+BAA2B;AAG3B,wCADK,OAAO,SAAS,EAAE,KAAK;;;;;;EAejC;AAGK,wCADK,OAAO,SAAS,EAAE,KAAK;;;;IAMjC,qEAAqE;yBAA1D,WAAW,OAAO,UAAU,EAAE,qBAAqB,CAAC,EAAE;IAEjE,8DAA8D;wBAAnD,OAAO,UAAU,EAAE,qBAAqB,GAAG,IAAI;IAE1D,yEAAyE;kBAA9D,OAAO,2BAA2B,EAAE,eAAe,GAAG,IAAI;IAErE,0BAA0B;sBAAf,IAAI,MAAM,CAAC;IAEtB,8EAA8E;6BAAnE,OAAO,2BAA2B,EAAE,oBAAoB,GAAG,IAAI;;;;;;EAE1E;sBArCoB,2BAA2B"}
1
+ {"version":3,"file":"CTX.d.ts","sourceRoot":"","sources":["CTX.js"],"names":[],"mappings":"AAGO,+BAA2B;AAG3B,wCADK,OAAO,SAAS,EAAE,KAAK;;;;;;EAejC;AAGK,wCADK,OAAO,SAAS,EAAE,KAAK;;;;IAMjC,qEAAqE;yBAA1D,UAAU,CAAC,OAAO,UAAU,EAAE,qBAAqB,CAAC,EAAE;IAEjE,8DAA8D;wBAAnD,OAAO,UAAU,EAAE,qBAAqB,GAAG,IAAI;IAE1D,yEAAyE;kBAA9D,OAAO,2BAA2B,EAAE,eAAe,GAAG,IAAI;IAErE,0BAA0B;sBAAf,GAAG,CAAC,MAAM,CAAC;IAEtB,8EAA8E;6BAAnE,OAAO,2BAA2B,EAAE,oBAAoB,GAAG,IAAI;;;;;;EAE1E;sBArCoB,2BAA2B"}
@@ -2,7 +2,7 @@ export function localeStateKey(key: string): string;
2
2
  export const DEFAULT_LOCALE: "en";
3
3
  export class LocaleManager {
4
4
  /** @param {import('./Block.js').Block} blockInstance */
5
- constructor(blockInstance: import('./Block.js').Block);
5
+ constructor(blockInstance: import("./Block.js").Block);
6
6
  /**
7
7
  * @private
8
8
  * @type {import('./Block.js').Block | null}
@@ -30,9 +30,9 @@ export class LocaleManager {
30
30
  * @param {string} key
31
31
  * @param {() => void} resolver
32
32
  */
33
- bindL10n(block: import('./Block.js').Block, key: string, resolver: () => void): void;
33
+ bindL10n(block: import("./Block.js").Block, key: string, resolver: () => void): void;
34
34
  /** @param {import('./Block.js').Block} block */
35
- destroyL10nBindings(block: import('./Block.js').Block): void;
35
+ destroyL10nBindings(block: import("./Block.js").Block): void;
36
36
  destroy(): void;
37
37
  }
38
38
  //# sourceMappingURL=LocaleManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocaleManager.d.ts","sourceRoot":"","sources":["LocaleManager.js"],"names":[],"mappings":"AAMO,oCADK,MAAM,UACmC;AACrD,kCAAmC;AAEnC;IAsBE,wDAAwD;IACxD,2BADY,OAAO,YAAY,EAAE,KAAK,EA6CrC;IAlED;;;OAGG;IACH,uBAAsB;IAEtB,eAAe;IACf,oBAAiB;IAEjB;;;OAGG;IACH,mBAAuB;IAEvB;;;OAGG;IACH,qBAAyB;IAiDzB;;;OAGG;IACH,yBAHW,MAAM,IAAI,GACR,MAAM,IAAI,CAQtB;IAED;;;;OAIG;IACH,gBAJW,OAAO,YAAY,EAAE,KAAK,OAC1B,MAAM,YACN,MAAM,IAAI,QAgBpB;IAED,gDAAgD;IAChD,2BADY,OAAO,YAAY,EAAE,KAAK,QAUrC;IAED,gBAEC;CACF"}
1
+ {"version":3,"file":"LocaleManager.d.ts","sourceRoot":"","sources":["LocaleManager.js"],"names":[],"mappings":"AAMO,oCADK,MAAM,UACmC;AACrD,6BAA8B,IAAI,CAAC;AAEnC;IAsBE,wDAAwD;IACxD,2BADY,OAAO,YAAY,EAAE,KAAK,EA6CrC;IAlED;;;OAGG;IACH,uBAAsB;IAEtB,eAAe;IACf,oBAAiB;IAEjB;;;OAGG;IACH,mBAAuB;IAEvB;;;OAGG;IACH,qBAAyB;IAiDzB;;;OAGG;IACH,yBAHW,MAAM,IAAI,GACR,MAAM,IAAI,CAQtB;IAED;;;;OAIG;IACH,gBAJW,OAAO,YAAY,EAAE,KAAK,OAC1B,MAAM,YACN,MAAM,IAAI,QAgBpB;IAED,gDAAgD;IAChD,2BADY,OAAO,YAAY,EAAE,KAAK,QAUrC;IAED,gBAEC;CACF"}
@@ -8,11 +8,11 @@ export const ModalEvents: Readonly<{
8
8
  }>;
9
9
  /** @typedef {string} ModalId */
10
10
  /** @typedef {import('../blocks/Modal/Modal.js').Modal} ModalNode */
11
- /** @typedef {(data: { id: ModalId; modal?: ModalNode }) => void} ModalCb */
11
+ /** @typedef {(data: { id: ModalId; modal: ModalNode }) => void} ModalCb */
12
12
  /** @typedef {(typeof ModalEvents)[keyof ModalEvents]} ModalEventType */
13
13
  export class ModalManager {
14
14
  /** @param {import('./Block.js').Block} block */
15
- constructor(block: import('./Block.js').Block);
15
+ constructor(block: import("./Block.js").Block);
16
16
  /**
17
17
  * @private
18
18
  * @type {Map<ModalId, ModalNode>}
@@ -23,7 +23,11 @@ export class ModalManager {
23
23
  * @type {Set<ModalId>}
24
24
  */
25
25
  private _activeModals;
26
- _subscribers: Map<any, any>;
26
+ /**
27
+ * @private
28
+ * @type {Map<ModalEventType, Set<ModalCb>>}
29
+ */
30
+ private _subscribers;
27
31
  _block: import("./Block.js").Block;
28
32
  /**
29
33
  * @private
@@ -99,29 +103,20 @@ export class ModalManager {
99
103
  * @private
100
104
  * @param {ModalEventType} event - Event name
101
105
  * @param {{
102
- * id?: ModalId | ModalId[];
103
- * modal?: ModalNode | ModalNode[];
106
+ * id: ModalId;
107
+ * modal: ModalNode;
104
108
  * }
105
- * | {
106
- * modalIds: ModalId[];
107
- * }} data
109
+ * | object} data
108
110
  */
109
111
  private _notify;
110
112
  /** Destroy the modal manager, clean up resources */
111
113
  destroy(): void;
112
114
  }
113
115
  export type ModalId = string;
114
- export type ModalNode = import('../blocks/Modal/Modal.js').Modal;
116
+ export type ModalNode = import("../blocks/Modal/Modal.js").Modal;
115
117
  export type ModalCb = (data: {
116
118
  id: ModalId;
117
- modal?: ModalNode;
119
+ modal: ModalNode;
118
120
  }) => void;
119
- export type ModalEventType = (typeof ModalEvents)[keyof {
120
- readonly ADD: "modal:add";
121
- readonly DELETE: "modal:delete";
122
- readonly OPEN: "modal:open";
123
- readonly CLOSE: "modal:close";
124
- readonly CLOSE_ALL: "modal:closeAll";
125
- readonly DESTROY: "modal:destroy";
126
- }];
121
+ export type ModalEventType = (typeof ModalEvents)["ADD" | "DELETE" | "OPEN" | "CLOSE" | "CLOSE_ALL" | "DESTROY"];
127
122
  //# sourceMappingURL=ModalManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalManager.d.ts","sourceRoot":"","sources":["ModalManager.js"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAEH,gCAAgC;AAEhC,oEAAoE;AAEpE,4EAA4E;AAE5E,wEAAwE;AAExE;IAeE,gDAAgD;IAChD,mBADY,OAAO,YAAY,EAAE,KAAK,EAGrC;IAjBD;;;OAGG;IACH,gBAAoB;IAEpB;;;OAGG;IACH,sBAA0B;IAE1B,4BAAyB;IAIvB,mCAAmB;IAGrB;;;OAGG;IACH,oBAEC;IAED;;;;;OAKG;IACH,kBAHW,OAAO,SACP,SAAS,QAKnB;IAED,4DAA4D;IAC5D,gBADY,OAAO,WASlB;IAED;;;;;OAKG;IACH,SAHW,OAAO,GACL,OAAO,CAanB;IAED;;;;;OAKG;IACH,UAHW,OAAO,GACL,OAAO,CAanB;IAED;;;;;OAKG;IACH,WAHW,OAAO,GACL,OAAO,CAanB;IAED;;;;OAIG;IACH,+BAEC;IAED;;;;OAIG;IACH,QAFa,OAAO,CAWnB;IAED;;;;OAIG;IACH,YAFa,MAAM,CAQlB;IAED;;;;;;OAMG;IACH,iBAJW,cAAc,YACd,OAAO,GACL,MAAM,IAAI,CAStB;IAED;;;;;OAKG;IACH,mBAHW,cAAc,YACd,OAAO,GAAG,SAAS,QAM7B;IAED;;;;;;;;;;;;OAYG;IACH,gBAUC;IAED,oDAAoD;IACpD,gBAKC;CACF;sBArNa,MAAM;wBAEN,OAAO,0BAA0B,EAAE,KAAK;6BAEjC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,KAAK,IAAI;6BAElD,CAAC,kBAAkB,CAAC,CAAC;;;;;;;CAAiB,CAAC"}
1
+ {"version":3,"file":"ModalManager.d.ts","sourceRoot":"","sources":["ModalManager.js"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAEH,gCAAgC;AAEhC,oEAAoE;AAEpE,2EAA2E;AAE3E,wEAAwE;AAExE;IAmBE,gDAAgD;IAChD,mBADY,OAAO,YAAY,EAAE,KAAK,EAGrC;IArBD;;;OAGG;IACH,gBAAoB;IAEpB;;;OAGG;IACH,sBAA0B;IAE1B;;;OAGG;IACH,qBAAyB;IAIvB,mCAAmB;IAGrB;;;OAGG;IACH,oBAEC;IAED;;;;;OAKG;IACH,kBAHW,OAAO,SACP,SAAS,QAKnB;IAED,4DAA4D;IAC5D,gBADY,OAAO,WASlB;IAED;;;;;OAKG;IACH,SAHW,OAAO,GACL,OAAO,CAanB;IAED;;;;;OAKG;IACH,UAHW,OAAO,GACL,OAAO,CAanB;IAED;;;;;OAKG;IACH,WAHW,OAAO,GACL,OAAO,CAanB;IAED;;;;OAIG;IACH,uBAFa,OAAO,CAInB;IAED;;;;OAIG;IACH,QAFa,OAAO,CAWnB;IAED;;;;OAIG;IACH,YAFa,MAAM,CAQlB;IAED;;;;;;OAMG;IACH,iBAJW,cAAc,YACd,OAAO,GACL,MAAM,IAAI,CAStB;IAED;;;;;OAKG;IACH,mBAHW,cAAc,YACd,OAAO,GAAG,SAAS,QAM7B;IAED;;;;;;;;;;OAUG;IACH,gBAiBC;IAED,oDAAoD;IACpD,gBAKC;CACF;sBA9Na,MAAM;wBAEN,OAAO,0BAA0B,EAAE,KAAK;sBAExC,CAAC,IAAI,EAAE;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,KAAK,IAAI;6BAEjD,CAAC,OAAO,WAAW,gEAAoB"}
@@ -13,7 +13,7 @@ export const ModalEvents = Object.freeze({
13
13
 
14
14
  /** @typedef {import('../blocks/Modal/Modal.js').Modal} ModalNode */
15
15
 
16
- /** @typedef {(data: { id: ModalId; modal?: ModalNode }) => void} ModalCb */
16
+ /** @typedef {(data: { id: ModalId; modal: ModalNode }) => void} ModalCb */
17
17
 
18
18
  /** @typedef {(typeof ModalEvents)[keyof ModalEvents]} ModalEventType */
19
19
 
@@ -30,6 +30,10 @@ export class ModalManager {
30
30
  */
31
31
  _activeModals = new Set();
32
32
 
33
+ /**
34
+ * @private
35
+ * @type {Map<ModalEventType, Set<ModalCb>>}
36
+ */
33
37
  _subscribers = new Map();
34
38
 
35
39
  /** @param {import('./Block.js').Block} block */
@@ -173,7 +177,7 @@ export class ModalManager {
173
177
  if (!this._subscribers.has(event)) {
174
178
  this._subscribers.set(event, new Set());
175
179
  }
176
- this._subscribers.get(event).add(callback);
180
+ this._subscribers.get(event)?.add(callback);
177
181
 
178
182
  return () => this.unsubscribe(event, callback);
179
183
  }
@@ -186,7 +190,7 @@ export class ModalManager {
186
190
  */
187
191
  unsubscribe(event, callback) {
188
192
  if (this._subscribers.has(event)) {
189
- this._subscribers.get(event).delete(callback);
193
+ this._subscribers.get(event)?.delete(/** @type {ModalCb} */ (callback));
190
194
  }
191
195
  }
192
196
 
@@ -196,18 +200,23 @@ export class ModalManager {
196
200
  * @private
197
201
  * @param {ModalEventType} event - Event name
198
202
  * @param {{
199
- * id?: ModalId | ModalId[];
200
- * modal?: ModalNode | ModalNode[];
203
+ * id: ModalId;
204
+ * modal: ModalNode;
201
205
  * }
202
- * | {
203
- * modalIds: ModalId[];
204
- * }} data
206
+ * | object} data
205
207
  */
206
208
  _notify(event, data) {
207
209
  if (this._subscribers.has(event)) {
208
- for (const callback of this._subscribers.get(event)) {
210
+ for (const callback of this._subscribers.get(event) ?? new Set()) {
209
211
  try {
210
- callback(data);
212
+ callback(
213
+ /**
214
+ * @type{{
215
+ * id: ModalId;
216
+ * modal: ModalNode;
217
+ * }}
218
+ */ (data),
219
+ );
211
220
  } catch (error) {
212
221
  this._debugPrint('Error in modal subscriber:', error);
213
222
  }
@@ -1,6 +1,6 @@
1
1
  export class SecureUploadsManager {
2
2
  /** @param {import('./UploaderBlock.js').UploaderBlock} block */
3
- constructor(block: import('./UploaderBlock.js').UploaderBlock);
3
+ constructor(block: import("./UploaderBlock.js").UploaderBlock);
4
4
  /**
5
5
  * @private
6
6
  * @type {import('./UploaderBlock.js').UploaderBlock}
@@ -17,6 +17,6 @@ export class SecureUploadsManager {
17
17
  */
18
18
  private _debugPrint;
19
19
  /** @returns {Promise<import('../types').SecureUploadsSignatureAndExpire | null>} */
20
- getSecureToken(): Promise<import('../types').SecureUploadsSignatureAndExpire | null>;
20
+ getSecureToken(): Promise<import("../types").SecureUploadsSignatureAndExpire | null>;
21
21
  }
22
22
  //# sourceMappingURL=SecureUploadsManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SecureUploadsManager.d.ts","sourceRoot":"","sources":["SecureUploadsManager.js"],"names":[],"mappings":"AAIA;IAYE,gEAAgE;IAChE,mBADY,OAAO,oBAAoB,EAAE,aAAa,EAGrD;IAdD;;;OAGG;IACH,eAAO;IACP;;;OAGG;IACH,qBAAoB;IAOpB;;;OAGG;IACH,oBAEC;IAED,oFAAoF;IACpF,kBADc,QAAQ,OAAO,UAAU,EAAE,+BAA+B,GAAG,IAAI,CAAC,CAwD/E;CACF"}
1
+ {"version":3,"file":"SecureUploadsManager.d.ts","sourceRoot":"","sources":["SecureUploadsManager.js"],"names":[],"mappings":"AAIA;IAYE,gEAAgE;IAChE,mBADY,OAAO,oBAAoB,EAAE,aAAa,EAGrD;IAdD;;;OAGG;IACH,eAAO;IACP;;;OAGG;IACH,qBAAoB;IAOpB;;;OAGG;IACH,oBAEC;IAED,oFAAoF;IACpF,kBADc,OAAO,CAAC,OAAO,UAAU,EAAE,+BAA+B,GAAG,IAAI,CAAC,CAwD/E;CACF"}
@@ -5,8 +5,8 @@ export class SolutionBlock extends Block {
5
5
  '*commonProgress': number;
6
6
  '*uploadList': never[];
7
7
  '*uploadQueue': import("@uploadcare/upload-client").Queue;
8
- '*collectionErrors': any[];
9
- '*collectionState': import("../index.js").OutputCollectionState<import("../index.js").OutputCollectionStatus, "maybe-has-group"> | null;
8
+ '*collectionErrors': ReturnType<import("../index.js").OutputErrorCollection>[];
9
+ '*collectionState': import("../index.js").OutputCollectionState | null;
10
10
  '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
11
11
  '*uploadTrigger': Set<string>;
12
12
  '*secureUploadsManager': import("./SecureUploadsManager.js").SecureUploadsManager | null;
@@ -1 +1 @@
1
- {"version":3,"file":"SolutionBlock.d.ts","sourceRoot":"","sources":["SolutionBlock.js"],"names":[],"mappings":"AAIA;IAWE,gCAEC;IAED,2BAEC;IAdD;;;;;;;;;;;;;;MAA+B;IAC/B,gBAAiB;CAclB;sBArBqB,YAAY"}
1
+ {"version":3,"file":"SolutionBlock.d.ts","sourceRoot":"","sources":["SolutionBlock.js"],"names":[],"mappings":"AAIA;IAWE,gCAEC;IAED,2BAEC;IAdD;;;;+CAgBkG,aAAU;mCAA8E,aAAU;6BAAmF,2BAA2B;;wCAAmI,2BAA2B;;;;;;MAhBjb;IAC/B,gBAAiB;CAclB;sBArBqB,YAAY"}
@@ -1,30 +1,30 @@
1
- export class TypedCollection {
1
+ /**
2
+ * @template {import('./TypedData.js').TypedSchema} T
3
+ * @typedef {(list: string[], added: Set<import('./TypedData.js').TypedData<T>>, removed: Set<TypedData<T>>) => void} TypedCollectionObserverHandler
4
+ */
5
+ /** @template {import('./TypedData.js').TypedSchema} T */
6
+ export class TypedCollection<T extends import("./TypedData.js").TypedSchema> {
2
7
  /**
3
8
  * @param {Object} options
4
- * @param {Object<string, { type: any; value: any }>} options.typedSchema
5
- * @param {String[]} [options.watchList]
6
- * @param {(list: string[], added: Set<any>, removed: Set<any>) => void} [options.handler]
7
- * @param {String} [options.ctxName]
9
+ * @param {T} options.typedSchema
10
+ * @param {import('./TypedData.js').ExtractKeysFromSchema<T>[]} [options.watchList]
11
+ * @param {TypedCollectionObserverHandler<T>} [options.handler]
12
+ * @param {string} [options.ctxName]
8
13
  */
9
14
  constructor(options: {
10
- typedSchema: {
11
- [x: string]: {
12
- type: any;
13
- value: any;
14
- };
15
- };
16
- watchList?: string[] | undefined;
17
- handler?: ((list: string[], added: Set<any>, removed: Set<any>) => void) | undefined;
15
+ typedSchema: T;
16
+ watchList?: Extract<keyof T, string>[] | undefined;
17
+ handler?: TypedCollectionObserverHandler<T> | undefined;
18
18
  ctxName?: string | undefined;
19
19
  });
20
20
  /**
21
21
  * @private
22
- * @type {Object<string, { type: any; value: any }>}
22
+ * @type {T}
23
23
  */
24
24
  private __typedSchema;
25
25
  /**
26
26
  * @private
27
- * @type {String}
27
+ * @type {string}
28
28
  */
29
29
  private __ctxId;
30
30
  /**
@@ -34,12 +34,12 @@ export class TypedCollection {
34
34
  private __data;
35
35
  /**
36
36
  * @private
37
- * @type {string[]}
37
+ * @type {import('./TypedData.js').ExtractKeysFromSchema<T>[]}
38
38
  */
39
39
  private __watchList;
40
40
  /**
41
41
  * @private
42
- * @type {Object<string, any>}
42
+ * @type {Object<string, ReturnType<TypedData<T>['subscribe']>[]>}
43
43
  */
44
44
  private __subsMap;
45
45
  /**
@@ -49,7 +49,7 @@ export class TypedCollection {
49
49
  private __propertyObservers;
50
50
  /**
51
51
  * @private
52
- * @type {Set<(list: string[], added: Set<any>, removed: Set<any>) => void>}
52
+ * @type {Set<TypedCollectionObserverHandler<T>>}
53
53
  */
54
54
  private __collectionObservers;
55
55
  /**
@@ -59,12 +59,12 @@ export class TypedCollection {
59
59
  private __items;
60
60
  /**
61
61
  * @private
62
- * @type {Set<any>}
62
+ * @type {Set<import('./TypedData.js').TypedData<T>>}
63
63
  */
64
64
  private __removed;
65
65
  /**
66
66
  * @private
67
- * @type {Set<any>}
67
+ * @type {Set<import('./TypedData.js').TypedData<T>>}
68
68
  */
69
69
  private __added;
70
70
  /**
@@ -78,36 +78,35 @@ export class TypedCollection {
78
78
  notify(): void;
79
79
  /** @private */
80
80
  private __notifyTimeout;
81
- /** @param {(list: string[], added: Set<any>, removed: Set<any>) => void} handler */
82
- observeCollection(handler: (list: string[], added: Set<any>, removed: Set<any>) => void): () => void;
83
- /** @param {Function} handler */
84
- unobserveCollection(handler: Function): void;
81
+ /** @param {TypedCollectionObserverHandler<T>} handler */
82
+ observeCollection(handler: TypedCollectionObserverHandler<T>): () => void;
83
+ /** @param {TypedCollectionObserverHandler<T>} handler */
84
+ unobserveCollection(handler: TypedCollectionObserverHandler<T>): void;
85
85
  /**
86
- * @param {Object<string, any>} init
86
+ * @param {Partial<import('./TypedData.js').ExtractDataFromSchema<T>>} init
87
87
  * @returns {string}
88
88
  */
89
- add(init: {
90
- [x: string]: any;
91
- }): string;
89
+ add(init: Partial<import("./TypedData.js").ExtractDataFromSchema<T>>): string;
92
90
  /**
93
- * @param {String} id
94
- * @returns {TypedData}
91
+ * @param {string} id
92
+ * @returns {TypedData<T> | null}
95
93
  */
96
- read(id: string): TypedData;
94
+ read(id: string): TypedData<T> | null;
97
95
  /**
98
- * @param {String} id
99
- * @param {String} propName
100
- * @returns {any}
96
+ * @template {import('./TypedData.js').ExtractKeysFromSchema<T>} K
97
+ * @param {string} id
98
+ * @param {K} propName
99
+ * @returns {import('./TypedData.js').ExtractDataFromSchema<T>[propName] | null}
101
100
  */
102
- readProp(id: string, propName: string): any;
101
+ readProp<K extends import("./TypedData.js").ExtractKeysFromSchema<T>>(id: string, propName: K): import("./TypedData.js").ExtractDataFromSchema<T>[K] | null;
103
102
  /**
104
- * @template T
105
- * @param {String} id
106
- * @param {String} propName
107
- * @param {T} value
103
+ * @template {import('./TypedData.js').ExtractKeysFromSchema<T>} K
104
+ * @param {string} id
105
+ * @param {K} propName
106
+ * @param {import('./TypedData.js').ExtractDataFromSchema<T>[K]} value
108
107
  */
109
- publishProp<T>(id: string, propName: string, value: T): void;
110
- /** @param {String} id */
108
+ publishProp<K extends import("./TypedData.js").ExtractKeysFromSchema<T>>(id: string, propName: K, value: import("./TypedData.js").ExtractDataFromSchema<T>[K]): void;
109
+ /** @param {string} id */
111
110
  remove(id: string): void;
112
111
  clearAll(): void;
113
112
  /** @param {Function} handler */
@@ -115,13 +114,14 @@ export class TypedCollection {
115
114
  /** @param {Function} handler */
116
115
  unobserveProperties(handler: Function): void;
117
116
  /**
118
- * @param {(item: TypedData) => Boolean} checkFn
119
- * @returns {String[]}
117
+ * @param {(item: TypedData<T>) => Boolean} checkFn
118
+ * @returns {string[]}
120
119
  */
121
- findItems(checkFn: (item: TypedData) => boolean): string[];
120
+ findItems(checkFn: (item: TypedData<T>) => boolean): string[];
122
121
  items(): string[];
123
122
  get size(): number;
124
123
  destroy(): void;
125
124
  }
125
+ export type TypedCollectionObserverHandler<T extends import("./TypedData.js").TypedSchema> = (list: string[], added: Set<import("./TypedData.js").TypedData<T>>, removed: Set<TypedData<T>>) => void;
126
126
  import { TypedData } from './TypedData.js';
127
127
  //# sourceMappingURL=TypedCollection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypedCollection.d.ts","sourceRoot":"","sources":["TypedCollection.js"],"names":[],"mappings":"AAGA;IACE;;;;;;OAMG;IACH;QAL8D,WAAW;gBAAvD,MAAM,GAAE;gBAAE,IAAI,EAAE,GAAG,CAAC;gBAAC,KAAK,EAAE,GAAG,CAAA;aAAE;;QACrB,SAAS;QAC2C,OAAO,WAAvE,MAAM,EAAE,SAAS,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,KAAK,IAAI;QAC3C,OAAO;OAgFlC;IA7EC;;;OAGG;IACH,sBAAwC;IACxC;;;OAGG;IACH,gBAAgD;IAChD;;;OAGG;IACH,eAAgD;IAChD;;;OAGG;IACH,oBAA0C;IAC1C;;;OAGG;IACH,kBAAoC;IACpC;;;OAGG;IACH,4BAAoC;IACpC;;;OAGG;IACH,8BAAsC;IACtC;;;OAGG;IACH,gBAAwB;IACxB;;;OAGG;IACH,kBAA0B;IAC1B;;;OAGG;IACH,gBAAwB;IAIxB;;;;OAIG;IACH,0BAkBC;IAVC,eAAe;IACf,yBAQE;IAIN,eAcC;IAVC,eAAe;IACf,wBAQE;IAGJ,oFAAoF;IACpF,kCADmB,MAAM,EAAE,SAAS,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,KAAK,IAAI,cAWvE;IAED,gCAAgC;IAChC,6CAEC;IAED;;;OAGG;IACH;YAHkB,MAAM,GAAE,GAAG;QAChB,MAAM,CAuBlB;IAED;;;OAGG;IACH,kBAFa,SAAS,CAIrB;IAED;;;;OAIG;IACH,wCAFa,GAAG,CAKf;IAED;;;;;OAKG;IACH,6DAGC;IAED,yBAAyB;IACzB,yBAMC;IAED,iBAIC;IAED,gCAAgC;IAChC,iDAMC;IAED,gCAAgC;IAChC,6CAEC;IAED;;;OAGG;IACH,0BAHkB,SAAS,eACd,QAAQ,CAWpB;IAED,kBAEC;IAED,mBAEC;IAED,gBAUC;CACF;0BAnPyB,gBAAgB"}
1
+ {"version":3,"file":"TypedCollection.d.ts","sourceRoot":"","sources":["TypedCollection.js"],"names":[],"mappings":"AAIA;;;GAGG;AAEH,yDAAyD;AACzD,6BADqD,CAAC,SAAxC,OAAQ,gBAAgB,EAAE,WAAY;IAElD;;;;;;OAMG;IACH,qBALG;QAAmB,WAAW,EAAtB,CAAC;QAC6D,SAAS;QAC3B,OAAO;QAClC,OAAO;KAAC,EAgFnC;IA7EC;;;OAGG;IACH,sBAAwC;IACxC;;;OAGG;IACH,gBAAgD;IAChD;;;OAGG;IACH,eAAgD;IAChD;;;OAGG;IACH,oBAA0C;IAC1C;;;OAGG;IACH,kBAAoC;IACpC;;;OAGG;IACH,4BAAoC;IACpC;;;OAGG;IACH,8BAAsC;IACtC;;;OAGG;IACH,gBAAwB;IACxB;;;OAGG;IACH,kBAA0B;IAC1B;;;OAGG;IACH,gBAAwB;IAIxB;;;;OAIG;IACH,0BAkBC;IAVC,eAAe;IACf,yBAQE;IAIN,eAcC;IAVC,eAAe;IACf,wBAQE;IAGJ,yDAAyD;IACzD,2BADY,8BAA8B,CAAC,CAAC,CAAC,cAW5C;IAED,yDAAyD;IACzD,6BADY,8BAA8B,CAAC,CAAC,CAAC,QAG5C;IAED;;;OAGG;IACH,UAHW,OAAO,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,GACxD,MAAM,CAuBlB;IAED;;;OAGG;IACH,SAHW,MAAM,GACJ,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAI/B;IAED;;;;;OAKG;IACH,SALiE,CAAC,SAArD,OAAQ,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,CAAE,MACrD,MAAM,YACN,CAAC,GACC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAU,GAAG,IAAI,CAS9E;IAED;;;;;OAKG;IACH,YALiE,CAAC,SAArD,OAAQ,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,CAAE,MACrD,MAAM,YACN,CAAC,SACD,OAAO,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAS9D;IAED,yBAAyB;IACzB,WADY,MAAM,QAUjB;IAED,iBAIC;IAED,gCAAgC;IAChC,iDAMC;IAED,gCAAgC;IAChC,6CAEC;IAED;;;OAGG;IACH,mBAHW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,GAC7B,MAAM,EAAE,CAYpB;IAED,kBAEC;IAED,mBAEC;IAED,gBAUC;CACF;2CAnQmD,CAAC,SAAxC,OAAQ,gBAAgB,EAAE,WAAY,IACtC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;0BAJ1F,gBAAgB"}