@ds-mo/ui 15.1.1 → 15.3.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 +4 -4
- package/dist/agent.json +711 -48
- package/dist/angular/ds-card-setting.d.ts +1 -1
- package/dist/angular/ds-card-setting.js +3 -3
- package/dist/angular/ds-input-time.d.ts +1 -1
- package/dist/angular/ds-input-time.js +3 -3
- package/dist/angular/ds-input.d.ts +5 -1
- package/dist/angular/ds-input.js +10 -4
- package/dist/angular/ds-map-cluster-marker.d.ts +18 -0
- package/dist/angular/ds-map-cluster-marker.js +43 -0
- package/dist/angular/ds-map-entity-marker.d.ts +18 -0
- package/dist/angular/ds-map-entity-marker.js +43 -0
- package/dist/angular/ds-radio-tile.d.ts +15 -0
- package/dist/angular/ds-radio-tile.js +43 -0
- package/dist/angular/ds-setting-row.d.ts +18 -0
- package/dist/angular/ds-setting-row.js +42 -0
- package/dist/angular/ds-slider.d.ts +1 -1
- package/dist/angular/ds-slider.js +3 -3
- package/dist/angular/ds-textarea.d.ts +1 -1
- package/dist/angular/ds-textarea.js +3 -3
- package/dist/angular/ds-time-picker.d.ts +1 -1
- package/dist/angular/ds-time-picker.js +3 -3
- package/dist/angular/index.d.ts +1 -1
- package/dist/angular/index.js +4 -0
- package/dist/angular/number-value-accessor.d.ts +9 -0
- package/dist/angular/number-value-accessor.js +39 -0
- package/dist/angular/proxies.d.ts +4 -0
- package/dist/angular/proxies.js +4 -0
- package/dist/angular/radio-value-accessor.d.ts +1 -1
- package/dist/angular/radio-value-accessor.js +2 -2
- package/dist/angular/select-value-accessor.d.ts +1 -1
- package/dist/angular/select-value-accessor.js +2 -2
- package/dist/angular/text-value-accessor.d.ts +1 -1
- package/dist/angular/text-value-accessor.js +2 -2
- 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-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-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-chart.js +1 -1
- package/dist/components/ds-card-navigation.js +1 -1
- package/dist/components/ds-card-overview.js +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-chart-legend.js +1 -1
- package/dist/components/ds-chart.js +1 -1
- 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-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-customize.js.map +1 -1
- package/dist/components/ds-data-filter.js +1 -1
- package/dist/components/ds-data-filter.js.map +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-preferences.js.map +1 -1
- package/dist/components/ds-data-saved-views.js +1 -1
- package/dist/components/ds-data-saved-views.js.map +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-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-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.d.ts +11 -0
- package/dist/components/ds-map-cluster-marker.js +2 -0
- package/dist/components/ds-map-cluster-marker.js.map +1 -0
- package/dist/components/ds-map-entity-marker.d.ts +11 -0
- package/dist/components/ds-map-entity-marker.js +2 -0
- package/dist/components/ds-map-entity-marker.js.map +1 -0
- 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-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-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.d.ts +11 -0
- package/dist/components/ds-radio-tile.js +2 -0
- package/dist/components/ds-radio-tile.js.map +1 -0
- 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-select.js +1 -1
- package/dist/components/ds-setting-row.d.ts +11 -0
- package/dist/components/ds-setting-row.js +2 -0
- package/dist/components/ds-setting-row.js.map +1 -0
- package/dist/components/ds-shell-app.js +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.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-etifxiDc.js → p-3bsypMrY.js} +2 -2
- package/dist/components/{p-Bm7rqs3C.js → p-AM_ht6Im.js} +2 -2
- package/dist/components/{p-Bm7rqs3C.js.map → p-AM_ht6Im.js.map} +1 -1
- package/dist/components/{p-Bn8I7iw6.js → p-AmT4GlhM.js} +2 -2
- package/dist/components/{p-FIBCluwV.js → p-B-HOVYoH.js} +2 -2
- package/dist/components/{p-CmexIVnE.js → p-B7QEpaMe.js} +2 -2
- package/dist/components/{p-CUcUHwI3.js → p-B7bXN-vf.js} +2 -2
- package/dist/components/p-BHI4LcGK.js +2 -0
- package/dist/components/p-BHI4LcGK.js.map +1 -0
- package/dist/components/{p-BhJXmuRA.js → p-BSuMDPaV.js} +2 -2
- package/dist/components/{p-0FYD2bev.js → p-BU1B6NW8.js} +2 -2
- package/dist/components/{p-Do2FJd1y.js → p-BVwg5XVz.js} +2 -2
- package/dist/components/{p-CYzFfFcH.js → p-BXSHN1OK.js} +2 -2
- package/dist/components/{p-ljbw3UMZ.js → p-BYJtvRQm.js} +2 -2
- package/dist/components/{p-CzIpquvw.js → p-Bh1Fx0aW.js} +2 -2
- package/dist/components/{p-CiJ1WR11.js → p-Bm3KWMe4.js} +2 -2
- package/dist/components/{p-DVINzOoK.js → p-Bo7GxFBh.js} +2 -2
- package/dist/components/{p-8yBdCXCn.js → p-BsM37Prt.js} +2 -2
- package/dist/components/p-Bu4OmhKK.js +2 -0
- package/dist/components/{p-CdGXzRP8.js.map → p-Bu4OmhKK.js.map} +1 -1
- package/dist/components/{p-DpoTwJAR.js → p-BugKaVWc.js} +2 -2
- package/dist/components/p-C-c8SJ00.js +2 -0
- package/dist/components/p-C-c8SJ00.js.map +1 -0
- package/dist/components/{p-Bpd6YCo4.js → p-C3-dcROG.js} +2 -2
- package/dist/components/p-C4VeD49U.js +2 -0
- package/dist/components/{p-BKZdqJQB.js.map → p-C4VeD49U.js.map} +1 -1
- package/dist/components/{p-CNxvnQ6A.js → p-CCpJT31M.js} +2 -2
- package/dist/components/p-CCpJT31M.js.map +1 -0
- package/dist/components/{p-Dzndkdx5.js → p-CI7c9kp-.js} +2 -2
- package/dist/components/{p-CdgOLWX9.js → p-CJD0kLeV.js} +2 -2
- package/dist/components/{p-BeNa6tw5.js → p-C_gJD8l3.js} +2 -2
- package/dist/components/{p-DwbcNDJF.js → p-Cihjy4WY.js} +2 -2
- package/dist/components/{p-BgQMEHRa.js → p-Co5MiPNa.js} +2 -2
- package/dist/components/{p-CD4DZPy_.js → p-CrL9wxZg.js} +2 -2
- package/dist/components/{p-CGidq1iC.js → p-CuwopElg.js} +2 -2
- package/dist/components/p-CwUXroLs.js +2 -0
- package/dist/components/{p-etg-Uk1u.js.map → p-CwUXroLs.js.map} +1 -1
- package/dist/components/{p-Cqc2U1ZQ.js → p-CzQ_JF6A.js} +2 -2
- package/dist/components/{p-BciTtTwx.js → p-CztB8Pbq.js} +2 -2
- package/dist/components/{p-BciTtTwx.js.map → p-CztB8Pbq.js.map} +1 -1
- package/dist/components/{p-ZhP2tVmM.js → p-D0KD-Nr_.js} +2 -2
- package/dist/components/{p-DOAybCp0.js → p-DCLRAH5i.js} +2 -2
- package/dist/components/{p-Dn9QHL4O.js → p-DFkw6wrS.js} +2 -2
- package/dist/components/{p-D1vQGJzc.js → p-DHapI2sf.js} +2 -2
- package/dist/components/p-DQPzqcYR.js +2 -0
- package/dist/components/p-DQPzqcYR.js.map +1 -0
- package/dist/components/{p-DHICPS4n.js → p-DWmYCOKz.js} +2 -2
- package/dist/components/p-DX2RyZba.js +2 -0
- package/dist/components/{p-C-3YqeTb.js.map → p-DX2RyZba.js.map} +1 -1
- package/dist/components/{p-vfCu7XSc.js → p-DZ58Sg5a.js} +2 -2
- package/dist/components/{p-D0y7Sja6.js → p-Dcn1eDVt.js} +2 -2
- package/dist/components/{p-E5W27Fu_.js → p-DcrdyDRw.js} +2 -2
- package/dist/components/p-DhKvqh5G.js +2 -0
- package/dist/components/p-DhKvqh5G.js.map +1 -0
- package/dist/components/p-Fkkd3gMB.js +2 -0
- package/dist/components/{p-DEW7r0U9.js.map → p-Fkkd3gMB.js.map} +1 -1
- package/dist/components/{p-xdmJCPCg.js → p-Gb-vTuXr.js} +2 -2
- package/dist/components/p-TVkFIMXz.js +2 -0
- package/dist/components/p-TVkFIMXz.js.map +1 -0
- package/dist/components/p-cuZva5tl.js +2 -0
- package/dist/components/{p-Dw9sE6Iw.js.map → p-cuZva5tl.js.map} +1 -1
- package/dist/components/p-fYZK3zqM.js +2 -0
- package/dist/components/{p-C6xVxqOn.js.map → p-fYZK3zqM.js.map} +1 -1
- package/dist/components/{p-CiH4GG6r.js → p-iGNHXFZA.js} +2 -2
- package/dist/components/{p-5URekSny.js → p-lADW-TI8.js} +2 -2
- package/dist/components/{p-D922f6Tb.js → p-p_MwknM3.js} +2 -2
- package/dist/components/{p-Dfs98tpL.js → p-tJaC01aE.js} +2 -2
- package/dist/components/{p-B_jdoM7e.js → p-z8L-YMi3.js} +2 -2
- package/dist/docs/components.json +1909 -44
- package/dist/framework/angular.d.ts +1 -0
- package/dist/framework/angular.js +1 -0
- package/dist/lint/index.js +1 -1
- package/dist/mcp-data/registry/agent-activity.json +2 -2
- package/dist/mcp-data/registry/agent-questionnaire.json +2 -2
- package/dist/mcp-data/registry/agent-response.json +2 -2
- package/dist/mcp-data/registry/agent-source-list.json +2 -2
- package/dist/mcp-data/registry/agent-tool-call.json +2 -2
- package/dist/mcp-data/registry/attachment-list.json +2 -2
- package/dist/mcp-data/registry/avatar.json +2 -2
- package/dist/mcp-data/registry/badge.json +2 -2
- package/dist/mcp-data/registry/banner.json +2 -2
- package/dist/mcp-data/registry/bar-action.json +2 -2
- package/dist/mcp-data/registry/bar-nav.json +2 -2
- package/dist/mcp-data/registry/bar-page-title.json +2 -2
- package/dist/mcp-data/registry/bar-title.json +4 -4
- package/dist/mcp-data/registry/bar-workflow.json +2 -2
- package/dist/mcp-data/registry/breadcrumb.json +2 -2
- package/dist/mcp-data/registry/button-filled.json +2 -2
- package/dist/mcp-data/registry/button-inverted.json +2 -2
- package/dist/mcp-data/registry/button-unfilled.json +2 -2
- package/dist/mcp-data/registry/calendar.json +2 -2
- package/dist/mcp-data/registry/card-action-center.json +2 -2
- package/dist/mcp-data/registry/card-chart.json +2 -2
- package/dist/mcp-data/registry/card-navigation.json +2 -2
- package/dist/mcp-data/registry/card-overview.json +2 -2
- package/dist/mcp-data/registry/card-setting.json +36 -15
- package/dist/mcp-data/registry/card-settings-scope.json +2 -2
- package/dist/mcp-data/registry/chart-legend.json +2 -2
- package/dist/mcp-data/registry/chart.json +2 -2
- package/dist/mcp-data/registry/checkbox.json +2 -2
- package/dist/mcp-data/registry/chip.json +2 -2
- package/dist/mcp-data/registry/code-block.json +2 -2
- package/dist/mcp-data/registry/conversation-list-item.json +2 -2
- package/dist/mcp-data/registry/conversation-list-section.json +2 -2
- package/dist/mcp-data/registry/conversation-list.json +2 -2
- package/dist/mcp-data/registry/data-customize.json +3 -3
- package/dist/mcp-data/registry/data-filter.json +2 -2
- package/dist/mcp-data/registry/data-group.json +2 -2
- package/dist/mcp-data/registry/data-preferences.json +2 -2
- package/dist/mcp-data/registry/data-saved-views.json +2 -2
- package/dist/mcp-data/registry/data-search.json +2 -2
- package/dist/mcp-data/registry/data-sort.json +2 -2
- package/dist/mcp-data/registry/data-toolbar.json +2 -2
- package/dist/mcp-data/registry/divider.json +2 -2
- package/dist/mcp-data/registry/empty-state.json +27 -14
- package/dist/mcp-data/registry/field.json +6 -5
- package/dist/mcp-data/registry/filter-menu.json +2 -2
- package/dist/mcp-data/registry/icon.json +2 -2
- package/dist/mcp-data/registry/input-date.json +2 -2
- package/dist/mcp-data/registry/input-time.json +26 -7
- package/dist/mcp-data/registry/input.json +265 -15
- package/dist/mcp-data/registry/loader.json +2 -2
- package/dist/mcp-data/registry/map-cluster-marker.json +263 -0
- package/dist/mcp-data/registry/map-entity-marker.json +321 -0
- package/dist/mcp-data/registry/markdown.json +2 -2
- package/dist/mcp-data/registry/menu.json +2 -2
- package/dist/mcp-data/registry/message-actions.json +2 -2
- package/dist/mcp-data/registry/message-bubble.json +2 -2
- package/dist/mcp-data/registry/message-composer.json +2 -2
- package/dist/mcp-data/registry/message-scroller.json +2 -2
- package/dist/mcp-data/registry/message.json +2 -2
- package/dist/mcp-data/registry/mobile-bar-nav.json +2 -2
- package/dist/mcp-data/registry/mobile-header.json +2 -2
- package/dist/mcp-data/registry/mobile-section-switcher.json +2 -2
- package/dist/mcp-data/registry/mobile-sheet-nav.json +2 -2
- package/dist/mcp-data/registry/modal.json +2 -2
- package/dist/mcp-data/registry/pagination.json +2 -2
- package/dist/mcp-data/registry/panel-nav.json +2 -2
- package/dist/mcp-data/registry/panel-sub-nav.json +2 -2
- package/dist/mcp-data/registry/panel-tool-header.json +2 -2
- package/dist/mcp-data/registry/panel-tool-search.json +2 -2
- package/dist/mcp-data/registry/panel-tools.json +2 -2
- package/dist/mcp-data/registry/paper-texture.json +2 -2
- package/dist/mcp-data/registry/radio-tile.json +398 -0
- package/dist/mcp-data/registry/radio.json +2 -2
- package/dist/mcp-data/registry/registry.json +724 -49
- package/dist/mcp-data/registry/score.json +2 -2
- package/dist/mcp-data/registry/scroll-overlay.json +2 -2
- package/dist/mcp-data/registry/select.json +2 -2
- package/dist/mcp-data/registry/setting-row.json +213 -0
- package/dist/mcp-data/registry/shell-app.json +3 -3
- package/dist/mcp-data/registry/shell-page.json +5 -5
- package/dist/mcp-data/registry/shell-tools.json +2 -2
- package/dist/mcp-data/registry/skeleton.json +2 -2
- package/dist/mcp-data/registry/slider.json +32 -12
- package/dist/mcp-data/registry/swatch-picker.json +2 -2
- package/dist/mcp-data/registry/switch.json +2 -2
- package/dist/mcp-data/registry/tab-group.json +2 -2
- package/dist/mcp-data/registry/table.json +5 -5
- package/dist/mcp-data/registry/tag.json +2 -2
- package/dist/mcp-data/registry/text.json +2 -2
- package/dist/mcp-data/registry/textarea.json +72 -5
- package/dist/mcp-data/registry/time-picker.json +28 -9
- package/dist/mcp-data/registry/toast.json +2 -2
- package/dist/mcp-data/registry/tooltip-chart.json +2 -2
- package/dist/mcp-data/registry/tooltip.json +2 -2
- package/dist/mcp-data/registry/typing-indicator.json +2 -2
- package/dist/react/components.d.ts +4 -0
- package/dist/react/components.js +4 -0
- package/dist/react/ds-input.d.ts +2 -0
- package/dist/react/ds-input.js +2 -0
- package/dist/react/ds-map-cluster-marker.d.ts +12 -0
- package/dist/react/ds-map-cluster-marker.js +12 -0
- package/dist/react/ds-map-entity-marker.d.ts +12 -0
- package/dist/react/ds-map-entity-marker.js +12 -0
- package/dist/react/ds-radio-tile.d.ts +12 -0
- package/dist/react/ds-radio-tile.js +12 -0
- package/dist/react/ds-setting-row.d.ts +12 -0
- package/dist/react/ds-setting-row.js +12 -0
- package/dist/types/components/CardSetting/CardSetting.d.ts +5 -3
- package/dist/types/components/CardSetting/index.d.ts +1 -1
- package/dist/types/components/EmptyState/EmptyState.d.ts +3 -0
- package/dist/types/components/Field/Field.d.ts +4 -0
- package/dist/types/components/Input/Input.d.ts +50 -1
- package/dist/types/components/InputTime/InputTime.d.ts +3 -0
- package/dist/types/components/MapClusterMarker/MapClusterMarker.d.ts +19 -0
- package/dist/types/components/MapEntityMarker/MapEntityMarker.d.ts +26 -0
- package/dist/types/components/RadioTile/RadioTile.d.ts +40 -0
- package/dist/types/components/RadioTile/index.d.ts +2 -0
- package/dist/types/components/SettingRow/SettingRow.d.ts +18 -0
- package/dist/types/components/Slider/Slider.d.ts +8 -1
- package/dist/types/components/Slider/index.d.ts +1 -1
- package/dist/types/components/Textarea/Textarea.d.ts +12 -0
- package/dist/types/components/TimePicker/TimePicker.d.ts +4 -0
- package/dist/types/components.d.ts +627 -11
- package/dist/types/utils/text-constraints.d.ts +20 -0
- package/dist/vue/components.d.ts +4 -0
- package/dist/vue/components.js +4 -0
- package/dist/vue/ds-card-setting.js +1 -0
- package/dist/vue/ds-input-time.js +1 -0
- package/dist/vue/ds-input.js +17 -0
- package/dist/vue/ds-map-cluster-marker.d.ts +3 -0
- package/dist/vue/ds-map-cluster-marker.js +14 -0
- package/dist/vue/ds-map-entity-marker.d.ts +3 -0
- package/dist/vue/ds-map-entity-marker.js +17 -0
- package/dist/vue/ds-radio-tile.d.ts +3 -0
- package/dist/vue/ds-radio-tile.js +24 -0
- package/dist/vue/ds-setting-row.d.ts +3 -0
- package/dist/vue/ds-setting-row.js +14 -0
- package/dist/vue/ds-slider.d.ts +1 -1
- package/dist/vue/ds-slider.js +2 -1
- package/dist/vue/ds-textarea.js +4 -0
- package/dist/vue/ds-time-picker.js +1 -0
- package/package.json +5 -5
- package/dist/components/p-0qY_HDId.js +0 -2
- package/dist/components/p-0qY_HDId.js.map +0 -1
- package/dist/components/p-BKZdqJQB.js +0 -2
- package/dist/components/p-C-3YqeTb.js +0 -2
- package/dist/components/p-C6xVxqOn.js +0 -2
- package/dist/components/p-CNxvnQ6A.js.map +0 -1
- package/dist/components/p-CdGXzRP8.js +0 -2
- package/dist/components/p-DEW7r0U9.js +0 -2
- package/dist/components/p-DVOjjuXc.js +0 -2
- package/dist/components/p-DVOjjuXc.js.map +0 -1
- package/dist/components/p-Di5FH7eh.js +0 -2
- package/dist/components/p-Di5FH7eh.js.map +0 -1
- package/dist/components/p-Dw9sE6Iw.js +0 -2
- package/dist/components/p-etg-Uk1u.js +0 -2
- package/dist/components/p-xtGGIZmU.js +0 -2
- package/dist/components/p-xtGGIZmU.js.map +0 -1
- /package/dist/components/{p-etifxiDc.js.map → p-3bsypMrY.js.map} +0 -0
- /package/dist/components/{p-Bn8I7iw6.js.map → p-AmT4GlhM.js.map} +0 -0
- /package/dist/components/{p-FIBCluwV.js.map → p-B-HOVYoH.js.map} +0 -0
- /package/dist/components/{p-CmexIVnE.js.map → p-B7QEpaMe.js.map} +0 -0
- /package/dist/components/{p-CUcUHwI3.js.map → p-B7bXN-vf.js.map} +0 -0
- /package/dist/components/{p-BhJXmuRA.js.map → p-BSuMDPaV.js.map} +0 -0
- /package/dist/components/{p-0FYD2bev.js.map → p-BU1B6NW8.js.map} +0 -0
- /package/dist/components/{p-Do2FJd1y.js.map → p-BVwg5XVz.js.map} +0 -0
- /package/dist/components/{p-CYzFfFcH.js.map → p-BXSHN1OK.js.map} +0 -0
- /package/dist/components/{p-ljbw3UMZ.js.map → p-BYJtvRQm.js.map} +0 -0
- /package/dist/components/{p-CzIpquvw.js.map → p-Bh1Fx0aW.js.map} +0 -0
- /package/dist/components/{p-CiJ1WR11.js.map → p-Bm3KWMe4.js.map} +0 -0
- /package/dist/components/{p-DVINzOoK.js.map → p-Bo7GxFBh.js.map} +0 -0
- /package/dist/components/{p-8yBdCXCn.js.map → p-BsM37Prt.js.map} +0 -0
- /package/dist/components/{p-DpoTwJAR.js.map → p-BugKaVWc.js.map} +0 -0
- /package/dist/components/{p-Bpd6YCo4.js.map → p-C3-dcROG.js.map} +0 -0
- /package/dist/components/{p-Dzndkdx5.js.map → p-CI7c9kp-.js.map} +0 -0
- /package/dist/components/{p-CdgOLWX9.js.map → p-CJD0kLeV.js.map} +0 -0
- /package/dist/components/{p-BeNa6tw5.js.map → p-C_gJD8l3.js.map} +0 -0
- /package/dist/components/{p-DwbcNDJF.js.map → p-Cihjy4WY.js.map} +0 -0
- /package/dist/components/{p-BgQMEHRa.js.map → p-Co5MiPNa.js.map} +0 -0
- /package/dist/components/{p-CD4DZPy_.js.map → p-CrL9wxZg.js.map} +0 -0
- /package/dist/components/{p-CGidq1iC.js.map → p-CuwopElg.js.map} +0 -0
- /package/dist/components/{p-Cqc2U1ZQ.js.map → p-CzQ_JF6A.js.map} +0 -0
- /package/dist/components/{p-ZhP2tVmM.js.map → p-D0KD-Nr_.js.map} +0 -0
- /package/dist/components/{p-DOAybCp0.js.map → p-DCLRAH5i.js.map} +0 -0
- /package/dist/components/{p-Dn9QHL4O.js.map → p-DFkw6wrS.js.map} +0 -0
- /package/dist/components/{p-D1vQGJzc.js.map → p-DHapI2sf.js.map} +0 -0
- /package/dist/components/{p-DHICPS4n.js.map → p-DWmYCOKz.js.map} +0 -0
- /package/dist/components/{p-vfCu7XSc.js.map → p-DZ58Sg5a.js.map} +0 -0
- /package/dist/components/{p-D0y7Sja6.js.map → p-Dcn1eDVt.js.map} +0 -0
- /package/dist/components/{p-E5W27Fu_.js.map → p-DcrdyDRw.js.map} +0 -0
- /package/dist/components/{p-xdmJCPCg.js.map → p-Gb-vTuXr.js.map} +0 -0
- /package/dist/components/{p-CiH4GG6r.js.map → p-iGNHXFZA.js.map} +0 -0
- /package/dist/components/{p-5URekSny.js.map → p-lADW-TI8.js.map} +0 -0
- /package/dist/components/{p-D922f6Tb.js.map → p-p_MwknM3.js.map} +0 -0
- /package/dist/components/{p-Dfs98tpL.js.map → p-tJaC01aE.js.map} +0 -0
- /package/dist/components/{p-B_jdoM7e.js.map → p-z8L-YMi3.js.map} +0 -0
|
@@ -285,8 +285,8 @@
|
|
|
285
285
|
},
|
|
286
286
|
"peerDependencies": {
|
|
287
287
|
"required": [
|
|
288
|
-
"@ds-mo/tokens ^6.5.
|
|
289
|
-
"@ds-mo/icons ^8.1.
|
|
288
|
+
"@ds-mo/tokens ^6.5.2",
|
|
289
|
+
"@ds-mo/icons ^8.1.1"
|
|
290
290
|
],
|
|
291
291
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
292
292
|
}
|
|
@@ -212,8 +212,8 @@
|
|
|
212
212
|
},
|
|
213
213
|
"peerDependencies": {
|
|
214
214
|
"required": [
|
|
215
|
-
"@ds-mo/tokens ^6.5.
|
|
216
|
-
"@ds-mo/icons ^8.1.
|
|
215
|
+
"@ds-mo/tokens ^6.5.2",
|
|
216
|
+
"@ds-mo/icons ^8.1.1"
|
|
217
217
|
],
|
|
218
218
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
219
219
|
}
|
|
@@ -259,8 +259,8 @@
|
|
|
259
259
|
},
|
|
260
260
|
"peerDependencies": {
|
|
261
261
|
"required": [
|
|
262
|
-
"@ds-mo/tokens ^6.5.
|
|
263
|
-
"@ds-mo/icons ^8.1.
|
|
262
|
+
"@ds-mo/tokens ^6.5.2",
|
|
263
|
+
"@ds-mo/icons ^8.1.1"
|
|
264
264
|
],
|
|
265
265
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
266
266
|
}
|
|
@@ -429,8 +429,8 @@
|
|
|
429
429
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: currentArea.",
|
|
430
430
|
"peerDependencies": {
|
|
431
431
|
"required": [
|
|
432
|
-
"@ds-mo/tokens ^6.5.
|
|
433
|
-
"@ds-mo/icons ^8.1.
|
|
432
|
+
"@ds-mo/tokens ^6.5.2",
|
|
433
|
+
"@ds-mo/icons ^8.1.1"
|
|
434
434
|
],
|
|
435
435
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
436
436
|
}
|
|
@@ -368,8 +368,8 @@
|
|
|
368
368
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: sections, subsections.",
|
|
369
369
|
"peerDependencies": {
|
|
370
370
|
"required": [
|
|
371
|
-
"@ds-mo/tokens ^6.5.
|
|
372
|
-
"@ds-mo/icons ^8.1.
|
|
371
|
+
"@ds-mo/tokens ^6.5.2",
|
|
372
|
+
"@ds-mo/icons ^8.1.1"
|
|
373
373
|
],
|
|
374
374
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
375
375
|
}
|
|
@@ -228,8 +228,8 @@
|
|
|
228
228
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: sections.",
|
|
229
229
|
"peerDependencies": {
|
|
230
230
|
"required": [
|
|
231
|
-
"@ds-mo/tokens ^6.5.
|
|
232
|
-
"@ds-mo/icons ^8.1.
|
|
231
|
+
"@ds-mo/tokens ^6.5.2",
|
|
232
|
+
"@ds-mo/icons ^8.1.1"
|
|
233
233
|
],
|
|
234
234
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
235
235
|
}
|
|
@@ -390,8 +390,8 @@
|
|
|
390
390
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: dashboardGroups, settingsGroups.",
|
|
391
391
|
"peerDependencies": {
|
|
392
392
|
"required": [
|
|
393
|
-
"@ds-mo/tokens ^6.5.
|
|
394
|
-
"@ds-mo/icons ^8.1.
|
|
393
|
+
"@ds-mo/tokens ^6.5.2",
|
|
394
|
+
"@ds-mo/icons ^8.1.1"
|
|
395
395
|
],
|
|
396
396
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
397
397
|
}
|
|
@@ -298,8 +298,8 @@
|
|
|
298
298
|
},
|
|
299
299
|
"peerDependencies": {
|
|
300
300
|
"required": [
|
|
301
|
-
"@ds-mo/tokens ^6.5.
|
|
302
|
-
"@ds-mo/icons ^8.1.
|
|
301
|
+
"@ds-mo/tokens ^6.5.2",
|
|
302
|
+
"@ds-mo/icons ^8.1.1"
|
|
303
303
|
],
|
|
304
304
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
305
305
|
}
|
|
@@ -410,8 +410,8 @@
|
|
|
410
410
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: pageSizeOptions.",
|
|
411
411
|
"peerDependencies": {
|
|
412
412
|
"required": [
|
|
413
|
-
"@ds-mo/tokens ^6.5.
|
|
414
|
-
"@ds-mo/icons ^8.1.
|
|
413
|
+
"@ds-mo/tokens ^6.5.2",
|
|
414
|
+
"@ds-mo/icons ^8.1.1"
|
|
415
415
|
],
|
|
416
416
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
417
417
|
}
|
|
@@ -711,8 +711,8 @@
|
|
|
711
711
|
},
|
|
712
712
|
"peerDependencies": {
|
|
713
713
|
"required": [
|
|
714
|
-
"@ds-mo/tokens ^6.5.
|
|
715
|
-
"@ds-mo/icons ^8.1.
|
|
714
|
+
"@ds-mo/tokens ^6.5.2",
|
|
715
|
+
"@ds-mo/icons ^8.1.1"
|
|
716
716
|
],
|
|
717
717
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
718
718
|
}
|
|
@@ -245,8 +245,8 @@
|
|
|
245
245
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: items.",
|
|
246
246
|
"peerDependencies": {
|
|
247
247
|
"required": [
|
|
248
|
-
"@ds-mo/tokens ^6.5.
|
|
249
|
-
"@ds-mo/icons ^8.1.
|
|
248
|
+
"@ds-mo/tokens ^6.5.2",
|
|
249
|
+
"@ds-mo/icons ^8.1.1"
|
|
250
250
|
],
|
|
251
251
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
252
252
|
}
|
|
@@ -361,8 +361,8 @@
|
|
|
361
361
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: actions.",
|
|
362
362
|
"peerDependencies": {
|
|
363
363
|
"required": [
|
|
364
|
-
"@ds-mo/tokens ^6.5.
|
|
365
|
-
"@ds-mo/icons ^8.1.
|
|
364
|
+
"@ds-mo/tokens ^6.5.2",
|
|
365
|
+
"@ds-mo/icons ^8.1.1"
|
|
366
366
|
],
|
|
367
367
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
368
368
|
}
|
|
@@ -403,8 +403,8 @@
|
|
|
403
403
|
},
|
|
404
404
|
"peerDependencies": {
|
|
405
405
|
"required": [
|
|
406
|
-
"@ds-mo/tokens ^6.5.
|
|
407
|
-
"@ds-mo/icons ^8.1.
|
|
406
|
+
"@ds-mo/tokens ^6.5.2",
|
|
407
|
+
"@ds-mo/icons ^8.1.1"
|
|
408
408
|
],
|
|
409
409
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
410
410
|
}
|
|
@@ -518,8 +518,8 @@
|
|
|
518
518
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: accessories, headers, items.",
|
|
519
519
|
"peerDependencies": {
|
|
520
520
|
"required": [
|
|
521
|
-
"@ds-mo/tokens ^6.5.
|
|
522
|
-
"@ds-mo/icons ^8.1.
|
|
521
|
+
"@ds-mo/tokens ^6.5.2",
|
|
522
|
+
"@ds-mo/icons ^8.1.1"
|
|
523
523
|
],
|
|
524
524
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
525
525
|
}
|
|
@@ -119,8 +119,8 @@
|
|
|
119
119
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: config.",
|
|
120
120
|
"peerDependencies": {
|
|
121
121
|
"required": [
|
|
122
|
-
"@ds-mo/tokens ^6.5.
|
|
123
|
-
"@ds-mo/icons ^8.1.
|
|
122
|
+
"@ds-mo/tokens ^6.5.2",
|
|
123
|
+
"@ds-mo/icons ^8.1.1"
|
|
124
124
|
],
|
|
125
125
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
126
126
|
}
|
|
@@ -0,0 +1,398 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
+
"name": "radio-tile",
|
|
4
|
+
"title": "RadioTile",
|
|
5
|
+
"description": "A form-associated group of fully clickable radio tiles with labels and optional descriptions.",
|
|
6
|
+
"type": "registry:ui",
|
|
7
|
+
"meta": {
|
|
8
|
+
"library": "@ds-mo/ui",
|
|
9
|
+
"distribution": "npm",
|
|
10
|
+
"storybook": "https://zainadeel.github.io/compomo/?path=/story/radio-tile",
|
|
11
|
+
"source": "src/wc/components/RadioTile/RadioTile.tsx",
|
|
12
|
+
"intentStatus": "complete",
|
|
13
|
+
"intent": {
|
|
14
|
+
"audience": "general",
|
|
15
|
+
"status": "experimental",
|
|
16
|
+
"summary": "A form-associated group of fully clickable radio tiles with labels and optional descriptions.",
|
|
17
|
+
"useWhen": [
|
|
18
|
+
"A small set of mutually exclusive choices benefits from descriptive cards and large click targets."
|
|
19
|
+
],
|
|
20
|
+
"avoidWhen": [
|
|
21
|
+
"The choices are brief and compact; use Radio.",
|
|
22
|
+
"More than one value may be chosen."
|
|
23
|
+
],
|
|
24
|
+
"alternatives": [
|
|
25
|
+
{
|
|
26
|
+
"when": "A user may select zero or multiple independent choices.",
|
|
27
|
+
"component": "component:ds-checkbox",
|
|
28
|
+
"reason": "Checkbox communicates independent selection rather than one-of-many choice."
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"when": "A binary setting applies immediately.",
|
|
32
|
+
"component": "component:ds-switch",
|
|
33
|
+
"reason": "Switch communicates an immediately applied on/off setting."
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"when": "The option list is long or the available space is constrained.",
|
|
37
|
+
"component": "component:ds-select",
|
|
38
|
+
"reason": "Select keeps a larger one-of-many choice set compact."
|
|
39
|
+
}
|
|
40
|
+
],
|
|
41
|
+
"commonlyComposedWith": [
|
|
42
|
+
"component:ds-field",
|
|
43
|
+
"component:ds-text"
|
|
44
|
+
],
|
|
45
|
+
"accessibility": [
|
|
46
|
+
"Native radio inputs own keyboard selection, focus, and checked semantics; the complete tile activates its input.",
|
|
47
|
+
"Label the group with Field or an accessible name. Descriptions name each option separately."
|
|
48
|
+
],
|
|
49
|
+
"states": [
|
|
50
|
+
"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.",
|
|
51
|
+
"The component owns form values, required validation, reset, and disabled-fieldset behavior."
|
|
52
|
+
],
|
|
53
|
+
"responsiveBehavior": [
|
|
54
|
+
"Horizontal tiles wrap to available space; use a vertical group when descriptions need more room."
|
|
55
|
+
],
|
|
56
|
+
"frameworkCaveats": {
|
|
57
|
+
"angular": [
|
|
58
|
+
"Use the generated radio value accessor with the standalone adapter."
|
|
59
|
+
],
|
|
60
|
+
"vue": [
|
|
61
|
+
"Bind value with v-model."
|
|
62
|
+
]
|
|
63
|
+
},
|
|
64
|
+
"references": [
|
|
65
|
+
{
|
|
66
|
+
"label": "Storybook review",
|
|
67
|
+
"path": "src/wc/components/RadioTile/RadioTile.stories.ts"
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"styling": {
|
|
71
|
+
"rationale": "Tile anatomy and radio treatment belong to the component; the owner controls group width.",
|
|
72
|
+
"protected": [
|
|
73
|
+
{
|
|
74
|
+
"properties": [
|
|
75
|
+
"padding",
|
|
76
|
+
"gap",
|
|
77
|
+
"border-radius",
|
|
78
|
+
"background",
|
|
79
|
+
"border",
|
|
80
|
+
"box-shadow",
|
|
81
|
+
"color"
|
|
82
|
+
],
|
|
83
|
+
"reason": "Use the supported group direction and state instead of replacing tile internals.",
|
|
84
|
+
"props": [
|
|
85
|
+
"direction"
|
|
86
|
+
]
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
"customProperties": []
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"api": {
|
|
93
|
+
"props": {
|
|
94
|
+
"ariaDescribedby": {
|
|
95
|
+
"type": "string | undefined",
|
|
96
|
+
"resolvedType": "string | undefined",
|
|
97
|
+
"attribute": "aria-describedby",
|
|
98
|
+
"required": false,
|
|
99
|
+
"mutable": false
|
|
100
|
+
},
|
|
101
|
+
"ariaLabel": {
|
|
102
|
+
"type": "string | null",
|
|
103
|
+
"resolvedType": "null | string",
|
|
104
|
+
"attribute": "aria-label",
|
|
105
|
+
"default": "null",
|
|
106
|
+
"required": false,
|
|
107
|
+
"mutable": false
|
|
108
|
+
},
|
|
109
|
+
"ariaLabelledby": {
|
|
110
|
+
"type": "string | undefined",
|
|
111
|
+
"resolvedType": "string | undefined",
|
|
112
|
+
"attribute": "aria-labelledby",
|
|
113
|
+
"required": false,
|
|
114
|
+
"mutable": false
|
|
115
|
+
},
|
|
116
|
+
"direction": {
|
|
117
|
+
"type": "'horizontal' | 'vertical'",
|
|
118
|
+
"resolvedType": "\"horizontal\" | \"vertical\"",
|
|
119
|
+
"attribute": "direction",
|
|
120
|
+
"default": "'vertical'",
|
|
121
|
+
"required": false,
|
|
122
|
+
"mutable": false
|
|
123
|
+
},
|
|
124
|
+
"disabled": {
|
|
125
|
+
"type": "boolean",
|
|
126
|
+
"resolvedType": "boolean",
|
|
127
|
+
"attribute": "disabled",
|
|
128
|
+
"default": "false",
|
|
129
|
+
"required": false,
|
|
130
|
+
"mutable": false
|
|
131
|
+
},
|
|
132
|
+
"error": {
|
|
133
|
+
"type": "boolean",
|
|
134
|
+
"resolvedType": "boolean",
|
|
135
|
+
"attribute": "error",
|
|
136
|
+
"default": "false",
|
|
137
|
+
"required": false,
|
|
138
|
+
"mutable": false
|
|
139
|
+
},
|
|
140
|
+
"form": {
|
|
141
|
+
"type": "string | undefined",
|
|
142
|
+
"resolvedType": "string | undefined",
|
|
143
|
+
"attribute": "form",
|
|
144
|
+
"required": false,
|
|
145
|
+
"mutable": false
|
|
146
|
+
},
|
|
147
|
+
"inputId": {
|
|
148
|
+
"type": "string | undefined",
|
|
149
|
+
"resolvedType": "string | undefined",
|
|
150
|
+
"attribute": "input-id",
|
|
151
|
+
"required": false,
|
|
152
|
+
"mutable": false
|
|
153
|
+
},
|
|
154
|
+
"isInactive": {
|
|
155
|
+
"type": "boolean",
|
|
156
|
+
"resolvedType": "boolean",
|
|
157
|
+
"attribute": "is-inactive",
|
|
158
|
+
"default": "false",
|
|
159
|
+
"required": false,
|
|
160
|
+
"mutable": false
|
|
161
|
+
},
|
|
162
|
+
"name": {
|
|
163
|
+
"type": "string | undefined",
|
|
164
|
+
"resolvedType": "string | undefined",
|
|
165
|
+
"attribute": "name",
|
|
166
|
+
"required": false,
|
|
167
|
+
"mutable": false
|
|
168
|
+
},
|
|
169
|
+
"options": {
|
|
170
|
+
"type": "RadioTileOption[]",
|
|
171
|
+
"resolvedType": "RadioTileOption[]",
|
|
172
|
+
"default": "[]",
|
|
173
|
+
"required": false,
|
|
174
|
+
"mutable": false,
|
|
175
|
+
"description": "One-of-many choices displayed as fully clickable tiles."
|
|
176
|
+
},
|
|
177
|
+
"required": {
|
|
178
|
+
"type": "boolean",
|
|
179
|
+
"resolvedType": "boolean",
|
|
180
|
+
"attribute": "required",
|
|
181
|
+
"default": "false",
|
|
182
|
+
"required": false,
|
|
183
|
+
"mutable": false
|
|
184
|
+
},
|
|
185
|
+
"requiredMessage": {
|
|
186
|
+
"type": "string",
|
|
187
|
+
"resolvedType": "string",
|
|
188
|
+
"attribute": "required-message",
|
|
189
|
+
"default": "'This field is required.'",
|
|
190
|
+
"required": false,
|
|
191
|
+
"mutable": false
|
|
192
|
+
},
|
|
193
|
+
"value": {
|
|
194
|
+
"type": "string",
|
|
195
|
+
"resolvedType": "string",
|
|
196
|
+
"attribute": "value",
|
|
197
|
+
"default": "''",
|
|
198
|
+
"required": false,
|
|
199
|
+
"mutable": true
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
"events": [
|
|
203
|
+
{
|
|
204
|
+
"name": "dsChange",
|
|
205
|
+
"detail": "string",
|
|
206
|
+
"bubbles": true,
|
|
207
|
+
"cancelable": true,
|
|
208
|
+
"composed": true
|
|
209
|
+
}
|
|
210
|
+
],
|
|
211
|
+
"methods": [
|
|
212
|
+
{
|
|
213
|
+
"name": "setFocus",
|
|
214
|
+
"signature": "setFocus() => Promise<void>"
|
|
215
|
+
}
|
|
216
|
+
],
|
|
217
|
+
"slots": []
|
|
218
|
+
},
|
|
219
|
+
"props": {
|
|
220
|
+
"ariaDescribedby": {
|
|
221
|
+
"type": "string | undefined",
|
|
222
|
+
"resolvedType": "string | undefined",
|
|
223
|
+
"attribute": "aria-describedby",
|
|
224
|
+
"required": false,
|
|
225
|
+
"mutable": false
|
|
226
|
+
},
|
|
227
|
+
"ariaLabel": {
|
|
228
|
+
"type": "string | null",
|
|
229
|
+
"resolvedType": "null | string",
|
|
230
|
+
"attribute": "aria-label",
|
|
231
|
+
"default": "null",
|
|
232
|
+
"required": false,
|
|
233
|
+
"mutable": false
|
|
234
|
+
},
|
|
235
|
+
"ariaLabelledby": {
|
|
236
|
+
"type": "string | undefined",
|
|
237
|
+
"resolvedType": "string | undefined",
|
|
238
|
+
"attribute": "aria-labelledby",
|
|
239
|
+
"required": false,
|
|
240
|
+
"mutable": false
|
|
241
|
+
},
|
|
242
|
+
"direction": {
|
|
243
|
+
"type": "'horizontal' | 'vertical'",
|
|
244
|
+
"resolvedType": "\"horizontal\" | \"vertical\"",
|
|
245
|
+
"attribute": "direction",
|
|
246
|
+
"default": "'vertical'",
|
|
247
|
+
"required": false,
|
|
248
|
+
"mutable": false
|
|
249
|
+
},
|
|
250
|
+
"disabled": {
|
|
251
|
+
"type": "boolean",
|
|
252
|
+
"resolvedType": "boolean",
|
|
253
|
+
"attribute": "disabled",
|
|
254
|
+
"default": "false",
|
|
255
|
+
"required": false,
|
|
256
|
+
"mutable": false
|
|
257
|
+
},
|
|
258
|
+
"error": {
|
|
259
|
+
"type": "boolean",
|
|
260
|
+
"resolvedType": "boolean",
|
|
261
|
+
"attribute": "error",
|
|
262
|
+
"default": "false",
|
|
263
|
+
"required": false,
|
|
264
|
+
"mutable": false
|
|
265
|
+
},
|
|
266
|
+
"form": {
|
|
267
|
+
"type": "string | undefined",
|
|
268
|
+
"resolvedType": "string | undefined",
|
|
269
|
+
"attribute": "form",
|
|
270
|
+
"required": false,
|
|
271
|
+
"mutable": false
|
|
272
|
+
},
|
|
273
|
+
"inputId": {
|
|
274
|
+
"type": "string | undefined",
|
|
275
|
+
"resolvedType": "string | undefined",
|
|
276
|
+
"attribute": "input-id",
|
|
277
|
+
"required": false,
|
|
278
|
+
"mutable": false
|
|
279
|
+
},
|
|
280
|
+
"isInactive": {
|
|
281
|
+
"type": "boolean",
|
|
282
|
+
"resolvedType": "boolean",
|
|
283
|
+
"attribute": "is-inactive",
|
|
284
|
+
"default": "false",
|
|
285
|
+
"required": false,
|
|
286
|
+
"mutable": false
|
|
287
|
+
},
|
|
288
|
+
"name": {
|
|
289
|
+
"type": "string | undefined",
|
|
290
|
+
"resolvedType": "string | undefined",
|
|
291
|
+
"attribute": "name",
|
|
292
|
+
"required": false,
|
|
293
|
+
"mutable": false
|
|
294
|
+
},
|
|
295
|
+
"options": {
|
|
296
|
+
"type": "RadioTileOption[]",
|
|
297
|
+
"resolvedType": "RadioTileOption[]",
|
|
298
|
+
"default": "[]",
|
|
299
|
+
"required": false,
|
|
300
|
+
"mutable": false,
|
|
301
|
+
"description": "One-of-many choices displayed as fully clickable tiles."
|
|
302
|
+
},
|
|
303
|
+
"required": {
|
|
304
|
+
"type": "boolean",
|
|
305
|
+
"resolvedType": "boolean",
|
|
306
|
+
"attribute": "required",
|
|
307
|
+
"default": "false",
|
|
308
|
+
"required": false,
|
|
309
|
+
"mutable": false
|
|
310
|
+
},
|
|
311
|
+
"requiredMessage": {
|
|
312
|
+
"type": "string",
|
|
313
|
+
"resolvedType": "string",
|
|
314
|
+
"attribute": "required-message",
|
|
315
|
+
"default": "'This field is required.'",
|
|
316
|
+
"required": false,
|
|
317
|
+
"mutable": false
|
|
318
|
+
},
|
|
319
|
+
"value": {
|
|
320
|
+
"type": "string",
|
|
321
|
+
"resolvedType": "string",
|
|
322
|
+
"attribute": "value",
|
|
323
|
+
"default": "''",
|
|
324
|
+
"required": false,
|
|
325
|
+
"mutable": true
|
|
326
|
+
}
|
|
327
|
+
},
|
|
328
|
+
"events": [
|
|
329
|
+
{
|
|
330
|
+
"name": "dsChange",
|
|
331
|
+
"detail": "string",
|
|
332
|
+
"bubbles": true,
|
|
333
|
+
"cancelable": true,
|
|
334
|
+
"composed": true
|
|
335
|
+
}
|
|
336
|
+
],
|
|
337
|
+
"methods": [
|
|
338
|
+
{
|
|
339
|
+
"name": "setFocus",
|
|
340
|
+
"signature": "setFocus() => Promise<void>"
|
|
341
|
+
}
|
|
342
|
+
],
|
|
343
|
+
"slots": [],
|
|
344
|
+
"exports": {
|
|
345
|
+
"customElement": "ds-radio-tile",
|
|
346
|
+
"react": "DsRadioTile",
|
|
347
|
+
"vue": "DsRadioTile",
|
|
348
|
+
"angular": "DsRadioTile"
|
|
349
|
+
},
|
|
350
|
+
"consumption": {
|
|
351
|
+
"install": "npm install @ds-mo/ui @ds-mo/tokens @ds-mo/icons",
|
|
352
|
+
"cssSetup": "import '@ds-mo/tokens';\nimport '@ds-mo/tokens/reset';\nimport '@ds-mo/tokens/globals';",
|
|
353
|
+
"customElements": {
|
|
354
|
+
"import": "import '@ds-mo/ui/dist/components/ds-radio-tile.js';",
|
|
355
|
+
"example": "<ds-radio-tile></ds-radio-tile>"
|
|
356
|
+
},
|
|
357
|
+
"react": {
|
|
358
|
+
"import": "import { DsRadioTile } from '@ds-mo/ui/react';",
|
|
359
|
+
"example": "<DsRadioTile />"
|
|
360
|
+
},
|
|
361
|
+
"vue": {
|
|
362
|
+
"import": "import { DsRadioTile } from '@ds-mo/ui/vue';",
|
|
363
|
+
"example": "<DsRadioTile />"
|
|
364
|
+
},
|
|
365
|
+
"angular": {
|
|
366
|
+
"import": "import { DsRadioTile } from '@ds-mo/ui/angular/ds-radio-tile';",
|
|
367
|
+
"example": "<ds-radio-tile></ds-radio-tile>"
|
|
368
|
+
},
|
|
369
|
+
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: options.",
|
|
370
|
+
"peerDependencies": {
|
|
371
|
+
"required": [
|
|
372
|
+
"@ds-mo/tokens ^6.5.2",
|
|
373
|
+
"@ds-mo/icons ^8.1.1"
|
|
374
|
+
],
|
|
375
|
+
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
},
|
|
379
|
+
"dependencies": [
|
|
380
|
+
"@ds-mo/ui",
|
|
381
|
+
"@ds-mo/tokens"
|
|
382
|
+
],
|
|
383
|
+
"registryDependencies": [
|
|
384
|
+
"text"
|
|
385
|
+
],
|
|
386
|
+
"files": [
|
|
387
|
+
{
|
|
388
|
+
"path": "src/wc/components/RadioTile/RadioTile.css",
|
|
389
|
+
"content": "@import '../../utils/interaction-fill.css';\n@import '../../utils/control-inactive.css';\n@import '../../utils/forced-colors.css';\n:host {\n display: flex;\n flex-direction: column;\n gap: var(--dimension-space-100);\n}\n:host(.radio-tiles--horizontal) {\n flex-direction: row;\n flex-wrap: wrap;\n}\n:host(.radio-tiles--horizontal) .radio-tile {\n flex-basis: var(--dimension-menu-width-xs);\n}\n.radio-tile {\n display: flex;\n position: relative;\n align-items: flex-start;\n flex: 1;\n box-sizing: border-box;\n gap: var(--dimension-space-100);\n padding: var(--dimension-space-200);\n min-width: 0;\n border-radius: var(--dimension-radius-050);\n background: var(--color-background-primary);\n cursor: pointer;\n user-select: none;\n}\n.radio-tile__outline {\n position: absolute;\n inset: 0;\n border-radius: inherit;\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-012) var(--color-border-secondary);\n pointer-events: none;\n}\n:host([aria-invalid='true']) .radio-tile__outline {\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-025) var(--color-border-bold-negative);\n}\n.radio-tile__input {\n position: absolute;\n inset: 0;\n opacity: 0;\n width: 100%;\n height: 100%;\n margin: 0;\n cursor: inherit;\n z-index: 3;\n}\n.radio-tile__input:disabled {\n cursor: not-allowed;\n}\n.radio-tile__input:focus-visible + .radio-tile__outline {\n outline: var(--dimension-stroke-width-025) solid var(--color-interaction-focus);\n outline-offset: var(--dimension-space-025);\n}\n.radio-tile__indicator {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: none;\n box-sizing: border-box;\n width: var(--dimension-size-200);\n height: var(--dimension-size-200);\n margin-top: calc((var(--typography-lineheight-md) - var(--dimension-size-200)) / 2);\n border-radius: var(--dimension-radius-half);\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-015) var(--color-foreground-tertiary);\n}\n.radio-tile--selected .radio-tile__indicator {\n background: var(--color-background-bold-brand);\n box-shadow: none;\n}\n.radio-tile__indicator > span {\n width: var(--dimension-size-100);\n height: var(--dimension-size-100);\n border-radius: var(--dimension-radius-half);\n background: var(--color-foreground-on-bold-background-primary);\n}\n.radio-tile__copy {\n display: grid;\n gap: var(--dimension-space-050);\n min-width: 0;\n padding-inline: var(--dimension-space-025);\n}\n\n@media (forced-colors: active) {\n .radio-tile__outline,\n .radio-tile__indicator {\n border: var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);\n box-shadow: none;\n }\n .radio-tile--selected .radio-tile__indicator {\n background: var(--ds-forced-color-selected);\n }\n .radio-tile__indicator > span {\n background: var(--ds-forced-color-on-selected);\n }\n}\n",
|
|
390
|
+
"type": "registry:ui"
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"path": "src/wc/components/RadioTile/RadioTile.tsx",
|
|
394
|
+
"content": "import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n State,\n Watch,\n Method,\n h,\n Host,\n} from '@stencil/core';\nimport {\n DEFAULT_REQUIRED_MESSAGE,\n restoreStringFormState,\n setFormControlValue,\n setRequiredValidity,\n} from '../../utils';\n\nexport interface RadioTileOption {\n value: string;\n label: string;\n description?: string;\n isInactive?: boolean;\n}\nlet tileId = 0;\n\n@Component({ tag: 'ds-radio-tile', styleUrl: 'RadioTile.css', scoped: true, formAssociated: true })\nexport class RadioTile {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n /** One-of-many choices displayed as fully clickable tiles. */\n @Prop() options: RadioTileOption[] = [];\n @Prop({ mutable: true }) value: string = '';\n @Prop({ reflect: true }) name: string | undefined;\n @Prop({ reflect: true }) form: string | undefined;\n @Prop({ reflect: true }) disabled: boolean = false;\n @Prop() isInactive: boolean = false;\n @Prop({ reflect: true }) required: boolean = false;\n @Prop() requiredMessage: string = DEFAULT_REQUIRED_MESSAGE;\n @Prop() direction: 'horizontal' | 'vertical' = 'vertical';\n @Prop() inputId: string | undefined;\n @Prop() error: boolean = false;\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;\n @Prop({ attribute: 'aria-describedby' }) ariaDescribedby: string | undefined;\n @Event() dsChange!: EventEmitter<string>;\n @State() private formDisabled = false;\n private readonly generatedId = `ds-radio-tile-${++tileId}`;\n private initialValue = '';\n private get inactive() {\n return this.disabled || this.isInactive || this.formDisabled;\n }\n componentWillLoad() {\n this.initialValue = this.value;\n this.syncFormValue();\n }\n @Watch('value')\n @Watch('options')\n @Watch('disabled')\n @Watch('isInactive')\n @Watch('required')\n @Watch('requiredMessage')\n syncFormValue() {\n const selected = this.options.some(option => option.value === this.value && !option.isInactive);\n setFormControlValue(this.internals, selected ? this.value : '', { inactive: this.inactive });\n setRequiredValidity(\n this.internals,\n this.required && !this.inactive && !selected,\n this.requiredMessage\n );\n }\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n this.syncFormValue();\n }\n formResetCallback() {\n this.value = this.initialValue;\n }\n formStateRestoreCallback(state: string | File | FormData | null) {\n this.value = restoreStringFormState(state);\n }\n @Method()\n async setFocus() {\n (\n this.el.querySelector<HTMLInputElement>('input:checked:not(:disabled)') ??\n this.el.querySelector<HTMLInputElement>('input:not(:disabled)')\n )?.focus();\n }\n private select(value: string) {\n if (this.inactive || value === this.value) return;\n this.value = value;\n this.dsChange.emit(value);\n }\n render() {\n return (\n <Host\n role=\"radiogroup\"\n aria-label={this.ariaLabel}\n aria-labelledby={this.ariaLabelledby}\n aria-describedby={this.ariaDescribedby}\n aria-required={this.required ? 'true' : undefined}\n aria-invalid={this.error ? 'true' : undefined}\n class={{ 'radio-tiles': true, 'radio-tiles--horizontal': this.direction === 'horizontal' }}\n >\n {this.options.map((option, index) => {\n const selected = option.value === this.value;\n const inactive = this.inactive || Boolean(option.isInactive);\n return (\n <label\n class={{\n 'radio-tile': true,\n 'radio-tile--selected': selected,\n 'ds-interaction-fill': !inactive,\n 'ds-control-inactive': inactive,\n }}\n key={option.value}\n >\n <input\n type=\"radio\"\n class=\"radio-tile__input\"\n id={index === 0 ? this.inputId : undefined}\n name={this.generatedId}\n form=\"\"\n value={option.value}\n checked={selected}\n disabled={inactive}\n aria-labelledby={`${this.generatedId}-label-${index}`}\n aria-describedby={\n option.description ? `${this.generatedId}-description-${index}` : undefined\n }\n onChange={() => this.select(option.value)}\n />\n <span class=\"radio-tile__outline\" aria-hidden=\"true\" />\n <span class=\"radio-tile__indicator ds-interaction-fill__content\" aria-hidden=\"true\">\n {selected && <span />}\n </span>\n <span class=\"radio-tile__copy ds-interaction-fill__content\">\n <ds-text\n as=\"span\"\n variant=\"text-body-medium\"\n emphasis\n textId={`${this.generatedId}-label-${index}`}\n >\n {option.label}\n </ds-text>\n {option.description && (\n <ds-text\n as=\"span\"\n variant=\"text-body-medium\"\n color=\"secondary\"\n textId={`${this.generatedId}-description-${index}`}\n >\n {option.description}\n </ds-text>\n )}\n </span>\n </label>\n );\n })}\n </Host>\n );\n }\n}\n",
|
|
395
|
+
"type": "registry:ui"
|
|
396
|
+
}
|
|
397
|
+
]
|
|
398
|
+
}
|
|
@@ -400,8 +400,8 @@
|
|
|
400
400
|
"complexPropertyNote": "Assign these non-primitive values as JavaScript properties: options.",
|
|
401
401
|
"peerDependencies": {
|
|
402
402
|
"required": [
|
|
403
|
-
"@ds-mo/tokens ^6.5.
|
|
404
|
-
"@ds-mo/icons ^8.1.
|
|
403
|
+
"@ds-mo/tokens ^6.5.2",
|
|
404
|
+
"@ds-mo/icons ^8.1.1"
|
|
405
405
|
],
|
|
406
406
|
"frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
|
|
407
407
|
}
|