@one-grid-core/angular 0.2.0 → 0.4.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/README.md +55 -9
- package/esm2022/lib/components/one-grid/one-grid.component.mjs +244 -11
- package/esm2022/lib/components/one-grid-body/one-grid-body.component.mjs +446 -34
- package/esm2022/lib/components/one-grid-cell-currency/one-grid-cell-currency.component.mjs +6 -5
- package/esm2022/lib/components/one-grid-cell-group-renderer/one-grid-cell-group-renderer.component.mjs +3 -3
- package/esm2022/lib/components/one-grid-cell-option-menu/one-grid-cell-option-menu.component.mjs +3 -3
- package/esm2022/lib/components/one-grid-checkbox/one-grid-checkbox.component.mjs +7 -18
- package/esm2022/lib/components/one-grid-checkbox-header/one-grid-checkbox-header.component.mjs +6 -6
- package/esm2022/lib/components/one-grid-header/one-grid-header.component.mjs +221 -17
- package/esm2022/lib/components/one-grid-header-menu/one-grid-header-menu.component.mjs +137 -0
- package/esm2022/lib/components/one-grid-pagination/one-grid-pagination.component.mjs +6 -5
- package/esm2022/lib/components/one-grid-row-action/one-grid-row-action.component.mjs +4 -4
- package/esm2022/lib/components/one-grid-row-drag-handle/one-grid-row-drag-handle.component.mjs +5 -3
- package/esm2022/lib/components/one-grid-status/one-grid-status.component.mjs +4 -4
- package/esm2022/lib/core/directives/one-cell-input-validator.directive.mjs +3 -3
- package/esm2022/lib/core/directives/one-cell-renderer-component.directive.mjs +3 -3
- package/esm2022/lib/core/directives/one-cell-text-expand.directive.mjs +3 -3
- package/esm2022/lib/core/icons/one-grid-icons.mjs +38 -0
- package/esm2022/lib/core/instants/one-grid-api.class.mjs +296 -3
- package/esm2022/lib/core/models/one-column-def-types.model.mjs +1 -1
- package/esm2022/lib/core/models/one-event-types.model.mjs +1 -1
- package/esm2022/lib/core/models/one-filter.model.mjs +1 -1
- package/esm2022/lib/core/pipes/aria-sort.pipe.mjs +31 -0
- package/esm2022/lib/core/pipes/cell-action-button-enable.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-editable.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-invalid.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-key.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-level-padding.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-selected.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-state-renderer.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/column-sort-state.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/header-checkbox-checked.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/header-checkbox-disabled.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/header-checkbox-indeterminate.pipe.mjs +3 -3
- package/esm2022/lib/core/services/og-column.service.mjs +153 -30
- package/esm2022/lib/core/services/one-grid-cell.service.mjs +39 -15
- package/esm2022/lib/helpers/one-cell.helper.mjs +30 -1
- package/esm2022/lib/helpers/one-column-def.helper.mjs +16 -1
- package/esm2022/lib/helpers/one-csv.helper.mjs +58 -0
- package/esm2022/lib/helpers/one-filter.helper.mjs +11 -1
- package/esm2022/lib/helpers/one-row-grouping.helper.mjs +103 -0
- package/esm2022/lib/index.mjs +3 -1
- package/esm2022/lib/one-grid.module.mjs +24 -114
- package/fesm2022/one-grid-core-angular.mjs +2322 -823
- package/fesm2022/one-grid-core-angular.mjs.map +1 -1
- package/lib/components/one-grid/one-grid.component.d.ts +101 -4
- package/lib/components/one-grid-body/one-grid-body.component.d.ts +83 -2
- package/lib/components/one-grid-cell-currency/one-grid-cell-currency.component.d.ts +1 -1
- package/lib/components/one-grid-cell-group-renderer/one-grid-cell-group-renderer.component.d.ts +1 -1
- package/lib/components/one-grid-cell-option-menu/one-grid-cell-option-menu.component.d.ts +1 -1
- package/lib/components/one-grid-checkbox/one-grid-checkbox.component.d.ts +1 -1
- package/lib/components/one-grid-checkbox-header/one-grid-checkbox-header.component.d.ts +1 -1
- package/lib/components/one-grid-header/one-grid-header.component.d.ts +69 -4
- package/lib/components/one-grid-header-menu/one-grid-header-menu.component.d.ts +52 -0
- package/lib/components/one-grid-pagination/one-grid-pagination.component.d.ts +1 -1
- package/lib/components/one-grid-row-action/one-grid-row-action.component.d.ts +1 -1
- package/lib/components/one-grid-row-drag-handle/one-grid-row-drag-handle.component.d.ts +1 -1
- package/lib/components/one-grid-status/one-grid-status.component.d.ts +1 -1
- package/lib/core/directives/one-cell-input-validator.directive.d.ts +1 -1
- package/lib/core/directives/one-cell-renderer-component.directive.d.ts +1 -1
- package/lib/core/directives/one-cell-text-expand.directive.d.ts +1 -1
- package/lib/core/icons/one-grid-icons.d.ts +35 -0
- package/lib/core/instants/one-grid-api.class.d.ts +115 -1
- package/lib/core/models/one-column-def-types.model.d.ts +77 -2
- package/lib/core/models/one-event-types.model.d.ts +19 -0
- package/lib/core/models/one-filter.model.d.ts +8 -1
- package/lib/core/pipes/aria-sort.pipe.d.ts +15 -0
- package/lib/core/pipes/cell-action-button-enable.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-editable.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-invalid.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-key.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-level-padding.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-selected.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-state-renderer.pipe.d.ts +1 -1
- package/lib/core/pipes/column-sort-state.pipe.d.ts +1 -1
- package/lib/core/pipes/header-checkbox-checked.pipe.d.ts +1 -1
- package/lib/core/pipes/header-checkbox-disabled.pipe.d.ts +1 -1
- package/lib/core/pipes/header-checkbox-indeterminate.pipe.d.ts +1 -1
- package/lib/core/services/og-column.service.d.ts +46 -2
- package/lib/core/services/one-grid-cell.service.d.ts +16 -3
- package/lib/helpers/one-cell.helper.d.ts +17 -0
- package/lib/helpers/one-column-def.helper.d.ts +9 -0
- package/lib/helpers/one-csv.helper.d.ts +29 -0
- package/lib/helpers/one-row-grouping.helper.d.ts +35 -0
- package/lib/index.d.ts +2 -0
- package/lib/one-grid.module.d.ts +15 -37
- package/package.json +1 -1
- package/scss/_one-grid.scss +127 -0
- package/esm2022/lib/core/pipes/cell-action-button-visible.pipe.mjs +0 -17
- package/esm2022/lib/core/pipes/cell-field-value-empty.pipe.mjs +0 -26
- package/esm2022/lib/core/pipes/cell-field-value.pipe.mjs +0 -25
- package/esm2022/lib/core/pipes/cell-field.pipe.mjs +0 -20
- package/esm2022/lib/core/pipes/cell-number-value.pipe.mjs +0 -19
- package/esm2022/lib/core/pipes/cell-state-group-renderer.pipe.mjs +0 -21
- package/esm2022/lib/core/pipes/cell-value-getter.pipe.mjs +0 -23
- package/lib/core/pipes/cell-action-button-visible.pipe.d.ts +0 -9
- package/lib/core/pipes/cell-field-value-empty.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-field-value.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-field.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-number-value.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-state-group-renderer.pipe.d.ts +0 -9
- package/lib/core/pipes/cell-value-getter.pipe.d.ts +0 -9
|
@@ -50,4 +50,19 @@ export function resolveOneColumDefParams(prop, params) {
|
|
|
50
50
|
export function resolveOneValueGetterParams(prop, params) {
|
|
51
51
|
return typeof prop === 'function' ? prop(params) : prop;
|
|
52
52
|
}
|
|
53
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Run a column's `valueGetter` for one row.
|
|
55
|
+
*
|
|
56
|
+
* Was `CellValueGetterPipe`, which existed only to call this resolver from a
|
|
57
|
+
* service. The pipe added a module declaration and an indirection for a
|
|
58
|
+
* template use that never existed.
|
|
59
|
+
*/
|
|
60
|
+
export function resolveCellValueGetter(data, node, column, context) {
|
|
61
|
+
return resolveOneValueGetterParams(column?.valueGetter, {
|
|
62
|
+
data,
|
|
63
|
+
rowIndex: node?.rowIndex,
|
|
64
|
+
node,
|
|
65
|
+
context,
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWNvbHVtbi1kZWYuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lLWdyaWQvc3JjL2xpYi9oZWxwZXJzL29uZS1jb2x1bW4tZGVmLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSx1RUFBdUU7QUFDdkUsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsR0FBRyxDQUFDO0FBRTVDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUFJLE1BQXVCO0lBRXpELE1BQU0sR0FBRyxHQUFHLE1BQU0sRUFBRSxRQUFRLElBQUksQ0FBQyxDQUFDO0lBQ2xDLE1BQU0sR0FBRyxHQUFHLE1BQU0sRUFBRSxRQUFRLElBQUksTUFBTSxDQUFDLGlCQUFpQixDQUFDO0lBQ3pELE1BQU0sS0FBSyxHQUFHLE1BQU0sRUFBRSxLQUFLLElBQUksTUFBTSxFQUFFLFFBQVEsSUFBSSx3QkFBd0IsQ0FBQztJQUU1RSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDL0MsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUFJLFVBQTZCLEVBQUUsZ0JBQWlDO0lBRXZHLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0IsR0FBRyxnQkFBZ0I7UUFDbkIsR0FBRyxNQUFNO0tBQ1YsQ0FBQyxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsNEJBQTRCLENBQzFDLElBQTBDLEVBQzFDLE1BQWdDO0FBQ2hDOzs7O0dBSUc7QUFDSCxZQUFxQixLQUFLO0lBRzFCLElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxJQUFJLEtBQUssSUFBSTtRQUFFLE9BQU8sU0FBUyxDQUFDO0lBRTFELE9BQU8sT0FBTyxJQUFJLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDNUQsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFJLElBQThCLEVBQUUsTUFBVztJQUVyRixPQUFPLE9BQU8sSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUUsSUFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQzdFLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSwyQkFBMkIsQ0FBTyxJQUFrRCxFQUFFLE1BQStCO0lBRW5JLE9BQU8sT0FBTyxJQUFJLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBRSxJQUEwQyxDQUFFLE1BQU0sQ0FBQyxDQUFBLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDakcsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBSSxJQUFPLEVBQUUsSUFBZ0IsRUFBRSxNQUFvQixFQUFFLE9BQWdCO0lBRXZHLE9BQU8sMkJBQTJCLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRTtRQUNwRCxJQUFJO1FBQ0osUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRO1FBQ3hCLElBQUk7UUFDSixPQUFPO0tBQ1YsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9uZUNlbGxSZW5kZXJlclBhcmFtcywgT25lQ29sdW1uRGVmLCBPbmVWYWx1ZUdldHRlclBhcmFtcyB9IGZyb20gXCIuLi9jb3JlL21vZGVscy9vbmUtY29sdW1uLWRlZi10eXBlcy5tb2RlbFwiO1xuaW1wb3J0IHR5cGUgeyBPbmVSb3dOb2RlIH0gZnJvbSBcIi4uL2NvcmUvaW5zdGFudHMvb25lLXJvdy1ub2RlLmNsYXNzXCI7XG5cbi8qKiBXaWR0aCB1c2VkIHdoZW4gYSBjb2x1bW4gZGVmaW5lcyBuZWl0aGVyIGB3aWR0aGAgbm9yIGBtaW5XaWR0aGAuICovXG5leHBvcnQgY29uc3QgT05FX0RFRkFVTFRfQ09MVU1OX1dJRFRIID0gMTUwO1xuXG4vKipcbiAqIFRoZSByZW5kZXJlZCB3aWR0aCBvZiBhIGNvbHVtbiwgY2xhbXBlZCB0byBpdHMgYm91bmRzLlxuICpcbiAqIGB3aWR0aGAsIGBtaW5XaWR0aGAgYW5kIGBtYXhXaWR0aGAgYXJlIGFsbCBvcHRpb25hbCwgYW5kIHRoZSBwcmV2aW91cyBpbmxpbmVcbiAqIGV4cHJlc3Npb24g4oCUIHJlcGVhdGVkIGluIHR3byBwbGFjZXMg4oCUIGZlbGwgYmFjayB0byBgbWluV2lkdGhgIHdoZW4gYHdpZHRoYFxuICogd2FzIGFic2VudC4gV2l0aCBuZWl0aGVyIHNldCB0aGF0IHByb2R1Y2VkIGB1bmRlZmluZWRgLCBhbmQgc3VtbWluZyBpdCBnYXZlXG4gKiBhIGBOYU5gIHJvdyB3aWR0aCwgc28gdGhlIHJvdyBjb2xsYXBzZWQuIFRoaXMgaXMgdG90YWw6IGV2ZXJ5IGNvbWJpbmF0aW9uIG9mXG4gKiBwcmVzZW50IGFuZCBhYnNlbnQgYm91bmRzIHJlc29sdmVzIHRvIGEgdXNhYmxlIG51bWJlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDb2x1bW5XaWR0aDxUPihjb2x1bW46IE9uZUNvbHVtbkRlZjxUPik6IG51bWJlciB7XG5cbiAgICBjb25zdCBtaW4gPSBjb2x1bW4/Lm1pbldpZHRoID8/IDA7XG4gICAgY29uc3QgbWF4ID0gY29sdW1uPy5tYXhXaWR0aCA/PyBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7XG4gICAgY29uc3Qgd2lkdGggPSBjb2x1bW4/LndpZHRoID8/IGNvbHVtbj8ubWluV2lkdGggPz8gT05FX0RFRkFVTFRfQ09MVU1OX1dJRFRIO1xuXG4gICAgcmV0dXJuIE1hdGgubWluKE1hdGgubWF4KHdpZHRoLCBtaW4pLCBtYXgpO1xufVxuXG4vKipcbiAqIEFwcGx5IERlZmF1bHQgQ29sdW1uIERlZmluaXRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcHBseURlZmF1bHRDb2x1bW5EZWY8VD4oY29sdW1uRGVmczogT25lQ29sdW1uRGVmPFQ+W10sIGRlZmF1bHRDb2x1bW5EZWY6IE9uZUNvbHVtbkRlZjxUPik6IE9uZUNvbHVtbkRlZjxUPltdIHtcblxuICByZXR1cm4gY29sdW1uRGVmcy5tYXAoY29sRGVmID0+ICh7XG4gICAgLi4uZGVmYXVsdENvbHVtbkRlZixcbiAgICAuLi5jb2xEZWZcbiAgfSkpO1xufVxuXG4vKipcbiAqIE9uZSBDb2x1bW4gUGFyYW1zIFJlc29sdmVyIChDZWxsIFJlbmRlcmVyKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZU9uZUNlbGxSZW5kZXJlclBhcmFtczxUPihcbiAgcHJvcDogYm9vbGVhbiB8ICgocGFyYW1zOiBhbnkpID0+IGJvb2xlYW4pLFxuICBwYXJhbXM6IE9uZUNlbGxSZW5kZXJlclBhcmFtczxUPixcbiAgLyoqXG4gICAqIFdoYXQgYW4gdW5zZXQgcHJvcGVydHkgbWVhbnM6IGBmYWxzZWAgZm9yIGEgY2FwYWJpbGl0eSB5b3Ugb3B0IGludG8sXG4gICAqIGB0cnVlYCBmb3IgYSByZXN0cmljdGlvbiB5b3Ugb3B0IG91dCBvZi4gYCEhcHJvcGAgY291bGQgbm90IHRlbGwgdGhlIHR3b1xuICAgKiBhcGFydCwgd2hpY2ggbGVmdCBgdXBkYXRhYmxlYCDigJQgYSByZXN0cmljdGlvbiDigJQgZGVmYXVsdGluZyB0byBcImRlbnlcIi5cbiAgICovXG4gIHdoZW5VbnNldDogYm9vbGVhbiA9IGZhbHNlLFxuKTogYm9vbGVhbiB7XG5cbiAgaWYgKHByb3AgPT09IHVuZGVmaW5lZCB8fCBwcm9wID09PSBudWxsKSByZXR1cm4gd2hlblVuc2V0O1xuXG4gIHJldHVybiB0eXBlb2YgcHJvcCA9PT0gJ2Z1bmN0aW9uJyA/IHByb3AocGFyYW1zKSA6ICEhcHJvcDtcbn1cblxuLyoqXG4gKiBPbmUgQ29sdW1uIFBhcmFtcyBSZXNvbHZlciAoR2VuZXJpY3MpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlT25lQ29sdW1EZWZQYXJhbXM8Uj4ocHJvcDogUiB8ICgocGFyYW1zOiBhbnkpID0+IFIpLCBwYXJhbXM6IGFueSk6IFIge1xuXG4gIHJldHVybiB0eXBlb2YgcHJvcCA9PT0gJ2Z1bmN0aW9uJyA/IChwcm9wIGFzIChwOiBhbnkpID0+IFIpKHBhcmFtcykgOiBwcm9wO1xufVxuXG4vKipcbiAqIE9uZSBDb2x1bW4gUGFyYW1zIFJlc29sdmVyIChWYWx1ZSBHZXR0ZXIpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlT25lVmFsdWVHZXR0ZXJQYXJhbXM8VCwgUj4ocHJvcDogUiB8ICgocGFyYW1zOiBPbmVWYWx1ZUdldHRlclBhcmFtczxUPikgPT4gUiksIHBhcmFtczogT25lVmFsdWVHZXR0ZXJQYXJhbXM8VD4pOiBSIHtcblxuICByZXR1cm4gdHlwZW9mIHByb3AgPT09ICdmdW5jdGlvbicgPyAocHJvcCBhcyAocDogT25lVmFsdWVHZXR0ZXJQYXJhbXM8VD4pID0+IFIpIChwYXJhbXMpOiBwcm9wO1xufVxuXG4vKipcbiAqIFJ1biBhIGNvbHVtbidzIGB2YWx1ZUdldHRlcmAgZm9yIG9uZSByb3cuXG4gKlxuICogV2FzIGBDZWxsVmFsdWVHZXR0ZXJQaXBlYCwgd2hpY2ggZXhpc3RlZCBvbmx5IHRvIGNhbGwgdGhpcyByZXNvbHZlciBmcm9tIGFcbiAqIHNlcnZpY2UuIFRoZSBwaXBlIGFkZGVkIGEgbW9kdWxlIGRlY2xhcmF0aW9uIGFuZCBhbiBpbmRpcmVjdGlvbiBmb3IgYVxuICogdGVtcGxhdGUgdXNlIHRoYXQgbmV2ZXIgZXhpc3RlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDZWxsVmFsdWVHZXR0ZXI8VD4oZGF0YTogVCwgbm9kZTogT25lUm93Tm9kZSwgY29sdW1uOiBPbmVDb2x1bW5EZWYsIGNvbnRleHQ6IHVua25vd24pOiBzdHJpbmcge1xuXG4gICAgcmV0dXJuIHJlc29sdmVPbmVWYWx1ZUdldHRlclBhcmFtcyhjb2x1bW4/LnZhbHVlR2V0dGVyLCB7XG4gICAgICAgIGRhdGEsXG4gICAgICAgIHJvd0luZGV4OiBub2RlPy5yb3dJbmRleCxcbiAgICAgICAgbm9kZSxcbiAgICAgICAgY29udGV4dCxcbiAgICB9KTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The columns an export can say anything about: those that read a row —
|
|
3
|
+
* through a field or a valueGetter. Action columns have neither, and the
|
|
4
|
+
* row-number column reads state the data does not hold; both are skipped.
|
|
5
|
+
*/
|
|
6
|
+
export function exportableColumns(columns) {
|
|
7
|
+
return (columns ?? []).filter(column => (column.field && column.field !== '_oneRowNumber') || column.valueGetter);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Serialize rows to RFC 4180 CSV.
|
|
11
|
+
*
|
|
12
|
+
* Each cell goes through the same value pipeline the grid renders with:
|
|
13
|
+
* `valueGetter` when declared, the field otherwise, then `valueFormatter` —
|
|
14
|
+
* so the file says what the screen says. Null and undefined export as empty
|
|
15
|
+
* cells, before the formatter, exactly as the grid leaves them to the
|
|
16
|
+
* placeholder.
|
|
17
|
+
*/
|
|
18
|
+
export function buildCsv(nodes, columns, context = null, options = {}) {
|
|
19
|
+
const separator = options.columnSeparator ?? ',';
|
|
20
|
+
const exportable = exportableColumns(columns);
|
|
21
|
+
const lines = [];
|
|
22
|
+
if (options.includeHeaders ?? true) {
|
|
23
|
+
lines.push(exportable.map(column => escapeCsvCell(column.headerName ?? column.field ?? '', separator)).join(separator));
|
|
24
|
+
}
|
|
25
|
+
nodes?.forEach((node, rowIndex) => {
|
|
26
|
+
const cells = exportable.map(column => {
|
|
27
|
+
let value = column.valueGetter
|
|
28
|
+
? column.valueGetter({ data: node.data, rowIndex, node, context })
|
|
29
|
+
: node.data?.[column.field];
|
|
30
|
+
if (value === null || value === undefined)
|
|
31
|
+
return '';
|
|
32
|
+
if (column.valueFormatter) {
|
|
33
|
+
value = column.valueFormatter({
|
|
34
|
+
value,
|
|
35
|
+
data: node.data,
|
|
36
|
+
node,
|
|
37
|
+
rowIndex,
|
|
38
|
+
field: column.field,
|
|
39
|
+
columnDef: column,
|
|
40
|
+
context,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
return escapeCsvCell(value, separator);
|
|
44
|
+
});
|
|
45
|
+
lines.push(cells.join(separator));
|
|
46
|
+
});
|
|
47
|
+
// CRLF is what RFC 4180 asks for, and what spreadsheet apps expect.
|
|
48
|
+
return lines.join('\r\n');
|
|
49
|
+
}
|
|
50
|
+
/** Quote a cell when it holds the separator, a quote, or a line break. */
|
|
51
|
+
function escapeCsvCell(value, separator) {
|
|
52
|
+
const text = `${value}`;
|
|
53
|
+
if (text.includes(separator) || text.includes('"') || text.includes('\n') || text.includes('\r')) {
|
|
54
|
+
return `"${text.replace(/"/g, '""')}"`;
|
|
55
|
+
}
|
|
56
|
+
return text;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWNzdi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2hlbHBlcnMvb25lLWNzdi5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZUE7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBSSxPQUEwQjtJQUU3RCxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUNyQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxlQUFlLENBQUMsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDOUUsQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FDdEIsS0FBK0IsRUFDL0IsT0FBMEIsRUFDMUIsVUFBZSxJQUFJLEVBQ25CLFVBQStCLEVBQUU7SUFHakMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLGVBQWUsSUFBSSxHQUFHLENBQUM7SUFDakQsTUFBTSxVQUFVLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFOUMsTUFBTSxLQUFLLEdBQWEsRUFBRSxDQUFDO0lBRTNCLElBQUksT0FBTyxDQUFDLGNBQWMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUVuQyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzFILENBQUM7SUFFRCxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFO1FBRWhDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFFcEMsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLFdBQVc7Z0JBQzVCLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztnQkFDbEUsQ0FBQyxDQUFFLElBQUksQ0FBQyxJQUFnQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQWUsQ0FBQyxDQUFDO1lBRXJFLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUztnQkFBRSxPQUFPLEVBQUUsQ0FBQztZQUVyRCxJQUFJLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFFMUIsS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUM7b0JBQzVCLEtBQUs7b0JBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLElBQUk7b0JBQ0osUUFBUTtvQkFDUixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQWU7b0JBQzdCLFNBQVMsRUFBRSxNQUFNO29CQUNqQixPQUFPO2lCQUNSLENBQUMsQ0FBQztZQUNMLENBQUM7WUFFRCxPQUFPLGFBQWEsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDLENBQUMsQ0FBQztJQUVILG9FQUFvRTtJQUNwRSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDNUIsQ0FBQztBQUVELDBFQUEwRTtBQUMxRSxTQUFTLGFBQWEsQ0FBQyxLQUFjLEVBQUUsU0FBaUI7SUFFdEQsTUFBTSxJQUFJLEdBQUcsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUV4QixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUVqRyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUN6QyxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPbmVSb3dOb2RlIH0gZnJvbSBcIi4uL2NvcmUvaW5zdGFudHMvb25lLXJvdy1ub2RlLmNsYXNzXCI7XG5pbXBvcnQgdHlwZSB7IE9uZUNvbHVtbkRlZiB9IGZyb20gXCIuLi9jb3JlL21vZGVscy9vbmUtY29sdW1uLWRlZi10eXBlcy5tb2RlbFwiO1xuXG4vKiogT3B0aW9ucyBmb3IgYGFwaS5nZXREYXRhQXNDc3ZgIC8gYGFwaS5leHBvcnREYXRhQXNDc3ZgLiAqL1xuZXhwb3J0IGludGVyZmFjZSBPbmVDc3ZFeHBvcnRPcHRpb25zIHtcbiAgLyoqIEZpZWxkIHNlcGFyYXRvci4gRGVmYXVsdHMgdG8gJywnLiAqL1xuICBjb2x1bW5TZXBhcmF0b3I/OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoZSBmaXJzdCBsaW5lIGNhcnJpZXMgdGhlIGhlYWRlciBuYW1lcy4gRGVmYXVsdHMgdG8gdHJ1ZS4gKi9cbiAgaW5jbHVkZUhlYWRlcnM/OiBib29sZWFuO1xuICAvKiogRXhwb3J0IG9ubHkgdGhlIHNlbGVjdGVkIHJvd3MgaW5zdGVhZCBvZiBldmVyeSB2aXNpYmxlIG9uZS4gKi9cbiAgb25seVNlbGVjdGVkPzogYm9vbGVhbjtcbiAgLyoqIERvd25sb2FkIG5hbWUgZm9yIGBleHBvcnREYXRhQXNDc3ZgLiBEZWZhdWx0cyB0byAnZXhwb3J0LmNzdicuICovXG4gIGZpbGVOYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSBjb2x1bW5zIGFuIGV4cG9ydCBjYW4gc2F5IGFueXRoaW5nIGFib3V0OiB0aG9zZSB0aGF0IHJlYWQgYSByb3cg4oCUXG4gKiB0aHJvdWdoIGEgZmllbGQgb3IgYSB2YWx1ZUdldHRlci4gQWN0aW9uIGNvbHVtbnMgaGF2ZSBuZWl0aGVyLCBhbmQgdGhlXG4gKiByb3ctbnVtYmVyIGNvbHVtbiByZWFkcyBzdGF0ZSB0aGUgZGF0YSBkb2VzIG5vdCBob2xkOyBib3RoIGFyZSBza2lwcGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwb3J0YWJsZUNvbHVtbnM8VD4oY29sdW1uczogT25lQ29sdW1uRGVmPFQ+W10pOiBPbmVDb2x1bW5EZWY8VD5bXSB7XG5cbiAgcmV0dXJuIChjb2x1bW5zID8/IFtdKS5maWx0ZXIoY29sdW1uID0+XG4gICAgKGNvbHVtbi5maWVsZCAmJiBjb2x1bW4uZmllbGQgIT09ICdfb25lUm93TnVtYmVyJykgfHwgY29sdW1uLnZhbHVlR2V0dGVyKTtcbn1cblxuLyoqXG4gKiBTZXJpYWxpemUgcm93cyB0byBSRkMgNDE4MCBDU1YuXG4gKlxuICogRWFjaCBjZWxsIGdvZXMgdGhyb3VnaCB0aGUgc2FtZSB2YWx1ZSBwaXBlbGluZSB0aGUgZ3JpZCByZW5kZXJzIHdpdGg6XG4gKiBgdmFsdWVHZXR0ZXJgIHdoZW4gZGVjbGFyZWQsIHRoZSBmaWVsZCBvdGhlcndpc2UsIHRoZW4gYHZhbHVlRm9ybWF0dGVyYCDigJRcbiAqIHNvIHRoZSBmaWxlIHNheXMgd2hhdCB0aGUgc2NyZWVuIHNheXMuIE51bGwgYW5kIHVuZGVmaW5lZCBleHBvcnQgYXMgZW1wdHlcbiAqIGNlbGxzLCBiZWZvcmUgdGhlIGZvcm1hdHRlciwgZXhhY3RseSBhcyB0aGUgZ3JpZCBsZWF2ZXMgdGhlbSB0byB0aGVcbiAqIHBsYWNlaG9sZGVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRDc3Y8VD4oXG4gIG5vZGVzOiByZWFkb25seSBPbmVSb3dOb2RlPFQ+W10sXG4gIGNvbHVtbnM6IE9uZUNvbHVtbkRlZjxUPltdLFxuICBjb250ZXh0OiBhbnkgPSBudWxsLFxuICBvcHRpb25zOiBPbmVDc3ZFeHBvcnRPcHRpb25zID0ge30sXG4pOiBzdHJpbmcge1xuXG4gIGNvbnN0IHNlcGFyYXRvciA9IG9wdGlvbnMuY29sdW1uU2VwYXJhdG9yID8/ICcsJztcbiAgY29uc3QgZXhwb3J0YWJsZSA9IGV4cG9ydGFibGVDb2x1bW5zKGNvbHVtbnMpO1xuXG4gIGNvbnN0IGxpbmVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGlmIChvcHRpb25zLmluY2x1ZGVIZWFkZXJzID8/IHRydWUpIHtcblxuICAgIGxpbmVzLnB1c2goZXhwb3J0YWJsZS5tYXAoY29sdW1uID0+IGVzY2FwZUNzdkNlbGwoY29sdW1uLmhlYWRlck5hbWUgPz8gY29sdW1uLmZpZWxkID8/ICcnLCBzZXBhcmF0b3IpKS5qb2luKHNlcGFyYXRvcikpO1xuICB9XG5cbiAgbm9kZXM/LmZvckVhY2goKG5vZGUsIHJvd0luZGV4KSA9PiB7XG5cbiAgICBjb25zdCBjZWxscyA9IGV4cG9ydGFibGUubWFwKGNvbHVtbiA9PiB7XG5cbiAgICAgIGxldCB2YWx1ZSA9IGNvbHVtbi52YWx1ZUdldHRlclxuICAgICAgICA/IGNvbHVtbi52YWx1ZUdldHRlcih7IGRhdGE6IG5vZGUuZGF0YSwgcm93SW5kZXgsIG5vZGUsIGNvbnRleHQgfSlcbiAgICAgICAgOiAobm9kZS5kYXRhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KT8uW2NvbHVtbi5maWVsZCBhcyBzdHJpbmddO1xuXG4gICAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuICcnO1xuXG4gICAgICBpZiAoY29sdW1uLnZhbHVlRm9ybWF0dGVyKSB7XG5cbiAgICAgICAgdmFsdWUgPSBjb2x1bW4udmFsdWVGb3JtYXR0ZXIoe1xuICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgIGRhdGE6IG5vZGUuZGF0YSxcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIHJvd0luZGV4LFxuICAgICAgICAgIGZpZWxkOiBjb2x1bW4uZmllbGQgYXMgc3RyaW5nLFxuICAgICAgICAgIGNvbHVtbkRlZjogY29sdW1uLFxuICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZXNjYXBlQ3N2Q2VsbCh2YWx1ZSwgc2VwYXJhdG9yKTtcbiAgICB9KTtcblxuICAgIGxpbmVzLnB1c2goY2VsbHMuam9pbihzZXBhcmF0b3IpKTtcbiAgfSk7XG5cbiAgLy8gQ1JMRiBpcyB3aGF0IFJGQyA0MTgwIGFza3MgZm9yLCBhbmQgd2hhdCBzcHJlYWRzaGVldCBhcHBzIGV4cGVjdC5cbiAgcmV0dXJuIGxpbmVzLmpvaW4oJ1xcclxcbicpO1xufVxuXG4vKiogUXVvdGUgYSBjZWxsIHdoZW4gaXQgaG9sZHMgdGhlIHNlcGFyYXRvciwgYSBxdW90ZSwgb3IgYSBsaW5lIGJyZWFrLiAqL1xuZnVuY3Rpb24gZXNjYXBlQ3N2Q2VsbCh2YWx1ZTogdW5rbm93biwgc2VwYXJhdG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuXG4gIGNvbnN0IHRleHQgPSBgJHt2YWx1ZX1gO1xuXG4gIGlmICh0ZXh0LmluY2x1ZGVzKHNlcGFyYXRvcikgfHwgdGV4dC5pbmNsdWRlcygnXCInKSB8fCB0ZXh0LmluY2x1ZGVzKCdcXG4nKSB8fCB0ZXh0LmluY2x1ZGVzKCdcXHInKSkge1xuXG4gICAgcmV0dXJuIGBcIiR7dGV4dC5yZXBsYWNlKC9cIi9nLCAnXCJcIicpfVwiYDtcbiAgfVxuXG4gIHJldHVybiB0ZXh0O1xufVxuIl19
|
|
@@ -47,13 +47,23 @@ export function matchesAdvancedFilters(node, filters) {
|
|
|
47
47
|
const val = (node.data[filter.field] ?? '').toString().toLowerCase();
|
|
48
48
|
const results = filter.conditions.map(condition => {
|
|
49
49
|
const cmp = (condition.value ?? '').toString().toLowerCase();
|
|
50
|
+
const cmpTo = (condition.valueTo ?? '').toString().toLowerCase();
|
|
50
51
|
switch (condition.operator) {
|
|
51
52
|
case 'equals': return val === cmp;
|
|
53
|
+
case 'notEqual': return val !== cmp;
|
|
52
54
|
case 'contains': return val.includes(cmp);
|
|
55
|
+
case 'notContains': return !val.includes(cmp);
|
|
53
56
|
case 'startsWith': return val.startsWith(cmp);
|
|
54
57
|
case 'endsWith': return val.endsWith(cmp);
|
|
55
58
|
case 'greaterThan': return compare(val, cmp) > 0;
|
|
59
|
+
case 'greaterThanOrEqual': return compare(val, cmp) >= 0;
|
|
56
60
|
case 'lessThan': return compare(val, cmp) < 0;
|
|
61
|
+
case 'lessThanOrEqual': return compare(val, cmp) <= 0;
|
|
62
|
+
case 'inRange': return compare(val, cmp) >= 0 && compare(val, cmpTo) <= 0;
|
|
63
|
+
// `val` has already been through `?? ''`, so null and undefined land
|
|
64
|
+
// here as the empty string. 0 stringifies to '0' and does not.
|
|
65
|
+
case 'blank': return val === '';
|
|
66
|
+
case 'notBlank': return val !== '';
|
|
57
67
|
default: return true; // Unknown operator = ignore
|
|
58
68
|
}
|
|
59
69
|
});
|
|
@@ -108,4 +118,4 @@ export function matchesQuickFilter(node, quick, fields) {
|
|
|
108
118
|
return value.toString().toLowerCase().includes(quick);
|
|
109
119
|
});
|
|
110
120
|
}
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWZpbHRlci5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2hlbHBlcnMvb25lLWZpbHRlci5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBVSxJQUFtQixFQUFFLE9BQWdDLEVBQUUsS0FBYSxFQUFFLE1BQTBCO0lBRXRJLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFakQsNkRBQTZEO0lBQzdELE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRW5HLG1EQUFtRDtJQUNuRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUV4RywyREFBMkQ7SUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLElBQUksVUFBVSxDQUFDO0lBRXZDLElBQUksU0FBUyxFQUFFLENBQUM7UUFFZCxpREFBaUQ7UUFDakQsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztBQUN0QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxPQUFnQyxFQUFFLEtBQWE7SUFFNUUsSUFBSSxLQUFLO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFdkIsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFN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QUFVLGtCQUFrQixDQUFVLElBQW1CLEVBQUUsS0FBYSxFQUFFLE1BQTBCO0lBRXhHLElBQUksQ0FBQyxLQUFLO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFeEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQStCLENBQUM7SUFFbEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRS9GLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUV6QixJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUV4RCwyRUFBMkU7UUFDM0Usa0RBQWtEO1FBQ2xELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFVBQVU7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUUzRSxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT25lUm93Tm9kZSB9IGZyb20gXCIuLi9jb3JlL2luc3RhbnRzL29uZS1yb3ctbm9kZS5jbGFzc1wiO1xuaW1wb3J0IHsgT25lRmlsdGVyTW9kZWwgfSBmcm9tIFwiLi4vY29yZS9tb2RlbHMvb25lLWZpbHRlci5tb2RlbFwiO1xuXG4vKipcbiAqIFJlY3Vyc2l2ZWx5IGZpbHRlcnMgYSB0cmVlIGFuZCB1cGRhdGVzIGVhY2ggbm9kZSdzIFVJIHN0YXRlLlxuICpcbiAqIFJ1bGVzOlxuICogLSBBIG5vZGUgaXMgdmlzaWJsZSBpZiBpdCBtYXRjaGVzIHRoZSBmaWx0ZXJzIG9yIGhhcyBhIG1hdGNoaW5nIGRlc2NlbmRhbnQuXG4gKiAtIFdoaWxlIGEgZmlsdGVyIGlzIGFjdGl2ZSwgYSBub2RlIGlzIGV4cGFuZGVkIGlmZiBpdCBoYXMgYSBtYXRjaGluZ1xuICogICBkZXNjZW5kYW50LCBzbyB0aGUgaGl0IGlzIHJldmVhbGVkLlxuICpcbiAqIE92ZXJ3cml0aW5nIGBleHBhbmRlZGAgaXMgb25seSBjb3JyZWN0ICp3aGlsZSBmaWx0ZXJpbmcqLiBUaGlzIHJ1bnMgZnJvbVxuICogYGFwcGx5RmlsdGVyc2AsIHdoaWNoIGV2ZXJ5IGBzZXRSb3dEYXRhYCAvIGB1cGRhdGVSb3dEYXRhYCBjYWxscywgc28gZG9pbmcgaXRcbiAqIHVuY29uZGl0aW9uYWxseSBmb3JjZS1leHBhbmRlZCBldmVyeSBwYXJlbnQgb24gZWFjaCBkYXRhIHVwZGF0ZTogaXQgbWFkZVxuICogYGdyb3VwRGVmYXVsdEV4cGFuZGVkYCBpbmVydCBmb3IgdHJlZSBkYXRhIGFuZCBjb2xsYXBzZWQgZXhwYW5kZWRcbiAqIG1hc3Rlci1kZXRhaWwgcm93cyAodGhleSBoYXZlIG5vIGNoaWxkcmVuLCBzbyBgY2hpbGRNYXRjaGAgaXMgZmFsc2UpLlxuICpcbiAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGN1cnJlbnQgbm9kZSBvciBhbnkgZGVzY2VuZGFudCBtYXRjaGVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyVHJlZU5vZGU8VCA9IGFueT4obm9kZTogT25lUm93Tm9kZTxUPiwgZmlsdGVyczogT25lRmlsdGVyTW9kZWxbXSB8IG51bGwsIHF1aWNrOiBzdHJpbmcsIGZpZWxkcz86IHJlYWRvbmx5IHN0cmluZ1tdKTogYm9vbGVhbiB7XG5cbiAgY29uc3QgZmlsdGVyaW5nID0gaXNGaWx0ZXJBY3RpdmUoZmlsdGVycywgcXVpY2spO1xuXG4gIC8vIENoZWNrIHdoZXRoZXIgdGhlIGN1cnJlbnQgbm9kZSBtYXRjaGVzIGFsbCBhY3RpdmUgZmlsdGVycy5cbiAgY29uc3Qgc2VsZk1hdGNoID0gbWF0Y2hlc0FkdmFuY2VkRmlsdGVycyhub2RlLCBmaWx0ZXJzKSAmJiBtYXRjaGVzUXVpY2tGaWx0ZXIobm9kZSwgcXVpY2ssIGZpZWxkcyk7XG5cbiAgLy8gUmVjdXJzaXZlbHkgZGV0ZXJtaW5lIHdoZXRoZXIgYW55IGNoaWxkIG1hdGNoZXMuXG4gIGNvbnN0IGNoaWxkTWF0Y2ggPSBub2RlLmNoaWxkcmVuPy5zb21lKGNoaWxkID0+IGZpbHRlclRyZWVOb2RlKGNoaWxkLCBmaWx0ZXJzLCBxdWljaywgZmllbGRzKSkgPz8gZmFsc2U7XG5cbiAgLy8gS2VlcCB0aGUgbm9kZSB2aXNpYmxlIHdoZW4gaXQgb3IgYW55IGRlc2NlbmRhbnQgbWF0Y2hlcy5cbiAgbm9kZS52aXNpYmxlID0gc2VsZk1hdGNoIHx8IGNoaWxkTWF0Y2g7XG5cbiAgaWYgKGZpbHRlcmluZykge1xuXG4gICAgLy8gRXhwYW5kIHBhcmVudHMgdG8gcmV2ZWFsIG1hdGNoaW5nIGRlc2NlbmRhbnRzLlxuICAgIG5vZGUuZXhwYW5kZWQgPSBjaGlsZE1hdGNoO1xuICB9XG5cbiAgcmV0dXJuIG5vZGUudmlzaWJsZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIGFueXRoaW5nIGlzIGFjdHVhbGx5IGZpbHRlcmluZyByaWdodCBub3cuIEEgbW9kZWwgZW50cnkgd2l0aCBub1xuICogY29uZGl0aW9ucyBtYXRjaGVzIGV2ZXJ5dGhpbmcsIHNvIGl0IGRvZXMgbm90IGNvdW50IGFzIGFjdGl2ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRmlsdGVyQWN0aXZlKGZpbHRlcnM6IE9uZUZpbHRlck1vZGVsW10gfCBudWxsLCBxdWljazogc3RyaW5nKTogYm9vbGVhbiB7XG5cbiAgaWYgKHF1aWNrKSByZXR1cm4gdHJ1ZTtcblxuICByZXR1cm4gISFmaWx0ZXJzPy5zb21lKGZpbHRlciA9PiBmaWx0ZXI/LmNvbmRpdGlvbnM/Lmxlbmd0aCA+IDApO1xufVxuXG4vKipcbiAqIEFwcGx5IGFkdmFuY2VkIHBlci1jb2x1bW4gZmlsdGVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbWF0Y2hlc0FkdmFuY2VkRmlsdGVyczxUID0gYW55Pihub2RlOiBPbmVSb3dOb2RlPFQ+LCBmaWx0ZXJzOiBPbmVGaWx0ZXJNb2RlbFtdIHwgbnVsbCk6IGJvb2xlYW4ge1xuXG4gIGlmICghZmlsdGVycyB8fCBmaWx0ZXJzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIHRydWU7XG5cbiAgcmV0dXJuIGZpbHRlcnMuZXZlcnkoZmlsdGVyID0+IHtcblxuICAgIGNvbnN0IHZhbCA9IChub2RlLmRhdGFbZmlsdGVyLmZpZWxkIGFzIGtleW9mIFRdID8/ICcnKS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBjb25zdCByZXN1bHRzID0gZmlsdGVyLmNvbmRpdGlvbnMubWFwKGNvbmRpdGlvbiA9PiB7XG5cbiAgICAgIGNvbnN0IGNtcCA9IChjb25kaXRpb24udmFsdWUgPz8gJycpLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcblxuICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0b3IpIHtcblxuICAgICAgICBjYXNlICdlcXVhbHMnOiByZXR1cm4gdmFsID09PSBjbXA7XG5cbiAgICAgICAgY2FzZSAnY29udGFpbnMnOiByZXR1cm4gdmFsLmluY2x1ZGVzKGNtcCk7XG5cbiAgICAgICAgY2FzZSAnc3RhcnRzV2l0aCc6IHJldHVybiB2YWwuc3RhcnRzV2l0aChjbXApO1xuXG4gICAgICAgIGNhc2UgJ2VuZHNXaXRoJzogcmV0dXJuIHZhbC5lbmRzV2l0aChjbXApO1xuXG4gICAgICAgIGNhc2UgJ2dyZWF0ZXJUaGFuJzogcmV0dXJuIGNvbXBhcmUodmFsLCBjbXApID4gMDtcblxuICAgICAgICBjYXNlICdsZXNzVGhhbic6IHJldHVybiBjb21wYXJlKHZhbCwgY21wKSA8IDA7XG5cbiAgICAgICAgZGVmYXVsdDogcmV0dXJuIHRydWU7IC8vIFVua25vd24gb3BlcmF0b3IgPSBpZ25vcmVcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBmaWx0ZXIubG9naWNPcGVyYXRvciA9PT0gJ0FORCcgPyByZXN1bHRzLmV2ZXJ5KEJvb2xlYW4pIDogcmVzdWx0cy5zb21lKEJvb2xlYW4pO1xuICB9KTtcbn1cblxuLyoqXG4gKiBPcmRlciB0d28gYWxyZWFkeS1sb3dlcmNhc2VkIGNlbGwgdmFsdWVzLlxuICpcbiAqIE51bWVyaWMgd2hlbiBib3RoIHNpZGVzIHBhcnNlIGFzIG51bWJlcnMsIGxleGljb2dyYXBoaWMgb3RoZXJ3aXNlLiBUaGlzIHVzZWRcbiAqIHRvIGJlIGArdmFsID4gK2NtcGAgdW5jb25kaXRpb25hbGx5LCBzbyBhbnl0aGluZyBub24tbnVtZXJpYyBjb21wYXJlZCBOYU5cbiAqIGFnYWluc3QgTmFOIOKAlCBhbHdheXMgZmFsc2UuIEEgZGF0ZSBjb2x1bW4gZmlsdGVyZWQgd2l0aCBgZ3JlYXRlclRoYW5gIG1hdGNoZWRcbiAqIG5vdGhpbmcgYXQgYWxsIHJhdGhlciB0aGFuIHJlcG9ydGluZyBhIHByb2JsZW0sIGFuZCBJU08gZGF0ZXMgaGFwcGVuIHRvIHNvcnRcbiAqIGNvcnJlY3RseSBhcyBzdHJpbmdzLCB3aGljaCBpcyB3aGF0IHRoZSBmYWxsYmFjayBnaXZlcyB0aGVtLlxuICovXG5mdW5jdGlvbiBjb21wYXJlKHZhbDogc3RyaW5nLCBjbXA6IHN0cmluZyk6IG51bWJlciB7XG5cbiAgY29uc3QgbGVmdCA9IE51bWJlcih2YWwpO1xuICBjb25zdCByaWdodCA9IE51bWJlcihjbXApO1xuXG4gIGNvbnN0IG51bWVyaWMgPSB2YWwgIT09ICcnICYmIGNtcCAhPT0gJycgJiYgIU51bWJlci5pc05hTihsZWZ0KSAmJiAhTnVtYmVyLmlzTmFOKHJpZ2h0KTtcblxuICBpZiAobnVtZXJpYykgcmV0dXJuIGxlZnQgPT09IHJpZ2h0ID8gMCA6IGxlZnQgPCByaWdodCA/IC0xIDogMTtcblxuICByZXR1cm4gdmFsID09PSBjbXAgPyAwIDogdmFsIDwgY21wID8gLTEgOiAxO1xufVxuXG4vKipcbiAqIEFwcGx5IHRoZSBxdWljayBmaWx0ZXIgdG8gb25lIHJvdy5cbiAqXG4gKiBTZWFyY2hlcyB0aGUgZmllbGRzIHRoZSBncmlkIGFjdHVhbGx5IHNob3dzLCB3aGVuIGl0IGlzIHRvbGQgd2hhdCB0aGV5IGFyZS5cbiAqIEl0IHVzZWQgdG8gd2FsayBgT2JqZWN0LnZhbHVlcyhub2RlLmRhdGEpYCwgd2hpY2ggaGFkIHRocmVlIGNvbnNlcXVlbmNlcywgYWxsXG4gKiBvZiB0aGVtIHdyb25nOlxuICpcbiAqIC0gYSBwcm9wZXJ0eSB3aXRoIG5vIGNvbHVtbiB3YXMgc2VhcmNoYWJsZSwgc28gYSB1c2VyIGNvdWxkIG1hdGNoIHJvd3Mgb25cbiAqICAgZGF0YSB0aGUgZ3JpZCBuZXZlciBkaXNwbGF5ZWQ7XG4gKiAtIGEgbmVzdGVkIG9iamVjdCBzdHJpbmdpZmllZCB0byBgW29iamVjdCBPYmplY3RdYCwgc28gdHlwaW5nIGBvYmplY3RgXG4gKiAgIG1hdGNoZWQgZXZlcnkgcm93IGhvbGRpbmcgb25lO1xuICogLSBpbiBhIHRyZWUsIGBjaGlsZHJlbmAgZGlkIHRoZSBzYW1lLCBzbyBtb3N0IHBhcmVudHMgbWF0Y2hlZCBtb3N0IHF1ZXJpZXMuXG4gKlxuICogTm9uLXByaW1pdGl2ZSB2YWx1ZXMgYXJlIHNraXBwZWQgcmVnYXJkbGVzcywgc28gdGhlIGBbb2JqZWN0IE9iamVjdF1gIGhheXN0YWNrXG4gKiBjYW5ub3QgY29tZSBiYWNrIHRocm91Z2ggYSBkZWNsYXJlZCBjb2x1bW4gZWl0aGVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWF0Y2hlc1F1aWNrRmlsdGVyPFQgPSBhbnk+KG5vZGU6IE9uZVJvd05vZGU8VD4sIHF1aWNrOiBzdHJpbmcsIGZpZWxkcz86IHJlYWRvbmx5IHN0cmluZ1tdKTogYm9vbGVhbiB7XG5cbiAgaWYgKCFxdWljaykgcmV0dXJuIHRydWU7XG5cbiAgY29uc3QgZGF0YSA9IG5vZGUuZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICBjb25zdCB2YWx1ZXMgPSBmaWVsZHM/Lmxlbmd0aCA/IGZpZWxkcy5tYXAoZmllbGQgPT4gZGF0YT8uW2ZpZWxkXSkgOiBPYmplY3QudmFsdWVzKGRhdGEgPz8ge30pO1xuXG4gIHJldHVybiB2YWx1ZXMuc29tZSh2YWx1ZSA9PiB7XG5cbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgLy8gT2JqZWN0cywgYXJyYXlzIGFuZCBmdW5jdGlvbnMgaGF2ZSBubyB1c2VmdWwgdGV4dCBmb3JtLiBTa2lwcGluZyB0aGVtIGlzXG4gICAgLy8gd2hhdCBrZWVwcyBgW29iamVjdCBPYmplY3RdYCBvdXQgb2YgdGhlIHNlYXJjaC5cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyB8fCB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHJldHVybiBmYWxzZTtcblxuICAgIHJldHVybiB2YWx1ZS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMocXVpY2spO1xuICB9KTtcbn1cbiJdfQ==
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWZpbHRlci5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2hlbHBlcnMvb25lLWZpbHRlci5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBVSxJQUFtQixFQUFFLE9BQWdDLEVBQUUsS0FBYSxFQUFFLE1BQTBCO0lBRXRJLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFakQsNkRBQTZEO0lBQzdELE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRW5HLG1EQUFtRDtJQUNuRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUV4RywyREFBMkQ7SUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLElBQUksVUFBVSxDQUFDO0lBRXZDLElBQUksU0FBUyxFQUFFLENBQUM7UUFFZCxpREFBaUQ7UUFDakQsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztBQUN0QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxPQUFnQyxFQUFFLEtBQWE7SUFFNUUsSUFBSSxLQUFLO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFdkIsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFN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QUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRS9GLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUV6QixJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUV4RCwyRUFBMkU7UUFDM0Usa0RBQWtEO1FBQ2xELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFVBQVU7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUUzRSxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT25lUm93Tm9kZSB9IGZyb20gXCIuLi9jb3JlL2luc3RhbnRzL29uZS1yb3ctbm9kZS5jbGFzc1wiO1xuaW1wb3J0IHsgT25lRmlsdGVyTW9kZWwgfSBmcm9tIFwiLi4vY29yZS9tb2RlbHMvb25lLWZpbHRlci5tb2RlbFwiO1xuXG4vKipcbiAqIFJlY3Vyc2l2ZWx5IGZpbHRlcnMgYSB0cmVlIGFuZCB1cGRhdGVzIGVhY2ggbm9kZSdzIFVJIHN0YXRlLlxuICpcbiAqIFJ1bGVzOlxuICogLSBBIG5vZGUgaXMgdmlzaWJsZSBpZiBpdCBtYXRjaGVzIHRoZSBmaWx0ZXJzIG9yIGhhcyBhIG1hdGNoaW5nIGRlc2NlbmRhbnQuXG4gKiAtIFdoaWxlIGEgZmlsdGVyIGlzIGFjdGl2ZSwgYSBub2RlIGlzIGV4cGFuZGVkIGlmZiBpdCBoYXMgYSBtYXRjaGluZ1xuICogICBkZXNjZW5kYW50LCBzbyB0aGUgaGl0IGlzIHJldmVhbGVkLlxuICpcbiAqIE92ZXJ3cml0aW5nIGBleHBhbmRlZGAgaXMgb25seSBjb3JyZWN0ICp3aGlsZSBmaWx0ZXJpbmcqLiBUaGlzIHJ1bnMgZnJvbVxuICogYGFwcGx5RmlsdGVyc2AsIHdoaWNoIGV2ZXJ5IGBzZXRSb3dEYXRhYCAvIGB1cGRhdGVSb3dEYXRhYCBjYWxscywgc28gZG9pbmcgaXRcbiAqIHVuY29uZGl0aW9uYWxseSBmb3JjZS1leHBhbmRlZCBldmVyeSBwYXJlbnQgb24gZWFjaCBkYXRhIHVwZGF0ZTogaXQgbWFkZVxuICogYGdyb3VwRGVmYXVsdEV4cGFuZGVkYCBpbmVydCBmb3IgdHJlZSBkYXRhIGFuZCBjb2xsYXBzZWQgZXhwYW5kZWRcbiAqIG1hc3Rlci1kZXRhaWwgcm93cyAodGhleSBoYXZlIG5vIGNoaWxkcmVuLCBzbyBgY2hpbGRNYXRjaGAgaXMgZmFsc2UpLlxuICpcbiAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGN1cnJlbnQgbm9kZSBvciBhbnkgZGVzY2VuZGFudCBtYXRjaGVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyVHJlZU5vZGU8VCA9IGFueT4obm9kZTogT25lUm93Tm9kZTxUPiwgZmlsdGVyczogT25lRmlsdGVyTW9kZWxbXSB8IG51bGwsIHF1aWNrOiBzdHJpbmcsIGZpZWxkcz86IHJlYWRvbmx5IHN0cmluZ1tdKTogYm9vbGVhbiB7XG5cbiAgY29uc3QgZmlsdGVyaW5nID0gaXNGaWx0ZXJBY3RpdmUoZmlsdGVycywgcXVpY2spO1xuXG4gIC8vIENoZWNrIHdoZXRoZXIgdGhlIGN1cnJlbnQgbm9kZSBtYXRjaGVzIGFsbCBhY3RpdmUgZmlsdGVycy5cbiAgY29uc3Qgc2VsZk1hdGNoID0gbWF0Y2hlc0FkdmFuY2VkRmlsdGVycyhub2RlLCBmaWx0ZXJzKSAmJiBtYXRjaGVzUXVpY2tGaWx0ZXIobm9kZSwgcXVpY2ssIGZpZWxkcyk7XG5cbiAgLy8gUmVjdXJzaXZlbHkgZGV0ZXJtaW5lIHdoZXRoZXIgYW55IGNoaWxkIG1hdGNoZXMuXG4gIGNvbnN0IGNoaWxkTWF0Y2ggPSBub2RlLmNoaWxkcmVuPy5zb21lKGNoaWxkID0+IGZpbHRlclRyZWVOb2RlKGNoaWxkLCBmaWx0ZXJzLCBxdWljaywgZmllbGRzKSkgPz8gZmFsc2U7XG5cbiAgLy8gS2VlcCB0aGUgbm9kZSB2aXNpYmxlIHdoZW4gaXQgb3IgYW55IGRlc2NlbmRhbnQgbWF0Y2hlcy5cbiAgbm9kZS52aXNpYmxlID0gc2VsZk1hdGNoIHx8IGNoaWxkTWF0Y2g7XG5cbiAgaWYgKGZpbHRlcmluZykge1xuXG4gICAgLy8gRXhwYW5kIHBhcmVudHMgdG8gcmV2ZWFsIG1hdGNoaW5nIGRlc2NlbmRhbnRzLlxuICAgIG5vZGUuZXhwYW5kZWQgPSBjaGlsZE1hdGNoO1xuICB9XG5cbiAgcmV0dXJuIG5vZGUudmlzaWJsZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIGFueXRoaW5nIGlzIGFjdHVhbGx5IGZpbHRlcmluZyByaWdodCBub3cuIEEgbW9kZWwgZW50cnkgd2l0aCBub1xuICogY29uZGl0aW9ucyBtYXRjaGVzIGV2ZXJ5dGhpbmcsIHNvIGl0IGRvZXMgbm90IGNvdW50IGFzIGFjdGl2ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRmlsdGVyQWN0aXZlKGZpbHRlcnM6IE9uZUZpbHRlck1vZGVsW10gfCBudWxsLCBxdWljazogc3RyaW5nKTogYm9vbGVhbiB7XG5cbiAgaWYgKHF1aWNrKSByZXR1cm4gdHJ1ZTtcblxuICByZXR1cm4gISFmaWx0ZXJzPy5zb21lKGZpbHRlciA9PiBmaWx0ZXI/LmNvbmRpdGlvbnM/Lmxlbmd0aCA+IDApO1xufVxuXG4vKipcbiAqIEFwcGx5IGFkdmFuY2VkIHBlci1jb2x1bW4gZmlsdGVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbWF0Y2hlc0FkdmFuY2VkRmlsdGVyczxUID0gYW55Pihub2RlOiBPbmVSb3dOb2RlPFQ+LCBmaWx0ZXJzOiBPbmVGaWx0ZXJNb2RlbFtdIHwgbnVsbCk6IGJvb2xlYW4ge1xuXG4gIGlmICghZmlsdGVycyB8fCBmaWx0ZXJzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIHRydWU7XG5cbiAgcmV0dXJuIGZpbHRlcnMuZXZlcnkoZmlsdGVyID0+IHtcblxuICAgIGNvbnN0IHZhbCA9IChub2RlLmRhdGFbZmlsdGVyLmZpZWxkIGFzIGtleW9mIFRdID8/ICcnKS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBjb25zdCByZXN1bHRzID0gZmlsdGVyLmNvbmRpdGlvbnMubWFwKGNvbmRpdGlvbiA9PiB7XG5cbiAgICAgIGNvbnN0IGNtcCA9IChjb25kaXRpb24udmFsdWUgPz8gJycpLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgIGNvbnN0IGNtcFRvID0gKGNvbmRpdGlvbi52YWx1ZVRvID8/ICcnKS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7XG5cbiAgICAgIHN3aXRjaCAoY29uZGl0aW9uLm9wZXJhdG9yKSB7XG5cbiAgICAgICAgY2FzZSAnZXF1YWxzJzogcmV0dXJuIHZhbCA9PT0gY21wO1xuXG4gICAgICAgIGNhc2UgJ25vdEVxdWFsJzogcmV0dXJuIHZhbCAhPT0gY21wO1xuXG4gICAgICAgIGNhc2UgJ2NvbnRhaW5zJzogcmV0dXJuIHZhbC5pbmNsdWRlcyhjbXApO1xuXG4gICAgICAgIGNhc2UgJ25vdENvbnRhaW5zJzogcmV0dXJuICF2YWwuaW5jbHVkZXMoY21wKTtcblxuICAgICAgICBjYXNlICdzdGFydHNXaXRoJzogcmV0dXJuIHZhbC5zdGFydHNXaXRoKGNtcCk7XG5cbiAgICAgICAgY2FzZSAnZW5kc1dpdGgnOiByZXR1cm4gdmFsLmVuZHNXaXRoKGNtcCk7XG5cbiAgICAgICAgY2FzZSAnZ3JlYXRlclRoYW4nOiByZXR1cm4gY29tcGFyZSh2YWwsIGNtcCkgPiAwO1xuXG4gICAgICAgIGNhc2UgJ2dyZWF0ZXJUaGFuT3JFcXVhbCc6IHJldHVybiBjb21wYXJlKHZhbCwgY21wKSA+PSAwO1xuXG4gICAgICAgIGNhc2UgJ2xlc3NUaGFuJzogcmV0dXJuIGNvbXBhcmUodmFsLCBjbXApIDwgMDtcblxuICAgICAgICBjYXNlICdsZXNzVGhhbk9yRXF1YWwnOiByZXR1cm4gY29tcGFyZSh2YWwsIGNtcCkgPD0gMDtcblxuICAgICAgICBjYXNlICdpblJhbmdlJzogcmV0dXJuIGNvbXBhcmUodmFsLCBjbXApID49IDAgJiYgY29tcGFyZSh2YWwsIGNtcFRvKSA8PSAwO1xuXG4gICAgICAgIC8vIGB2YWxgIGhhcyBhbHJlYWR5IGJlZW4gdGhyb3VnaCBgPz8gJydgLCBzbyBudWxsIGFuZCB1bmRlZmluZWQgbGFuZFxuICAgICAgICAvLyBoZXJlIGFzIHRoZSBlbXB0eSBzdHJpbmcuIDAgc3RyaW5naWZpZXMgdG8gJzAnIGFuZCBkb2VzIG5vdC5cbiAgICAgICAgY2FzZSAnYmxhbmsnOiByZXR1cm4gdmFsID09PSAnJztcblxuICAgICAgICBjYXNlICdub3RCbGFuayc6IHJldHVybiB2YWwgIT09ICcnO1xuXG4gICAgICAgIGRlZmF1bHQ6IHJldHVybiB0cnVlOyAvLyBVbmtub3duIG9wZXJhdG9yID0gaWdub3JlXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZmlsdGVyLmxvZ2ljT3BlcmF0b3IgPT09ICdBTkQnID8gcmVzdWx0cy5ldmVyeShCb29sZWFuKSA6IHJlc3VsdHMuc29tZShCb29sZWFuKTtcbiAgfSk7XG59XG5cbi8qKlxuICogT3JkZXIgdHdvIGFscmVhZHktbG93ZXJjYXNlZCBjZWxsIHZhbHVlcy5cbiAqXG4gKiBOdW1lcmljIHdoZW4gYm90aCBzaWRlcyBwYXJzZSBhcyBudW1iZXJzLCBsZXhpY29ncmFwaGljIG90aGVyd2lzZS4gVGhpcyB1c2VkXG4gKiB0byBiZSBgK3ZhbCA+ICtjbXBgIHVuY29uZGl0aW9uYWxseSwgc28gYW55dGhpbmcgbm9uLW51bWVyaWMgY29tcGFyZWQgTmFOXG4gKiBhZ2FpbnN0IE5hTiDigJQgYWx3YXlzIGZhbHNlLiBBIGRhdGUgY29sdW1uIGZpbHRlcmVkIHdpdGggYGdyZWF0ZXJUaGFuYCBtYXRjaGVkXG4gKiBub3RoaW5nIGF0IGFsbCByYXRoZXIgdGhhbiByZXBvcnRpbmcgYSBwcm9ibGVtLCBhbmQgSVNPIGRhdGVzIGhhcHBlbiB0byBzb3J0XG4gKiBjb3JyZWN0bHkgYXMgc3RyaW5ncywgd2hpY2ggaXMgd2hhdCB0aGUgZmFsbGJhY2sgZ2l2ZXMgdGhlbS5cbiAqL1xuZnVuY3Rpb24gY29tcGFyZSh2YWw6IHN0cmluZywgY21wOiBzdHJpbmcpOiBudW1iZXIge1xuXG4gIGNvbnN0IGxlZnQgPSBOdW1iZXIodmFsKTtcbiAgY29uc3QgcmlnaHQgPSBOdW1iZXIoY21wKTtcblxuICBjb25zdCBudW1lcmljID0gdmFsICE9PSAnJyAmJiBjbXAgIT09ICcnICYmICFOdW1iZXIuaXNOYU4obGVmdCkgJiYgIU51bWJlci5pc05hTihyaWdodCk7XG5cbiAgaWYgKG51bWVyaWMpIHJldHVybiBsZWZ0ID09PSByaWdodCA/IDAgOiBsZWZ0IDwgcmlnaHQgPyAtMSA6IDE7XG5cbiAgcmV0dXJuIHZhbCA9PT0gY21wID8gMCA6IHZhbCA8IGNtcCA/IC0xIDogMTtcbn1cblxuLyoqXG4gKiBBcHBseSB0aGUgcXVpY2sgZmlsdGVyIHRvIG9uZSByb3cuXG4gKlxuICogU2VhcmNoZXMgdGhlIGZpZWxkcyB0aGUgZ3JpZCBhY3R1YWxseSBzaG93cywgd2hlbiBpdCBpcyB0b2xkIHdoYXQgdGhleSBhcmUuXG4gKiBJdCB1c2VkIHRvIHdhbGsgYE9iamVjdC52YWx1ZXMobm9kZS5kYXRhKWAsIHdoaWNoIGhhZCB0aHJlZSBjb25zZXF1ZW5jZXMsIGFsbFxuICogb2YgdGhlbSB3cm9uZzpcbiAqXG4gKiAtIGEgcHJvcGVydHkgd2l0aCBubyBjb2x1bW4gd2FzIHNlYXJjaGFibGUsIHNvIGEgdXNlciBjb3VsZCBtYXRjaCByb3dzIG9uXG4gKiAgIGRhdGEgdGhlIGdyaWQgbmV2ZXIgZGlzcGxheWVkO1xuICogLSBhIG5lc3RlZCBvYmplY3Qgc3RyaW5naWZpZWQgdG8gYFtvYmplY3QgT2JqZWN0XWAsIHNvIHR5cGluZyBgb2JqZWN0YFxuICogICBtYXRjaGVkIGV2ZXJ5IHJvdyBob2xkaW5nIG9uZTtcbiAqIC0gaW4gYSB0cmVlLCBgY2hpbGRyZW5gIGRpZCB0aGUgc2FtZSwgc28gbW9zdCBwYXJlbnRzIG1hdGNoZWQgbW9zdCBxdWVyaWVzLlxuICpcbiAqIE5vbi1wcmltaXRpdmUgdmFsdWVzIGFyZSBza2lwcGVkIHJlZ2FyZGxlc3MsIHNvIHRoZSBgW29iamVjdCBPYmplY3RdYCBoYXlzdGFja1xuICogY2Fubm90IGNvbWUgYmFjayB0aHJvdWdoIGEgZGVjbGFyZWQgY29sdW1uIGVpdGhlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hdGNoZXNRdWlja0ZpbHRlcjxUID0gYW55Pihub2RlOiBPbmVSb3dOb2RlPFQ+LCBxdWljazogc3RyaW5nLCBmaWVsZHM/OiByZWFkb25seSBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuXG4gIGlmICghcXVpY2spIHJldHVybiB0cnVlO1xuXG4gIGNvbnN0IGRhdGEgPSBub2RlLmRhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbiAgY29uc3QgdmFsdWVzID0gZmllbGRzPy5sZW5ndGggPyBmaWVsZHMubWFwKGZpZWxkID0+IGRhdGE/LltmaWVsZF0pIDogT2JqZWN0LnZhbHVlcyhkYXRhID8/IHt9KTtcblxuICByZXR1cm4gdmFsdWVzLnNvbWUodmFsdWUgPT4ge1xuXG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHJldHVybiBmYWxzZTtcblxuICAgIC8vIE9iamVjdHMsIGFycmF5cyBhbmQgZnVuY3Rpb25zIGhhdmUgbm8gdXNlZnVsIHRleHQgZm9ybS4gU2tpcHBpbmcgdGhlbSBpc1xuICAgIC8vIHdoYXQga2VlcHMgYFtvYmplY3QgT2JqZWN0XWAgb3V0IG9mIHRoZSBzZWFyY2guXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgfHwgdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSByZXR1cm4gZmFsc2U7XG5cbiAgICByZXR1cm4gdmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHF1aWNrKTtcbiAgfSk7XG59XG4iXX0=
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/** Marks a synthetic group row, so anything can tell it from real data. */
|
|
2
|
+
export const ONE_GROUP_FLAG = '__oneGroup';
|
|
3
|
+
/** Stable id for a group row: its value path. Survives every rebuild. */
|
|
4
|
+
export const ONE_GROUP_ID_FIELD = '__oneGroupId';
|
|
5
|
+
/** The label the auto group column shows for a group row. */
|
|
6
|
+
export const ONE_GROUP_VALUE_FIELD = '__oneGroupValue';
|
|
7
|
+
/** Where a group row keeps its children, for the tree pipeline to recurse. */
|
|
8
|
+
export const ONE_GROUP_CHILDREN_FIELD = '__oneGroupChildren';
|
|
9
|
+
/** What a group of rows with no value in the grouped field is labelled. */
|
|
10
|
+
export const ONE_GROUP_BLANK_LABEL = '(Blank)';
|
|
11
|
+
/** The `rowGroup` fields of a column set, in definition order. */
|
|
12
|
+
export function rowGroupFields(columns) {
|
|
13
|
+
return (columns ?? [])
|
|
14
|
+
.filter(column => column.rowGroup && column.field)
|
|
15
|
+
.map(column => column.field);
|
|
16
|
+
}
|
|
17
|
+
/** The `aggFunc` columns of a column set. */
|
|
18
|
+
export function aggColumns(columns) {
|
|
19
|
+
return (columns ?? [])
|
|
20
|
+
.filter(column => column.aggFunc && column.field)
|
|
21
|
+
.map(column => ({ field: column.field, aggFunc: column.aggFunc }));
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Fold flat rows into a tree of synthetic group rows, one level per group
|
|
25
|
+
* field, in first-appearance order. Each group row carries:
|
|
26
|
+
*
|
|
27
|
+
* - the marker, id and label fields above;
|
|
28
|
+
* - its own grouped field's value, so sorting and filtering read it naturally;
|
|
29
|
+
* - one aggregated value per `aggFunc` column, computed over the group's
|
|
30
|
+
* leaves (not its child groups), stored under the column's own field so the
|
|
31
|
+
* ordinary cell pipeline renders it.
|
|
32
|
+
*
|
|
33
|
+
* Pure: the input rows are referenced, never mutated.
|
|
34
|
+
*/
|
|
35
|
+
export function buildGroupedRows(rows, groupFields, aggregations = []) {
|
|
36
|
+
if (!groupFields?.length)
|
|
37
|
+
return [...(rows ?? [])];
|
|
38
|
+
return groupLevel(rows ?? [], groupFields, 0, aggregations, 'og-group');
|
|
39
|
+
}
|
|
40
|
+
function groupLevel(rows, groupFields, level, aggregations, idPrefix) {
|
|
41
|
+
const field = groupFields[level];
|
|
42
|
+
// Insertion-ordered buckets, keyed by the value's string form. The raw
|
|
43
|
+
// value is kept as well, so the group row exposes the real value under the
|
|
44
|
+
// grouped field, not its stringification.
|
|
45
|
+
const buckets = new Map();
|
|
46
|
+
for (const row of rows) {
|
|
47
|
+
const value = row?.[field];
|
|
48
|
+
const key = value === null || value === undefined || value === '' ? ONE_GROUP_BLANK_LABEL : String(value);
|
|
49
|
+
const bucket = buckets.get(key);
|
|
50
|
+
if (bucket) {
|
|
51
|
+
bucket.rows.push(row);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
buckets.set(key, { value, rows: [row] });
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return [...buckets.entries()].map(([key, bucket]) => {
|
|
58
|
+
const id = `${idPrefix}:${key}`;
|
|
59
|
+
const children = level + 1 < groupFields.length
|
|
60
|
+
? groupLevel(bucket.rows, groupFields, level + 1, aggregations, id)
|
|
61
|
+
: bucket.rows;
|
|
62
|
+
const groupRow = {
|
|
63
|
+
[ONE_GROUP_FLAG]: true,
|
|
64
|
+
[ONE_GROUP_ID_FIELD]: id,
|
|
65
|
+
[ONE_GROUP_VALUE_FIELD]: key,
|
|
66
|
+
[field]: bucket.value,
|
|
67
|
+
[ONE_GROUP_CHILDREN_FIELD]: children,
|
|
68
|
+
};
|
|
69
|
+
// Aggregates always read the original leaves, so a two-level group's
|
|
70
|
+
// parent is not averaging averages.
|
|
71
|
+
for (const aggregation of aggregations) {
|
|
72
|
+
groupRow[aggregation.field] = aggregate(bucket.rows, aggregation.field, aggregation.aggFunc);
|
|
73
|
+
}
|
|
74
|
+
return groupRow;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
/** Apply one aggregation over a set of leaf rows. */
|
|
78
|
+
export function aggregate(rows, field, aggFunc) {
|
|
79
|
+
const values = rows
|
|
80
|
+
.map(row => row?.[field])
|
|
81
|
+
.filter(value => value !== null && value !== undefined);
|
|
82
|
+
if (typeof aggFunc === 'function') {
|
|
83
|
+
return aggFunc({ values, rows: rows, field });
|
|
84
|
+
}
|
|
85
|
+
switch (aggFunc) {
|
|
86
|
+
case 'count': return values.length;
|
|
87
|
+
case 'first': return values.length ? values[0] : null;
|
|
88
|
+
case 'last': return values.length ? values[values.length - 1] : null;
|
|
89
|
+
}
|
|
90
|
+
// The numeric aggregates ignore what does not parse, so one stray string in
|
|
91
|
+
// a column does not turn the whole group's total into NaN.
|
|
92
|
+
const numbers = values.map(Number).filter(Number.isFinite);
|
|
93
|
+
if (!numbers.length)
|
|
94
|
+
return null;
|
|
95
|
+
switch (aggFunc) {
|
|
96
|
+
case 'sum': return numbers.reduce((total, value) => total + value, 0);
|
|
97
|
+
case 'min': return Math.min(...numbers);
|
|
98
|
+
case 'max': return Math.max(...numbers);
|
|
99
|
+
case 'avg': return numbers.reduce((total, value) => total + value, 0) / numbers.length;
|
|
100
|
+
default: return null;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXJvdy1ncm91cGluZy5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2hlbHBlcnMvb25lLXJvdy1ncm91cGluZy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsMkVBQTJFO0FBQzNFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUM7QUFFM0MseUVBQXlFO0FBQ3pFLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLGNBQWMsQ0FBQztBQUVqRCw2REFBNkQ7QUFDN0QsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsaUJBQWlCLENBQUM7QUFFdkQsOEVBQThFO0FBQzlFLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLG9CQUFvQixDQUFDO0FBRTdELDJFQUEyRTtBQUMzRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxTQUFTLENBQUM7QUFRL0Msa0VBQWtFO0FBQ2xFLE1BQU0sVUFBVSxjQUFjLENBQUksT0FBbUM7SUFFbkUsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7U0FDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQ2pELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFlLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQsNkNBQTZDO0FBQzdDLE1BQU0sVUFBVSxVQUFVLENBQUksT0FBbUM7SUFFL0QsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7U0FDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQ2hELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUs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QUFDO1FBRWhCLEtBQUssS0FBSyxDQUFDLENBQUMsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUV0RSxLQUFLLEtBQUssQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBRXhDLEtBQUssS0FBSyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFFeEMsS0FBSyxLQUFLLENBQUMsQ0FBQyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFFdkYsT0FBTyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUM7SUFDdkIsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbmVBZ2dGdW5jLCBPbmVBZ2dGdW5jUGFyYW1zLCBPbmVDb2x1bW5EZWYgfSBmcm9tIFwiLi4vY29yZS9tb2RlbHMvb25lLWNvbHVtbi1kZWYtdHlwZXMubW9kZWxcIjtcblxuLyoqIE1hcmtzIGEgc3ludGhldGljIGdyb3VwIHJvdywgc28gYW55dGhpbmcgY2FuIHRlbGwgaXQgZnJvbSByZWFsIGRhdGEuICovXG5leHBvcnQgY29uc3QgT05FX0dST1VQX0ZMQUcgPSAnX19vbmVHcm91cCc7XG5cbi8qKiBTdGFibGUgaWQgZm9yIGEgZ3JvdXAgcm93OiBpdHMgdmFsdWUgcGF0aC4gU3Vydml2ZXMgZXZlcnkgcmVidWlsZC4gKi9cbmV4cG9ydCBjb25zdCBPTkVfR1JPVVBfSURfRklFTEQgPSAnX19vbmVHcm91cElkJztcblxuLyoqIFRoZSBsYWJlbCB0aGUgYXV0byBncm91cCBjb2x1bW4gc2hvd3MgZm9yIGEgZ3JvdXAgcm93LiAqL1xuZXhwb3J0IGNvbnN0IE9ORV9HUk9VUF9WQUxVRV9GSUVMRCA9ICdfX29uZUdyb3VwVmFsdWUnO1xuXG4vKiogV2hlcmUgYSBncm91cCByb3cga2VlcHMgaXRzIGNoaWxkcmVuLCBmb3IgdGhlIHRyZWUgcGlwZWxpbmUgdG8gcmVjdXJzZS4gKi9cbmV4cG9ydCBjb25zdCBPTkVfR1JPVVBfQ0hJTERSRU5fRklFTEQgPSAnX19vbmVHcm91cENoaWxkcmVuJztcblxuLyoqIFdoYXQgYSBncm91cCBvZiByb3dzIHdpdGggbm8gdmFsdWUgaW4gdGhlIGdyb3VwZWQgZmllbGQgaXMgbGFiZWxsZWQuICovXG5leHBvcnQgY29uc3QgT05FX0dST1VQX0JMQU5LX0xBQkVMID0gJyhCbGFuayknO1xuXG4vKiogT25lIGNvbHVtbidzIGFnZ3JlZ2F0aW9uLCBjYXB0dXJlZCBmcm9tIHRoZSBjb2x1bW4gZGVmaW5pdGlvbnMuICovXG5leHBvcnQgaW50ZXJmYWNlIE9uZUFnZ0NvbHVtbjxUID0gYW55PiB7XG4gIGZpZWxkOiBzdHJpbmc7XG4gIGFnZ0Z1bmM6IE9uZUFnZ0Z1bmM8VD47XG59XG5cbi8qKiBUaGUgYHJvd0dyb3VwYCBmaWVsZHMgb2YgYSBjb2x1bW4gc2V0LCBpbiBkZWZpbml0aW9uIG9yZGVyLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJvd0dyb3VwRmllbGRzPFQ+KGNvbHVtbnM6IHJlYWRvbmx5IE9uZUNvbHVtbkRlZjxUPltdKTogc3RyaW5nW10ge1xuXG4gIHJldHVybiAoY29sdW1ucyA/PyBbXSlcbiAgICAuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4ucm93R3JvdXAgJiYgY29sdW1uLmZpZWxkKVxuICAgIC5tYXAoY29sdW1uID0+IGNvbHVtbi5maWVsZCBhcyBzdHJpbmcpO1xufVxuXG4vKiogVGhlIGBhZ2dGdW5jYCBjb2x1bW5zIG9mIGEgY29sdW1uIHNldC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZ2dDb2x1bW5zPFQ+KGNvbHVtbnM6IHJlYWRvbmx5IE9uZUNvbHVtbkRlZjxUPltdKTogT25lQWdnQ29sdW1uPFQ+W10ge1xuXG4gIHJldHVybiAoY29sdW1ucyA/PyBbXSlcbiAgICAuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4uYWdnRnVuYyAmJiBjb2x1bW4uZmllbGQpXG4gICAgLm1hcChjb2x1bW4gPT4gKHsgZmllbGQ6IGNvbHVtbi5maWVsZCBhcyBzdHJpbmcsIGFnZ0Z1bmM6IGNvbHVtbi5hZ2dGdW5jIH0pKTtcbn1cblxuLyoqXG4gKiBGb2xkIGZsYXQgcm93cyBpbnRvIGEgdHJlZSBvZiBzeW50aGV0aWMgZ3JvdXAgcm93cywgb25lIGxldmVsIHBlciBncm91cFxuICogZmllbGQsIGluIGZpcnN0LWFwcGVhcmFuY2Ugb3JkZXIuIEVhY2ggZ3JvdXAgcm93IGNhcnJpZXM6XG4gKlxuICogLSB0aGUgbWFya2VyLCBpZCBhbmQgbGFiZWwgZmllbGRzIGFib3ZlO1xuICogLSBpdHMgb3duIGdyb3VwZWQgZmllbGQncyB2YWx1ZSwgc28gc29ydGluZyBhbmQgZmlsdGVyaW5nIHJlYWQgaXQgbmF0dXJhbGx5O1xuICogLSBvbmUgYWdncmVnYXRlZCB2YWx1ZSBwZXIgYGFnZ0Z1bmNgIGNvbHVtbiwgY29tcHV0ZWQgb3ZlciB0aGUgZ3JvdXAnc1xuICogICBsZWF2ZXMgKG5vdCBpdHMgY2hpbGQgZ3JvdXBzKSwgc3RvcmVkIHVuZGVyIHRoZSBjb2x1bW4ncyBvd24gZmllbGQgc28gdGhlXG4gKiAgIG9yZGluYXJ5IGNlbGwgcGlwZWxpbmUgcmVuZGVycyBpdC5cbiAqXG4gKiBQdXJlOiB0aGUgaW5wdXQgcm93cyBhcmUgcmVmZXJlbmNlZCwgbmV2ZXIgbXV0YXRlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkR3JvdXBlZFJvd3M8VD4oXG4gIHJvd3M6IHJlYWRvbmx5IFRbXSxcbiAgZ3JvdXBGaWVsZHM6IHJlYWRvbmx5IHN0cmluZ1tdLFxuICBhZ2dyZWdhdGlvbnM6IHJlYWRvbmx5IE9uZUFnZ0NvbHVtbjxUPltdID0gW10sXG4pOiBhbnlbXSB7XG5cbiAgaWYgKCFncm91cEZpZWxkcz8ubGVuZ3RoKSByZXR1cm4gWy4uLihyb3dzID8/IFtdKV07XG5cbiAgcmV0dXJuIGdyb3VwTGV2ZWwocm93cyA/PyBbXSwgZ3JvdXBGaWVsZHMsIDAsIGFnZ3JlZ2F0aW9ucywgJ29nLWdyb3VwJyk7XG59XG5cbmZ1bmN0aW9uIGdyb3VwTGV2ZWw8VD4oXG4gIHJvd3M6IHJlYWRvbmx5IFRbXSxcbiAgZ3JvdXBGaWVsZHM6IHJlYWRvbmx5IHN0cmluZ1tdLFxuICBsZXZlbDogbnVtYmVyLFxuICBhZ2dyZWdhdGlvbnM6IHJlYWRvbmx5IE9uZUFnZ0NvbHVtbjxUPltdLFxuICBpZFByZWZpeDogc3RyaW5nLFxuKTogYW55W10ge1xuXG4gIGNvbnN0IGZpZWxkID0gZ3JvdXBGaWVsZHNbbGV2ZWxdO1xuXG4gIC8vIEluc2VydGlvbi1vcmRlcmVkIGJ1Y2tldHMsIGtleWVkIGJ5IHRoZSB2YWx1ZSdzIHN0cmluZyBmb3JtLiBUaGUgcmF3XG4gIC8vIHZhbHVlIGlzIGtlcHQgYXMgd2VsbCwgc28gdGhlIGdyb3VwIHJvdyBleHBvc2VzIHRoZSByZWFsIHZhbHVlIHVuZGVyIHRoZVxuICAvLyBncm91cGVkIGZpZWxkLCBub3QgaXRzIHN0cmluZ2lmaWNhdGlvbi5cbiAgY29uc3QgYnVja2V0cyA9IG5ldyBNYXA8c3RyaW5nLCB7IHZhbHVlOiB1bmtub3duOyByb3dzOiBUW10gfT4oKTtcblxuICBmb3IgKGNvbnN0IHJvdyBvZiByb3dzKSB7XG5cbiAgICBjb25zdCB2YWx1ZSA9IChyb3cgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pPy5bZmllbGRdO1xuICAgIGNvbnN0IGtleSA9IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnID8gT05FX0dST1VQX0JMQU5LX0xBQkVMIDogU3RyaW5nKHZhbHVlKTtcblxuICAgIGNvbnN0IGJ1Y2tldCA9IGJ1Y2tldHMuZ2V0KGtleSk7XG5cbiAgICBpZiAoYnVja2V0KSB7XG5cbiAgICAgIGJ1Y2tldC5yb3dzLnB1c2gocm93KTtcblxuICAgIH0gZWxzZSB7XG5cbiAgICAgIGJ1Y2tldHMuc2V0KGtleSwgeyB2YWx1ZSwgcm93czogW3Jvd10gfSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIFsuLi5idWNrZXRzLmVudHJpZXMoKV0ubWFwKChba2V5LCBidWNrZXRdKSA9PiB7XG5cbiAgICBjb25zdCBpZCA9IGAke2lkUHJlZml4fToke2tleX1gO1xuXG4gICAgY29uc3QgY2hpbGRyZW4gPSBsZXZlbCArIDEgPCBncm91cEZpZWxkcy5sZW5ndGhcbiAgICAgID8gZ3JvdXBMZXZlbChidWNrZXQucm93cywgZ3JvdXBGaWVsZHMsIGxldmVsICsgMSwgYWdncmVnYXRpb25zLCBpZClcbiAgICAgIDogYnVja2V0LnJvd3M7XG5cbiAgICBjb25zdCBncm91cFJvdzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICAgICBbT05FX0dST1VQX0ZMQUddOiB0cnVlLFxuICAgICAgW09ORV9HUk9VUF9JRF9GSUVMRF06IGlkLFxuICAgICAgW09ORV9HUk9VUF9WQUxVRV9GSUVMRF06IGtleSxcbiAgICAgIFtmaWVsZF06IGJ1Y2tldC52YWx1ZSxcbiAgICAgIFtPTkVfR1JPVVBfQ0hJTERSRU5fRklFTERdOiBjaGlsZHJlbixcbiAgICB9O1xuXG4gICAgLy8gQWdncmVnYXRlcyBhbHdheXMgcmVhZCB0aGUgb3JpZ2luYWwgbGVhdmVzLCBzbyBhIHR3by1sZXZlbCBncm91cCdzXG4gICAgLy8gcGFyZW50IGlzIG5vdCBhdmVyYWdpbmcgYXZlcmFnZXMuXG4gICAgZm9yIChjb25zdCBhZ2dyZWdhdGlvbiBvZiBhZ2dyZWdhdGlvbnMpIHtcblxuICAgICAgZ3JvdXBSb3dbYWdncmVnYXRpb24uZmllbGRdID0gYWdncmVnYXRlKGJ1Y2tldC5yb3dzLCBhZ2dyZWdhdGlvbi5maWVsZCwgYWdncmVnYXRpb24uYWdnRnVuYyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGdyb3VwUm93O1xuICB9KTtcbn1cblxuLyoqIEFwcGx5IG9uZSBhZ2dyZWdhdGlvbiBvdmVyIGEgc2V0IG9mIGxlYWYgcm93cy4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZ2dyZWdhdGU8VD4ocm93czogcmVhZG9ubHkgVFtdLCBmaWVsZDogc3RyaW5nLCBhZ2dGdW5jOiBPbmVBZ2dGdW5jPFQ+KTogYW55IHtcblxuICBjb25zdCB2YWx1ZXMgPSByb3dzXG4gICAgLm1hcChyb3cgPT4gKHJvdyBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik/LltmaWVsZF0pXG4gICAgLmZpbHRlcih2YWx1ZSA9PiB2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkKTtcblxuICBpZiAodHlwZW9mIGFnZ0Z1bmMgPT09ICdmdW5jdGlvbicpIHtcblxuICAgIHJldHVybiBhZ2dGdW5jKHsgdmFsdWVzLCByb3dzOiByb3dzIGFzIFRbXSwgZmllbGQgfSBhcyBPbmVBZ2dGdW5jUGFyYW1zPFQ+KTtcbiAgfVxuXG4gIHN3aXRjaCAoYWdnRnVuYykge1xuXG4gICAgY2FzZSAnY291bnQnOiByZXR1cm4gdmFsdWVzLmxlbmd0aDtcblxuICAgIGNhc2UgJ2ZpcnN0JzogcmV0dXJuIHZhbHVlcy5sZW5ndGggPyB2YWx1ZXNbMF0gOiBudWxsO1xuXG4gICAgY2FzZSAnbGFzdCc6IHJldHVybiB2YWx1ZXMubGVuZ3RoID8gdmFsdWVzW3ZhbHVlcy5sZW5ndGggLSAxXSA6IG51bGw7XG4gIH1cblxuICAvLyBUaGUgbnVtZXJpYyBhZ2dyZWdhdGVzIGlnbm9yZSB3aGF0IGRvZXMgbm90IHBhcnNlLCBzbyBvbmUgc3RyYXkgc3RyaW5nIGluXG4gIC8vIGEgY29sdW1uIGRvZXMgbm90IHR1cm4gdGhlIHdob2xlIGdyb3VwJ3MgdG90YWwgaW50byBOYU4uXG4gIGNvbnN0IG51bWJlcnMgPSB2YWx1ZXMubWFwKE51bWJlcikuZmlsdGVyKE51bWJlci5pc0Zpbml0ZSk7XG5cbiAgaWYgKCFudW1iZXJzLmxlbmd0aCkgcmV0dXJuIG51bGw7XG5cbiAgc3dpdGNoIChhZ2dGdW5jKSB7XG5cbiAgICBjYXNlICdzdW0nOiByZXR1cm4gbnVtYmVycy5yZWR1Y2UoKHRvdGFsLCB2YWx1ZSkgPT4gdG90YWwgKyB2YWx1ZSwgMCk7XG5cbiAgICBjYXNlICdtaW4nOiByZXR1cm4gTWF0aC5taW4oLi4ubnVtYmVycyk7XG5cbiAgICBjYXNlICdtYXgnOiByZXR1cm4gTWF0aC5tYXgoLi4ubnVtYmVycyk7XG5cbiAgICBjYXNlICdhdmcnOiByZXR1cm4gbnVtYmVycy5yZWR1Y2UoKHRvdGFsLCB2YWx1ZSkgPT4gdG90YWwgKyB2YWx1ZSwgMCkgLyBudW1iZXJzLmxlbmd0aDtcblxuICAgIGRlZmF1bHQ6IHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=
|
package/esm2022/lib/index.mjs
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export * from './helpers/one-column-def.helper';
|
|
2
|
+
export * from './helpers/one-csv.helper';
|
|
3
|
+
export * from './helpers/one-row-grouping.helper';
|
|
2
4
|
export * from './helpers/one-validation.helper';
|
|
3
5
|
export * from './core/instants/one-grid-api.class';
|
|
4
6
|
export * from './core/instants/one-row-node.class';
|
|
@@ -23,4 +25,4 @@ export * from './components/one-grid/one-grid.component';
|
|
|
23
25
|
export * from './components/one-grid-status/one-grid-status.component';
|
|
24
26
|
export * from './components/one-grid-cell-currency/one-grid-cell-currency.component';
|
|
25
27
|
export * from './one-grid.module';
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzL29uZS1jb2x1bW4tZGVmLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2hlbHBlcnMvb25lLWNzdi5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzL29uZS1yb3ctZ3JvdXBpbmcuaGVscGVyJztcbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycy9vbmUtdmFsaWRhdGlvbi5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL2luc3RhbnRzL29uZS1ncmlkLWFwaS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvaW5zdGFudHMvb25lLXJvdy1ub2RlLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9zZXJ2aWNlcy9vbmUtZ3JpZC1ldmVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9zZXJ2aWNlcy9vbmUtZ3JpZC1zZWxlY3Rpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvc2VydmljZXMvb25lLWdyaWQtZXhwYW5zaW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL3NlcnZpY2VzL29uZS1ncmlkLWNlbGwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvc2VydmljZXMvb25lLWdyaWQtcm93LWRyYWcuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvc2VydmljZXMvb25lLWdyaWQtdHJlZS1kYXRhLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL21vZGVscy9jb25zdGFudHMvb25lLXBhZ2luYXRpb24uY29uc3RhbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL21vZGVscy9vbmUtY29sdW1uLWRlZi10eXBlcy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvbW9kZWxzL29uZS1maWx0ZXIubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL21vZGVscy9vbmUtbWFzdGVyLWRldGFpbC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvbW9kZWxzL29uZS1yb3cubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL21vZGVscy9vbmUtcm93LWRyYWcubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL21vZGVscy9vbmUtZXZlbnQtdHlwZXMubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL21vZGVscy9vbmUtZ3JpZC10eXBlcy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvbW9kZWxzL29uZS1wYWdpbmF0aW9uLXR5cGVzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9tb2RlbHMvb25lLXZhbGlkYXRpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL21vZGVscy9vbmUtdHJlZS1kYXRhLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC9vbmUtZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL29uZS1ncmlkLXN0YXR1cy9vbmUtZ3JpZC1zdGF0dXMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5L29uZS1ncmlkLWNlbGwtY3VycmVuY3kuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vb25lLWdyaWQubW9kdWxlJztcbiJdfQ==
|
|
@@ -1,133 +1,43 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
2
|
import { OneGridComponent } from './components/one-grid/one-grid.component';
|
|
4
|
-
import { OneGridHeaderComponent } from './components/one-grid-header/one-grid-header.component';
|
|
5
|
-
import { OneGridBodyComponent } from './components/one-grid-body/one-grid-body.component';
|
|
6
|
-
import { OneGridCheckboxComponent } from './components/one-grid-checkbox/one-grid-checkbox.component';
|
|
7
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
8
|
-
import { OneGridRowActionComponent } from './components/one-grid-row-action/one-grid-row-action.component';
|
|
9
|
-
import { OneGridPaginationComponent } from './components/one-grid-pagination/one-grid-pagination.component';
|
|
10
|
-
import { OneGridCheckboxHeaderComponent } from './components/one-grid-checkbox-header/one-grid-checkbox-header.component';
|
|
11
3
|
import { OneGridStatusComponent } from './components/one-grid-status/one-grid-status.component';
|
|
12
|
-
import { CellFieldValueEmptyPipe } from './core/pipes/cell-field-value-empty.pipe';
|
|
13
|
-
import { CellValueGetterPipe } from './core/pipes/cell-value-getter.pipe';
|
|
14
|
-
import { CellFieldValuePipe } from './core/pipes/cell-field-value.pipe';
|
|
15
|
-
import { OneGridCellGroupRendererComponent } from './components/one-grid-cell-group-renderer/one-grid-cell-group-renderer.component';
|
|
16
|
-
import { CellActionButtonVisiblePipe } from './core/pipes/cell-action-button-visible.pipe';
|
|
17
|
-
import { CellEditablePipe } from './core/pipes/cell-editable.pipe';
|
|
18
|
-
import { CellInvalidPipe } from './core/pipes/cell-invalid.pipe';
|
|
19
|
-
import { CellSelectedPipe } from './core/pipes/cell-selected.pipe';
|
|
20
|
-
import { CellActionButtonEnablePipe } from './core/pipes/cell-action-button-enable.pipe';
|
|
21
|
-
import { CellNumberValuePipe } from './core/pipes/cell-number-value.pipe';
|
|
22
|
-
import { CellFieldPipe } from './core/pipes/cell-field.pipe';
|
|
23
|
-
import { CellLevelPaddingPipe } from './core/pipes/cell-level-padding.pipe';
|
|
24
|
-
import { ColumnSortStatePipe } from './core/pipes/column-sort-state.pipe';
|
|
25
|
-
import { HeaderCheckboxDisabledPipe } from './core/pipes/header-checkbox-disabled.pipe';
|
|
26
|
-
import { HeaderCheckboxCheckedPipe } from './core/pipes/header-checkbox-checked.pipe';
|
|
27
|
-
import { HeaderCheckboxIndeterminatePipe } from './core/pipes/header-checkbox-indeterminate.pipe';
|
|
28
|
-
import { CellStateRendererPipe } from './core/pipes/cell-state-renderer.pipe';
|
|
29
|
-
import { CellStateGroupRendererPipe } from './core/pipes/cell-state-group-renderer.pipe';
|
|
30
|
-
import { OneCellInputValidatorDirective } from './core/directives/one-cell-input-validator.directive';
|
|
31
|
-
import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
32
|
-
import { OneCellRendererComponentDirective } from './core/directives/one-cell-renderer-component.directive';
|
|
33
|
-
import { OneCellTextExpandDirective } from './core/directives/one-cell-text-expand.directive';
|
|
34
4
|
import { OneGridCellCurrencyComponent } from './components/one-grid-cell-currency/one-grid-cell-currency.component';
|
|
35
|
-
import { LucideAngularModule, icons } from 'lucide-angular';
|
|
36
|
-
import { OneGridRowDragHandleComponent } from './components/one-grid-row-drag-handle/one-grid-row-drag-handle.component';
|
|
37
|
-
import { CellKeyPipe } from './core/pipes/cell-key.pipe';
|
|
38
|
-
import { OneGridCellOptionMenuComponent } from './components/one-grid-cell-option-menu/one-grid-cell-option-menu.component';
|
|
39
5
|
import * as i0 from "@angular/core";
|
|
40
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Compatibility shim.
|
|
8
|
+
*
|
|
9
|
+
* Every component, directive and pipe in the library is standalone, so this
|
|
10
|
+
* module declares nothing — it exists so `imports: [OneGridModule]` keeps
|
|
11
|
+
* working for anyone already on it. New code can import `OneGridComponent`
|
|
12
|
+
* directly instead.
|
|
13
|
+
*
|
|
14
|
+
* Icons no longer need registering here: each component that draws one
|
|
15
|
+
* provides the eight the grid uses, so they travel with the component whichever
|
|
16
|
+
* way it is imported.
|
|
17
|
+
*/
|
|
41
18
|
export class OneGridModule {
|
|
42
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
43
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: OneGridModule,
|
|
44
|
-
OneGridHeaderComponent,
|
|
45
|
-
OneGridBodyComponent,
|
|
46
|
-
OneGridCheckboxComponent,
|
|
47
|
-
OneGridCheckboxHeaderComponent,
|
|
48
|
-
OneGridRowActionComponent,
|
|
49
|
-
OneGridPaginationComponent,
|
|
20
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: OneGridModule, imports: [OneGridComponent,
|
|
50
21
|
OneGridStatusComponent,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
CellEditablePipe,
|
|
57
|
-
CellInvalidPipe,
|
|
58
|
-
CellSelectedPipe,
|
|
59
|
-
CellActionButtonEnablePipe,
|
|
60
|
-
CellNumberValuePipe,
|
|
61
|
-
CellFieldPipe,
|
|
62
|
-
CellKeyPipe,
|
|
63
|
-
CellLevelPaddingPipe,
|
|
64
|
-
ColumnSortStatePipe,
|
|
65
|
-
HeaderCheckboxDisabledPipe,
|
|
66
|
-
HeaderCheckboxCheckedPipe,
|
|
67
|
-
HeaderCheckboxIndeterminatePipe,
|
|
68
|
-
CellStateRendererPipe,
|
|
69
|
-
CellStateGroupRendererPipe,
|
|
70
|
-
OneCellInputValidatorDirective,
|
|
71
|
-
OneCellRendererComponentDirective,
|
|
72
|
-
OneCellTextExpandDirective,
|
|
73
|
-
OneGridCellCurrencyComponent,
|
|
74
|
-
OneGridCellOptionMenuComponent,
|
|
75
|
-
OneGridRowDragHandleComponent], imports: [CommonModule,
|
|
76
|
-
FormsModule,
|
|
77
|
-
ScrollingModule,
|
|
78
|
-
ReactiveFormsModule, i1.LucideAngularModule], exports: [OneGridComponent] }); }
|
|
79
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridModule, imports: [CommonModule,
|
|
80
|
-
FormsModule,
|
|
81
|
-
ScrollingModule,
|
|
82
|
-
ReactiveFormsModule,
|
|
83
|
-
LucideAngularModule.pick(icons)] }); }
|
|
22
|
+
OneGridCellCurrencyComponent], exports: [OneGridComponent,
|
|
23
|
+
OneGridStatusComponent,
|
|
24
|
+
OneGridCellCurrencyComponent] }); }
|
|
25
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridModule, imports: [OneGridComponent,
|
|
26
|
+
OneGridCellCurrencyComponent] }); }
|
|
84
27
|
}
|
|
85
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridModule, decorators: [{
|
|
86
29
|
type: NgModule,
|
|
87
30
|
args: [{
|
|
88
|
-
|
|
31
|
+
imports: [
|
|
89
32
|
OneGridComponent,
|
|
90
|
-
OneGridHeaderComponent,
|
|
91
|
-
OneGridBodyComponent,
|
|
92
|
-
OneGridCheckboxComponent,
|
|
93
|
-
OneGridCheckboxHeaderComponent,
|
|
94
|
-
OneGridRowActionComponent,
|
|
95
|
-
OneGridPaginationComponent,
|
|
96
33
|
OneGridStatusComponent,
|
|
97
|
-
OneGridCellGroupRendererComponent,
|
|
98
|
-
CellFieldValueEmptyPipe,
|
|
99
|
-
CellValueGetterPipe,
|
|
100
|
-
CellFieldValuePipe,
|
|
101
|
-
CellActionButtonVisiblePipe,
|
|
102
|
-
CellEditablePipe,
|
|
103
|
-
CellInvalidPipe,
|
|
104
|
-
CellSelectedPipe,
|
|
105
|
-
CellActionButtonEnablePipe,
|
|
106
|
-
CellNumberValuePipe,
|
|
107
|
-
CellFieldPipe,
|
|
108
|
-
CellKeyPipe,
|
|
109
|
-
CellLevelPaddingPipe,
|
|
110
|
-
ColumnSortStatePipe,
|
|
111
|
-
HeaderCheckboxDisabledPipe,
|
|
112
|
-
HeaderCheckboxCheckedPipe,
|
|
113
|
-
HeaderCheckboxIndeterminatePipe,
|
|
114
|
-
CellStateRendererPipe,
|
|
115
|
-
CellStateGroupRendererPipe,
|
|
116
|
-
OneCellInputValidatorDirective,
|
|
117
|
-
OneCellRendererComponentDirective,
|
|
118
|
-
OneCellTextExpandDirective,
|
|
119
34
|
OneGridCellCurrencyComponent,
|
|
120
|
-
OneGridCellOptionMenuComponent,
|
|
121
|
-
OneGridRowDragHandleComponent
|
|
122
35
|
],
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
ReactiveFormsModule,
|
|
128
|
-
LucideAngularModule.pick(icons),
|
|
36
|
+
exports: [
|
|
37
|
+
OneGridComponent,
|
|
38
|
+
OneGridStatusComponent,
|
|
39
|
+
OneGridCellCurrencyComponent,
|
|
129
40
|
],
|
|
130
|
-
exports: [OneGridComponent]
|
|
131
41
|
}]
|
|
132
42
|
}] });
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lLWdyaWQvc3JjL2xpYi9vbmUtZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDaEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDdEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQzNHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQzVHLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQzFILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGtGQUFrRixDQUFDO0FBQ3JJLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxnQkFBZ0IsRUFB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Q2xCLDJCQUEyQjt3QkFDM0IsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsMEJBQTBCO3dCQUMxQixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCxvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsMEJBQTBCO3dCQUMxQix5QkFBeUI7d0JBQ3pCLCtCQUErQjt3QkFDL0IscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLDhCQUE4Qjt3QkFDOUIsaUNBQWlDO3dCQUNqQywwQkFBMEI7d0JBQzFCLDRCQUE0Qjt3QkFDNUIsOEJBQThCO3dCQUM5Qiw2QkFBNkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7cUJBQ2hDO29CQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgT25lR3JpZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC9vbmUtZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT25lR3JpZEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC1oZWFkZXIvb25lLWdyaWQtaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPbmVHcmlkQm9keUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC1ib2R5L29uZS1ncmlkLWJvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IE9uZUdyaWRDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC1jaGVja2JveC9vbmUtZ3JpZC1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBPbmVHcmlkUm93QWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29uZS1ncmlkLXJvdy1hY3Rpb24vb25lLWdyaWQtcm93LWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgT25lR3JpZFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb25lLWdyaWQtcGFnaW5hdGlvbi9vbmUtZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPbmVHcmlkQ2hlY2tib3hIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb25lLWdyaWQtY2hlY2tib3gtaGVhZGVyL29uZS1ncmlkLWNoZWNrYm94LWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgT25lR3JpZFN0YXR1c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC1zdGF0dXMvb25lLWdyaWQtc3RhdHVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDZWxsRmllbGRWYWx1ZUVtcHR5UGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9jZWxsLWZpZWxkLXZhbHVlLWVtcHR5LnBpcGUnO1xuaW1wb3J0IHsgQ2VsbFZhbHVlR2V0dGVyUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9jZWxsLXZhbHVlLWdldHRlci5waXBlJztcbmltcG9ydCB7IENlbGxGaWVsZFZhbHVlUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9jZWxsLWZpZWxkLXZhbHVlLnBpcGUnO1xuaW1wb3J0IHsgT25lR3JpZENlbGxHcm91cFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29uZS1ncmlkLWNlbGwtZ3JvdXAtcmVuZGVyZXIvb25lLWdyaWQtY2VsbC1ncm91cC1yZW5kZXJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2VsbEFjdGlvbkJ1dHRvblZpc2libGVQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2NlbGwtYWN0aW9uLWJ1dHRvbi12aXNpYmxlLnBpcGUnO1xuaW1wb3J0IHsgQ2VsbEVkaXRhYmxlUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9jZWxsLWVkaXRhYmxlLnBpcGUnO1xuaW1wb3J0IHsgQ2VsbEludmFsaWRQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2NlbGwtaW52YWxpZC5waXBlJztcbmltcG9ydCB7IENlbGxTZWxlY3RlZFBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvY2VsbC1zZWxlY3RlZC5waXBlJztcbmltcG9ydCB7IENlbGxBY3Rpb25CdXR0b25FbmFibGVQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2NlbGwtYWN0aW9uLWJ1dHRvbi1lbmFibGUucGlwZSc7XG5pbXBvcnQgeyBDZWxsTnVtYmVyVmFsdWVQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2NlbGwtbnVtYmVyLXZhbHVlLnBpcGUnO1xuaW1wb3J0IHsgQ2VsbEZpZWxkUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9jZWxsLWZpZWxkLnBpcGUnO1xuaW1wb3J0IHsgQ2VsbExldmVsUGFkZGluZ1BpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvY2VsbC1sZXZlbC1wYWRkaW5nLnBpcGUnO1xuaW1wb3J0IHsgQ29sdW1uU29ydFN0YXRlUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9jb2x1bW4tc29ydC1zdGF0ZS5waXBlJztcbmltcG9ydCB7IEhlYWRlckNoZWNrYm94RGlzYWJsZWRQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2hlYWRlci1jaGVja2JveC1kaXNhYmxlZC5waXBlJztcbmltcG9ydCB7IEhlYWRlckNoZWNrYm94Q2hlY2tlZFBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvaGVhZGVyLWNoZWNrYm94LWNoZWNrZWQucGlwZSc7XG5pbXBvcnQgeyBIZWFkZXJDaGVja2JveEluZGV0ZXJtaW5hdGVQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2hlYWRlci1jaGVja2JveC1pbmRldGVybWluYXRlLnBpcGUnO1xuaW1wb3J0IHsgQ2VsbFN0YXRlUmVuZGVyZXJQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2NlbGwtc3RhdGUtcmVuZGVyZXIucGlwZSc7XG5pbXBvcnQgeyBDZWxsU3RhdGVHcm91cFJlbmRlcmVyUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9jZWxsLXN0YXRlLWdyb3VwLXJlbmRlcmVyLnBpcGUnO1xuaW1wb3J0IHsgT25lQ2VsbElucHV0VmFsaWRhdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL2RpcmVjdGl2ZXMvb25lLWNlbGwtaW5wdXQtdmFsaWRhdG9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IE9uZUNlbGxSZW5kZXJlckNvbXBvbmVudERpcmVjdGl2ZSB9IGZyb20gJy4vY29yZS9kaXJlY3RpdmVzL29uZS1jZWxsLXJlbmRlcmVyLWNvbXBvbmVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgT25lQ2VsbFRleHRFeHBhbmREaXJlY3RpdmUgfSBmcm9tICcuL2NvcmUvZGlyZWN0aXZlcy9vbmUtY2VsbC10ZXh0LWV4cGFuZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgT25lR3JpZENlbGxDdXJyZW5jeUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5L29uZS1ncmlkLWNlbGwtY3VycmVuY3kuY29tcG9uZW50JztcbmltcG9ydCB7IEx1Y2lkZUFuZ3VsYXJNb2R1bGUsIGljb25zIH0gZnJvbSAnbHVjaWRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgT25lR3JpZFJvd0RyYWdIYW5kbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb25lLWdyaWQtcm93LWRyYWctaGFuZGxlL29uZS1ncmlkLXJvdy1kcmFnLWhhbmRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2VsbEtleVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvY2VsbC1rZXkucGlwZSc7XG5pbXBvcnQgeyBPbmVHcmlkQ2VsbE9wdGlvbk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb25lLWdyaWQtY2VsbC1vcHRpb24tbWVudS9vbmUtZ3JpZC1jZWxsLW9wdGlvbi1tZW51LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE9uZUdyaWRDb21wb25lbnQsXG4gICAgT25lR3JpZEhlYWRlckNvbXBvbmVudCxcbiAgICBPbmVHcmlkQm9keUNvbXBvbmVudCxcbiAgICBPbmVHcmlkQ2hlY2tib3hDb21wb25lbnQsXG4gICAgT25lR3JpZENoZWNrYm94SGVhZGVyQ29tcG9uZW50LFxuICAgIE9uZUdyaWRSb3dBY3Rpb25Db21wb25lbnQsXG4gICAgT25lR3JpZFBhZ2luYXRpb25Db21wb25lbnQsXG4gICAgT25lR3JpZFN0YXR1c0NvbXBvbmVudCxcbiAgICBPbmVHcmlkQ2VsbEdyb3VwUmVuZGVyZXJDb21wb25lbnQsXG4gICAgQ2VsbEZpZWxkVmFsdWVFbXB0eVBpcGUsXG4gICAgQ2VsbFZhbHVlR2V0dGVyUGlwZSxcbiAgICBDZWxsRmllbGRWYWx1ZVBpcGUsXG4gICAgQ2VsbEFjdGlvbkJ1dHRvblZpc2libGVQaXBlLFxuICAgIENlbGxFZGl0YWJsZVBpcGUsXG4gICAgQ2VsbEludmFsaWRQaXBlLFxuICAgIENlbGxTZWxlY3RlZFBpcGUsXG4gICAgQ2VsbEFjdGlvbkJ1dHRvbkVuYWJsZVBpcGUsXG4gICAgQ2VsbE51bWJlclZhbHVlUGlwZSxcbiAgICBDZWxsRmllbGRQaXBlLFxuICAgIENlbGxLZXlQaXBlLFxuICAgIENlbGxMZXZlbFBhZGRpbmdQaXBlLFxuICAgIENvbHVtblNvcnRTdGF0ZVBpcGUsXG4gICAgSGVhZGVyQ2hlY2tib3hEaXNhYmxlZFBpcGUsXG4gICAgSGVhZGVyQ2hlY2tib3hDaGVja2VkUGlwZSxcbiAgICBIZWFkZXJDaGVja2JveEluZGV0ZXJtaW5hdGVQaXBlLFxuICAgIENlbGxTdGF0ZVJlbmRlcmVyUGlwZSxcbiAgICBDZWxsU3RhdGVHcm91cFJlbmRlcmVyUGlwZSxcbiAgICBPbmVDZWxsSW5wdXRWYWxpZGF0b3JEaXJlY3RpdmUsXG4gICAgT25lQ2VsbFJlbmRlcmVyQ29tcG9uZW50RGlyZWN0aXZlLFxuICAgIE9uZUNlbGxUZXh0RXhwYW5kRGlyZWN0aXZlLFxuICAgIE9uZUdyaWRDZWxsQ3VycmVuY3lDb21wb25lbnQsXG4gICAgT25lR3JpZENlbGxPcHRpb25NZW51Q29tcG9uZW50LFxuICAgIE9uZUdyaWRSb3dEcmFnSGFuZGxlQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgU2Nyb2xsaW5nTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTHVjaWRlQW5ndWxhck1vZHVsZS5waWNrKGljb25zKSxcbiAgXSxcbiAgZXhwb3J0czogW09uZUdyaWRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIE9uZUdyaWRNb2R1bGUgeyB9XG4iXX0=
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lLWdyaWQvc3JjL2xpYi9vbmUtZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQzs7QUFFcEg7Ozs7Ozs7Ozs7O0dBV0c7QUFhSCxNQUFNLE9BQU8sYUFBYTsrR0FBYixhQUFhO2dIQUFiLGFBQWEsWUFWdEIsZ0JBQWdCO1lBQ2hCLHNCQUFzQjtZQUN0Qiw0QkFBNEIsYUFHNUIsZ0JBQWdCO1lBQ2hCLHNCQUFzQjtZQUN0Qiw0QkFBNEI7Z0hBR25CLGFBQWEsWUFWdEIsZ0JBQWdCO1lBRWhCLDRCQUE0Qjs7NEZBUW5CLGFBQWE7a0JBWnpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLGdCQUFnQjt3QkFDaEIsc0JBQXNCO3dCQUN0Qiw0QkFBNEI7cUJBQzdCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxnQkFBZ0I7d0JBQ2hCLHNCQUFzQjt3QkFDdEIsNEJBQTRCO3FCQUM3QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPbmVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29uZS1ncmlkL29uZS1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPbmVHcmlkU3RhdHVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29uZS1ncmlkLXN0YXR1cy9vbmUtZ3JpZC1zdGF0dXMuY29tcG9uZW50JztcbmltcG9ydCB7IE9uZUdyaWRDZWxsQ3VycmVuY3lDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb25lLWdyaWQtY2VsbC1jdXJyZW5jeS9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5LmNvbXBvbmVudCc7XG5cbi8qKlxuICogQ29tcGF0aWJpbGl0eSBzaGltLlxuICpcbiAqIEV2ZXJ5IGNvbXBvbmVudCwgZGlyZWN0aXZlIGFuZCBwaXBlIGluIHRoZSBsaWJyYXJ5IGlzIHN0YW5kYWxvbmUsIHNvIHRoaXNcbiAqIG1vZHVsZSBkZWNsYXJlcyBub3RoaW5nIOKAlCBpdCBleGlzdHMgc28gYGltcG9ydHM6IFtPbmVHcmlkTW9kdWxlXWAga2VlcHNcbiAqIHdvcmtpbmcgZm9yIGFueW9uZSBhbHJlYWR5IG9uIGl0LiBOZXcgY29kZSBjYW4gaW1wb3J0IGBPbmVHcmlkQ29tcG9uZW50YFxuICogZGlyZWN0bHkgaW5zdGVhZC5cbiAqXG4gKiBJY29ucyBubyBsb25nZXIgbmVlZCByZWdpc3RlcmluZyBoZXJlOiBlYWNoIGNvbXBvbmVudCB0aGF0IGRyYXdzIG9uZVxuICogcHJvdmlkZXMgdGhlIGVpZ2h0IHRoZSBncmlkIHVzZXMsIHNvIHRoZXkgdHJhdmVsIHdpdGggdGhlIGNvbXBvbmVudCB3aGljaGV2ZXJcbiAqIHdheSBpdCBpcyBpbXBvcnRlZC5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIE9uZUdyaWRDb21wb25lbnQsXG4gICAgT25lR3JpZFN0YXR1c0NvbXBvbmVudCxcbiAgICBPbmVHcmlkQ2VsbEN1cnJlbmN5Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgT25lR3JpZENvbXBvbmVudCxcbiAgICBPbmVHcmlkU3RhdHVzQ29tcG9uZW50LFxuICAgIE9uZUdyaWRDZWxsQ3VycmVuY3lDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE9uZUdyaWRNb2R1bGUgeyB9XG4iXX0=
|