@ng-matero/extensions 18.4.1 → 19.0.1
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/_index.scss +3 -1
- package/alert/_alert-theme.scss +19 -8
- package/alert/alert.d.ts +1 -2
- package/button/button-loading.d.ts +1 -2
- package/checkbox-group/checkbox-group.d.ts +12 -4
- package/colorpicker/_colorpicker-theme.scss +19 -8
- package/colorpicker/colorpicker-input.d.ts +1 -3
- package/colorpicker/colorpicker-toggle.d.ts +3 -3
- package/colorpicker/colorpicker.d.ts +4 -7
- package/column-resize/column-resize-directives/column-resize-flex.d.ts +2 -1
- package/column-resize/column-resize-directives/column-resize.d.ts +2 -1
- package/column-resize/column-resize-notifier.d.ts +0 -1
- package/column-resize/column-resize.d.ts +1 -1
- package/column-resize/event-dispatcher.d.ts +0 -9
- package/column-resize/overlay-handle.d.ts +1 -1
- package/column-resize/resizable.d.ts +1 -1
- package/column-resize/resize-strategy.d.ts +4 -4
- package/core/datetime/datetime-adapter.d.ts +1 -2
- package/core/datetime/native-datetime-adapter.d.ts +3 -3
- package/core/style/_button-common.scss +18 -0
- package/core/theming/_config-validation.scss +4 -4
- package/core/theming/_definition.scss +12 -2
- package/core/theming/prebuilt/azure-blue.scss +10 -22
- package/core/theming/prebuilt/cyan-orange.scss +10 -22
- package/core/theming/prebuilt/magenta-violet.scss +10 -22
- package/core/theming/prebuilt/rose-red.scss +10 -22
- package/core/tokens/_m3-system.scss +273 -0
- package/core/tokens/_m3-tokens.scss +8 -151
- package/core/tokens/_token-utils.scss +102 -43
- package/core/tokens/m2/_index.scss +2 -0
- package/core/tokens/m3/definitions/_index.scss +1 -0
- package/core/tokens/m3/definitions/_md-comp-plain-tooltip.scss +51 -0
- package/core/tokens/m3/index.scss +2 -0
- package/core/tokens/m3/mdc/_plain-tooltip.scss +15 -0
- package/core/tokens/m3/mtx/_alert.scss +14 -14
- package/core/tokens/m3/mtx/_colorpicker.scss +2 -2
- package/core/tokens/m3/mtx/_datetimepicker.scss +2 -2
- package/core/tokens/m3/mtx/_drawer.scss +2 -2
- package/core/tokens/m3/mtx/_grid.scss +2 -2
- package/core/tokens/m3/mtx/_loader.scss +2 -2
- package/core/tokens/m3/mtx/_popover.scss +2 -2
- package/core/tokens/m3/mtx/_progress.scss +2 -2
- package/core/tokens/m3/mtx/_select.scss +2 -2
- package/core/tokens/m3/mtx/_split.scss +2 -2
- package/datetimepicker/_datetimepicker-theme.scss +23 -10
- package/datetimepicker/calendar-body.d.ts +26 -4
- package/datetimepicker/calendar-body.scss +58 -9
- package/datetimepicker/calendar.d.ts +31 -31
- package/datetimepicker/clock.d.ts +11 -5
- package/datetimepicker/datetimepicker-actions.d.ts +9 -5
- package/datetimepicker/datetimepicker-content.scss +15 -0
- package/datetimepicker/datetimepicker-input.d.ts +4 -5
- package/datetimepicker/datetimepicker-module.d.ts +2 -2
- package/datetimepicker/datetimepicker-toggle.d.ts +4 -3
- package/datetimepicker/datetimepicker.d.ts +12 -8
- package/datetimepicker/month-view.d.ts +22 -7
- package/datetimepicker/multi-year-view.d.ts +20 -20
- package/datetimepicker/public-api.d.ts +2 -2
- package/datetimepicker/{time.d.ts → time-view.d.ts} +21 -9
- package/datetimepicker/{time.scss → time-view.scss} +1 -1
- package/datetimepicker/year-view.d.ts +21 -11
- package/dialog/dialog-container.d.ts +1 -2
- package/dialog/dialog.d.ts +0 -1
- package/drawer/_drawer-theme.scss +19 -8
- package/drawer/drawer-container.d.ts +2 -5
- package/drawer/drawer.d.ts +3 -5
- package/fesm2022/mtxAlert.mjs +15 -15
- package/fesm2022/mtxAlert.mjs.map +1 -1
- package/fesm2022/mtxButton.mjs +13 -14
- package/fesm2022/mtxButton.mjs.map +1 -1
- package/fesm2022/mtxCheckboxGroup.mjs +51 -31
- package/fesm2022/mtxCheckboxGroup.mjs.map +1 -1
- package/fesm2022/mtxColorpicker.mjs +91 -109
- package/fesm2022/mtxColorpicker.mjs.map +1 -1
- package/fesm2022/mtxColumnResize.mjs +79 -96
- package/fesm2022/mtxColumnResize.mjs.map +1 -1
- package/fesm2022/mtxCore.mjs +31 -36
- package/fesm2022/mtxCore.mjs.map +1 -1
- package/fesm2022/mtxDatetimepicker.mjs +1181 -1093
- package/fesm2022/mtxDatetimepicker.mjs.map +1 -1
- package/fesm2022/mtxDialog.mjs +30 -41
- package/fesm2022/mtxDialog.mjs.map +1 -1
- package/fesm2022/mtxDrawer.mjs +36 -52
- package/fesm2022/mtxDrawer.mjs.map +1 -1
- package/fesm2022/mtxGrid.mjs +168 -204
- package/fesm2022/mtxGrid.mjs.map +1 -1
- package/fesm2022/mtxLoader.mjs +12 -12
- package/fesm2022/mtxLoader.mjs.map +1 -1
- package/fesm2022/mtxPhotoviewer.mjs +11 -12
- package/fesm2022/mtxPhotoviewer.mjs.map +1 -1
- package/fesm2022/mtxPopover.mjs +106 -119
- package/fesm2022/mtxPopover.mjs.map +1 -1
- package/fesm2022/mtxProgress.mjs +8 -8
- package/fesm2022/mtxProgress.mjs.map +1 -1
- package/fesm2022/mtxSelect.mjs +157 -169
- package/fesm2022/mtxSelect.mjs.map +1 -1
- package/fesm2022/mtxSplit.mjs +39 -40
- package/fesm2022/mtxSplit.mjs.map +1 -1
- package/fesm2022/mtxTooltip.mjs +105 -91
- package/fesm2022/mtxTooltip.mjs.map +1 -1
- package/grid/_grid-theme.scss +23 -10
- package/grid/cell.d.ts +1 -4
- package/grid/column-resize/column-resize-directives/column-resize-flex.d.ts +0 -1
- package/grid/column-resize/column-resize-directives/column-resize.d.ts +0 -1
- package/grid/column-resize/overlay-handle.d.ts +1 -2
- package/grid/column-resize/resizable-directives/resizable.d.ts +2 -3
- package/grid/column-resize/resize-strategy.d.ts +2 -4
- package/grid/grid-pipes.d.ts +0 -2
- package/grid/grid.d.ts +5 -5
- package/grid/grid.scss +5 -6
- package/loader/_loader-theme.scss +19 -8
- package/loader/loader.d.ts +0 -2
- package/package.json +11 -47
- package/photoviewer/photoviewer.d.ts +1 -2
- package/popover/_popover-theme.scss +19 -8
- package/popover/popover-content.d.ts +1 -1
- package/popover/popover-target.d.ts +1 -2
- package/popover/popover-trigger.d.ts +5 -6
- package/popover/popover.d.ts +1 -2
- package/prebuilt-themes/azure-blue.css +1 -1
- package/prebuilt-themes/cyan-orange.css +1 -1
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/magenta-violet.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/prebuilt-themes/rose-red.css +1 -1
- package/progress/_progress-theme.scss +23 -10
- package/select/_select-theme.scss +23 -10
- package/select/option.d.ts +0 -1
- package/select/select-intl.d.ts +2 -4
- package/select/select.d.ts +8 -7
- package/select/select.scss +3 -3
- package/select/templates.d.ts +0 -12
- package/split/_split-theme.scss +19 -8
- package/split/split-pane.d.ts +3 -4
- package/split/split.d.ts +4 -4
- package/split/split.scss +1 -1
- package/tooltip/_tooltip-theme.scss +11 -4
- package/tooltip/tooltip.d.ts +17 -9
- package/tooltip/tooltip.scss +8 -3
- package/esm2022/alert/alert-module.mjs +0 -17
- package/esm2022/alert/alert.mjs +0 -46
- package/esm2022/alert/mtxAlert.mjs +0 -5
- package/esm2022/alert/public-api.mjs +0 -3
- package/esm2022/button/button-loading.mjs +0 -66
- package/esm2022/button/button-module.mjs +0 -19
- package/esm2022/button/mtxButton.mjs +0 -5
- package/esm2022/button/public-api.mjs +0 -3
- package/esm2022/checkbox-group/checkbox-group-module.mjs +0 -20
- package/esm2022/checkbox-group/checkbox-group.mjs +0 -222
- package/esm2022/checkbox-group/interfaces.mjs +0 -2
- package/esm2022/checkbox-group/mtxCheckboxGroup.mjs +0 -5
- package/esm2022/checkbox-group/public-api.mjs +0 -4
- package/esm2022/colorpicker/colorpicker-animations.mjs +0 -16
- package/esm2022/colorpicker/colorpicker-input.mjs +0 -228
- package/esm2022/colorpicker/colorpicker-module.mjs +0 -64
- package/esm2022/colorpicker/colorpicker-toggle.mjs +0 -102
- package/esm2022/colorpicker/colorpicker.mjs +0 -363
- package/esm2022/colorpicker/mtxColorpicker.mjs +0 -5
- package/esm2022/colorpicker/public-api.mjs +0 -6
- package/esm2022/column-resize/column-resize-directives/column-resize-flex.mjs +0 -40
- package/esm2022/column-resize/column-resize-directives/column-resize.mjs +0 -40
- package/esm2022/column-resize/column-resize-directives/constants.mjs +0 -21
- package/esm2022/column-resize/column-resize-module.mjs +0 -28
- package/esm2022/column-resize/column-resize-notifier.mjs +0 -52
- package/esm2022/column-resize/column-resize.mjs +0 -82
- package/esm2022/column-resize/column-size-store.mjs +0 -20
- package/esm2022/column-resize/event-dispatcher.mjs +0 -70
- package/esm2022/column-resize/mtxColumnResize.mjs +0 -5
- package/esm2022/column-resize/overlay-handle.mjs +0 -146
- package/esm2022/column-resize/polyfill.mjs +0 -19
- package/esm2022/column-resize/public-api.mjs +0 -13
- package/esm2022/column-resize/resizable.mjs +0 -199
- package/esm2022/column-resize/resize-ref.mjs +0 -17
- package/esm2022/column-resize/resize-strategy.mjs +0 -238
- package/esm2022/column-resize/selectors.mjs +0 -13
- package/esm2022/core/datetime/datetime-adapter.mjs +0 -132
- package/esm2022/core/datetime/datetime-formats.mjs +0 -3
- package/esm2022/core/datetime/datetime.module.mjs +0 -38
- package/esm2022/core/datetime/index.mjs +0 -6
- package/esm2022/core/datetime/native-datetime-adapter.mjs +0 -138
- package/esm2022/core/datetime/native-datetime-formats.mjs +0 -20
- package/esm2022/core/mtxCore.mjs +0 -5
- package/esm2022/core/pipes/index.mjs +0 -4
- package/esm2022/core/pipes/is-template-ref.pipe.mjs +0 -14
- package/esm2022/core/pipes/pipes.module.mjs +0 -18
- package/esm2022/core/pipes/to-observable.pipe.mjs +0 -15
- package/esm2022/core/public-api.mjs +0 -3
- package/esm2022/datetimepicker/calendar-body.mjs +0 -77
- package/esm2022/datetimepicker/calendar.mjs +0 -661
- package/esm2022/datetimepicker/clock.mjs +0 -362
- package/esm2022/datetimepicker/datetimepicker-actions.mjs +0 -88
- package/esm2022/datetimepicker/datetimepicker-animations.mjs +0 -44
- package/esm2022/datetimepicker/datetimepicker-errors.mjs +0 -8
- package/esm2022/datetimepicker/datetimepicker-filtertype.mjs +0 -7
- package/esm2022/datetimepicker/datetimepicker-input.mjs +0 -349
- package/esm2022/datetimepicker/datetimepicker-intl.mjs +0 -63
- package/esm2022/datetimepicker/datetimepicker-module.mjs +0 -116
- package/esm2022/datetimepicker/datetimepicker-toggle.mjs +0 -105
- package/esm2022/datetimepicker/datetimepicker-types.mjs +0 -2
- package/esm2022/datetimepicker/datetimepicker.mjs +0 -580
- package/esm2022/datetimepicker/month-view.mjs +0 -148
- package/esm2022/datetimepicker/mtxDatetimepicker.mjs +0 -5
- package/esm2022/datetimepicker/multi-year-view.mjs +0 -215
- package/esm2022/datetimepicker/public-api.mjs +0 -17
- package/esm2022/datetimepicker/time.mjs +0 -470
- package/esm2022/datetimepicker/year-view.mjs +0 -139
- package/esm2022/dialog/dialog-config.mjs +0 -2
- package/esm2022/dialog/dialog-container.mjs +0 -43
- package/esm2022/dialog/dialog-module.mjs +0 -40
- package/esm2022/dialog/dialog.mjs +0 -75
- package/esm2022/dialog/mtxDialog.mjs +0 -5
- package/esm2022/dialog/public-api.mjs +0 -5
- package/esm2022/drawer/drawer-animations.mjs +0 -18
- package/esm2022/drawer/drawer-config.mjs +0 -35
- package/esm2022/drawer/drawer-container.mjs +0 -88
- package/esm2022/drawer/drawer-module.mjs +0 -21
- package/esm2022/drawer/drawer-ref.mjs +0 -99
- package/esm2022/drawer/drawer.mjs +0 -144
- package/esm2022/drawer/mtxDrawer.mjs +0 -5
- package/esm2022/drawer/public-api.mjs +0 -7
- package/esm2022/grid/cell.mjs +0 -132
- package/esm2022/grid/column-menu.mjs +0 -133
- package/esm2022/grid/column-resize/column-resize-directives/column-resize-flex.mjs +0 -38
- package/esm2022/grid/column-resize/column-resize-directives/column-resize.mjs +0 -38
- package/esm2022/grid/column-resize/column-resize-directives/common.mjs +0 -27
- package/esm2022/grid/column-resize/column-resize-module.mjs +0 -42
- package/esm2022/grid/column-resize/index.mjs +0 -8
- package/esm2022/grid/column-resize/overlay-handle.mjs +0 -66
- package/esm2022/grid/column-resize/resizable-directives/common.mjs +0 -29
- package/esm2022/grid/column-resize/resizable-directives/resizable.mjs +0 -64
- package/esm2022/grid/column-resize/resize-strategy.mjs +0 -47
- package/esm2022/grid/expansion-toggle.mjs +0 -65
- package/esm2022/grid/grid-module.mjs +0 -151
- package/esm2022/grid/grid-pipes.mjs +0 -129
- package/esm2022/grid/grid-utils.mjs +0 -56
- package/esm2022/grid/grid.mjs +0 -644
- package/esm2022/grid/interfaces.mjs +0 -2
- package/esm2022/grid/mtxGrid.mjs +0 -5
- package/esm2022/grid/public-api.mjs +0 -18
- package/esm2022/grid/selectable-cell.mjs +0 -53
- package/esm2022/loader/loader-module.mjs +0 -19
- package/esm2022/loader/loader.mjs +0 -57
- package/esm2022/loader/mtxLoader.mjs +0 -5
- package/esm2022/loader/public-api.mjs +0 -3
- package/esm2022/ng-matero-extensions.mjs +0 -5
- package/esm2022/photoviewer/mtxPhotoviewer.mjs +0 -5
- package/esm2022/photoviewer/photoviewer-module.mjs +0 -16
- package/esm2022/photoviewer/photoviewer.mjs +0 -64
- package/esm2022/photoviewer/public-api.mjs +0 -3
- package/esm2022/popover/mtxPopover.mjs +0 -5
- package/esm2022/popover/popover-animations.mjs +0 -25
- package/esm2022/popover/popover-content.mjs +0 -91
- package/esm2022/popover/popover-errors.mjs +0 -27
- package/esm2022/popover/popover-interfaces.mjs +0 -2
- package/esm2022/popover/popover-module.mjs +0 -39
- package/esm2022/popover/popover-target.mjs +0 -18
- package/esm2022/popover/popover-trigger.mjs +0 -480
- package/esm2022/popover/popover-types.mjs +0 -2
- package/esm2022/popover/popover.mjs +0 -325
- package/esm2022/popover/public-api.mjs +0 -9
- package/esm2022/progress/mtxProgress.mjs +0 -5
- package/esm2022/progress/progress-module.mjs +0 -17
- package/esm2022/progress/progress.mjs +0 -43
- package/esm2022/progress/public-api.mjs +0 -3
- package/esm2022/public-api.mjs +0 -5
- package/esm2022/select/mtxSelect.mjs +0 -5
- package/esm2022/select/option.mjs +0 -52
- package/esm2022/select/public-api.mjs +0 -6
- package/esm2022/select/select-intl.mjs +0 -32
- package/esm2022/select/select-module.mjs +0 -89
- package/esm2022/select/select.mjs +0 -611
- package/esm2022/select/templates.mjs +0 -135
- package/esm2022/split/interfaces.mjs +0 -2
- package/esm2022/split/mtxSplit.mjs +0 -5
- package/esm2022/split/public-api.mjs +0 -6
- package/esm2022/split/split-module.mjs +0 -18
- package/esm2022/split/split-pane.mjs +0 -161
- package/esm2022/split/split.mjs +0 -634
- package/esm2022/split/utils.mjs +0 -219
- package/esm2022/tooltip/mtxTooltip.mjs +0 -5
- package/esm2022/tooltip/public-api.mjs +0 -4
- package/esm2022/tooltip/tooltip-animations.mjs +0 -17
- package/esm2022/tooltip/tooltip-module.mjs +0 -41
- package/esm2022/tooltip/tooltip.mjs +0 -915
package/esm2022/split/utils.mjs
DELETED
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
export function getPointFromEvent(event) {
|
|
2
|
-
// TouchEvent
|
|
3
|
-
if (event.changedTouches !== undefined &&
|
|
4
|
-
event.changedTouches.length > 0) {
|
|
5
|
-
return {
|
|
6
|
-
x: event.changedTouches[0].clientX,
|
|
7
|
-
y: event.changedTouches[0].clientY,
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
// MouseEvent
|
|
11
|
-
else if (event.clientX !== undefined &&
|
|
12
|
-
event.clientY !== undefined) {
|
|
13
|
-
return {
|
|
14
|
-
x: event.clientX,
|
|
15
|
-
y: event.clientY,
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
return null;
|
|
19
|
-
}
|
|
20
|
-
export function getElementPixelSize(elRef, direction) {
|
|
21
|
-
const rect = elRef.nativeElement.getBoundingClientRect();
|
|
22
|
-
return direction === 'horizontal' ? rect.width : rect.height;
|
|
23
|
-
}
|
|
24
|
-
export function getInputPositiveNumber(v, defaultValue) {
|
|
25
|
-
if (v === null || v === undefined) {
|
|
26
|
-
return defaultValue;
|
|
27
|
-
}
|
|
28
|
-
v = Number(v);
|
|
29
|
-
return !isNaN(v) && v >= 0 ? v : defaultValue;
|
|
30
|
-
}
|
|
31
|
-
export function isUserSizesValid(unit, sizes) {
|
|
32
|
-
// All sizes have to be not null and total should be 100
|
|
33
|
-
if (unit === 'percent') {
|
|
34
|
-
const total = sizes.reduce((_total, s) => (s !== null ? _total + s : _total), 0);
|
|
35
|
-
return sizes.every(s => s !== null) && total && total > 99.9 && total < 100.1;
|
|
36
|
-
}
|
|
37
|
-
// A size at null is mandatory but only one.
|
|
38
|
-
if (unit === 'pixel') {
|
|
39
|
-
return sizes.filter(s => s === null).length === 1;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
export function getAreaMinSize(a) {
|
|
43
|
-
if (a.size === null) {
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
if (a.component.lockSize === true) {
|
|
47
|
-
return a.size;
|
|
48
|
-
}
|
|
49
|
-
if (a.component.minSize === null) {
|
|
50
|
-
return null;
|
|
51
|
-
}
|
|
52
|
-
if (a.component.minSize > a.size) {
|
|
53
|
-
return a.size;
|
|
54
|
-
}
|
|
55
|
-
return a.component.minSize;
|
|
56
|
-
}
|
|
57
|
-
export function getAreaMaxSize(a) {
|
|
58
|
-
if (a.size === null) {
|
|
59
|
-
return null;
|
|
60
|
-
}
|
|
61
|
-
if (a.component.lockSize === true) {
|
|
62
|
-
return a.size;
|
|
63
|
-
}
|
|
64
|
-
if (a.component.maxSize === null) {
|
|
65
|
-
return null;
|
|
66
|
-
}
|
|
67
|
-
if (a.component.maxSize < a.size) {
|
|
68
|
-
return a.size;
|
|
69
|
-
}
|
|
70
|
-
return a.component.maxSize;
|
|
71
|
-
}
|
|
72
|
-
export function getGutterSideAbsorptionCapacity(unit, sideAreas, pixels, allAreasSizePixel) {
|
|
73
|
-
return sideAreas.reduce((acc, area) => {
|
|
74
|
-
const res = getAreaAbsorptionCapacity(unit, area, acc.remain, allAreasSizePixel);
|
|
75
|
-
acc.list.push(res);
|
|
76
|
-
acc.remain = res && res.pixelRemain;
|
|
77
|
-
return acc;
|
|
78
|
-
}, { remain: pixels, list: [] });
|
|
79
|
-
}
|
|
80
|
-
export function getAreaAbsorptionCapacity(unit, areaSnapshot, pixels, allAreasSizePixel) {
|
|
81
|
-
// No pain no gain
|
|
82
|
-
if (pixels === 0) {
|
|
83
|
-
return {
|
|
84
|
-
areaSnapshot,
|
|
85
|
-
pixelAbsorb: 0,
|
|
86
|
-
percentAfterAbsorption: areaSnapshot.sizePercentAtStart,
|
|
87
|
-
pixelRemain: 0,
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
// Area start at zero and need to be reduced, not possible
|
|
91
|
-
if (areaSnapshot.sizePixelAtStart === 0 && pixels < 0) {
|
|
92
|
-
return {
|
|
93
|
-
areaSnapshot,
|
|
94
|
-
pixelAbsorb: 0,
|
|
95
|
-
percentAfterAbsorption: 0,
|
|
96
|
-
pixelRemain: pixels,
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
if (unit === 'percent') {
|
|
100
|
-
return getAreaAbsorptionCapacityPercent(areaSnapshot, pixels, allAreasSizePixel);
|
|
101
|
-
}
|
|
102
|
-
if (unit === 'pixel') {
|
|
103
|
-
return getAreaAbsorptionCapacityPixel(areaSnapshot, pixels, allAreasSizePixel);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
export function getAreaAbsorptionCapacityPercent(areaSnapshot, pixels, allAreasSizePixel) {
|
|
107
|
-
const tempPixelSize = areaSnapshot.sizePixelAtStart + pixels;
|
|
108
|
-
const tempPercentSize = (tempPixelSize / allAreasSizePixel) * 100;
|
|
109
|
-
// ENLARGE AREA
|
|
110
|
-
if (pixels > 0) {
|
|
111
|
-
// If maxSize & newSize bigger than it > absorb to max and return remaining pixels
|
|
112
|
-
if (areaSnapshot.area.maxSize !== null && tempPercentSize > areaSnapshot.area.maxSize) {
|
|
113
|
-
// Use area.area.maxSize as newPercentSize and return calculate pixels remaining
|
|
114
|
-
const maxSizePixel = (areaSnapshot.area.maxSize / 100) * allAreasSizePixel;
|
|
115
|
-
return {
|
|
116
|
-
areaSnapshot,
|
|
117
|
-
pixelAbsorb: maxSizePixel,
|
|
118
|
-
percentAfterAbsorption: areaSnapshot.area.maxSize,
|
|
119
|
-
pixelRemain: areaSnapshot.sizePixelAtStart + pixels - maxSizePixel,
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
return {
|
|
123
|
-
areaSnapshot,
|
|
124
|
-
pixelAbsorb: pixels,
|
|
125
|
-
percentAfterAbsorption: tempPercentSize > 100 ? 100 : tempPercentSize,
|
|
126
|
-
pixelRemain: 0,
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
// REDUCE AREA
|
|
130
|
-
else if (pixels < 0) {
|
|
131
|
-
// If minSize & newSize smaller than it > absorb to min and return remaining pixels
|
|
132
|
-
if (areaSnapshot.area.minSize !== null && tempPercentSize < areaSnapshot.area.minSize) {
|
|
133
|
-
// Use area.area.minSize as newPercentSize and return calculate pixels remaining
|
|
134
|
-
const minSizePixel = (areaSnapshot.area.minSize / 100) * allAreasSizePixel;
|
|
135
|
-
return {
|
|
136
|
-
areaSnapshot,
|
|
137
|
-
pixelAbsorb: minSizePixel,
|
|
138
|
-
percentAfterAbsorption: areaSnapshot.area.minSize,
|
|
139
|
-
pixelRemain: areaSnapshot.sizePixelAtStart + pixels - minSizePixel,
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
// If reduced under zero > return remaining pixels
|
|
143
|
-
else if (tempPercentSize < 0) {
|
|
144
|
-
// Use 0 as newPercentSize and return calculate pixels remaining
|
|
145
|
-
return {
|
|
146
|
-
areaSnapshot,
|
|
147
|
-
pixelAbsorb: -areaSnapshot.sizePixelAtStart,
|
|
148
|
-
percentAfterAbsorption: 0,
|
|
149
|
-
pixelRemain: pixels + areaSnapshot.sizePixelAtStart,
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
|
-
return {
|
|
153
|
-
areaSnapshot,
|
|
154
|
-
pixelAbsorb: pixels,
|
|
155
|
-
percentAfterAbsorption: tempPercentSize,
|
|
156
|
-
pixelRemain: 0,
|
|
157
|
-
};
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
export function getAreaAbsorptionCapacityPixel(areaSnapshot, pixels, containerSizePixel) {
|
|
161
|
-
const tempPixelSize = areaSnapshot.sizePixelAtStart + pixels;
|
|
162
|
-
// ENLARGE AREA
|
|
163
|
-
if (pixels > 0) {
|
|
164
|
-
// If maxSize & newSize bigger than it > absorb to max and return remaining pixels
|
|
165
|
-
if (areaSnapshot.area.maxSize !== null && tempPixelSize > areaSnapshot.area.maxSize) {
|
|
166
|
-
return {
|
|
167
|
-
areaSnapshot,
|
|
168
|
-
pixelAbsorb: areaSnapshot.area.maxSize - areaSnapshot.sizePixelAtStart,
|
|
169
|
-
percentAfterAbsorption: -1,
|
|
170
|
-
pixelRemain: tempPixelSize - areaSnapshot.area.maxSize,
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
return {
|
|
174
|
-
areaSnapshot,
|
|
175
|
-
pixelAbsorb: pixels,
|
|
176
|
-
percentAfterAbsorption: -1,
|
|
177
|
-
pixelRemain: 0,
|
|
178
|
-
};
|
|
179
|
-
}
|
|
180
|
-
// REDUCE AREA
|
|
181
|
-
else if (pixels < 0) {
|
|
182
|
-
// If minSize & newSize smaller than it > absorb to min and return remaining pixels
|
|
183
|
-
if (areaSnapshot.area.minSize !== null && tempPixelSize < areaSnapshot.area.minSize) {
|
|
184
|
-
return {
|
|
185
|
-
areaSnapshot,
|
|
186
|
-
pixelAbsorb: areaSnapshot.area.minSize + pixels - tempPixelSize,
|
|
187
|
-
percentAfterAbsorption: -1,
|
|
188
|
-
pixelRemain: tempPixelSize - areaSnapshot.area.minSize,
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
// If reduced under zero > return remaining pixels
|
|
192
|
-
else if (tempPixelSize < 0) {
|
|
193
|
-
return {
|
|
194
|
-
areaSnapshot,
|
|
195
|
-
pixelAbsorb: -areaSnapshot.sizePixelAtStart,
|
|
196
|
-
percentAfterAbsorption: -1,
|
|
197
|
-
pixelRemain: pixels + areaSnapshot.sizePixelAtStart,
|
|
198
|
-
};
|
|
199
|
-
}
|
|
200
|
-
return {
|
|
201
|
-
areaSnapshot,
|
|
202
|
-
pixelAbsorb: pixels,
|
|
203
|
-
percentAfterAbsorption: -1,
|
|
204
|
-
pixelRemain: 0,
|
|
205
|
-
};
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
export function updateAreaSize(unit, item) {
|
|
209
|
-
if (unit === 'percent') {
|
|
210
|
-
item.areaSnapshot.area.size = item.percentAfterAbsorption;
|
|
211
|
-
}
|
|
212
|
-
else if (unit === 'pixel') {
|
|
213
|
-
// Update size except for the wildcard size area
|
|
214
|
-
if (item.areaSnapshot.area.size !== null) {
|
|
215
|
-
item.areaSnapshot.area.size = item.areaSnapshot.sizePixelAtStart + item.pixelAbsorb;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL3NwbGl0L3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUE4QjtJQUM5RCxhQUFhO0lBQ2IsSUFDRyxLQUFvQixDQUFDLGNBQWMsS0FBSyxTQUFTO1FBQ2pELEtBQW9CLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQy9DLENBQUM7UUFDRCxPQUFPO1lBQ0wsQ0FBQyxFQUFHLEtBQW9CLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87WUFDbEQsQ0FBQyxFQUFHLEtBQW9CLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87U0FDbkQsQ0FBQztJQUNKLENBQUM7SUFDRCxhQUFhO1NBQ1IsSUFDRixLQUFvQixDQUFDLE9BQU8sS0FBSyxTQUFTO1FBQzFDLEtBQW9CLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFDM0MsQ0FBQztRQUNELE9BQU87WUFDTCxDQUFDLEVBQUcsS0FBb0IsQ0FBQyxPQUFPO1lBQ2hDLENBQUMsRUFBRyxLQUFvQixDQUFDLE9BQU87U0FDakMsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLEtBQWlCLEVBQ2pCLFNBQW9DO0lBRXBDLE1BQU0sSUFBSSxHQUFJLEtBQUssQ0FBQyxhQUE2QixDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFFMUUsT0FBTyxTQUFTLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0FBQy9ELENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUksQ0FBTSxFQUFFLFlBQWU7SUFDL0QsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJ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RSxDQUFDO1NBQ2YsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxJQUF5QixFQUFFLElBQW9DO0lBQzVGLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUM7SUFDNUQsQ0FBQztTQUFNLElBQUksSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQzVCLGdEQUFnRDtRQUNoRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3RGLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgTXR4U3BsaXRBcmVhLFxuICBNdHhTcGxpdFBvaW50LFxuICBNdHhTcGxpdEFyZWFTbmFwc2hvdCxcbiAgTXR4U3BsaXRTaWRlQWJzb3JwdGlvbkNhcGFjaXR5LFxuICBNdHhTcGxpdEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHksXG59IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQb2ludEZyb21FdmVudChldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpOiBNdHhTcGxpdFBvaW50IHwgbnVsbCB7XG4gIC8vIFRvdWNoRXZlbnRcbiAgaWYgKFxuICAgIChldmVudCBhcyBUb3VjaEV2ZW50KS5jaGFuZ2VkVG91Y2hlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgKGV2ZW50IGFzIFRvdWNoRXZlbnQpLmNoYW5nZWRUb3VjaGVzLmxlbmd0aCA+IDBcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IChldmVudCBhcyBUb3VjaEV2ZW50KS5jaGFuZ2VkVG91Y2hlc1swXS5jbGllbnRYLFxuICAgICAgeTogKGV2ZW50IGFzIFRvdWNoRXZlbnQpLmNoYW5nZWRUb3VjaGVzWzBdLmNsaWVudFksXG4gICAgfTtcbiAgfVxuICAvLyBNb3VzZUV2ZW50XG4gIGVsc2UgaWYgKFxuICAgIChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRYICE9PSB1bmRlZmluZWQgJiZcbiAgICAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WSAhPT0gdW5kZWZpbmVkXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICB4OiAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WCxcbiAgICAgIHk6IChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRZLFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbGVtZW50UGl4ZWxTaXplKFxuICBlbFJlZjogRWxlbWVudFJlZixcbiAgZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnXG4pOiBudW1iZXIge1xuICBjb25zdCByZWN0ID0gKGVsUmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gIHJldHVybiBkaXJlY3Rpb24gPT09ICdob3Jpem9udGFsJyA/IHJlY3Qud2lkdGggOiByZWN0LmhlaWdodDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldElucHV0UG9zaXRpdmVOdW1iZXI8VD4odjogYW55LCBkZWZhdWx0VmFsdWU6IFQpOiBudW1iZXIgfCBUIHtcbiAgaWYgKHYgPT09IG51bGwgfHwgdiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgfVxuXG4gIHYgPSBOdW1iZXIodik7XG4gIHJldHVybiAhaXNOYU4odikgJiYgdiA+PSAwID8gdiA6IGRlZmF1bHRWYWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVXNlclNpemVzVmFsaWQoXG4gIHVuaXQ6ICdwZXJjZW50JyB8ICdwaXhlbCcsXG4gIHNpemVzOiBudW1iZXJbXVxuKTogYm9vbGVhbiB8IG51bWJlciB8IHZvaWQge1xuICAvLyBBbGwgc2l6ZXMgaGF2ZSB0byBiZSBub3QgbnVsbCBhbmQgdG90YWwgc2hvdWxkIGJlIDEwMFxuICBpZiAodW5pdCA9PT0gJ3BlcmNlbnQnKSB7XG4gICAgY29uc3QgdG90YWwgPSBzaXplcy5yZWR1Y2UoKF90b3RhbCwgcykgPT4gKHMgIT09IG51bGwgPyBfdG90YWwgKyBzIDogX3RvdGFsKSwgMCk7XG4gICAgcmV0dXJuIHNpemVzLmV2ZXJ5KHMgPT4gcyAhPT0gbnVsbCkgJiYgdG90YWwgJiYgdG90YWwgPiA5OS45ICYmIHRvdGFsIDwgMTAwLjE7XG4gIH1cblxuICAvLyBBIHNpemUgYXQgbnVsbCBpcyBtYW5kYXRvcnkgYnV0IG9ubHkgb25lLlxuICBpZiAodW5pdCA9PT0gJ3BpeGVsJykge1xuICAgIHJldHVybiBzaXplcy5maWx0ZXIocyA9PiBzID09PSBudWxsKS5sZW5ndGggPT09IDE7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFyZWFNaW5TaXplKGE6IE10eFNwbGl0QXJlYSk6IG51bGwgfCBudW1iZXIge1xuICBpZiAoYS5zaXplID09PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAoYS5jb21wb25lbnQubG9ja1NpemUgPT09IHRydWUpIHtcbiAgICByZXR1cm4gYS5zaXplO1xuICB9XG5cbiAgaWYgKGEuY29tcG9uZW50Lm1pblNpemUgPT09IG51bGwpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGlmIChhLmNvbXBvbmVudC5taW5TaXplID4gYS5zaXplKSB7XG4gICAgcmV0dXJuIGEuc2l6ZTtcbiAgfVxuXG4gIHJldHVybiBhLmNvbXBvbmVudC5taW5TaXplO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXJlYU1heFNpemUoYTogTXR4U3BsaXRBcmVhKTogbnVsbCB8IG51bWJlciB7XG4gIGlmIChhLnNpemUgPT09IG51bGwpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGlmIChhLmNvbXBvbmVudC5sb2NrU2l6ZSA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiBhLnNpemU7XG4gIH1cblxuICBpZiAoYS5jb21wb25lbnQubWF4U2l6ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKGEuY29tcG9uZW50Lm1heFNpemUgPCBhLnNpemUpIHtcbiAgICByZXR1cm4gYS5zaXplO1xuICB9XG5cbiAgcmV0dXJuIGEuY29tcG9uZW50Lm1heFNpemU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRHdXR0ZXJTaWRlQWJzb3JwdGlvbkNhcGFjaXR5KFxuICB1bml0OiAncGVyY2VudCcgfCAncGl4ZWwnLFxuICBzaWRlQXJlYXM6IE10eFNwbGl0QXJlYVNuYXBzaG90W10sXG4gIHBpeGVsczogbnVtYmVyLFxuICBhbGxBcmVhc1NpemVQaXhlbDogbnVtYmVyXG4pOiBNdHhTcGxpdFNpZGVBYnNvcnB0aW9uQ2FwYWNpdHkge1xuICByZXR1cm4gc2lkZUFyZWFzLnJlZHVjZShcbiAgICAoYWNjOiBhbnksIGFyZWEpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHkodW5pdCwgYXJlYSwgYWNjLnJlbWFpbiwgYWxsQXJlYXNTaXplUGl4ZWwpO1xuICAgICAgYWNjLmxpc3QucHVzaChyZXMpO1xuICAgICAgYWNjLnJlbWFpbiA9IHJlcyAmJiByZXMucGl4ZWxSZW1haW47XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sXG4gICAgeyByZW1haW46IHBpeGVscywgbGlzdDogW10gfVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXJlYUFic29ycHRpb25DYXBhY2l0eShcbiAgdW5pdDogJ3BlcmNlbnQnIHwgJ3BpeGVsJyxcbiAgYXJlYVNuYXBzaG90OiBNdHhTcGxpdEFyZWFTbmFwc2hvdCxcbiAgcGl4ZWxzOiBudW1iZXIsXG4gIGFsbEFyZWFzU2l6ZVBpeGVsOiBudW1iZXJcbik6IE10eFNwbGl0QXJlYUFic29ycHRpb25DYXBhY2l0eSB8IHZvaWQge1xuICAvLyBObyBwYWluIG5vIGdhaW5cbiAgaWYgKHBpeGVscyA9PT0gMCkge1xuICAgIHJldHVybiB7XG4gICAgICBhcmVhU25hcHNob3QsXG4gICAgICBwaXhlbEFic29yYjogMCxcbiAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IGFyZWFTbmFwc2hvdC5zaXplUGVyY2VudEF0U3RhcnQsXG4gICAgICBwaXhlbFJlbWFpbjogMCxcbiAgICB9O1xuICB9XG5cbiAgLy8gQXJlYSBzdGFydCBhdCB6ZXJvIGFuZCBuZWVkIHRvIGJlIHJlZHVjZWQsIG5vdCBwb3NzaWJsZVxuICBpZiAoYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQgPT09IDAgJiYgcGl4ZWxzIDwgMCkge1xuICAgIHJldHVybiB7XG4gICAgICBhcmVhU25hcHNob3QsXG4gICAgICBwaXhlbEFic29yYjogMCxcbiAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IDAsXG4gICAgICBwaXhlbFJlbWFpbjogcGl4ZWxzLFxuICAgIH07XG4gIH1cblxuICBpZiAodW5pdCA9PT0gJ3BlcmNlbnQnKSB7XG4gICAgcmV0dXJuIGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHlQZXJjZW50KGFyZWFTbmFwc2hvdCwgcGl4ZWxzLCBhbGxBcmVhc1NpemVQaXhlbCk7XG4gIH1cblxuICBpZiAodW5pdCA9PT0gJ3BpeGVsJykge1xuICAgIHJldHVybiBnZXRBcmVhQWJzb3JwdGlvbkNhcGFjaXR5UGl4ZWwoYXJlYVNuYXBzaG90LCBwaXhlbHMsIGFsbEFyZWFzU2l6ZVBpeGVsKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXJlYUFic29ycHRpb25DYXBhY2l0eVBlcmNlbnQoXG4gIGFyZWFTbmFwc2hvdDogTXR4U3BsaXRBcmVhU25hcHNob3QsXG4gIHBpeGVsczogbnVtYmVyLFxuICBhbGxBcmVhc1NpemVQaXhlbDogbnVtYmVyXG4pOiBNdHhTcGxpdEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHkgfCB2b2lkIHtcbiAgY29uc3QgdGVtcFBpeGVsU2l6ZSA9IGFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0ICsgcGl4ZWxzO1xuICBjb25zdCB0ZW1wUGVyY2VudFNpemUgPSAodGVtcFBpeGVsU2l6ZSAvIGFsbEFyZWFzU2l6ZVBpeGVsKSAqIDEwMDtcblxuICAvLyBFTkxBUkdFIEFSRUFcblxuICBpZiAocGl4ZWxzID4gMCkge1xuICAgIC8vIElmIG1heFNpemUgJiBuZXdTaXplIGJpZ2dlciB0aGFuIGl0ID4gYWJzb3JiIHRvIG1heCBhbmQgcmV0dXJuIHJlbWFpbmluZyBwaXhlbHNcbiAgICBpZiAoYXJlYVNuYXBzaG90LmFyZWEubWF4U2l6ZSAhPT0gbnVsbCAmJiB0ZW1wUGVyY2VudFNpemUgPiBhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplKSB7XG4gICAgICAvLyBVc2UgYXJlYS5hcmVhLm1heFNpemUgYXMgbmV3UGVyY2VudFNpemUgYW5kIHJldHVybiBjYWxjdWxhdGUgcGl4ZWxzIHJlbWFpbmluZ1xuICAgICAgY29uc3QgbWF4U2l6ZVBpeGVsID0gKGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUgLyAxMDApICogYWxsQXJlYXNTaXplUGl4ZWw7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhcmVhU25hcHNob3QsXG4gICAgICAgIHBpeGVsQWJzb3JiOiBtYXhTaXplUGl4ZWwsXG4gICAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUsXG4gICAgICAgIHBpeGVsUmVtYWluOiBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCArIHBpeGVscyAtIG1heFNpemVQaXhlbCxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBhcmVhU25hcHNob3QsXG4gICAgICBwaXhlbEFic29yYjogcGl4ZWxzLFxuICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogdGVtcFBlcmNlbnRTaXplID4gMTAwID8gMTAwIDogdGVtcFBlcmNlbnRTaXplLFxuICAgICAgcGl4ZWxSZW1haW46IDAsXG4gICAgfTtcbiAgfVxuXG4gIC8vIFJFRFVDRSBBUkVBXG4gIGVsc2UgaWYgKHBpeGVscyA8IDApIHtcbiAgICAvLyBJZiBtaW5TaXplICYgbmV3U2l6ZSBzbWFsbGVyIHRoYW4gaXQgPiBhYnNvcmIgdG8gbWluIGFuZCByZXR1cm4gcmVtYWluaW5nIHBpeGVsc1xuICAgIGlmIChhcmVhU25hcHNob3QuYXJlYS5taW5TaXplICE9PSBudWxsICYmIHRlbXBQZXJjZW50U2l6ZSA8IGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUpIHtcbiAgICAgIC8vIFVzZSBhcmVhLmFyZWEubWluU2l6ZSBhcyBuZXdQZXJjZW50U2l6ZSBhbmQgcmV0dXJuIGNhbGN1bGF0ZSBwaXhlbHMgcmVtYWluaW5nXG4gICAgICBjb25zdCBtaW5TaXplUGl4ZWwgPSAoYXJlYVNuYXBzaG90LmFyZWEubWluU2l6ZSAvIDEwMCkgKiBhbGxBcmVhc1NpemVQaXhlbDtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgICAgcGl4ZWxBYnNvcmI6IG1pblNpemVQaXhlbCxcbiAgICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogYXJlYVNuYXBzaG90LmFyZWEubWluU2l6ZSxcbiAgICAgICAgcGl4ZWxSZW1haW46IGFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0ICsgcGl4ZWxzIC0gbWluU2l6ZVBpeGVsLFxuICAgICAgfTtcbiAgICB9XG4gICAgLy8gSWYgcmVkdWNlZCB1bmRlciB6ZXJvID4gcmV0dXJuIHJlbWFpbmluZyBwaXhlbHNcbiAgICBlbHNlIGlmICh0ZW1wUGVyY2VudFNpemUgPCAwKSB7XG4gICAgICAvLyBVc2UgMCBhcyBuZXdQZXJjZW50U2l6ZSBhbmQgcmV0dXJuIGNhbGN1bGF0ZSBwaXhlbHMgcmVtYWluaW5nXG4gICAgICByZXR1cm4ge1xuICAgICAgICBhcmVhU25hcHNob3QsXG4gICAgICAgIHBpeGVsQWJzb3JiOiAtYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQsXG4gICAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IDAsXG4gICAgICAgIHBpeGVsUmVtYWluOiBwaXhlbHMgKyBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBhcmVhU25hcHNob3QsXG4gICAgICBwaXhlbEFic29yYjogcGl4ZWxzLFxuICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogdGVtcFBlcmNlbnRTaXplLFxuICAgICAgcGl4ZWxSZW1haW46IDAsXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXJlYUFic29ycHRpb25DYXBhY2l0eVBpeGVsKFxuICBhcmVhU25hcHNob3Q6IE10eFNwbGl0QXJlYVNuYXBzaG90LFxuICBwaXhlbHM6IG51bWJlcixcbiAgY29udGFpbmVyU2l6ZVBpeGVsOiBudW1iZXJcbik6IE10eFNwbGl0QXJlYUFic29ycHRpb25DYXBhY2l0eSB8IHZvaWQge1xuICBjb25zdCB0ZW1wUGl4ZWxTaXplID0gYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQgKyBwaXhlbHM7XG5cbiAgLy8gRU5MQVJHRSBBUkVBXG5cbiAgaWYgKHBpeGVscyA+IDApIHtcbiAgICAvLyBJZiBtYXhTaXplICYgbmV3U2l6ZSBiaWdnZXIgdGhhbiBpdCA+IGFic29yYiB0byBtYXggYW5kIHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgaWYgKGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUgIT09IG51bGwgJiYgdGVtcFBpeGVsU2l6ZSA+IGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgICAgcGl4ZWxBYnNvcmI6IGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUgLSBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCxcbiAgICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogLTEsXG4gICAgICAgIHBpeGVsUmVtYWluOiB0ZW1wUGl4ZWxTaXplIC0gYXJlYVNuYXBzaG90LmFyZWEubWF4U2l6ZSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBhcmVhU25hcHNob3QsXG4gICAgICBwaXhlbEFic29yYjogcGl4ZWxzLFxuICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogLTEsXG4gICAgICBwaXhlbFJlbWFpbjogMCxcbiAgICB9O1xuICB9XG5cbiAgLy8gUkVEVUNFIEFSRUFcbiAgZWxzZSBpZiAocGl4ZWxzIDwgMCkge1xuICAgIC8vIElmIG1pblNpemUgJiBuZXdTaXplIHNtYWxsZXIgdGhhbiBpdCA+IGFic29yYiB0byBtaW4gYW5kIHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgaWYgKGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUgIT09IG51bGwgJiYgdGVtcFBpeGVsU2l6ZSA8IGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgICAgcGl4ZWxBYnNvcmI6IGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUgKyBwaXhlbHMgLSB0ZW1wUGl4ZWxTaXplLFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAtMSxcbiAgICAgICAgcGl4ZWxSZW1haW46IHRlbXBQaXhlbFNpemUgLSBhcmVhU25hcHNob3QuYXJlYS5taW5TaXplLFxuICAgICAgfTtcbiAgICB9XG4gICAgLy8gSWYgcmVkdWNlZCB1bmRlciB6ZXJvID4gcmV0dXJuIHJlbWFpbmluZyBwaXhlbHNcbiAgICBlbHNlIGlmICh0ZW1wUGl4ZWxTaXplIDwgMCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgICBwaXhlbEFic29yYjogLWFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0LFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAtMSxcbiAgICAgICAgcGl4ZWxSZW1haW46IHBpeGVscyArIGFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0LFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgIHBpeGVsQWJzb3JiOiBwaXhlbHMsXG4gICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAtMSxcbiAgICAgIHBpeGVsUmVtYWluOiAwLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZUFyZWFTaXplKHVuaXQ6ICdwZXJjZW50JyB8ICdwaXhlbCcsIGl0ZW06IE10eFNwbGl0QXJlYUFic29ycHRpb25DYXBhY2l0eSkge1xuICBpZiAodW5pdCA9PT0gJ3BlcmNlbnQnKSB7XG4gICAgaXRlbS5hcmVhU25hcHNob3QuYXJlYS5zaXplID0gaXRlbS5wZXJjZW50QWZ0ZXJBYnNvcnB0aW9uO1xuICB9IGVsc2UgaWYgKHVuaXQgPT09ICdwaXhlbCcpIHtcbiAgICAvLyBVcGRhdGUgc2l6ZSBleGNlcHQgZm9yIHRoZSB3aWxkY2FyZCBzaXplIGFyZWFcbiAgICBpZiAoaXRlbS5hcmVhU25hcHNob3QuYXJlYS5zaXplICE9PSBudWxsKSB7XG4gICAgICBpdGVtLmFyZWFTbmFwc2hvdC5hcmVhLnNpemUgPSBpdGVtLmFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0ICsgaXRlbS5waXhlbEFic29yYjtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXR4VG9vbHRpcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dGVuc2lvbnMvdG9vbHRpcC9tdHhUb29sdGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './tooltip-module';
|
|
2
|
-
export * from './tooltip';
|
|
3
|
-
export * from './tooltip-animations';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dGVuc2lvbnMvdG9vbHRpcC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdG9vbHRpcC1tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90b29sdGlwJztcbmV4cG9ydCAqIGZyb20gJy4vdG9vbHRpcC1hbmltYXRpb25zJztcbiJdfQ==
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { animate, state, style, transition, trigger, } from '@angular/animations';
|
|
2
|
-
/**
|
|
3
|
-
* Animations used by MatTooltip.
|
|
4
|
-
* @docs-private
|
|
5
|
-
*/
|
|
6
|
-
export const matTooltipAnimations = {
|
|
7
|
-
/** Animation that transitions a tooltip in and out. */
|
|
8
|
-
tooltipState: trigger('state', [
|
|
9
|
-
// TODO(crisbeto): these values are based on MDC's CSS.
|
|
10
|
-
// We should be able to use their styles directly once we land #19432.
|
|
11
|
-
state('initial, void, hidden', style({ opacity: 0, transform: 'scale(0.8)' })),
|
|
12
|
-
state('visible', style({ transform: 'scale(1)' })),
|
|
13
|
-
transition('* => visible', animate('150ms cubic-bezier(0, 0, 0.2, 1)')),
|
|
14
|
-
transition('* => hidden', animate('75ms cubic-bezier(0.4, 0, 1, 1)')),
|
|
15
|
-
]),
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1hbmltYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh0ZW5zaW9ucy90b29sdGlwL3Rvb2x0aXAtYW5pbWF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsT0FBTyxFQUVQLEtBQUssRUFDTCxLQUFLLEVBQ0wsVUFBVSxFQUNWLE9BQU8sR0FDUixNQUFNLHFCQUFxQixDQUFDO0FBRTdCOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUU3QjtJQUNGLHVEQUF1RDtJQUN2RCxZQUFZLEVBQUUsT0FBTyxDQUFDLE9BQU8sRUFBRTtRQUM3Qix1REFBdUQ7UUFDdkQsc0VBQXNFO1FBQ3RFLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQzlFLEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDbEQsVUFBVSxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsa0NBQWtDLENBQUMsQ0FBQztRQUN2RSxVQUFVLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0tBQ3RFLENBQUM7Q0FDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYW5pbWF0ZSxcbiAgQW5pbWF0aW9uVHJpZ2dlck1ldGFkYXRhLFxuICBzdGF0ZSxcbiAgc3R5bGUsXG4gIHRyYW5zaXRpb24sXG4gIHRyaWdnZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuXG4vKipcbiAqIEFuaW1hdGlvbnMgdXNlZCBieSBNYXRUb29sdGlwLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgY29uc3QgbWF0VG9vbHRpcEFuaW1hdGlvbnM6IHtcbiAgcmVhZG9ubHkgdG9vbHRpcFN0YXRlOiBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGE7XG59ID0ge1xuICAvKiogQW5pbWF0aW9uIHRoYXQgdHJhbnNpdGlvbnMgYSB0b29sdGlwIGluIGFuZCBvdXQuICovXG4gIHRvb2x0aXBTdGF0ZTogdHJpZ2dlcignc3RhdGUnLCBbXG4gICAgLy8gVE9ETyhjcmlzYmV0byk6IHRoZXNlIHZhbHVlcyBhcmUgYmFzZWQgb24gTURDJ3MgQ1NTLlxuICAgIC8vIFdlIHNob3VsZCBiZSBhYmxlIHRvIHVzZSB0aGVpciBzdHlsZXMgZGlyZWN0bHkgb25jZSB3ZSBsYW5kICMxOTQzMi5cbiAgICBzdGF0ZSgnaW5pdGlhbCwgdm9pZCwgaGlkZGVuJywgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICdzY2FsZSgwLjgpJyB9KSksXG4gICAgc3RhdGUoJ3Zpc2libGUnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3NjYWxlKDEpJyB9KSksXG4gICAgdHJhbnNpdGlvbignKiA9PiB2aXNpYmxlJywgYW5pbWF0ZSgnMTUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSknKSksXG4gICAgdHJhbnNpdGlvbignKiA9PiBoaWRkZW4nLCBhbmltYXRlKCc3NW1zIGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpJykpLFxuICBdKSxcbn07XG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { A11yModule } from '@angular/cdk/a11y';
|
|
4
|
-
import { OverlayModule } from '@angular/cdk/overlay';
|
|
5
|
-
import { CdkScrollableModule } from '@angular/cdk/scrolling';
|
|
6
|
-
import { MatCommonModule } from '@angular/material/core';
|
|
7
|
-
import { MtxPipesModule } from '@ng-matero/extensions/core';
|
|
8
|
-
import { MtxTooltip, TooltipComponent, MTX_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER, } from './tooltip';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class MtxTooltipModule {
|
|
11
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MtxTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: MtxTooltipModule, imports: [A11yModule,
|
|
13
|
-
CommonModule,
|
|
14
|
-
OverlayModule,
|
|
15
|
-
MatCommonModule,
|
|
16
|
-
MtxPipesModule,
|
|
17
|
-
MtxTooltip,
|
|
18
|
-
TooltipComponent], exports: [MtxTooltip, TooltipComponent, MatCommonModule, CdkScrollableModule] }); }
|
|
19
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MtxTooltipModule, providers: [MTX_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [A11yModule,
|
|
20
|
-
CommonModule,
|
|
21
|
-
OverlayModule,
|
|
22
|
-
MatCommonModule,
|
|
23
|
-
MtxPipesModule, MatCommonModule, CdkScrollableModule] }); }
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MtxTooltipModule, decorators: [{
|
|
26
|
-
type: NgModule,
|
|
27
|
-
args: [{
|
|
28
|
-
imports: [
|
|
29
|
-
A11yModule,
|
|
30
|
-
CommonModule,
|
|
31
|
-
OverlayModule,
|
|
32
|
-
MatCommonModule,
|
|
33
|
-
MtxPipesModule,
|
|
34
|
-
MtxTooltip,
|
|
35
|
-
TooltipComponent,
|
|
36
|
-
],
|
|
37
|
-
exports: [MtxTooltip, TooltipComponent, MatCommonModule, CdkScrollableModule],
|
|
38
|
-
providers: [MTX_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER],
|
|
39
|
-
}]
|
|
40
|
-
}] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL3Rvb2x0aXAvdG9vbHRpcC1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFDTCxVQUFVLEVBQ1YsZ0JBQWdCLEVBQ2hCLDRDQUE0QyxHQUM3QyxNQUFNLFdBQVcsQ0FBQzs7QUFlbkIsTUFBTSxPQUFPLGdCQUFnQjtpSUFBaEIsZ0JBQWdCO2tJQUFoQixnQkFBZ0IsWUFYekIsVUFBVTtZQUNWLFlBQVk7WUFDWixhQUFhO1lBQ2IsZUFBZTtZQUNmLGNBQWM7WUFDZCxVQUFVO1lBQ1YsZ0JBQWdCLGFBRVIsVUFBVSxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxtQkFBbUI7a0lBR2pFLGdCQUFnQixhQUZoQixDQUFDLDRDQUE0QyxDQUFDLFlBVHZELFVBQVU7WUFDVixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7WUFDZixjQUFjLEVBSXdCLGVBQWUsRUFBRSxtQkFBbUI7OzJGQUdqRSxnQkFBZ0I7a0JBYjVCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFVBQVU7d0JBQ1YsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxVQUFVO3dCQUNWLGdCQUFnQjtxQkFDakI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxtQkFBbUIsQ0FBQztvQkFDN0UsU0FBUyxFQUFFLENBQUMsNENBQTRDLENBQUM7aUJBQzFEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENka1Njcm9sbGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTXR4UGlwZXNNb2R1bGUgfSBmcm9tICdAbmctbWF0ZXJvL2V4dGVuc2lvbnMvY29yZSc7XG5pbXBvcnQge1xuICBNdHhUb29sdGlwLFxuICBUb29sdGlwQ29tcG9uZW50LFxuICBNVFhfVE9PTFRJUF9TQ1JPTExfU1RSQVRFR1lfRkFDVE9SWV9QUk9WSURFUixcbn0gZnJvbSAnLi90b29sdGlwJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEExMXlNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE92ZXJsYXlNb2R1bGUsXG4gICAgTWF0Q29tbW9uTW9kdWxlLFxuICAgIE10eFBpcGVzTW9kdWxlLFxuICAgIE10eFRvb2x0aXAsXG4gICAgVG9vbHRpcENvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW010eFRvb2x0aXAsIFRvb2x0aXBDb21wb25lbnQsIE1hdENvbW1vbk1vZHVsZSwgQ2RrU2Nyb2xsYWJsZU1vZHVsZV0sXG4gIHByb3ZpZGVyczogW01UWF9UT09MVElQX1NDUk9MTF9TVFJBVEVHWV9GQUNUT1JZX1BST1ZJREVSXSxcbn0pXG5leHBvcnQgY2xhc3MgTXR4VG9vbHRpcE1vZHVsZSB7fVxuIl19
|