@verbb/formie-web-components 1.0.13 → 1.0.15

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.
@@ -1,7 +1,7 @@
1
1
  import type { FormieRegionKey } from './types.js';
2
2
  export declare function assertValidCustomElementName(name: string): void;
3
3
  /**
4
- * UI overrides for `<formie-core-form>`. Assign to `formie-core-form.registry` or mutate the
4
+ * UI overrides for `<formie-client-form>`. Assign to `formie-client-form.registry` or mutate the
5
5
  * default singleton from {@link getFormieRegistry}.
6
6
  */
7
7
  export declare class FormieRegistry {
@@ -1,4 +1,4 @@
1
- import { type FrontendFormInstance, type FrontendFormState } from '@verbb/formie-core';
1
+ import { type ClientFormInstance, type ClientFormState } from '@verbb/formie-core';
2
2
  import { type TemplateResult } from 'lit';
3
3
  import { type FormieRegistry } from './registry.js';
4
4
  import type { LitElement } from 'lit';
@@ -7,8 +7,8 @@ export type FormieRenderHost = LitElement & {
7
7
  };
8
8
  export type RenderViewContext = {
9
9
  registry: FormieRegistry;
10
- state: FrontendFormState;
11
- instance: FrontendFormInstance;
10
+ state: ClientFormState;
11
+ instance: ClientFormInstance;
12
12
  host: FormieRenderHost;
13
13
  formClass: string;
14
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"render-view.d.ts","sourceRoot":"","sources":["../src/render-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAUH,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EAEzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIzD,OAAO,EAAgC,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAGlF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEtC,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IACxC,aAAa,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC/D,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,IAAI,EAAE,gBAAgB,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AA4kBF,wBAAgB,cAAc,CAAC,GAAG,EAAE,iBAAiB,GAAG,cAAc,CAkDrE;AA4BD,wBAAgB,iBAAiB,CAAC,OAAO,SAAkB,GAAG,cAAc,CAE3E;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAE/D"}
1
+ {"version":3,"file":"render-view.d.ts","sourceRoot":"","sources":["../src/render-view.ts"],"names":[],"mappings":"AACA,OAAO,EAaH,KAAK,kBAAkB,EACvB,KAAK,eAAe,EAEvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIzD,OAAO,EAAgC,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAGlF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEtC,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IACxC,aAAa,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC/D,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,IAAI,EAAE,gBAAgB,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAsnBF,wBAAgB,cAAc,CAAC,GAAG,EAAE,iBAAiB,GAAG,cAAc,CAsDrE;AA4BD,wBAAgB,iBAAiB,CAAC,OAAO,SAAkB,GAAG,cAAc,CAE3E;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAE/D"}
@@ -1,10 +1,10 @@
1
1
  import { LitElement } from 'lit';
2
- import type { FrontendFieldDefinition, FrontendFormDefinition } from '@verbb/formie-core';
3
- /** Internal `<formie-internal-signature>` used by `<formie-core-form>` for draw-signature fields. */
2
+ import type { ClientFieldDefinition, ClientFormDefinition } from '@verbb/formie-core';
3
+ /** Internal `<formie-internal-signature>` used by `<formie-client-form>` for draw-signature fields. */
4
4
  export declare class FormieInternalSignature extends LitElement {
5
5
  static styles: import("lit").CSSResult;
6
- field: FrontendFieldDefinition;
7
- modules: FrontendFormDefinition['modules'];
6
+ field: ClientFieldDefinition;
7
+ modules: ClientFormDefinition['modules'];
8
8
  value: string;
9
9
  disabled: boolean;
10
10
  private loadError;
@@ -1 +1 @@
1
- {"version":3,"file":"signature-element.d.ts","sourceRoot":"","sources":["../src/signature-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAO,MAAM,KAAK,CAAC;AAE5C,OAAO,KAAK,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAG1F,qGAAqG;AACrG,qBAAa,uBAAwB,SAAQ,UAAU;IACnD,OAAgB,MAAM,0BAkCpB;IAGF,KAAK,EAAG,uBAAuB,CAAC;IAGhC,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAM;IAGhD,KAAK,SAAM;IAGX,QAAQ,UAAS;IAGjB,OAAO,CAAC,SAAS,CAAuB;IAExC,OAAO,CAAC,GAAG,CAOK;IAEhB,OAAO,CAAC,cAAc,CAEpB;IAEa,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA4CnC,oBAAoB,IAAI,IAAI;IAWrC,OAAO,CAAC,WAAW,CAMjB;IAEF,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,YAAY;IAcX,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAcrD,OAAO,CAAC,oBAAoB;IAoB5B,OAAO,CAAC,SAAS;IAsBR,MAAM;CAqBlB"}
1
+ {"version":3,"file":"signature-element.d.ts","sourceRoot":"","sources":["../src/signature-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAO,MAAM,KAAK,CAAC;AAE5C,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAGtF,uGAAuG;AACvG,qBAAa,uBAAwB,SAAQ,UAAU;IACnD,OAAgB,MAAM,0BAkCpB;IAGF,KAAK,EAAG,qBAAqB,CAAC;IAG9B,OAAO,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAmE;IAG3G,KAAK,SAAM;IAGX,QAAQ,UAAS;IAGjB,OAAO,CAAC,SAAS,CAAuB;IAExC,OAAO,CAAC,GAAG,CAOK;IAEhB,OAAO,CAAC,cAAc,CAEpB;IAEa,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCnC,oBAAoB,IAAI,IAAI;IAWrC,OAAO,CAAC,WAAW,CAMjB;IAEF,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,YAAY;IAcX,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAcrD,OAAO,CAAC,oBAAoB;IAoB5B,OAAO,CAAC,SAAS;IAsBR,MAAM;CAqBlB"}
@@ -21,6 +21,12 @@ var e = class {
21
21
  constructor(e, t, n, r, i, a) {
22
22
  this.startPoint = e, this.control2 = t, this.control1 = n, this.endPoint = r, this.startWidth = i, this.endWidth = a;
23
23
  }
24
+ startPoint;
25
+ control2;
26
+ control1;
27
+ endPoint;
28
+ startWidth;
29
+ endWidth;
24
30
  static fromPoints(e, n) {
25
31
  let r = this.calculateControlPoints(e[0], e[1], e[2]).c2, i = this.calculateControlPoints(e[1], e[2], e[3]).c1;
26
32
  return new t(e[1], r, i, e[2], n.start, n.end);
@@ -88,6 +94,7 @@ var i = class i extends n {
88
94
  constructor(e, t = {}) {
89
95
  super(), this.canvas = e, this.velocityFilterWeight = t.velocityFilterWeight || .7, this.minWidth = t.minWidth || .5, this.maxWidth = t.maxWidth || 2.5, this.throttle = t.throttle ?? 16, this.minDistance = t.minDistance ?? 5, this.dotSize = t.dotSize || 0, this.penColor = t.penColor || "black", this.backgroundColor = t.backgroundColor || "rgba(0,0,0,0)", this.compositeOperation = t.compositeOperation || "source-over", this.canvasContextOptions = t.canvasContextOptions ?? {}, this._strokeMoveUpdate = this.throttle ? r(i.prototype._strokeUpdate, this.throttle) : i.prototype._strokeUpdate, this._handleMouseDown = this._handleMouseDown.bind(this), this._handleMouseMove = this._handleMouseMove.bind(this), this._handleMouseUp = this._handleMouseUp.bind(this), this._handleTouchStart = this._handleTouchStart.bind(this), this._handleTouchMove = this._handleTouchMove.bind(this), this._handleTouchEnd = this._handleTouchEnd.bind(this), this._handlePointerDown = this._handlePointerDown.bind(this), this._handlePointerMove = this._handlePointerMove.bind(this), this._handlePointerUp = this._handlePointerUp.bind(this), this._handlePointerCancel = this._handlePointerCancel.bind(this), this._handleTouchCancel = this._handleTouchCancel.bind(this), this._ctx = e.getContext("2d", this.canvasContextOptions), this.clear(), this.on();
90
96
  }
97
+ canvas;
91
98
  dotSize;
92
99
  minWidth;
93
100
  maxWidth;
@@ -156,7 +163,7 @@ var i = class i extends n {
156
163
  return this._isEmpty;
157
164
  }
158
165
  fromData(e, { clear: t = !0 } = {}) {
159
- t && this.clear(), this._fromData(e, this._drawCurve.bind(this), this._drawDot.bind(this)), this._data = this._data.concat(e);
166
+ t && this.clear(), this._fromData(e, this._drawCurve.bind(this), this._drawDot.bind(this), this._drawLine.bind(this)), this._data = this._data.concat(e);
160
167
  }
161
168
  toData() {
162
169
  return this._data;
@@ -184,7 +191,7 @@ var i = class i extends n {
184
191
  };
185
192
  }
186
193
  _handleMouseDown(e) {
187
- !this._isLeftButtonPressed(e, !0) || this._drawingStroke || this._strokeBegin(this._pointerEventToSignatureEvent(e));
194
+ this._isLeftButtonPressed(e, !0) && !this._drawingStroke && this._strokeBegin(this._pointerEventToSignatureEvent(e));
188
195
  }
189
196
  _handleMouseMove(e) {
190
197
  if (!this._isLeftButtonPressed(e, !0) || !this._drawingStroke) {
@@ -224,7 +231,7 @@ var i = class i extends n {
224
231
  return this._strokePointerId === void 0 ? t : this._getPointerId(e) === this._strokePointerId;
225
232
  }
226
233
  _handlePointerDown(e) {
227
- this._drawingStroke || !this._isLeftButtonPressed(e) || !this._allowPointerId(e, !0) || (this._strokePointerId = this._getPointerId(e), e.preventDefault(), this._strokeBegin(this._pointerEventToSignatureEvent(e)));
234
+ !this._drawingStroke && this._isLeftButtonPressed(e) && this._allowPointerId(e, !0) && (this._strokePointerId = this._getPointerId(e), e.preventDefault(), this._strokeBegin(this._pointerEventToSignatureEvent(e)));
228
235
  }
229
236
  _handlePointerMove(e) {
230
237
  if (this._allowPointerId(e)) {
@@ -236,7 +243,7 @@ var i = class i extends n {
236
243
  }
237
244
  }
238
245
  _handlePointerUp(e) {
239
- this._isLeftButtonPressed(e) || !this._allowPointerId(e) || (e.preventDefault(), this._strokeEnd(this._pointerEventToSignatureEvent(e)));
246
+ !this._isLeftButtonPressed(e) && this._allowPointerId(e) && (e.preventDefault(), this._strokeEnd(this._pointerEventToSignatureEvent(e)));
240
247
  }
241
248
  _getPointGroupOptions(e) {
242
249
  return {
@@ -261,10 +268,7 @@ var i = class i extends n {
261
268
  case "touchstart":
262
269
  t("touchmove", this._handleTouchMove, { passive: !1 }), t("touchend", this._handleTouchEnd, { passive: !1 }), t("touchcancel", this._handleTouchCancel, { passive: !1 });
263
270
  break;
264
- case "pointerdown":
265
- t("pointermove", this._handlePointerMove, { passive: !1 }), t("pointerup", this._handlePointerUp, { passive: !1 }), t("pointercancel", this._handlePointerCancel, { passive: !1 });
266
- break;
267
- default:
271
+ case "pointerdown": t("pointermove", this._handlePointerMove, { passive: !1 }), t("pointerup", this._handlePointerUp, { passive: !1 }), t("pointercancel", this._handlePointerCancel, { passive: !1 });
268
272
  }
269
273
  this._drawingStroke = !0;
270
274
  let n = this._getPointGroupOptions(), r = {
@@ -347,20 +351,27 @@ var i = class i extends n {
347
351
  }
348
352
  n.closePath(), n.fill();
349
353
  }
354
+ _getDotSize(e) {
355
+ return e.dotSize > 0 ? e.dotSize : (e.minWidth + e.maxWidth) / 2;
356
+ }
350
357
  _drawDot(e, t) {
351
- let n = this._ctx, r = t.dotSize > 0 ? t.dotSize : (t.minWidth + t.maxWidth) / 2;
358
+ let n = this._ctx, r = this._getDotSize(t);
352
359
  n.beginPath(), this._drawCurveSegment(e.x, e.y, r), n.closePath(), n.fillStyle = t.penColor, n.fill();
353
360
  }
354
- _fromData(t, n, r) {
355
- for (let i of t) {
356
- let { points: t } = i, a = this._getPointGroupOptions(i);
357
- if (t.length > 1) for (let r = 0; r < t.length; r += 1) {
358
- let i = t[r], o = new e(i.x, i.y, i.pressure, i.time);
359
- r === 0 && this._reset(a);
360
- let s = this._addPoint(o, a);
361
- s && n(s, a);
361
+ _drawLine(e, t, n) {
362
+ let r = this._ctx;
363
+ r.save(), r.beginPath(), r.moveTo(e.x, e.y), r.lineTo(t.x, t.y), r.lineWidth = this._getDotSize(n) * 2, r.lineCap = "round", r.strokeStyle = n.penColor, r.stroke(), r.restore(), this._isEmpty = !1;
364
+ }
365
+ _fromData(t, n, r, i) {
366
+ for (let a of t) {
367
+ let { points: t } = a, o = this._getPointGroupOptions(a);
368
+ if (t.length > 2) for (let r = 0; r < t.length; r += 1) {
369
+ let i = t[r], a = new e(i.x, i.y, i.pressure, i.time);
370
+ r === 0 && this._reset(o);
371
+ let s = this._addPoint(a, o);
372
+ s && n(s, o);
362
373
  }
363
- else this._reset(a), r(t[0], a);
374
+ else t.length === 2 ? (this._reset(o), i(t[0], t[1], o)) : (this._reset(o), r(t[0], o));
364
375
  }
365
376
  }
366
377
  toSVG({ includeBackgroundColor: e = !1, includeDataUrl: t = !1 } = {}) {
@@ -382,6 +393,9 @@ var i = class i extends n {
382
393
  }, (e, { penColor: t, dotSize: n, minWidth: r, maxWidth: i }) => {
383
394
  let a = document.createElement("circle"), s = n > 0 ? n : (r + i) / 2;
384
395
  a.setAttribute("r", s.toString()), a.setAttribute("cx", e.x.toString()), a.setAttribute("cy", e.y.toString()), a.setAttribute("fill", t), o.appendChild(a);
396
+ }, (e, t, n) => {
397
+ let r = document.createElement("line");
398
+ r.setAttribute("x1", e.x.toString()), r.setAttribute("y1", e.y.toString()), r.setAttribute("x2", t.x.toString()), r.setAttribute("y2", t.y.toString()), r.setAttribute("stroke", n.penColor), r.setAttribute("stroke-width", (this._getDotSize(n) * 2).toString()), r.setAttribute("stroke-linecap", "round"), o.appendChild(r);
385
399
  }), o.outerHTML;
386
400
  }
387
401
  };
package/dist/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { FrontendFieldDefinition } from '@verbb/formie-core';
1
+ import type { ClientErrorAriaLive, ClientFieldDefinition } from '@verbb/formie-core';
2
2
  /** Dispatched as `formie-control-value-change` from custom field controls (`bubbles` + `composed`). */
3
3
  export declare const FORMIE_CONTROL_VALUE_EVENT = "formie-control-value-change";
4
4
  /**
@@ -6,9 +6,12 @@ export declare const FORMIE_CONTROL_VALUE_EVENT = "formie-control-value-change";
6
6
  * Set as properties on the host; listen for {@link FORMIE_CONTROL_VALUE_EVENT}.
7
7
  */
8
8
  export type FormieFieldControlElement = HTMLElement & {
9
- field: FrontendFieldDefinition;
9
+ field: ClientFieldDefinition;
10
10
  value: unknown;
11
11
  errorKey: string;
12
+ errors: string[];
13
+ errorId: string;
14
+ errorAriaLive: ClientErrorAriaLive;
12
15
  disabled: boolean;
13
16
  hidden: boolean;
14
17
  };
@@ -18,9 +21,11 @@ export type FormieFieldControlElement = HTMLElement & {
18
21
  * Use a **default slot** (or light DOM projection) where the control is rendered.
19
22
  */
20
23
  export type FormieFieldElement = HTMLElement & {
21
- field: FrontendFieldDefinition;
24
+ field: ClientFieldDefinition;
22
25
  errors: string[];
26
+ errorId: string;
27
+ errorAriaLive: ClientErrorAriaLive;
23
28
  };
24
- /** Keys for optional custom elements that replace default layout regions on `<formie-core-form>`. */
29
+ /** Keys for optional custom elements that replace default layout regions on `<formie-client-form>`. */
25
30
  export type FormieRegionKey = 'form' | 'page' | 'errorSummary' | 'loading' | 'pageActions';
26
31
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAElE,uGAAuG;AACvG,eAAO,MAAM,0BAA0B,gCAAgC,CAAC;AAExE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG;IAClD,KAAK,EAAE,uBAAuB,CAAC;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG;IAC3C,KAAK,EAAE,uBAAuB,CAAC;IAC/B,MAAM,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF,qGAAqG;AACrG,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,cAAc,GAAG,SAAS,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAErF,uGAAuG;AACvG,eAAO,MAAM,0BAA0B,gCAAgC,CAAC;AAExE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG;IAClD,KAAK,EAAE,qBAAqB,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,mBAAmB,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG;IAC3C,KAAK,EAAE,qBAAqB,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEF,uGAAuG;AACvG,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,cAAc,GAAG,SAAS,GAAG,aAAa,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verbb/formie-web-components",
3
- "version": "1.0.13",
3
+ "version": "1.0.15",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -39,8 +39,8 @@
39
39
  "build": "vite build && tsc -p tsconfig.json"
40
40
  },
41
41
  "dependencies": {
42
- "@verbb/formie-browser": "1.0.13",
43
- "@verbb/formie-core": "1.0.13",
42
+ "@verbb/formie-browser": "1.0.15",
43
+ "@verbb/formie-core": "1.0.15",
44
44
  "lit": "^3.3.2",
45
45
  "signature_pad": "^5.1.3"
46
46
  },
@@ -1 +0,0 @@
1
- {"version":3,"file":"formie-core-form.d.ts","sourceRoot":"","sources":["../src/formie-core-form.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,KAAK,oBAAoB,EAE5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAGjC,OAAO,EAAmD,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AASrG,qBAAa,cAAe,SAAQ,UAAU;IACd,QAAQ,SAAM;IAEY,UAAU,SAAM;IAiBtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAYhB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAU;IAcvC,gBAAgB,EAAE,kBAAkB,CAAiB;IAEA,SAAS,SAAM;IAEV,cAAc,SAAmB;IAE3F,wEAAwE;IACxC,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAC;IAE5D,OAAO,CAAC,SAAS,CAAuB;IAExC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,QAAQ,CAAkC;IAE3D,OAAO,CAAC,QAAQ,CAAqC;IAErD,OAAO,CAAC,aAAa,CAAyB;IAE9C,OAAO,CAAC,cAAc,CAAK;IAElB,gBAAgB,IAAI,WAAW,GAAG,gBAAgB;IAIlD,oBAAoB,IAAI,IAAI;IAK5B,iBAAiB,IAAI,IAAI;cAKf,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,IAAI;IAcvE,qFAAqF;IACrF,iBAAiB,IAAI,oBAAoB,GAAG,IAAI;IAIhD,uDAAuD;IACjD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,OAAO,KAAK,gBAAgB,GAE3B;IAED,OAAO,CAAC,QAAQ;YAWF,SAAS;cAqFJ,MAAM;CAmC5B"}