@luzmo/analytics-components-kit 1.0.3-beta.13 → 1.0.3-beta.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ai-chat/ai-chat.d.ts +19 -6
- package/components/ai-chat/empty-state/ai-chat-empty-state.d.ts +3 -3
- package/components/ai-chat/index.cjs +1 -1
- package/components/ai-chat/index.js +1 -1
- package/components/ai-chat-B0pW6kHf.js +3670 -0
- package/components/ai-chat-BMsg63kL.cjs +245 -0
- package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +2 -2
- package/components/data-field/data-field.d.ts +2 -2
- package/components/data-field-level/data-field-level.d.ts +2 -2
- package/components/data-field-panel/data-field-panel.d.ts +2 -2
- package/components/data-fields-select/data-fields-select.d.ts +2 -2
- package/components/dataset-icon/dataset-icon.d.ts +2 -2
- package/components/dataset-selector-list/dataset-selector-list.d.ts +2 -2
- package/components/dataset-selector-row/dataset-selector-row.d.ts +2 -2
- package/components/display-settings/display-settings.d.ts +3 -3
- package/components/display-settings-binning/display-settings-binning.d.ts +1 -1
- package/components/display-settings-datetime/display-settings-datetime.d.ts +1 -1
- package/components/display-settings-grand-totals/display-settings-grand-totals.d.ts +1 -1
- package/components/display-settings-numeric/display-settings-numeric.d.ts +1 -1
- package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts +3 -3
- package/components/filter-expression-picker/filter-expression-picker.d.ts +1 -1
- package/components/filter-item/filter-item.d.ts +1 -1
- package/components/filter-parameter-picker/filter-parameter-picker.d.ts +1 -1
- package/components/filter-value-picker/filter-value-picker.d.ts +1 -1
- package/components/filter-value-picker-datetime/filter-value-picker-datetime.d.ts +1 -1
- package/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.d.ts +1 -1
- package/components/filter-value-picker-numeric/filter-value-picker-numeric.d.ts +1 -1
- package/components/filters/filters.d.ts +1 -1
- package/components/formula/formula.d.ts +4 -4
- package/components/formula/index.cjs +1 -1
- package/components/formula/index.js +1 -1
- package/components/{formula-CarQNWFK.js → formula-BgvJ0GQ4.js} +2 -2
- package/components/{formula-DJuiGRnx.cjs → formula-DHQae3tc.cjs} +1 -1
- package/components/formula-codemirror/formula-codemirror.d.ts +4 -4
- package/components/formula-codemirror/pills/formula-aggregation/formula-aggregation.d.ts +4 -4
- package/components/formula-codemirror/pills/formula-empty-argument-pill/formula-empty-argument-pill.d.ts +4 -4
- package/components/formula-codemirror/pills/formula-include-exclude-panel.d.ts +2 -2
- package/components/{formula-codemirror-Bi9OLz_A.cjs → formula-codemirror-BZTsmrYL.cjs} +2 -2
- package/components/{formula-codemirror-BEThofqB.js → formula-codemirror-iySUHkZq.js} +3 -3
- package/components/{formula-display-store-6ngv19Gy.cjs → formula-display-store-CTXbAK2f.cjs} +1 -1
- package/components/{formula-display-store-9NNnDVnU.js → formula-display-store-CcBMayNE.js} +1 -1
- package/components/formula-draggable-field/formula-draggable-field.d.ts +2 -2
- package/components/formula-editor/formula-aggregations-list.d.ts +3 -3
- package/components/formula-editor/formula-datasets-list.d.ts +3 -3
- package/components/formula-editor/formula-description.d.ts +2 -2
- package/components/formula-editor/formula-editor.d.ts +3 -3
- package/components/formula-editor/formula-functions-list.d.ts +3 -3
- package/components/formula-editor/index.cjs +1 -1
- package/components/formula-editor/index.d.ts +3 -3
- package/components/formula-editor/index.js +3 -3
- package/components/{formula-editor-Djpu24yj.cjs → formula-editor-L1af23DU.cjs} +1 -1
- package/components/{formula-editor-9Ooglb_W.js → formula-editor-YtSlmUwM.js} +3 -3
- package/components/formula-field/formula-field.d.ts +3 -3
- package/components/formula-field/index.cjs +1 -1
- package/components/formula-field/index.js +1 -1
- package/components/{formula-field--ctX03u5.cjs → formula-field-CpKC6bbr.cjs} +1 -1
- package/components/{formula-field-BIt24RJk.js → formula-field-DdZ4ll8e.js} +1 -1
- package/components/{formula-input-base-Cq4dGO5x.js → formula-input-base-B18f5b5l.js} +1 -1
- package/components/{formula-input-base-hYEdZdtA.cjs → formula-input-base-BlHhsmsp.cjs} +1 -1
- package/components/{groupings-DivdZpYX.js → groupings-Txqk_wHs.js} +1 -1
- package/components/{groupings-DQUJ2pXo.cjs → groupings-n-soRcZA.cjs} +1 -1
- package/components/index.cjs +1 -1
- package/components/index.js +6 -6
- package/components/item-grid/helpers/grid-item-popover.d.ts +1 -1
- package/components/item-grid/helpers/grid-rendering.d.ts +2 -2
- package/components/item-grid/item-grid-item-actions-menu.d.ts +1 -1
- package/components/item-grid/item-grid.d.ts +1 -1
- package/components/item-grid/types.d.ts +1 -1
- package/components/item-option/item-option.d.ts +1 -1
- package/components/item-option-action-button-group/item-option-action-button-group.d.ts +2 -2
- package/components/item-option-base/item-option-base.d.ts +1 -1
- package/components/item-option-color-palette-picker/item-option-color-palette-picker.d.ts +2 -2
- package/components/item-option-color-picker/item-option-color-picker.d.ts +1 -1
- package/components/item-option-color-range/item-option-color-range.d.ts +2 -2
- package/components/item-option-multi-language-field/item-option-multi-language-field.d.ts +1 -1
- package/components/item-option-number-field/item-option-number-field.d.ts +1 -1
- package/components/item-option-panel/item-option-panel.d.ts +2 -2
- package/components/item-option-picker/item-option-picker.d.ts +2 -2
- package/components/item-option-position-picker/item-option-position-picker.d.ts +1 -1
- package/components/item-option-positions-number-field/item-option-positions-number-field.d.ts +1 -1
- package/components/item-option-radio-button-group/item-option-radio-button-group.d.ts +2 -2
- package/components/item-option-slider/item-option-slider.d.ts +1 -1
- package/components/item-option-switch/item-option-switch.d.ts +1 -1
- package/components/item-option-text-field/item-option-text-field.d.ts +1 -1
- package/components/item-slot-drop/item-slot-drop.d.ts +2 -2
- package/components/item-slot-drop-panel/item-slot-drop-panel.d.ts +2 -2
- package/components/item-slot-picker/item-slot-picker.d.ts +2 -2
- package/components/item-slot-picker-panel/item-slot-picker-panel.d.ts +2 -2
- package/components/slot-menu/slot-menu.d.ts +1 -1
- package/components/slot-menu/types.d.ts +1 -1
- package/components/slot-menu-list/slot-menu-list.d.ts +1 -1
- package/components/viz-item-menu/viz-item-menu.d.ts +2 -2
- package/custom-elements.json +96 -0
- package/package.json +2 -1
- package/react/utils/base/base.d.ts +1 -1
- package/react/utils/base/focusable.d.ts +1 -1
- package/react/utils/base/localized-mixin.d.ts +1 -1
- package/react/utils/base/sized-mixin.d.ts +1 -1
- package/react/utils/formula/base/formula-base.d.ts +3 -3
- package/react/utils/formula/base/formula-input-base.d.ts +1 -1
- package/react/utils/formula/config/build-datasets.d.ts +2 -2
- package/react/utils/formula/render-explanation-tooltip.d.ts +1 -1
- package/react/utils/formula/store/formula-display-store.d.ts +1 -1
- package/react/utils/store/index.d.ts +5 -5
- package/react/utils/store/store-registry.d.ts +1 -1
- package/utils/base/base.d.ts +1 -1
- package/utils/base/focusable.d.ts +1 -1
- package/utils/base/localized-mixin.d.ts +1 -1
- package/utils/base/sized-mixin.d.ts +1 -1
- package/utils/formula/base/formula-base.d.ts +3 -3
- package/utils/formula/base/formula-input-base.d.ts +1 -1
- package/utils/formula/config/build-datasets.d.ts +2 -2
- package/utils/formula/render-explanation-tooltip.d.ts +1 -1
- package/utils/formula/store/formula-display-store.d.ts +1 -1
- package/utils/store/index.d.ts +5 -5
- package/utils/store/store-registry.d.ts +1 -1
- package/components/ai-chat-BWDgSvrr.js +0 -2227
- package/components/ai-chat-C9B2R2rl.cjs +0 -182
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LitElement, TemplateResult } from 'lit';
|
|
1
|
+
import { LitElement, TemplateResult } from '../../../node_modules/lit';
|
|
2
2
|
import '../dataset-icon';
|
|
3
3
|
/**
|
|
4
4
|
* @customElement luzmo-dataset-selector-list
|
|
@@ -24,7 +24,7 @@ import '../dataset-icon';
|
|
|
24
24
|
* @property {string} --dataset-selector-list-scrollbar-thumb-hover-background - Hover background of scrollbar thumb
|
|
25
25
|
*/
|
|
26
26
|
export declare class LuzmoDatasetSelectorList extends LitElement {
|
|
27
|
-
static styles: import("lit").CSSResult;
|
|
27
|
+
static styles: import("../../../node_modules/lit").CSSResult;
|
|
28
28
|
/**
|
|
29
29
|
* Set of dataset IDs that are already selected and should be filtered out
|
|
30
30
|
*/
|
|
@@ -2,7 +2,7 @@ import '@luzmo/lucero/icon';
|
|
|
2
2
|
import '@luzmo/lucero/select';
|
|
3
3
|
import '@luzmo/lucero/tags';
|
|
4
4
|
import '@luzmo/lucero/tooltip';
|
|
5
|
-
import { LitElement, PropertyValues, TemplateResult } from 'lit';
|
|
5
|
+
import { LitElement, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
6
6
|
import type { Dataset } from '../../types/dataset.types';
|
|
7
7
|
import '../dataset-icon';
|
|
8
8
|
/**
|
|
@@ -23,7 +23,7 @@ import '../dataset-icon';
|
|
|
23
23
|
* @property {string} --luzmo-dataset-selector-row-search-popover-max-height - Optional scoped max height for this row’s search dropdown; falls back to inherited `--luzmo-popover-max-height`, then `400px`
|
|
24
24
|
*/
|
|
25
25
|
export declare class LuzmoDatasetSelectorRow extends LitElement {
|
|
26
|
-
static styles: import("lit").CSSResult;
|
|
26
|
+
static styles: import("../../../node_modules/lit").CSSResult;
|
|
27
27
|
static tagName: string;
|
|
28
28
|
/**
|
|
29
29
|
* Array of selected datasets
|
|
@@ -6,10 +6,10 @@ import '@luzmo/lucero/multi-language-field';
|
|
|
6
6
|
import '@luzmo/lucero/progress-circle';
|
|
7
7
|
import '@luzmo/lucero/text-field';
|
|
8
8
|
import '@luzmo/lucero/tooltip';
|
|
9
|
-
import { CSSResultArray, TemplateResult } from 'lit';
|
|
9
|
+
import { CSSResultArray, TemplateResult } from '../../../node_modules/lit';
|
|
10
10
|
import type { GenericSlotContent } from '@luzmo/dashboard-contents-types';
|
|
11
|
-
import { LuzmoElement } from '
|
|
12
|
-
import type { PeriodOverPeriodCondition } from '
|
|
11
|
+
import { LuzmoElement } from '../../utils/base';
|
|
12
|
+
import type { PeriodOverPeriodCondition } from '../../utils/time/period-over-period-condition.const';
|
|
13
13
|
import { MeasureColumnsItem } from '../slot-menu/types';
|
|
14
14
|
declare const LuzmoDisplaySettings_base: typeof LuzmoElement & {
|
|
15
15
|
new (...args: any[]): import("../../utils/base/sized-mixin").SizedElementInterface;
|
|
@@ -2,7 +2,7 @@ import '@luzmo/lucero/action-button';
|
|
|
2
2
|
import '@luzmo/lucero/field-label';
|
|
3
3
|
import '@luzmo/lucero/icon';
|
|
4
4
|
import '@luzmo/lucero/number-field';
|
|
5
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
5
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
6
6
|
import type { GenericSlotContent } from '@luzmo/dashboard-contents-types';
|
|
7
7
|
import { LuzmoElement } from '../../utils/base';
|
|
8
8
|
declare const LuzmoDisplaySettingsBinning_base: (new (...args: any[]) => {
|
|
@@ -5,7 +5,7 @@ import '@luzmo/lucero/icon';
|
|
|
5
5
|
import '@luzmo/lucero/number-field';
|
|
6
6
|
import '@luzmo/lucero/picker';
|
|
7
7
|
import '@luzmo/lucero/progress-circle';
|
|
8
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
8
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
9
9
|
import type { GenericSlotContent } from '@luzmo/dashboard-contents-types';
|
|
10
10
|
import { ElementSize, LuzmoElement } from '../../utils/base';
|
|
11
11
|
declare const LuzmoDisplaySettingsDatetime_base: (new (...args: any[]) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '@luzmo/lucero/action-button';
|
|
2
2
|
import '@luzmo/lucero/field-label';
|
|
3
3
|
import '@luzmo/lucero/icon';
|
|
4
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
4
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
5
5
|
import type { GenericSlotContent } from '@luzmo/dashboard-contents-types';
|
|
6
6
|
import { LuzmoElement } from '../../utils/base';
|
|
7
7
|
declare const LuzmoDisplaySettingsGrandTotals_base: (new (...args: any[]) => {
|
|
@@ -5,7 +5,7 @@ import '@luzmo/lucero/menu';
|
|
|
5
5
|
import '@luzmo/lucero/number-field';
|
|
6
6
|
import '@luzmo/lucero/picker';
|
|
7
7
|
import '@luzmo/lucero/popover';
|
|
8
|
-
import { CSSResultArray, TemplateResult } from 'lit';
|
|
8
|
+
import { CSSResultArray, TemplateResult } from '../../../node_modules/lit';
|
|
9
9
|
import '@luzmo/lucero/tooltip';
|
|
10
10
|
import { LuzmoElement } from '../../utils/base';
|
|
11
11
|
import { MeasureColumnsItem } from '../slot-menu/types';
|
package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts
CHANGED
|
@@ -7,9 +7,9 @@ import '@luzmo/lucero/field-label';
|
|
|
7
7
|
import '@luzmo/lucero/menu';
|
|
8
8
|
import '@luzmo/lucero/number-field';
|
|
9
9
|
import '@luzmo/lucero/picker';
|
|
10
|
-
import { LuzmoElement } from '
|
|
11
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
12
|
-
import { PeriodOverPeriodCondition } from '
|
|
10
|
+
import { LuzmoElement } from '../../utils/base';
|
|
11
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
12
|
+
import { PeriodOverPeriodCondition } from '../../utils/time/period-over-period-condition.const';
|
|
13
13
|
declare const LuzmoDisplaySettingsPeriodOverPeriod_base: (new (...args: any[]) => {
|
|
14
14
|
language: string;
|
|
15
15
|
}) & typeof LuzmoElement & {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '@luzmo/lucero/field-label';
|
|
2
2
|
import '@luzmo/lucero/menu';
|
|
3
3
|
import '@luzmo/lucero/select';
|
|
4
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
4
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
5
5
|
import { ColumnSubtype, ColumnType } from '@luzmo/dashboard-contents-types';
|
|
6
6
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
7
7
|
declare const LuzmoFilterExpressionPicker_base: (new (...args: any[]) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
1
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
2
2
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
3
3
|
import './../data-fields-select';
|
|
4
4
|
import './../filter-expression-picker';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import '@luzmo/lucero/picker';
|
|
2
|
-
import { CSSResultArray, TemplateResult } from 'lit';
|
|
2
|
+
import { CSSResultArray, TemplateResult } from '../../../node_modules/lit';
|
|
3
3
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
4
4
|
declare const LuzmoFilterParameterPicker_base: typeof LuzmoElement & {
|
|
5
5
|
new (...args: any[]): import("@luzmo/lucero").SizedElementInterface;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '@luzmo/lucero/picker';
|
|
2
2
|
import '@luzmo/lucero/text-field';
|
|
3
|
-
import { CSSResultArray, TemplateResult } from 'lit';
|
|
3
|
+
import { CSSResultArray, TemplateResult } from '../../../node_modules/lit';
|
|
4
4
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
5
5
|
import './../filter-value-picker-datetime';
|
|
6
6
|
import './../filter-value-picker-hierarchy';
|
|
@@ -2,7 +2,7 @@ import '@luzmo/lucero/date-time-picker';
|
|
|
2
2
|
import '@luzmo/lucero/number-field';
|
|
3
3
|
import '@luzmo/lucero/picker';
|
|
4
4
|
import '@luzmo/lucero/text-field';
|
|
5
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
5
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
6
6
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
7
7
|
declare const LuzmoFilterValuePickerDatetime_base: (new (...args: any[]) => {
|
|
8
8
|
language: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '@luzmo/lucero/select';
|
|
2
2
|
import '@luzmo/lucero/text-field';
|
|
3
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
3
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
4
4
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
5
5
|
declare const LuzmoFilterValuePickerHierarchy_base: (new (...args: any[]) => {
|
|
6
6
|
language: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '@luzmo/lucero/number-field';
|
|
2
2
|
import '@luzmo/lucero/select';
|
|
3
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
3
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
4
4
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
5
5
|
declare const LuzmoFilterValuePickerNumeric_base: (new (...args: any[]) => {
|
|
6
6
|
language: string;
|
|
@@ -2,7 +2,7 @@ import '@luzmo/lucero/action-button';
|
|
|
2
2
|
import '@luzmo/lucero/button';
|
|
3
3
|
import '@luzmo/lucero/icon';
|
|
4
4
|
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
5
|
-
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
5
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '../../../node_modules/lit';
|
|
6
6
|
import type { ItemFilterGroup } from '@luzmo/dashboard-contents-types';
|
|
7
7
|
import '../filter-item';
|
|
8
8
|
declare const LuzmoFilters_base: (new (...args: any[]) => {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import '@luzmo/lucero/icon';
|
|
2
2
|
import '@luzmo/lucero/progress-circle';
|
|
3
|
-
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
4
|
-
import { LuzmoFormulaBase } from '
|
|
5
|
-
import { FormulaDisplayStore } from '
|
|
3
|
+
import { type PropertyValues, type TemplateResult } from '../../../node_modules/lit';
|
|
4
|
+
import { LuzmoFormulaBase } from '../../utils/formula/base/formula-base';
|
|
5
|
+
import { FormulaDisplayStore } from '../../utils/formula/store/formula-display-store';
|
|
6
6
|
/**
|
|
7
7
|
* @customElement luzmo-formula
|
|
8
8
|
* @description A read-only display of a formula. The default `display="rich"`
|
|
@@ -17,7 +17,7 @@ import { FormulaDisplayStore } from '@utils/formula/store/formula-display-store'
|
|
|
17
17
|
* @fires {CustomEvent<DatasetsErrorEventDetail>} luzmo-datasets-error - Fired when fetching datasets by id fails.
|
|
18
18
|
*/
|
|
19
19
|
export declare class LuzmoFormula extends LuzmoFormulaBase {
|
|
20
|
-
static styles: import("lit").CSSResult;
|
|
20
|
+
static styles: import("../../../node_modules/lit").CSSResult;
|
|
21
21
|
/**
|
|
22
22
|
* Rendering mode. `rich` (default) renders read-only column / aggregation
|
|
23
23
|
* pills; `text` renders plain text with an inline type icon per column. Both
|
|
@@ -17,4 +17,4 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../formula-
|
|
20
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../formula-DHQae3tc.cjs");Object.defineProperty(exports,"LuzmoFormula",{enumerable:!0,get:function(){return e.t}});
|
|
@@ -24,5 +24,5 @@
|
|
|
24
24
|
e.setAttribute("data-luzmo-vars", ""), e.textContent = "html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-full-down: color-mix(in oklch, var(--luzmo-border-color-full), black 45%);--luzmo-border-color-full-focus: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-down: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 7%), black 1%);--luzmo-background-color-focus: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-highlight-down: color-mix(in oklch, var(--luzmo-background-color-highlight), black 25%);--luzmo-background-color-highlight-focus: color-mix(in oklch, var(--luzmo-background-color-highlight), black 15%);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-font-color-down: color-mix(in oklch, var(--luzmo-font-color), black 20%);--luzmo-font-color-focus: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-scrollbar-size: 6px;--luzmo-scrollbar-width: thin;--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba(var(--luzmo-border-color-rgb), 0.4);--luzmo-primary: #4434ff;--luzmo-primary-hover: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-down: color-mix(in oklch, var(--luzmo-primary), black 20%);--luzmo-primary-focus: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-down: color-mix(in oklch, var(--luzmo-secondary), black 20%);--luzmo-secondary-focus: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-down: color-mix(in oklch, var(--luzmo-negative-color), black 20%);--luzmo-negative-color-focus: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-down: color-mix(in oklch, var(--luzmo-positive-color), black 20%);--luzmo-positive-color-focus: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-down: color-mix(in oklch, var(--luzmo-selected-color), black 45%);--luzmo-selected-color-focus: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-selected-color-hard-down: color-mix(in oklch, var(--luzmo-selected-color-hard), black 45%);--luzmo-selected-color-hard-focus: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}", document.head.appendChild(e);
|
|
25
25
|
}
|
|
26
26
|
})();
|
|
27
|
-
import { t as e } from "../formula-
|
|
27
|
+
import { t as e } from "../formula-BgvJ0GQ4.js";
|
|
28
28
|
export { e as LuzmoFormula };
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
import { t as e } from "./decorate-CaYbmmmm.js";
|
|
21
21
|
import { t } from "./calculate-data-field-icon-DrSg1PuD.js";
|
|
22
22
|
import { t as n } from "./localize-BT7REYBY.js";
|
|
23
|
-
import { f as r, g as i, h as a, o, t as s } from "./formula-display-store-
|
|
24
|
-
import { n as c } from "./groupings-
|
|
23
|
+
import { f as r, g as i, h as a, o, t as s } from "./formula-display-store-CcBMayNE.js";
|
|
24
|
+
import { n as c } from "./groupings-Txqk_wHs.js";
|
|
25
25
|
import { t as l } from "./resolve-column-presentation-BaEP1mvs.js";
|
|
26
26
|
import { luzmoIcon as u } from "@luzmo/icons";
|
|
27
27
|
import { html as d, nothing as f, unsafeCSS as p } from "lit";
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
const e=require("./decorate-DCJt-2rt.cjs"),t=require("./calculate-data-field-icon-DenGmW74.cjs"),n=require("./localize-D3i4Epy_.cjs"),r=require("./formula-display-store-
|
|
20
|
+
const e=require("./decorate-DCJt-2rt.cjs"),t=require("./calculate-data-field-icon-DenGmW74.cjs"),n=require("./localize-D3i4Epy_.cjs"),r=require("./formula-display-store-CTXbAK2f.cjs"),i=require("./groupings-n-soRcZA.cjs"),a=require("./resolve-column-presentation-DUETRVCH.cjs");let o=require("@luzmo/icons"),s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize");require("@luzmo/lucero/icon"),require("@luzmo/lucero/progress-circle");var u=`:host{box-sizing:border-box;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);display:inline-block}.formula-text{font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));white-space:pre-wrap;word-break:break-word;line-height:1.5}.formula-text-column{white-space:nowrap}.formula-text-column-icon{margin-inline-end:var(--luzmo-spacing-1)}.formula-pills{align-items:center;gap:var(--luzmo-spacing-1) 0;font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));flex-wrap:wrap;line-height:1.5;display:inline-flex}.formula-operator{white-space:pre-wrap}.column-pill-wrapper{vertical-align:middle;padding-inline-end:var(--luzmo-formula-column-pill-trailing-space,var(--luzmo-spacing-1));display:inline-flex}.column-pill{justify-content:center;align-items:center;gap:var(--luzmo-spacing-2);box-sizing:border-box;max-width:16rem;min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-formula-column-pill-padding-inline,calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1)));border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-formula-column-pill-background,var(--luzmo-background-color-highlight));color:var(--luzmo-font-color);white-space:nowrap;font-size:.85em;line-height:1.2;display:inline-flex}.column-pill-icon{flex:none;display:inline-flex}.column-pill-label{text-overflow:ellipsis;overflow:hidden}.column-pill-loading{--luzmo-progress-circle-size:1em;align-items:center;display:inline-flex}.agg-pill{padding-block:var(--luzmo-spacing-1);border-radius:var(--luzmo-border-radius);background-color:var(--agg-accent,var(--luzmo-primary));color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));vertical-align:middle;padding-inline:0;display:inline-flex}.agg-pill-row{align-items:center;gap:var(--luzmo-spacing-1);min-height:var(--luzmo-formula-control-height,1.375rem);display:inline-flex}.agg-fn{text-transform:uppercase;padding-inline-start:var(--luzmo-spacing-3);padding-inline-end:var(--luzmo-spacing-3);font-size:.85em}.agg-value{min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-spacing-2);border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-background-color);color:var(--luzmo-font-color);--luzmo-formula-column-pill-background:transparent;--luzmo-formula-column-pill-padding-inline:0px;align-items:center;line-height:1;display:inline-flex}.agg-grouping{align-items:center;gap:var(--luzmo-spacing-1);padding-inline:var(--luzmo-spacing-2) var(--luzmo-spacing-3);font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));display:inline-flex}.agg-grouping--no-value{padding-inline-start:0}.agg-grouping-count{border-radius:var(--luzmo-border-radius-full,999rem);background:var(--luzmo-primary-inverse-color);min-width:1.25em;color:var(--agg-accent,var(--luzmo-primary));font-size:.6875rem;font-weight:var(--luzmo-font-weight-bold);justify-content:center;align-items:center;padding:0 .25em;line-height:1.4;display:inline-flex}:host{--luzmo-formula-font-size:var(--luzmo-font-size);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-m);--luzmo-formula-control-height:calc(var(--luzmo-component-height) - 2 * var(--luzmo-spacing-1))}:host([size=s]){--luzmo-formula-font-size:var(--luzmo-font-size-s);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-s);--luzmo-formula-control-height:calc(var(--luzmo-component-height-s) - 2 * var(--luzmo-spacing-1))}:host([size=l]){--luzmo-formula-font-size:var(--luzmo-font-size-l);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-l);--luzmo-formula-control-height:calc(var(--luzmo-component-height-l) - 2 * var(--luzmo-spacing-1))}:host([size=xl]){--luzmo-formula-font-size:var(--luzmo-font-size-xl);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-xl);--luzmo-formula-control-height:calc(var(--luzmo-component-height-xl) - 2 * var(--luzmo-spacing-1))}`,d=class extends r.o{constructor(...e){super(...e),this.display=`rich`,this._groupingDataMap=i.n()}static{this.styles=(0,s.unsafeCSS)(u)}_createStore(){return new r.t}_shouldLoadInput(){return!1}_canEmitExpression(){return!1}_applyExternalExpression(){if(this.display===`text`){this._rootContent=``;return}this._store.clearWidgets(),this._rootContent=this._store.transformToAggregationWidgetSyntax(this.expression??``)}willUpdate(e){super.willUpdate(e),e.has(`display`)&&!e.has(`expression`)&&this._applyExternalExpression()}render(){return this.display===`text`?this._renderTextFormula():this._renderPillFormula()}_renderPillFormula(){return s.html`<span class="formula-pills" part="formula">${this._renderPillNodes(this._rootContent)}</span>`}_renderPillNodes(e){let t=[],n=new RegExp(r.h.source,`gm`),i=0,a;for(;(a=n.exec(e))!==null;){a.index>i&&t.push(this._renderOperatorText(e.slice(i,a.index)));let r=a[2],o=a[3];r?t.push(this._renderColumnPill(r)):o&&t.push(this._renderAggregationPill(o)),i=n.lastIndex}return i<e.length&&t.push(this._renderOperatorText(e.slice(i))),t}_renderOperatorText(e){return s.html`<span class="formula-operator">${e}</span>`}_renderColumnPill(e){let[t,n]=e.split(`:`),r=this._datasets.find(e=>e.id===t)?.columns.find(e=>e.columnId===n);if(this._store.loading&&!r){let e=(0,l.msg)(`Loading column`,{desc:`Accessible label for a column pill whose label is still loading`});return s.html`<span class="column-pill-wrapper"
|
|
21
21
|
><span class="column-pill" title=${e}
|
|
22
22
|
><span class="column-pill-loading">
|
|
23
23
|
<luzmo-progress-circle indeterminate size="s" .label=${e}></luzmo-progress-circle></span
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type Completion } from '@codemirror/autocomplete';
|
|
2
|
-
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
3
|
-
import { LuzmoElement } from '
|
|
4
|
-
import type { FormulaEditorStore } from '
|
|
2
|
+
import { type PropertyValues, type TemplateResult } from '../../../node_modules/lit';
|
|
3
|
+
import { LuzmoElement } from '../../utils/base';
|
|
4
|
+
import type { FormulaEditorStore } from '../../utils/formula/store/formula-editor-store';
|
|
5
5
|
import type { FormulaEditorDataset } from '../../types/formula.types';
|
|
6
6
|
import '@luzmo/lucero/progress-circle';
|
|
7
7
|
import './pills/formula-empty-argument-pill';
|
|
@@ -22,7 +22,7 @@ declare const LuzmoFormulaCodeMirror_base: (new (...args: any[]) => {
|
|
|
22
22
|
* @fires {CustomEvent<void>} luzmo-input-focused - Fired when the editor gains focus.
|
|
23
23
|
*/
|
|
24
24
|
export declare class LuzmoFormulaCodeMirror extends LuzmoFormulaCodeMirror_base {
|
|
25
|
-
static styles: import("lit").CSSResult;
|
|
25
|
+
static styles: import("../../../node_modules/lit").CSSResult;
|
|
26
26
|
/** The shared formula editor store. */
|
|
27
27
|
store?: FormulaEditorStore;
|
|
28
28
|
/** Id of the aggregation widget this input belongs to, or null for the root editor. */
|
|
@@ -2,9 +2,9 @@ import '@luzmo/lucero/icon';
|
|
|
2
2
|
import '@luzmo/lucero/overlay';
|
|
3
3
|
import '@luzmo/lucero/popover';
|
|
4
4
|
import '@luzmo/lucero/select';
|
|
5
|
-
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
6
|
-
import { LuzmoElement } from '
|
|
7
|
-
import type { FormulaEditorStore } from '
|
|
5
|
+
import { type PropertyValues, type TemplateResult } from '../../../../../node_modules/lit';
|
|
6
|
+
import { LuzmoElement } from '../../../../utils/base';
|
|
7
|
+
import type { FormulaEditorStore } from '../../../../utils/formula/store/formula-editor-store';
|
|
8
8
|
import { type AggregationWidgetConfig } from '../../../../types/formula.types';
|
|
9
9
|
declare const LuzmoFormulaAggregation_base: (new (...args: any[]) => {
|
|
10
10
|
language: string;
|
|
@@ -16,7 +16,7 @@ declare const LuzmoFormulaAggregation_base: (new (...args: any[]) => {
|
|
|
16
16
|
* expression input and (for `GROUPINEX`) an include / exclude column panel.
|
|
17
17
|
*/
|
|
18
18
|
export declare class LuzmoFormulaAggregation extends LuzmoFormulaAggregation_base {
|
|
19
|
-
static styles: import("lit").CSSResult;
|
|
19
|
+
static styles: import("../../../../../node_modules/lit").CSSResult;
|
|
20
20
|
/** Configuration for this aggregation widget (set by the CodeMirror widget). */
|
|
21
21
|
config: AggregationWidgetConfig['data'];
|
|
22
22
|
/** The shared formula editor store (set by the CodeMirror widget). */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
2
|
-
import { LuzmoElement } from '
|
|
3
|
-
import type { FormulaEditorStore } from '
|
|
1
|
+
import { type PropertyValues, type TemplateResult } from '../../../../../node_modules/lit';
|
|
2
|
+
import { LuzmoElement } from '../../../../utils/base';
|
|
3
|
+
import type { FormulaEditorStore } from '../../../../utils/formula/store/formula-editor-store';
|
|
4
4
|
declare const LuzmoFormulaEmptyArgumentPill_base: (new (...args: any[]) => {
|
|
5
5
|
language: string;
|
|
6
6
|
}) & typeof LuzmoElement;
|
|
@@ -10,7 +10,7 @@ declare const LuzmoFormulaEmptyArgumentPill_base: (new (...args: any[]) => {
|
|
|
10
10
|
* dropped columns / functions / aggregations and lets the user type a literal value.
|
|
11
11
|
*/
|
|
12
12
|
export declare class LuzmoFormulaEmptyArgumentPill extends LuzmoFormulaEmptyArgumentPill_base {
|
|
13
|
-
static styles: import("lit").CSSResult;
|
|
13
|
+
static styles: import("../../../../../node_modules/lit").CSSResult;
|
|
14
14
|
emptyArgumentId: string;
|
|
15
15
|
parentAggregationWidgetId: string | null;
|
|
16
16
|
store?: FormulaEditorStore;
|
|
@@ -3,8 +3,8 @@ import '@luzmo/lucero/field-label';
|
|
|
3
3
|
import '@luzmo/lucero/icon';
|
|
4
4
|
import '@luzmo/lucero/select';
|
|
5
5
|
import '@luzmo/lucero/tooltip';
|
|
6
|
-
import { type TemplateResult } from 'lit';
|
|
7
|
-
import { type ElementSize } from '
|
|
6
|
+
import { type TemplateResult } from '../../../../node_modules/lit';
|
|
7
|
+
import { type ElementSize } from '../../../utils/base';
|
|
8
8
|
import type { FormulaEditorDataset } from '../../../types/formula.types';
|
|
9
9
|
export interface IncludeExcludePanelParams {
|
|
10
10
|
/** The linked datasets whose columns can be included / excluded. */
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
const e=require("./base-ZuhO2UZd.cjs"),t=require("./decorate-DCJt-2rt.cjs"),n=require("./localized-mixin-BPOcHne5.cjs"),r=require("./calculate-data-field-icon-DenGmW74.cjs"),i=require("./localize-D3i4Epy_.cjs"),a=require("./adapter-BKowFrlw.cjs"),o=require("./formula-display-store-
|
|
20
|
+
const e=require("./base-ZuhO2UZd.cjs"),t=require("./decorate-DCJt-2rt.cjs"),n=require("./localized-mixin-BPOcHne5.cjs"),r=require("./calculate-data-field-icon-DenGmW74.cjs"),i=require("./localize-D3i4Epy_.cjs"),a=require("./adapter-BKowFrlw.cjs"),o=require("./formula-display-store-CTXbAK2f.cjs"),s=require("./groupings-n-soRcZA.cjs"),c=require("./resolve-column-presentation-DUETRVCH.cjs"),l=require("./icon-element-2Qrd4w7o.cjs");let u=require("@luzmo/icons");require("@luzmo/lucero/overlay"),require("@luzmo/lucero/popover");let d=require("lit"),f=require("lit/decorators.js"),p=require("@lit/localize");require("@luzmo/lucero/icon"),require("@luzmo/lucero/select"),require("@luzmo/lucero/tooltip"),require("@luzmo/lucero/action-button"),require("@luzmo/lucero/field-label"),require("@luzmo/lucero/progress-circle");var m=[],h=[];(()=>{let e=`lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o`.split(`,`).map(e=>e?parseInt(e,36):1);for(let t=0,n=0;t<e.length;t++)(t%2?h:m).push(n+=e[t])})();function g(e){if(e<768)return!1;for(let t=0,n=m.length;;){let r=t+n>>1;if(e<m[r])n=r;else if(e>=h[r])t=r+1;else return!0;if(t==n)return!1}}function _(e){return e>=127462&&e<=127487}var v=8205;function y(e,t,n=!0,r=!0){return(n?ee:b)(e,t,r)}function ee(e,t,n){if(t==e.length)return t;t&&te(e.charCodeAt(t))&&ne(e.charCodeAt(t-1))&&t--;let r=x(e,t);for(t+=re(r);t<e.length;){let i=x(e,t);if(r==v||i==v||n&&g(i))t+=re(i),r=i;else if(_(i)){let n=0,r=t-2;for(;r>=0&&_(x(e,r));)n++,r-=2;if(n%2==0)break;t+=2}else break}return t}function b(e,t,n){for(;t>0;){let r=ee(e,t-2,n);if(r<t)return r;t--}return 0}function x(e,t){let n=e.charCodeAt(t);if(!ne(n)||t+1==e.length)return n;let r=e.charCodeAt(t+1);return te(r)?(n-55296<<10)+(r-56320)+65536:n}function te(e){return e>=56320&&e<57344}function ne(e){return e>=55296&&e<56320}function re(e){return e<65536?1:2}var S=class e{lineAt(e){if(e<0||e>this.length)throw RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){[e,t]=fe(this,e,t);let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(t,this.length,r,1),ie.from(r,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=fe(this,e,t);let n=[];return this.decompose(e,t,n,0),ie.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),r=new ce(this),i=new ce(e);for(let e=t,a=t;;){if(r.next(e),i.next(e),e=0,r.lineBreak!=i.lineBreak||r.done!=i.done||r.value!=i.value)return!1;if(a+=r.value.length,r.done||a>=n)return!0}}iter(e=1){return new ce(this,e)}iterRange(e,t=this.length){return new le(this,e,t)}iterLines(e,t){let n;if(e==null)n=this.iter();else{t??=this.lines+1;let r=this.line(e).from;n=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new ue(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(t){if(t.length==0)throw RangeError(`A document must have at least one line`);return t.length==1&&!t[0]?e.empty:t.length<=32?new C(t):ie.from(C.split(t,[]))}},C=class e extends S{constructor(e,t=ae(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.text[i],o=r+a.length;if((t?n:o)>=e)return new de(r,o,n,a);r=o+1,n++}}decompose(t,n,r,i){let a=t<=0&&n>=this.length?this:new e(se(this.text,t,n),Math.min(n,this.length)-Math.max(0,t));if(i&1){let t=r.pop(),n=oe(a.text,t.text.slice(),0,a.length);if(n.length<=32)r.push(new e(n,t.length+a.length));else{let t=n.length>>1;r.push(new e(n.slice(0,t)),new e(n.slice(t)))}}else r.push(a)}replace(t,n,r){if(!(r instanceof e))return super.replace(t,n,r);[t,n]=fe(this,t,n);let i=oe(this.text,oe(r.text,se(this.text,0,t)),n),a=this.length+r.length-(n-t);return i.length<=32?new e(i,a):ie.from(e.split(i,[]),a)}sliceString(e,t=this.length,n=`
|
|
21
21
|
`){[e,t]=fe(this,e,t);let r=``;for(let i=0,a=0;i<=t&&a<this.text.length;a++){let o=this.text[a],s=i+o.length;i>e&&a&&(r+=n),e<s&&t>i&&(r+=o.slice(Math.max(0,e-i),t-i)),i=s+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(t,n){let r=[],i=-1;for(let a of t)r.push(a),i+=a.length+1,r.length==32&&(n.push(new e(r,i)),r=[],i=-1);return i>-1&&n.push(new e(r,i)),n}},ie=class e extends S{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let t of e)this.lines+=t.lines}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.children[i],o=r+a.length,s=n+a.lines-1;if((t?s:o)>=e)return a.lineInner(e,t,n,r);r=o+1,n=s+1}}decompose(e,t,n,r){for(let i=0,a=0;a<=t&&i<this.children.length;i++){let o=this.children[i],s=a+o.length;if(e<=s&&t>=a){let i=r&(a<=e|(s>=t?2:0));a>=e&&s<=t&&!i?n.push(o):o.decompose(e-a,t-a,n,i)}a=s+1}}replace(t,n,r){if([t,n]=fe(this,t,n),r.lines<this.lines)for(let i=0,a=0;i<this.children.length;i++){let o=this.children[i],s=a+o.length;if(t>=a&&n<=s){let c=o.replace(t-a,n-a,r),l=this.lines-o.lines+c.lines;if(c.lines<l>>4&&c.lines>l>>6){let a=this.children.slice();return a[i]=c,new e(a,this.length-(n-t)+r.length)}return super.replace(a,s,c)}a=s+1}return super.replace(t,n,r)}sliceString(e,t=this.length,n=`
|
|
22
22
|
`){[e,t]=fe(this,e,t);let r=``;for(let i=0,a=0;i<this.children.length&&a<=t;i++){let o=this.children[i],s=a+o.length;a>e&&i&&(r+=n),e<s&&t>a&&(r+=o.sliceString(e-a,t-a,n)),a=s+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(t,n){if(!(t instanceof e))return 0;let r=0,[i,a,o,s]=n>0?[0,0,this.children.length,t.children.length]:[this.children.length-1,t.children.length-1,-1,-1];for(;;i+=n,a+=n){if(i==o||a==s)return r;let e=this.children[i],c=t.children[a];if(e!=c)return r+e.scanIdentical(c,n);r+=e.length+1}}static from(t,n=t.reduce((e,t)=>e+t.length+1,-1)){let r=0;for(let e of t)r+=e.lines;if(r<32){let e=[];for(let n of t)n.flatten(e);return new C(e,n)}let i=Math.max(32,r>>5),a=i<<1,o=i>>1,s=[],c=0,l=-1,u=[];function d(t){let n;if(t.lines>a&&t instanceof e)for(let e of t.children)d(e);else t.lines>o&&(c>o||!c)?(f(),s.push(t)):t instanceof C&&c&&(n=u[u.length-1])instanceof C&&t.lines+n.lines<=32?(c+=t.lines,l+=t.length+1,u[u.length-1]=new C(n.text.concat(t.text),n.length+1+t.length)):(c+t.lines>i&&f(),c+=t.lines,l+=t.length+1,u.push(t))}function f(){c!=0&&(s.push(u.length==1?u[0]:e.from(u,l)),l=-1,c=u.length=0)}for(let e of t)d(e);return f(),s.length==1?s[0]:new e(s,n)}};S.empty=new C([``],0);function ae(e){let t=-1;for(let n of e)t+=n.length+1;return t}function oe(e,t,n=0,r=1e9){for(let i=0,a=0,o=!0;a<e.length&&i<=r;a++){let s=e[a],c=i+s.length;c>=n&&(c>r&&(s=s.slice(0,r-i)),i<n&&(s=s.slice(n-i)),o?(t[t.length-1]+=s,o=!1):t.push(s)),i=c+1}return t}function se(e,t,n){return oe(e,[``],t,n)}var ce=class{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value=``,this.nodes=[e],this.offsets=[t>0?1:(e instanceof C?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],i=this.offsets[n],a=i>>1,o=r instanceof C?r.text.length:r.children.length;if(a==(t>0?o:0)){if(n==0)return this.done=!0,this.value=``,this;t>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((i&1)==(t>0?0:1)){if(this.offsets[n]+=t,e==0)return this.lineBreak=!0,this.value=`
|
|
23
23
|
`,this;e--}else if(r instanceof C){let i=r.text[a+(t<0?-1:0)];if(this.offsets[n]+=t,i.length>Math.max(0,e))return this.value=e==0?i:t>0?i.slice(e):i.slice(0,i.length-e),this;e-=i.length}else{let i=r.children[a+(t<0?-1:0)];e>i.length?(e-=i.length,this.offsets[n]+=t):(t<0&&this.offsets[n]--,this.nodes.push(i),this.offsets.push(t>0?1:(i instanceof C?i.text.length:i.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},le=class{constructor(e,t,n){this.value=``,this.done=!1,this.cursor=new ce(e,t>n?-1:1),this.pos=t>n?e.length:0,this.from=Math.min(t,n),this.to=Math.max(t,n)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value=``,this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let n=t<0?this.pos-this.from:this.to-this.pos;e>n&&(e=n),n-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=n?r:t<0?r.slice(r.length-n):r.slice(0,n),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=``}},ue=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value=``,this.done=!1}next(e=0){let{done:t,lineBreak:n,value:r}=this.inner.next(e);return t&&this.afterBreak?(this.value=``,this.afterBreak=!1):t?(this.done=!0,this.value=``):n?this.afterBreak?this.value=``:(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<`u`&&(S.prototype[Symbol.iterator]=function(){return this.iter()},ce.prototype[Symbol.iterator]=le.prototype[Symbol.iterator]=ue.prototype[Symbol.iterator]=function(){return this});var de=class{constructor(e,t,n,r){this.from=e,this.to=t,this.number=n,this.text=r}get length(){return this.to-this.from}};function fe(e,t,n){return t=Math.max(0,Math.min(e.length,t)),[t,Math.max(t,Math.min(e.length,n))]}function w(e,t,n=!0,r=!0){return y(e,t,n,r)}function pe(e){return e>=56320&&e<57344}function me(e){return e>=55296&&e<56320}function he(e,t){let n=e.charCodeAt(t);if(!me(n)||t+1==e.length)return n;let r=e.charCodeAt(t+1);return pe(r)?(n-55296<<10)+(r-56320)+65536:n}function ge(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10)+55296,(e&1023)+56320))}function _e(e){return e<65536?1:2}var ve=/\r\n?|\n/,ye=(function(e){return e[e.Simple=0]=`Simple`,e[e.TrackDel=1]=`TrackDel`,e[e.TrackBefore=2]=`TrackBefore`,e[e.TrackAfter=3]=`TrackAfter`,e})(ye||={}),be=class e{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let n=this.sections[t+1];e+=n<0?this.sections[t]:n}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,n=0,r=0;t<this.sections.length;){let i=this.sections[t++],a=this.sections[t++];a<0?(e(n,r,i),r+=i):r+=a,n+=i}}iterChangedRanges(e,t=!1){Ce(this,e,t)}get invertedDesc(){let t=[];for(let e=0;e<this.sections.length;){let n=this.sections[e++],r=this.sections[e++];r<0?t.push(n,r):t.push(r,n)}return new e(t)}composeDesc(e){return this.empty?e:e.empty?this:Te(this,e)}mapDesc(e,t=!1){return e.empty?this:we(this,e,t)}mapPos(e,t=-1,n=ye.Simple){let r=0,i=0;for(let a=0;a<this.sections.length;){let o=this.sections[a++],s=this.sections[a++],c=r+o;if(s<0){if(c>e)return i+(e-r);i+=o}else{if(n!=ye.Simple&&c>=e&&(n==ye.TrackDel&&r<e&&c>e||n==ye.TrackBefore&&r<e||n==ye.TrackAfter&&c>e))return null;if(c>e||c==e&&t<0&&!o)return e==r||t<0?i:i+s;i+=s}r=c}if(e>r)throw RangeError(`Position ${e} is out of range for changeset of length ${r}`);return i}touchesRange(e,t=e){for(let n=0,r=0;n<this.sections.length&&r<=t;){let i=this.sections[n++],a=this.sections[n++],o=r+i;if(a>=0&&r<=t&&o>=e)return r<e&&o>t?`cover`:!0;r=o}return!1}toString(){let e=``;for(let t=0;t<this.sections.length;){let n=this.sections[t++],r=this.sections[t++];e+=(e?` `:``)+n+(r>=0?`:`+r:``)}return e}toJSON(){return this.sections}static fromJSON(t){if(!Array.isArray(t)||t.length%2||t.some(e=>typeof e!=`number`))throw RangeError(`Invalid JSON representation of ChangeDesc`);return new e(t)}static create(t){return new e(t)}},xe=class e extends be{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw RangeError(`Applying change set to a document with the wrong length`);return Ce(this,(t,n,r,i,a)=>e=e.replace(r,r+(n-t),a),!1),e}mapDesc(e,t=!1){return we(this,e,t,!0)}invert(t){let n=this.sections.slice(),r=[];for(let e=0,i=0;e<n.length;e+=2){let a=n[e],o=n[e+1];if(o>=0){n[e]=o,n[e+1]=a;let s=e>>1;for(;r.length<s;)r.push(S.empty);r.push(a?t.slice(i,i+a):S.empty)}i+=a}return new e(n,r)}compose(e){return this.empty?e:e.empty?this:Te(this,e,!0)}map(e,t=!1){return e.empty?this:we(this,e,t,!0)}iterChanges(e,t=!1){Ce(this,e,t)}get desc(){return be.create(this.sections)}filter(t){let n=[],r=[],i=[],a=new Ee(this);done:for(let e=0,o=0;;){let s=e==t.length?1e9:t[e++];for(;o<s||o==s&&a.len==0;){if(a.done)break done;let e=Math.min(a.len,s-o);T(i,e,-1);let t=a.ins==-1?-1:a.off==0?a.ins:0;T(n,e,t),t>0&&Se(r,n,a.text),a.forward(e),o+=e}let c=t[e++];for(;o<c;){if(a.done)break done;let e=Math.min(a.len,c-o);T(n,e,-1),T(i,e,a.ins==-1?-1:a.off==0?a.ins:0),a.forward(e),o+=e}}return{changes:new e(n,r),filtered:be.create(i)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let n=this.sections[t],r=this.sections[t+1];r<0?e.push(n):r==0?e.push([n]):e.push([n].concat(this.inserted[t>>1].toJSON()))}return e}static of(t,n,r){let i=[],a=[],o=0,s=null;function c(t=!1){if(!t&&!i.length)return;o<n&&T(i,n-o,-1);let r=new e(i,a);s=s?s.compose(r.map(s)):r,i=[],a=[],o=0}function l(t){if(Array.isArray(t))for(let e of t)l(e);else if(t instanceof e){if(t.length!=n)throw RangeError(`Mismatched change set length (got ${t.length}, expected ${n})`);c(),s=s?s.compose(t.map(s)):t}else{let{from:e,to:s=e,insert:l}=t;if(e>s||e<0||s>n)throw RangeError(`Invalid change range ${e} to ${s} (in doc of length ${n})`);let u=l?typeof l==`string`?S.of(l.split(r||ve)):l:S.empty,d=u.length;if(e==s&&d==0)return;e<o&&c(),e>o&&T(i,e-o,-1),T(i,s-e,d),Se(a,i,u),o=s}}return l(t),c(!s),s}static empty(t){return new e(t?[t,-1]:[],[])}static fromJSON(t){if(!Array.isArray(t))throw RangeError(`Invalid JSON representation of ChangeSet`);let n=[],r=[];for(let e=0;e<t.length;e++){let i=t[e];if(typeof i==`number`)n.push(i,-1);else if(!Array.isArray(i)||typeof i[0]!=`number`||i.some((e,t)=>t&&typeof e!=`string`))throw RangeError(`Invalid JSON representation of ChangeSet`);else if(i.length==1)n.push(i[0],0);else{for(;r.length<e;)r.push(S.empty);r[e]=S.of(i.slice(1)),n.push(i[0],r[e].length)}}return new e(n,r)}static createSet(t,n){return new e(t,n)}};function T(e,t,n,r=!1){if(t==0&&n<=0)return;let i=e.length-2;i>=0&&n<=0&&n==e[i+1]?e[i]+=t:i>=0&&t==0&&e[i]==0?e[i+1]+=n:r?(e[i]+=t,e[i+1]+=n):e.push(t,n)}function Se(e,t,n){if(n.length==0)return;let r=t.length-2>>1;if(r<e.length)e[e.length-1]=e[e.length-1].append(n);else{for(;e.length<r;)e.push(S.empty);e.push(n)}}function Ce(e,t,n){let r=e.inserted;for(let i=0,a=0,o=0;o<e.sections.length;){let s=e.sections[o++],c=e.sections[o++];if(c<0)i+=s,a+=s;else{let l=i,u=a,d=S.empty;for(;l+=s,u+=c,c&&r&&(d=d.append(r[o-2>>1])),!(n||o==e.sections.length||e.sections[o+1]<0);)s=e.sections[o++],c=e.sections[o++];t(i,l,a,u,d),i=l,a=u}}}function we(e,t,n,r=!1){let i=[],a=r?[]:null,o=new Ee(e),s=new Ee(t);for(let e=-1;;)if(o.done&&s.len||s.done&&o.len)throw Error(`Mismatched change set lengths`);else if(o.ins==-1&&s.ins==-1){let e=Math.min(o.len,s.len);T(i,e,-1),o.forward(e),s.forward(e)}else if(s.ins>=0&&(o.ins<0||e==o.i||o.off==0&&(s.len<o.len||s.len==o.len&&!n))){let t=s.len;for(T(i,s.ins,-1);t;){let n=Math.min(o.len,t);o.ins>=0&&e<o.i&&o.len<=n&&(T(i,0,o.ins),a&&Se(a,i,o.text),e=o.i),o.forward(n),t-=n}s.next()}else if(o.ins>=0){let t=0,n=o.len;for(;n;)if(s.ins==-1){let e=Math.min(n,s.len);t+=e,n-=e,s.forward(e)}else if(s.ins==0&&s.len<n)n-=s.len,s.next();else break;T(i,t,e<o.i?o.ins:0),a&&e<o.i&&Se(a,i,o.text),e=o.i,o.forward(o.len-n)}else if(o.done&&s.done)return a?xe.createSet(i,a):be.create(i);else throw Error(`Mismatched change set lengths`)}function Te(e,t,n=!1){let r=[],i=n?[]:null,a=new Ee(e),o=new Ee(t);for(let e=!1;;)if(a.done&&o.done)return i?xe.createSet(r,i):be.create(r);else if(a.ins==0)T(r,a.len,0,e),a.next();else if(o.len==0&&!o.done)T(r,0,o.ins,e),i&&Se(i,r,o.text),o.next();else if(a.done||o.done)throw Error(`Mismatched change set lengths`);else{let t=Math.min(a.len2,o.len),n=r.length;if(a.ins==-1){let n=o.ins==-1?-1:o.off?0:o.ins;T(r,t,n,e),i&&n&&Se(i,r,o.text)}else o.ins==-1?(T(r,a.off?0:a.len,t,e),i&&Se(i,r,a.textBit(t))):(T(r,a.off?0:a.len,o.off?0:o.ins,e),i&&!o.off&&Se(i,r,o.text));e=(a.ins>t||o.ins>=0&&o.len>t)&&(e||r.length>n),a.forward2(t),o.forward(t)}}var Ee=class{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,t=this.i-2>>1;return t>=e.length?S.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?S.empty:t[n].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}},De=class e{constructor(e,t,n){this.from=e,this.to=t,this.flags=n}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(t,n=-1){let r,i;return this.empty?r=i=t.mapPos(this.from,n):(r=t.mapPos(this.from,1),i=t.mapPos(this.to,-1)),r==this.from&&i==this.to?this:new e(r,i,this.flags)}extend(e,t=e,n=0){if(e<=this.anchor&&t>=this.anchor)return E.range(e,t,void 0,void 0,n);let r=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return E.range(this.anchor,r,void 0,void 0,n)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!t||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!=`number`||typeof e.head!=`number`)throw RangeError(`Invalid JSON representation for SelectionRange`);return E.range(e.anchor,e.head)}static create(t,n,r){return new e(t,n,r)}},E=class e{constructor(e,t){this.ranges=e,this.mainIndex=t}map(t,n=-1){return t.empty?this:e.create(this.ranges.map(e=>e.map(t,n)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let n=0;n<this.ranges.length;n++)if(!this.ranges[n].eq(e.ranges[n],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new e([this.main],0)}addRange(t,n=!0){return e.create([t].concat(this.ranges),n?0:this.mainIndex+1)}replaceRange(t,n=this.mainIndex){let r=this.ranges.slice();return r[n]=t,e.create(r,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(t){if(!t||!Array.isArray(t.ranges)||typeof t.main!=`number`||t.main>=t.ranges.length)throw RangeError(`Invalid JSON representation for EditorSelection`);return new e(t.ranges.map(e=>De.fromJSON(e)),t.main)}static single(t,n=t){return new e([e.range(t,n)],0)}static create(t,n=0){if(t.length==0)throw RangeError(`A selection needs at least one range`);for(let r=0,i=0;i<t.length;i++){let a=t[i];if(a.empty?a.from<=r:a.from<r)return e.normalized(t.slice(),n);r=a.to}return new e(t,n)}static cursor(e,t=0,n,r){return De.create(e,e,(t==0?0:t<0?8:16)|(n==null?7:Math.min(6,n))|(r??16777215)<<6)}static range(e,t,n,r,i){let a=(n??16777215)<<6|(r==null?7:Math.min(6,r));return!i&&e!=t&&(i=t<e?1:-1),t<e?De.create(t,e,48|a):De.create(e,t,(i?i<0?8:16:0)|a)}static normalized(t,n=0){let r=t[n];t.sort((e,t)=>e.from-t.from),n=t.indexOf(r);for(let r=1;r<t.length;r++){let i=t[r],a=t[r-1];if(i.empty?i.from<=a.to:i.from<a.to){let o=a.from,s=Math.max(i.to,a.to);r<=n&&n--,t.splice(--r,2,i.anchor>i.head?e.range(s,o):e.range(o,s))}}return new e(t,n)}};function Oe(e,t){for(let n of e.ranges)if(n.to>t)throw RangeError(`Selection points outside of document`)}var ke=0,D=class e{constructor(e,t,n,r,i){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=r,this.id=ke++,this.default=e([]),this.extensions=typeof i==`function`?i(this):i}get reader(){return this}static define(t={}){return new e(t.combine||(e=>e),t.compareInput||((e,t)=>e===t),t.compare||(t.combine?(e,t)=>e===t:Ae),!!t.static,t.enables)}of(e){return new je([],this,0,e)}compute(e,t){if(this.isStatic)throw Error(`Can't compute a static facet`);return new je(e,this,1,t)}computeN(e,t){if(this.isStatic)throw Error(`Can't compute a static facet`);return new je(e,this,2,t)}from(e,t){return t||=e=>e,this.compute([e],n=>t(n.field(e)))}};function Ae(e,t){return e==t||e.length==t.length&&e.every((e,n)=>e===t[n])}var je=class{constructor(e,t,n,r){this.dependencies=e,this.facet=t,this.type=n,this.value=r,this.id=ke++}dynamicSlot(e){let t=this.value,n=this.facet.compareInput,r=this.id,i=e[r]>>1,a=this.type==2,o=!1,s=!1,c=[];for(let t of this.dependencies)t==`doc`?o=!0:t==`selection`?s=!0:(e[t.id]??1)&1||c.push(e[t.id]);return{create(e){return e.values[i]=t(e),1},update(e,r){if(o&&r.docChanged||s&&(r.docChanged||r.selection)||Ne(e,c)){let r=t(e);if(a?!Me(r,e.values[i],n):!n(r,e.values[i]))return e.values[i]=r,1}return 0},reconfigure:(e,o)=>{let s,c=o.config.address[r];if(c!=null){let r=Ke(o,c);if(this.dependencies.every(t=>t instanceof D?o.facet(t)===e.facet(t):t instanceof Ie?o.field(t,!1)==e.field(t,!1):!0)||(a?Me(s=t(e),r,n):n(s=t(e),r)))return e.values[i]=r,0}else s=t(e);return e.values[i]=s,1}}}};function Me(e,t,n){if(e.length!=t.length)return!1;for(let r=0;r<e.length;r++)if(!n(e[r],t[r]))return!1;return!0}function Ne(e,t){let n=!1;for(let r of t)Ge(e,r)&1&&(n=!0);return n}function Pe(e,t,n){let r=n.map(t=>e[t.id]),i=n.map(e=>e.type),a=r.filter(e=>!(e&1)),o=e[t.id]>>1;function s(e){let n=[];for(let t=0;t<r.length;t++){let a=Ke(e,r[t]);if(i[t]==2)for(let e of a)n.push(e);else n.push(a)}return t.combine(n)}return{create(e){for(let t of r)Ge(e,t);return e.values[o]=s(e),1},update(e,n){if(!Ne(e,a))return 0;let r=s(e);return t.compare(r,e.values[o])?0:(e.values[o]=r,1)},reconfigure(e,i){let a=Ne(e,r),c=i.config.facets[t.id],l=i.facet(t);if(c&&!a&&Ae(n,c))return e.values[o]=l,0;let u=s(e);return t.compare(u,l)?(e.values[o]=l,0):(e.values[o]=u,1)}}}var Fe=D.define({static:!0}),Ie=class e{constructor(e,t,n,r,i){this.id=e,this.createF=t,this.updateF=n,this.compareF=r,this.spec=i,this.provides=void 0}static define(t){let n=new e(ke++,t.create,t.update,t.compare||((e,t)=>e===t),t);return t.provide&&(n.provides=t.provide(n)),n}create(e){return(e.facet(Fe).find(e=>e.field==this)?.create||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:e=>(e.values[t]=this.create(e),1),update:(e,n)=>{let r=e.values[t],i=this.updateF(r,n);return this.compareF(r,i)?0:(e.values[t]=i,1)},reconfigure:(e,n)=>{let r=e.facet(Fe),i=n.facet(Fe),a;return(a=r.find(e=>e.field==this))&&a!=i.find(e=>e.field==this)?(e.values[t]=a.create(e),1):n.config.address[this.id]==null?(e.values[t]=this.create(e),1):(e.values[t]=n.field(this),0)}}}init(e){return[this,Fe.of({field:this,create:e})]}get extension(){return this}},Le={lowest:4,low:3,default:2,high:1,highest:0};function Re(e){return t=>new Be(t,e)}var ze={highest:Re(Le.highest),high:Re(Le.high),default:Re(Le.default),low:Re(Le.low),lowest:Re(Le.lowest)},Be=class{constructor(e,t){this.inner=e,this.prec=t}},Ve=class e{of(e){return new He(this,e)}reconfigure(t){return e.reconfigure.of({compartment:this,extension:t})}get(e){return e.config.compartments.get(this)}},He=class{constructor(e,t){this.compartment=e,this.inner=t}},Ue=class e{constructor(e,t,n,r,i,a){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=r,this.staticValues=i,this.facets=a,this.statusTemplate=[];this.statusTemplate.length<n.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return t==null?e.default:this.staticValues[t>>1]}static resolve(t,n,r){let i=[],a=Object.create(null),o=new Map;for(let e of We(t,n,o))e instanceof Ie?i.push(e):(a[e.facet.id]||(a[e.facet.id]=[])).push(e);let s=Object.create(null),c=[],l=[];for(let e of i)s[e.id]=l.length<<1,l.push(t=>e.slot(t));let u=r?.config.facets;for(let e in a){let t=a[e],n=t[0].facet,i=u&&u[e]||[];if(t.every(e=>e.type==0))if(s[n.id]=c.length<<1|1,Ae(i,t))c.push(r.facet(n));else{let e=n.combine(t.map(e=>e.value));c.push(r&&n.compare(e,r.facet(n))?r.facet(n):e)}else{for(let e of t)e.type==0?(s[e.id]=c.length<<1|1,c.push(e.value)):(s[e.id]=l.length<<1,l.push(t=>e.dynamicSlot(t)));s[n.id]=l.length<<1,l.push(e=>Pe(e,n,t))}}return new e(t,o,l.map(e=>e(s)),s,c,a)}};function We(e,t,n){let r=[[],[],[],[],[]],i=new Map;function a(e,o){let s=i.get(e);if(s!=null){if(s<=o)return;let t=r[s].indexOf(e);t>-1&&r[s].splice(t,1),e instanceof He&&n.delete(e.compartment)}if(i.set(e,o),Array.isArray(e))for(let t of e)a(t,o);else if(e instanceof He){if(n.has(e.compartment))throw RangeError(`Duplicate use of compartment in extensions`);let r=t.get(e.compartment)||e.inner;n.set(e.compartment,r),a(r,o)}else if(e instanceof Be)a(e.inner,e.prec);else if(e instanceof Ie)r[o].push(e),e.provides&&a(e.provides,o);else if(e instanceof je)r[o].push(e),e.facet.extensions&&a(e.facet.extensions,Le.default);else{let t=e.extension;if(!t)throw Error(`Unrecognized extension value in extension set (${e}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);a(t,o)}}return a(e,Le.default),r.reduce((e,t)=>e.concat(t))}function Ge(e,t){if(t&1)return 2;let n=t>>1,r=e.status[n];if(r==4)throw Error(`Cyclic dependency between fields and/or facets`);if(r&2)return r;e.status[n]=4;let i=e.computeSlot(e,e.config.dynamicSlots[n]);return e.status[n]=2|i}function Ke(e,t){return t&1?e.config.staticValues[t>>1]:e.values[t>>1]}var qe=D.define(),Je=D.define({combine:e=>e.some(e=>e),static:!0}),Ye=D.define({combine:e=>e.length?e[0]:void 0,static:!0}),Xe=D.define(),Ze=D.define(),Qe=D.define(),$e=D.define({combine:e=>e.length?e[0]:!1}),et=class{constructor(e,t){this.type=e,this.value=t}static define(){return new tt}},tt=class{of(e){return new et(this,e)}},nt=class{constructor(e){this.map=e}of(e){return new O(this,e)}},O=class e{constructor(e,t){this.type=e,this.value=t}map(t){let n=this.type.map(this.value,t);return n===void 0?void 0:n==this.value?this:new e(this.type,n)}is(e){return this.type==e}static define(e={}){return new nt(e.map||(e=>e))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let r of e){let e=r.map(t);e&&n.push(e)}return n}};O.reconfigure=O.define(),O.appendConfig=O.define();var k=class e{constructor(t,n,r,i,a,o){this.startState=t,this.changes=n,this.selection=r,this.effects=i,this.annotations=a,this.scrollIntoView=o,this._doc=null,this._state=null,r&&Oe(r,n.newLength),a.some(t=>t.type==e.time)||(this.annotations=a.concat(e.time.of(Date.now())))}static create(t,n,r,i,a,o){return new e(t,n,r,i,a,o)}get newDoc(){return this._doc||=this.changes.apply(this.startState.doc)}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(t){let n=this.annotation(e.userEvent);return!!(n&&(n==t||n.length>t.length&&n.slice(0,t.length)==t&&n[t.length]==`.`))}};k.time=et.define(),k.userEvent=et.define(),k.addToHistory=et.define(),k.remote=et.define();function rt(e,t){let n=[];for(let r=0,i=0;;){let a,o;if(r<e.length&&(i==t.length||t[i]>=e[r]))a=e[r++],o=e[r++];else if(i<t.length)a=t[i++],o=t[i++];else return n;!n.length||n[n.length-1]<a?n.push(a,o):n[n.length-1]<o&&(n[n.length-1]=o)}}function it(e,t,n){let r,i,a;return n?(r=t.changes,i=xe.empty(t.changes.length),a=e.changes.compose(t.changes)):(r=t.changes.map(e.changes),i=e.changes.mapDesc(t.changes,!0),a=e.changes.compose(r)),{changes:a,selection:t.selection?t.selection.map(i):e.selection?.map(r),effects:O.mapEffects(e.effects,r).concat(O.mapEffects(t.effects,i)),annotations:e.annotations.length?e.annotations.concat(t.annotations):t.annotations,scrollIntoView:e.scrollIntoView||t.scrollIntoView}}function at(e,t,n){let r=t.selection,i=ut(t.annotations);return t.userEvent&&(i=i.concat(k.userEvent.of(t.userEvent))),{changes:t.changes instanceof xe?t.changes:xe.of(t.changes||[],n,e.facet(Ye)),selection:r&&(r instanceof E?r:E.single(r.anchor,r.head)),effects:ut(t.effects),annotations:i,scrollIntoView:!!t.scrollIntoView}}function ot(e,t,n){let r=at(e,t.length?t[0]:{},e.doc.length);t.length&&t[0].filter===!1&&(n=!1);for(let i=1;i<t.length;i++){t[i].filter===!1&&(n=!1);let a=!!t[i].sequential;r=it(r,at(e,t[i],a?r.changes.newLength:e.doc.length),a)}let i=k.create(e,r.changes,r.selection,r.effects,r.annotations,r.scrollIntoView);return ct(n?st(i):i)}function st(e){let t=e.startState,n=!0;for(let r of t.facet(Xe)){let t=r(e);if(t===!1){n=!1;break}Array.isArray(t)&&(n=n===!0?t:rt(n,t))}if(n!==!0){let r,i;if(n===!1)i=e.changes.invertedDesc,r=xe.empty(t.doc.length);else{let t=e.changes.filter(n);r=t.changes,i=t.filtered.mapDesc(t.changes).invertedDesc}e=k.create(t,r,e.selection&&e.selection.map(i),O.mapEffects(e.effects,i),e.annotations,e.scrollIntoView)}let r=t.facet(Ze);for(let n=r.length-1;n>=0;n--){let i=r[n](e);e=i instanceof k?i:Array.isArray(i)&&i.length==1&&i[0]instanceof k?i[0]:ot(t,ut(i),!1)}return e}function ct(e){let t=e.startState,n=t.facet(Qe),r=e;for(let i=n.length-1;i>=0;i--){let a=n[i](e);a&&Object.keys(a).length&&(r=it(r,at(t,a,e.changes.newLength),!0))}return r==e?e:k.create(t,e.changes,e.selection,r.effects,r.annotations,r.scrollIntoView)}var lt=[];function ut(e){return e==null?lt:Array.isArray(e)?e:[e]}var dt=(function(e){return e[e.Word=0]=`Word`,e[e.Space=1]=`Space`,e[e.Other=2]=`Other`,e})(dt||={}),ft=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,pt;try{pt=RegExp(`[\\p{Alphabetic}\\p{Number}_]`,`u`)}catch{}function mt(e){if(pt)return pt.test(e);for(let t=0;t<e.length;t++){let n=e[t];if(/\w/.test(n)||n>``&&(n.toUpperCase()!=n.toLowerCase()||ft.test(n)))return!0}return!1}function ht(e){return t=>{if(!/\S/.test(t))return dt.Space;if(mt(t))return dt.Word;for(let n=0;n<e.length;n++)if(t.indexOf(e[n])>-1)return dt.Word;return dt.Other}}var A=class e{constructor(e,t,n,r,i,a){this.config=e,this.doc=t,this.selection=n,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=i,a&&(a._state=this);for(let e=0;e<this.config.dynamicSlots.length;e++)Ge(this,e<<1);this.computeSlot=null}field(e,t=!0){let n=this.config.address[e.id];if(n==null){if(t)throw RangeError(`Field is not present in this state`);return}return Ge(this,n),Ke(this,n)}update(...e){return ot(this,e,!0)}applyTransaction(t){let n=this.config,{base:r,compartments:i}=n;for(let e of t.effects)e.is(Ve.reconfigure)?(n&&=(i=new Map,n.compartments.forEach((e,t)=>i.set(t,e)),null),i.set(e.value.compartment,e.value.extension)):e.is(O.reconfigure)?(n=null,r=e.value):e.is(O.appendConfig)&&(n=null,r=ut(r).concat(e.value));let a;n?a=t.startState.values.slice():(n=Ue.resolve(r,i,this),a=new e(n,this.doc,this.selection,n.dynamicSlots.map(()=>null),(e,t)=>t.reconfigure(e,this),null).values);let o=t.startState.facet(Je)?t.newSelection:t.newSelection.asSingle();new e(n,t.newDoc,o,a,(e,n)=>n.update(e,t),t)}replaceSelection(e){return typeof e==`string`&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:E.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),r=this.changes(n.changes),i=[n.range],a=ut(n.effects);for(let n=1;n<t.ranges.length;n++){let o=e(t.ranges[n]),s=this.changes(o.changes),c=s.map(r);for(let e=0;e<n;e++)i[e]=i[e].map(c);let l=r.mapDesc(s,!0);i.push(o.range.map(l)),r=r.compose(c),a=O.mapEffects(a,c).concat(O.mapEffects(ut(o.effects),l))}return{changes:r,selection:E.create(i,t.mainIndex),effects:a}}changes(t=[]){return t instanceof xe?t:xe.of(t,this.doc.length,this.facet(e.lineSeparator))}toText(t){return S.of(t.split(this.facet(e.lineSeparator)||ve))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return t==null?e.default:(Ge(this,t),Ke(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let n in e){let r=e[n];r instanceof Ie&&this.config.address[r.id]!=null&&(t[n]=r.spec.toJSON(this.field(e[n]),this))}return t}static fromJSON(t,n={},r){if(!t||typeof t.doc!=`string`)throw RangeError(`Invalid JSON representation for EditorState`);let i=[];if(r){for(let e in r)if(Object.prototype.hasOwnProperty.call(t,e)){let n=r[e],a=t[e];i.push(n.init(e=>n.spec.fromJSON(a,e)))}}return e.create({doc:t.doc,selection:E.fromJSON(t.selection),extensions:n.extensions?i.concat([n.extensions]):i})}static create(t={}){let n=Ue.resolve(t.extensions||[],new Map),r=t.doc instanceof S?t.doc:S.of((t.doc||``).split(n.staticFacet(e.lineSeparator)||ve)),i=t.selection?t.selection instanceof E?t.selection:E.single(t.selection.anchor,t.selection.head):E.single(0);return Oe(i,r.length),n.staticFacet(Je)||(i=i.asSingle()),new e(n,r,i,n.dynamicSlots.map(()=>null),(e,t)=>t.create(e),null)}get tabSize(){return this.facet(e.tabSize)}get lineBreak(){return this.facet(e.lineSeparator)||`
|
|
@@ -130,7 +130,7 @@ const e=require("./base-ZuhO2UZd.cjs"),t=require("./decorate-DCJt-2rt.cjs"),n=re
|
|
|
130
130
|
</div>
|
|
131
131
|
</div>
|
|
132
132
|
</div>
|
|
133
|
-
`}var yp=`:host{vertical-align:middle;padding-inline:var(--luzmo-spacing-1);font-family:var(--luzmo-font-family);white-space:normal;display:inline-flex}.aggregation-pill{gap:var(--luzmo-spacing-1);padding-block:var(--luzmo-spacing-1);border-radius:var(--luzmo-border-radius);background-color:var(--aggregation-accent,var(--luzmo-primary));color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));vertical-align:middle;--luzmo-option-highlight-selected-label-background-color:var(--aggregation-accent,var(--luzmo-primary));--luzmo-option-focus-indicator-color:var(--aggregation-accent,var(--luzmo-primary));--luzmo-l-hover:color-mix(in srgb, var(--aggregation-accent,var(--luzmo-primary)) 12%, transparent);--luzmo-l-key-focus:color-mix(in srgb, var(--aggregation-accent,var(--luzmo-primary)) 12%, transparent);--luzmo-l-down:color-mix(in srgb, var(--aggregation-accent,var(--luzmo-primary)) 22%, transparent);flex-direction:column;padding-inline:0;display:inline-flex}.aggregation-pill-row{min-height:var(--luzmo-formula-control-height,1.375rem);align-items:stretch;gap:var(--luzmo-spacing-1);display:inline-flex}luzmo-select{height:var(--luzmo-formula-control-height,1.375rem);color:inherit;flex:none;align-self:center}.aggregation-select{--luzmo-select-font-color-default:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-default-open:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-hover:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-hover-open:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-active:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-key-focus:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-default:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-default-open:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-hover:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-hover-open:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-active:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-key-focus:var(--luzmo-primary-inverse-color);--luzmo-select-font-weight:var(--luzmo-font-weight-bold);--luzmo-select-font-size:calc(.85 * var(--luzmo-formula-font-size,var(--luzmo-font-size)));--luzmo-select-inline-edge-to-content-quiet:var(--luzmo-spacing-3);--luzmo-select-spacing-edge-to-disclosure-icon:var(--luzmo-spacing-2);--luzmo-select-button-block-size:var(--luzmo-formula-control-height,1.375rem);--luzmo-select-button-line-height:var(--luzmo-formula-control-height,1.375rem);--luzmo-select-spacing-label-to-select-quiet:-1px}.function-select{margin-block:calc(-1 * var(--luzmo-spacing-1));--luzmo-select-focus-indicator-width:0px;border-start-start-radius:var(--luzmo-border-radius);border-end-start-radius:var(--luzmo-border-radius);align-self:stretch;align-items:center;display:inline-flex}.function-select.keyboard-focus:focus-within{outline:var(--luzmo-indicator-width) solid var(--luzmo-indicator-color);outline-offset:var(--luzmo-indicator-gap)}.aggregation-pill.readonly .aggregation-select{pointer-events:none}.aggregation-pill.readonly .function-select.keyboard-focus:focus-within{outline:none}.function-trigger-angle{color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-pill-disclosure-icon-size,var(--luzmo-font-size));pointer-events:none;align-items:center;margin-inline-start:calc(-1 * var(--luzmo-spacing-1));padding-inline-end:var(--luzmo-spacing-2);display:inline-flex}.grouping-trigger{align-items:center;gap:var(--luzmo-spacing-1);margin-inline:0;margin-block:calc(-1 * var(--luzmo-spacing-1));padding:0 var(--luzmo-spacing-3);color:var(--luzmo-primary-inverse-color);font-family:inherit;font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));cursor:pointer;background:0 0;border:none;border-start-end-radius:var(--luzmo-border-radius);border-end-end-radius:var(--luzmo-border-radius);align-self:stretch;display:inline-flex}.grouping-trigger[disabled]{cursor:default}.grouping-trigger:focus-visible{outline:var(--luzmo-indicator-width) solid var(--luzmo-indicator-color);outline-offset:var(--luzmo-indicator-gap)}.grouping-trigger-icon{font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));align-items:center;display:inline-flex}.grouping-trigger-angle{padding-inline:var(--luzmo-spacing-1);font-size:var(--luzmo-formula-pill-disclosure-icon-size,var(--luzmo-font-size));align-items:center;display:inline-flex}.grouping-trigger-count{border-radius:var(--luzmo-border-radius-full,999rem);background:var(--luzmo-primary-inverse-color);min-width:1.25em;color:var(--aggregation-accent,var(--luzmo-primary));font-size:.75em;font-weight:var(--luzmo-font-weight-bold);justify-content:center;align-items:center;padding:0 .25em;line-height:1.4;display:inline-flex}luzmo-popover.grouping-popover{--luzmo-popover-content-area-spacing-vertical:0}.grouping-menu{border-radius:var(--luzmo-popover-border-radius,var(--luzmo-border-radius));min-width:15rem;max-width:18rem;font-family:var(--luzmo-font-family);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));color:var(--luzmo-font-color);flex-direction:column;display:flex;overflow:hidden}.grouping-option{column-gap:var(--luzmo-spacing-3);row-gap:var(--luzmo-spacing-2);width:100%;padding:var(--luzmo-spacing-3) var(--luzmo-spacing-4);border:none;border-bottom:var(--luzmo-border-width) solid var(--luzmo-border-color);color:inherit;font-family:inherit;font-size:inherit;text-align:start;cursor:pointer;background:0 0;grid-template-columns:auto 1fr;align-items:center;display:grid}.grouping-option:last-child{border-bottom:none}.grouping-option:hover,.grouping-option:focus-visible{outline:none}.grouping-option:not([aria-checked=true]):hover,.grouping-option:not([aria-checked=true]):focus-visible{background-color:var(--luzmo-background-color-highlight)}.grouping-option[aria-checked=true]{background-color:var(--grouping-option-accent,var(--luzmo-background-color-highlight));color:var(--luzmo-primary-inverse-color)}.grouping-option-icon{font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));grid-area:1/1;align-items:center;display:inline-flex}.grouping-option-label{font-weight:var(--luzmo-font-weight-bold);grid-area:1/2}.grouping-option-desc{white-space:normal;opacity:.85;grid-area:2/1/auto/-1;font-size:.85em}.include-exclude-panel{background-color:var(--luzmo-background-color);min-width:14rem;color:var(--luzmo-font-color);font-family:var(--luzmo-font-family);white-space:normal;--luzmo-formula-include-exclude-icon-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));--luzmo-primary:var(--luzmo-formula-grouping-color-include-exclude,#f00f65);--luzmo-indicator-color:var(--luzmo-primary);--luzmo-option-icon-width:calc(var(--luzmo-font-size) * 1.4);flex-direction:column;display:flex}.include-exclude-panel .panel-header{align-items:center;gap:var(--luzmo-spacing-2);width:100%;padding:var(--luzmo-spacing-3) var(--luzmo-spacing-4);background-color:var(--luzmo-formula-grouping-color-include-exclude,#f00f65);color:var(--luzmo-primary-inverse-color);font-family:inherit;font-size:.6875rem;font-weight:var(--luzmo-font-weight-bold);letter-spacing:.04em;text-transform:uppercase;text-align:start;display:flex}.include-exclude-panel .panel-header.is-clickable{cursor:pointer;border:none}.include-exclude-panel .panel-header.is-clickable:focus-visible{outline:var(--luzmo-indicator-width) solid var(--luzmo-primary-inverse-color);outline-offset:calc(-1 * var(--luzmo-indicator-width))}.include-exclude-panel .panel-header-icon{font-size:var(--luzmo-formula-include-exclude-icon-size);align-items:center;display:inline-flex}.include-exclude-panel .panel-back{margin-inline:calc(-1 * var(--luzmo-spacing-1)) var(--luzmo-spacing-2);color:inherit;font-size:var(--luzmo-formula-include-exclude-icon-size);justify-content:center;align-items:center;display:inline-flex}.include-exclude-panel .panel-body{gap:var(--luzmo-spacing-3);padding:var(--luzmo-spacing-4);flex-direction:column;display:flex}.include-exclude-panel .field{gap:var(--luzmo-spacing-2);flex-direction:column;display:flex}.include-exclude-panel .divider{border:none;border-top:var(--luzmo-border-width) solid var(--luzmo-border-color);width:100%;margin:0}.include-exclude-panel luzmo-select{width:100%}.include-exclude-panel .tags{gap:var(--luzmo-spacing-2);flex-direction:column;display:flex}.include-exclude-panel .column{align-items:center;gap:var(--luzmo-spacing-1);outline:none;width:100%;display:flex}.include-exclude-panel .column-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.include-exclude-panel .column-action{flex:none}.include-exclude-panel .column-action-icon{align-items:center;display:inline-flex}.include-exclude-panel .empty{color:var(--luzmo-font-color-extra-dimmed,#888);font-size:var(--luzmo-font-size-s);margin:0}.include-exclude-panel[data-size=s]{--luzmo-option-icon-width:calc(var(--luzmo-font-size-s) * 1.4)}.include-exclude-panel[data-size=l]{--luzmo-option-icon-width:calc(var(--luzmo-font-size-l) * 1.4)}.include-exclude-panel[data-size=xl]{--luzmo-option-icon-width:calc(var(--luzmo-font-size-xl) * 1.4)}.include-exclude-panel[data-size=s] .panel-header{padding:var(--luzmo-spacing-2) var(--luzmo-spacing-3);font-size:.625rem}.include-exclude-panel[data-size=s] .panel-body{padding:var(--luzmo-spacing-3)}.include-exclude-panel[data-size=l] .panel-header{padding:var(--luzmo-spacing-4) var(--luzmo-spacing-5);font-size:.75rem}.include-exclude-panel[data-size=xl] .panel-header{padding:var(--luzmo-spacing-4) var(--luzmo-spacing-5);font-size:.8125rem}.include-exclude-panel[data-size=l] .panel-body,.include-exclude-panel[data-size=xl] .panel-body{padding:var(--luzmo-spacing-5)}luzmo-formula-codemirror{box-sizing:border-box;min-width:2.5rem;min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-spacing-2);border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-background-color);color:var(--luzmo-font-color);--luzmo-formula-column-pill-background:transparent;--luzmo-formula-column-pill-padding-inline:0px;--luzmo-formula-column-pill-trailing-space:0px;flex:0 auto;align-self:center;align-items:center;line-height:1;display:inline-flex;overflow:visible}`,bp=class extends n.t(e.i){constructor(...e){super(...e),this._groupingPageOverride=null,this._autoCompletionList=[],this._codeMirrorLoaded=o.c(),this._functionKeyboardFocus=!1,this._groupingTriggerId=`formula-grouping-${Math.random().toString(36).slice(2)}`,this._aggregationDataMap=o.a(),this._groupingDataMap=s.n(),this._handleFunctionFocus=e=>{if(!this._functionSelect)return;let t=e.composedPath();if(t.includes(this._functionSelect)){let e=t[0];this._functionKeyboardFocus=e instanceof Element&&e.matches(`:focus-visible`)}},this._handleFunctionBlur=e=>{this._functionSelect&&e.composedPath().includes(this._functionSelect)&&(this._functionKeyboardFocus=!1)},this._handleWidgetsChanged=()=>{this.requestUpdate()},this._handleDatasetsRefresh=()=>{this._recomputeAutoCompletion(),this.requestUpdate()},this._handleDocumentPointerdown=e=>{let t=this._groupingOverlay;!t?.open||this._isPointerInsidePopover(e)||(t.open=!1)}}static{this.styles=(0,d.unsafeCSS)(yp)}connectedCallback(){super.connectedCallback(),this.store?.addEventListener(`widgets-changed`,this._handleWidgetsChanged),this.store?.addEventListener(`refresh-decorations`,this._handleDatasetsRefresh),this._bindFunctionFocusListeners()}disconnectedCallback(){super.disconnectedCallback(),this.store?.removeEventListener(`widgets-changed`,this._handleWidgetsChanged),this.store?.removeEventListener(`refresh-decorations`,this._handleDatasetsRefresh),this._unbindFunctionFocusListeners(),document.removeEventListener(`pointerdown`,this._handleDocumentPointerdown,{capture:!0})}_bindFunctionFocusListeners(){let e=this._functionSelect;!e||this._functionFocusTarget===e||(this._functionFocusTarget=e,e.addEventListener(`focus`,this._handleFunctionFocus,{capture:!0}),e.addEventListener(`blur`,this._handleFunctionBlur,{capture:!0}))}_unbindFunctionFocusListeners(){this._functionFocusTarget&&=(this._functionFocusTarget.removeEventListener(`focus`,this._handleFunctionFocus,{capture:!0}),this._functionFocusTarget.removeEventListener(`blur`,this._handleFunctionBlur,{capture:!0}),void 0)}get _linkedDatasets(){return this.store?.datasets?.length?this.store.datasets:this.config.linkedDatasets}_recomputeAutoCompletion(){this._autoCompletionList=this.store&&this.config?this.store.getAutoCompletionList(this._linkedDatasets,this.store.nestedAggregation):[]}get _widget(){return this.store?.getWidget(this.config?.aggregationWidgetId)}get _groupingPage(){return this._groupingPageOverride?this._groupingPageOverride:this._widget?.grouping===o.g.GROUPINEX?`includeExclude`:`types`}willUpdate(e){this._ensureCodeMirrorLoaded(),(e.has(`store`)||e.has(`config`))&&this._recomputeAutoCompletion()}async _ensureCodeMirrorLoaded(){this._codeMirrorLoaded||=(await o.s(),!0)}firstUpdated(){this._bindFunctionFocusListeners(),this._focusNestedIfPending()}updated(e){let t=this._widget;t&&this._nestedCodeMirror&&this._nestedCodeMirror.content!==t.content&&this._nestedCodeMirror.setContent(t.content)}async _focusNestedIfPending(){if(!this.store||this.store.pendingFocusAggregationWidgetId!==this.config?.aggregationWidgetId)return;this.store.pendingFocusAggregationWidgetId=null;let e=this._nestedCodeMirror;e&&(await e.updateComplete,e.focusEditor())}_updateWidget(e){let t=this._widget;!t||!this.store||this.store.updateWidget({...t,...e})}_handleFunctionChange(e){let t=e.detail?.value?.[0];if(!t)return;let n=this._aggregationDataMap[t]?.arity??0;this._updateWidget({aggregationFunction:t,...n===0?{content:``}:{}})}_handleGroupingOptionClick(e){this._updateWidget({grouping:e,...e===o.g.GROUPINEX?{}:{includedColumns:[],excludedColumns:[]}}),e===o.g.GROUPINEX?this._groupingPageOverride=null:this._closeGroupingMenu()}_handleGroupingBack(){this._groupingPageOverride=`types`}_handleGroupingMenuOpened(e){e.target===e.currentTarget&&(this._groupingPageOverride=null,document.addEventListener(`pointerdown`,this._handleDocumentPointerdown,{capture:!0}))}_handleGroupingMenuClosed(e){e.target===e.currentTarget&&(this._groupingPageOverride=null,document.removeEventListener(`pointerdown`,this._handleDocumentPointerdown,{capture:!0}))}_isPointerInsidePopover(e){return e.composedPath().some(e=>e instanceof Element&&(e.classList.contains(`grouping-popover`)||e.classList.contains(`include-exclude-panel`)))}_closeGroupingMenu(){this._groupingOverlay&&(this._groupingOverlay.open=!1)}_handleNestedContentChanged(e){e.stopPropagation(),this._updateWidget({content:e.detail.content})}_handleIncludeExcludeChange(e,t){this._updateWidget({includedColumns:e,excludedColumns:t})}_renderGroupingTypesPage(e){return d.html`
|
|
133
|
+
`}var yp=`:host{vertical-align:middle;padding-inline:var(--luzmo-spacing-1);font-family:var(--luzmo-font-family);white-space:normal;display:inline-flex}.aggregation-pill{gap:var(--luzmo-spacing-1);padding-block:var(--luzmo-spacing-1);border-radius:var(--luzmo-border-radius);background-color:var(--aggregation-accent,var(--luzmo-primary));color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));vertical-align:middle;--luzmo-option-highlight-selected-label-background-color:var(--aggregation-accent,var(--luzmo-primary));--luzmo-option-focus-indicator-color:var(--aggregation-accent,var(--luzmo-primary));--luzmo-l-hover:color-mix(in srgb, var(--aggregation-accent,var(--luzmo-primary)) 12%, transparent);--luzmo-l-key-focus:color-mix(in srgb, var(--aggregation-accent,var(--luzmo-primary)) 12%, transparent);--luzmo-l-down:color-mix(in srgb, var(--aggregation-accent,var(--luzmo-primary)) 22%, transparent);flex-direction:column;padding-inline:0;display:inline-flex}.aggregation-pill-row{min-height:var(--luzmo-formula-control-height,1.375rem);align-items:stretch;gap:var(--luzmo-spacing-1);display:inline-flex}luzmo-select{height:var(--luzmo-formula-control-height,1.375rem);color:inherit;flex:none;align-self:center}.aggregation-select{--luzmo-select-font-color-default:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-default-open:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-hover:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-hover-open:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-active:var(--luzmo-primary-inverse-color);--luzmo-select-font-color-key-focus:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-default:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-default-open:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-hover:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-hover-open:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-active:var(--luzmo-primary-inverse-color);--luzmo-select-icon-color-key-focus:var(--luzmo-primary-inverse-color);--luzmo-select-font-weight:var(--luzmo-font-weight-bold);--luzmo-select-font-size:calc(.85 * var(--luzmo-formula-font-size,var(--luzmo-font-size)));--luzmo-select-inline-edge-to-content-quiet:var(--luzmo-spacing-3);--luzmo-select-spacing-edge-to-disclosure-icon:var(--luzmo-spacing-2);--luzmo-select-button-block-size:var(--luzmo-formula-control-height,1.375rem);--luzmo-select-button-line-height:var(--luzmo-formula-control-height,1.375rem);--luzmo-select-spacing-label-to-select-quiet:-1px}.function-select{margin-block:calc(-1 * var(--luzmo-spacing-1));--luzmo-select-focus-indicator-width:0px;border-start-start-radius:var(--luzmo-border-radius);border-end-start-radius:var(--luzmo-border-radius);align-self:stretch;align-items:center;display:inline-flex}.function-select.keyboard-focus:focus-within{outline:var(--luzmo-indicator-width) solid var(--luzmo-indicator-color);outline-offset:var(--luzmo-indicator-gap)}.aggregation-pill.readonly .aggregation-select{pointer-events:none}.aggregation-pill.readonly .function-select.keyboard-focus:focus-within{outline:none}.function-trigger-angle{color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-pill-disclosure-icon-size,var(--luzmo-font-size));pointer-events:none;align-items:center;margin-inline-start:calc(-1 * var(--luzmo-spacing-1));padding-inline-end:var(--luzmo-spacing-2);display:inline-flex}.grouping-trigger{align-items:center;gap:var(--luzmo-spacing-1);margin-inline:0;margin-block:calc(-1 * var(--luzmo-spacing-1));padding:0 var(--luzmo-spacing-3);color:var(--luzmo-primary-inverse-color);font-family:inherit;font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));cursor:pointer;background:0 0;border:none;border-start-end-radius:var(--luzmo-border-radius);border-end-end-radius:var(--luzmo-border-radius);align-self:stretch;display:inline-flex}.grouping-trigger[disabled]{cursor:default}.grouping-trigger:focus-visible{outline:var(--luzmo-indicator-width) solid var(--luzmo-indicator-color);outline-offset:var(--luzmo-indicator-gap)}.grouping-trigger-icon{font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));align-items:center;display:inline-flex}.grouping-trigger-angle{padding-inline:var(--luzmo-spacing-1);font-size:var(--luzmo-formula-pill-disclosure-icon-size,var(--luzmo-font-size));align-items:center;display:inline-flex}.grouping-trigger-count{border-radius:var(--luzmo-border-radius-full,999rem);background:var(--luzmo-primary-inverse-color);min-width:1.25em;color:var(--aggregation-accent,var(--luzmo-primary));font-size:.75em;font-weight:var(--luzmo-font-weight-bold);justify-content:center;align-items:center;padding:0 .25em;line-height:1.4;display:inline-flex}luzmo-popover.grouping-popover{--luzmo-popover-content-area-spacing-vertical:0}.grouping-menu{border-radius:var(--luzmo-popover-border-radius,var(--luzmo-border-radius));min-width:15rem;max-width:18rem;min-height:0;max-height:100%;font-family:var(--luzmo-font-family);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));color:var(--luzmo-font-color);flex-direction:column;display:flex;overflow:hidden}.grouping-option{column-gap:var(--luzmo-spacing-3);row-gap:var(--luzmo-spacing-2);width:100%;padding:var(--luzmo-spacing-3) var(--luzmo-spacing-4);border:none;border-bottom:var(--luzmo-border-width) solid var(--luzmo-border-color);color:inherit;font-family:inherit;font-size:inherit;text-align:start;cursor:pointer;background:0 0;grid-template-columns:auto 1fr;align-items:center;display:grid}.grouping-option:last-child{border-bottom:none}.grouping-option:hover,.grouping-option:focus-visible{outline:none}.grouping-option:not([aria-checked=true]):hover,.grouping-option:not([aria-checked=true]):focus-visible{background-color:var(--luzmo-background-color-highlight)}.grouping-option[aria-checked=true]{background-color:var(--grouping-option-accent,var(--luzmo-background-color-highlight));color:var(--luzmo-primary-inverse-color)}.grouping-option-icon{font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));grid-area:1/1;align-items:center;display:inline-flex}.grouping-option-label{font-weight:var(--luzmo-font-weight-bold);grid-area:1/2}.grouping-option-desc{white-space:normal;opacity:.85;grid-area:2/1/auto/-1;font-size:.85em}.include-exclude-panel{background-color:var(--luzmo-background-color);min-width:14rem;min-height:0;max-height:100%;color:var(--luzmo-font-color);font-family:var(--luzmo-font-family);white-space:normal;--luzmo-formula-include-exclude-icon-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));--luzmo-primary:var(--luzmo-formula-grouping-color-include-exclude,#f00f65);--luzmo-indicator-color:var(--luzmo-primary);--luzmo-option-icon-width:calc(var(--luzmo-font-size) * 1.4);flex-direction:column;display:flex}.include-exclude-panel .panel-header{align-items:center;gap:var(--luzmo-spacing-2);width:100%;padding:var(--luzmo-spacing-3) var(--luzmo-spacing-4);background-color:var(--luzmo-formula-grouping-color-include-exclude,#f00f65);color:var(--luzmo-primary-inverse-color);font-family:inherit;font-size:.6875rem;font-weight:var(--luzmo-font-weight-bold);letter-spacing:.04em;text-transform:uppercase;text-align:start;flex:none;display:flex}.include-exclude-panel .panel-header.is-clickable{cursor:pointer;border:none}.include-exclude-panel .panel-header.is-clickable:focus-visible{outline:var(--luzmo-indicator-width) solid var(--luzmo-primary-inverse-color);outline-offset:calc(-1 * var(--luzmo-indicator-width))}.include-exclude-panel .panel-header-icon{font-size:var(--luzmo-formula-include-exclude-icon-size);align-items:center;display:inline-flex}.include-exclude-panel .panel-back{margin-inline:calc(-1 * var(--luzmo-spacing-1)) var(--luzmo-spacing-2);color:inherit;font-size:var(--luzmo-formula-include-exclude-icon-size);justify-content:center;align-items:center;display:inline-flex}.include-exclude-panel .panel-body{gap:var(--luzmo-spacing-3);padding:var(--luzmo-spacing-4);flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden auto}.include-exclude-panel .field{gap:var(--luzmo-spacing-2);flex-direction:column;display:flex}.include-exclude-panel .divider{border:none;border-top:var(--luzmo-border-width) solid var(--luzmo-border-color);width:100%;margin:0}.include-exclude-panel luzmo-select{width:100%}.include-exclude-panel .tags{gap:var(--luzmo-spacing-2);max-height:var(--luzmo-formula-include-exclude-tags-max-height,11rem);padding:var(--luzmo-spacing-2);margin-inline:calc(-1 * var(--luzmo-spacing-2));flex-direction:column;display:flex;overflow:hidden auto}.include-exclude-panel .column{align-items:center;gap:var(--luzmo-spacing-1);outline:none;width:100%;display:flex}.include-exclude-panel .column-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.include-exclude-panel .column-action{flex:none}.include-exclude-panel .column-action-icon{align-items:center;display:inline-flex}.include-exclude-panel .empty{color:var(--luzmo-font-color-extra-dimmed,#888);font-size:var(--luzmo-font-size-s);margin:0}.include-exclude-panel[data-size=s]{--luzmo-option-icon-width:calc(var(--luzmo-font-size-s) * 1.4)}.include-exclude-panel[data-size=l]{--luzmo-option-icon-width:calc(var(--luzmo-font-size-l) * 1.4)}.include-exclude-panel[data-size=xl]{--luzmo-option-icon-width:calc(var(--luzmo-font-size-xl) * 1.4)}.include-exclude-panel[data-size=s] .panel-header{padding:var(--luzmo-spacing-2) var(--luzmo-spacing-3);font-size:.625rem}.include-exclude-panel[data-size=s] .panel-body{padding:var(--luzmo-spacing-3)}.include-exclude-panel[data-size=l] .panel-header{padding:var(--luzmo-spacing-4) var(--luzmo-spacing-5);font-size:.75rem}.include-exclude-panel[data-size=xl] .panel-header{padding:var(--luzmo-spacing-4) var(--luzmo-spacing-5);font-size:.8125rem}.include-exclude-panel[data-size=l] .panel-body,.include-exclude-panel[data-size=xl] .panel-body{padding:var(--luzmo-spacing-5)}luzmo-formula-codemirror{box-sizing:border-box;min-width:2.5rem;min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-spacing-2);border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-background-color);color:var(--luzmo-font-color);--luzmo-formula-column-pill-background:transparent;--luzmo-formula-column-pill-padding-inline:0px;--luzmo-formula-column-pill-trailing-space:0px;flex:0 auto;align-self:center;align-items:center;line-height:1;display:inline-flex;overflow:visible}`,bp=class extends n.t(e.i){constructor(...e){super(...e),this._groupingPageOverride=null,this._autoCompletionList=[],this._codeMirrorLoaded=o.c(),this._functionKeyboardFocus=!1,this._groupingTriggerId=`formula-grouping-${Math.random().toString(36).slice(2)}`,this._aggregationDataMap=o.a(),this._groupingDataMap=s.n(),this._handleFunctionFocus=e=>{if(!this._functionSelect)return;let t=e.composedPath();if(t.includes(this._functionSelect)){let e=t[0];this._functionKeyboardFocus=e instanceof Element&&e.matches(`:focus-visible`)}},this._handleFunctionBlur=e=>{this._functionSelect&&e.composedPath().includes(this._functionSelect)&&(this._functionKeyboardFocus=!1)},this._handleWidgetsChanged=()=>{this.requestUpdate()},this._handleDatasetsRefresh=()=>{this._recomputeAutoCompletion(),this.requestUpdate()},this._handleDocumentPointerdown=e=>{let t=this._groupingOverlay;!t?.open||this._isPointerInsidePopover(e)||(t.open=!1)}}static{this.styles=(0,d.unsafeCSS)(yp)}connectedCallback(){super.connectedCallback(),this.store?.addEventListener(`widgets-changed`,this._handleWidgetsChanged),this.store?.addEventListener(`refresh-decorations`,this._handleDatasetsRefresh),this._bindFunctionFocusListeners()}disconnectedCallback(){super.disconnectedCallback(),this.store?.removeEventListener(`widgets-changed`,this._handleWidgetsChanged),this.store?.removeEventListener(`refresh-decorations`,this._handleDatasetsRefresh),this._unbindFunctionFocusListeners(),document.removeEventListener(`pointerdown`,this._handleDocumentPointerdown,{capture:!0})}_bindFunctionFocusListeners(){let e=this._functionSelect;!e||this._functionFocusTarget===e||(this._functionFocusTarget=e,e.addEventListener(`focus`,this._handleFunctionFocus,{capture:!0}),e.addEventListener(`blur`,this._handleFunctionBlur,{capture:!0}))}_unbindFunctionFocusListeners(){this._functionFocusTarget&&=(this._functionFocusTarget.removeEventListener(`focus`,this._handleFunctionFocus,{capture:!0}),this._functionFocusTarget.removeEventListener(`blur`,this._handleFunctionBlur,{capture:!0}),void 0)}get _linkedDatasets(){return this.store?.datasets?.length?this.store.datasets:this.config.linkedDatasets}_recomputeAutoCompletion(){this._autoCompletionList=this.store&&this.config?this.store.getAutoCompletionList(this._linkedDatasets,this.store.nestedAggregation):[]}get _widget(){return this.store?.getWidget(this.config?.aggregationWidgetId)}get _groupingPage(){return this._groupingPageOverride?this._groupingPageOverride:this._widget?.grouping===o.g.GROUPINEX?`includeExclude`:`types`}willUpdate(e){this._ensureCodeMirrorLoaded(),(e.has(`store`)||e.has(`config`))&&this._recomputeAutoCompletion()}async _ensureCodeMirrorLoaded(){this._codeMirrorLoaded||=(await o.s(),!0)}firstUpdated(){this._bindFunctionFocusListeners(),this._focusNestedIfPending()}updated(e){let t=this._widget;t&&this._nestedCodeMirror&&this._nestedCodeMirror.content!==t.content&&this._nestedCodeMirror.setContent(t.content)}async _focusNestedIfPending(){if(!this.store||this.store.pendingFocusAggregationWidgetId!==this.config?.aggregationWidgetId)return;this.store.pendingFocusAggregationWidgetId=null;let e=this._nestedCodeMirror;e&&(await e.updateComplete,e.focusEditor())}_updateWidget(e){let t=this._widget;!t||!this.store||this.store.updateWidget({...t,...e})}_handleFunctionChange(e){let t=e.detail?.value?.[0];if(!t)return;let n=this._aggregationDataMap[t]?.arity??0;this._updateWidget({aggregationFunction:t,...n===0?{content:``}:{}})}_handleGroupingOptionClick(e){this._updateWidget({grouping:e,...e===o.g.GROUPINEX?{}:{includedColumns:[],excludedColumns:[]}}),e===o.g.GROUPINEX?this._groupingPageOverride=null:this._closeGroupingMenu()}_handleGroupingBack(){this._groupingPageOverride=`types`}_handleGroupingMenuOpened(e){e.target===e.currentTarget&&(this._groupingPageOverride=null,document.addEventListener(`pointerdown`,this._handleDocumentPointerdown,{capture:!0}))}_handleGroupingMenuClosed(e){e.target===e.currentTarget&&(this._groupingPageOverride=null,document.removeEventListener(`pointerdown`,this._handleDocumentPointerdown,{capture:!0}))}_isPointerInsidePopover(e){return e.composedPath().some(e=>e instanceof Element&&(e.classList.contains(`grouping-popover`)||e.classList.contains(`include-exclude-panel`)))}_closeGroupingMenu(){this._groupingOverlay&&(this._groupingOverlay.open=!1)}_handleNestedContentChanged(e){e.stopPropagation(),this._updateWidget({content:e.detail.content})}_handleIncludeExcludeChange(e,t){this._updateWidget({includedColumns:e,excludedColumns:t})}_renderGroupingTypesPage(e){return d.html`
|
|
134
134
|
<div class="grouping-menu" role="menu">
|
|
135
135
|
${s.t.map(t=>{let n=this._groupingDataMap[t];return d.html`<button
|
|
136
136
|
class="grouping-option"
|