@uploadcare/file-uploader 1.17.3-alpha.2 → 1.19.0-alpha.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 (207) hide show
  1. package/abstract/Block.d.ts +11 -2
  2. package/abstract/Block.d.ts.map +1 -1
  3. package/abstract/Block.js +29 -3
  4. package/abstract/CTX.d.ts +2 -2
  5. package/abstract/CTX.d.ts.map +1 -1
  6. package/abstract/CTX.js +1 -1
  7. package/abstract/SolutionBlock.d.ts +1 -1
  8. package/abstract/UploaderBlock.d.ts +3 -3
  9. package/abstract/UploaderBlock.d.ts.map +1 -1
  10. package/abstract/UploaderBlock.js +2 -3
  11. package/abstract/UploaderPublicApi.d.ts.map +1 -1
  12. package/abstract/UploaderPublicApi.js +0 -3
  13. package/abstract/l10nProcessor.js +1 -1
  14. package/abstract/{LocaleManager.d.ts → managers/LocaleManager.d.ts} +8 -8
  15. package/abstract/{LocaleManager.d.ts.map → managers/LocaleManager.d.ts.map} +1 -1
  16. package/abstract/{LocaleManager.js → managers/LocaleManager.js} +8 -8
  17. package/abstract/{ModalManager.d.ts → managers/ModalManager.d.ts} +7 -7
  18. package/abstract/{ModalManager.d.ts.map → managers/ModalManager.d.ts.map} +1 -1
  19. package/abstract/{ModalManager.js → managers/ModalManager.js} +3 -3
  20. package/abstract/managers/SecureUploadsManager.d.ts +22 -0
  21. package/abstract/{SecureUploadsManager.d.ts.map → managers/SecureUploadsManager.d.ts.map} +1 -1
  22. package/abstract/{SecureUploadsManager.js → managers/SecureUploadsManager.js} +5 -5
  23. package/abstract/managers/TelemetryManager.d.ts +65 -0
  24. package/abstract/managers/TelemetryManager.d.ts.map +1 -0
  25. package/abstract/managers/TelemetryManager.js +201 -0
  26. package/abstract/{ValidationManager.d.ts → managers/ValidationManager.d.ts} +7 -7
  27. package/abstract/{ValidationManager.d.ts.map → managers/ValidationManager.d.ts.map} +1 -1
  28. package/abstract/{ValidationManager.js → managers/ValidationManager.js} +14 -14
  29. package/abstract/{a11y.d.ts → managers/a11y.d.ts} +2 -2
  30. package/abstract/managers/a11y.d.ts.map +1 -0
  31. package/abstract/{a11y.js → managers/a11y.js} +1 -1
  32. package/blocks/CameraSource/CameraSource.d.ts +1 -1
  33. package/blocks/CloudImageEditor/src/EditorCropButtonControl.d.ts.map +1 -1
  34. package/blocks/CloudImageEditor/src/EditorCropButtonControl.js +8 -1
  35. package/blocks/CloudImageEditor/src/EditorFilterControl.d.ts.map +1 -1
  36. package/blocks/CloudImageEditor/src/EditorFilterControl.js +7 -1
  37. package/blocks/CloudImageEditor/src/EditorOperationControl.d.ts +1 -1
  38. package/blocks/CloudImageEditor/src/EditorOperationControl.d.ts.map +1 -1
  39. package/blocks/CloudImageEditor/src/EditorOperationControl.js +9 -3
  40. package/blocks/CloudImageEditor/src/EditorToolbar.d.ts +8 -4
  41. package/blocks/CloudImageEditor/src/EditorToolbar.d.ts.map +1 -1
  42. package/blocks/CloudImageEditor/src/EditorToolbar.js +24 -4
  43. package/blocks/CloudImageEditor/src/toolbar-constants.d.ts +1 -0
  44. package/blocks/CloudImageEditor/src/toolbar-constants.d.ts.map +1 -1
  45. package/blocks/CloudImageEditor/src/toolbar-constants.js +2 -0
  46. package/blocks/CloudImageEditor/src/utils/parseFilterValue.d.ts +11 -0
  47. package/blocks/CloudImageEditor/src/utils/parseFilterValue.d.ts.map +1 -0
  48. package/blocks/CloudImageEditor/src/utils/parseFilterValue.js +11 -0
  49. package/blocks/Config/Config.d.ts.map +1 -1
  50. package/blocks/Config/Config.js +1 -6
  51. package/blocks/Config/initialConfig.d.ts +0 -1
  52. package/blocks/Config/initialConfig.d.ts.map +1 -1
  53. package/blocks/Config/initialConfig.js +2 -4
  54. package/blocks/Config/normalizeConfigValue.d.ts.map +1 -1
  55. package/blocks/Config/normalizeConfigValue.js +2 -3
  56. package/blocks/Config/side-effects.d.ts +4 -8
  57. package/blocks/Config/side-effects.d.ts.map +1 -1
  58. package/blocks/Config/side-effects.js +21 -111
  59. package/blocks/DropArea/DropArea.d.ts +1 -1
  60. package/blocks/ExternalSource/ExternalSource.d.ts +1 -7
  61. package/blocks/ExternalSource/ExternalSource.d.ts.map +1 -1
  62. package/blocks/ExternalSource/ExternalSource.js +2 -24
  63. package/blocks/ExternalSource/MessageBridge.d.ts.map +1 -1
  64. package/blocks/ExternalSource/MessageBridge.js +1 -3
  65. package/blocks/ExternalSource/types.d.ts +0 -4
  66. package/blocks/ExternalSource/types.d.ts.map +1 -1
  67. package/blocks/ExternalSource/types.js +0 -4
  68. package/blocks/FileItem/FileItem.d.ts +1 -1
  69. package/blocks/FileItem/FileItem.d.ts.map +1 -1
  70. package/blocks/FileItem/FileItem.js +16 -0
  71. package/blocks/Modal/Modal.d.ts +6 -6
  72. package/blocks/Modal/Modal.d.ts.map +1 -1
  73. package/blocks/Modal/Modal.js +10 -12
  74. package/blocks/SimpleBtn/SimpleBtn.d.ts +1 -1
  75. package/blocks/SourceBtn/SourceBtn.d.ts +1 -1
  76. package/blocks/Thumb/Thumb.d.ts +1 -1
  77. package/blocks/UploadCtxProvider/EventEmitter.d.ts +17 -4
  78. package/blocks/UploadCtxProvider/EventEmitter.d.ts.map +1 -1
  79. package/blocks/UploadCtxProvider/EventEmitter.js +14 -2
  80. package/blocks/UploadCtxProvider/UploadCtxProvider.d.ts.map +1 -1
  81. package/blocks/UploadCtxProvider/UploadCtxProvider.js +0 -1
  82. package/blocks/UploadList/UploadList.d.ts +1 -1
  83. package/blocks/themes/uc-basic/svg-sprite.d.ts +1 -1
  84. package/blocks/themes/uc-basic/svg-sprite.d.ts.map +1 -1
  85. package/blocks/themes/uc-basic/svg-sprite.js +1 -1
  86. package/env.d.ts +1 -1
  87. package/env.js +1 -1
  88. package/index.d.ts +1 -1
  89. package/index.js +1 -1
  90. package/index.ssr.d.ts +4 -2
  91. package/index.ssr.d.ts.map +1 -1
  92. package/index.ssr.js +7 -9
  93. package/locales/file-uploader/ar.d.ts +0 -1
  94. package/locales/file-uploader/ar.js +0 -1
  95. package/locales/file-uploader/az.d.ts +0 -1
  96. package/locales/file-uploader/az.js +0 -1
  97. package/locales/file-uploader/ca.d.ts +0 -1
  98. package/locales/file-uploader/ca.js +0 -1
  99. package/locales/file-uploader/cs.d.ts +0 -1
  100. package/locales/file-uploader/cs.js +0 -1
  101. package/locales/file-uploader/da.d.ts +0 -1
  102. package/locales/file-uploader/da.js +0 -1
  103. package/locales/file-uploader/de.d.ts +0 -1
  104. package/locales/file-uploader/de.js +0 -1
  105. package/locales/file-uploader/el.d.ts +0 -1
  106. package/locales/file-uploader/el.js +0 -1
  107. package/locales/file-uploader/en.d.ts +0 -1
  108. package/locales/file-uploader/en.js +0 -1
  109. package/locales/file-uploader/es.d.ts +0 -1
  110. package/locales/file-uploader/es.js +0 -1
  111. package/locales/file-uploader/et.d.ts +0 -1
  112. package/locales/file-uploader/et.js +0 -1
  113. package/locales/file-uploader/fi.d.ts +0 -1
  114. package/locales/file-uploader/fi.js +0 -1
  115. package/locales/file-uploader/fr.d.ts +0 -1
  116. package/locales/file-uploader/fr.js +0 -1
  117. package/locales/file-uploader/he.d.ts +0 -1
  118. package/locales/file-uploader/he.js +0 -1
  119. package/locales/file-uploader/hy.d.ts +0 -1
  120. package/locales/file-uploader/hy.js +0 -1
  121. package/locales/file-uploader/is.d.ts +0 -1
  122. package/locales/file-uploader/is.js +0 -1
  123. package/locales/file-uploader/it.d.ts +0 -1
  124. package/locales/file-uploader/it.js +0 -1
  125. package/locales/file-uploader/ja.d.ts +0 -1
  126. package/locales/file-uploader/ja.js +0 -1
  127. package/locales/file-uploader/ka.d.ts +0 -1
  128. package/locales/file-uploader/ka.js +0 -1
  129. package/locales/file-uploader/kk.d.ts +0 -1
  130. package/locales/file-uploader/kk.js +0 -1
  131. package/locales/file-uploader/ko.d.ts +0 -1
  132. package/locales/file-uploader/ko.js +0 -1
  133. package/locales/file-uploader/lv.d.ts +0 -1
  134. package/locales/file-uploader/lv.js +0 -1
  135. package/locales/file-uploader/nb.d.ts +0 -1
  136. package/locales/file-uploader/nb.js +0 -1
  137. package/locales/file-uploader/nl.d.ts +0 -1
  138. package/locales/file-uploader/nl.js +0 -1
  139. package/locales/file-uploader/pl.d.ts +0 -1
  140. package/locales/file-uploader/pl.js +0 -1
  141. package/locales/file-uploader/pt.d.ts +0 -1
  142. package/locales/file-uploader/pt.js +0 -1
  143. package/locales/file-uploader/ro.d.ts +0 -1
  144. package/locales/file-uploader/ro.js +0 -1
  145. package/locales/file-uploader/ru.d.ts +0 -1
  146. package/locales/file-uploader/ru.js +0 -1
  147. package/locales/file-uploader/sk.d.ts +0 -1
  148. package/locales/file-uploader/sk.js +0 -1
  149. package/locales/file-uploader/sr.d.ts +0 -1
  150. package/locales/file-uploader/sr.js +0 -1
  151. package/locales/file-uploader/sv.d.ts +0 -1
  152. package/locales/file-uploader/sv.js +0 -1
  153. package/locales/file-uploader/tr.d.ts +0 -1
  154. package/locales/file-uploader/tr.js +0 -1
  155. package/locales/file-uploader/uk.d.ts +0 -1
  156. package/locales/file-uploader/uk.js +0 -1
  157. package/locales/file-uploader/vi.d.ts +0 -1
  158. package/locales/file-uploader/vi.js +0 -1
  159. package/locales/file-uploader/zh-TW.d.ts +0 -1
  160. package/locales/file-uploader/zh-TW.js +0 -1
  161. package/locales/file-uploader/zh.d.ts +0 -1
  162. package/locales/file-uploader/zh.js +0 -1
  163. package/package.json +5 -3
  164. package/solutions/cloud-image-editor/CloudImageEditor.d.ts +34 -0
  165. package/solutions/cloud-image-editor/CloudImageEditor.d.ts.map +1 -1
  166. package/solutions/cloud-image-editor/CloudImageEditor.js +12 -0
  167. package/solutions/file-uploader/inline/FileUploaderInline.d.ts +2 -1
  168. package/solutions/file-uploader/inline/FileUploaderInline.d.ts.map +1 -1
  169. package/solutions/file-uploader/inline/FileUploaderInline.js +4 -0
  170. package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts +10 -9
  171. package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts.map +1 -1
  172. package/solutions/file-uploader/minimal/FileUploaderMinimal.js +7 -3
  173. package/solutions/file-uploader/regular/FileUploaderRegular.d.ts +2 -1
  174. package/solutions/file-uploader/regular/FileUploaderRegular.d.ts.map +1 -1
  175. package/solutions/file-uploader/regular/FileUploaderRegular.js +4 -0
  176. package/types/events.d.ts +1 -1
  177. package/types/exported.d.ts +54 -66
  178. package/utils/validators/collection/validateCollectionUploadError.d.ts +2 -2
  179. package/utils/validators/collection/validateCollectionUploadError.d.ts.map +1 -1
  180. package/utils/validators/collection/validateCollectionUploadError.js +1 -1
  181. package/utils/validators/collection/validateMultiple.d.ts +2 -2
  182. package/utils/validators/collection/validateMultiple.d.ts.map +1 -1
  183. package/utils/validators/collection/validateMultiple.js +1 -1
  184. package/utils/validators/file/validateFileType.d.ts +2 -2
  185. package/utils/validators/file/validateFileType.d.ts.map +1 -1
  186. package/utils/validators/file/validateFileType.js +1 -1
  187. package/utils/validators/file/validateIsImage.d.ts +2 -2
  188. package/utils/validators/file/validateIsImage.d.ts.map +1 -1
  189. package/utils/validators/file/validateIsImage.js +1 -1
  190. package/utils/validators/file/validateMaxSizeLimit.d.ts +2 -2
  191. package/utils/validators/file/validateMaxSizeLimit.d.ts.map +1 -1
  192. package/utils/validators/file/validateMaxSizeLimit.js +1 -1
  193. package/utils/validators/file/validateUploadError.d.ts +2 -2
  194. package/utils/validators/file/validateUploadError.d.ts.map +1 -1
  195. package/utils/validators/file/validateUploadError.js +1 -1
  196. package/web/file-uploader.iife.min.js +4 -4
  197. package/web/file-uploader.min.js +4 -4
  198. package/web/uc-cloud-image-editor.min.js +4 -4
  199. package/web/uc-file-uploader-inline.min.js +4 -4
  200. package/web/uc-file-uploader-minimal.min.js +4 -4
  201. package/web/uc-file-uploader-regular.min.js +4 -4
  202. package/web/uc-img.min.js +1 -1
  203. package/abstract/SecureUploadsManager.d.ts +0 -22
  204. package/abstract/a11y.d.ts.map +0 -1
  205. package/utils/get-top-level-origin.d.ts +0 -2
  206. package/utils/get-top-level-origin.d.ts.map +0 -1
  207. package/utils/get-top-level-origin.js +0 -11
@@ -1,4 +1,38 @@
1
1
  export class CloudImageEditor extends CloudImageEditorBlock {
2
+ init$: {
3
+ '*solution': string;
4
+ '*originalUrl': null;
5
+ '*faderEl': null;
6
+ '*cropperEl': null;
7
+ '*imgEl': null;
8
+ '*imgContainerEl': null;
9
+ '*networkProblems': boolean;
10
+ '*imageSize': null;
11
+ '*editorTransformations': import("../../blocks/CloudImageEditor/src/types.js").Transformations;
12
+ '*cropPresetList': import("../../blocks/CloudImageEditor/src/types.js").CropPresetList;
13
+ '*tabList': ("crop" | "tuning" | "filters")[];
14
+ '*tabId': "crop";
15
+ entry: null;
16
+ extension: null;
17
+ editorMode: boolean;
18
+ modalCaption: string;
19
+ isImage: boolean;
20
+ msg: string;
21
+ src: string;
22
+ fileType: string;
23
+ showLoader: boolean;
24
+ uuid: null;
25
+ cdnUrl: null;
26
+ cropPreset: string;
27
+ tabs: string;
28
+ 'presence.networkProblems': boolean;
29
+ 'presence.modalCaption': boolean;
30
+ 'presence.editorToolbar': boolean;
31
+ 'presence.viewerToolbar': boolean;
32
+ '*on.retryNetwork': () => void;
33
+ '*on.apply': (transformations: import("../../blocks/CloudImageEditor/src/types.js").Transformations) => void;
34
+ '*on.cancel': () => void;
35
+ };
2
36
  }
3
37
  import { CloudImageEditorBlock } from '../../blocks/CloudImageEditor/src/CloudImageEditorBlock.js';
4
38
  //# sourceMappingURL=CloudImageEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CloudImageEditor.d.ts","sourceRoot":"","sources":["CloudImageEditor.js"],"names":[],"mappings":"AAGA;CAQC;sCAVqC,4DAA4D"}
1
+ {"version":3,"file":"CloudImageEditor.d.ts","sourceRoot":"","sources":["CloudImageEditor.js"],"names":[],"mappings":"AAIA;IAMI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAGC;CAUJ;sCArBqC,4DAA4D"}
@@ -1,12 +1,24 @@
1
1
  // @ts-check
2
+ import { InternalEventType } from '../../blocks/UploadCtxProvider/EventEmitter.js';
2
3
  import { CloudImageEditorBlock } from '../../blocks/CloudImageEditor/src/CloudImageEditorBlock.js';
3
4
 
4
5
  export class CloudImageEditor extends CloudImageEditorBlock {
5
6
  static styleAttrs = [...super.styleAttrs, 'uc-wgt-common'];
6
7
 
8
+ constructor() {
9
+ super();
10
+
11
+ this.init$ = {
12
+ ...this.init$,
13
+ '*solution': this.tagName,
14
+ };
15
+ }
16
+
7
17
  initCallback() {
8
18
  super.initCallback();
9
19
 
20
+ this.emit(InternalEventType.INIT_SOLUTION, undefined);
21
+
10
22
  this.a11y?.registerBlock(this);
11
23
  }
12
24
  }
@@ -1,6 +1,7 @@
1
1
  export class FileUploaderInline extends SolutionBlock {
2
2
  init$: {
3
3
  couldCancel: boolean;
4
+ '*solution': string;
4
5
  cancel: () => void;
5
6
  '*commonProgress': number;
6
7
  '*uploadList': never[];
@@ -9,7 +10,7 @@ export class FileUploaderInline extends SolutionBlock {
9
10
  '*collectionState': import("./index.js").OutputCollectionState | null;
10
11
  '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
11
12
  '*uploadTrigger': Set<string>;
12
- '*secureUploadsManager': import("../../../abstract/SecureUploadsManager.js").SecureUploadsManager | null;
13
+ '*secureUploadsManager': import("../../../abstract/managers/SecureUploadsManager.js").SecureUploadsManager | null;
13
14
  '*currentActivity': null;
14
15
  '*currentActivityParams': {};
15
16
  '*history': never[];
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploaderInline.d.ts","sourceRoot":"","sources":["FileUploaderInline.js"],"names":[],"mappings":"AAIA;IAMI;;;;;;;;;;;;;;;;MAUC;IAGH,gCAGC;IAED,6BAEC;CA0BF;;;;8BAtD6B,oCAAoC"}
1
+ {"version":3,"file":"FileUploaderInline.d.ts","sourceRoot":"","sources":["FileUploaderInline.js"],"names":[],"mappings":"AAKA;IAMI;;;;;;;;;;;;;;;;;MAWC;IAGH,gCAGC;IAED,6BAEC;CA4BF;;;;8BAzD6B,oCAAoC"}
@@ -1,4 +1,5 @@
1
1
  // @ts-check
2
+ import { InternalEventType } from '../../../blocks/UploadCtxProvider/EventEmitter.js';
2
3
  import { ActivityBlock } from '../../../abstract/ActivityBlock.js';
3
4
  import { SolutionBlock } from '../../../abstract/SolutionBlock.js';
4
5
 
@@ -11,6 +12,7 @@ export class FileUploaderInline extends SolutionBlock {
11
12
  this.init$ = {
12
13
  ...this.init$,
13
14
  couldCancel: false,
15
+ '*solution': this.tagName,
14
16
  cancel: () => {
15
17
  if (this.couldHistoryBack) {
16
18
  this.$['*historyBack']();
@@ -33,6 +35,8 @@ export class FileUploaderInline extends SolutionBlock {
33
35
  initCallback() {
34
36
  super.initCallback();
35
37
 
38
+ this.emit(InternalEventType.INIT_SOLUTION, undefined);
39
+
36
40
  /** @type {import('../../../abstract/UploaderBlock.js').UploaderBlock} */
37
41
  const uBlock = this.ref.uBlock;
38
42
  this.sub('*currentActivity', (val) => {
@@ -4,6 +4,7 @@ export class FileUploaderMinimal extends SolutionBlock {
4
4
  isHiddenStartFrom: boolean;
5
5
  classUploadList: string;
6
6
  classStartFrom: string;
7
+ '*solution': string;
7
8
  '*commonProgress': number;
8
9
  '*uploadList': never[];
9
10
  '*uploadQueue': import("@uploadcare/upload-client").Queue;
@@ -11,7 +12,7 @@ export class FileUploaderMinimal extends SolutionBlock {
11
12
  '*collectionState': import("./index.js").OutputCollectionState | null;
12
13
  '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
13
14
  '*uploadTrigger': Set<string>;
14
- '*secureUploadsManager': import("../../../abstract/SecureUploadsManager.js").SecureUploadsManager | null;
15
+ '*secureUploadsManager': import("../../../abstract/managers/SecureUploadsManager.js").SecureUploadsManager | null;
15
16
  '*currentActivity': null;
16
17
  '*currentActivityParams': {};
17
18
  '*history': never[];
@@ -19,20 +20,20 @@ export class FileUploaderMinimal extends SolutionBlock {
19
20
  '*closeModal': () => void;
20
21
  };
21
22
  _handleModalOpen(data: {
22
- id: import("../../../abstract/ModalManager.js").ModalId;
23
- modal: import("../../../abstract/ModalManager.js").ModalNode;
23
+ id: import("../../../abstract/managers/ModalManager.js").ModalId;
24
+ modal: import("../../../abstract/managers/ModalManager.js").ModalNode;
24
25
  }): void;
25
26
  _handleModalClose(data: {
26
- id: import("../../../abstract/ModalManager.js").ModalId;
27
- modal: import("../../../abstract/ModalManager.js").ModalNode;
27
+ id: import("../../../abstract/managers/ModalManager.js").ModalId;
28
+ modal: import("../../../abstract/managers/ModalManager.js").ModalNode;
28
29
  }): void;
29
30
  handleModalOpen: ((data: {
30
- id: import("../../../abstract/ModalManager.js").ModalId;
31
- modal: import("../../../abstract/ModalManager.js").ModalNode;
31
+ id: import("../../../abstract/managers/ModalManager.js").ModalId;
32
+ modal: import("../../../abstract/managers/ModalManager.js").ModalNode;
32
33
  }) => void) | undefined;
33
34
  handleModalClose: ((data: {
34
- id: import("../../../abstract/ModalManager.js").ModalId;
35
- modal: import("../../../abstract/ModalManager.js").ModalNode;
35
+ id: import("../../../abstract/managers/ModalManager.js").ModalId;
36
+ modal: import("../../../abstract/managers/ModalManager.js").ModalNode;
36
37
  }) => void) | undefined;
37
38
  }
38
39
  export namespace FileUploaderMinimal {
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploaderMinimal.d.ts","sourceRoot":"","sources":["FileUploaderMinimal.js"],"names":[],"mappings":"AAQA;IAMI;;;;;;;;;;;;;;;;;;MAMC;;;;;;;;;IA8FD;;;4BAAuD;IACvD;;;4BAAyD;CAW5D;;;;8BA5H6B,oCAAoC"}
1
+ {"version":3,"file":"FileUploaderMinimal.d.ts","sourceRoot":"","sources":["FileUploaderMinimal.js"],"names":[],"mappings":"AASA;IAMI;;;;;;;;;;;;;;;;;;;MAOC;;;;;;;;;IAgGD;;;4BAAuD;IACvD;;;4BAAyD;CAW5D;;;;8BAhI6B,oCAAoC"}
@@ -1,7 +1,8 @@
1
1
  //@ts-check
2
2
  import { ActivityBlock } from '../../../abstract/ActivityBlock.js';
3
3
  import { SolutionBlock } from '../../../abstract/SolutionBlock.js';
4
- import { ModalEvents } from '../../../abstract/ModalManager.js';
4
+ import { ModalEvents } from '../../../abstract/managers/ModalManager.js';
5
+ import { InternalEventType } from '../../../blocks/UploadCtxProvider/EventEmitter.js';
5
6
 
6
7
  const ACTIVE_CLASS = 'active';
7
8
  const EMPTY_CLASS = '';
@@ -18,10 +19,11 @@ export class FileUploaderMinimal extends SolutionBlock {
18
19
  isHiddenStartFrom: false,
19
20
  classUploadList: EMPTY_CLASS,
20
21
  classStartFrom: EMPTY_CLASS,
22
+ '*solution': this.tagName,
21
23
  };
22
24
  }
23
25
 
24
- /** @type {import('../../../abstract/ModalManager.js').ModalCb} */
26
+ /** @type {import('../../../abstract/managers/ModalManager.js').ModalCb} */
25
27
  _handleModalOpen(e) {
26
28
  if (e.id === ActivityBlock.activities.CLOUD_IMG_EDIT) {
27
29
  this.set$({
@@ -43,7 +45,7 @@ export class FileUploaderMinimal extends SolutionBlock {
43
45
  }
44
46
  }
45
47
 
46
- /** @type {import('../../../abstract/ModalManager.js').ModalCb} */
48
+ /** @type {import('../../../abstract/managers/ModalManager.js').ModalCb} */
47
49
  _handleModalClose(e) {
48
50
  if (e.id === this.$['*currentActivity']) {
49
51
  this.$['*currentActivity'] = ActivityBlock.activities.UPLOAD_LIST;
@@ -60,6 +62,8 @@ export class FileUploaderMinimal extends SolutionBlock {
60
62
  initCallback() {
61
63
  super.initCallback();
62
64
 
65
+ this.emit(InternalEventType.INIT_SOLUTION, undefined);
66
+
63
67
  /** @type {import('../../../abstract/UploaderBlock.js').UploaderBlock} */
64
68
  const uBlock = this.ref.uBlock;
65
69
  this.sub('*currentActivity', (val) => {
@@ -1,6 +1,7 @@
1
1
  export class FileUploaderRegular extends SolutionBlock {
2
2
  init$: {
3
3
  isHidden: boolean;
4
+ '*solution': string;
4
5
  '*commonProgress': number;
5
6
  '*uploadList': never[];
6
7
  '*uploadQueue': import("@uploadcare/upload-client").Queue;
@@ -8,7 +9,7 @@ export class FileUploaderRegular extends SolutionBlock {
8
9
  '*collectionState': import("./index.js").OutputCollectionState | null;
9
10
  '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
10
11
  '*uploadTrigger': Set<string>;
11
- '*secureUploadsManager': import("../../../abstract/SecureUploadsManager.js").SecureUploadsManager | null;
12
+ '*secureUploadsManager': import("../../../abstract/managers/SecureUploadsManager.js").SecureUploadsManager | null;
12
13
  '*currentActivity': null;
13
14
  '*currentActivityParams': {};
14
15
  '*history': never[];
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploaderRegular.d.ts","sourceRoot":"","sources":["FileUploaderRegular.js"],"names":[],"mappings":"AAIA;IAMI;;;;;;;;;;;;;;;MAGC;CAaJ;;;;8BAzB6B,oCAAoC"}
1
+ {"version":3,"file":"FileUploaderRegular.d.ts","sourceRoot":"","sources":["FileUploaderRegular.js"],"names":[],"mappings":"AAKA;IAMI;;;;;;;;;;;;;;;;MAIC;CAeJ;;;;8BA7B6B,oCAAoC"}
@@ -1,6 +1,7 @@
1
1
  // @ts-check
2
2
  import { SolutionBlock } from '../../../abstract/SolutionBlock.js';
3
3
  import { asBoolean } from '../../../blocks/Config/validatorsType.js';
4
+ import { InternalEventType } from '../../../blocks/UploadCtxProvider/EventEmitter.js';
4
5
 
5
6
  export class FileUploaderRegular extends SolutionBlock {
6
7
  static styleAttrs = [...super.styleAttrs, 'uc-file-uploader-regular'];
@@ -11,12 +12,15 @@ export class FileUploaderRegular extends SolutionBlock {
11
12
  this.init$ = {
12
13
  ...this.init$,
13
14
  isHidden: false,
15
+ '*solution': this.tagName,
14
16
  };
15
17
  }
16
18
 
17
19
  initCallback() {
18
20
  super.initCallback();
19
21
 
22
+ this.emit(InternalEventType.INIT_SOLUTION, undefined);
23
+
20
24
  this.defineAccessor(
21
25
  'headless',
22
26
  /** @param {unknown} value */ (value) => {
package/types/events.d.ts CHANGED
@@ -2,4 +2,4 @@ import type { EventPayload } from '../blocks/UploadCtxProvider/EventEmitter';
2
2
 
3
3
  export type EventMap = {
4
4
  [T in keyof EventPayload]: CustomEvent<EventPayload[T]>;
5
- };
5
+ };
@@ -1,10 +1,10 @@
1
1
  import type { LocaleDefinition } from '../abstract/localeRegistry';
2
2
  import type { complexConfigKeys } from '../blocks/Config/Config';
3
- import type { FuncFileValidator, FuncCollectionValidator } from '../abstract/ValidationManager';
3
+ import type { FuncFileValidator, FuncCollectionValidator } from '../abstract/managers/ValidationManager';
4
4
  import type { CameraMode } from '../blocks/CameraSource/CameraSource';
5
5
  import type { FilesViewMode } from '../blocks/UploadList/UploadList';
6
6
 
7
- export type { FuncFileValidator, FuncCollectionValidator } from '../abstract/ValidationManager';
7
+ export type { FuncFileValidator, FuncCollectionValidator } from '../abstract/managers/ValidationManager';
8
8
  export type { UploaderPublicApi } from '../abstract/UploaderPublicApi';
9
9
 
10
10
  export type UploadError = import('@uploadcare/upload-client').UploadError;
@@ -79,11 +79,6 @@ export type ConfigType = {
79
79
  * List of sources for file uploads.
80
80
  */
81
81
  sourceList: string;
82
- /**
83
- * Top-level origin for the uploader.
84
- * This is used for Google Drive Picker if there is no access to the origin due to the cross-origin policy.
85
- */
86
- topLevelOrigin: string;
87
82
  /**
88
83
  * Maximum size of local files in bytes.
89
84
  */
@@ -142,11 +137,6 @@ export type ConfigType = {
142
137
  * Set custom CNAME.
143
138
  */
144
139
  cdnCname: string;
145
-
146
- /**
147
- * Set CNAME base domain for prefixed CDN URLs.
148
- */
149
- cdnCnamePrefixed: string;
150
140
  /**
151
141
  * Set a custom upload URL.
152
142
  */
@@ -171,10 +161,6 @@ export type ConfigType = {
171
161
  * Maximum number of retry attempts for throttled requests.
172
162
  */
173
163
  retryThrottledRequestMaxTimes: number;
174
- /**
175
- * Maximum number of retry attempts for network errors.
176
- */
177
- retryNetworkErrorMaxTimes: number;
178
164
  /**
179
165
  * Minimum file size for multipart uploads.
180
166
  */
@@ -300,9 +286,11 @@ export type ConfigType = {
300
286
 
301
287
  cloudImageEditorAutoOpen: boolean;
302
288
 
289
+ qualityInsights: boolean;
290
+
303
291
  cloudImageEditorMaskHref: string | null;
304
292
 
305
- /**
293
+ /**
306
294
  * Adds data-testid attributes to the each block. Needed for testing purposes.
307
295
  * @default false
308
296
  */
@@ -314,8 +302,8 @@ export type ConfigAttributesType = KebabCaseKeys<ConfigPlainType> & LowerCaseKey
314
302
 
315
303
  export type KebabCase<S extends string> = S extends `${infer C}${infer T}`
316
304
  ? T extends Uncapitalize<T>
317
- ? `${Uncapitalize<C>}${KebabCase<T>}`
318
- : `${Uncapitalize<C>}-${KebabCase<T>}`
305
+ ? `${Uncapitalize<C>}${KebabCase<T>}`
306
+ : `${Uncapitalize<C>}-${KebabCase<T>}`
319
307
  : S;
320
308
  export type KebabCaseKeys<T extends Record<string, unknown>> = { [Key in keyof T as KebabCase<Key & string>]: T[Key] };
321
309
  export type LowerCase<S extends string> = Lowercase<S>;
@@ -374,17 +362,17 @@ export type OutputErrorTypePayload = {
374
362
 
375
363
  export type OutputError<T extends OutputFileErrorType | OutputCollectionErrorType> = T extends OutputCustomErrorType
376
364
  ? {
377
- type?: T;
378
- message: string;
379
- payload?: OutputErrorTypePayload[T];
380
- }
365
+ type?: T;
366
+ message: string;
367
+ payload?: OutputErrorTypePayload[T];
368
+ }
381
369
  : T extends keyof OutputErrorTypePayload
382
- ? {
383
- type: T;
384
- message: string;
385
- payload?: OutputErrorTypePayload[T];
386
- }
387
- : never;
370
+ ? {
371
+ type: T;
372
+ message: string;
373
+ payload?: OutputErrorTypePayload[T];
374
+ }
375
+ : never;
388
376
 
389
377
  export type OutputErrorFile = OutputError<OutputFileErrorType>;
390
378
 
@@ -406,7 +394,7 @@ export type OutputFileEntry<TStatus extends OutputFileStatus = OutputFileStatus>
406
394
  fullPath: string | null;
407
395
  source: SourceTypes | null;
408
396
  } & (
409
- | {
397
+ | {
410
398
  status: 'success';
411
399
  fileInfo: UploadcareFile;
412
400
  uuid: string;
@@ -418,7 +406,7 @@ export type OutputFileEntry<TStatus extends OutputFileStatus = OutputFileStatus>
418
406
  isRemoved: false;
419
407
  errors: [];
420
408
  }
421
- | {
409
+ | {
422
410
  status: 'failed';
423
411
  fileInfo: UploadcareFile | null;
424
412
  uuid: string | null;
@@ -430,7 +418,7 @@ export type OutputFileEntry<TStatus extends OutputFileStatus = OutputFileStatus>
430
418
  isRemoved: false;
431
419
  errors: OutputError<OutputFileErrorType>[];
432
420
  }
433
- | {
421
+ | {
434
422
  status: 'uploading';
435
423
  fileInfo: null;
436
424
  uuid: null;
@@ -442,7 +430,7 @@ export type OutputFileEntry<TStatus extends OutputFileStatus = OutputFileStatus>
442
430
  isRemoved: false;
443
431
  errors: [];
444
432
  }
445
- | {
433
+ | {
446
434
  status: 'removed';
447
435
  fileInfo: UploadcareFile | null;
448
436
  uuid: string | null;
@@ -454,7 +442,7 @@ export type OutputFileEntry<TStatus extends OutputFileStatus = OutputFileStatus>
454
442
  isRemoved: true;
455
443
  errors: OutputError<OutputFileErrorType>[];
456
444
  }
457
- | {
445
+ | {
458
446
  status: 'idle';
459
447
  fileInfo: null;
460
448
  uuid: null;
@@ -466,7 +454,7 @@ export type OutputFileEntry<TStatus extends OutputFileStatus = OutputFileStatus>
466
454
  isRemoved: false;
467
455
  errors: [];
468
456
  }
469
- );
457
+ );
470
458
 
471
459
  export type OutputCollectionStatus = 'idle' | 'uploading' | 'success' | 'failed';
472
460
 
@@ -490,43 +478,43 @@ export type OutputCollectionState<
490
478
  } & (TGroupFlag extends 'has-group'
491
479
  ? { group: UploadcareGroup }
492
480
  : TGroupFlag extends 'maybe-has-group'
493
- ? { group: UploadcareGroup | null }
494
- : never) &
481
+ ? { group: UploadcareGroup | null }
482
+ : never) &
495
483
  (
496
484
  | {
497
- status: 'idle';
498
- isFailed: false;
499
- isUploading: false;
500
- isSuccess: false;
501
- errors: [];
502
- allEntries: OutputFileEntry<'idle' | 'success'>[];
503
- }
485
+ status: 'idle';
486
+ isFailed: false;
487
+ isUploading: false;
488
+ isSuccess: false;
489
+ errors: [];
490
+ allEntries: OutputFileEntry<'idle' | 'success'>[];
491
+ }
504
492
  | {
505
- status: 'uploading';
506
- isFailed: false;
507
- isUploading: true;
508
- isSuccess: false;
509
- errors: [];
510
- allEntries: OutputFileEntry[];
511
- }
493
+ status: 'uploading';
494
+ isFailed: false;
495
+ isUploading: true;
496
+ isSuccess: false;
497
+ errors: [];
498
+ allEntries: OutputFileEntry[];
499
+ }
512
500
  | {
513
- status: 'success';
514
- isFailed: false;
515
- isUploading: false;
516
- isSuccess: true;
517
- errors: [];
518
- allEntries: OutputFileEntry<'success'>[];
519
- }
501
+ status: 'success';
502
+ isFailed: false;
503
+ isUploading: false;
504
+ isSuccess: true;
505
+ errors: [];
506
+ allEntries: OutputFileEntry<'success'>[];
507
+ }
520
508
  | {
521
- status: 'failed';
522
- isFailed: true;
523
- isUploading: false;
524
- isSuccess: false;
525
- errors: OutputError<OutputCollectionErrorType>[];
526
- allEntries: OutputFileEntry[];
527
- }
509
+ status: 'failed';
510
+ isFailed: true;
511
+ isUploading: false;
512
+ isSuccess: false;
513
+ errors: OutputError<OutputCollectionErrorType>[];
514
+ allEntries: OutputFileEntry[];
515
+ }
528
516
  );
529
517
 
530
518
  export { EventType, EventPayload } from '../blocks/UploadCtxProvider/EventEmitter';
531
519
 
532
- export { };
520
+ export {};
@@ -1,3 +1,3 @@
1
- /** @type {import('../../../abstract/ValidationManager.js').FuncCollectionValidator} */
2
- export const validateCollectionUploadError: import("../../../abstract/ValidationManager.js").FuncCollectionValidator;
1
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncCollectionValidator} */
2
+ export const validateCollectionUploadError: import("../../../abstract/managers/ValidationManager.js").FuncCollectionValidator;
3
3
  //# sourceMappingURL=validateCollectionUploadError.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validateCollectionUploadError.d.ts","sourceRoot":"","sources":["validateCollectionUploadError.js"],"names":[],"mappings":"AAEA,uFAAuF;AACvF,4CADW,OAAO,wCAAwC,EAAE,uBAAuB,CAQjF"}
1
+ {"version":3,"file":"validateCollectionUploadError.d.ts","sourceRoot":"","sources":["validateCollectionUploadError.js"],"names":[],"mappings":"AAEA,gGAAgG;AAChG,4CADW,OAAO,iDAAiD,EAAE,uBAAuB,CAQ1F"}
@@ -1,6 +1,6 @@
1
1
  // @ts-check
2
2
 
3
- /** @type {import('../../../abstract/ValidationManager.js').FuncCollectionValidator} */
3
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncCollectionValidator} */
4
4
  export const validateCollectionUploadError = (collection, api) => {
5
5
  if (collection.failedCount > 0) {
6
6
  return {
@@ -1,3 +1,3 @@
1
- /** @type {import('../../../abstract/ValidationManager.js').FuncCollectionValidator} */
2
- export const validateMultiple: import("../../../abstract/ValidationManager.js").FuncCollectionValidator;
1
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncCollectionValidator} */
2
+ export const validateMultiple: import("../../../abstract/managers/ValidationManager.js").FuncCollectionValidator;
3
3
  //# sourceMappingURL=validateMultiple.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validateMultiple.d.ts","sourceRoot":"","sources":["validateMultiple.js"],"names":[],"mappings":"AAEA,uFAAuF;AACvF,+BADW,OAAO,wCAAwC,EAAE,uBAAuB,CAwCjF"}
1
+ {"version":3,"file":"validateMultiple.d.ts","sourceRoot":"","sources":["validateMultiple.js"],"names":[],"mappings":"AAEA,gGAAgG;AAChG,+BADW,OAAO,iDAAiD,EAAE,uBAAuB,CAwC1F"}
@@ -1,6 +1,6 @@
1
1
  //@ts-check
2
2
 
3
- /** @type {import('../../../abstract/ValidationManager.js').FuncCollectionValidator} */
3
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncCollectionValidator} */
4
4
  export const validateMultiple = (collection, api) => {
5
5
  const total = collection.totalCount;
6
6
  const multipleMin = api.cfg.multiple ? api.cfg.multipleMin : 0;
@@ -1,3 +1,3 @@
1
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
2
- export const validateFileType: import("../../../abstract/ValidationManager.js").FuncFileValidator;
1
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
2
+ export const validateFileType: import("../../../abstract/managers/ValidationManager.js").FuncFileValidator;
3
3
  //# sourceMappingURL=validateFileType.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validateFileType.d.ts","sourceRoot":"","sources":["validateFileType.js"],"names":[],"mappings":"AAGA,iFAAiF;AACjF,+BADW,OAAO,wCAAwC,EAAE,iBAAiB,CA0B3E"}
1
+ {"version":3,"file":"validateFileType.d.ts","sourceRoot":"","sources":["validateFileType.js"],"names":[],"mappings":"AAGA,0FAA0F;AAC1F,+BADW,OAAO,iDAAiD,EAAE,iBAAiB,CA0BpF"}
@@ -1,7 +1,7 @@
1
1
  // @ts-check
2
2
  import { IMAGE_ACCEPT_LIST, matchExtension, matchMimeType, mergeFileTypes } from '../../fileTypes.js';
3
3
 
4
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
4
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
5
5
  export const validateFileType = (outputEntry, api) => {
6
6
  const imagesOnly = api.cfg.imgOnly;
7
7
  const accept = api.cfg.accept;
@@ -1,3 +1,3 @@
1
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
2
- export const validateIsImage: import("../../../abstract/ValidationManager.js").FuncFileValidator;
1
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
2
+ export const validateIsImage: import("../../../abstract/managers/ValidationManager.js").FuncFileValidator;
3
3
  //# sourceMappingURL=validateIsImage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validateIsImage.d.ts","sourceRoot":"","sources":["validateIsImage.js"],"names":[],"mappings":"AAEA,iFAAiF;AACjF,8BADW,OAAO,wCAAwC,EAAE,iBAAiB,CAsB3E"}
1
+ {"version":3,"file":"validateIsImage.d.ts","sourceRoot":"","sources":["validateIsImage.js"],"names":[],"mappings":"AAEA,0FAA0F;AAC1F,8BADW,OAAO,iDAAiD,EAAE,iBAAiB,CAsBpF"}
@@ -1,6 +1,6 @@
1
1
  // @ts-check
2
2
 
3
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
3
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
4
4
  export const validateIsImage = (outputEntry, api) => {
5
5
  const imagesOnly = api.cfg.imgOnly;
6
6
  const isImage = outputEntry.isImage;
@@ -1,3 +1,3 @@
1
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
2
- export const validateMaxSizeLimit: import("../../../abstract/ValidationManager.js").FuncFileValidator;
1
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
2
+ export const validateMaxSizeLimit: import("../../../abstract/managers/ValidationManager.js").FuncFileValidator;
3
3
  //# sourceMappingURL=validateMaxSizeLimit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validateMaxSizeLimit.d.ts","sourceRoot":"","sources":["validateMaxSizeLimit.js"],"names":[],"mappings":"AAGA,iFAAiF;AACjF,mCADW,OAAO,wCAAwC,EAAE,iBAAiB,CAW3E"}
1
+ {"version":3,"file":"validateMaxSizeLimit.d.ts","sourceRoot":"","sources":["validateMaxSizeLimit.js"],"names":[],"mappings":"AAGA,0FAA0F;AAC1F,mCADW,OAAO,iDAAiD,EAAE,iBAAiB,CAWpF"}
@@ -1,7 +1,7 @@
1
1
  // @ts-check
2
2
  import { prettyBytes } from '../../prettyBytes.js';
3
3
 
4
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
4
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
5
5
  export const validateMaxSizeLimit = (outputEntry, api) => {
6
6
  const maxFileSize = api.cfg.maxLocalFileSizeBytes;
7
7
  const fileSize = outputEntry.size;
@@ -1,3 +1,3 @@
1
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
2
- export const validateUploadError: import("../../../abstract/ValidationManager.js").FuncFileValidator;
1
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
2
+ export const validateUploadError: import("../../../abstract/managers/ValidationManager.js").FuncFileValidator;
3
3
  //# sourceMappingURL=validateUploadError.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validateUploadError.d.ts","sourceRoot":"","sources":["validateUploadError.js"],"names":[],"mappings":"AAGA,iFAAiF;AACjF,kCADW,OAAO,wCAAwC,EAAE,iBAAiB,CA4C3E"}
1
+ {"version":3,"file":"validateUploadError.d.ts","sourceRoot":"","sources":["validateUploadError.js"],"names":[],"mappings":"AAGA,0FAA0F;AAC1F,kCADW,OAAO,iDAAiD,EAAE,iBAAiB,CA4CpF"}
@@ -1,7 +1,7 @@
1
1
  // @ts-check
2
2
  import { NetworkError, UploadError } from '@uploadcare/upload-client';
3
3
 
4
- /** @type {import('../../../abstract/ValidationManager.js').FuncFileValidator} */
4
+ /** @type {import('../../../abstract/managers/ValidationManager.js').FuncFileValidator} */
5
5
  export const validateUploadError = (outputEntry, api) => {
6
6
  const { internalId } = outputEntry;
7
7