@genesislcap/foundation-forms 14.405.0 → 14.406.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -24,7 +24,7 @@
24
24
  "type": {
25
25
  "text": "array"
26
26
  },
27
- "default": "[\n fallbackEntry,\n stringEntry,\n BooleanControlEntry,\n StringArrayEntry,\n LayoutArrayRendererEntry,\n LayoutCategorizationRendererEntry,\n LayoutGroupRendererEntry,\n LayoutHorizontalEntry,\n LayoutFormGridEntry,\n LayoutVertical2ColumnsEntry,\n LayoutRendererEntry,\n LayoutStepperRendererEntry,\n NumberControlRendererEntry,\n ConnectedMultiselectControlRendererEntry,\n EnumControlRendererEntry,\n ConnectedSelectControlRendererEntry,\n DateControlRendererEntry,\n InvisibleControlEntry,\n DividerControlRenderer,\n]",
27
+ "default": "[\n fallbackEntry,\n stringEntry,\n BooleanControlEntry,\n StringArrayEntry,\n LayoutArrayRendererEntry,\n LayoutCategorizationRendererEntry,\n LayoutGroupRendererEntry,\n LayoutHorizontalEntry,\n LayoutFormGridEntry,\n LayoutVertical2ColumnsEntry,\n LayoutRendererEntry,\n LayoutStepperRendererEntry,\n NumberControlRendererEntry,\n ConnectedMultiselectControlRendererEntry,\n EnumControlRendererEntry,\n ConnectedSelectControlRendererEntry,\n DateControlRendererEntry,\n InvisibleControlEntry,\n DividerControlRenderer,\n MulticolumnDropdownControlRendererEntry,\n]",
28
28
  "description": "Set of default renderers used by the foundation-forms.",
29
29
  "privacy": "public"
30
30
  },
@@ -100,7 +100,7 @@
100
100
  "type": {
101
101
  "text": "RendererEntry[]"
102
102
  },
103
- "default": "[\n fallbackEntry,\n stringEntry,\n BooleanControlEntry,\n StringArrayEntry,\n LayoutArrayRendererEntry,\n LayoutCategorizationRendererEntry,\n LayoutGroupRendererEntry,\n LayoutHorizontalEntry,\n LayoutFormGridEntry,\n LayoutVertical2ColumnsEntry,\n LayoutRendererEntry,\n LayoutStepperRendererEntry,\n NumberControlRendererEntry,\n ConnectedMultiselectControlRendererEntry,\n EnumControlRendererEntry,\n ConnectedSelectControlRendererEntry,\n DateControlRendererEntry,\n InvisibleControlEntry,\n DividerControlRenderer,\n]",
103
+ "default": "[\n fallbackEntry,\n stringEntry,\n BooleanControlEntry,\n StringArrayEntry,\n LayoutArrayRendererEntry,\n LayoutCategorizationRendererEntry,\n LayoutGroupRendererEntry,\n LayoutHorizontalEntry,\n LayoutFormGridEntry,\n LayoutVertical2ColumnsEntry,\n LayoutRendererEntry,\n LayoutStepperRendererEntry,\n NumberControlRendererEntry,\n ConnectedMultiselectControlRendererEntry,\n EnumControlRendererEntry,\n ConnectedSelectControlRendererEntry,\n DateControlRendererEntry,\n InvisibleControlEntry,\n DividerControlRenderer,\n MulticolumnDropdownControlRendererEntry,\n]",
104
104
  "description": "Allows to provide the main set of renderers used by the form. If not provided, the built-in renderers will be used by default.",
105
105
  "privacy": "public"
106
106
  },
@@ -628,6 +628,22 @@
628
628
  "package": "./form.template"
629
629
  }
630
630
  },
631
+ {
632
+ "kind": "js",
633
+ "name": "MulticolumnDropdownControlRendererEntry",
634
+ "declaration": {
635
+ "name": "MulticolumnDropdownControlRendererEntry",
636
+ "module": "./jsonforms/renderers/MulticolumnDropdownControlRenderer"
637
+ }
638
+ },
639
+ {
640
+ "kind": "js",
641
+ "name": "MulticolumnDropdownControlRendererTemplate",
642
+ "declaration": {
643
+ "name": "MulticolumnDropdownControlRendererTemplate",
644
+ "module": "./jsonforms/renderers/MulticolumnDropdownControlRenderer"
645
+ }
646
+ },
631
647
  {
632
648
  "kind": "js",
633
649
  "name": "*",
@@ -2902,6 +2918,51 @@
2902
2918
  }
2903
2919
  ]
2904
2920
  },
2921
+ {
2922
+ "kind": "javascript-module",
2923
+ "path": "src/jsonforms/renderers/MulticolumnDropdownControlRenderer.ts",
2924
+ "declarations": [
2925
+ {
2926
+ "kind": "function",
2927
+ "name": "MulticolumnDropdownControlRendererTemplate",
2928
+ "parameters": [
2929
+ {
2930
+ "name": "prefix",
2931
+ "default": "'zero'",
2932
+ "type": {
2933
+ "text": "string"
2934
+ }
2935
+ }
2936
+ ]
2937
+ },
2938
+ {
2939
+ "kind": "variable",
2940
+ "name": "MulticolumnDropdownControlRendererEntry",
2941
+ "type": {
2942
+ "text": "any"
2943
+ },
2944
+ "default": "{\n renderer: html<DispatchRenderer>`\n ${(x) => MulticolumnDropdownControlRendererTemplate(x.prefix)}\n `,\n tester: rankWith(MULTICOLUMN_DROPDOWN_CONTROL_RANK, optionIs('columnDefinitions')),\n mapper: mapStateToControlProps,\n}"
2945
+ }
2946
+ ],
2947
+ "exports": [
2948
+ {
2949
+ "kind": "js",
2950
+ "name": "MulticolumnDropdownControlRendererTemplate",
2951
+ "declaration": {
2952
+ "name": "MulticolumnDropdownControlRendererTemplate",
2953
+ "module": "src/jsonforms/renderers/MulticolumnDropdownControlRenderer.ts"
2954
+ }
2955
+ },
2956
+ {
2957
+ "kind": "js",
2958
+ "name": "MulticolumnDropdownControlRendererEntry",
2959
+ "declaration": {
2960
+ "name": "MulticolumnDropdownControlRendererEntry",
2961
+ "module": "src/jsonforms/renderers/MulticolumnDropdownControlRenderer.ts"
2962
+ }
2963
+ }
2964
+ ]
2965
+ },
2905
2966
  {
2906
2967
  "kind": "javascript-module",
2907
2968
  "path": "src/jsonforms/renderers/NumberControlRenderer.ts",
@@ -3079,6 +3140,14 @@
3079
3140
  },
3080
3141
  "default": "2"
3081
3142
  },
3143
+ {
3144
+ "kind": "variable",
3145
+ "name": "MULTICOLUMN_DROPDOWN_CONTROL_RANK",
3146
+ "type": {
3147
+ "text": "number"
3148
+ },
3149
+ "default": "5"
3150
+ },
3082
3151
  {
3083
3152
  "kind": "variable",
3084
3153
  "name": "INVISIBLE_CONTROL_RANK",
@@ -3225,6 +3294,14 @@
3225
3294
  "module": "src/jsonforms/renderers/RenderersRanks.ts"
3226
3295
  }
3227
3296
  },
3297
+ {
3298
+ "kind": "js",
3299
+ "name": "MULTICOLUMN_DROPDOWN_CONTROL_RANK",
3300
+ "declaration": {
3301
+ "name": "MULTICOLUMN_DROPDOWN_CONTROL_RANK",
3302
+ "module": "src/jsonforms/renderers/RenderersRanks.ts"
3303
+ }
3304
+ },
3228
3305
  {
3229
3306
  "kind": "js",
3230
3307
  "name": "INVISIBLE_CONTROL_RANK",
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../src/form.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../src/form.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export * from './filters';
2
2
  export * from './form';
3
3
  export * from './form.styles';
4
4
  export * from './form.template';
5
+ export { MulticolumnDropdownControlRendererEntry, MulticolumnDropdownControlRendererTemplate, } from './jsonforms/renderers/MulticolumnDropdownControlRenderer';
5
6
  export * from './types';
6
7
  export * from './utils';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,OAAO,EACL,uCAAuC,EACvC,0CAA0C,GAC3C,MAAM,0DAA0D,CAAC;AAClE,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { DispatchRenderer } from './dispatch-renderer';
2
+ /**
3
+ * @beta
4
+ * A JSON Forms renderer that uses the multicolumn-dropdown component.
5
+ *
6
+ * Activated when the uischema element has `columnDefinitions` set.
7
+ * Takes precedence over `ConnectedSelectControlRendererEntry` due to its higher rank.
8
+ *
9
+ * Options are typed via {@link MulticolumnDropdownRendererOptions}.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * {
14
+ * type: 'Control',
15
+ * scope: '#/properties/INSTRUMENT_ID',
16
+ * label: 'Instrument',
17
+ * options: <MulticolumnDropdownRendererOptions>{
18
+ * allOptionsResourceName: 'ALL_INSTRUMENTS',
19
+ * valueField: 'INSTRUMENT_ID',
20
+ * labelField: 'NAME',
21
+ * searchKey: ['INSTRUMENT_ID', 'NAME'],
22
+ * columnDefinitions: [
23
+ * { field: 'INSTRUMENT_ID', headerName: 'ID' },
24
+ * { field: 'NAME', headerName: 'Name' },
25
+ * ],
26
+ * },
27
+ * }
28
+ * ```
29
+ */
30
+ export declare const MulticolumnDropdownControlRendererTemplate: (prefix?: string) => import("@microsoft/fast-element").ViewTemplate<DispatchRenderer, any>;
31
+ /** @beta */
32
+ export declare const MulticolumnDropdownControlRendererEntry: any;
33
+ //# sourceMappingURL=MulticolumnDropdownControlRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MulticolumnDropdownControlRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/MulticolumnDropdownControlRenderer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAMvD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,0CAA0C,GAAI,SAAQ,MAAe,0EAyC/E,CAAC;AAEJ,YAAY;AACZ,eAAO,MAAM,uCAAuC,EAAE,GAMrD,CAAC"}
@@ -14,6 +14,7 @@ export declare const LAYOUT_HORIZONTAL_RANK = 2;
14
14
  export declare const LAYOUT_STEPPER_RANK = 3;
15
15
  export declare const LAYOUT2COLUMNS_RANK = 2;
16
16
  export declare const LAYOUT_FORM_GRID_RANK = 2;
17
+ export declare const MULTICOLUMN_DROPDOWN_CONTROL_RANK = 5;
17
18
  export declare const INVISIBLE_CONTROL_RANK = 5;
18
19
  export declare const DIVIDER_CONTROL_RANK = 5;
19
20
  //# sourceMappingURL=RenderersRanks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RenderersRanks.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/RenderersRanks.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,oBAAoB,IAAI,CAAC"}
1
+ {"version":3,"file":"RenderersRanks.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/RenderersRanks.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,iCAAiC,IAAI,CAAC;AACnD,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,oBAAoB,IAAI,CAAC"}
@@ -74,6 +74,60 @@ export type ConnectedRenderersOptions = {
74
74
  */
75
75
  labelRowFormatter?: (any: any) => string;
76
76
  };
77
+ /**
78
+ * Configuration options for the multicolumn-dropdown renderer.
79
+ *
80
+ * Shares `allOptionsResourceName` with {@link ConnectedRenderersOptions} so the same
81
+ * reqrep/dataserver resource name field is reused. The renderer is activated when
82
+ * `columnDefinitions` is present (higher rank than the combobox renderer).
83
+ *
84
+ * @public
85
+ */
86
+ export type MulticolumnDropdownRendererOptions = Pick<ConnectedRenderersOptions, 'allOptionsResourceName' | 'valueField' | 'labelField'> & {
87
+ /**
88
+ * Field key(s) used to filter rows when the user types in the search box.
89
+ * Pass an array together with `advancedSearchReq: true` for multi-key search on GPAL ReqReps.
90
+ * @public
91
+ */
92
+ searchKey?: string | string[];
93
+ /**
94
+ * AG Grid column definitions for the dropdown grid.
95
+ * Compatible with ColDef from @ag-grid-community/core.
96
+ * This field is also the tester key that activates this renderer.
97
+ * @public
98
+ */
99
+ columnDefinitions: Record<string, unknown>[];
100
+ /**
101
+ * Additional request params merged into every reqrep call.
102
+ * @public
103
+ */
104
+ request?: Record<string, unknown>;
105
+ /**
106
+ * Base Groovy criteria string always applied to requests (combined with search criteria via AND).
107
+ * @public
108
+ */
109
+ baseCriteria?: string;
110
+ /**
111
+ * Set to `true` for GPAL ReqReps to enable multi-key Groovy expression search.
112
+ * Do not use for custom ReqReps that don't support groovy expressions.
113
+ * @public
114
+ */
115
+ advancedSearchReq?: boolean;
116
+ /**
117
+ * Position of the dropdown panel relative to the control.
118
+ * - `'bottom-right'` – default; opens below and aligns to the right edge
119
+ * - `'bottom-left'` – opens below and extends to the left
120
+ * - `'top-right'` – opens above and aligns to the right edge
121
+ * - `'top-left'` – opens above and extends to the left
122
+ * @public
123
+ */
124
+ dropdownPlacement?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
125
+ /**
126
+ * Explicit pixel width for the dropdown panel. Inherits control width when omitted.
127
+ * @public
128
+ */
129
+ dropdownWidth?: number;
130
+ };
77
131
  /**
78
132
  * Resolver for dynamic per-row UI schema in array/bulk-insert mode.
79
133
  * Receives the row index, that row's data, and the full form data.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/dist/esm/form.js CHANGED
@@ -22,6 +22,7 @@ import { LayoutHorizontalEntry } from './jsonforms/renderers/LayoutHorizontalRen
22
22
  import { LayoutRendererEntry } from './jsonforms/renderers/LayoutRenderer';
23
23
  import { LayoutStepperRendererEntry } from './jsonforms/renderers/LayoutStepperRenderer';
24
24
  import { LayoutVertical2ColumnsEntry } from './jsonforms/renderers/LayoutVertical2ColumnsRenderer';
25
+ import { MulticolumnDropdownControlRendererEntry } from './jsonforms/renderers/MulticolumnDropdownControlRenderer';
25
26
  import { NumberControlRendererEntry } from './jsonforms/renderers/NumberControlRenderer';
26
27
  import { StringArrayEntry } from './jsonforms/renderers/StringArrayControlRenderer';
27
28
  import { StringControlRendererTemplate } from './jsonforms/renderers/StringControlRenderer';
@@ -63,6 +64,7 @@ export const renderers = [
63
64
  DateControlRendererEntry,
64
65
  InvisibleControlEntry,
65
66
  DividerControlRenderer,
67
+ MulticolumnDropdownControlRendererEntry,
66
68
  ];
67
69
  /**
68
70
  * Foundation form component for automatically generated forms based on json schema
package/dist/esm/index.js CHANGED
@@ -2,5 +2,6 @@ export * from './filters';
2
2
  export * from './form';
3
3
  export * from './form.styles';
4
4
  export * from './form.template';
5
+ export { MulticolumnDropdownControlRendererEntry, MulticolumnDropdownControlRendererTemplate, } from './jsonforms/renderers/MulticolumnDropdownControlRenderer';
5
6
  export * from './types';
6
7
  export * from './utils';
@@ -0,0 +1,83 @@
1
+ import { mapStateToControlProps, rankWith } from '@jsonforms/core';
2
+ import { html } from '@microsoft/fast-element';
3
+ import { optionIs } from '../testers/optionIs';
4
+ import { MULTICOLUMN_DROPDOWN_CONTROL_RANK } from './RenderersRanks';
5
+ const getOptions = (x) => x.control.uischema.options;
6
+ /**
7
+ * @beta
8
+ * A JSON Forms renderer that uses the multicolumn-dropdown component.
9
+ *
10
+ * Activated when the uischema element has `columnDefinitions` set.
11
+ * Takes precedence over `ConnectedSelectControlRendererEntry` due to its higher rank.
12
+ *
13
+ * Options are typed via {@link MulticolumnDropdownRendererOptions}.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * {
18
+ * type: 'Control',
19
+ * scope: '#/properties/INSTRUMENT_ID',
20
+ * label: 'Instrument',
21
+ * options: <MulticolumnDropdownRendererOptions>{
22
+ * allOptionsResourceName: 'ALL_INSTRUMENTS',
23
+ * valueField: 'INSTRUMENT_ID',
24
+ * labelField: 'NAME',
25
+ * searchKey: ['INSTRUMENT_ID', 'NAME'],
26
+ * columnDefinitions: [
27
+ * { field: 'INSTRUMENT_ID', headerName: 'ID' },
28
+ * { field: 'NAME', headerName: 'Name' },
29
+ * ],
30
+ * },
31
+ * }
32
+ * ```
33
+ */
34
+ export const MulticolumnDropdownControlRendererTemplate = (prefix = 'zero') => html `
35
+ <template>
36
+ <control-wrapper
37
+ :control=${(x) => x.control}
38
+ :jsonForms=${(x) => x.jsonforms}
39
+ :touched=${(x) => x.touched}
40
+ ?submitted=${(x) => x.submitted}
41
+ prefix="${prefix}"
42
+ >
43
+ <${prefix}-multicolumn-dropdown
44
+ style="width: 100%;"
45
+ resource-name=${(x) => getOptions(x).allOptionsResourceName}
46
+ value-key=${(x) => getOptions(x).valueField}
47
+ label-key=${(x) => getOptions(x).labelField}
48
+ ?disabled=${(x) => !x.control.enabled}
49
+ ?dropdown-above=${(x) => { var _a, _b; return (_b = (_a = getOptions(x).dropdownPlacement) === null || _a === void 0 ? void 0 : _a.startsWith('top')) !== null && _b !== void 0 ? _b : false; }}
50
+ ?dropdown-left=${(x) => { var _a, _b; return (_b = (_a = getOptions(x).dropdownPlacement) === null || _a === void 0 ? void 0 : _a.endsWith('left')) !== null && _b !== void 0 ? _b : false; }}
51
+ ?advanced-search-req=${(x) => !!getOptions(x).advancedSearchReq}
52
+ :searchKey=${(x) => getOptions(x).searchKey}
53
+ :request=${(x) => getOptions(x).request}
54
+ :columnDefinitions=${(x) => getOptions(x).columnDefinitions}
55
+ :baseCriteria=${(x) => getOptions(x).baseCriteria}
56
+ :dropdownWidth=${(x) => getOptions(x).dropdownWidth}
57
+ :value=${(x) => x.control.data}
58
+ id=${(x) => x.control.path}
59
+ data-test-id=${(x) => x.control.path}
60
+ @change=${(x, c) => {
61
+ var _a, _b;
62
+ const value = (_a = c.event.detail) !== null && _a !== void 0 ? _a : null;
63
+ // Guard against the feedback loop caused by the :value binding.
64
+ // MulticolumnDropdown's set value() always calls emitValue() (even when set
65
+ // programmatically), which fires a 'change' event that would otherwise trigger
66
+ // handleChange → form re-render → :value re-bind → set value() → loop.
67
+ if (value !== ((_b = x.control.data) !== null && _b !== void 0 ? _b : null)) {
68
+ x.control.handleChange(x.control.path, value);
69
+ x.onBlur();
70
+ }
71
+ }}
72
+ ></${prefix}-multicolumn-dropdown>
73
+ </control-wrapper>
74
+ </template>
75
+ `;
76
+ /** @beta */
77
+ export const MulticolumnDropdownControlRendererEntry = {
78
+ renderer: html `
79
+ ${(x) => MulticolumnDropdownControlRendererTemplate(x.prefix)}
80
+ `,
81
+ tester: rankWith(MULTICOLUMN_DROPDOWN_CONTROL_RANK, optionIs('columnDefinitions')),
82
+ mapper: mapStateToControlProps,
83
+ };
@@ -14,5 +14,6 @@ export const LAYOUT_HORIZONTAL_RANK = 2;
14
14
  export const LAYOUT_STEPPER_RANK = 3;
15
15
  export const LAYOUT2COLUMNS_RANK = 2;
16
16
  export const LAYOUT_FORM_GRID_RANK = 2;
17
+ export const MULTICOLUMN_DROPDOWN_CONTROL_RANK = 5;
17
18
  export const INVISIBLE_CONTROL_RANK = 5;
18
19
  export const DIVIDER_CONTROL_RANK = 5;
@@ -2522,6 +2522,146 @@
2522
2522
  ],
2523
2523
  "name": "mapCsvToSchema"
2524
2524
  },
2525
+ {
2526
+ "kind": "Variable",
2527
+ "canonicalReference": "@genesislcap/foundation-forms!MulticolumnDropdownControlRendererEntry:var",
2528
+ "docComment": "/**\n * @beta\n */\n",
2529
+ "excerptTokens": [
2530
+ {
2531
+ "kind": "Content",
2532
+ "text": "MulticolumnDropdownControlRendererEntry: "
2533
+ },
2534
+ {
2535
+ "kind": "Content",
2536
+ "text": "any"
2537
+ }
2538
+ ],
2539
+ "fileUrlPath": "src/jsonforms/renderers/MulticolumnDropdownControlRenderer.ts",
2540
+ "isReadonly": true,
2541
+ "releaseTag": "Beta",
2542
+ "name": "MulticolumnDropdownControlRendererEntry",
2543
+ "variableTypeTokenRange": {
2544
+ "startIndex": 1,
2545
+ "endIndex": 2
2546
+ }
2547
+ },
2548
+ {
2549
+ "kind": "Function",
2550
+ "canonicalReference": "@genesislcap/foundation-forms!MulticolumnDropdownControlRendererTemplate:function(1)",
2551
+ "docComment": "/**\n * A JSON Forms renderer that uses the multicolumn-dropdown component.\n *\n * Activated when the uischema element has `columnDefinitions` set. Takes precedence over `ConnectedSelectControlRendererEntry` due to its higher rank.\n *\n * Options are typed via {@link MulticolumnDropdownRendererOptions}.\n *\n * @example\n * ```ts\n * {\n * type: 'Control',\n * scope: '#/properties/INSTRUMENT_ID',\n * label: 'Instrument',\n * options: <MulticolumnDropdownRendererOptions>{\n * allOptionsResourceName: 'ALL_INSTRUMENTS',\n * valueField: 'INSTRUMENT_ID',\n * labelField: 'NAME',\n * searchKey: ['INSTRUMENT_ID', 'NAME'],\n * columnDefinitions: [\n * { field: 'INSTRUMENT_ID', headerName: 'ID' },\n * { field: 'NAME', headerName: 'Name' },\n * ],\n * },\n * }\n * ```\n *\n * @beta\n */\n",
2552
+ "excerptTokens": [
2553
+ {
2554
+ "kind": "Content",
2555
+ "text": "MulticolumnDropdownControlRendererTemplate: (prefix?: "
2556
+ },
2557
+ {
2558
+ "kind": "Content",
2559
+ "text": "string"
2560
+ },
2561
+ {
2562
+ "kind": "Content",
2563
+ "text": ") => "
2564
+ },
2565
+ {
2566
+ "kind": "Content",
2567
+ "text": "import(\"@microsoft/fast-element\")."
2568
+ },
2569
+ {
2570
+ "kind": "Reference",
2571
+ "text": "ViewTemplate",
2572
+ "canonicalReference": "@microsoft/fast-element!ViewTemplate:class"
2573
+ },
2574
+ {
2575
+ "kind": "Content",
2576
+ "text": "<"
2577
+ },
2578
+ {
2579
+ "kind": "Reference",
2580
+ "text": "DispatchRenderer",
2581
+ "canonicalReference": "@genesislcap/foundation-forms!~DispatchRenderer:class"
2582
+ },
2583
+ {
2584
+ "kind": "Content",
2585
+ "text": ", any>"
2586
+ }
2587
+ ],
2588
+ "fileUrlPath": "src/jsonforms/renderers/MulticolumnDropdownControlRenderer.ts",
2589
+ "returnTypeTokenRange": {
2590
+ "startIndex": 3,
2591
+ "endIndex": 8
2592
+ },
2593
+ "releaseTag": "Beta",
2594
+ "overloadIndex": 1,
2595
+ "parameters": [
2596
+ {
2597
+ "parameterName": "prefix",
2598
+ "parameterTypeTokenRange": {
2599
+ "startIndex": 1,
2600
+ "endIndex": 2
2601
+ },
2602
+ "isOptional": true
2603
+ }
2604
+ ],
2605
+ "name": "MulticolumnDropdownControlRendererTemplate"
2606
+ },
2607
+ {
2608
+ "kind": "TypeAlias",
2609
+ "canonicalReference": "@genesislcap/foundation-forms!MulticolumnDropdownRendererOptions:type",
2610
+ "docComment": "/**\n * Configuration options for the multicolumn-dropdown renderer.\n *\n * Shares `allOptionsResourceName` with {@link ConnectedRenderersOptions} so the same reqrep/dataserver resource name field is reused. The renderer is activated when `columnDefinitions` is present (higher rank than the combobox renderer).\n *\n * @public\n */\n",
2611
+ "excerptTokens": [
2612
+ {
2613
+ "kind": "Content",
2614
+ "text": "export type MulticolumnDropdownRendererOptions = "
2615
+ },
2616
+ {
2617
+ "kind": "Reference",
2618
+ "text": "Pick",
2619
+ "canonicalReference": "!Pick:type"
2620
+ },
2621
+ {
2622
+ "kind": "Content",
2623
+ "text": "<"
2624
+ },
2625
+ {
2626
+ "kind": "Reference",
2627
+ "text": "ConnectedRenderersOptions",
2628
+ "canonicalReference": "@genesislcap/foundation-forms!ConnectedRenderersOptions:type"
2629
+ },
2630
+ {
2631
+ "kind": "Content",
2632
+ "text": ", 'allOptionsResourceName' | 'valueField' | 'labelField'> & {\n searchKey?: string | string[];\n columnDefinitions: "
2633
+ },
2634
+ {
2635
+ "kind": "Reference",
2636
+ "text": "Record",
2637
+ "canonicalReference": "!Record:type"
2638
+ },
2639
+ {
2640
+ "kind": "Content",
2641
+ "text": "<string, unknown>[];\n request?: "
2642
+ },
2643
+ {
2644
+ "kind": "Reference",
2645
+ "text": "Record",
2646
+ "canonicalReference": "!Record:type"
2647
+ },
2648
+ {
2649
+ "kind": "Content",
2650
+ "text": "<string, unknown>;\n baseCriteria?: string;\n advancedSearchReq?: boolean;\n dropdownPlacement?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';\n dropdownWidth?: number;\n}"
2651
+ },
2652
+ {
2653
+ "kind": "Content",
2654
+ "text": ";"
2655
+ }
2656
+ ],
2657
+ "fileUrlPath": "src/types.ts",
2658
+ "releaseTag": "Public",
2659
+ "name": "MulticolumnDropdownRendererOptions",
2660
+ "typeTokenRange": {
2661
+ "startIndex": 1,
2662
+ "endIndex": 9
2663
+ }
2664
+ },
2525
2665
  {
2526
2666
  "kind": "Function",
2527
2667
  "canonicalReference": "@genesislcap/foundation-forms!mustMatch:function(1)",
@@ -1671,6 +1671,94 @@ export declare const logger: Logger;
1671
1671
  */
1672
1672
  export declare function mapCsvToSchema(csvRows: Record<string, string>[], schema: JSONSchema7 | undefined, uiSchema?: UiSchema): CsvMappingResult;
1673
1673
 
1674
+ /** @beta */
1675
+ export declare const MulticolumnDropdownControlRendererEntry: any;
1676
+
1677
+ /**
1678
+ * @beta
1679
+ * A JSON Forms renderer that uses the multicolumn-dropdown component.
1680
+ *
1681
+ * Activated when the uischema element has `columnDefinitions` set.
1682
+ * Takes precedence over `ConnectedSelectControlRendererEntry` due to its higher rank.
1683
+ *
1684
+ * Options are typed via {@link MulticolumnDropdownRendererOptions}.
1685
+ *
1686
+ * @example
1687
+ * ```ts
1688
+ * {
1689
+ * type: 'Control',
1690
+ * scope: '#/properties/INSTRUMENT_ID',
1691
+ * label: 'Instrument',
1692
+ * options: <MulticolumnDropdownRendererOptions>{
1693
+ * allOptionsResourceName: 'ALL_INSTRUMENTS',
1694
+ * valueField: 'INSTRUMENT_ID',
1695
+ * labelField: 'NAME',
1696
+ * searchKey: ['INSTRUMENT_ID', 'NAME'],
1697
+ * columnDefinitions: [
1698
+ * { field: 'INSTRUMENT_ID', headerName: 'ID' },
1699
+ * { field: 'NAME', headerName: 'Name' },
1700
+ * ],
1701
+ * },
1702
+ * }
1703
+ * ```
1704
+ */
1705
+ export declare const MulticolumnDropdownControlRendererTemplate: (prefix?: string) => ViewTemplate<DispatchRenderer, any>;
1706
+
1707
+ /**
1708
+ * Configuration options for the multicolumn-dropdown renderer.
1709
+ *
1710
+ * Shares `allOptionsResourceName` with {@link ConnectedRenderersOptions} so the same
1711
+ * reqrep/dataserver resource name field is reused. The renderer is activated when
1712
+ * `columnDefinitions` is present (higher rank than the combobox renderer).
1713
+ *
1714
+ * @public
1715
+ */
1716
+ export declare type MulticolumnDropdownRendererOptions = Pick<ConnectedRenderersOptions, 'allOptionsResourceName' | 'valueField' | 'labelField'> & {
1717
+ /**
1718
+ * Field key(s) used to filter rows when the user types in the search box.
1719
+ * Pass an array together with `advancedSearchReq: true` for multi-key search on GPAL ReqReps.
1720
+ * @public
1721
+ */
1722
+ searchKey?: string | string[];
1723
+ /**
1724
+ * AG Grid column definitions for the dropdown grid.
1725
+ * Compatible with ColDef from @ag-grid-community/core.
1726
+ * This field is also the tester key that activates this renderer.
1727
+ * @public
1728
+ */
1729
+ columnDefinitions: Record<string, unknown>[];
1730
+ /**
1731
+ * Additional request params merged into every reqrep call.
1732
+ * @public
1733
+ */
1734
+ request?: Record<string, unknown>;
1735
+ /**
1736
+ * Base Groovy criteria string always applied to requests (combined with search criteria via AND).
1737
+ * @public
1738
+ */
1739
+ baseCriteria?: string;
1740
+ /**
1741
+ * Set to `true` for GPAL ReqReps to enable multi-key Groovy expression search.
1742
+ * Do not use for custom ReqReps that don't support groovy expressions.
1743
+ * @public
1744
+ */
1745
+ advancedSearchReq?: boolean;
1746
+ /**
1747
+ * Position of the dropdown panel relative to the control.
1748
+ * - `'bottom-right'` – default; opens below and aligns to the right edge
1749
+ * - `'bottom-left'` – opens below and extends to the left
1750
+ * - `'top-right'` – opens above and aligns to the right edge
1751
+ * - `'top-left'` – opens above and extends to the left
1752
+ * @public
1753
+ */
1754
+ dropdownPlacement?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
1755
+ /**
1756
+ * Explicit pixel width for the dropdown panel. Inherits control width when omitted.
1757
+ * @public
1758
+ */
1759
+ dropdownWidth?: number;
1760
+ };
1761
+
1674
1762
  /**
1675
1763
  * Ensures the value of the current field (the one the validator is on) matches the one of the target field.
1676
1764
  * @param target - any other field
@@ -97,6 +97,21 @@ Computes a human-friendly anyOf error message for a given control path. Prefers
97
97
  Maps CSV rows to schema fields with case-insensitive matching. When uiSchema is provided, CSV headers can also match UI schema labels. Converts values to appropriate types based on schema definition.
98
98
 
99
99
 
100
+ </td></tr>
101
+ <tr><td>
102
+
103
+ [MulticolumnDropdownControlRendererTemplate(prefix)](./foundation-forms.multicolumndropdowncontrolrenderertemplate.md)
104
+
105
+
106
+ </td><td>
107
+
108
+ **_(BETA)_** A JSON Forms renderer that uses the multicolumn-dropdown component.
109
+
110
+ Activated when the uischema element has `columnDefinitions` set. Takes precedence over `ConnectedSelectControlRendererEntry` due to its higher rank.
111
+
112
+ Options are typed via [MulticolumnDropdownRendererOptions](./foundation-forms.multicolumndropdownrendereroptions.md)<!-- -->.
113
+
114
+
100
115
  </td></tr>
101
116
  <tr><td>
102
117
 
@@ -182,6 +197,17 @@ Description
182
197
  Set of default renderers used by the foundation-filters.
183
198
 
184
199
 
200
+ </td></tr>
201
+ <tr><td>
202
+
203
+ [MulticolumnDropdownControlRendererEntry](./foundation-forms.multicolumndropdowncontrolrendererentry.md)
204
+
205
+
206
+ </td><td>
207
+
208
+ **_(BETA)_**
209
+
210
+
185
211
  </td></tr>
186
212
  <tr><td>
187
213
 
@@ -340,6 +366,19 @@ Orientation options available for stepper renderer.
340
366
  Available aligment for labels.
341
367
 
342
368
 
369
+ </td></tr>
370
+ <tr><td>
371
+
372
+ [MulticolumnDropdownRendererOptions](./foundation-forms.multicolumndropdownrendereroptions.md)
373
+
374
+
375
+ </td><td>
376
+
377
+ Configuration options for the multicolumn-dropdown renderer.
378
+
379
+ Shares `allOptionsResourceName` with [ConnectedRenderersOptions](./foundation-forms.connectedrenderersoptions.md) so the same reqrep/dataserver resource name field is reused. The renderer is activated when `columnDefinitions` is present (higher rank than the combobox renderer).
380
+
381
+
343
382
  </td></tr>
344
383
  <tr><td>
345
384
 
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-forms](./foundation-forms.md) &gt; [MulticolumnDropdownControlRendererEntry](./foundation-forms.multicolumndropdowncontrolrendererentry.md)
4
+
5
+ ## MulticolumnDropdownControlRendererEntry variable
6
+
7
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
+ >
9
+
10
+
11
+ **Signature:**
12
+
13
+ ```typescript
14
+ MulticolumnDropdownControlRendererEntry: any
15
+ ```
@@ -0,0 +1,82 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-forms](./foundation-forms.md) &gt; [MulticolumnDropdownControlRendererTemplate](./foundation-forms.multicolumndropdowncontrolrenderertemplate.md)
4
+
5
+ ## MulticolumnDropdownControlRendererTemplate() function
6
+
7
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
+ >
9
+
10
+ A JSON Forms renderer that uses the multicolumn-dropdown component.
11
+
12
+ Activated when the uischema element has `columnDefinitions` set. Takes precedence over `ConnectedSelectControlRendererEntry` due to its higher rank.
13
+
14
+ Options are typed via [MulticolumnDropdownRendererOptions](./foundation-forms.multicolumndropdownrendereroptions.md)<!-- -->.
15
+
16
+ **Signature:**
17
+
18
+ ```typescript
19
+ MulticolumnDropdownControlRendererTemplate: (prefix?: string) => import("@microsoft/fast-element").ViewTemplate<DispatchRenderer, any>
20
+ ```
21
+
22
+ ## Parameters
23
+
24
+ <table><thead><tr><th>
25
+
26
+ Parameter
27
+
28
+
29
+ </th><th>
30
+
31
+ Type
32
+
33
+
34
+ </th><th>
35
+
36
+ Description
37
+
38
+
39
+ </th></tr></thead>
40
+ <tbody><tr><td>
41
+
42
+ prefix
43
+
44
+
45
+ </td><td>
46
+
47
+ string
48
+
49
+
50
+ </td><td>
51
+
52
+ _(Optional)_
53
+
54
+
55
+ </td></tr>
56
+ </tbody></table>
57
+
58
+ **Returns:**
59
+
60
+ import("@microsoft/fast-element").ViewTemplate&lt;DispatchRenderer, any&gt;
61
+
62
+ ## Example
63
+
64
+
65
+ ```ts
66
+ {
67
+ type: 'Control',
68
+ scope: '#/properties/INSTRUMENT_ID',
69
+ label: 'Instrument',
70
+ options: <MulticolumnDropdownRendererOptions>{
71
+ allOptionsResourceName: 'ALL_INSTRUMENTS',
72
+ valueField: 'INSTRUMENT_ID',
73
+ labelField: 'NAME',
74
+ searchKey: ['INSTRUMENT_ID', 'NAME'],
75
+ columnDefinitions: [
76
+ { field: 'INSTRUMENT_ID', headerName: 'ID' },
77
+ { field: 'NAME', headerName: 'Name' },
78
+ ],
79
+ },
80
+ }
81
+ ```
82
+
@@ -0,0 +1,25 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-forms](./foundation-forms.md) &gt; [MulticolumnDropdownRendererOptions](./foundation-forms.multicolumndropdownrendereroptions.md)
4
+
5
+ ## MulticolumnDropdownRendererOptions type
6
+
7
+ Configuration options for the multicolumn-dropdown renderer.
8
+
9
+ Shares `allOptionsResourceName` with [ConnectedRenderersOptions](./foundation-forms.connectedrenderersoptions.md) so the same reqrep/dataserver resource name field is reused. The renderer is activated when `columnDefinitions` is present (higher rank than the combobox renderer).
10
+
11
+ **Signature:**
12
+
13
+ ```typescript
14
+ export type MulticolumnDropdownRendererOptions = Pick<ConnectedRenderersOptions, 'allOptionsResourceName' | 'valueField' | 'labelField'> & {
15
+ searchKey?: string | string[];
16
+ columnDefinitions: Record<string, unknown>[];
17
+ request?: Record<string, unknown>;
18
+ baseCriteria?: string;
19
+ advancedSearchReq?: boolean;
20
+ dropdownPlacement?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
21
+ dropdownWidth?: number;
22
+ };
23
+ ```
24
+ **References:** [ConnectedRenderersOptions](./foundation-forms.connectedrenderersoptions.md)
25
+
@@ -325,6 +325,25 @@ export const logger: Logger;
325
325
  // @public
326
326
  export function mapCsvToSchema(csvRows: Record<string, string>[], schema: JSONSchema7 | undefined, uiSchema?: UiSchema): CsvMappingResult;
327
327
 
328
+ // @beta (undocumented)
329
+ export const MulticolumnDropdownControlRendererEntry: any;
330
+
331
+ // Warning: (ae-forgotten-export) The symbol "DispatchRenderer" needs to be exported by the entry point index.d.ts
332
+ //
333
+ // @beta
334
+ export const MulticolumnDropdownControlRendererTemplate: (prefix?: string) => ViewTemplate<DispatchRenderer, any>;
335
+
336
+ // @public
337
+ export type MulticolumnDropdownRendererOptions = Pick<ConnectedRenderersOptions, 'allOptionsResourceName' | 'valueField' | 'labelField'> & {
338
+ searchKey?: string | string[];
339
+ columnDefinitions: Record<string, unknown>[];
340
+ request?: Record<string, unknown>;
341
+ baseCriteria?: string;
342
+ advancedSearchReq?: boolean;
343
+ dropdownPlacement?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
344
+ dropdownWidth?: number;
345
+ };
346
+
328
347
  // @public
329
348
  export const mustMatch: (target: string) => (data: any, path: any, label: any) => {
330
349
  instancePath: string;
@@ -414,8 +433,7 @@ export type UiSchemaOptions = StepperOrientationOptions | LabelPlacementOptions;
414
433
 
415
434
  // Warnings were encountered during analysis:
416
435
  //
417
- // src/types.ts:429:3 - (ae-forgotten-export) The symbol "Rule" needs to be exported by the entry point index.d.ts
418
- // src/types.ts:479:3 - (ae-forgotten-export) The symbol "DispatchRenderer" needs to be exported by the entry point index.d.ts
436
+ // src/types.ts:487:3 - (ae-forgotten-export) The symbol "Rule" needs to be exported by the entry point index.d.ts
419
437
 
420
438
  // (No @packageDocumentation comment for this package)
421
439
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/foundation-forms",
3
3
  "description": "Genesis Foundation Forms",
4
- "version": "14.405.0",
4
+ "version": "14.406.0",
5
5
  "sideEffects": false,
6
6
  "license": "SEE LICENSE IN license.txt",
7
7
  "main": "dist/esm/index.js",
@@ -50,23 +50,23 @@
50
50
  }
51
51
  },
52
52
  "devDependencies": {
53
- "@genesislcap/foundation-testing": "14.405.0",
54
- "@genesislcap/genx": "14.405.0",
55
- "@genesislcap/rollup-builder": "14.405.0",
56
- "@genesislcap/ts-builder": "14.405.0",
57
- "@genesislcap/uvu-playwright-builder": "14.405.0",
58
- "@genesislcap/vite-builder": "14.405.0",
59
- "@genesislcap/webpack-builder": "14.405.0",
53
+ "@genesislcap/foundation-testing": "14.406.0",
54
+ "@genesislcap/genx": "14.406.0",
55
+ "@genesislcap/rollup-builder": "14.406.0",
56
+ "@genesislcap/ts-builder": "14.406.0",
57
+ "@genesislcap/uvu-playwright-builder": "14.406.0",
58
+ "@genesislcap/vite-builder": "14.406.0",
59
+ "@genesislcap/webpack-builder": "14.406.0",
60
60
  "@types/json-schema": "^7.0.11",
61
61
  "@types/papaparse": "^5.3.14"
62
62
  },
63
63
  "dependencies": {
64
- "@genesislcap/foundation-comms": "14.405.0",
65
- "@genesislcap/foundation-criteria": "14.405.0",
66
- "@genesislcap/foundation-logger": "14.405.0",
67
- "@genesislcap/foundation-notifications": "14.405.0",
68
- "@genesislcap/foundation-ui": "14.405.0",
69
- "@genesislcap/foundation-utils": "14.405.0",
64
+ "@genesislcap/foundation-comms": "14.406.0",
65
+ "@genesislcap/foundation-criteria": "14.406.0",
66
+ "@genesislcap/foundation-logger": "14.406.0",
67
+ "@genesislcap/foundation-notifications": "14.406.0",
68
+ "@genesislcap/foundation-ui": "14.406.0",
69
+ "@genesislcap/foundation-utils": "14.406.0",
70
70
  "@json-schema-tools/dereferencer": "^1.6.1",
71
71
  "@jsonforms/core": "^3.2.1",
72
72
  "@microsoft/fast-components": "2.30.6",
@@ -88,5 +88,5 @@
88
88
  "access": "public"
89
89
  },
90
90
  "customElements": "dist/custom-elements.json",
91
- "gitHead": "90757d4adb4c7b20ee266e0add3126dd76cb6398"
91
+ "gitHead": "69e2b4662605a6e5e60efe537b8871a7e0c00f44"
92
92
  }