@lion/ui 0.7.7 → 0.7.8
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/components/calendar/src/LionCalendar.js +9 -5
- package/components/calendar/test/lion-calendar.test.js +33 -6
- package/components/input-datepicker/src/LionInputDatepicker.js +1 -21
- package/components/input-datepicker/test/lion-input-datepicker.test.js +27 -0
- package/custom-elements.json +0 -18
- package/dist-types/components/calendar/src/LionCalendar.d.ts +1 -0
- package/dist-types/components/calendar/src/LionCalendar.d.ts.map +1 -1
- package/dist-types/components/input-datepicker/src/LionInputDatepicker.d.ts +0 -5
- package/dist-types/components/input-datepicker/src/LionInputDatepicker.d.ts.map +1 -1
- package/dist-types/tsconfig.tsbuildinfo +1 -1
- package/docs/components/checkbox-group/overview.md +2 -2
- package/docs/components/collapsible/overview.md +1 -1
- package/docs/components/combobox/overview.md +1 -1
- package/docs/components/combobox/use-cases.md +1 -1
- package/docs/components/dialog/overview.md +1 -1
- package/docs/components/fieldset/overview.md +5 -5
- package/docs/components/form/overview.md +3 -3
- package/docs/components/icon/use-cases.md +1 -1
- package/docs/components/input/overview.md +1 -1
- package/docs/components/input-amount/overview.md +3 -3
- package/docs/components/input-date/overview.md +3 -3
- package/docs/components/input-datepicker/api-table.md +0 -2
- package/docs/components/input-datepicker/overview.md +5 -5
- package/docs/components/input-email/overview.md +2 -2
- package/docs/components/input-file/overview.md +1 -1
- package/docs/components/input-iban/overview.md +2 -2
- package/docs/components/input-range/overview.md +2 -2
- package/docs/components/input-stepper/overview.md +1 -1
- package/docs/components/input-tel/overview.md +1 -1
- package/docs/components/input-tel/use-cases.md +6 -6
- package/docs/components/input-tel-dropdown/overview.md +1 -1
- package/docs/components/listbox/use-cases.md +1 -1
- package/docs/components/radio-group/overview.md +3 -3
- package/docs/components/select/use-cases.md +1 -1
- package/docs/components/select-rich/use-cases.md +1 -1
- package/docs/components/tabs/examples.md +1 -1
- package/docs/fundamentals/index.md +4 -4
- package/docs/fundamentals/node-tools/providence-analytics/LocalConfiguration.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/QueryResult.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/analyzer.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/dashboard.md +1 -1
- package/docs/fundamentals/node-tools/providence-analytics/overview.md +3 -3
- package/docs/fundamentals/node-tools/publish-docs/overview.md +3 -3
- package/docs/fundamentals/node-tools/rocket-preset-extend-lion-docs/overview.md +2 -2
- package/docs/fundamentals/rationales/accessibility.md +1 -1
- package/docs/fundamentals/systems/core/SlotMixin.md +1 -1
- package/docs/fundamentals/systems/core/overview.md +1 -1
- package/docs/fundamentals/systems/form/formatting-and-parsing.md +4 -4
- package/docs/fundamentals/systems/form/model-value.md +1 -1
- package/docs/fundamentals/systems/form/overview.md +28 -28
- package/docs/fundamentals/systems/form/validate.md +2 -2
- package/docs/fundamentals/systems/localize/overview.md +4 -4
- package/docs/fundamentals/systems/overlays/configuration.md +2 -2
- package/docs/fundamentals/systems/overlays/overview.md +5 -5
- package/docs/fundamentals/systems/overlays/use-cases.md +2 -2
- package/docs/fundamentals/tools/helpers/overview.md +1 -1
- package/docs/fundamentals/tools/singleton-manager/overview.md +4 -4
- package/docs/guides/how-to/create-a-custom-field.md +5 -5
- package/docs/guides/how-to/create-a-form.md +4 -4
- package/docs/guides/how-to/extend-a-native-input.md +2 -2
- package/docs/guides/index.md +8 -8
- package/docs/guides/principles/index.md +5 -5
- package/docs/guides/principles/styling.md +1 -1
- package/package.json +1 -1
|
@@ -270,11 +270,6 @@ export class LionCalendar extends LocalizeMixin(LitElement) {
|
|
|
270
270
|
|
|
271
271
|
this.__connectedCallbackDone = true;
|
|
272
272
|
|
|
273
|
-
this.__calculateInitialCentralDate();
|
|
274
|
-
|
|
275
|
-
// setup data for initial render
|
|
276
|
-
this.__data = this.__createData();
|
|
277
|
-
|
|
278
273
|
/**
|
|
279
274
|
* This logic needs to happen on firstUpdated, but every time the DOM node is moved as well
|
|
280
275
|
* since firstUpdated only runs once, this logic is moved here, but after updateComplete
|
|
@@ -305,6 +300,13 @@ export class LionCalendar extends LocalizeMixin(LitElement) {
|
|
|
305
300
|
}
|
|
306
301
|
}
|
|
307
302
|
|
|
303
|
+
firstUpdated() {
|
|
304
|
+
this.__calculateInitialCentralDate();
|
|
305
|
+
|
|
306
|
+
// setup data for initial render
|
|
307
|
+
this.__data = this.__createData();
|
|
308
|
+
}
|
|
309
|
+
|
|
308
310
|
disconnectedCallback() {
|
|
309
311
|
super.disconnectedCallback();
|
|
310
312
|
if (this.__contentWrapperElement) {
|
|
@@ -372,6 +374,8 @@ export class LionCalendar extends LocalizeMixin(LitElement) {
|
|
|
372
374
|
if (this.centralDate === this.__today && this.selectedDate) {
|
|
373
375
|
// initialized with selectedDate only if user didn't provide another one
|
|
374
376
|
this.centralDate = this.selectedDate;
|
|
377
|
+
} else if (!this.__isEnabledDate(this.centralDate)) {
|
|
378
|
+
this.centralDate = this.findNearestEnabledDate(this.centralDate);
|
|
375
379
|
}
|
|
376
380
|
/** @type {Date} */
|
|
377
381
|
this.__initialCentralDate = this.centralDate;
|
|
@@ -465,9 +465,8 @@ describe('<lion-calendar>', () => {
|
|
|
465
465
|
`);
|
|
466
466
|
|
|
467
467
|
clock.restore();
|
|
468
|
-
expect(isSameDate(el.centralDate, new Date('2019/
|
|
469
|
-
expect(isSameDate(elSetting.centralDate, new Date('2019/07/03'))
|
|
470
|
-
.true;
|
|
468
|
+
expect(isSameDate(el.centralDate, new Date('2019/07/03'))).to.be.true;
|
|
469
|
+
expect(isSameDate(elSetting.centralDate, new Date('2019/07/03'))).to.be.true;
|
|
471
470
|
});
|
|
472
471
|
|
|
473
472
|
describe('Normalization', () => {
|
|
@@ -573,7 +572,7 @@ describe('<lion-calendar>', () => {
|
|
|
573
572
|
.disableDates="${/** @param {Date} d */ d => d.getDate() === 15}"
|
|
574
573
|
></lion-calendar>
|
|
575
574
|
`);
|
|
576
|
-
el.focusDate(el.findNearestEnabledDate());
|
|
575
|
+
el.focusDate(el.findNearestEnabledDate(new Date()));
|
|
577
576
|
await el.updateComplete;
|
|
578
577
|
|
|
579
578
|
const elObj = new CalendarObject(el);
|
|
@@ -590,7 +589,7 @@ describe('<lion-calendar>', () => {
|
|
|
590
589
|
.disableDates="${/** @param {Date} d */ d => d.getFullYear() > 1998}"
|
|
591
590
|
></lion-calendar>
|
|
592
591
|
`);
|
|
593
|
-
el.focusDate(el.findNearestEnabledDate());
|
|
592
|
+
el.focusDate(el.findNearestEnabledDate(new Date()));
|
|
594
593
|
await el.updateComplete;
|
|
595
594
|
|
|
596
595
|
expect(el.centralDate.getFullYear()).to.equal(1998);
|
|
@@ -609,7 +608,7 @@ describe('<lion-calendar>', () => {
|
|
|
609
608
|
></lion-calendar>
|
|
610
609
|
`);
|
|
611
610
|
|
|
612
|
-
el.focusDate(el.findNearestEnabledDate());
|
|
611
|
+
el.focusDate(el.findNearestEnabledDate(new Date()));
|
|
613
612
|
await el.updateComplete;
|
|
614
613
|
|
|
615
614
|
expect(el.centralDate.getFullYear()).to.equal(2002);
|
|
@@ -1262,6 +1261,34 @@ describe('<lion-calendar>', () => {
|
|
|
1262
1261
|
|
|
1263
1262
|
clock.restore();
|
|
1264
1263
|
});
|
|
1264
|
+
|
|
1265
|
+
it('is nearest to today if no selected date is available and today is disabled', async () => {
|
|
1266
|
+
const clock = sinon.useFakeTimers({ now: new Date('2000/12/15').getTime() });
|
|
1267
|
+
|
|
1268
|
+
const calWithMin = await fixture(
|
|
1269
|
+
html`<lion-calendar .minDate=${new Date('2000/12/25')}></lion-calendar>`,
|
|
1270
|
+
);
|
|
1271
|
+
const calObjWithMin = new CalendarObject(calWithMin);
|
|
1272
|
+
expect(calObjWithMin.centralDayObj?.monthday).to.equal(25);
|
|
1273
|
+
|
|
1274
|
+
const calWithMax = await fixture(
|
|
1275
|
+
html`<lion-calendar .maxDate=${new Date('2000/12/05')}></lion-calendar>`,
|
|
1276
|
+
);
|
|
1277
|
+
const calObjWithMax = new CalendarObject(calWithMax);
|
|
1278
|
+
expect(calObjWithMax.centralDayObj?.monthday).to.equal(5);
|
|
1279
|
+
|
|
1280
|
+
const calWithDisabled = await fixture(
|
|
1281
|
+
html`<lion-calendar
|
|
1282
|
+
.disableDates=${/** @param {Date} date */ date => date.getDate() === 15}
|
|
1283
|
+
></lion-calendar>`,
|
|
1284
|
+
);
|
|
1285
|
+
await calWithDisabled.updateComplete;
|
|
1286
|
+
|
|
1287
|
+
const calObjWithDisabled = new CalendarObject(calWithDisabled);
|
|
1288
|
+
expect(calObjWithDisabled.centralDayObj?.monthday).to.equal(16);
|
|
1289
|
+
|
|
1290
|
+
clock.restore();
|
|
1291
|
+
});
|
|
1265
1292
|
});
|
|
1266
1293
|
|
|
1267
1294
|
/**
|
|
@@ -102,23 +102,6 @@ export class LionInputDatepicker extends ScopedElementsMixin(
|
|
|
102
102
|
};
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
_inputFormatter = new Intl.DateTimeFormat('en-US', {
|
|
106
|
-
year: 'numeric',
|
|
107
|
-
month: '2-digit',
|
|
108
|
-
day: '2-digit',
|
|
109
|
-
}).formatToParts;
|
|
110
|
-
|
|
111
|
-
/**
|
|
112
|
-
* @param {Date} date
|
|
113
|
-
*/
|
|
114
|
-
// eslint-disable-next-line class-methods-use-this
|
|
115
|
-
_formatDate(date) {
|
|
116
|
-
const day = String(date.getDate()).padStart(2, '0');
|
|
117
|
-
const month = String(date.getMonth() + 1).padStart(2, '0');
|
|
118
|
-
const year = String(date.getFullYear());
|
|
119
|
-
return `${day}/${month}/${year}`;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
105
|
get slots() {
|
|
123
106
|
return {
|
|
124
107
|
...super.slots,
|
|
@@ -370,18 +353,15 @@ export class LionInputDatepicker extends ScopedElementsMixin(
|
|
|
370
353
|
if (this._syncOnUserSelect) {
|
|
371
354
|
// Synchronize new selectedDate value to input
|
|
372
355
|
this._isHandlingUserInput = true;
|
|
356
|
+
this._isHandlingCalendarUserInput = true;
|
|
373
357
|
|
|
374
358
|
if (
|
|
375
359
|
Array.isArray(this.__calendarDisableDates) &&
|
|
376
360
|
this.__calendarDisableDates.includes(selectedDate)
|
|
377
361
|
) {
|
|
378
362
|
// If the selected date is disabled, reset the values
|
|
379
|
-
this.value = '';
|
|
380
|
-
this.formattedValue = '';
|
|
381
363
|
this.modelValue = undefined;
|
|
382
364
|
} else {
|
|
383
|
-
this.formattedValue = this._formatDate(selectedDate);
|
|
384
|
-
this.value = this.formattedValue;
|
|
385
365
|
this.modelValue = selectedDate;
|
|
386
366
|
}
|
|
387
367
|
|
|
@@ -263,6 +263,33 @@ describe('<lion-input-datepicker>', () => {
|
|
|
263
263
|
expect(el.value).to.equal('18/12/2019');
|
|
264
264
|
});
|
|
265
265
|
|
|
266
|
+
describe('localization', () => {
|
|
267
|
+
/** @type {import('@lion/ui/localize.js').LocalizeManager} */ let localizeManager;
|
|
268
|
+
|
|
269
|
+
before(async () => {
|
|
270
|
+
const { getLocalizeManager } = await import('@lion/ui/localize-no-side-effects.js');
|
|
271
|
+
localizeManager = getLocalizeManager();
|
|
272
|
+
});
|
|
273
|
+
|
|
274
|
+
it('should update formatted value and value in accordance of localization upon model value update', async () => {
|
|
275
|
+
localizeManager.locale = 'nl-NL';
|
|
276
|
+
|
|
277
|
+
const el = await fixture(html`
|
|
278
|
+
<lion-input-datepicker .modelValue="${new Date('2022/12/30')}"></lion-input-datepicker>
|
|
279
|
+
`);
|
|
280
|
+
|
|
281
|
+
await el.updateComplete;
|
|
282
|
+
|
|
283
|
+
expect(el.formattedValue).to.equal('30-12-2022');
|
|
284
|
+
expect(el.value).to.equal('30-12-2022');
|
|
285
|
+
});
|
|
286
|
+
|
|
287
|
+
after(() => {
|
|
288
|
+
// @ts-ignore - using protected method to undo setting explict locale
|
|
289
|
+
localizeManager.locale = localizeManager._fallbackLocale;
|
|
290
|
+
});
|
|
291
|
+
});
|
|
292
|
+
|
|
266
293
|
describe('Validators', () => {
|
|
267
294
|
/**
|
|
268
295
|
* Validators are the Application Developer facing API in <lion-input-datepicker>:
|
package/custom-elements.json
CHANGED
|
@@ -73100,24 +73100,6 @@
|
|
|
73100
73100
|
},
|
|
73101
73101
|
"privacy": "public"
|
|
73102
73102
|
},
|
|
73103
|
-
{
|
|
73104
|
-
"kind": "field",
|
|
73105
|
-
"name": "_inputFormatter",
|
|
73106
|
-
"privacy": "protected"
|
|
73107
|
-
},
|
|
73108
|
-
{
|
|
73109
|
-
"kind": "method",
|
|
73110
|
-
"name": "_formatDate",
|
|
73111
|
-
"parameters": [
|
|
73112
|
-
{
|
|
73113
|
-
"name": "date",
|
|
73114
|
-
"type": {
|
|
73115
|
-
"text": "Date"
|
|
73116
|
-
}
|
|
73117
|
-
}
|
|
73118
|
-
],
|
|
73119
|
-
"privacy": "protected"
|
|
73120
|
-
},
|
|
73121
73103
|
{
|
|
73122
73104
|
"kind": "field",
|
|
73123
73105
|
"name": "slots",
|
|
@@ -123,6 +123,7 @@ export class LionCalendar extends LionCalendar_base {
|
|
|
123
123
|
focusSelectedDate(): Promise<void>;
|
|
124
124
|
connectedCallback(): Promise<void>;
|
|
125
125
|
__contentWrapperElement: HTMLButtonElement | undefined;
|
|
126
|
+
firstUpdated(): void;
|
|
126
127
|
disconnectedCallback(): void;
|
|
127
128
|
/**
|
|
128
129
|
* @param {string} [name]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LionCalendar.d.ts","sourceRoot":"","sources":["../../../../components/calendar/src/LionCalendar.js"],"names":[],"mappings":";AAoCA;;GAEG;AACH;IAkEE;QAEI;;WAEG;;;;QAGH;;WAEG;;;;QAGH;;WAEG;;;;QAGH;;;WAGG;;;;QAGH;;;;WAIG;;;;QAGH;;;;WAIG;;;;QAGH;;;;;;WAMG;;;;QAGH;;WAEG;;;;QAGH;;WAEG;;;;QAGH;;WAEG;;;;MAGN;IA4CD,+CAEC;IA1CC;;OAEG;IACH,eAA4B;IAC5B,cAA0B;IAE1B,cAAyC;IACzC,uBAAuB;IACvB,uBADY,GAAG,mCACkB;IAEjC,wBAAwB;IAExB,oBAFY,IAAI,aAEgB;IAEhC,uBAAuB;IACvB,8BAAoC;IACpC,eAAe;IACf,gBAA4C;IAC5C,mBAAmB;IACnB,aADW,IAAI,CACgB;IAC/B;;;OAGG;IACH,sBAAyB;IACzB,eAAe;IACf,gCAAoC;IACpC,eAAe;IACf,sBAA0B;IAC1B,eAAgB;IAChB,eAAe;IACf,uCAA+E;IAC/E,eAAe;IACf,mCAAuE;IACvE,eAAe;IACf,mCAAuE;IACvE,eAAe;IACf,kCAAsE;IAOxE,+CAMC;IAED,+BAEC;IAED,sBAEC;IAED,0BAEC;IAED,qBAEC;IAED,yBAEC;IAED;;OAEG;IACH,gBAFW,IAAI,iBAMd;IAED,yBAOC;IAED,mCAIC;IAED,
|
|
1
|
+
{"version":3,"file":"LionCalendar.d.ts","sourceRoot":"","sources":["../../../../components/calendar/src/LionCalendar.js"],"names":[],"mappings":";AAoCA;;GAEG;AACH;IAkEE;QAEI;;WAEG;;;;QAGH;;WAEG;;;;QAGH;;WAEG;;;;QAGH;;;WAGG;;;;QAGH;;;;WAIG;;;;QAGH;;;;WAIG;;;;QAGH;;;;;;WAMG;;;;QAGH;;WAEG;;;;QAGH;;WAEG;;;;QAGH;;WAEG;;;;MAGN;IA4CD,+CAEC;IA1CC;;OAEG;IACH,eAA4B;IAC5B,cAA0B;IAE1B,cAAyC;IACzC,uBAAuB;IACvB,uBADY,GAAG,mCACkB;IAEjC,wBAAwB;IAExB,oBAFY,IAAI,aAEgB;IAEhC,uBAAuB;IACvB,8BAAoC;IACpC,eAAe;IACf,gBAA4C;IAC5C,mBAAmB;IACnB,aADW,IAAI,CACgB;IAC/B;;;OAGG;IACH,sBAAyB;IACzB,eAAe;IACf,gCAAoC;IACpC,eAAe;IACf,sBAA0B;IAC1B,eAAgB;IAChB,eAAe;IACf,uCAA+E;IAC/E,eAAe;IACf,mCAAuE;IACvE,eAAe;IACf,mCAAuE;IACvE,eAAe;IACf,kCAAsE;IAOxE,+CAMC;IAED,+BAEC;IAED,sBAEC;IAED,0BAEC;IAED,qBAEC;IAED,yBAEC;IAED;;OAEG;IACH,gBAFW,IAAI,iBAMd;IAED,yBAOC;IAED,mCAIC;IAED,mCAkCC;IATG,uDAEC;IASL,qBAKC;IAED,6BAaC;IAUD;;;;;OAKG;IACH,oDAJW,OAAO,sEAEL,IAAI,CAkBhB;IAED;;;OAGG;IACH,wBAOC;IAED;;OAEG;IACH,sCASC;IAFC,mBAAmB;IACnB,uCAA4C;IAG9C;;;;OAIG;IACH,gCAkBC;IAED;;;;OAIG;IACH,+BAWC;IAED;;OAEG;IACH,2BAQC;IAED;;OAEG;IACH,qBAeC;IAED;;;;;OAKG;IACH,8BAiBC;IAED;;;;;OAKG;IACH,0BAiBC;IAED;;;;;OAKG;IAEH,uCANW,MAAM,iBACN,MAAM,gBACN,MAAM,wCA0BhB;IAGD,8DAEC;IAED;;;;;OAKG;IAEH,mCANW,MAAM,aACN,MAAM,YACN,MAAM,wCA0BhB;IAGD,0DAEC;IAED;;;;;;;OAOG;IACH,6BAEC;IAED;;;OAGG;IACH,iCAuBC;IAED;;;;;OAKG;IACH,8BA0CC;IAED;;;OAGG;IACH,qBAkBC;IAED;;;OAGG;IACH,6BAUC;IATC,+BAAgC;IAWlC;;OAEG;IACH,6BAIC;IAED;;;OAGG;IACH,mDAGC;IAED;;;OAGG;IACH,uDAGC;IAED;;;OAGG;IACH,sDAGC;IAED;;;OAGG;IACH,wBAGC;IAED;;;;;OAKG;IACH,iCAmCC;IAED;;;OAGG;IACH,8BAKC;IAED;;OAEG;IACH,8BASC;IAED;;OAEG;IACH,6BASC;IAED;;;OAGG;IACH,6BAIC;IAED;;;OAGG;IACH,kCAsDC;IAED;;;;;;;OAOG;IACH,qBAeC;IAED;;OAEG;IACH,oBAEC;CACF;kBAx5BY,OAAO,iBAAiB,EAAE,GAAG;mBAC7B,OAAO,iBAAiB,EAAE,IAAI;oBAC9B,OAAO,iBAAiB,EAAE,KAAK"}
|
|
@@ -20,11 +20,6 @@ export class LionInputDatepicker extends LionInputDatepicker_base {
|
|
|
20
20
|
* @returns {Date | undefined} a 'guarded' modelValue
|
|
21
21
|
*/
|
|
22
22
|
static __getSyncDownValue(modelValue: unknown): Date | undefined;
|
|
23
|
-
_inputFormatter: (date?: number | Date | undefined) => Intl.DateTimeFormatPart[];
|
|
24
|
-
/**
|
|
25
|
-
* @param {Date} date
|
|
26
|
-
*/
|
|
27
|
-
_formatDate(date: Date): string;
|
|
28
23
|
/**
|
|
29
24
|
* @protected
|
|
30
25
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LionInputDatepicker.d.ts","sourceRoot":"","sources":["../../../../components/input-datepicker/src/LionInputDatepicker.js"],"names":[],"mappings":";AAiBA;;;GAGG;AAEH;;GAEG;AACH;IAGE;;MAKC;IAED,wFAgCC;IAED,kBAAkB;IAClB,6BAgCC;
|
|
1
|
+
{"version":3,"file":"LionInputDatepicker.d.ts","sourceRoot":"","sources":["../../../../components/input-datepicker/src/LionInputDatepicker.js"],"names":[],"mappings":";AAiBA;;;GAGG;AAEH;;GAEG;AACH;IAGE;;MAKC;IAED,wFAgCC;IAED,kBAAkB;IAClB,6BAgCC;IAsRD;;;;;OAKG;IACH,gDAFa,IAAI,GAAG,SAAS,CAM5B;IAnRD;;OAEG;IACH,0CAEC;IAED;;;OAGG;IACH,4CAIC;IAIC,eAAe;IACf,oBAAuC;IACvC,iBAAiB;IACjB,uCAAoC;IAGpC,iBAAiB;IACjB,mDAA2C;IAC3C,iBAAiB;IACjB,qCAA6B;IAC7B,iBAAiB;IACjB,qCAA6B;IAC7B,iBAAiB;IACjB,gDAAyC;IAkL3C,uCAOC;IAYD;;;OAGG;IACH,6DAFW;QAAE,MAAM,EAAE;YAAE,YAAY,EAAE,IAAI,CAAA;SAAE,CAAA;KAAC,QAwB3C;IAzMD,eAAe;IACf,gCAKC;IAgBG,qBAAyD;IAI7D;;;;;OAKG;IACH,mEASC;IAED,8DAoBC;IAED,+CAOC;IAED;;;OAGG;IAEH,0DAeC;IAED;;;OAGG;IAEH,yDAYC;IAED;;OAEG;IAEH,6DAEC;IAKC,iDAEC;IAIH;;;;OAIG;IAEH,iCAHa,MAAM,CAmBlB;IAWD;;;OAGG;IACH,iCAIC;IAkDD;;;;OAIG;IACH,gCAFW,SAAS,EAAE,QAkBrB;IAVK,uBAAgC;IAEhC,uBAAgC;IAKhC,4BAAqC;IAK3C;;;;;;OAMG;IAEH,iCALW,KAAK,GAAC,WAAW,YACjB;QAAC,SAAS,EAAE,SAAS,CAAA;KAAC,QAUhC;IAgBC,mDAEC;CAIJ;wBAjbY,OAAO,2CAA2C,EAAE,SAAS;4BAC7D,OAAO,KAAK,EAAE,aAAa"}
|