@ketvietlab/design-system 0.1.30 → 0.1.31

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.
@@ -1 +1 @@
1
- {"version":3,"file":"inventory.generated.js","sourceRoot":"","sources":["../../../../../../packages/design-system/src/catalogue/inventory.generated.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAuC/D,MAAM,CAAC,MAAM,qBAAqB,GAA0B,IAAI,CAAC,KAAK,CACpE,k90QAAk90Q,CACn90Q,CAAA"}
1
+ {"version":3,"file":"inventory.generated.js","sourceRoot":"","sources":["../../../../../../packages/design-system/src/catalogue/inventory.generated.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAuC/D,MAAM,CAAC,MAAM,qBAAqB,GAA0B,IAAI,CAAC,KAAK,CACpE,071QAA071Q,CAC371Q,CAAA"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schemaVersion": "ketjs.design-system-inventory.v1",
3
- "version": "0.1.30",
3
+ "version": "0.1.31",
4
4
  "generatedFrom": [
5
5
  "packages/design-system/src/index.ts",
6
6
  "packages/design-system/src/catalogue/inventory-policy.json",
@@ -10,14 +10,14 @@
10
10
  "publicExports": 278,
11
11
  "runtimeExports": 138,
12
12
  "registeredComponents": 133,
13
- "compatibilityExports": 257,
13
+ "compatibilityExports": 259,
14
14
  "compatibilityModules": 43,
15
15
  "plannedComponents": 0,
16
16
  "publicGaps": 138,
17
17
  "runtimeGaps": 5,
18
18
  "typeGaps": 133,
19
19
  "cssFiles": 79,
20
- "cssLines": 16153
20
+ "cssLines": 15905
21
21
  },
22
22
  "rows": [
23
23
  {
@@ -2938,6 +2938,7 @@
2938
2938
  ],
2939
2939
  "tests": "present",
2940
2940
  "testFiles": [
2941
+ "test/backend-ui.test.ts",
2941
2942
  "test/design-system.test.tsx",
2942
2943
  "test/product-modal-view.test.tsx",
2943
2944
  "test/search-filter-layout.test.tsx",
@@ -6876,6 +6877,7 @@
6876
6877
  "specimenFiles": [],
6877
6878
  "tests": "present",
6878
6879
  "testFiles": [
6880
+ "test/backend-ui.test.ts",
6879
6881
  "test/design-system.test.tsx",
6880
6882
  "test/product-modal-view.test.tsx",
6881
6883
  "test/search-filter-layout.test.tsx",
@@ -7261,6 +7263,24 @@
7261
7263
  "testFiles": [],
7262
7264
  "gapTask": "DS-015"
7263
7265
  },
7266
+ {
7267
+ "scope": "compatibility",
7268
+ "name": "RECORD_DIALOG_PARAM",
7269
+ "imported": "RECORD_DIALOG_PARAM",
7270
+ "kind": "runtime",
7271
+ "source": "./record-modal.tsx",
7272
+ "owner": "Overlays",
7273
+ "maturity": "compatibility",
7274
+ "decision": "promote",
7275
+ "target": "Public core",
7276
+ "wave": 2,
7277
+ "consumers": 6,
7278
+ "specimen": "not-applicable",
7279
+ "specimenFiles": [],
7280
+ "tests": "gap",
7281
+ "testFiles": [],
7282
+ "gapTask": "DS-015"
7283
+ },
7264
7284
  {
7265
7285
  "scope": "compatibility",
7266
7286
  "name": "RECORD_NEW_ID",
@@ -7827,6 +7847,24 @@
7827
7847
  "testFiles": ["test/backend-ui.test.ts"],
7828
7848
  "gapTask": "DS-007"
7829
7849
  },
7850
+ {
7851
+ "scope": "compatibility",
7852
+ "name": "RecordStateTrigger",
7853
+ "imported": "RecordStateTrigger",
7854
+ "kind": "runtime",
7855
+ "source": "./client/record-modal-form.tsx",
7856
+ "owner": "Overlays",
7857
+ "maturity": "compatibility",
7858
+ "decision": "promote",
7859
+ "target": "Public core",
7860
+ "wave": 2,
7861
+ "consumers": 0,
7862
+ "specimen": "not-applicable",
7863
+ "specimenFiles": [],
7864
+ "tests": "gap",
7865
+ "testFiles": [],
7866
+ "gapTask": "DS-015"
7867
+ },
7830
7868
  {
7831
7869
  "scope": "compatibility",
7832
7870
  "name": "RecordSummaryItem",
@@ -9786,6 +9824,7 @@
9786
9824
  "test/sale-invoicing-policy-screens.test.tsx",
9787
9825
  "test/stock-picking-types-screens.test.tsx",
9788
9826
  "test/ui-modal-large-dialog.test.tsx",
9827
+ "test/ui-record-modal.test.tsx",
9789
9828
  "test/website-search-index.test.ts"
9790
9829
  ],
9791
9830
  "gapTask": "DS-010"
@@ -12120,13 +12159,14 @@
12120
12159
  {
12121
12160
  "layer": "public",
12122
12161
  "file": "packages/design-system/src/patterns/list-page/styles.css",
12123
- "lines": 232,
12162
+ "lines": 239,
12124
12163
  "hooks": [
12125
12164
  "list-page",
12126
12165
  "list-page-actions",
12127
12166
  "list-page-body",
12128
12167
  "list-page-context",
12129
12168
  "list-page-controls",
12169
+ "list-page-description",
12130
12170
  "list-page-eyebrow",
12131
12171
  "list-page-footer",
12132
12172
  "list-page-header",
@@ -12144,7 +12184,7 @@
12144
12184
  {
12145
12185
  "layer": "public",
12146
12186
  "file": "packages/design-system/src/patterns/modal-sheet/styles.css",
12147
- "lines": 244,
12187
+ "lines": 249,
12148
12188
  "hooks": [
12149
12189
  "action",
12150
12190
  "modal-actions",
@@ -12158,6 +12198,7 @@
12158
12198
  "modal-sheet",
12159
12199
  "modal-title",
12160
12200
  "modal-title-row",
12201
+ "tab-panel",
12161
12202
  "tabbed-view"
12162
12203
  ]
12163
12204
  },
@@ -12324,7 +12365,7 @@
12324
12365
  {
12325
12366
  "layer": "public",
12326
12367
  "file": "packages/design-system/src/primitives/status/styles.css",
12327
- "lines": 146,
12368
+ "lines": 147,
12328
12369
  "hooks": [
12329
12370
  "avatar",
12330
12371
  "badge",
@@ -12453,7 +12494,6 @@
12453
12494
  "file": "packages/ketsuite/src/modules/backend/design/content.css",
12454
12495
  "lines": 709,
12455
12496
  "hooks": [
12456
- "action",
12457
12497
  "action-label",
12458
12498
  "action-spinner",
12459
12499
  "app-location-bar",
@@ -12524,10 +12564,8 @@
12524
12564
  {
12525
12565
  "layer": "compatibility",
12526
12566
  "file": "packages/ketsuite/src/modules/backend/design/controls.css",
12527
- "lines": 347,
12567
+ "lines": 321,
12528
12568
  "hooks": [
12529
- "action",
12530
- "action-group",
12531
12569
  "action-icon",
12532
12570
  "action-spinner",
12533
12571
  "code",
@@ -12552,15 +12590,13 @@
12552
12590
  "section",
12553
12591
  "section-body",
12554
12592
  "stack",
12555
- "surface",
12556
- "tag",
12557
- "tag-remove"
12593
+ "surface"
12558
12594
  ]
12559
12595
  },
12560
12596
  {
12561
12597
  "layer": "compatibility",
12562
12598
  "file": "packages/ketsuite/src/modules/backend/design/forms.css",
12563
- "lines": 1112,
12599
+ "lines": 926,
12564
12600
  "hooks": [
12565
12601
  "action",
12566
12602
  "action-group",
@@ -12614,16 +12650,6 @@
12614
12650
  "media-placeholder",
12615
12651
  "media-primary",
12616
12652
  "media-upload",
12617
- "modal-backdrop",
12618
- "modal-body",
12619
- "modal-close",
12620
- "modal-description",
12621
- "modal-head",
12622
- "modal-heading",
12623
- "modal-layer",
12624
- "modal-sheet",
12625
- "modal-title",
12626
- "modal-title-row",
12627
12653
  "record-form",
12628
12654
  "record-form-with-image",
12629
12655
  "record-image",
@@ -12637,13 +12663,6 @@
12637
12663
  "relation-dialog-toolbar",
12638
12664
  "relation-menu",
12639
12665
  "relation-options",
12640
- "section",
12641
- "section-actions",
12642
- "section-body",
12643
- "section-description",
12644
- "section-eyebrow",
12645
- "section-head",
12646
- "section-title",
12647
12666
  "surface"
12648
12667
  ]
12649
12668
  },
@@ -12670,12 +12689,11 @@
12670
12689
  {
12671
12690
  "layer": "compatibility",
12672
12691
  "file": "packages/ketsuite/src/modules/backend/design/lists.css",
12673
- "lines": 1498,
12692
+ "lines": 1449,
12674
12693
  "hooks": [
12675
12694
  "app-main",
12676
12695
  "app-shell",
12677
12696
  "avatar",
12678
- "badge",
12679
12697
  "board-page",
12680
12698
  "bulk-action",
12681
12699
  "bulk-actions",
@@ -4,6 +4,7 @@ export type PageIdentityProps = {
4
4
  context?: JSXChild;
5
5
  eyebrow?: string | null;
6
6
  title: string;
7
+ description?: JSXChild;
7
8
  status?: JSXChild;
8
9
  actions?: JSXChild;
9
10
  /** Retain action content while removing an empty or conditional identity slot from layout. */
@@ -12,10 +13,6 @@ export type PageIdentityProps = {
12
13
  };
13
14
  /**
14
15
  * The single identity band shared by every full-page component and recipe.
15
- *
16
- * A page identity has no description: every page header keeps one height, so
17
- * switching screens never moves the controls and content below it. Explain a
18
- * section inside the section, or put guidance in the empty state.
19
16
  */
20
17
  export declare const pageIdentityContent: (kind: PageIdentityKind, props: PageIdentityProps) => TemplateResult;
21
18
  export declare const pageIdentity: (kind: PageIdentityKind, props: PageIdentityProps) => TemplateResult;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/layouts/page-identity/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,WAAW,GACX,aAAa,GACb,WAAW,GACX,gBAAgB,GAChB,gBAAgB,GAChB,YAAY,CAAA;AAEhB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,8FAA8F;IAC9F,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,SAAU,gBAAgB,SAAS,iBAAiB,KAAG,cAoCtF,CAAA;AAED,eAAO,MAAM,YAAY,SAAU,gBAAgB,SAAS,iBAAiB,KAAG,cAW/E,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/layouts/page-identity/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,WAAW,GACX,aAAa,GACb,WAAW,GACX,gBAAgB,GAChB,gBAAgB,GAChB,YAAY,CAAA;AAEhB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,QAAQ,CAAA;IACtB,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,8FAA8F;IAC9F,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,SAAU,gBAAgB,SAAS,iBAAiB,KAAG,cAyCtF,CAAA;AAED,eAAO,MAAM,YAAY,SAAU,gBAAgB,SAAS,iBAAiB,KAAG,cAW/E,CAAA"}
@@ -1,11 +1,7 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "@ketvietlab/ketjs-view/jsx-runtime";
2
2
  /**
3
3
  * The single identity band shared by every full-page component and recipe.
4
- *
5
- * A page identity has no description: every page header keeps one height, so
6
- * switching screens never moves the controls and content below it. Explain a
7
- * section inside the section, or put guidance in the empty state.
8
4
  */
9
- export const pageIdentityContent = (kind, props) => (_jsxs(_Fragment, { children: [_jsxs("div", { "data-ui": `${kind}-heading`, "data-kv-page-identity": "heading", children: [!!props.eyebrow && (_jsx("p", { "data-ui": `${kind}-eyebrow`, "data-kv-page-identity": "eyebrow", children: props.eyebrow })), _jsxs("div", { "data-ui": `${kind}-title-row`, "data-kv-page-identity": "title-row", children: [_jsx("h1", { "data-ui": `${kind}-title`, "data-kv-page-identity": "title", children: props.title }), props.actions !== undefined && (_jsx("div", { "data-ui": `${kind}-actions`, "data-kv-page-identity": "actions", hidden: props.actionsHidden === true, children: props.actions }))] }), props.status !== undefined && (_jsx("div", { "data-ui": `${kind}-subline`, "data-kv-page-identity": "subline", children: _jsx("span", { "data-ui": `${kind}-status`, "data-kv-page-identity": "status", children: props.status }) }))] }), props.meta !== undefined && (_jsx("div", { "data-ui": `${kind}-meta`, "data-kv-page-identity": "meta", children: props.meta }))] }));
5
+ export const pageIdentityContent = (kind, props) => (_jsxs(_Fragment, { children: [_jsxs("div", { "data-ui": `${kind}-heading`, "data-kv-page-identity": "heading", children: [!!props.eyebrow && (_jsx("p", { "data-ui": `${kind}-eyebrow`, "data-kv-page-identity": "eyebrow", children: props.eyebrow })), _jsxs("div", { "data-ui": `${kind}-title-row`, "data-kv-page-identity": "title-row", children: [_jsx("h1", { "data-ui": `${kind}-title`, "data-kv-page-identity": "title", children: props.title }), props.actions !== undefined && (_jsx("div", { "data-ui": `${kind}-actions`, "data-kv-page-identity": "actions", hidden: props.actionsHidden === true, children: props.actions }))] }), props.description !== undefined && props.description !== null && props.description !== '' && (_jsx("p", { "data-ui": `${kind}-description`, "data-kv-page-identity": "description", children: props.description })), props.status !== undefined && (_jsx("div", { "data-ui": `${kind}-subline`, "data-kv-page-identity": "subline", children: _jsx("span", { "data-ui": `${kind}-status`, "data-kv-page-identity": "status", children: props.status }) }))] }), props.meta !== undefined && (_jsx("div", { "data-ui": `${kind}-meta`, "data-kv-page-identity": "meta", children: props.meta }))] }));
10
6
  export const pageIdentity = (kind, props) => (_jsxs(_Fragment, { children: [props.context != null && (_jsx("div", { "data-ui": `${kind}-context`, "data-kv-page-identity": "context", children: props.context })), _jsx("header", { "data-ui": `${kind}-header`, "data-kv-page-identity": "header", children: pageIdentityContent(kind, props) })] }));
11
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/design-system/src/layouts/page-identity/index.tsx"],"names":[],"mappings":";AAsBA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAsB,EAAE,KAAwB,EAAkB,EAAE,CAAC,CACvG,8BACE,0BAAc,GAAG,IAAI,UAAU,2BAAwB,SAAS,aAC7D,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAClB,uBAAY,GAAG,IAAI,UAAU,2BAAwB,SAAS,YAC3D,KAAK,CAAC,OAAO,GACZ,CACL,EACD,0BAAc,GAAG,IAAI,YAAY,2BAAwB,WAAW,aAClE,wBAAa,GAAG,IAAI,QAAQ,2BAAwB,OAAO,YACxD,KAAK,CAAC,KAAK,GACT,EACJ,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CAC9B,yBACW,GAAG,IAAI,UAAU,2BACJ,SAAS,EAC/B,MAAM,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,YAEnC,KAAK,CAAC,OAAO,GACV,CACP,IACG,EACL,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAC7B,yBAAc,GAAG,IAAI,UAAU,2BAAwB,SAAS,YAC9D,0BAAe,GAAG,IAAI,SAAS,2BAAwB,QAAQ,YAC5D,KAAK,CAAC,MAAM,GACR,GACH,CACP,IACG,EACL,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAC3B,yBAAc,GAAG,IAAI,OAAO,2BAAwB,MAAM,YACvD,KAAK,CAAC,IAAI,GACP,CACP,IACA,CACJ,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAsB,EAAE,KAAwB,EAAkB,EAAE,CAAC,CAChG,8BACG,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,CACxB,yBAAc,GAAG,IAAI,UAAU,2BAAwB,SAAS,YAC7D,KAAK,CAAC,OAAO,GACV,CACP,EACD,4BAAiB,GAAG,IAAI,SAAS,2BAAwB,QAAQ,YAC9D,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,GAC1B,IACR,CACJ,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/design-system/src/layouts/page-identity/index.tsx"],"names":[],"mappings":";AAuBA;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAsB,EAAE,KAAwB,EAAkB,EAAE,CAAC,CACvG,8BACE,0BAAc,GAAG,IAAI,UAAU,2BAAwB,SAAS,aAC7D,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAClB,uBAAY,GAAG,IAAI,UAAU,2BAAwB,SAAS,YAC3D,KAAK,CAAC,OAAO,GACZ,CACL,EACD,0BAAc,GAAG,IAAI,YAAY,2BAAwB,WAAW,aAClE,wBAAa,GAAG,IAAI,QAAQ,2BAAwB,OAAO,YACxD,KAAK,CAAC,KAAK,GACT,EACJ,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CAC9B,yBACW,GAAG,IAAI,UAAU,2BACJ,SAAS,EAC/B,MAAM,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,YAEnC,KAAK,CAAC,OAAO,GACV,CACP,IACG,EACL,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,IAAI,KAAK,CAAC,WAAW,KAAK,EAAE,IAAI,CAC5F,uBAAY,GAAG,IAAI,cAAc,2BAAwB,aAAa,YACnE,KAAK,CAAC,WAAW,GAChB,CACL,EACA,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAC7B,yBAAc,GAAG,IAAI,UAAU,2BAAwB,SAAS,YAC9D,0BAAe,GAAG,IAAI,SAAS,2BAAwB,QAAQ,YAC5D,KAAK,CAAC,MAAM,GACR,GACH,CACP,IACG,EACL,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAC3B,yBAAc,GAAG,IAAI,OAAO,2BAAwB,MAAM,YACvD,KAAK,CAAC,IAAI,GACP,CACP,IACA,CACJ,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAsB,EAAE,KAAwB,EAAkB,EAAE,CAAC,CAChG,8BACG,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,CACxB,yBAAc,GAAG,IAAI,UAAU,2BAAwB,SAAS,YAC7D,KAAK,CAAC,OAAO,GACV,CACP,EACD,4BAAiB,GAAG,IAAI,SAAS,2BAAwB,QAAQ,YAC9D,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,GAC1B,IACR,CACJ,CAAA"}
@@ -40,9 +40,9 @@ export declare const AppTopbar: (props: {
40
40
  locale?: string;
41
41
  };
42
42
  }) => TemplateResult;
43
- export type PageHeaderProps = Omit<PageIdentityProps, 'context'>;
43
+ export type PageHeaderProps = Omit<PageIdentityProps, 'context' | 'description'>;
44
44
  export declare const PageHeader: (props: PageHeaderProps) => TemplateResult;
45
- export type PageProps = PageIdentityProps & {
45
+ export type PageProps = Omit<PageIdentityProps, 'description'> & {
46
46
  body: JSXChild;
47
47
  };
48
48
  export declare const Page: (props: PageProps) => TemplateResult;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/layouts/shell/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,OAAO,EAAqC,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAEtG,eAAO,MAAM,KAAK,YAChB,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,6BAA6B,EAC7B,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,MAAM,EACN,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,CACd,CAAA;AAEV,eAAO,MAAM,QAAQ,UAAW;IAC9B,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,OAAO,EAAE,QAAQ,CAAA;IACjB,IAAI,EAAE,QAAQ,CAAA;IACd,SAAS,CAAC,EAAE,QAAQ,CAAA;IACpB,IAAI,CAAC,EAAE,UAAU,GAAG,UAAU,CAAA;CAC/B,KAAG,cAuBH,CAAA;AAiBD,eAAO,MAAM,QAAQ,UAAW;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;CAC/B,KAAG,cASH,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,SAAS,UAAW;IAC/B,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACvD,kFAAkF;IAClF,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,UAAU,CAAC,EAAE,QAAQ,CAAA;IACrB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,KAAK,CAAC,EAAE,QAAQ,CAAA;IAChB,MAAM,EAAE;QACN,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;QACb,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,MAAM,CAAA;QACnB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,KAAG,cA6EH,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;AAEhE,eAAO,MAAM,UAAU,UAAW,eAAe,KAAG,cAInD,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,iBAAiB,GAAG;IAC1C,IAAI,EAAE,QAAQ,CAAA;CACf,CAAA;AAED,eAAO,MAAM,IAAI,UAAW,SAAS,KAAG,cAQvC,CAAA;AAED,eAAO,MAAM,YAAY,UAAW;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,KAAG,cAIxD,CAAA;AAED,eAAO,MAAM,aAAa,UAAW;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,KAAG,cAKhF,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/layouts/shell/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,OAAO,EAAqC,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAEtG,eAAO,MAAM,KAAK,YAChB,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,6BAA6B,EAC7B,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,MAAM,EACN,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,CACd,CAAA;AAEV,eAAO,MAAM,QAAQ,UAAW;IAC9B,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,OAAO,EAAE,QAAQ,CAAA;IACjB,IAAI,EAAE,QAAQ,CAAA;IACd,SAAS,CAAC,EAAE,QAAQ,CAAA;IACpB,IAAI,CAAC,EAAE,UAAU,GAAG,UAAU,CAAA;CAC/B,KAAG,cAuBH,CAAA;AAiBD,eAAO,MAAM,QAAQ,UAAW;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;CAC/B,KAAG,cASH,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,SAAS,UAAW;IAC/B,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACvD,kFAAkF;IAClF,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,UAAU,CAAC,EAAE,QAAQ,CAAA;IACrB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,KAAK,CAAC,EAAE,QAAQ,CAAA;IAChB,MAAM,EAAE;QACN,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;QACb,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,MAAM,CAAA;QACnB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,KAAG,cA6EH,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,aAAa,CAAC,CAAA;AAEhF,eAAO,MAAM,UAAU,UAAW,eAAe,KAAG,cAInD,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAAG;IAC/D,IAAI,EAAE,QAAQ,CAAA;CACf,CAAA;AAED,eAAO,MAAM,IAAI,UAAW,SAAS,KAAG,cAQvC,CAAA;AAED,eAAO,MAAM,YAAY,UAAW;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,KAAG,cAIxD,CAAA;AAED,eAAO,MAAM,aAAa,UAAW;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,KAAG,cAKhF,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { JSXChild, TemplateResult } from '@ketvietlab/ketjs-view';
2
- export declare const HOOKS: readonly ['list-page', 'list-page-context', 'list-page-header', 'list-page-heading', 'list-page-title-row', 'list-page-eyebrow', 'list-page-title', 'list-page-actions', 'list-page-tools', 'list-page-toolbar', 'list-page-controls', 'list-page-status', 'list-page-body', 'list-page-footer'];
2
+ export declare const HOOKS: readonly ['list-page', 'list-page-context', 'list-page-header', 'list-page-heading', 'list-page-title-row', 'list-page-eyebrow', 'list-page-title', 'list-page-description', 'list-page-actions', 'list-page-tools', 'list-page-toolbar', 'list-page-controls', 'list-page-status', 'list-page-body', 'list-page-footer'];
3
3
  export type ListPageProps = {
4
4
  title: string;
5
5
  body: JSXChild;
@@ -14,6 +14,8 @@ export type ListPageProps = {
14
14
  */
15
15
  variant?: 'operational';
16
16
  eyebrow?: string | null;
17
+ /** Short operational guidance shown below the title and above controls. */
18
+ description?: JSXChild;
17
19
  /** Primary actions beside the title of an operational page, above its query controls. */
18
20
  headerActions?: JSXChild;
19
21
  /** Tool actions follow query controls by default, or join primary actions in the header. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/patterns/list-page/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAGtE,eAAO,MAAM,KAAK,YAChB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,CACV,CAAA;AAEV,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,QAAQ,CAAA;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,yFAAyF;IACzF,aAAa,CAAC,EAAE,QAAQ,CAAA;IACxB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,0FAA0F;IAC1F,gBAAgB,CAAC,EAAE,QAAQ,CAAA;IAC3B,yGAAyG;IACzG,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,MAAM,CAAC,EAAE,QAAQ,CAAA;CAClB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,UAAW,aAAa,KAAG,cAiD/C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/patterns/list-page/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAGtE,eAAO,MAAM,KAAK,YAChB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,CACV,CAAA;AAEV,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,QAAQ,CAAA;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,QAAQ,CAAA;IACtB,yFAAyF;IACzF,aAAa,CAAC,EAAE,QAAQ,CAAA;IACxB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,0FAA0F;IAC1F,gBAAgB,CAAC,EAAE,QAAQ,CAAA;IAC3B,yGAAyG;IACzG,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,MAAM,CAAC,EAAE,QAAQ,CAAA;CAClB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,UAAW,aAAa,KAAG,cAkD/C,CAAA"}
@@ -8,6 +8,7 @@ export const HOOKS = [
8
8
  'list-page-title-row',
9
9
  'list-page-eyebrow',
10
10
  'list-page-title',
11
+ 'list-page-description',
11
12
  'list-page-actions',
12
13
  'list-page-tools',
13
14
  'list-page-toolbar',
@@ -36,6 +37,7 @@ export const ListPage = (props) => {
36
37
  context: props.context,
37
38
  eyebrow: props.eyebrow,
38
39
  title: props.title,
40
+ description: props.description,
39
41
  actions: operational ? headerActions : props.actions,
40
42
  actionsHidden: headerTools && props.headerActions == null && props.actionsHidden === true,
41
43
  }), (props.controls !== undefined || toolbarStatus !== undefined) && (_jsxs("div", { "data-ui": "list-page-toolbar", children: [toolbarStatus !== undefined && _jsx("div", { "data-ui": "list-page-status", children: toolbarStatus }), props.controls !== undefined && _jsx("div", { "data-ui": "list-page-controls", children: props.controls })] })), operational && !headerTools && props.actions !== undefined && (_jsx("div", { "data-ui": "list-page-actions", hidden: props.actionsHidden === true, children: props.actions })), _jsx("div", { "data-ui": "list-page-body", children: props.body }), footer !== undefined && _jsx("footer", { "data-ui": "list-page-footer", children: footer })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/design-system/src/patterns/list-page/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAmB,CAAA;AAEhD,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,WAAW;IACX,mBAAmB;IACnB,kBAAkB;IAClB,mBAAmB;IACnB,qBAAqB;IACrB,mBAAmB;IACnB,iBAAiB;IACjB,mBAAmB;IACnB,iBAAiB;IACjB,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,gBAAgB;IAChB,kBAAkB;CACV,CAAA;AA6BV;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAkB,EAAE;IAC/D,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,KAAK,aAAa,CAAA;IACnD,MAAM,WAAW,GAAG,WAAW,IAAI,KAAK,CAAC,gBAAgB,KAAK,QAAQ,CAAA;IACtE,MAAM,aAAa,GACjB,WAAW,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAC3C,8BACG,KAAK,CAAC,aAAa,EACpB,yBAAa,iBAAiB,EAAC,MAAM,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,YAChE,KAAK,CAAC,OAAO,GACV,IACL,CACJ,CAAC,CAAC,CAAC,CACF,KAAK,CAAC,aAAa,CACpB,CAAA;IACH,6EAA6E;IAC7E,8EAA8E;IAC9E,iEAAiE;IACjE,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;IAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAEvE,OAAO,CACL,8BACU,WAAW,kBACL,KAAK,CAAC,OAAO,IAAI,IAAI,kBACtB,MAAM,+BACO,EAAE,aAE3B,YAAY,CAAC,WAAW,EAAE;gBACzB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO;gBACpD,aAAa,EAAE,WAAW,IAAI,KAAK,CAAC,aAAa,IAAI,IAAI,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI;aAC1F,CAAC,EACD,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS,CAAC,IAAI,CAChE,0BAAa,mBAAmB,aAC7B,aAAa,KAAK,SAAS,IAAI,yBAAa,kBAAkB,YAAE,aAAa,GAAO,EACpF,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,yBAAa,oBAAoB,YAAE,KAAK,CAAC,QAAQ,GAAO,IACrF,CACP,EACA,WAAW,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CAC7D,yBAAa,mBAAmB,EAAC,MAAM,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,YAClE,KAAK,CAAC,OAAO,GACV,CACP,EACD,yBAAa,gBAAgB,YAAE,KAAK,CAAC,IAAI,GAAO,EAC/C,MAAM,KAAK,SAAS,IAAI,4BAAgB,kBAAkB,YAAE,MAAM,GAAU,IACrE,CACX,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/design-system/src/patterns/list-page/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAmB,CAAA;AAEhD,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,WAAW;IACX,mBAAmB;IACnB,kBAAkB;IAClB,mBAAmB;IACnB,qBAAqB;IACrB,mBAAmB;IACnB,iBAAiB;IACjB,uBAAuB;IACvB,mBAAmB;IACnB,iBAAiB;IACjB,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,gBAAgB;IAChB,kBAAkB;CACV,CAAA;AA+BV;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAkB,EAAE;IAC/D,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,KAAK,aAAa,CAAA;IACnD,MAAM,WAAW,GAAG,WAAW,IAAI,KAAK,CAAC,gBAAgB,KAAK,QAAQ,CAAA;IACtE,MAAM,aAAa,GACjB,WAAW,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAC3C,8BACG,KAAK,CAAC,aAAa,EACpB,yBAAa,iBAAiB,EAAC,MAAM,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,YAChE,KAAK,CAAC,OAAO,GACV,IACL,CACJ,CAAC,CAAC,CAAC,CACF,KAAK,CAAC,aAAa,CACpB,CAAA;IACH,6EAA6E;IAC7E,8EAA8E;IAC9E,iEAAiE;IACjE,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;IAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAEvE,OAAO,CACL,8BACU,WAAW,kBACL,KAAK,CAAC,OAAO,IAAI,IAAI,kBACtB,MAAM,+BACO,EAAE,aAE3B,YAAY,CAAC,WAAW,EAAE;gBACzB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO;gBACpD,aAAa,EAAE,WAAW,IAAI,KAAK,CAAC,aAAa,IAAI,IAAI,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI;aAC1F,CAAC,EACD,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS,CAAC,IAAI,CAChE,0BAAa,mBAAmB,aAC7B,aAAa,KAAK,SAAS,IAAI,yBAAa,kBAAkB,YAAE,aAAa,GAAO,EACpF,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,yBAAa,oBAAoB,YAAE,KAAK,CAAC,QAAQ,GAAO,IACrF,CACP,EACA,WAAW,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CAC7D,yBAAa,mBAAmB,EAAC,MAAM,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,YAClE,KAAK,CAAC,OAAO,GACV,CACP,EACD,yBAAa,gBAAgB,YAAE,KAAK,CAAC,IAAI,GAAO,EAC/C,MAAM,KAAK,SAAS,IAAI,4BAAgB,kBAAkB,YAAE,MAAM,GAAU,IACrE,CACX,CAAA;AACH,CAAC,CAAA"}
@@ -49,6 +49,13 @@
49
49
  line-height: var(--kv-leading-tight);
50
50
  }
51
51
 
52
+ :where([data-kv-design-system]) [data-ui="list-page-description"] {
53
+ margin: 0;
54
+ color: var(--kv-text-muted);
55
+ font-size: var(--kv-text-base);
56
+ line-height: var(--kv-leading-normal);
57
+ }
58
+
52
59
  :where([data-kv-design-system]) :is([data-ui="list-page-actions"], [data-ui="list-page-tools"]) {
53
60
  display: flex;
54
61
  flex: 0 0 auto;
@@ -27,10 +27,8 @@ export declare const ModalSheet: (props: {
27
27
  * Overrides `fixed`'s height (default: the viewport cap, `100dvh` minus a margin —
28
28
  * tall on most screens). A CSS length or `calc()`/`min()` expression, for a dialog
29
29
  * whose own content is shorter than the viewport and would otherwise sit in a mostly
30
- * empty frame. Set inline with `!important`, not as a plain CSS rule: a legacy
31
- * admin stylesheet (`packages/ketsuite/src/modules/backend/design/forms.css`)
32
- * still targets these same `data-ui` hooks at equal specificity and would
33
- * otherwise win the cascade by loading later. Ignored when `height` isn't `fixed`.
30
+ * empty frame. Stored in a CSS custom property so responsive fullscreen rules
31
+ * still take precedence. Ignored when `height` is not `fixed`.
34
32
  */
35
33
  fixedHeight?: string;
36
34
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/patterns/modal-sheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,eAAO,MAAM,KAAK,YAChB,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,eAAe,CACP,CAAA;AAEV,eAAO,MAAM,UAAU,UAAW;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,QAAQ,CAAA;IACd,4FAA4F;IAC5F,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IACjC,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IAC1B;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IAC5B;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAA;IACxC,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B,KAAG,cA2EH,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/design-system/src/patterns/modal-sheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEtE,eAAO,MAAM,KAAK,YAChB,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,eAAe,CACP,CAAA;AAEV,eAAO,MAAM,UAAU,UAAW;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,QAAQ,CAAA;IACd,4FAA4F;IAC5F,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAA;IACjB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IACjC,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IAC1B;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IAC5B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAA;IACxC,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B,KAAG,cA6EH,CAAA"}
@@ -15,7 +15,7 @@ export const HOOKS = [
15
15
  export const ModalSheet = (props) => {
16
16
  const client = props.mode === 'client';
17
17
  const embedded = props.mode === 'embedded';
18
- return (_jsxs("div", { "data-ui": "modal-layer", "data-mode": props.mode ?? 'overlay', "data-route-modal": embedded || client ? null : 'true', "data-client-modal": client ? 'true' : null, "data-presentation": props.presentation ?? 'sheet', "data-unsaved-prompt": props.unsavedPrompt ?? null, children: [client ? (_jsx("button", { "data-ui": "modal-backdrop", type: "button", "aria-hidden": "true", tabIndex: -1, children: _jsx("span", { children: props.closeLabel }) })) : (_jsx("a", { "data-ui": "modal-backdrop", href: props.closeHref ?? '#', "aria-label": props.closeLabel, children: _jsx("span", { children: props.closeLabel }) })), _jsxs("section", { id: props.id, "data-ui": "modal-sheet", "data-size": props.size ?? 'default', "data-height": props.height === 'fixed' ? 'fixed' : null, style: props.height === 'fixed' && props.fixedHeight ? `height: ${props.fixedHeight} !important` : '', ...(props.dialogSemantics === 'parent'
18
+ return (_jsxs("div", { "data-ui": "modal-layer", "data-mode": props.mode ?? 'overlay', "data-route-modal": embedded || client ? null : 'true', "data-client-modal": client ? 'true' : null, "data-presentation": props.presentation ?? 'sheet', "data-unsaved-prompt": props.unsavedPrompt ?? null, children: [client ? (_jsx("button", { "data-ui": "modal-backdrop", type: "button", "aria-hidden": "true", tabIndex: -1, children: _jsx("span", { children: props.closeLabel }) })) : (_jsx("a", { "data-ui": "modal-backdrop", href: props.closeHref ?? '#', "aria-label": props.closeLabel, children: _jsx("span", { children: props.closeLabel }) })), _jsxs("section", { id: props.id, "data-ui": "modal-sheet", "data-size": props.size ?? 'default', "data-height": props.height === 'fixed' ? 'fixed' : null, style: props.height === 'fixed' && props.fixedHeight ? `--kv-modal-fixed-height: ${props.fixedHeight}` : '', ...(props.dialogSemantics === 'parent'
19
19
  ? {}
20
20
  : { role: 'dialog', 'aria-modal': embedded ? 'false' : 'true' }), "aria-labelledby": props.dialogSemantics === 'parent' ? null : `${props.id}-title`, "aria-describedby": props.dialogSemantics !== 'parent' && props.description ? `${props.id}-description` : null, tabindex: embedded ? null : '-1', children: [_jsxs("header", { "data-ui": "modal-head", children: [_jsxs("div", { "data-ui": "modal-heading", children: [_jsxs("div", { "data-ui": "modal-title-row", children: [_jsx("h2", { "data-ui": "modal-title", id: `${props.id}-title`, children: props.title }), props.status !== undefined && props.status] }), !!props.description && (_jsx("p", { "data-ui": "modal-description", id: `${props.id}-description`, children: props.description }))] }), client ? (_jsx("button", { "data-ui": "modal-close", type: "button", "aria-label": props.closeLabel, title: props.closeLabel, children: "\u00D7" })) : (_jsx("a", { "data-ui": "modal-close", href: props.closeHref ?? '#', "aria-label": props.closeLabel, title: props.closeLabel, children: "\u00D7" }))] }), _jsx("div", { "data-ui": "modal-body", children: props.body }), props.actions !== undefined && _jsx("footer", { "data-ui": "modal-actions", children: props.actions })] })] }));
21
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/design-system/src/patterns/modal-sheet/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/design-system/src/patterns/modal-sheet/index.tsx"],"names":[],"mappings":"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"}
@@ -94,7 +94,7 @@
94
94
  :where([data-kv-design-system])
95
95
  [data-ui="modal-layer"][data-presentation="dialog"]
96
96
  [data-ui="modal-sheet"][data-height="fixed"] {
97
- height: calc(100dvh - var(--kv-space-12));
97
+ height: var(--kv-modal-fixed-height, calc(100dvh - var(--kv-space-12)));
98
98
  }
99
99
 
100
100
  :where([data-kv-design-system]) [data-ui="modal-layer"][data-mode="embedded"] [data-ui="modal-sheet"] {
@@ -185,6 +185,11 @@
185
185
  overflow: hidden;
186
186
  }
187
187
 
188
+ /* Keep the tab-to-content rhythm aligned with modal content stacks. */
189
+ :where([data-kv-design-system]) [data-ui="modal-body"] [data-ui="tab-panel"] {
190
+ padding-block: var(--kv-space-4);
191
+ }
192
+
188
193
  :where([data-kv-design-system]) [data-ui="modal-actions"] {
189
194
  display: flex;
190
195
  flex-wrap: wrap;
@@ -29,6 +29,7 @@
29
29
  }
30
30
  :where([data-kv-design-system]) [data-ui="badge"][data-pattern="badge"] {
31
31
  display: inline-flex;
32
+ flex-shrink: 0;
32
33
  min-height: 1.4rem;
33
34
  align-items: center;
34
35
  gap: 0.3125rem;
@@ -81,7 +81,7 @@
81
81
  }
82
82
 
83
83
  @container (max-width: 34rem) {
84
- :where([data-kv-design-system]) [data-ui="description-list"] {
84
+ :where([data-kv-design-system]) [data-ui="description-list"][data-columns] {
85
85
  --kv-description-columns: 1;
86
86
  }
87
87
  }