@ds-mo/ui 15.3.0 → 15.4.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 +1 -1
- package/dist/agent.json +506 -31
- package/dist/angular/ds-checkbox-group.d.ts +12 -0
- package/dist/angular/ds-checkbox-group.js +38 -0
- package/dist/angular/ds-checkbox.d.ts +1 -1
- package/dist/angular/ds-checkbox.js +3 -3
- package/dist/angular/ds-inline-banner-settings.d.ts +12 -0
- package/dist/angular/ds-inline-banner-settings.js +38 -0
- package/dist/angular/ds-radio.d.ts +1 -1
- package/dist/angular/ds-radio.js +3 -3
- package/dist/angular/ds-setting-row-checkbox.d.ts +12 -0
- package/dist/angular/ds-setting-row-checkbox.js +38 -0
- package/dist/angular/ds-setting-row-radio.d.ts +12 -0
- package/dist/angular/ds-setting-row-radio.js +38 -0
- package/dist/angular/ds-setting-row-toggle.d.ts +18 -0
- package/dist/angular/{ds-setting-row.js → ds-setting-row-toggle.js} +12 -12
- package/dist/angular/index.d.ts +1 -1
- package/dist/angular/index.js +5 -1
- package/dist/angular/proxies.d.ts +5 -1
- package/dist/angular/proxies.js +5 -1
- 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-response.js.map +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-bar-action.js +1 -1
- package/dist/components/ds-bar-nav.js +1 -1
- package/dist/components/ds-bar-page-title.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-breadcrumb.js +1 -1
- package/dist/components/ds-button-filled.js +1 -1
- package/dist/components/ds-button-inverted.js +1 -1
- package/dist/components/ds-button-inverted.js.map +1 -1
- package/dist/components/ds-button-unfilled.js +1 -1
- package/dist/components/ds-calendar.js +1 -1
- package/dist/components/ds-card-action-center.js +1 -1
- package/dist/components/ds-card-action-center.js.map +1 -1
- package/dist/components/ds-card-chart.js +1 -1
- package/dist/components/ds-card-navigation.js +1 -1
- package/dist/components/ds-card-navigation.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-card-settings-scope.js +1 -1
- package/dist/components/ds-card-settings-scope.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-setting-row.d.ts → ds-checkbox-group.d.ts} +4 -4
- package/dist/components/ds-checkbox-group.js +2 -0
- package/dist/components/ds-checkbox-group.js.map +1 -0
- package/dist/components/ds-checkbox.js +1 -1
- package/dist/components/ds-chip.js +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-conversation-list.js +1 -1
- package/dist/components/ds-data-customize.js +1 -1
- package/dist/components/ds-data-filter.js +1 -1
- package/dist/components/ds-data-group.js +1 -1
- package/dist/components/ds-data-preferences.js +1 -1
- package/dist/components/ds-data-saved-views.js +1 -1
- package/dist/components/ds-data-search.js +1 -1
- package/dist/components/ds-data-search.js.map +1 -1
- package/dist/components/ds-data-sort.js +1 -1
- package/dist/components/ds-data-toolbar.js +1 -1
- package/dist/components/ds-divider.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-inline-banner-settings.d.ts +11 -0
- package/dist/components/ds-inline-banner-settings.js +2 -0
- package/dist/components/ds-inline-banner-settings.js.map +1 -0
- package/dist/components/ds-input-date.js +1 -1
- package/dist/components/ds-input-date.js.map +1 -1
- package/dist/components/ds-input-time.js +1 -1
- package/dist/components/ds-input-time.js.map +1 -1
- package/dist/components/ds-input.js +1 -1
- package/dist/components/ds-map-cluster-marker.js +1 -1
- package/dist/components/ds-map-entity-marker.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-bubble.js +1 -1
- package/dist/components/ds-message-bubble.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.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-tile.js +1 -1
- package/dist/components/ds-radio-tile.js.map +1 -1
- package/dist/components/ds-radio.js +1 -1
- package/dist/components/ds-score.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-setting-row-checkbox.d.ts +11 -0
- package/dist/components/ds-setting-row-checkbox.js +2 -0
- package/dist/components/ds-setting-row-checkbox.js.map +1 -0
- package/dist/components/ds-setting-row-radio.d.ts +11 -0
- package/dist/components/ds-setting-row-radio.js +2 -0
- package/dist/components/ds-setting-row-radio.js.map +1 -0
- package/dist/components/ds-setting-row-toggle.d.ts +11 -0
- package/dist/components/ds-setting-row-toggle.js +2 -0
- package/dist/components/ds-setting-row-toggle.js.map +1 -0
- 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-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.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-textarea.js +1 -1
- package/dist/components/ds-textarea.js.map +1 -1
- package/dist/components/ds-time-picker.js +1 -1
- package/dist/components/ds-toast.js +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/p-7TVdPhGR.js +2 -0
- package/dist/components/{p-DHapI2sf.js.map → p-7TVdPhGR.js.map} +1 -1
- package/dist/components/{p-7V1AhetH.js → p-B0BQCVkq.js} +2 -2
- package/dist/components/{p-Co5MiPNa.js → p-B0EpvBDs.js} +2 -2
- package/dist/components/{p-DFkw6wrS.js → p-B39iJO8F.js} +2 -2
- package/dist/components/p-B9TM6FqC.js +2 -0
- package/dist/components/{p-p_MwknM3.js.map → p-B9TM6FqC.js.map} +1 -1
- package/dist/components/{p-AmT4GlhM.js → p-B9y6azEw.js} +2 -2
- package/dist/components/p-BDdlJZyL.js +2 -0
- package/dist/components/{p-cuZva5tl.js.map → p-BDdlJZyL.js.map} +1 -1
- package/dist/components/{p-CrL9wxZg.js → p-BERXvOCf.js} +2 -2
- package/dist/components/{p-AM_ht6Im.js → p-BFHpU-uU.js} +2 -2
- package/dist/components/{p-B-HOVYoH.js → p-BQspV5U7.js} +2 -2
- package/dist/components/p-BWSIw8AQ.js +2 -0
- package/dist/components/p-BWSIw8AQ.js.map +1 -0
- package/dist/components/p-BhjqYTiY.js +2 -0
- package/dist/components/p-BhjqYTiY.js.map +1 -0
- package/dist/components/{p-C_gJD8l3.js → p-Bk3poU91.js} +2 -2
- package/dist/components/{p-Gb-vTuXr.js → p-BnuNaXR2.js} +2 -2
- package/dist/components/p-BwdnVqAY.js +2 -0
- package/dist/components/{p-BHI4LcGK.js.map → p-BwdnVqAY.js.map} +1 -1
- package/dist/components/p-C4huuwed.js +2 -0
- package/dist/components/{p-tJaC01aE.js.map → p-C4huuwed.js.map} +1 -1
- package/dist/components/{p-BsM37Prt.js → p-C8V4lkVy.js} +2 -2
- package/dist/components/p-CJ1NnOEW.js +2 -0
- package/dist/components/p-CJ1NnOEW.js.map +1 -0
- package/dist/components/p-CPamUzaj.js +2 -0
- package/dist/components/{p-BSuMDPaV.js.map → p-CPamUzaj.js.map} +1 -1
- package/dist/components/{p-BU1B6NW8.js → p-CUDocY23.js} +2 -2
- package/dist/components/{p-BU1B6NW8.js.map → p-CUDocY23.js.map} +1 -1
- package/dist/components/p-CX6ZxUQT.js +2 -0
- package/dist/components/p-CX6ZxUQT.js.map +1 -0
- package/dist/components/{p-C-c8SJ00.js → p-CZNZTcYS.js} +2 -2
- package/dist/components/{p-DQPzqcYR.js → p-CbCN9ew9.js} +2 -2
- package/dist/components/p-CeXf9-X3.js.map +1 -1
- package/dist/components/p-Cgn-BORA.js +2 -0
- package/dist/components/p-Cgn-BORA.js.map +1 -0
- package/dist/components/{p-CzQ_JF6A.js → p-Co1rUdOR.js} +2 -2
- package/dist/components/p-Co1rUdOR.js.map +1 -0
- package/dist/components/{p-D0KD-Nr_.js → p-CwdRaJER.js} +2 -2
- package/dist/components/p-D6FRqNhN.js +2 -0
- package/dist/components/p-D6FRqNhN.js.map +1 -0
- package/dist/components/{p-Cihjy4WY.js → p-D8OWhnID.js} +2 -2
- package/dist/components/p-DCyJ3_PL.js +2 -0
- package/dist/components/{p-fYZK3zqM.js.map → p-DCyJ3_PL.js.map} +1 -1
- package/dist/components/{p-BXSHN1OK.js → p-DIQiHX0q.js} +2 -2
- package/dist/components/{p-z8L-YMi3.js → p-DJDbskZf.js} +2 -2
- package/dist/components/p-DRdoGSGX.js +2 -0
- package/dist/components/{p-DWmYCOKz.js.map → p-DRdoGSGX.js.map} +1 -1
- package/dist/components/{p-Bm3KWMe4.js → p-DSZPO06T.js} +2 -2
- package/dist/components/{p-C3-dcROG.js → p-DSmDyI2o.js} +2 -2
- package/dist/components/{p-DcrdyDRw.js → p-DVEx-Xg9.js} +2 -2
- package/dist/components/{p-Bu4OmhKK.js → p-DXk1eml1.js} +2 -2
- package/dist/components/{p-B7QEpaMe.js → p-DYQa1DVF.js} +2 -2
- package/dist/components/p-DYQa1DVF.js.map +1 -0
- package/dist/components/p-DYsE6HLk.js +2 -0
- package/dist/components/p-DYsE6HLk.js.map +1 -0
- package/dist/components/p-DebLYW7A.js +2 -0
- package/dist/components/p-DebLYW7A.js.map +1 -0
- package/dist/components/{p-Bh1Fx0aW.js → p-DmSnHVW6.js} +2 -2
- package/dist/components/p-Dnt5xUBD.js +2 -0
- package/dist/components/{p-C4VeD49U.js.map → p-Dnt5xUBD.js.map} +1 -1
- package/dist/components/p-Doa2blZT.js +2 -0
- package/dist/components/{p-CztB8Pbq.js.map → p-Doa2blZT.js.map} +1 -1
- package/dist/components/{p-CCpJT31M.js → p-Dyqd-cub.js} +2 -2
- package/dist/components/{p-CCpJT31M.js.map → p-Dyqd-cub.js.map} +1 -1
- package/dist/components/p-DzvTC27M.js +2 -0
- package/dist/components/p-DzvTC27M.js.map +1 -0
- package/dist/components/p-JBki_jyY.js +2 -0
- package/dist/components/{p-BugKaVWc.js.map → p-JBki_jyY.js.map} +1 -1
- package/dist/components/p-MOJmB6vX.js +2 -0
- package/dist/components/{p-iGNHXFZA.js.map → p-MOJmB6vX.js.map} +1 -1
- package/dist/components/{p-BYJtvRQm.js → p-UJMEz8_O.js} +2 -2
- package/dist/components/{p-Bo7GxFBh.js → p-_IqSPt5V.js} +2 -2
- package/dist/components/p-g0jsfEXz.js +2 -0
- package/dist/components/{p-Fkkd3gMB.js.map → p-g0jsfEXz.js.map} +1 -1
- package/dist/components/{p-lADW-TI8.js → p-pp1IQN4Z.js} +2 -2
- package/dist/docs/components.json +701 -13
- package/dist/lib/shell/index.js +1 -1
- package/dist/lib/shell/index.js.map +1 -1
- package/dist/lint/index.js +1 -1
- package/dist/mcp-data/registry/agent-activity.json +1 -1
- package/dist/mcp-data/registry/agent-questionnaire.json +1 -1
- package/dist/mcp-data/registry/agent-response.json +2 -2
- package/dist/mcp-data/registry/agent-source-list.json +1 -1
- package/dist/mcp-data/registry/agent-tool-call.json +1 -1
- package/dist/mcp-data/registry/attachment-list.json +1 -1
- package/dist/mcp-data/registry/avatar.json +1 -1
- package/dist/mcp-data/registry/badge.json +1 -1
- package/dist/mcp-data/registry/banner.json +1 -1
- package/dist/mcp-data/registry/bar-action.json +1 -1
- package/dist/mcp-data/registry/bar-nav.json +4 -4
- package/dist/mcp-data/registry/bar-page-title.json +3 -3
- package/dist/mcp-data/registry/bar-title.json +3 -3
- package/dist/mcp-data/registry/bar-workflow.json +1 -1
- package/dist/mcp-data/registry/breadcrumb.json +1 -1
- package/dist/mcp-data/registry/button-filled.json +1 -1
- package/dist/mcp-data/registry/button-inverted.json +1 -1
- package/dist/mcp-data/registry/button-unfilled.json +8 -8
- package/dist/mcp-data/registry/calendar.json +1 -1
- package/dist/mcp-data/registry/card-action-center.json +1 -1
- package/dist/mcp-data/registry/card-chart.json +1 -1
- package/dist/mcp-data/registry/card-navigation.json +1 -1
- package/dist/mcp-data/registry/card-overview.json +1 -1
- package/dist/mcp-data/registry/card-setting.json +22 -8
- package/dist/mcp-data/registry/card-settings-scope.json +1 -1
- package/dist/mcp-data/registry/chart-legend.json +1 -1
- package/dist/mcp-data/registry/chart.json +1 -1
- package/dist/mcp-data/registry/checkbox-group.json +246 -0
- package/dist/mcp-data/registry/checkbox.json +25 -5
- package/dist/mcp-data/registry/chip.json +1 -1
- package/dist/mcp-data/registry/code-block.json +1 -1
- package/dist/mcp-data/registry/conversation-list-item.json +1 -1
- package/dist/mcp-data/registry/conversation-list-section.json +1 -1
- package/dist/mcp-data/registry/conversation-list.json +1 -1
- package/dist/mcp-data/registry/data-customize.json +1 -1
- package/dist/mcp-data/registry/data-filter.json +1 -1
- package/dist/mcp-data/registry/data-group.json +1 -1
- package/dist/mcp-data/registry/data-preferences.json +1 -1
- package/dist/mcp-data/registry/data-saved-views.json +1 -1
- package/dist/mcp-data/registry/data-search.json +1 -1
- package/dist/mcp-data/registry/data-sort.json +1 -1
- package/dist/mcp-data/registry/data-toolbar.json +1 -1
- package/dist/mcp-data/registry/divider.json +1 -1
- package/dist/mcp-data/registry/empty-state.json +1 -1
- package/dist/mcp-data/registry/field.json +1 -1
- package/dist/mcp-data/registry/filter-menu.json +1 -1
- package/dist/mcp-data/registry/icon.json +1 -1
- package/dist/mcp-data/registry/inline-banner-settings.json +175 -0
- package/dist/mcp-data/registry/input-date.json +1 -1
- package/dist/mcp-data/registry/input-time.json +1 -1
- package/dist/mcp-data/registry/input.json +1 -1
- package/dist/mcp-data/registry/loader.json +1 -1
- package/dist/mcp-data/registry/map-cluster-marker.json +1 -1
- package/dist/mcp-data/registry/map-entity-marker.json +1 -1
- package/dist/mcp-data/registry/markdown.json +1 -1
- package/dist/mcp-data/registry/menu.json +1 -1
- package/dist/mcp-data/registry/message-actions.json +1 -1
- package/dist/mcp-data/registry/message-bubble.json +4 -4
- package/dist/mcp-data/registry/message-composer.json +6 -6
- package/dist/mcp-data/registry/message-scroller.json +1 -1
- package/dist/mcp-data/registry/message.json +2 -2
- package/dist/mcp-data/registry/mobile-bar-nav.json +1 -1
- package/dist/mcp-data/registry/mobile-header.json +1 -1
- package/dist/mcp-data/registry/mobile-section-switcher.json +1 -1
- package/dist/mcp-data/registry/mobile-sheet-nav.json +1 -1
- package/dist/mcp-data/registry/modal.json +1 -1
- package/dist/mcp-data/registry/pagination.json +1 -1
- package/dist/mcp-data/registry/panel-nav.json +3 -3
- package/dist/mcp-data/registry/panel-sub-nav.json +1 -1
- package/dist/mcp-data/registry/panel-tool-header.json +3 -3
- package/dist/mcp-data/registry/panel-tool-search.json +2 -2
- package/dist/mcp-data/registry/panel-tools.json +3 -3
- package/dist/mcp-data/registry/paper-texture.json +1 -1
- package/dist/mcp-data/registry/radio-tile.json +5 -4
- package/dist/mcp-data/registry/radio.json +50 -8
- package/dist/mcp-data/registry/registry.json +518 -31
- package/dist/mcp-data/registry/score.json +1 -1
- package/dist/mcp-data/registry/scroll-overlay.json +1 -1
- package/dist/mcp-data/registry/select.json +1 -1
- package/dist/mcp-data/registry/setting-row-checkbox.json +197 -0
- package/dist/mcp-data/registry/setting-row-radio.json +196 -0
- package/dist/mcp-data/registry/{setting-row.json → setting-row-toggle.json} +45 -25
- package/dist/mcp-data/registry/shell-app.json +3 -3
- package/dist/mcp-data/registry/shell-page.json +1 -1
- package/dist/mcp-data/registry/shell-tools.json +1 -1
- package/dist/mcp-data/registry/skeleton.json +1 -1
- package/dist/mcp-data/registry/slider.json +1 -1
- package/dist/mcp-data/registry/swatch-picker.json +1 -1
- package/dist/mcp-data/registry/switch.json +3 -3
- package/dist/mcp-data/registry/tab-group.json +1 -1
- package/dist/mcp-data/registry/table.json +1 -1
- package/dist/mcp-data/registry/tag.json +1 -1
- package/dist/mcp-data/registry/text.json +1 -1
- package/dist/mcp-data/registry/textarea.json +1 -1
- package/dist/mcp-data/registry/time-picker.json +1 -1
- package/dist/mcp-data/registry/toast.json +1 -1
- package/dist/mcp-data/registry/tooltip-chart.json +1 -1
- package/dist/mcp-data/registry/tooltip.json +1 -1
- package/dist/mcp-data/registry/typing-indicator.json +1 -1
- package/dist/react/components.d.ts +5 -1
- package/dist/react/components.js +5 -1
- package/dist/react/ds-checkbox-group.d.ts +9 -0
- package/dist/react/ds-checkbox-group.js +12 -0
- package/dist/react/ds-inline-banner-settings.d.ts +9 -0
- package/dist/react/ds-inline-banner-settings.js +12 -0
- package/dist/react/ds-setting-row-checkbox.d.ts +9 -0
- package/dist/react/ds-setting-row-checkbox.js +12 -0
- package/dist/react/ds-setting-row-radio.d.ts +9 -0
- package/dist/react/ds-setting-row-radio.js +12 -0
- package/dist/react/ds-setting-row-toggle.d.ts +12 -0
- package/dist/react/ds-setting-row-toggle.js +12 -0
- package/dist/types/components/BarPageTitle/BarPageTitle.d.ts +2 -0
- package/dist/types/components/BarTitle/bar-title-action-chrome.d.ts +4 -0
- package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +5 -2
- package/dist/types/components/CardSetting/CardSetting.d.ts +12 -2
- package/dist/types/components/Checkbox/Checkbox.d.ts +2 -0
- package/dist/types/components/CheckboxGroup/CheckboxGroup.d.ts +20 -0
- package/dist/types/components/InlineBannerSettings/InlineBannerSettings.d.ts +6 -0
- package/dist/types/components/Radio/Radio.d.ts +8 -0
- package/dist/types/components/SettingRowCheckbox/SettingRowCheckbox.d.ts +19 -0
- package/dist/types/components/SettingRowRadio/SettingRowRadio.d.ts +19 -0
- package/dist/types/components/{SettingRow/SettingRow.d.ts → SettingRowToggle/SettingRowToggle.d.ts} +5 -2
- package/dist/types/components/Switch/Switch.d.ts +7 -0
- package/dist/types/components.d.ts +290 -20
- package/dist/vue/components.d.ts +5 -1
- package/dist/vue/components.js +5 -1
- package/dist/vue/{ds-setting-row.d.ts → ds-checkbox-group.d.ts} +1 -1
- package/dist/vue/ds-checkbox-group.js +12 -0
- package/dist/vue/ds-checkbox.js +1 -0
- package/dist/vue/ds-inline-banner-settings.d.ts +3 -0
- package/dist/vue/ds-inline-banner-settings.js +8 -0
- package/dist/vue/ds-radio.js +2 -0
- package/dist/vue/ds-setting-row-checkbox.d.ts +3 -0
- package/dist/vue/ds-setting-row-checkbox.js +11 -0
- package/dist/vue/ds-setting-row-radio.d.ts +3 -0
- package/dist/vue/ds-setting-row-radio.js +11 -0
- package/dist/vue/ds-setting-row-toggle.d.ts +3 -0
- package/dist/vue/ds-setting-row-toggle.js +15 -0
- package/package.json +3 -3
- package/dist/angular/ds-setting-row.d.ts +0 -18
- package/dist/components/ds-setting-row.js +0 -2
- package/dist/components/ds-setting-row.js.map +0 -1
- package/dist/components/p-3bsypMrY.js +0 -2
- package/dist/components/p-3bsypMrY.js.map +0 -1
- package/dist/components/p-B7QEpaMe.js.map +0 -1
- package/dist/components/p-B7bXN-vf.js +0 -2
- package/dist/components/p-B7bXN-vf.js.map +0 -1
- package/dist/components/p-BHI4LcGK.js +0 -2
- package/dist/components/p-BSuMDPaV.js +0 -2
- package/dist/components/p-BVwg5XVz.js +0 -2
- package/dist/components/p-BVwg5XVz.js.map +0 -1
- package/dist/components/p-BugKaVWc.js +0 -2
- package/dist/components/p-C4VeD49U.js +0 -2
- package/dist/components/p-CI7c9kp-.js +0 -2
- package/dist/components/p-CI7c9kp-.js.map +0 -1
- package/dist/components/p-CJD0kLeV.js +0 -2
- package/dist/components/p-CJD0kLeV.js.map +0 -1
- package/dist/components/p-Cc3ZUQlJ.js +0 -2
- package/dist/components/p-Cc3ZUQlJ.js.map +0 -1
- package/dist/components/p-CzQ_JF6A.js.map +0 -1
- package/dist/components/p-CztB8Pbq.js +0 -2
- package/dist/components/p-DCLRAH5i.js +0 -2
- package/dist/components/p-DCLRAH5i.js.map +0 -1
- package/dist/components/p-DHapI2sf.js +0 -2
- package/dist/components/p-DWmYCOKz.js +0 -2
- package/dist/components/p-DX2RyZba.js +0 -2
- package/dist/components/p-DX2RyZba.js.map +0 -1
- package/dist/components/p-Dcn1eDVt.js +0 -2
- package/dist/components/p-Dcn1eDVt.js.map +0 -1
- package/dist/components/p-Fkkd3gMB.js +0 -2
- package/dist/components/p-cuZva5tl.js +0 -2
- package/dist/components/p-fYZK3zqM.js +0 -2
- package/dist/components/p-iGNHXFZA.js +0 -2
- package/dist/components/p-p_MwknM3.js +0 -2
- package/dist/components/p-tJaC01aE.js +0 -2
- package/dist/react/ds-setting-row.d.ts +0 -12
- package/dist/react/ds-setting-row.js +0 -12
- package/dist/vue/ds-setting-row.js +0 -14
- /package/dist/components/{p-7V1AhetH.js.map → p-B0BQCVkq.js.map} +0 -0
- /package/dist/components/{p-Co5MiPNa.js.map → p-B0EpvBDs.js.map} +0 -0
- /package/dist/components/{p-DFkw6wrS.js.map → p-B39iJO8F.js.map} +0 -0
- /package/dist/components/{p-AmT4GlhM.js.map → p-B9y6azEw.js.map} +0 -0
- /package/dist/components/{p-CrL9wxZg.js.map → p-BERXvOCf.js.map} +0 -0
- /package/dist/components/{p-AM_ht6Im.js.map → p-BFHpU-uU.js.map} +0 -0
- /package/dist/components/{p-B-HOVYoH.js.map → p-BQspV5U7.js.map} +0 -0
- /package/dist/components/{p-C_gJD8l3.js.map → p-Bk3poU91.js.map} +0 -0
- /package/dist/components/{p-Gb-vTuXr.js.map → p-BnuNaXR2.js.map} +0 -0
- /package/dist/components/{p-BsM37Prt.js.map → p-C8V4lkVy.js.map} +0 -0
- /package/dist/components/{p-C-c8SJ00.js.map → p-CZNZTcYS.js.map} +0 -0
- /package/dist/components/{p-DQPzqcYR.js.map → p-CbCN9ew9.js.map} +0 -0
- /package/dist/components/{p-D0KD-Nr_.js.map → p-CwdRaJER.js.map} +0 -0
- /package/dist/components/{p-Cihjy4WY.js.map → p-D8OWhnID.js.map} +0 -0
- /package/dist/components/{p-BXSHN1OK.js.map → p-DIQiHX0q.js.map} +0 -0
- /package/dist/components/{p-z8L-YMi3.js.map → p-DJDbskZf.js.map} +0 -0
- /package/dist/components/{p-Bm3KWMe4.js.map → p-DSZPO06T.js.map} +0 -0
- /package/dist/components/{p-C3-dcROG.js.map → p-DSmDyI2o.js.map} +0 -0
- /package/dist/components/{p-DcrdyDRw.js.map → p-DVEx-Xg9.js.map} +0 -0
- /package/dist/components/{p-Bu4OmhKK.js.map → p-DXk1eml1.js.map} +0 -0
- /package/dist/components/{p-Bh1Fx0aW.js.map → p-DmSnHVW6.js.map} +0 -0
- /package/dist/components/{p-BYJtvRQm.js.map → p-UJMEz8_O.js.map} +0 -0
- /package/dist/components/{p-Bo7GxFBh.js.map → p-_IqSPt5V.js.map} +0 -0
- /package/dist/components/{p-lADW-TI8.js.map → p-pp1IQN4Z.js.map} +0 -0
package/dist/agent.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "1.0.0",
|
|
3
3
|
"package": "@ds-mo/ui",
|
|
4
|
-
"packageVersion": "15.
|
|
4
|
+
"packageVersion": "15.4.0",
|
|
5
5
|
"kind": "components",
|
|
6
6
|
"entries": [
|
|
7
7
|
{
|
|
@@ -1296,7 +1296,7 @@
|
|
|
1296
1296
|
}
|
|
1297
1297
|
],
|
|
1298
1298
|
"styling": {
|
|
1299
|
-
"rationale": "The host participates in
|
|
1299
|
+
"rationale": "The host participates in ShellApp-owned layout; ShellApp owns the shared Chrome base and wash while BarNav owns Chrome foreground, border, and interaction recipes.",
|
|
1300
1300
|
"protected": [],
|
|
1301
1301
|
"customProperties": []
|
|
1302
1302
|
}
|
|
@@ -2791,7 +2791,7 @@
|
|
|
2791
2791
|
"General content UI keeps the selected interaction fill and border for pressed or active emphasis.",
|
|
2792
2792
|
"Shell, navigation, and tool-rail composites use isActive with primary foreground across the complete control and no selected fill or border.",
|
|
2793
2793
|
"The omitted default surface treatment is for primary and secondary parent surfaces and uses the brand-active selected fill; pass faint explicitly on faint surfaces to use the neutral active fill.",
|
|
2794
|
-
"Surface context must match the actual parent surface; translucent, inverted, media, and always-dark treatments are reserved for those surfaces.",
|
|
2794
|
+
"Surface context must match the actual parent surface; chrome, translucent, inverted, media, and always-dark treatments are reserved for those surfaces. The chrome variant uses the chrome foreground, border, and interaction families and does not paint the parent surface.",
|
|
2795
2795
|
"Loading prevents duplicate activation without applying inactive opacity or removing the current keyboard focus.",
|
|
2796
2796
|
"Rounded changes only the control radius to the half-radius treatment; it does not change hierarchy, size, variant, or interaction semantics.",
|
|
2797
2797
|
"Physical press scaling is on by default. Disable it only when an owning composite must keep child or background geometry fixed; hover and pressed interaction washes remain available.",
|
|
@@ -3881,7 +3881,10 @@
|
|
|
3881
3881
|
"component:ds-select",
|
|
3882
3882
|
"component:ds-switch",
|
|
3883
3883
|
"component:ds-text",
|
|
3884
|
-
"component:ds-setting-row"
|
|
3884
|
+
"component:ds-setting-row-toggle",
|
|
3885
|
+
"component:ds-setting-row-radio",
|
|
3886
|
+
"component:ds-setting-row-checkbox",
|
|
3887
|
+
"component:ds-inline-banner-settings"
|
|
3885
3888
|
],
|
|
3886
3889
|
"accessibility": [
|
|
3887
3890
|
"Provide a concise heading that identifies the settings section; CardSetting renders it as an h2.",
|
|
@@ -3896,26 +3899,30 @@
|
|
|
3896
3899
|
"The editing property is controlled; CardSetting never changes it internally.",
|
|
3897
3900
|
"dsAction emits edit, save, or cancel with the original pointer event. The parent decides whether and when editing changes.",
|
|
3898
3901
|
"When another section requests edit, the parent keeps one active section and resolves any dirty current section before switching.",
|
|
3902
|
+
"Project persistent informational copy into the banner slot so it sits above the padded content body and does not receive content-area padding.",
|
|
3899
3903
|
"The parent owns read-only versus editable body composition, dirty state, validation, persistence, loading, success, and error consequences.",
|
|
3900
3904
|
"A save request keeps the section editing while validation or persistence is pending; the parent exits only after success.",
|
|
3901
3905
|
"A cancel request does not persist changes; the parent restores its chosen value snapshot and exits editing.",
|
|
3902
3906
|
"The immediate variant keeps the resting card surface and omits header actions even if editing is supplied. The application applies and persists each control change independently."
|
|
3903
3907
|
],
|
|
3904
3908
|
"responsiveBehavior": [
|
|
3905
|
-
"Choose sm, md, or lg from the parent layout.
|
|
3909
|
+
"Choose sm, md, or lg from the parent layout. Empty editable cards use the matching minimum height. Cards with body content, and immediate cards, fit that content.",
|
|
3906
3910
|
"The surface never exceeds its parent width, while the parent owns wrapping, columns, stacking, and breakpoint changes.",
|
|
3907
3911
|
"At narrow widths, keep the fixed header actions visible and let application-owned body layouts collapse before allowing horizontal overflow."
|
|
3908
3912
|
],
|
|
3909
3913
|
"frameworkCaveats": {
|
|
3910
3914
|
"customElements": [
|
|
3915
|
+
"Project ds-inline-banner-settings with slot=\"banner\". Leave setting rows and other controls in the default slot.",
|
|
3911
3916
|
"Set editing as a JavaScript property and inspect dsAction.detail.action before updating the controlled state.",
|
|
3912
3917
|
"When one section emits edit, update every sibling CardSetting so only the requested section remains editing."
|
|
3913
3918
|
],
|
|
3914
3919
|
"react": [
|
|
3920
|
+
"Pass slot=\"banner\" on ds-inline-banner-settings. Leave setting rows and other controls in the default slot.",
|
|
3915
3921
|
"Pass editing from parent state and inspect onDsAction event detail; do not treat Save as successful until validation and persistence complete.",
|
|
3916
3922
|
"Store one active section id and derive each CardSetting editing prop from that id."
|
|
3917
3923
|
],
|
|
3918
3924
|
"angular": [
|
|
3925
|
+
"Set slot=\"banner\" on ds-inline-banner-settings. Leave setting rows and other controls in the default slot.",
|
|
3919
3926
|
"Bind [editing] and inspect $event.detail.action from (dsAction); do not treat Save as successful until validation and persistence complete.",
|
|
3920
3927
|
"Store one active section id and derive each CardSetting editing binding from that id."
|
|
3921
3928
|
]
|
|
@@ -3950,12 +3957,19 @@
|
|
|
3950
3957
|
"reason": "The component owns its surface radius; retain the shared recipe and customize an outer wrapper when needed.",
|
|
3951
3958
|
"props": []
|
|
3952
3959
|
},
|
|
3960
|
+
{
|
|
3961
|
+
"properties": [
|
|
3962
|
+
"padding"
|
|
3963
|
+
],
|
|
3964
|
+
"reason": "Content-area padding-block belongs on the body. The banner slot sits above that padding and does not receive it.",
|
|
3965
|
+
"props": []
|
|
3966
|
+
},
|
|
3953
3967
|
{
|
|
3954
3968
|
"properties": [
|
|
3955
3969
|
"width",
|
|
3956
3970
|
"min-height"
|
|
3957
3971
|
],
|
|
3958
|
-
"reason": "Card width selects the component geometry; immediate cards fit
|
|
3972
|
+
"reason": "Card width selects the component geometry. Empty editable cards keep the matching minimum height; cards with body content and immediate cards fit that content. Let the parent constrain available space.",
|
|
3959
3973
|
"props": [
|
|
3960
3974
|
"cardWidth",
|
|
3961
3975
|
"variant"
|
|
@@ -4476,7 +4490,8 @@
|
|
|
4476
4490
|
"The initial checked and indeterminate values are restored by native form reset; checked values submit under name and unchecked values submit nothing.",
|
|
4477
4491
|
"Sizes are lg with a 20px box in a 24px placement, md with a 16px box in a 20px placement, sm with a 12px box in a 16px placement, and xs with an 8px box in a 12px placement.",
|
|
4478
4492
|
"Presentation mode removes checkbox semantics, focus, interaction, label rendering, description rendering, and form submission while preserving the visual state.",
|
|
4479
|
-
"Description-rich checkboxes grow beyond the fixed density height while retaining its minimum target size and
|
|
4493
|
+
"Description-rich checkboxes grow beyond the fixed density height while retaining its minimum target size and align the checkbox placement with the primary label line.",
|
|
4494
|
+
"Form and settings usage omits a row hover or pressed wash by default; set hasInteractionFill only when the checkbox itself is presented as a choice-list row."
|
|
4480
4495
|
],
|
|
4481
4496
|
"responsiveBehavior": [
|
|
4482
4497
|
"Choose size from the density of the containing row; labels and descriptions may wrap while the placement box stays fixed.",
|
|
@@ -4537,7 +4552,8 @@
|
|
|
4537
4552
|
"reason": "The component owns its surface and interaction treatment; use its semantic presentation props or compose an application-owned surrounding surface.",
|
|
4538
4553
|
"props": [
|
|
4539
4554
|
"size",
|
|
4540
|
-
"presentation"
|
|
4555
|
+
"presentation",
|
|
4556
|
+
"hasInteractionFill"
|
|
4541
4557
|
]
|
|
4542
4558
|
}
|
|
4543
4559
|
],
|
|
@@ -4558,6 +4574,10 @@
|
|
|
4558
4574
|
"type": "boolean",
|
|
4559
4575
|
"required": false
|
|
4560
4576
|
},
|
|
4577
|
+
"hasInteractionFill": {
|
|
4578
|
+
"type": "boolean",
|
|
4579
|
+
"required": false
|
|
4580
|
+
},
|
|
4561
4581
|
"indeterminate": {
|
|
4562
4582
|
"type": "boolean",
|
|
4563
4583
|
"required": false
|
|
@@ -4617,6 +4637,137 @@
|
|
|
4617
4637
|
"text"
|
|
4618
4638
|
]
|
|
4619
4639
|
},
|
|
4640
|
+
{
|
|
4641
|
+
"id": "component:ds-checkbox-group",
|
|
4642
|
+
"tag": "ds-checkbox-group",
|
|
4643
|
+
"name": "checkbox-group",
|
|
4644
|
+
"title": "CheckboxGroup",
|
|
4645
|
+
"summary": "A visible, accessible label and shared vertical rhythm for a list of independent Checkbox controls.",
|
|
4646
|
+
"intentStatus": "complete",
|
|
4647
|
+
"intent": {
|
|
4648
|
+
"audience": "general",
|
|
4649
|
+
"status": "experimental",
|
|
4650
|
+
"summary": "A visible, accessible label and shared vertical rhythm for a list of independent Checkbox controls.",
|
|
4651
|
+
"useWhen": [
|
|
4652
|
+
"Two or more related checkboxes need one visible group label in a form.",
|
|
4653
|
+
"A checkbox list should use the same density-aligned heading geometry as other compact option lists."
|
|
4654
|
+
],
|
|
4655
|
+
"avoidWhen": [
|
|
4656
|
+
"Only one standalone checkbox is needed.",
|
|
4657
|
+
"Exactly one option may be selected; use Radio instead.",
|
|
4658
|
+
"The list is a settings-card row; use component:ds-setting-row-checkbox, which owns the heading and view/edit presentation."
|
|
4659
|
+
],
|
|
4660
|
+
"alternatives": [
|
|
4661
|
+
{
|
|
4662
|
+
"when": "Exactly one option may be selected.",
|
|
4663
|
+
"component": "component:ds-radio",
|
|
4664
|
+
"reason": "Radio owns mutually exclusive selection and keyboard traversal."
|
|
4665
|
+
}
|
|
4666
|
+
],
|
|
4667
|
+
"commonlyComposedWith": [
|
|
4668
|
+
"component:ds-checkbox",
|
|
4669
|
+
"component:ds-text",
|
|
4670
|
+
"component:ds-setting-row-checkbox"
|
|
4671
|
+
],
|
|
4672
|
+
"accessibility": [
|
|
4673
|
+
"The visible label names the role=group container; each slotted Checkbox keeps its own visible label, state, focus, and form value.",
|
|
4674
|
+
"Inside ds-setting-row-checkbox the visible form label is omitted on first paint; the row heading is the accessible name via aria-labelledby.",
|
|
4675
|
+
"Use aria-describedby to associate group-level guidance or validation copy.",
|
|
4676
|
+
"Use the same size on CheckboxGroup and every slotted Checkbox so their text origins and density remain aligned."
|
|
4677
|
+
],
|
|
4678
|
+
"states": [
|
|
4679
|
+
"The label uses the shared density section-heading row and body-small emphasis.",
|
|
4680
|
+
"Vertical checkbox options use a 4px gap; at medium density the group label and each single-line checkbox row are 32px high.",
|
|
4681
|
+
"Selection, mixed, inactive, validation, and form behavior remain owned by each slotted Checkbox."
|
|
4682
|
+
],
|
|
4683
|
+
"responsiveBehavior": [
|
|
4684
|
+
"The group fills the width supplied by its parent while each Checkbox keeps its intrinsic row width and allows copy to wrap."
|
|
4685
|
+
],
|
|
4686
|
+
"frameworkCaveats": {
|
|
4687
|
+
"customElements": [
|
|
4688
|
+
"Slot two or more ds-checkbox children and keep their name, value, and checked state application-owned."
|
|
4689
|
+
],
|
|
4690
|
+
"react": [
|
|
4691
|
+
"Compose DsCheckbox children inside DsCheckboxGroup."
|
|
4692
|
+
],
|
|
4693
|
+
"vue": [
|
|
4694
|
+
"Compose DsCheckbox children inside DsCheckboxGroup."
|
|
4695
|
+
],
|
|
4696
|
+
"angular": [
|
|
4697
|
+
"Compose generated DsCheckbox adapters inside DsCheckboxGroup."
|
|
4698
|
+
]
|
|
4699
|
+
},
|
|
4700
|
+
"references": [
|
|
4701
|
+
{
|
|
4702
|
+
"label": "Storybook examples",
|
|
4703
|
+
"path": "src/wc/components/CheckboxGroup/CheckboxGroup.stories.ts"
|
|
4704
|
+
},
|
|
4705
|
+
{
|
|
4706
|
+
"label": "Rendered form geometry coverage",
|
|
4707
|
+
"path": "tests/e2e/forms.spec.ts"
|
|
4708
|
+
}
|
|
4709
|
+
],
|
|
4710
|
+
"styling": {
|
|
4711
|
+
"rationale": "The group owns only its label and option-list rhythm; each Checkbox owns its own selection anatomy.",
|
|
4712
|
+
"protected": [
|
|
4713
|
+
{
|
|
4714
|
+
"properties": [
|
|
4715
|
+
"gap",
|
|
4716
|
+
"padding",
|
|
4717
|
+
"font",
|
|
4718
|
+
"font-size",
|
|
4719
|
+
"font-weight",
|
|
4720
|
+
"line-height"
|
|
4721
|
+
],
|
|
4722
|
+
"reason": "Use size to keep the heading and slotted controls on the shared density recipe.",
|
|
4723
|
+
"props": [
|
|
4724
|
+
"size"
|
|
4725
|
+
]
|
|
4726
|
+
}
|
|
4727
|
+
],
|
|
4728
|
+
"customProperties": []
|
|
4729
|
+
}
|
|
4730
|
+
},
|
|
4731
|
+
"api": {
|
|
4732
|
+
"props": {
|
|
4733
|
+
"ariaDescribedby": {
|
|
4734
|
+
"type": "string | undefined",
|
|
4735
|
+
"required": false
|
|
4736
|
+
},
|
|
4737
|
+
"ariaLabel": {
|
|
4738
|
+
"type": "string | null",
|
|
4739
|
+
"required": false
|
|
4740
|
+
},
|
|
4741
|
+
"ariaLabelledby": {
|
|
4742
|
+
"type": "string | undefined",
|
|
4743
|
+
"required": false
|
|
4744
|
+
},
|
|
4745
|
+
"label": {
|
|
4746
|
+
"type": "string",
|
|
4747
|
+
"required": false
|
|
4748
|
+
},
|
|
4749
|
+
"size": {
|
|
4750
|
+
"type": "CheckboxGroupSize",
|
|
4751
|
+
"required": false
|
|
4752
|
+
}
|
|
4753
|
+
},
|
|
4754
|
+
"events": [],
|
|
4755
|
+
"slots": []
|
|
4756
|
+
},
|
|
4757
|
+
"exports": {
|
|
4758
|
+
"customElement": "ds-checkbox-group",
|
|
4759
|
+
"react": "DsCheckboxGroup",
|
|
4760
|
+
"vue": "DsCheckboxGroup",
|
|
4761
|
+
"angular": "DsCheckboxGroup"
|
|
4762
|
+
},
|
|
4763
|
+
"dependencies": [
|
|
4764
|
+
"@ds-mo/ui",
|
|
4765
|
+
"@ds-mo/tokens"
|
|
4766
|
+
],
|
|
4767
|
+
"componentDependencies": [
|
|
4768
|
+
"text"
|
|
4769
|
+
]
|
|
4770
|
+
},
|
|
4620
4771
|
{
|
|
4621
4772
|
"id": "component:ds-chip",
|
|
4622
4773
|
"tag": "ds-chip",
|
|
@@ -7460,6 +7611,118 @@
|
|
|
7460
7611
|
],
|
|
7461
7612
|
"componentDependencies": []
|
|
7462
7613
|
},
|
|
7614
|
+
{
|
|
7615
|
+
"id": "component:ds-inline-banner-settings",
|
|
7616
|
+
"tag": "ds-inline-banner-settings",
|
|
7617
|
+
"name": "inline-banner-settings",
|
|
7618
|
+
"title": "InlineBannerSettings",
|
|
7619
|
+
"summary": "Compact non-interactive informational copy row for settings cards.",
|
|
7620
|
+
"intentStatus": "complete",
|
|
7621
|
+
"intent": {
|
|
7622
|
+
"audience": "general",
|
|
7623
|
+
"status": "stable",
|
|
7624
|
+
"summary": "Compact non-interactive informational copy row for settings cards.",
|
|
7625
|
+
"useWhen": [
|
|
7626
|
+
"A settings card needs persistent informational copy above its content.",
|
|
7627
|
+
"The message should remain visible in both read-only and editing presentations of the settings card.",
|
|
7628
|
+
"The message needs body-small typography, compact spacing, and a single tertiary bottom boundary."
|
|
7629
|
+
],
|
|
7630
|
+
"avoidWhen": [
|
|
7631
|
+
"The message belongs in general bounded content outside a settings card; reserve the general inline-banner component for that use case.",
|
|
7632
|
+
"The message is application-wide or needs dismissal, actions, or announcement urgency; use Banner.",
|
|
7633
|
+
"The message is transient or follows a completed action; use Toast."
|
|
7634
|
+
],
|
|
7635
|
+
"alternatives": [
|
|
7636
|
+
{
|
|
7637
|
+
"when": "A persistent application-wide condition needs optional actions or dismissal.",
|
|
7638
|
+
"component": "component:ds-banner",
|
|
7639
|
+
"reason": "Banner owns shell-level messaging, actions, dismissal, and announcement behavior."
|
|
7640
|
+
},
|
|
7641
|
+
{
|
|
7642
|
+
"when": "A field needs supporting or validation copy tied to its control.",
|
|
7643
|
+
"component": "component:ds-field",
|
|
7644
|
+
"reason": "Field owns the control relationship and supporting-message semantics."
|
|
7645
|
+
}
|
|
7646
|
+
],
|
|
7647
|
+
"commonlyComposedWith": [
|
|
7648
|
+
"component:ds-card-setting",
|
|
7649
|
+
"component:ds-text"
|
|
7650
|
+
],
|
|
7651
|
+
"accessibility": [
|
|
7652
|
+
"Keep the description concise and authored; InlineBannerSettings does not transform, truncate, or announce the copy.",
|
|
7653
|
+
"Use InlineBannerSettings for static context. Applications must choose a live-region component when a dynamic announcement is required.",
|
|
7654
|
+
"The informational copy remains plain text and has no interactive controls or dismissal affordance."
|
|
7655
|
+
],
|
|
7656
|
+
"states": [
|
|
7657
|
+
"The description renders verbatim in every state in which the owning settings card projects the component.",
|
|
7658
|
+
"The component has no internal visibility, editing, or dismissal state; the owning settings card controls whether it is present.",
|
|
7659
|
+
"The content height is intrinsic: the banner contributes 8px block padding and its inner content container contributes 4px block padding. A single body-small line is 24px inside that container (4px + 16px line-height + 4px), followed by the tertiary bottom boundary."
|
|
7660
|
+
],
|
|
7661
|
+
"responsiveBehavior": [
|
|
7662
|
+
"The component fills the available inline size and lets body-small copy wrap naturally.",
|
|
7663
|
+
"The effective inline inset remains 16px: 8px banner padding, 6px inner content padding, and 2px text-side padding."
|
|
7664
|
+
],
|
|
7665
|
+
"frameworkCaveats": {
|
|
7666
|
+
"customElements": [
|
|
7667
|
+
"Pass the complete authored message through description, assign slot=\"banner\" on CardSetting, and do not apply a CSS casing transform or mutate the text for presentation."
|
|
7668
|
+
],
|
|
7669
|
+
"react": [
|
|
7670
|
+
"Pass the complete authored message through the description prop, set slot=\"banner\" on CardSetting, and keep the component mounted for every settings-card state that needs the context."
|
|
7671
|
+
],
|
|
7672
|
+
"angular": [
|
|
7673
|
+
"Bind [description] from the settings card's stable copy source and project the component into CardSetting's banner slot for every state that needs the context."
|
|
7674
|
+
]
|
|
7675
|
+
},
|
|
7676
|
+
"references": [
|
|
7677
|
+
{
|
|
7678
|
+
"label": "Settings inline banner examples",
|
|
7679
|
+
"path": "src/wc/components/InlineBannerSettings/InlineBannerSettings.stories.ts"
|
|
7680
|
+
},
|
|
7681
|
+
{
|
|
7682
|
+
"label": "Rendered geometry coverage",
|
|
7683
|
+
"path": "tests/e2e/inline-banner-settings.spec.ts"
|
|
7684
|
+
}
|
|
7685
|
+
],
|
|
7686
|
+
"styling": {
|
|
7687
|
+
"rationale": "The component owns only the compact settings informational row recipe; its card owns the surrounding surface and layout.",
|
|
7688
|
+
"protected": [
|
|
7689
|
+
{
|
|
7690
|
+
"properties": [
|
|
7691
|
+
"border-bottom",
|
|
7692
|
+
"color",
|
|
7693
|
+
"padding"
|
|
7694
|
+
],
|
|
7695
|
+
"reason": "The component owns the readable informational row treatment and keeps its spacing consistent across settings cards.",
|
|
7696
|
+
"props": []
|
|
7697
|
+
}
|
|
7698
|
+
],
|
|
7699
|
+
"customProperties": []
|
|
7700
|
+
}
|
|
7701
|
+
},
|
|
7702
|
+
"api": {
|
|
7703
|
+
"props": {
|
|
7704
|
+
"description": {
|
|
7705
|
+
"type": "string",
|
|
7706
|
+
"required": true
|
|
7707
|
+
}
|
|
7708
|
+
},
|
|
7709
|
+
"events": [],
|
|
7710
|
+
"slots": []
|
|
7711
|
+
},
|
|
7712
|
+
"exports": {
|
|
7713
|
+
"customElement": "ds-inline-banner-settings",
|
|
7714
|
+
"react": "DsInlineBannerSettings",
|
|
7715
|
+
"vue": "DsInlineBannerSettings",
|
|
7716
|
+
"angular": "DsInlineBannerSettings"
|
|
7717
|
+
},
|
|
7718
|
+
"dependencies": [
|
|
7719
|
+
"@ds-mo/ui",
|
|
7720
|
+
"@ds-mo/tokens"
|
|
7721
|
+
],
|
|
7722
|
+
"componentDependencies": [
|
|
7723
|
+
"text"
|
|
7724
|
+
]
|
|
7725
|
+
},
|
|
7463
7726
|
{
|
|
7464
7727
|
"id": "component:ds-input",
|
|
7465
7728
|
"tag": "ds-input",
|
|
@@ -9367,8 +9630,8 @@
|
|
|
9367
9630
|
"Surface styling does not add semantics; failed delivery belongs in Message metadata below the unchanged bubble rather than in an error bubble treatment."
|
|
9368
9631
|
],
|
|
9369
9632
|
"states": [
|
|
9370
|
-
"The user variant represents user-sent copy in agent and person-to-person channels and uses
|
|
9371
|
-
"The received variant represents ordinary incoming person-to-person copy.",
|
|
9633
|
+
"The user variant represents user-sent copy in agent and person-to-person channels, uses primary foreground, and uses the Chrome primary background so body-medium copy meets contrast on that surface.",
|
|
9634
|
+
"The received variant represents ordinary incoming person-to-person copy, uses secondary foreground, and uses the Chrome secondary background.",
|
|
9372
9635
|
"Typing and rich agent output are not MessageBubble variants."
|
|
9373
9636
|
],
|
|
9374
9637
|
"responsiveBehavior": [
|
|
@@ -9462,10 +9725,10 @@
|
|
|
9462
9725
|
"states": [
|
|
9463
9726
|
"The owner controls draft value and transport state; the composer emits intent without performing transport.",
|
|
9464
9727
|
"Error status never clears or disables the draft; the application supplies recovery actions through error-actions and owns retry semantics. The negative support surface appears above and attached to the composer box, within the component's measured ownership.",
|
|
9465
|
-
"Use the tools slot for leading actions such as add and the actions slot for trailing actions such as dictation; the built-in submit or stop action remains last with an 8px gap from the preceding action.
|
|
9466
|
-
"The composer surface uses the
|
|
9728
|
+
"Use the tools slot for leading actions such as add and the actions slot for trailing actions such as dictation; the built-in submit or stop action remains last with an 8px gap from the preceding action. The built-in and application-provided composer buttons use the standard rounded control treatment, and the application supplies tooltips for slotted icon actions.",
|
|
9729
|
+
"The composer surface uses the 4px --dimension-radius-050 token.",
|
|
9467
9730
|
"Mouse or keyboard focus on the textarea gives the complete composer surface the same bold-brand inset stroke width and color as an active Input; the native textarea never draws a separate outline.",
|
|
9468
|
-
"The empty or otherwise inactive submit action is a disabled bordered ButtonUnfilled. Ready submit actions use submitIntent, while the streaming stop action remains a bold-brand ButtonFilled.",
|
|
9731
|
+
"The empty or otherwise inactive submit action is a disabled bordered, rounded ButtonUnfilled. Ready submit actions use submitIntent and the rounded control treatment, while the streaming stop action remains a rounded bold-brand ButtonFilled.",
|
|
9469
9732
|
"The attached error unit keeps a real boundary in forced colors and lets message text and application-owned recovery actions wrap at narrow widths."
|
|
9470
9733
|
],
|
|
9471
9734
|
"responsiveBehavior": [
|
|
@@ -11757,12 +12020,12 @@
|
|
|
11757
12020
|
"tag": "ds-radio",
|
|
11758
12021
|
"name": "radio",
|
|
11759
12022
|
"title": "Radio",
|
|
11760
|
-
"summary": "Form-associated one-of-many radio selection set with vertical or horizontal layout,
|
|
12023
|
+
"summary": "Form-associated one-of-many radio selection set with an optional visible group label, vertical or horizontal layout, per-option descriptions, four densities, per-option inactive state, and roving keyboard focus.",
|
|
11761
12024
|
"intentStatus": "complete",
|
|
11762
12025
|
"intent": {
|
|
11763
12026
|
"audience": "general",
|
|
11764
12027
|
"status": "stable",
|
|
11765
|
-
"summary": "Form-associated one-of-many radio selection set with vertical or horizontal layout,
|
|
12028
|
+
"summary": "Form-associated one-of-many radio selection set with an optional visible group label, vertical or horizontal layout, per-option descriptions, four densities, per-option inactive state, and roving keyboard focus.",
|
|
11766
12029
|
"useWhen": [
|
|
11767
12030
|
"A user must select exactly one visible option from a small set.",
|
|
11768
12031
|
"All available choices should remain visible for comparison.",
|
|
@@ -11795,7 +12058,9 @@
|
|
|
11795
12058
|
"component:ds-text"
|
|
11796
12059
|
],
|
|
11797
12060
|
"accessibility": [
|
|
11798
|
-
"The host exposes radiogroup semantics and requires an accessible group name from aria-label or aria-labelledby.",
|
|
12061
|
+
"The host exposes radiogroup semantics and requires an accessible group name from the visible label, aria-label, or aria-labelledby.",
|
|
12062
|
+
"When groupLabel is provided, Radio renders it above the options and uses the same text as the radiogroup's accessible name.",
|
|
12063
|
+
"Inside ds-setting-row-radio the visible form groupLabel is omitted on first paint; the row heading is the accessible name via aria-labelledby. Independent multi-select settings use ds-setting-row-checkbox with ds-checkbox-group instead.",
|
|
11799
12064
|
"Each visible option exposes radio semantics, its checked state, its label text, optional supporting description, and any inactive state.",
|
|
11800
12065
|
"Arrow keys move and select through active options; Home and End select the first and last active options; Space and Enter select the focused option.",
|
|
11801
12066
|
"Roving tabindex keeps one active option in the tab order, preferring the selected option; setFocus uses that same public focus target."
|
|
@@ -11805,7 +12070,10 @@
|
|
|
11805
12070
|
"Selected circles remove the border, use a brand fill, and draw a centered on-bold foreground dot sized 10px at lg, 8px at md, 6px at sm, and 4px at xs.",
|
|
11806
12071
|
"Sizes are lg with a 20px circle in a 24px placement, md with a 16px circle in a 20px placement, sm with a 12px circle in a 16px placement, and xs with an 8px circle in a 12px placement.",
|
|
11807
12072
|
"The initial value is restored by native form reset; the selected value submits under name and a required set is invalid until one active option is selected.",
|
|
11808
|
-
"Description-rich options grow beyond the fixed density height while retaining its minimum target size and primitive-owned selection anatomy."
|
|
12073
|
+
"Description-rich options grow beyond the fixed density height while retaining its minimum target size and primitive-owned selection anatomy.",
|
|
12074
|
+
"A visible group label uses the same density height and horizontal text origin as a menu section heading above the option list without adding a second interaction target. Copy uses text-body-small emphasis.",
|
|
12075
|
+
"Vertical form options use a 4px gap; a medium single-line option and its group label each use the shared 32px control height.",
|
|
12076
|
+
"Form and settings usage omits a row hover or pressed wash by default; set hasInteractionFill only when each radio option is presented as a choice-list row."
|
|
11809
12077
|
],
|
|
11810
12078
|
"responsiveBehavior": [
|
|
11811
12079
|
"Choose size from the density of the containing form or settings row.",
|
|
@@ -11864,7 +12132,8 @@
|
|
|
11864
12132
|
],
|
|
11865
12133
|
"reason": "The component owns its surface and interaction treatment; use its semantic presentation props or compose an application-owned surrounding surface.",
|
|
11866
12134
|
"props": [
|
|
11867
|
-
"size"
|
|
12135
|
+
"size",
|
|
12136
|
+
"hasInteractionFill"
|
|
11868
12137
|
]
|
|
11869
12138
|
}
|
|
11870
12139
|
],
|
|
@@ -11893,6 +12162,14 @@
|
|
|
11893
12162
|
"type": "string | undefined",
|
|
11894
12163
|
"required": false
|
|
11895
12164
|
},
|
|
12165
|
+
"groupLabel": {
|
|
12166
|
+
"type": "string",
|
|
12167
|
+
"required": false
|
|
12168
|
+
},
|
|
12169
|
+
"hasInteractionFill": {
|
|
12170
|
+
"type": "boolean",
|
|
12171
|
+
"required": false
|
|
12172
|
+
},
|
|
11896
12173
|
"isInactive": {
|
|
11897
12174
|
"type": "boolean",
|
|
11898
12175
|
"required": false
|
|
@@ -11988,7 +12265,8 @@
|
|
|
11988
12265
|
"Label the group with Field or an accessible name. Descriptions name each option separately."
|
|
11989
12266
|
],
|
|
11990
12267
|
"states": [
|
|
11991
|
-
"Selection is shown by the radio indicator while the tile keeps its neutral border. Error retains the negative border, and keyboard focus keeps the focus-token outline. Inactive options cannot be selected.",
|
|
12268
|
+
"Selection is shown by the 16px radio indicator centered in a 20px placement box while the tile keeps its neutral border. The placement box and copy have a 12px gap inside the tile's 16px padding, and the tile uses the 2px compact radius. Error retains the negative border, and keyboard focus keeps the focus-token outline. Inactive options cannot be selected.",
|
|
12269
|
+
"Options with descriptions use primary body-medium emphasis for the title and secondary body-medium supporting text with a 4px gap. Text-only options use secondary body-medium text without emphasis.",
|
|
11992
12270
|
"The component owns form values, required validation, reset, and disabled-fieldset behavior."
|
|
11993
12271
|
],
|
|
11994
12272
|
"responsiveBehavior": [
|
|
@@ -12756,10 +13034,201 @@
|
|
|
12756
13034
|
]
|
|
12757
13035
|
},
|
|
12758
13036
|
{
|
|
12759
|
-
"id": "component:ds-setting-row",
|
|
12760
|
-
"tag": "ds-setting-row",
|
|
12761
|
-
"name": "setting-row",
|
|
12762
|
-
"title": "
|
|
13037
|
+
"id": "component:ds-setting-row-checkbox",
|
|
13038
|
+
"tag": "ds-setting-row-checkbox",
|
|
13039
|
+
"name": "setting-row-checkbox",
|
|
13040
|
+
"title": "SettingRowCheckbox",
|
|
13041
|
+
"summary": "Padded settings-row composition for an editable Checkbox group and its non-interactive saved-value readout.",
|
|
13042
|
+
"intentStatus": "complete",
|
|
13043
|
+
"intent": {
|
|
13044
|
+
"audience": "general",
|
|
13045
|
+
"status": "experimental",
|
|
13046
|
+
"summary": "Padded settings-row composition for an editable Checkbox group and its non-interactive saved-value readout.",
|
|
13047
|
+
"useWhen": [
|
|
13048
|
+
"A settings card needs an independent multi-select Checkbox group as one padded row item.",
|
|
13049
|
+
"The same settings card needs to display the saved selected values without interactive checkbox controls in view mode."
|
|
13050
|
+
],
|
|
13051
|
+
"avoidWhen": [
|
|
13052
|
+
"The Checkbox group is not part of a settings-row surface; compose ds-checkbox-group directly.",
|
|
13053
|
+
"Exactly one option may be selected; use component:ds-setting-row-radio.",
|
|
13054
|
+
"The setting is a single immediate on/off choice; use component:ds-setting-row-toggle."
|
|
13055
|
+
],
|
|
13056
|
+
"commonlyComposedWith": [
|
|
13057
|
+
"component:ds-card-setting",
|
|
13058
|
+
"component:ds-checkbox-group",
|
|
13059
|
+
"component:ds-checkbox"
|
|
13060
|
+
],
|
|
13061
|
+
"accessibility": [
|
|
13062
|
+
"Pass the settings heading as the row label. Do not pass CheckboxGroup's form label; the row owns the visible heading and points the slotted group at it with aria-labelledby.",
|
|
13063
|
+
"Keep each Checkbox's label, checked state, name, value, and dsChange owned by the application. Leave the Checkbox group slotted in view and edit; the row hides it in view.",
|
|
13064
|
+
"Do not add a second interaction layer to the row; each Checkbox owns its own focus and activation while settings usage keeps hasInteractionFill false.",
|
|
13065
|
+
"View presentation exposes readable label, saved selected-value copy, and optional supporting copy without checkbox semantics, checkbox controls, or a focus target."
|
|
13066
|
+
],
|
|
13067
|
+
"states": [
|
|
13068
|
+
"The row is a neutral padded composition; selected, focus, mixed, and inactive states belong to the slotted Checkboxes without a choice-list hover or pressed wash.",
|
|
13069
|
+
"The owning application handles dsChange on each Checkbox and supplies valueLabel by joining the currently selected option labels.",
|
|
13070
|
+
"Heading, saved-value choice, and slotted Checkbox group stay mounted. presentation reflects on the host so view/edit is CSS visibility only; do not swap Host children or ngIf the group.",
|
|
13071
|
+
"View presentation hides the slotted Checkbox group with ::slotted host CSS and shows the saved selected values plus optional consequence copy. Omit description on the row and on each Checkbox when there is no supporting copy; view then shows only the selected-value labels. The group stays in the tree."
|
|
13072
|
+
],
|
|
13073
|
+
"responsiveBehavior": [
|
|
13074
|
+
"The row never exceeds its parent width; the slotted Checkbox group keeps option copy in the flexible column and wraps descriptions when needed."
|
|
13075
|
+
],
|
|
13076
|
+
"references": [
|
|
13077
|
+
{
|
|
13078
|
+
"label": "Settings mock",
|
|
13079
|
+
"path": "src/wc/components/SettingRowCheckbox/SettingRowCheckbox.stories.ts"
|
|
13080
|
+
}
|
|
13081
|
+
],
|
|
13082
|
+
"styling": {
|
|
13083
|
+
"rationale": "The row uses the shared settings-row inline inset so view and edit copy share the same 16px origin, and zeros host padding-block because the heading, choice, and checkbox options already own vertical spacing. The heading is row-owned CSS, not CheckboxGroup's form label or control section-heading recipe. Checkbox owns option geometry.",
|
|
13084
|
+
"protected": [
|
|
13085
|
+
{
|
|
13086
|
+
"properties": [
|
|
13087
|
+
"padding"
|
|
13088
|
+
],
|
|
13089
|
+
"reason": "Keep space-200 inline inset in view and edit, with no extra host padding-block.",
|
|
13090
|
+
"props": []
|
|
13091
|
+
}
|
|
13092
|
+
],
|
|
13093
|
+
"customProperties": []
|
|
13094
|
+
}
|
|
13095
|
+
},
|
|
13096
|
+
"api": {
|
|
13097
|
+
"props": {
|
|
13098
|
+
"description": {
|
|
13099
|
+
"type": "string",
|
|
13100
|
+
"required": false
|
|
13101
|
+
},
|
|
13102
|
+
"label": {
|
|
13103
|
+
"type": "string",
|
|
13104
|
+
"required": false
|
|
13105
|
+
},
|
|
13106
|
+
"presentation": {
|
|
13107
|
+
"type": "SettingRowCheckboxPresentation",
|
|
13108
|
+
"required": false
|
|
13109
|
+
},
|
|
13110
|
+
"valueLabel": {
|
|
13111
|
+
"type": "string",
|
|
13112
|
+
"required": false
|
|
13113
|
+
}
|
|
13114
|
+
},
|
|
13115
|
+
"events": [],
|
|
13116
|
+
"slots": []
|
|
13117
|
+
},
|
|
13118
|
+
"exports": {
|
|
13119
|
+
"customElement": "ds-setting-row-checkbox",
|
|
13120
|
+
"react": "DsSettingRowCheckbox",
|
|
13121
|
+
"vue": "DsSettingRowCheckbox",
|
|
13122
|
+
"angular": "DsSettingRowCheckbox"
|
|
13123
|
+
},
|
|
13124
|
+
"dependencies": [
|
|
13125
|
+
"@ds-mo/ui",
|
|
13126
|
+
"@ds-mo/tokens"
|
|
13127
|
+
],
|
|
13128
|
+
"componentDependencies": [
|
|
13129
|
+
"text"
|
|
13130
|
+
]
|
|
13131
|
+
},
|
|
13132
|
+
{
|
|
13133
|
+
"id": "component:ds-setting-row-radio",
|
|
13134
|
+
"tag": "ds-setting-row-radio",
|
|
13135
|
+
"name": "setting-row-radio",
|
|
13136
|
+
"title": "SettingRowRadio",
|
|
13137
|
+
"summary": "Padded settings-row composition for an editable Radio group and its non-interactive saved-value readout.",
|
|
13138
|
+
"intentStatus": "complete",
|
|
13139
|
+
"intent": {
|
|
13140
|
+
"audience": "general",
|
|
13141
|
+
"status": "experimental",
|
|
13142
|
+
"summary": "Padded settings-row composition for an editable Radio group and its non-interactive saved-value readout.",
|
|
13143
|
+
"useWhen": [
|
|
13144
|
+
"A settings card needs a mutually exclusive Radio group as one padded row item.",
|
|
13145
|
+
"The same settings card needs to display the saved option without an interactive control in view mode."
|
|
13146
|
+
],
|
|
13147
|
+
"avoidWhen": [
|
|
13148
|
+
"The Radio group is not part of a settings-row surface; compose ds-radio directly.",
|
|
13149
|
+
"The setting allows more than one option to be selected; use component:ds-setting-row-checkbox.",
|
|
13150
|
+
"The setting is a single immediate on/off choice; use component:ds-setting-row-toggle."
|
|
13151
|
+
],
|
|
13152
|
+
"commonlyComposedWith": [
|
|
13153
|
+
"component:ds-card-setting",
|
|
13154
|
+
"component:ds-radio"
|
|
13155
|
+
],
|
|
13156
|
+
"accessibility": [
|
|
13157
|
+
"Pass the settings heading as the row label. Do not pass Radio groupLabel; the row owns the visible heading and points the slotted radiogroup at it with aria-labelledby.",
|
|
13158
|
+
"Keep the Radio group's options, value, required state, and selection event owned by the application. Leave the Radio slotted in view and edit; the row hides it in view.",
|
|
13159
|
+
"Do not add a second interaction layer to the row; Radio owns option focus and keyboard selection while settings usage keeps hasInteractionFill false.",
|
|
13160
|
+
"View presentation exposes readable label, saved value, and optional supporting copy without radio semantics, a radio toggle, or a focus target."
|
|
13161
|
+
],
|
|
13162
|
+
"states": [
|
|
13163
|
+
"The row is a neutral padded composition; selected, focus, and inactive states belong to the slotted Radio without a choice-list hover or pressed wash.",
|
|
13164
|
+
"The owning application handles dsChange and updates the slotted Radio value.",
|
|
13165
|
+
"Heading, saved-value choice, and slotted Radio stay mounted. presentation reflects on the host so view/edit is CSS visibility only; do not swap Host children or ngIf the Radio.",
|
|
13166
|
+
"View presentation hides the slotted Radio with ::slotted host CSS and shows the saved option label plus optional consequence copy. The Radio stays in the tree."
|
|
13167
|
+
],
|
|
13168
|
+
"responsiveBehavior": [
|
|
13169
|
+
"The row never exceeds its parent width; the slotted Radio keeps its option copy in the flexible column and wraps descriptions when needed."
|
|
13170
|
+
],
|
|
13171
|
+
"references": [
|
|
13172
|
+
{
|
|
13173
|
+
"label": "Settings mock",
|
|
13174
|
+
"path": "src/wc/components/SettingRowRadio/SettingRowRadio.stories.ts"
|
|
13175
|
+
}
|
|
13176
|
+
],
|
|
13177
|
+
"styling": {
|
|
13178
|
+
"rationale": "The row uses the shared settings-row inline inset so view and edit copy share the same 16px origin, and zeros host padding-block because the heading, choice, and radio options already own vertical spacing. The heading is row-owned CSS, not Radio's form group-label or control section-heading recipe. Radio owns option geometry.",
|
|
13179
|
+
"protected": [
|
|
13180
|
+
{
|
|
13181
|
+
"properties": [
|
|
13182
|
+
"padding"
|
|
13183
|
+
],
|
|
13184
|
+
"reason": "Keep space-200 inline inset in view and edit, with no extra host padding-block.",
|
|
13185
|
+
"props": []
|
|
13186
|
+
}
|
|
13187
|
+
],
|
|
13188
|
+
"customProperties": []
|
|
13189
|
+
}
|
|
13190
|
+
},
|
|
13191
|
+
"api": {
|
|
13192
|
+
"props": {
|
|
13193
|
+
"description": {
|
|
13194
|
+
"type": "string",
|
|
13195
|
+
"required": false
|
|
13196
|
+
},
|
|
13197
|
+
"label": {
|
|
13198
|
+
"type": "string",
|
|
13199
|
+
"required": false
|
|
13200
|
+
},
|
|
13201
|
+
"presentation": {
|
|
13202
|
+
"type": "SettingRowRadioPresentation",
|
|
13203
|
+
"required": false
|
|
13204
|
+
},
|
|
13205
|
+
"valueLabel": {
|
|
13206
|
+
"type": "string",
|
|
13207
|
+
"required": false
|
|
13208
|
+
}
|
|
13209
|
+
},
|
|
13210
|
+
"events": [],
|
|
13211
|
+
"slots": []
|
|
13212
|
+
},
|
|
13213
|
+
"exports": {
|
|
13214
|
+
"customElement": "ds-setting-row-radio",
|
|
13215
|
+
"react": "DsSettingRowRadio",
|
|
13216
|
+
"vue": "DsSettingRowRadio",
|
|
13217
|
+
"angular": "DsSettingRowRadio"
|
|
13218
|
+
},
|
|
13219
|
+
"dependencies": [
|
|
13220
|
+
"@ds-mo/ui",
|
|
13221
|
+
"@ds-mo/tokens"
|
|
13222
|
+
],
|
|
13223
|
+
"componentDependencies": [
|
|
13224
|
+
"text"
|
|
13225
|
+
]
|
|
13226
|
+
},
|
|
13227
|
+
{
|
|
13228
|
+
"id": "component:ds-setting-row-toggle",
|
|
13229
|
+
"tag": "ds-setting-row-toggle",
|
|
13230
|
+
"name": "setting-row-toggle",
|
|
13231
|
+
"title": "SettingRowToggle",
|
|
12763
13232
|
"summary": "Two-column immediate binary setting with descriptive copy and an accessible switch.",
|
|
12764
13233
|
"intentStatus": "complete",
|
|
12765
13234
|
"intent": {
|
|
@@ -12784,7 +13253,9 @@
|
|
|
12784
13253
|
],
|
|
12785
13254
|
"states": [
|
|
12786
13255
|
"The application accepts or rejects change requests by updating the controlled checked value and owns persistence and errors.",
|
|
12787
|
-
"Name the enabled setting consistently; the label must not change when the switch is toggled."
|
|
13256
|
+
"Name the enabled setting consistently; the label must not change when the switch is toggled.",
|
|
13257
|
+
"Non-emphasis rows without supporting copy use ds-text color secondary (foreground-secondary) on the title. Non-emphasis rows with description keep a primary title.",
|
|
13258
|
+
"Supporting copy is text-body-small in every variant."
|
|
12788
13259
|
],
|
|
12789
13260
|
"responsiveBehavior": [
|
|
12790
13261
|
"The copy wraps while the switch keeps its natural size in the trailing column, including at narrow widths."
|
|
@@ -12792,18 +13263,18 @@
|
|
|
12792
13263
|
"references": [
|
|
12793
13264
|
{
|
|
12794
13265
|
"label": "Usage states",
|
|
12795
|
-
"path": "src/wc/components/
|
|
13266
|
+
"path": "src/wc/components/SettingRowToggle/SettingRowToggle.stories.ts"
|
|
12796
13267
|
}
|
|
12797
13268
|
],
|
|
12798
13269
|
"styling": {
|
|
12799
|
-
"rationale": "The row
|
|
13270
|
+
"rationale": "The row uses the shared settings-row inset; copy/control columns and the parent section surface stay component-owned.",
|
|
12800
13271
|
"protected": [
|
|
12801
13272
|
{
|
|
12802
13273
|
"properties": [
|
|
12803
13274
|
"padding",
|
|
12804
13275
|
"gap"
|
|
12805
13276
|
],
|
|
12806
|
-
"reason": "Preserve the shared settings-row
|
|
13277
|
+
"reason": "Preserve the shared settings-row inset (space-100 block, space-200 inline) and copy-to-control gap.",
|
|
12807
13278
|
"props": []
|
|
12808
13279
|
}
|
|
12809
13280
|
],
|
|
@@ -12827,6 +13298,10 @@
|
|
|
12827
13298
|
"label": {
|
|
12828
13299
|
"type": "string",
|
|
12829
13300
|
"required": true
|
|
13301
|
+
},
|
|
13302
|
+
"variant": {
|
|
13303
|
+
"type": "SettingRowToggleVariant",
|
|
13304
|
+
"required": false
|
|
12830
13305
|
}
|
|
12831
13306
|
},
|
|
12832
13307
|
"events": [
|
|
@@ -12838,10 +13313,10 @@
|
|
|
12838
13313
|
"slots": []
|
|
12839
13314
|
},
|
|
12840
13315
|
"exports": {
|
|
12841
|
-
"customElement": "ds-setting-row",
|
|
12842
|
-
"react": "
|
|
12843
|
-
"vue": "
|
|
12844
|
-
"angular": "
|
|
13316
|
+
"customElement": "ds-setting-row-toggle",
|
|
13317
|
+
"react": "DsSettingRowToggle",
|
|
13318
|
+
"vue": "DsSettingRowToggle",
|
|
13319
|
+
"angular": "DsSettingRowToggle"
|
|
12845
13320
|
},
|
|
12846
13321
|
"dependencies": [
|
|
12847
13322
|
"@ds-mo/ui",
|