@ds-mo/ui 14.15.1 → 14.16.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/.package-ready.json +1 -1
- package/dist/agent-patterns.json +3 -3
- package/dist/agent.json +159 -22
- package/dist/angular/ds-button-unfilled.d.ts +1 -1
- package/dist/angular/ds-button-unfilled.js +3 -3
- package/dist/angular/ds-filter-menu.d.ts +1 -1
- package/dist/angular/ds-filter-menu.js +3 -3
- package/dist/angular/ds-select.d.ts +1 -1
- package/dist/angular/ds-select.js +3 -3
- package/dist/angular/ds-table-sort.d.ts +16 -0
- package/dist/angular/ds-table-sort.js +43 -0
- package/dist/angular/index.d.ts +1 -1
- package/dist/angular/index.js +1 -0
- package/dist/angular/proxies.d.ts +1 -0
- package/dist/angular/proxies.js +1 -0
- package/dist/components/ds-agent-activity.js +1 -1
- package/dist/components/ds-agent-questionnaire.js +1 -1
- package/dist/components/ds-agent-response.js +1 -1
- package/dist/components/ds-agent-source-list.js +1 -1
- package/dist/components/ds-agent-tool-call.js +1 -1
- package/dist/components/ds-attachment-list.js +1 -1
- package/dist/components/ds-badge.js +1 -1
- package/dist/components/ds-banner.js +1 -1
- package/dist/components/ds-banner.js.map +1 -1
- package/dist/components/ds-bar-action.js +1 -1
- package/dist/components/ds-bar-action.js.map +1 -1
- package/dist/components/ds-bar-nav.js +1 -1
- package/dist/components/ds-bar-title.js +1 -1
- package/dist/components/ds-bar-workflow.js +1 -1
- package/dist/components/ds-bar-workflow.js.map +1 -1
- package/dist/components/ds-breadcrumb.js +1 -1
- package/dist/components/ds-button-filled.js +1 -1
- package/dist/components/ds-button-unfilled.js +1 -1
- package/dist/components/ds-card-chart.js +1 -1
- package/dist/components/ds-card-chart.js.map +1 -1
- package/dist/components/ds-card-overview.js +1 -1
- package/dist/components/ds-card-overview.js.map +1 -1
- package/dist/components/ds-card-setting.js +1 -1
- package/dist/components/ds-card-setting.js.map +1 -1
- package/dist/components/ds-chart-legend.js +1 -1
- package/dist/components/ds-chart-legend.js.map +1 -1
- package/dist/components/ds-chart.js +1 -1
- package/dist/components/ds-chart.js.map +1 -1
- package/dist/components/ds-checkbox.js +1 -1
- package/dist/components/ds-chip.js +1 -1
- package/dist/components/ds-chip.js.map +1 -1
- package/dist/components/ds-code-block.js +1 -1
- package/dist/components/ds-conversation-list-item.js +1 -1
- package/dist/components/ds-conversation-list-item.js.map +1 -1
- package/dist/components/ds-conversation-list-section.js +1 -1
- package/dist/components/ds-empty-state.js +1 -1
- package/dist/components/ds-field.js +1 -1
- package/dist/components/ds-filter-menu.js +1 -1
- package/dist/components/ds-filter-menu.js.map +1 -1
- package/dist/components/ds-input.js +1 -1
- package/dist/components/ds-loader.js +1 -1
- package/dist/components/ds-markdown.js +1 -1
- package/dist/components/ds-menu.js +1 -1
- package/dist/components/ds-message-actions.js +1 -1
- package/dist/components/ds-message-actions.js.map +1 -1
- package/dist/components/ds-message-composer.js +1 -1
- package/dist/components/ds-message-composer.js.map +1 -1
- package/dist/components/ds-message-scroller.js +1 -1
- package/dist/components/ds-message-scroller.js.map +1 -1
- package/dist/components/ds-message.js +1 -1
- package/dist/components/ds-mobile-bar-nav.js +1 -1
- package/dist/components/ds-mobile-header.js +1 -1
- package/dist/components/ds-mobile-section-switcher.js +1 -1
- package/dist/components/ds-mobile-sheet-nav.js +1 -1
- package/dist/components/ds-modal.js +1 -1
- package/dist/components/ds-pagination.js +1 -1
- package/dist/components/ds-panel-nav.js +1 -1
- package/dist/components/ds-panel-sub-nav.js +1 -1
- package/dist/components/ds-panel-sub-nav.js.map +1 -1
- package/dist/components/ds-panel-tool-header.js +1 -1
- package/dist/components/ds-panel-tool-search.js +1 -1
- package/dist/components/ds-panel-tool-search.js.map +1 -1
- package/dist/components/ds-panel-tools.js +1 -1
- package/dist/components/ds-paper-texture.js +1 -1
- package/dist/components/ds-radio.js +1 -1
- package/dist/components/ds-scroll-overlay.js +1 -1
- package/dist/components/ds-scroll-overlay.js.map +1 -1
- package/dist/components/ds-select.js +1 -1
- package/dist/components/ds-shell-app.js +1 -1
- package/dist/components/ds-shell-app.js.map +1 -1
- package/dist/components/ds-shell-page.js +1 -1
- package/dist/components/ds-shell-tools.js +1 -1
- package/dist/components/ds-skeleton.js +1 -1
- package/dist/components/ds-slider.js +1 -1
- package/dist/components/ds-slider.js.map +1 -1
- package/dist/components/ds-swatch-picker.js +1 -1
- package/dist/components/ds-switch.js +1 -1
- package/dist/components/ds-tab-group.js +1 -1
- package/dist/components/ds-table-saved-views.js +1 -1
- package/dist/components/ds-table-saved-views.js.map +1 -1
- package/dist/components/ds-table-sort.d.ts +11 -0
- package/dist/components/ds-table-sort.js +2 -0
- package/dist/components/ds-table-sort.js.map +1 -0
- package/dist/components/ds-table-toolbar.js +1 -1
- package/dist/components/ds-table-toolbar.js.map +1 -1
- package/dist/components/ds-table.js +1 -1
- package/dist/components/ds-table.js.map +1 -1
- package/dist/components/ds-tag.js +1 -1
- package/dist/components/ds-text.js +1 -1
- package/dist/components/ds-toast.js +1 -1
- package/dist/components/ds-toast.js.map +1 -1
- package/dist/components/ds-tooltip-chart.js +1 -1
- package/dist/components/ds-tooltip.js +1 -1
- package/dist/components/ds-typing-indicator.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/{p-CjgnFGd6.js → p-0IbKxhqM.js} +2 -2
- package/dist/components/{p-CjgnFGd6.js.map → p-0IbKxhqM.js.map} +1 -1
- package/dist/components/p-23u3lIr1.js +2 -0
- package/dist/components/{p-DLkNcCY0.js.map → p-23u3lIr1.js.map} +1 -1
- package/dist/components/{p-DfyfrfHL.js → p-3dYwA4i_.js} +2 -2
- package/dist/components/{p-DfyfrfHL.js.map → p-3dYwA4i_.js.map} +1 -1
- package/dist/components/{p-C1q-tq3U.js → p-7tZx4ukz.js} +2 -2
- package/dist/components/{p-C5TrNd31.js → p-B0PEg5RF.js} +2 -2
- package/dist/components/{p-C5TrNd31.js.map → p-B0PEg5RF.js.map} +1 -1
- package/dist/components/{p-DZFilC--.js → p-BGXqFq2C.js} +2 -2
- package/dist/components/{p-Rfpd5mWO.js → p-BHDkJmrC.js} +2 -2
- package/dist/components/{p-Rfpd5mWO.js.map → p-BHDkJmrC.js.map} +1 -1
- package/dist/components/{p-BXPQmp7q.js → p-BK-JjdoN.js} +2 -2
- package/dist/components/p-BUhShHfb.js +2 -0
- package/dist/components/{p-URdgCwEs.js.map → p-BUhShHfb.js.map} +1 -1
- package/dist/components/{p-CKY989vF.js → p-BUrbVZJU.js} +2 -2
- package/dist/components/{p-CKY989vF.js.map → p-BUrbVZJU.js.map} +1 -1
- package/dist/components/{p-V2ywPfsR.js → p-BVlfQ8xZ.js} +2 -2
- package/dist/components/{p-V2ywPfsR.js.map → p-BVlfQ8xZ.js.map} +1 -1
- package/dist/components/p-BdnQv7Zl.js +2 -0
- package/dist/components/p-BdnQv7Zl.js.map +1 -0
- package/dist/components/{p-Btxwp4lJ.js → p-BhYWdbEp.js} +2 -2
- package/dist/components/{p-Btxwp4lJ.js.map → p-BhYWdbEp.js.map} +1 -1
- package/dist/components/{p-B80NfEqc.js → p-C0X2zKbB.js} +2 -2
- package/dist/components/{p-Cyw9odJX.js → p-C4p2i59V.js} +2 -2
- package/dist/components/{p-Cyw9odJX.js.map → p-C4p2i59V.js.map} +1 -1
- package/dist/components/p-C91izpHV.js +2 -0
- package/dist/components/{p-CnWC0QvG.js.map → p-C91izpHV.js.map} +1 -1
- package/dist/components/p-COVcyUAA.js +2 -0
- package/dist/components/p-COVcyUAA.js.map +1 -0
- package/dist/components/{p-D1Nqlrrl.js → p-C_TOgX82.js} +2 -2
- package/dist/components/{p-D1Nqlrrl.js.map → p-C_TOgX82.js.map} +1 -1
- package/dist/components/{p-Ct-m0I6U.js → p-CaAZ-D08.js} +2 -2
- package/dist/components/p-Cr2VT5zv.js +2 -0
- package/dist/components/{p-M9DPfXbP.js.map → p-Cr2VT5zv.js.map} +1 -1
- package/dist/components/{p-Dsn1RCS5.js → p-Ct2GVdSI.js} +2 -2
- package/dist/components/{p-Dsn1RCS5.js.map → p-Ct2GVdSI.js.map} +1 -1
- package/dist/components/p-CwkcFMMe.js +2 -0
- package/dist/components/{p-CWDmHPJC.js.map → p-CwkcFMMe.js.map} +1 -1
- package/dist/components/p-CxBE3l74.js +2 -0
- package/dist/components/{p-CKJzHclc.js.map → p-CxBE3l74.js.map} +1 -1
- package/dist/components/{p-PzI11fs8.js → p-CzcWZiH-.js} +2 -2
- package/dist/components/{p-PzI11fs8.js.map → p-CzcWZiH-.js.map} +1 -1
- package/dist/components/{p-BagXfn1G.js → p-D1YhYulL.js} +2 -2
- package/dist/components/{p-BzObtSlo.js → p-D2z2DgtX.js} +2 -2
- package/dist/components/{p-BzObtSlo.js.map → p-D2z2DgtX.js.map} +1 -1
- package/dist/components/{p-DcPVSNDr.js → p-D8Qd6gkf.js} +2 -2
- package/dist/components/{p-DcPVSNDr.js.map → p-D8Qd6gkf.js.map} +1 -1
- package/dist/components/p-DAV32g35.js +2 -0
- package/dist/components/p-DAV32g35.js.map +1 -0
- package/dist/components/{p-BHjw0x3L.js → p-DAqSoyd4.js} +2 -2
- package/dist/components/{p-BHjw0x3L.js.map → p-DAqSoyd4.js.map} +1 -1
- package/dist/components/{p-Bf_D3crn.js → p-DNJTN_s0.js} +2 -2
- package/dist/components/{p-DL_5VENG.js → p-DQqOzDEq.js} +2 -2
- package/dist/components/{p-C5eosu67.js → p-DRBTr6TS.js} +2 -2
- package/dist/components/{p-C5eosu67.js.map → p-DRBTr6TS.js.map} +1 -1
- package/dist/components/{p-D-kWb8cF.js → p-DSIOINBK.js} +2 -2
- package/dist/components/{p-QdI17bl-.js → p-Dg9qiMDa.js} +2 -2
- package/dist/components/{p-DTMxwYQj.js → p-EWI6ccs-.js} +2 -2
- package/dist/components/p-JPTkZ3Ji.js +2 -0
- package/dist/components/p-JPTkZ3Ji.js.map +1 -0
- package/dist/components/p-MxptXwlW.js +2 -0
- package/dist/components/{p-C2n8A8NA.js.map → p-MxptXwlW.js.map} +1 -1
- package/dist/components/{p-B7Hf86NF.js → p-PD1Vfg0t.js} +2 -2
- package/dist/components/{p-B7Hf86NF.js.map → p-PD1Vfg0t.js.map} +1 -1
- package/dist/components/{p-BxqBiVbH.js → p-U8JIZzI2.js} +2 -2
- package/dist/components/{p-BxqBiVbH.js.map → p-U8JIZzI2.js.map} +1 -1
- package/dist/components/{p-Ck_VRQYi.js → p-WGZWqh-B.js} +2 -2
- package/dist/components/{p-Ck_VRQYi.js.map → p-WGZWqh-B.js.map} +1 -1
- package/dist/components/{p-vWK5faWZ.js → p-a6qP60zb.js} +2 -2
- package/dist/components/p-vzxD117T.js +2 -0
- package/dist/components/{p-BzLnSwG9.js.map → p-vzxD117T.js.map} +1 -1
- package/dist/components/{p-jMCRaxQW.js → p-y4jhIkRc.js} +2 -2
- package/dist/components/{p-jMCRaxQW.js.map → p-y4jhIkRc.js.map} +1 -1
- package/dist/docs/components.json +318 -10
- package/dist/mcp-data/registry/button-unfilled.json +26 -7
- package/dist/mcp-data/registry/filter-menu.json +25 -6
- package/dist/mcp-data/registry/loader.json +1 -1
- package/dist/mcp-data/registry/registry.json +161 -21
- package/dist/mcp-data/registry/select.json +22 -3
- package/dist/mcp-data/registry/table-saved-views.json +4 -4
- package/dist/mcp-data/registry/table-sort.json +229 -0
- package/dist/mcp-data/registry/table-toolbar.json +19 -12
- package/dist/mcp-data/registry/table.json +10 -8
- package/dist/react/components.d.ts +1 -0
- package/dist/react/components.js +1 -0
- package/dist/react/ds-table-sort.d.ts +12 -0
- package/dist/react/ds-table-sort.js +12 -0
- package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +16 -1
- package/dist/types/components/FilterMenu/FilterMenu.d.ts +11 -0
- package/dist/types/components/Select/Select.d.ts +11 -0
- package/dist/types/components/Table/Table.d.ts +4 -0
- package/dist/types/components/Table/table-column-customizer.d.ts +2 -0
- package/dist/types/components/TableSort/TableSort.d.ts +24 -0
- package/dist/types/components/TableSort/table-sort-menu.d.ts +15 -0
- package/dist/types/components/TableToolbar/TableToolbar.d.ts +6 -0
- package/dist/types/components.d.ts +102 -6
- package/dist/types/utils/table-caption-compact.d.ts +6 -0
- package/dist/vue/components.d.ts +1 -0
- package/dist/vue/components.js +1 -0
- package/dist/vue/ds-button-unfilled.js +1 -0
- package/dist/vue/ds-filter-menu.js +1 -0
- package/dist/vue/ds-select.js +1 -0
- package/dist/vue/ds-table-sort.d.ts +3 -0
- package/dist/vue/ds-table-sort.js +13 -0
- package/package.json +1 -1
- package/dist/components/p-BzLnSwG9.js +0 -2
- package/dist/components/p-C2n8A8NA.js +0 -2
- package/dist/components/p-C7rzVotG.js +0 -2
- package/dist/components/p-C7rzVotG.js.map +0 -1
- package/dist/components/p-CKJzHclc.js +0 -2
- package/dist/components/p-CWDmHPJC.js +0 -2
- package/dist/components/p-Ca-I2UnB.js +0 -2
- package/dist/components/p-Ca-I2UnB.js.map +0 -1
- package/dist/components/p-CnWC0QvG.js +0 -2
- package/dist/components/p-CooNucm0.js +0 -2
- package/dist/components/p-CooNucm0.js.map +0 -1
- package/dist/components/p-DLkNcCY0.js +0 -2
- package/dist/components/p-M9DPfXbP.js +0 -2
- package/dist/components/p-URdgCwEs.js +0 -2
- /package/dist/components/{p-C1q-tq3U.js.map → p-7tZx4ukz.js.map} +0 -0
- /package/dist/components/{p-DZFilC--.js.map → p-BGXqFq2C.js.map} +0 -0
- /package/dist/components/{p-BXPQmp7q.js.map → p-BK-JjdoN.js.map} +0 -0
- /package/dist/components/{p-B80NfEqc.js.map → p-C0X2zKbB.js.map} +0 -0
- /package/dist/components/{p-Ct-m0I6U.js.map → p-CaAZ-D08.js.map} +0 -0
- /package/dist/components/{p-BagXfn1G.js.map → p-D1YhYulL.js.map} +0 -0
- /package/dist/components/{p-Bf_D3crn.js.map → p-DNJTN_s0.js.map} +0 -0
- /package/dist/components/{p-DL_5VENG.js.map → p-DQqOzDEq.js.map} +0 -0
- /package/dist/components/{p-D-kWb8cF.js.map → p-DSIOINBK.js.map} +0 -0
- /package/dist/components/{p-QdI17bl-.js.map → p-Dg9qiMDa.js.map} +0 -0
- /package/dist/components/{p-DTMxwYQj.js.map → p-EWI6ccs-.js.map} +0 -0
- /package/dist/components/{p-vWK5faWZ.js.map → p-a6qP60zb.js.map} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
3
|
"name": "table-toolbar",
|
|
4
4
|
"title": "TableToolbar",
|
|
5
|
-
"description": "Data-agnostic companion layout for application-owned controls
|
|
5
|
+
"description": "Data-agnostic companion layout for application-owned table caption controls, with a start cluster, optional search, trailing Filter/Group/Sort, and narrow-width horizontal overflow.",
|
|
6
6
|
"type": "registry:ui",
|
|
7
7
|
"meta": {
|
|
8
8
|
"library": "@ds-mo/ui",
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
"intent": {
|
|
14
14
|
"audience": "general",
|
|
15
15
|
"status": "stable",
|
|
16
|
-
"summary": "Data-agnostic companion layout for application-owned controls
|
|
16
|
+
"summary": "Data-agnostic companion layout for application-owned table caption controls, with a start cluster, optional search, trailing Filter/Group/Sort, and narrow-width horizontal overflow.",
|
|
17
17
|
"useWhen": [
|
|
18
|
-
"Several table pages repeat the same
|
|
18
|
+
"Several table pages repeat the same saved-view cluster, middle discovery and result-shaping controls, and table-owned caption actions.",
|
|
19
19
|
"A ds-table header slot needs consistent control spacing, alignment, grouping, and narrow-width overflow without moving product behavior into the table."
|
|
20
20
|
],
|
|
21
21
|
"avoidWhen": [
|
|
@@ -26,34 +26,39 @@
|
|
|
26
26
|
"commonlyComposedWith": [
|
|
27
27
|
"component:ds-table",
|
|
28
28
|
"component:ds-table-saved-views",
|
|
29
|
+
"component:ds-divider",
|
|
29
30
|
"component:ds-input",
|
|
30
31
|
"component:ds-filter-menu",
|
|
32
|
+
"component:ds-select",
|
|
33
|
+
"component:ds-table-sort",
|
|
31
34
|
"component:ds-button-unfilled"
|
|
32
35
|
],
|
|
33
36
|
"patterns": [],
|
|
34
37
|
"accessibility": [
|
|
35
38
|
"The component exposes a named toolbar while each slotted control retains its own accessible name and native keyboard behavior.",
|
|
36
|
-
"Use the
|
|
39
|
+
"Use the start slot for saved views. Use search for the optional discovery field, leading for any additional left-side middle controls, and trailing for Filter, Group, and Sort. Table-owned column customizer and data-mode actions remain in the table caption trailing cluster.",
|
|
37
40
|
"Tab order follows authored DOM order. The toolbar does not add roving focus because it may contain heterogeneous form and popup controls."
|
|
38
41
|
],
|
|
39
42
|
"states": [
|
|
40
43
|
"The component owns layout only. Slotted controls, values, menus, loading, persistence, and consequences remain controlled by the application. Use ds-table-saved-views when saved-view interaction needs the shared CompoMo behavior while application storage remains external.",
|
|
41
|
-
"
|
|
44
|
+
"The start cluster is followed by a decorative vertical divider, then the spanning middle region. The start cluster and divider hide when nothing is projected. Search is a dedicated slot that hides when nothing is projected. Empty leading or trailing clusters add no placeholder chrome. The middle region occupies remaining width so trailing controls stay at its inline end.",
|
|
45
|
+
"Column customizer and data-mode switching stay table-owned caption actions. Do not recreate those menus in the toolbar."
|
|
42
46
|
],
|
|
43
47
|
"responsiveBehavior": [
|
|
44
|
-
"The
|
|
48
|
+
"The start cluster, search, trailing Filter/Group/Sort, and table caption trailing actions stay on one line. Saved views, Filter, Group, and Sort triggers cap at the compact menu-width token and truncate their labels, keeping a saved-view dirty dot visible. Group and Sort popups keep that same compact menu-width floor. The toolbar horizontally scrolls when its complete controls no longer fit.",
|
|
49
|
+
"Inside a named ds-table container narrower than 900px, Filter, Group, and Sort omit their labels and chevrons and become icon-only. Active filtering or grouping promotes the prefix icon to primary. Sort keeps resting secondary chrome. Table-owned Customize also becomes the icon-only Table menu button at that width.",
|
|
45
50
|
"The scrollbar is visually suppressed without removing touch, trackpad, mouse-wheel, or keyboard scrolling from the overflow container.",
|
|
46
51
|
"Trailing controls remain grouped after leading controls; the toolbar does not collapse controls into an application-specific overflow menu."
|
|
47
52
|
],
|
|
48
53
|
"frameworkCaveats": {
|
|
49
54
|
"customElements": [
|
|
50
|
-
"Project controls through slot=leading
|
|
55
|
+
"Project saved views through slot=start, search through slot=search, additional left-side middle controls through slot=leading, and Filter, Group, and Sort through slot=trailing. Provide a label that names their table context when Table controls is insufficient."
|
|
51
56
|
],
|
|
52
57
|
"react": [
|
|
53
|
-
"Set slot=leading or slot=trailing on each child control; keep values and event handlers in the application."
|
|
58
|
+
"Set slot=start, slot=search, slot=leading, or slot=trailing on each child control; keep values and event handlers in the application."
|
|
54
59
|
],
|
|
55
60
|
"angular": [
|
|
56
|
-
"Set slot=leading or slot=trailing on each child control and import the generated DsTableToolbar adapter alongside those controls."
|
|
61
|
+
"Set slot=start, slot=search, slot=leading, or slot=trailing on each child control and import the generated DsTableToolbar adapter alongside those controls."
|
|
57
62
|
]
|
|
58
63
|
},
|
|
59
64
|
"references": [
|
|
@@ -135,16 +140,18 @@
|
|
|
135
140
|
"@ds-mo/ui",
|
|
136
141
|
"@ds-mo/tokens"
|
|
137
142
|
],
|
|
138
|
-
"registryDependencies": [
|
|
143
|
+
"registryDependencies": [
|
|
144
|
+
"divider"
|
|
145
|
+
],
|
|
139
146
|
"files": [
|
|
140
147
|
{
|
|
141
148
|
"path": "src/wc/components/TableToolbar/TableToolbar.css",
|
|
142
|
-
"content": ":host {\n display: block;\n min-inline-size: 0;\n max-inline-size: 100%;\n}\n\n.table-toolbar {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n inline-size: 100%;\n min-inline-size: 0;\n gap: var(--dimension-space-100);\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n}\n\n.table-toolbar::-webkit-scrollbar {\n display: none;\n}\n\n.table-toolbar__leading,\n.table-toolbar__trailing {\n display: flex;\n align-items: center;\n min-inline-size: 0;\n gap: var(--dimension-space-100);\n}\n\n.table-toolbar__leading {\n flex: 1 0 auto;\n}\n\n.table-toolbar__trailing {\n flex: 0 0 auto;\n margin-inline-start: auto;\n}\n\n.table-toolbar__leading slot,\n.table-toolbar__trailing slot {\n display: contents;\n}\n",
|
|
149
|
+
"content": ":host {\n display: block;\n min-inline-size: 0;\n max-inline-size: 100%;\n}\n\n.table-toolbar {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n inline-size: 100%;\n min-inline-size: 0;\n gap: var(--dimension-space-100);\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n}\n\n.table-toolbar::-webkit-scrollbar {\n display: none;\n}\n\n.table-toolbar__start,\n.table-toolbar__search,\n.table-toolbar__main,\n.table-toolbar__leading,\n.table-toolbar__trailing {\n display: flex;\n align-items: center;\n min-inline-size: 0;\n gap: var(--dimension-space-100);\n}\n\n.table-toolbar__start {\n flex: 0 1 var(--dimension-menu-width-xs);\n min-inline-size: 0;\n max-inline-size: var(--dimension-menu-width-xs);\n overflow: hidden;\n}\n\n.table-toolbar__rule {\n flex: 0 0 auto;\n}\n\n.table-toolbar__main {\n flex: 1 1 auto;\n min-inline-size: min-content;\n}\n\n.table-toolbar__search {\n flex: 0 1 var(--dimension-panel-width-xs);\n max-inline-size: var(--dimension-panel-width-xs);\n}\n\n:host(:not(:has([slot='search']))) .table-toolbar__search {\n display: none;\n}\n\n:host(:not(:has([slot='start']))) .table-toolbar__start,\n:host(:not(:has([slot='start']))) .table-toolbar__rule {\n display: none;\n}\n\n.table-toolbar__leading {\n flex: 1 0 auto;\n}\n\n.table-toolbar__trailing {\n flex: 0 0 auto;\n margin-inline-start: auto;\n}\n\n.table-toolbar__trailing > *,\n.table-toolbar [slot='start'],\n.table-toolbar ds-filter-menu,\n.table-toolbar ds-select,\n.table-toolbar ds-table-sort {\n min-inline-size: 0;\n max-inline-size: var(--dimension-menu-width-xs);\n --ds-choice-popup-min-inline-size: var(--dimension-menu-width-xs);\n}\n\n.table-toolbar__start slot,\n.table-toolbar__search slot,\n.table-toolbar__leading slot,\n.table-toolbar__trailing slot {\n display: contents;\n}\n",
|
|
143
150
|
"type": "registry:ui"
|
|
144
151
|
},
|
|
145
152
|
{
|
|
146
153
|
"path": "src/wc/components/TableToolbar/TableToolbar.tsx",
|
|
147
|
-
"content": "import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'ds-table-toolbar',\n styleUrl: 'TableToolbar.css',\n scoped: true,\n})\nexport class TableToolbar {\n /** Accessible name for the grouped table controls. */\n @Prop() label: string = 'Table controls';\n\n render() {\n return (\n <Host>\n <div class=\"table-toolbar\" role=\"toolbar\" aria-label={this.label}>\n <div class=\"table-
|
|
154
|
+
"content": "import { Component, Element, h, Host, Prop } from '@stencil/core';\n\nconst CAPTION_CONTROL_SELECTOR = 'ds-filter-menu, ds-select';\n\n@Component({\n tag: 'ds-table-toolbar',\n styleUrl: 'TableToolbar.css',\n scoped: true,\n})\nexport class TableToolbar {\n @Element() private el!: HTMLElement;\n\n /** Accessible name for the grouped table controls. */\n @Prop() label: string = 'Table controls';\n\n private captionControlObserver: MutationObserver | undefined;\n\n componentDidLoad(): void {\n this.connectCaptionControlObserver();\n }\n\n disconnectedCallback(): void {\n this.captionControlObserver?.disconnect();\n }\n\n render() {\n return (\n <Host>\n <div class=\"table-toolbar\" role=\"toolbar\" aria-label={this.label}>\n <div class=\"table-toolbar__start\">\n <slot name=\"start\" />\n </div>\n <ds-divider class=\"table-toolbar__rule\" orientation=\"vertical\" length=\"32px\" />\n <div class=\"table-toolbar__main\">\n <div class=\"table-toolbar__search\">\n <slot name=\"search\" />\n </div>\n <div class=\"table-toolbar__leading\">\n <slot name=\"leading\" />\n </div>\n <div class=\"table-toolbar__trailing\">\n <slot name=\"trailing\" />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n private connectCaptionControlObserver(): void {\n if (this.captionControlObserver || typeof MutationObserver === 'undefined') return;\n this.captionControlObserver = new MutationObserver(this.syncCaptionControls);\n this.captionControlObserver.observe(this.el, { childList: true, subtree: true });\n this.syncCaptionControls();\n }\n\n private syncCaptionControls = () => {\n for (const control of this.el.querySelectorAll<\n HTMLElement & { collapseLabel?: boolean }\n >(CAPTION_CONTROL_SELECTOR)) {\n if (control.closest('ds-table-saved-views')) continue;\n if (control.collapseLabel) continue;\n control.collapseLabel = true;\n }\n };\n}\n",
|
|
148
155
|
"type": "registry:ui"
|
|
149
156
|
}
|
|
150
157
|
]
|