@uploadcare/file-uploader 1.24.1 → 1.24.3-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.
package/dist/env.js CHANGED
@@ -25,7 +25,7 @@
25
25
  */
26
26
 
27
27
  // package.json
28
- var version = "1.24.1";
28
+ var version = "1.24.3-alpha.0";
29
29
 
30
30
  // src/env.ts
31
31
  var PACKAGE_NAME = "blocks";
package/dist/index.d.ts CHANGED
@@ -104,12 +104,13 @@ declare class ModalManager {
104
104
  destroy(): void;
105
105
  }
106
106
 
107
+ type CommonEventType = InternalEventKey | EventKey;
107
108
  type TelemetryState = TelemetryRequest & {
108
109
  eventTimestamp: number;
109
110
  };
110
111
  type TelemetryEventBody = Partial<Pick<TelemetryState, 'payload' | 'config'>> & {
111
112
  modalId?: string;
112
- eventType?: EventKey;
113
+ eventType?: CommonEventType;
113
114
  };
114
115
  declare class TelemetryManager {
115
116
  private readonly _sessionId;
@@ -181,9 +182,13 @@ declare class Block extends BaseComponent<any> {
181
182
  static reg(name?: string): void;
182
183
  }
183
184
 
184
- declare const EventType: Readonly<{
185
+ declare const InternalEventType: Readonly<{
185
186
  readonly INIT_SOLUTION: "init-solution";
186
187
  readonly CHANGE_CONFIG: "change-config";
188
+ readonly ACTION_EVENT: "action-event";
189
+ readonly ERROR_EVENT: "error-event";
190
+ }>;
191
+ declare const EventType: Readonly<{
187
192
  readonly FILE_ADDED: "file-added";
188
193
  readonly FILE_REMOVED: "file-removed";
189
194
  readonly FILE_UPLOAD_START: "file-upload-start";
@@ -204,6 +209,7 @@ declare const EventType: Readonly<{
204
209
  readonly GROUP_CREATED: "group-created";
205
210
  }>;
206
211
  type EventKey = (typeof EventType)[keyof typeof EventType];
212
+ type InternalEventKey = (typeof InternalEventType)[keyof typeof InternalEventType];
207
213
  type EventPayload = {
208
214
  [EventType.FILE_ADDED]: OutputFileEntry<'idle'>;
209
215
  [EventType.FILE_REMOVED]: OutputFileEntry<'removed'>;
@@ -230,8 +236,6 @@ type EventPayload = {
230
236
  [EventType.COMMON_UPLOAD_FAILED]: OutputCollectionState<'failed'>;
231
237
  [EventType.CHANGE]: OutputCollectionState;
232
238
  [EventType.GROUP_CREATED]: OutputCollectionState<'success', 'has-group'>;
233
- [EventType.INIT_SOLUTION]: void;
234
- [EventType.CHANGE_CONFIG]: void;
235
239
  };
236
240
  declare class EventEmitter {
237
241
  private _timeoutStore;
@@ -527,6 +531,7 @@ declare class Config extends Block {
527
531
  _assertSameValueDifferentReference(key: string, previousValue: unknown, nextValue: unknown): void;
528
532
  initCallback(): void;
529
533
  attributeChangedCallback(name: keyof typeof attrStateMapping, oldVal: string, newVal: string): void;
534
+ get computationControllers(): any;
530
535
  }
531
536
  interface Config extends ConfigType {
532
537
  }
@@ -1366,6 +1371,7 @@ declare class CropFrame extends Block {
1366
1371
  private readonly _handlePointerUp;
1367
1372
  private readonly _handlePointerMove;
1368
1373
  private readonly _handleSvgPointerMove;
1374
+ private readonly _backdropMaskId;
1369
1375
  private _backdropMask?;
1370
1376
  private _backdropMaskInner?;
1371
1377
  private _frameThumbs?;
@@ -1959,8 +1965,6 @@ type EventListenerMap = {
1959
1965
  declare class UploadCtxProvider extends UploaderBlock {
1960
1966
  static styleAttrs: string[];
1961
1967
  static EventType: Readonly<{
1962
- readonly INIT_SOLUTION: "init-solution";
1963
- readonly CHANGE_CONFIG: "change-config";
1964
1968
  readonly FILE_ADDED: "file-added";
1965
1969
  readonly FILE_REMOVED: "file-removed";
1966
1970
  readonly FILE_UPLOAD_START: "file-upload-start";
package/dist/index.js CHANGED
@@ -25,13 +25,15 @@
25
25
  */
26
26
 
27
27
  // src/index.ts
28
- import { BaseComponent as BaseComponent4, Data as Data8, UID as UID4 } from "@symbiotejs/symbiote";
28
+ import { BaseComponent as BaseComponent4, Data as Data8, UID as UID5 } from "@symbiotejs/symbiote";
29
29
 
30
30
  // src/blocks/UploadCtxProvider/EventEmitter.ts
31
31
  var DEFAULT_DEBOUNCE_TIMEOUT = 20;
32
32
  var InternalEventType = Object.freeze({
33
33
  INIT_SOLUTION: "init-solution",
34
- CHANGE_CONFIG: "change-config"
34
+ CHANGE_CONFIG: "change-config",
35
+ ACTION_EVENT: "action-event",
36
+ ERROR_EVENT: "error-event"
35
37
  });
36
38
  var EventType = Object.freeze({
37
39
  FILE_ADDED: "file-added",
@@ -51,8 +53,7 @@ var EventType = Object.freeze({
51
53
  COMMON_UPLOAD_SUCCESS: "common-upload-success",
52
54
  COMMON_UPLOAD_FAILED: "common-upload-failed",
53
55
  CHANGE: "change",
54
- GROUP_CREATED: "group-created",
55
- ...InternalEventType
56
+ GROUP_CREATED: "group-created"
56
57
  });
57
58
  var EventEmitter = class {
58
59
  _timeoutStore = /* @__PURE__ */ new Map();
@@ -1216,7 +1217,7 @@ import { TelemetryAPIService } from "@uploadcare/quality-insights";
1216
1217
  import { Queue as Queue2 } from "@uploadcare/upload-client";
1217
1218
 
1218
1219
  // package.json
1219
- var version = "1.24.1";
1220
+ var version = "1.24.3-alpha.0";
1220
1221
 
1221
1222
  // src/env.ts
1222
1223
  var PACKAGE_NAME = "blocks";
@@ -1238,14 +1239,16 @@ var TelemetryManager = class {
1238
1239
  for (const key of Object.keys(this._config)) {
1239
1240
  this._block.subConfigValue(key, (value) => {
1240
1241
  if (this._initialized && this._config[key] !== value) {
1241
- this._block.emit(EventType.CHANGE_CONFIG, void 0);
1242
+ this.sendEvent({
1243
+ eventType: InternalEventType.CHANGE_CONFIG
1244
+ });
1242
1245
  }
1243
1246
  this._setConfig(key, value);
1244
1247
  });
1245
1248
  }
1246
1249
  }
1247
1250
  _init(type) {
1248
- if (type === EventType.INIT_SOLUTION && !this._initialized) {
1251
+ if (type === InternalEventType.INIT_SOLUTION && !this._initialized) {
1249
1252
  this._initialized = true;
1250
1253
  }
1251
1254
  }
@@ -1261,7 +1264,7 @@ var TelemetryManager = class {
1261
1264
  payload.activity = void 0;
1262
1265
  }
1263
1266
  const result = { ...body };
1264
- if (body.eventType === EventType.INIT_SOLUTION || body.eventType === EventType.CHANGE_CONFIG) {
1267
+ if (body.eventType === InternalEventType.INIT_SOLUTION || body.eventType === InternalEventType.CHANGE_CONFIG) {
1265
1268
  result.config = this._config;
1266
1269
  }
1267
1270
  return {
@@ -1289,9 +1292,7 @@ var TelemetryManager = class {
1289
1292
  EventType.FILE_UPLOAD_START,
1290
1293
  EventType.FILE_UPLOAD_PROGRESS,
1291
1294
  EventType.FILE_UPLOAD_SUCCESS,
1292
- EventType.FILE_UPLOAD_FAILED,
1293
- EventType.FILE_URL_CHANGED,
1294
- EventType.GROUP_CREATED
1295
+ EventType.FILE_UPLOAD_FAILED
1295
1296
  ].includes(type)) {
1296
1297
  return true;
1297
1298
  }
@@ -1319,6 +1320,7 @@ var TelemetryManager = class {
1319
1320
  }
1320
1321
  sendEventError(error, context = "unknown") {
1321
1322
  this.sendEvent({
1323
+ eventType: InternalEventType.ERROR_EVENT,
1322
1324
  payload: {
1323
1325
  metadata: {
1324
1326
  event: "error",
@@ -1333,6 +1335,7 @@ var TelemetryManager = class {
1333
1335
  */
1334
1336
  sendEventCloudImageEditor(e, tabId, options = {}) {
1335
1337
  this.sendEvent({
1338
+ eventType: InternalEventType.ACTION_EVENT,
1336
1339
  payload: {
1337
1340
  metadata: {
1338
1341
  tabId,
@@ -4369,16 +4372,64 @@ var CameraSource = class extends UploaderBlock {
4369
4372
  onCancel: () => {
4370
4373
  this.historyBack();
4371
4374
  },
4372
- onShot: () => this._shot(),
4375
+ onShot: () => {
4376
+ this.telemetryManager.sendEvent({
4377
+ eventType: InternalEventType.ACTION_EVENT,
4378
+ payload: {
4379
+ metadata: {
4380
+ event: "shot-camera",
4381
+ node: this.tagName,
4382
+ tabId: this._activeTab
4383
+ }
4384
+ }
4385
+ });
4386
+ this._shot();
4387
+ },
4373
4388
  onRequestPermissions: () => this._capture(),
4374
4389
  /** General method for photo and video capture */
4375
- onStartCamera: () => this._chooseActionWithCamera(),
4390
+ onStartCamera: () => {
4391
+ this.telemetryManager.sendEvent({
4392
+ eventType: InternalEventType.ACTION_EVENT,
4393
+ payload: {
4394
+ metadata: {
4395
+ event: "start-camera",
4396
+ node: this.tagName,
4397
+ tabId: this._activeTab
4398
+ }
4399
+ }
4400
+ });
4401
+ this._chooseActionWithCamera();
4402
+ },
4376
4403
  onStartRecording: () => this._startRecording(),
4377
4404
  onStopRecording: () => this._stopRecording(),
4378
4405
  onToggleRecording: () => this._toggleRecording(),
4379
4406
  onToggleAudio: () => this._toggleEnableAudio(),
4380
- onRetake: () => this._retake(),
4381
- onAccept: () => this._accept(),
4407
+ onRetake: () => {
4408
+ this.telemetryManager.sendEvent({
4409
+ eventType: InternalEventType.ACTION_EVENT,
4410
+ payload: {
4411
+ metadata: {
4412
+ event: "retake-camera",
4413
+ node: this.tagName,
4414
+ tabId: this._activeTab
4415
+ }
4416
+ }
4417
+ });
4418
+ this._retake();
4419
+ },
4420
+ onAccept: () => {
4421
+ this.telemetryManager.sendEvent({
4422
+ eventType: InternalEventType.ACTION_EVENT,
4423
+ payload: {
4424
+ metadata: {
4425
+ event: "accept-camera",
4426
+ node: this.tagName,
4427
+ tabId: this._activeTab
4428
+ }
4429
+ }
4430
+ });
4431
+ this._accept();
4432
+ },
4382
4433
  onClickTab: (event) => {
4383
4434
  const target = event.currentTarget;
4384
4435
  const id = target?.getAttribute("data-id");
@@ -4490,6 +4541,16 @@ var CameraSource = class extends UploaderBlock {
4490
4541
  });
4491
4542
  this._mediaRecorder?.stop();
4492
4543
  this.classList.remove("uc-recording");
4544
+ this.telemetryManager.sendEvent({
4545
+ eventType: InternalEventType.ACTION_EVENT,
4546
+ payload: {
4547
+ metadata: {
4548
+ event: "stop-camera",
4549
+ node: this.tagName,
4550
+ tabId: this._activeTab
4551
+ }
4552
+ }
4553
+ });
4493
4554
  };
4494
4555
  /** This method is used to toggle recording pause/resume */
4495
4556
  _toggleRecording = () => {
@@ -4671,6 +4732,16 @@ var CameraSource = class extends UploaderBlock {
4671
4732
  audioToggleMicrophoneHidden: !this.cfg.enableAudioRecording
4672
4733
  });
4673
4734
  }
4735
+ this.telemetryManager.sendEvent({
4736
+ eventType: InternalEventType.ACTION_EVENT,
4737
+ payload: {
4738
+ metadata: {
4739
+ event: "camera-tab-switch",
4740
+ node: this.tagName,
4741
+ tabId
4742
+ }
4743
+ }
4744
+ });
4674
4745
  this._activeTab = tabId;
4675
4746
  };
4676
4747
  _createFile = (type, ext, format, blob) => {
@@ -5405,10 +5476,12 @@ CloudImageEditorBlock.bindAttributes({
5405
5476
  });
5406
5477
 
5407
5478
  // src/blocks/CloudImageEditor/src/CropFrame.ts
5479
+ import { UID as UID4 } from "@symbiotejs/symbiote";
5408
5480
  var CropFrame = class extends Block {
5409
5481
  _handlePointerUp;
5410
5482
  _handlePointerMove;
5411
5483
  _handleSvgPointerMove;
5484
+ _backdropMaskId = `backdrop-mask-${UID4.generate()}`;
5412
5485
  _backdropMask;
5413
5486
  _backdropMaskInner;
5414
5487
  _frameThumbs;
@@ -5448,7 +5521,7 @@ var CropFrame = class extends Block {
5448
5521
  }
5449
5522
  const { x, y, width, height } = cropBox;
5450
5523
  const svg = this.ref["svg-el"];
5451
- const mask = createSvgNode("mask", { id: "backdrop-mask" });
5524
+ const mask = createSvgNode("mask", { id: this._backdropMaskId });
5452
5525
  const maskRectOuter = createSvgNode("rect", {
5453
5526
  x: 0,
5454
5527
  y: 0,
@@ -5472,7 +5545,7 @@ var CropFrame = class extends Block {
5472
5545
  height: "100%",
5473
5546
  fill: "var(--color-image-background)",
5474
5547
  "fill-opacity": 0.85,
5475
- mask: "url(#backdrop-mask)"
5548
+ mask: `url(#${this._backdropMaskId})`
5476
5549
  });
5477
5550
  svg.appendChild(backdropRect);
5478
5551
  svg.appendChild(mask);
@@ -8235,8 +8308,12 @@ var COMPUTED_PROPERTIES = [
8235
8308
  }
8236
8309
  })
8237
8310
  ];
8238
- var abortControllers = /* @__PURE__ */ new Map();
8239
- var computeProperty = ({ key, setValue, getValue }) => {
8311
+ var computeProperty = ({
8312
+ key,
8313
+ setValue,
8314
+ getValue,
8315
+ computationControllers
8316
+ }) => {
8240
8317
  for (const computed of COMPUTED_PROPERTIES) {
8241
8318
  if (computed.deps.includes(key)) {
8242
8319
  const args = {
@@ -8246,16 +8323,16 @@ var computeProperty = ({ key, setValue, getValue }) => {
8246
8323
  args[dep] = getValue(dep);
8247
8324
  }
8248
8325
  const abortController = new AbortController();
8249
- abortControllers.get(computed.key)?.abort();
8250
- abortControllers.set(computed.key, abortController);
8326
+ computationControllers.get(computed.key)?.abort();
8327
+ computationControllers.set(computed.key, abortController);
8251
8328
  let result;
8252
8329
  try {
8253
8330
  result = computed.fn(args, {
8254
8331
  signal: abortController.signal
8255
8332
  });
8256
8333
  } catch (error) {
8257
- if (abortControllers.get(computed.key) === abortController) {
8258
- abortControllers.delete(computed.key);
8334
+ if (computationControllers.get(computed.key) === abortController) {
8335
+ computationControllers.delete(computed.key);
8259
8336
  }
8260
8337
  console.error(`Failed to compute value for "${computed.key}"`, error);
8261
8338
  return;
@@ -8272,8 +8349,8 @@ var computeProperty = ({ key, setValue, getValue }) => {
8272
8349
  }
8273
8350
  console.error(`Failed to compute value for "${computed.key}"`, error);
8274
8351
  }).finally(() => {
8275
- if (abortControllers.get(computed.key) === abortController) {
8276
- abortControllers.delete(computed.key);
8352
+ if (computationControllers.get(computed.key) === abortController) {
8353
+ computationControllers.delete(computed.key);
8277
8354
  }
8278
8355
  });
8279
8356
  } else {
@@ -8476,7 +8553,8 @@ var Config = class extends Block {
8476
8553
  ...this.init$,
8477
8554
  ...Object.fromEntries(
8478
8555
  Object.entries(initialConfig).map(([key, value]) => [sharedConfigKey(key), value])
8479
- )
8556
+ ),
8557
+ computationControllers: /* @__PURE__ */ new Map()
8480
8558
  };
8481
8559
  }
8482
8560
  _flushValueToAttribute(key, value) {
@@ -8562,7 +8640,8 @@ var Config = class extends Block {
8562
8640
  computeProperty({
8563
8641
  key,
8564
8642
  setValue: this._setValue.bind(this),
8565
- getValue: this._getValue.bind(this)
8643
+ getValue: this._getValue.bind(this),
8644
+ computationControllers: this.computationControllers
8566
8645
  });
8567
8646
  });
8568
8647
  }
@@ -8575,6 +8654,9 @@ var Config = class extends Block {
8575
8654
  anyThis[key] = newVal;
8576
8655
  }
8577
8656
  }
8657
+ get computationControllers() {
8658
+ return this.$.computationControllers;
8659
+ }
8578
8660
  };
8579
8661
  Config.bindAttributes(attrStateMapping);
8580
8662
  for (const key of allConfigKeys) {
@@ -9541,6 +9623,7 @@ var FileItem = class _FileItem extends FileItemConfig {
9541
9623
  ariaLabelStatusFile: "",
9542
9624
  onEdit: this._withEntry((entry) => {
9543
9625
  this.telemetryManager.sendEvent({
9626
+ eventType: InternalEventType.ACTION_EVENT,
9544
9627
  payload: {
9545
9628
  metadata: {
9546
9629
  event: "edit-file",
@@ -9556,6 +9639,7 @@ var FileItem = class _FileItem extends FileItemConfig {
9556
9639
  }),
9557
9640
  onRemove: () => {
9558
9641
  this.telemetryManager.sendEvent({
9642
+ eventType: InternalEventType.ACTION_EVENT,
9559
9643
  payload: {
9560
9644
  metadata: {
9561
9645
  event: "remove-file",
@@ -11265,6 +11349,15 @@ var UploadList = class extends UploaderBlock {
11265
11349
  commonErrorMessage: "",
11266
11350
  hasFiles: false,
11267
11351
  onAdd: () => {
11352
+ this.telemetryManager.sendEvent({
11353
+ eventType: InternalEventType.ACTION_EVENT,
11354
+ payload: {
11355
+ metadata: {
11356
+ event: "add-more",
11357
+ node: this.tagName
11358
+ }
11359
+ }
11360
+ });
11268
11361
  this.api.initFlow(true);
11269
11362
  },
11270
11363
  onUpload: () => {
@@ -11277,6 +11370,15 @@ var UploadList = class extends UploaderBlock {
11277
11370
  this.api.doneFlow();
11278
11371
  },
11279
11372
  onCancel: () => {
11373
+ this.telemetryManager.sendEvent({
11374
+ eventType: InternalEventType.ACTION_EVENT,
11375
+ payload: {
11376
+ metadata: {
11377
+ event: "clear-all",
11378
+ node: this.tagName
11379
+ }
11380
+ }
11381
+ });
11280
11382
  this.uploadCollection.clearAll();
11281
11383
  }
11282
11384
  };
@@ -11463,6 +11565,15 @@ var UrlSource = class extends UploaderBlock {
11463
11565
  importDisabled: true,
11464
11566
  onUpload: (event) => {
11465
11567
  event.preventDefault();
11568
+ this.telemetryManager.sendEvent({
11569
+ eventType: InternalEventType.ACTION_EVENT,
11570
+ payload: {
11571
+ metadata: {
11572
+ event: "upload-from-url",
11573
+ node: this.tagName
11574
+ }
11575
+ }
11576
+ });
11466
11577
  const url = this.ref.input["value"];
11467
11578
  this.api.addFileFromUrl(url, { source: UploadSource.URL });
11468
11579
  this.modalManager?.open(ActivityBlock.activities.UPLOAD_LIST);
@@ -11532,7 +11643,9 @@ var CloudImageEditor = class extends CloudImageEditorBlock {
11532
11643
  }
11533
11644
  initCallback() {
11534
11645
  super.initCallback();
11535
- this.emit(InternalEventType.INIT_SOLUTION, void 0);
11646
+ this.telemetryManager.sendEvent({
11647
+ eventType: InternalEventType.INIT_SOLUTION
11648
+ });
11536
11649
  this.a11y?.registerBlock(this);
11537
11650
  }
11538
11651
  };
@@ -11571,7 +11684,9 @@ var FileUploaderInline = class extends SolutionBlock {
11571
11684
  }
11572
11685
  initCallback() {
11573
11686
  super.initCallback();
11574
- this.emit(InternalEventType.INIT_SOLUTION, void 0);
11687
+ this.telemetryManager.sendEvent({
11688
+ eventType: InternalEventType.INIT_SOLUTION
11689
+ });
11575
11690
  const uBlock = this.ref.uBlock;
11576
11691
  if (!uBlock) {
11577
11692
  return;
@@ -11661,7 +11776,9 @@ var FileUploaderMinimal = class extends SolutionBlock {
11661
11776
  }
11662
11777
  initCallback() {
11663
11778
  super.initCallback();
11664
- this.emit(InternalEventType.INIT_SOLUTION, void 0);
11779
+ this.telemetryManager.sendEvent({
11780
+ eventType: InternalEventType.INIT_SOLUTION
11781
+ });
11665
11782
  const uBlock = this.ref.uBlock;
11666
11783
  if (!uBlock) {
11667
11784
  return;
@@ -11771,7 +11888,9 @@ var FileUploaderRegular = class extends SolutionBlock {
11771
11888
  }
11772
11889
  initCallback() {
11773
11890
  super.initCallback();
11774
- this.emit(InternalEventType.INIT_SOLUTION, void 0);
11891
+ this.telemetryManager.sendEvent({
11892
+ eventType: InternalEventType.INIT_SOLUTION
11893
+ });
11775
11894
  this.defineAccessor("headless", (value) => {
11776
11895
  this.set$({ isHidden: asBoolean2(value) });
11777
11896
  });
@@ -11865,7 +11984,7 @@ export {
11865
11984
  Spinner,
11866
11985
  StartFrom,
11867
11986
  Thumb,
11868
- UID4 as UID,
11987
+ UID5 as UID,
11869
11988
  UploadCtxProvider,
11870
11989
  UploadList,
11871
11990
  UploadSource,
package/dist/index.ssr.js CHANGED
@@ -1132,7 +1132,7 @@ export const ModalEvents = {
1132
1132
  DESTROY: "modal:destroy",
1133
1133
  };
1134
1134
  export const PACKAGE_NAME = `blocks`;
1135
- export const PACKAGE_VERSION = `1.24.1`;
1135
+ export const PACKAGE_VERSION = `1.24.3-alpha.0`;
1136
1136
  export const PresenceToggle = class {
1137
1137
  static template = `<slot></slot> `;
1138
1138
  static reg = () => {};
@@ -1461,8 +1461,6 @@ export const UploadCtxProvider = class {
1461
1461
  COMMON_UPLOAD_FAILED: "common-upload-failed",
1462
1462
  CHANGE: "change",
1463
1463
  GROUP_CREATED: "group-created",
1464
- INIT_SOLUTION: "init-solution",
1465
- CHANGE_CONFIG: "change-config",
1466
1464
  };
1467
1465
  static extSrcList = {
1468
1466
  FACEBOOK: "facebook",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uploadcare/file-uploader",
3
- "version": "1.24.1",
3
+ "version": "1.24.3-alpha.0",
4
4
  "description": "Building blocks for Uploadcare products integration",
5
5
  "keywords": [
6
6
  "web components",
@@ -102,12 +102,13 @@ declare class ModalManager {
102
102
  destroy(): void;
103
103
  }
104
104
 
105
+ type CommonEventType = InternalEventKey | EventKey;
105
106
  type TelemetryState = TelemetryRequest & {
106
107
  eventTimestamp: number;
107
108
  };
108
109
  type TelemetryEventBody = Partial<Pick<TelemetryState, 'payload' | 'config'>> & {
109
110
  modalId?: string;
110
- eventType?: EventKey;
111
+ eventType?: CommonEventType;
111
112
  };
112
113
  declare class TelemetryManager {
113
114
  private readonly _sessionId;
@@ -179,9 +180,13 @@ declare class Block extends BaseComponent<any> {
179
180
  static reg(name?: string): void;
180
181
  }
181
182
 
182
- declare const EventType: Readonly<{
183
+ declare const InternalEventType: Readonly<{
183
184
  readonly INIT_SOLUTION: "init-solution";
184
185
  readonly CHANGE_CONFIG: "change-config";
186
+ readonly ACTION_EVENT: "action-event";
187
+ readonly ERROR_EVENT: "error-event";
188
+ }>;
189
+ declare const EventType: Readonly<{
185
190
  readonly FILE_ADDED: "file-added";
186
191
  readonly FILE_REMOVED: "file-removed";
187
192
  readonly FILE_UPLOAD_START: "file-upload-start";
@@ -202,6 +207,7 @@ declare const EventType: Readonly<{
202
207
  readonly GROUP_CREATED: "group-created";
203
208
  }>;
204
209
  type EventKey = (typeof EventType)[keyof typeof EventType];
210
+ type InternalEventKey = (typeof InternalEventType)[keyof typeof InternalEventType];
205
211
  type EventPayload = {
206
212
  [EventType.FILE_ADDED]: OutputFileEntry<'idle'>;
207
213
  [EventType.FILE_REMOVED]: OutputFileEntry<'removed'>;
@@ -228,8 +234,6 @@ type EventPayload = {
228
234
  [EventType.COMMON_UPLOAD_FAILED]: OutputCollectionState<'failed'>;
229
235
  [EventType.CHANGE]: OutputCollectionState;
230
236
  [EventType.GROUP_CREATED]: OutputCollectionState<'success', 'has-group'>;
231
- [EventType.INIT_SOLUTION]: void;
232
- [EventType.CHANGE_CONFIG]: void;
233
237
  };
234
238
  declare class EventEmitter {
235
239
  private _timeoutStore;
@@ -525,6 +529,7 @@ declare class Config extends Block {
525
529
  _assertSameValueDifferentReference(key: string, previousValue: unknown, nextValue: unknown): void;
526
530
  initCallback(): void;
527
531
  attributeChangedCallback(name: keyof typeof attrStateMapping, oldVal: string, newVal: string): void;
532
+ get computationControllers(): any;
528
533
  }
529
534
  interface Config extends ConfigType {
530
535
  }
@@ -1377,6 +1382,7 @@ declare class CropFrame extends Block {
1377
1382
  private readonly _handlePointerUp;
1378
1383
  private readonly _handlePointerMove;
1379
1384
  private readonly _handleSvgPointerMove;
1385
+ private readonly _backdropMaskId;
1380
1386
  private _backdropMask?;
1381
1387
  private _backdropMaskInner?;
1382
1388
  private _frameThumbs?;
@@ -1970,8 +1976,6 @@ type EventListenerMap = {
1970
1976
  declare class UploadCtxProvider extends UploaderBlock {
1971
1977
  static styleAttrs: string[];
1972
1978
  static EventType: Readonly<{
1973
- readonly INIT_SOLUTION: "init-solution";
1974
- readonly CHANGE_CONFIG: "change-config";
1975
1979
  readonly FILE_ADDED: "file-added";
1976
1980
  readonly FILE_REMOVED: "file-removed";
1977
1981
  readonly FILE_UPLOAD_START: "file-upload-start";