@genesislcap/foundation-forms 14.474.0 → 14.474.2-alpha-9a473cd.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/custom-elements.json +143 -0
- package/dist/dts/jsonforms/renderers/CategorizationWrapperRenderer.d.ts +16 -8
- package/dist/dts/jsonforms/renderers/CategorizationWrapperRenderer.d.ts.map +1 -1
- package/dist/dts/jsonforms/renderers/ConnectedMultiselectControlRenderer.d.ts +2 -0
- package/dist/dts/jsonforms/renderers/ConnectedMultiselectControlRenderer.d.ts.map +1 -1
- package/dist/dts/jsonforms/renderers/VerticalCategorizationWrapperRenderer.d.ts.map +1 -1
- package/dist/dts/types.d.ts +6 -0
- package/dist/dts/types.d.ts.map +1 -1
- package/dist/esm/jsonforms/renderers/CategorizationWrapperRenderer.js +40 -9
- package/dist/esm/jsonforms/renderers/ConnectedMultiselectControlRenderer.js +19 -11
- package/dist/esm/jsonforms/renderers/VerticalCategorizationWrapperRenderer.js +2 -0
- package/dist/foundation-forms.api.json +1 -1
- package/dist/foundation-forms.d.ts +6 -0
- package/package.json +15 -15
|
@@ -2391,6 +2391,29 @@
|
|
|
2391
2391
|
"kind": "javascript-module",
|
|
2392
2392
|
"path": "src/jsonforms/renderers/CategorizationWrapperRenderer.ts",
|
|
2393
2393
|
"declarations": [
|
|
2394
|
+
{
|
|
2395
|
+
"kind": "function",
|
|
2396
|
+
"name": "computeCategoryClassName",
|
|
2397
|
+
"return": {
|
|
2398
|
+
"type": {
|
|
2399
|
+
"text": "string"
|
|
2400
|
+
}
|
|
2401
|
+
},
|
|
2402
|
+
"parameters": [
|
|
2403
|
+
{
|
|
2404
|
+
"name": "category",
|
|
2405
|
+
"type": {
|
|
2406
|
+
"text": "UiSchemaElement"
|
|
2407
|
+
}
|
|
2408
|
+
},
|
|
2409
|
+
{
|
|
2410
|
+
"name": "data",
|
|
2411
|
+
"type": {
|
|
2412
|
+
"text": "any"
|
|
2413
|
+
}
|
|
2414
|
+
}
|
|
2415
|
+
]
|
|
2416
|
+
},
|
|
2394
2417
|
{
|
|
2395
2418
|
"kind": "variable",
|
|
2396
2419
|
"name": "tabControlIconStyles",
|
|
@@ -2427,6 +2450,28 @@
|
|
|
2427
2450
|
},
|
|
2428
2451
|
"default": "new Set([0])"
|
|
2429
2452
|
},
|
|
2453
|
+
{
|
|
2454
|
+
"kind": "field",
|
|
2455
|
+
"name": "activeTabIndex",
|
|
2456
|
+
"type": {
|
|
2457
|
+
"text": "number"
|
|
2458
|
+
},
|
|
2459
|
+
"default": "0"
|
|
2460
|
+
},
|
|
2461
|
+
{
|
|
2462
|
+
"kind": "field",
|
|
2463
|
+
"name": "hasAppliedActiveCategory",
|
|
2464
|
+
"type": {
|
|
2465
|
+
"text": "boolean"
|
|
2466
|
+
},
|
|
2467
|
+
"privacy": "private",
|
|
2468
|
+
"default": "false",
|
|
2469
|
+
"description": "`control` is rebuilt from scratch on every JSONForms state change (every\nkeystroke, validation pass, async default-data update), so `controlChanged`\nfires repeatedly throughout the form's life — not just on first paint.\nApplying `activeCategory` each time would yank the user back to the\nconfigured tab mid-edit (and unmount the open panel). This flag ensures the\ninitial tab is applied once; thereafter the user's own navigation wins."
|
|
2470
|
+
},
|
|
2471
|
+
{
|
|
2472
|
+
"kind": "method",
|
|
2473
|
+
"name": "controlChanged"
|
|
2474
|
+
},
|
|
2430
2475
|
{
|
|
2431
2476
|
"kind": "method",
|
|
2432
2477
|
"name": "isMounted",
|
|
@@ -2483,6 +2528,14 @@
|
|
|
2483
2528
|
}
|
|
2484
2529
|
],
|
|
2485
2530
|
"exports": [
|
|
2531
|
+
{
|
|
2532
|
+
"kind": "js",
|
|
2533
|
+
"name": "computeCategoryClassName",
|
|
2534
|
+
"declaration": {
|
|
2535
|
+
"name": "computeCategoryClassName",
|
|
2536
|
+
"module": "src/jsonforms/renderers/CategorizationWrapperRenderer.ts"
|
|
2537
|
+
}
|
|
2538
|
+
},
|
|
2486
2539
|
{
|
|
2487
2540
|
"kind": "js",
|
|
2488
2541
|
"name": "tabControlIconStyles",
|
|
@@ -2521,6 +2574,46 @@
|
|
|
2521
2574
|
"kind": "javascript-module",
|
|
2522
2575
|
"path": "src/jsonforms/renderers/ConnectedMultiselectControlRenderer.ts",
|
|
2523
2576
|
"declarations": [
|
|
2577
|
+
{
|
|
2578
|
+
"kind": "function",
|
|
2579
|
+
"name": "resolveSelectedOptions",
|
|
2580
|
+
"return": {
|
|
2581
|
+
"type": {
|
|
2582
|
+
"text": "any[]"
|
|
2583
|
+
}
|
|
2584
|
+
},
|
|
2585
|
+
"parameters": [
|
|
2586
|
+
{
|
|
2587
|
+
"name": "control",
|
|
2588
|
+
"type": {
|
|
2589
|
+
"text": "any"
|
|
2590
|
+
}
|
|
2591
|
+
}
|
|
2592
|
+
]
|
|
2593
|
+
},
|
|
2594
|
+
{
|
|
2595
|
+
"kind": "function",
|
|
2596
|
+
"name": "resolveSelectionValue",
|
|
2597
|
+
"return": {
|
|
2598
|
+
"type": {
|
|
2599
|
+
"text": "any"
|
|
2600
|
+
}
|
|
2601
|
+
},
|
|
2602
|
+
"parameters": [
|
|
2603
|
+
{
|
|
2604
|
+
"name": "control",
|
|
2605
|
+
"type": {
|
|
2606
|
+
"text": "any"
|
|
2607
|
+
}
|
|
2608
|
+
},
|
|
2609
|
+
{
|
|
2610
|
+
"name": "detail",
|
|
2611
|
+
"type": {
|
|
2612
|
+
"text": "any"
|
|
2613
|
+
}
|
|
2614
|
+
}
|
|
2615
|
+
]
|
|
2616
|
+
},
|
|
2524
2617
|
{
|
|
2525
2618
|
"kind": "function",
|
|
2526
2619
|
"name": "ConnectedMultiselectControlRendererTemplate",
|
|
@@ -2544,6 +2637,22 @@
|
|
|
2544
2637
|
}
|
|
2545
2638
|
],
|
|
2546
2639
|
"exports": [
|
|
2640
|
+
{
|
|
2641
|
+
"kind": "js",
|
|
2642
|
+
"name": "resolveSelectedOptions",
|
|
2643
|
+
"declaration": {
|
|
2644
|
+
"name": "resolveSelectedOptions",
|
|
2645
|
+
"module": "src/jsonforms/renderers/ConnectedMultiselectControlRenderer.ts"
|
|
2646
|
+
}
|
|
2647
|
+
},
|
|
2648
|
+
{
|
|
2649
|
+
"kind": "js",
|
|
2650
|
+
"name": "resolveSelectionValue",
|
|
2651
|
+
"declaration": {
|
|
2652
|
+
"name": "resolveSelectionValue",
|
|
2653
|
+
"module": "src/jsonforms/renderers/ConnectedMultiselectControlRenderer.ts"
|
|
2654
|
+
}
|
|
2655
|
+
},
|
|
2547
2656
|
{
|
|
2548
2657
|
"kind": "js",
|
|
2549
2658
|
"name": "ConnectedMultiselectControlRendererTemplate",
|
|
@@ -4352,6 +4461,40 @@
|
|
|
4352
4461
|
"module": "src/jsonforms/renderers/CategorizationWrapperRenderer.ts"
|
|
4353
4462
|
}
|
|
4354
4463
|
},
|
|
4464
|
+
{
|
|
4465
|
+
"kind": "field",
|
|
4466
|
+
"name": "activeTabIndex",
|
|
4467
|
+
"type": {
|
|
4468
|
+
"text": "number"
|
|
4469
|
+
},
|
|
4470
|
+
"default": "0",
|
|
4471
|
+
"inheritedFrom": {
|
|
4472
|
+
"name": "CategorizationWrapper",
|
|
4473
|
+
"module": "src/jsonforms/renderers/CategorizationWrapperRenderer.ts"
|
|
4474
|
+
}
|
|
4475
|
+
},
|
|
4476
|
+
{
|
|
4477
|
+
"kind": "field",
|
|
4478
|
+
"name": "hasAppliedActiveCategory",
|
|
4479
|
+
"type": {
|
|
4480
|
+
"text": "boolean"
|
|
4481
|
+
},
|
|
4482
|
+
"privacy": "private",
|
|
4483
|
+
"default": "false",
|
|
4484
|
+
"description": "`control` is rebuilt from scratch on every JSONForms state change (every\nkeystroke, validation pass, async default-data update), so `controlChanged`\nfires repeatedly throughout the form's life — not just on first paint.\nApplying `activeCategory` each time would yank the user back to the\nconfigured tab mid-edit (and unmount the open panel). This flag ensures the\ninitial tab is applied once; thereafter the user's own navigation wins.",
|
|
4485
|
+
"inheritedFrom": {
|
|
4486
|
+
"name": "CategorizationWrapper",
|
|
4487
|
+
"module": "src/jsonforms/renderers/CategorizationWrapperRenderer.ts"
|
|
4488
|
+
}
|
|
4489
|
+
},
|
|
4490
|
+
{
|
|
4491
|
+
"kind": "method",
|
|
4492
|
+
"name": "controlChanged",
|
|
4493
|
+
"inheritedFrom": {
|
|
4494
|
+
"name": "CategorizationWrapper",
|
|
4495
|
+
"module": "src/jsonforms/renderers/CategorizationWrapperRenderer.ts"
|
|
4496
|
+
}
|
|
4497
|
+
},
|
|
4355
4498
|
{
|
|
4356
4499
|
"kind": "method",
|
|
4357
4500
|
"name": "isMounted",
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
import { FASTElement } from '@microsoft/fast-element';
|
|
2
2
|
import { UiSchemaElement } from '../../types';
|
|
3
3
|
/**
|
|
4
|
-
* Resolves the `
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* Tab headers render eagerly (unlike the lazily-mounted panels), so a class
|
|
10
|
-
* applied here is in the DOM for every category on first paint — even before
|
|
11
|
-
* its panel is opened.
|
|
4
|
+
* Resolves the `activeCategory` option (the zero-based index of the category
|
|
5
|
+
* tab that should open on first render) to a valid tab index. Out-of-bounds or
|
|
6
|
+
* non-numeric values fall back to `0` (the first tab), preserving the default
|
|
7
|
+
* behaviour.
|
|
12
8
|
*
|
|
13
9
|
* @internal
|
|
14
10
|
*/
|
|
11
|
+
export declare function resolveActiveCategoryIndex(activeCategory: number | undefined, elements: UiSchemaElement[]): number;
|
|
15
12
|
export declare function computeCategoryClassName(category: UiSchemaElement, data: any): string;
|
|
16
13
|
export declare const tabControlIconStyles: import("@microsoft/fast-element").ElementStyles;
|
|
17
14
|
export declare const CategorizationWrapperRendererTemplate: (prefix?: string) => import("@microsoft/fast-element").ViewTemplate<CategorizationWrapper, any>;
|
|
@@ -19,6 +16,17 @@ export declare class CategorizationWrapper extends FASTElement {
|
|
|
19
16
|
form: any;
|
|
20
17
|
control: any;
|
|
21
18
|
mountedTabs: Set<number>;
|
|
19
|
+
activeTabIndex: number;
|
|
20
|
+
/**
|
|
21
|
+
* `control` is rebuilt from scratch on every JSONForms state change (every
|
|
22
|
+
* keystroke, validation pass, async default-data update), so `controlChanged`
|
|
23
|
+
* fires repeatedly throughout the form's life — not just on first paint.
|
|
24
|
+
* Applying `activeCategory` each time would yank the user back to the
|
|
25
|
+
* configured tab mid-edit (and unmount the open panel). This flag ensures the
|
|
26
|
+
* initial tab is applied once; thereafter the user's own navigation wins.
|
|
27
|
+
*/
|
|
28
|
+
private hasAppliedActiveCategory;
|
|
29
|
+
controlChanged(): void;
|
|
22
30
|
isMounted(index: number): boolean;
|
|
23
31
|
handleTabChange(event: Event): void;
|
|
24
32
|
hasCategoryError(categoryIndex: number): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CategorizationWrapperRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/CategorizationWrapperRenderer.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,WAAW,EAIZ,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAA2C,eAAe,EAAE,MAAM,aAAa,CAAC;AAEvF
|
|
1
|
+
{"version":3,"file":"CategorizationWrapperRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/CategorizationWrapperRenderer.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,WAAW,EAIZ,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAA2C,eAAe,EAAE,MAAM,aAAa,CAAC;AAEvF;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,QAAQ,EAAE,eAAe,EAAE,GAC1B,MAAM,CAKR;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,GAAG,MAAM,CAMrF;AAED,eAAO,MAAM,oBAAoB,iDAKhC,CAAC;AAEF,eAAO,MAAM,qCAAqC,GAChD,eAAe,+EA6DhB,CAAC;AAkBF,qBAQa,qBAAsB,SAAQ,WAAW;IACxC,IAAI,MAAC;IACL,OAAO,MAAC;IACR,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAgB;IACxC,cAAc,EAAE,MAAM,CAAK;IAEvC;;;;;;;OAOG;IACH,OAAO,CAAC,wBAAwB,CAAS;IAEzC,cAAc;IAWd,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIjC,eAAe,CAAC,KAAK,EAAE,KAAK;IAQ5B,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;CAQjD"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { RendererEntry } from '../../types';
|
|
2
2
|
import { DispatchRenderer } from './dispatch-renderer';
|
|
3
|
+
export declare const resolveSelectedOptions: (control: any) => any[];
|
|
4
|
+
export declare const resolveSelectionValue: (control: any, detail: any) => any;
|
|
3
5
|
export declare const ConnectedMultiselectControlRendererTemplate: (prefix?: string) => import("@microsoft/fast-element").ViewTemplate<DispatchRenderer, any>;
|
|
4
6
|
export declare const ConnectedMultiselectControlRendererEntry: RendererEntry;
|
|
5
7
|
//# sourceMappingURL=ConnectedMultiselectControlRenderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectedMultiselectControlRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/ConnectedMultiselectControlRenderer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ConnectedMultiselectControlRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/ConnectedMultiselectControlRenderer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKvD,eAAO,MAAM,sBAAsB,GAAI,SAAS,GAAG,KAAG,GAAG,EAOxD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,SAAS,GAAG,EAAE,QAAQ,GAAG,KAAG,GAMjE,CAAC;AAEF,eAAO,MAAM,2CAA2C,GACtD,SAAQ,MAAe,0EAgCxB,CAAC;AAEF,eAAO,MAAM,wCAAwC,EAAE,aAMtD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VerticalCategorizationWrapperRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/VerticalCategorizationWrapperRenderer.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,qBAAqB,EAA4B,MAAM,iCAAiC,CAAC;AAElG,eAAO,MAAM,6CAA6C,GACxD,eAAe,
|
|
1
|
+
{"version":3,"file":"VerticalCategorizationWrapperRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/VerticalCategorizationWrapperRenderer.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,qBAAqB,EAA4B,MAAM,iCAAiC,CAAC;AAElG,eAAO,MAAM,6CAA6C,GACxD,eAAe,uFA0EhB,CAAC;AAmEF,qBAQa,6BAA8B,SAAQ,qBAAqB;IAChE,MAAM,EAAE,MAAM,CAAM;IAE1B,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAMjD,iBAAiB;CAIlB"}
|
package/dist/dts/types.d.ts
CHANGED
|
@@ -345,6 +345,12 @@ export type CategorizationLayoutOptions = {
|
|
|
345
345
|
* @public
|
|
346
346
|
*/
|
|
347
347
|
layout?: CategorizationLayoutType;
|
|
348
|
+
/**
|
|
349
|
+
* Zero-based index of the category tab to open on first render.
|
|
350
|
+
* Out-of-bounds / non-numeric values fall back to 0 (the first tab).
|
|
351
|
+
* @public
|
|
352
|
+
*/
|
|
353
|
+
activeCategory?: number;
|
|
348
354
|
};
|
|
349
355
|
/**
|
|
350
356
|
* All configuration options that are available.
|
package/dist/dts/types.d.ts.map
CHANGED
|
@@ -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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"}
|
|
@@ -2,17 +2,19 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import { html, css, observable, customElement, FASTElement, repeat, when, } from '@microsoft/fast-element';
|
|
3
3
|
import { classNames } from '@microsoft/fast-web-utilities';
|
|
4
4
|
/**
|
|
5
|
-
* Resolves the `
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* Tab headers render eagerly (unlike the lazily-mounted panels), so a class
|
|
11
|
-
* applied here is in the DOM for every category on first paint — even before
|
|
12
|
-
* its panel is opened.
|
|
5
|
+
* Resolves the `activeCategory` option (the zero-based index of the category
|
|
6
|
+
* tab that should open on first render) to a valid tab index. Out-of-bounds or
|
|
7
|
+
* non-numeric values fall back to `0` (the first tab), preserving the default
|
|
8
|
+
* behaviour.
|
|
13
9
|
*
|
|
14
10
|
* @internal
|
|
15
11
|
*/
|
|
12
|
+
export function resolveActiveCategoryIndex(activeCategory, elements) {
|
|
13
|
+
if (typeof activeCategory === 'number') {
|
|
14
|
+
return activeCategory >= 0 && activeCategory < elements.length ? activeCategory : 0;
|
|
15
|
+
}
|
|
16
|
+
return 0;
|
|
17
|
+
}
|
|
16
18
|
export function computeCategoryClassName(category, data) {
|
|
17
19
|
var _a, _b;
|
|
18
20
|
const className = (_a = category === null || category === void 0 ? void 0 : category.options) === null || _a === void 0 ? void 0 : _a.className;
|
|
@@ -29,9 +31,10 @@ export const tabControlIconStyles = css `
|
|
|
29
31
|
`;
|
|
30
32
|
export const CategorizationWrapperRendererTemplate = (prefix = 'zero') => html `
|
|
31
33
|
<template>
|
|
32
|
-
<${prefix}-tabs appearance="secondary" class="tabs-container" @change=${(x, ctx) => x.handleTabChange(ctx.event)}>
|
|
34
|
+
<${prefix}-tabs appearance="secondary" class="tabs-container" :activeid="${(x) => 'tab-' + x.activeTabIndex}" @change=${(x, ctx) => x.handleTabChange(ctx.event)}>
|
|
33
35
|
${repeat((x) => x.control.uischema.elements, html `
|
|
34
36
|
<${prefix}-tab
|
|
37
|
+
id="${(x, ctx) => 'tab-' + ctx.index}"
|
|
35
38
|
appearance="secondary"
|
|
36
39
|
class="${(x, ctx) => {
|
|
37
40
|
var _a, _b, _c;
|
|
@@ -89,6 +92,30 @@ let CategorizationWrapper = class CategorizationWrapper extends FASTElement {
|
|
|
89
92
|
constructor() {
|
|
90
93
|
super(...arguments);
|
|
91
94
|
this.mountedTabs = new Set([0]);
|
|
95
|
+
this.activeTabIndex = 0;
|
|
96
|
+
/**
|
|
97
|
+
* `control` is rebuilt from scratch on every JSONForms state change (every
|
|
98
|
+
* keystroke, validation pass, async default-data update), so `controlChanged`
|
|
99
|
+
* fires repeatedly throughout the form's life — not just on first paint.
|
|
100
|
+
* Applying `activeCategory` each time would yank the user back to the
|
|
101
|
+
* configured tab mid-edit (and unmount the open panel). This flag ensures the
|
|
102
|
+
* initial tab is applied once; thereafter the user's own navigation wins.
|
|
103
|
+
*/
|
|
104
|
+
this.hasAppliedActiveCategory = false;
|
|
105
|
+
}
|
|
106
|
+
controlChanged() {
|
|
107
|
+
var _a, _b, _c, _d;
|
|
108
|
+
if (!this.control)
|
|
109
|
+
return;
|
|
110
|
+
if (this.hasAppliedActiveCategory)
|
|
111
|
+
return;
|
|
112
|
+
const activeCategory = (_b = (_a = this.control.uischema) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.activeCategory;
|
|
113
|
+
if (activeCategory === undefined)
|
|
114
|
+
return;
|
|
115
|
+
this.hasAppliedActiveCategory = true;
|
|
116
|
+
const index = resolveActiveCategoryIndex(activeCategory, (_d = (_c = this.control.uischema) === null || _c === void 0 ? void 0 : _c.elements) !== null && _d !== void 0 ? _d : []);
|
|
117
|
+
this.activeTabIndex = index;
|
|
118
|
+
this.mountedTabs = new Set([index]);
|
|
92
119
|
}
|
|
93
120
|
isMounted(index) {
|
|
94
121
|
return this.mountedTabs.has(index);
|
|
@@ -97,6 +124,7 @@ let CategorizationWrapper = class CategorizationWrapper extends FASTElement {
|
|
|
97
124
|
if (event.target !== event.currentTarget)
|
|
98
125
|
return;
|
|
99
126
|
const index = event.target.currentTabIndex;
|
|
127
|
+
this.activeTabIndex = index;
|
|
100
128
|
if (this.mountedTabs.has(index))
|
|
101
129
|
return;
|
|
102
130
|
this.mountedTabs = new Set(this.mountedTabs).add(index);
|
|
@@ -120,6 +148,9 @@ __decorate([
|
|
|
120
148
|
__decorate([
|
|
121
149
|
observable
|
|
122
150
|
], CategorizationWrapper.prototype, "mountedTabs", void 0);
|
|
151
|
+
__decorate([
|
|
152
|
+
observable
|
|
153
|
+
], CategorizationWrapper.prototype, "activeTabIndex", void 0);
|
|
123
154
|
CategorizationWrapper = __decorate([
|
|
124
155
|
customElement({
|
|
125
156
|
name: 'categorization-wrapper',
|
|
@@ -5,6 +5,23 @@ import { isOneOfOptionMultiselect } from '../testers/isOneOfOptionMultiselect';
|
|
|
5
5
|
import { controlWrapperTemplate } from './ControlWrapperRenderer';
|
|
6
6
|
import { MULTISELECT_CONTROL_RANK } from './RenderersRanks';
|
|
7
7
|
MultiselectDatasource;
|
|
8
|
+
export const resolveSelectedOptions = (control) => {
|
|
9
|
+
var _a, _b;
|
|
10
|
+
const delimiter = (_b = (_a = control === null || control === void 0 ? void 0 : control.uischema) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.delimiter;
|
|
11
|
+
const data = control === null || control === void 0 ? void 0 : control.data;
|
|
12
|
+
if (delimiter) {
|
|
13
|
+
return data ? data.split(delimiter) : [];
|
|
14
|
+
}
|
|
15
|
+
return data || [];
|
|
16
|
+
};
|
|
17
|
+
export const resolveSelectionValue = (control, detail) => {
|
|
18
|
+
var _a, _b;
|
|
19
|
+
const delimiter = (_b = (_a = control === null || control === void 0 ? void 0 : control.uischema) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.delimiter;
|
|
20
|
+
if (!delimiter) {
|
|
21
|
+
return detail;
|
|
22
|
+
}
|
|
23
|
+
return detail && detail.length ? detail.join(delimiter) : null;
|
|
24
|
+
};
|
|
8
25
|
export const ConnectedMultiselectControlRendererTemplate = (prefix = 'zero') => html `
|
|
9
26
|
<template>
|
|
10
27
|
${controlWrapperTemplate({
|
|
@@ -14,19 +31,10 @@ export const ConnectedMultiselectControlRendererTemplate = (prefix = 'zero') =>
|
|
|
14
31
|
style="width: 100%"
|
|
15
32
|
async=${(x) => { var _a; return (_a = x.control.uischema.options) === null || _a === void 0 ? void 0 : _a.async; }}
|
|
16
33
|
?disabled=${(x) => !x.control.enabled}
|
|
17
|
-
:selectedOptions=${(x) =>
|
|
18
|
-
var _a, _b, _c;
|
|
19
|
-
const selectedOptions = ((_a = x.control.uischema.options) === null || _a === void 0 ? void 0 : _a.delimiter)
|
|
20
|
-
? (_b = x.control.data) === null || _b === void 0 ? void 0 : _b.split((_c = x.control.uischema.options) === null || _c === void 0 ? void 0 : _c.delimiter)
|
|
21
|
-
: x.control.data;
|
|
22
|
-
return selectedOptions || [];
|
|
23
|
-
}}
|
|
34
|
+
:selectedOptions=${(x) => resolveSelectedOptions(x.control)}
|
|
24
35
|
tabindex="${(x) => { var _a, _b; return (_b = (_a = x.control.uischema) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.tabIndex; }}"
|
|
25
36
|
@selectionChange=${(x, c) => {
|
|
26
|
-
|
|
27
|
-
const value = !((_a = x.control.uischema.options) === null || _a === void 0 ? void 0 : _a.delimiter)
|
|
28
|
-
? c.event.detail
|
|
29
|
-
: (_b = c.event.detail) === null || _b === void 0 ? void 0 : _b.join((_c = x.control.uischema.options) === null || _c === void 0 ? void 0 : _c.delimiter);
|
|
37
|
+
const value = resolveSelectionValue(x.control, c.event.detail);
|
|
30
38
|
x.control.handleChange(x.control.path, value);
|
|
31
39
|
x.$emit('change');
|
|
32
40
|
x.onBlur();
|
|
@@ -7,10 +7,12 @@ export const VerticalCategorizationWrapperRendererTemplate = (prefix = 'zero') =
|
|
|
7
7
|
<${prefix}-tabs
|
|
8
8
|
class="tabs-container"
|
|
9
9
|
orientation="vertical"
|
|
10
|
+
:activeid="${(x) => 'tab-' + x.activeTabIndex}"
|
|
10
11
|
@change=${(x, ctx) => x.handleTabChange(ctx.event)}
|
|
11
12
|
>
|
|
12
13
|
${repeat((x) => x.control.uischema.elements, html `
|
|
13
14
|
<${prefix}-tab
|
|
15
|
+
id="${(x, ctx) => 'tab-' + ctx.index}"
|
|
14
16
|
class="${(x, ctx) => {
|
|
15
17
|
var _a, _b, _c;
|
|
16
18
|
const custom = computeCategoryClassName(x, (_c = (_b = (_a = ctx.parent.form) === null || _a === void 0 ? void 0 : _a.jsonforms) === null || _b === void 0 ? void 0 : _b.core) === null || _c === void 0 ? void 0 : _c.data);
|
|
@@ -273,6 +273,12 @@ export declare type CategorizationLayoutOptions = {
|
|
|
273
273
|
* @public
|
|
274
274
|
*/
|
|
275
275
|
layout?: CategorizationLayoutType;
|
|
276
|
+
/**
|
|
277
|
+
* Zero-based index of the category tab to open on first render.
|
|
278
|
+
* Out-of-bounds / non-numeric values fall back to 0 (the first tab).
|
|
279
|
+
* @public
|
|
280
|
+
*/
|
|
281
|
+
activeCategory?: number;
|
|
276
282
|
};
|
|
277
283
|
|
|
278
284
|
/**
|
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.474.0",
|
|
4
|
+
"version": "14.474.2-alpha-9a473cd.0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"license": "SEE LICENSE IN license.txt",
|
|
7
7
|
"main": "dist/esm/index.js",
|
|
@@ -59,13 +59,13 @@
|
|
|
59
59
|
}
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
|
-
"@genesislcap/foundation-testing": "14.474.0",
|
|
63
|
-
"@genesislcap/genx": "14.474.0",
|
|
64
|
-
"@genesislcap/rollup-builder": "14.474.0",
|
|
65
|
-
"@genesislcap/ts-builder": "14.474.0",
|
|
66
|
-
"@genesislcap/uvu-playwright-builder": "14.474.0",
|
|
67
|
-
"@genesislcap/vite-builder": "14.474.0",
|
|
68
|
-
"@genesislcap/webpack-builder": "14.474.0",
|
|
62
|
+
"@genesislcap/foundation-testing": "14.474.2-alpha-9a473cd.0",
|
|
63
|
+
"@genesislcap/genx": "14.474.2-alpha-9a473cd.0",
|
|
64
|
+
"@genesislcap/rollup-builder": "14.474.2-alpha-9a473cd.0",
|
|
65
|
+
"@genesislcap/ts-builder": "14.474.2-alpha-9a473cd.0",
|
|
66
|
+
"@genesislcap/uvu-playwright-builder": "14.474.2-alpha-9a473cd.0",
|
|
67
|
+
"@genesislcap/vite-builder": "14.474.2-alpha-9a473cd.0",
|
|
68
|
+
"@genesislcap/webpack-builder": "14.474.2-alpha-9a473cd.0",
|
|
69
69
|
"@types/json-schema": "^7.0.11",
|
|
70
70
|
"@types/papaparse": "^5.3.14"
|
|
71
71
|
},
|
|
@@ -82,12 +82,12 @@
|
|
|
82
82
|
}
|
|
83
83
|
},
|
|
84
84
|
"dependencies": {
|
|
85
|
-
"@genesislcap/foundation-comms": "14.474.0",
|
|
86
|
-
"@genesislcap/foundation-criteria": "14.474.0",
|
|
87
|
-
"@genesislcap/foundation-logger": "14.474.0",
|
|
88
|
-
"@genesislcap/foundation-notifications": "14.474.0",
|
|
89
|
-
"@genesislcap/foundation-ui": "14.474.0",
|
|
90
|
-
"@genesislcap/foundation-utils": "14.474.0",
|
|
85
|
+
"@genesislcap/foundation-comms": "14.474.2-alpha-9a473cd.0",
|
|
86
|
+
"@genesislcap/foundation-criteria": "14.474.2-alpha-9a473cd.0",
|
|
87
|
+
"@genesislcap/foundation-logger": "14.474.2-alpha-9a473cd.0",
|
|
88
|
+
"@genesislcap/foundation-notifications": "14.474.2-alpha-9a473cd.0",
|
|
89
|
+
"@genesislcap/foundation-ui": "14.474.2-alpha-9a473cd.0",
|
|
90
|
+
"@genesislcap/foundation-utils": "14.474.2-alpha-9a473cd.0",
|
|
91
91
|
"@json-schema-tools/dereferencer": "^1.6.1",
|
|
92
92
|
"@jsonforms/core": "^3.2.1",
|
|
93
93
|
"@microsoft/fast-components": "2.30.6",
|
|
@@ -109,5 +109,5 @@
|
|
|
109
109
|
"access": "public"
|
|
110
110
|
},
|
|
111
111
|
"customElements": "dist/custom-elements.json",
|
|
112
|
-
"gitHead": "
|
|
112
|
+
"gitHead": "6390b95d9b994cc400f03ceed0c094eb54c1044d"
|
|
113
113
|
}
|