@ds-mo/ui 14.35.0 → 15.0.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 +5733 -4656
- package/dist/angular/ds-button-inverted.d.ts +17 -0
- package/dist/angular/ds-button-inverted.js +46 -0
- package/dist/angular/ds-calendar.d.ts +15 -0
- package/dist/angular/ds-calendar.js +43 -0
- package/dist/angular/ds-conversation-list.d.ts +1 -1
- package/dist/angular/ds-conversation-list.js +3 -4
- package/dist/angular/ds-data-customize.d.ts +18 -0
- package/dist/angular/ds-data-customize.js +46 -0
- package/dist/angular/ds-data-filter.d.ts +50 -0
- package/dist/angular/{ds-table-filter.js → ds-data-filter.js} +10 -10
- package/dist/angular/ds-data-group.d.ts +29 -0
- package/dist/angular/{ds-table-group.js → ds-data-group.js} +10 -10
- package/dist/angular/ds-data-preferences.d.ts +39 -0
- package/dist/angular/{ds-table-preferences.js → ds-data-preferences.js} +15 -15
- package/dist/angular/ds-data-saved-views.d.ts +49 -0
- package/dist/angular/{ds-table-saved-views.js → ds-data-saved-views.js} +10 -10
- package/dist/angular/ds-data-search.d.ts +20 -0
- package/dist/angular/{ds-table-search.js → ds-data-search.js} +12 -12
- package/dist/angular/ds-data-sort.d.ts +16 -0
- package/dist/angular/{ds-table-sort.js → ds-data-sort.js} +12 -12
- package/dist/angular/ds-data-toolbar.d.ts +12 -0
- package/dist/angular/{ds-table-toolbar.js → ds-data-toolbar.js} +10 -10
- package/dist/angular/ds-field.d.ts +1 -1
- package/dist/angular/ds-field.js +1 -1
- package/dist/angular/ds-input-date.d.ts +15 -0
- package/dist/angular/ds-input-date.js +43 -0
- package/dist/angular/ds-input-time.d.ts +15 -0
- package/dist/angular/ds-input-time.js +43 -0
- package/dist/angular/ds-input.d.ts +1 -1
- package/dist/angular/ds-input.js +3 -3
- package/dist/angular/ds-select.d.ts +1 -1
- package/dist/angular/ds-select.js +3 -3
- package/dist/angular/ds-table.d.ts +7 -7
- package/dist/angular/ds-table.js +6 -6
- package/dist/angular/ds-time-picker.d.ts +15 -0
- package/dist/angular/ds-time-picker.js +43 -0
- package/dist/angular/index.d.ts +1 -1
- package/dist/angular/index.js +13 -7
- package/dist/angular/proxies.d.ts +13 -7
- package/dist/angular/proxies.js +13 -7
- 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-avatar.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.d.ts +11 -0
- package/dist/components/ds-button-inverted.js +2 -0
- package/dist/components/ds-button-inverted.js.map +1 -0
- package/dist/components/ds-button-unfilled.js +1 -1
- package/dist/components/{ds-table-search.d.ts → ds-calendar.d.ts} +4 -4
- package/dist/components/ds-calendar.js +2 -0
- 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-navigation.js.map +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-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.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-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-conversation-list.js.map +1 -1
- package/dist/components/ds-data-customize.d.ts +11 -0
- package/dist/components/ds-data-customize.js +2 -0
- package/dist/components/ds-data-customize.js.map +1 -0
- package/dist/components/{ds-table-group.d.ts → ds-data-filter.d.ts} +4 -4
- package/dist/components/ds-data-filter.js +2 -0
- package/dist/components/ds-data-filter.js.map +1 -0
- package/dist/components/{ds-table-sort.d.ts → ds-data-group.d.ts} +4 -4
- package/dist/components/ds-data-group.js +2 -0
- package/dist/components/ds-data-group.js.map +1 -0
- package/dist/components/{ds-table-saved-views.d.ts → ds-data-preferences.d.ts} +4 -4
- package/dist/components/ds-data-preferences.js +2 -0
- package/dist/components/ds-data-preferences.js.map +1 -0
- package/dist/components/ds-data-saved-views.d.ts +11 -0
- package/dist/components/ds-data-saved-views.js +2 -0
- package/dist/components/ds-data-saved-views.js.map +1 -0
- package/dist/components/ds-data-search.d.ts +11 -0
- package/dist/components/ds-data-search.js +2 -0
- package/dist/components/ds-data-search.js.map +1 -0
- package/dist/components/ds-data-sort.d.ts +11 -0
- package/dist/components/ds-data-sort.js +2 -0
- package/dist/components/ds-data-sort.js.map +1 -0
- package/dist/components/{ds-table-filter.d.ts → ds-data-toolbar.d.ts} +4 -4
- package/dist/components/ds-data-toolbar.js +2 -0
- package/dist/components/ds-data-toolbar.js.map +1 -0
- 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-icon.js +1 -1
- package/dist/components/ds-input-date.d.ts +11 -0
- package/dist/components/ds-input-date.js +2 -0
- package/dist/components/ds-input-date.js.map +1 -0
- package/dist/components/ds-input-time.d.ts +11 -0
- package/dist/components/ds-input-time.js +2 -0
- package/dist/components/ds-input-time.js.map +1 -0
- package/dist/components/ds-input.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-tool-header.js +1 -1
- package/dist/components/ds-panel-tool-search.js +1 -1
- package/dist/components/ds-panel-tools.js +1 -1
- package/dist/components/ds-paper-texture.js +1 -1
- package/dist/components/ds-radio.js +1 -1
- package/dist/components/ds-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-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.d.ts +11 -0
- package/dist/components/ds-time-picker.js +2 -0
- package/dist/components/ds-time-picker.js.map +1 -0
- 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/index.d.ts +5 -5
- package/dist/components/p-0FYD2bev.js +2 -0
- package/dist/components/p-0FYD2bev.js.map +1 -0
- package/dist/components/p-0qY_HDId.js +2 -0
- package/dist/components/{p-D_u8WhlU.js.map → p-0qY_HDId.js.map} +1 -1
- package/dist/components/{p-BQsVI_vO.js → p-5URekSny.js} +2 -2
- package/dist/components/{p-eo_pmPqp.js → p-7V1AhetH.js} +2 -2
- package/dist/components/{p-yZRXPHDe.js → p-8yBdCXCn.js} +2 -2
- package/dist/components/p-BKZdqJQB.js +2 -0
- package/dist/components/p-BKZdqJQB.js.map +1 -0
- package/dist/components/p-BYrBU_U9.js +2 -0
- package/dist/components/p-BYrBU_U9.js.map +1 -0
- package/dist/components/{p-D44g2Kw1.js → p-BciTtTwx.js} +2 -2
- package/dist/components/p-BciTtTwx.js.map +1 -0
- package/dist/components/{p-CZOiTaNa.js → p-BeNa6tw5.js} +2 -2
- package/dist/components/{p-CZOiTaNa.js.map → p-BeNa6tw5.js.map} +1 -1
- package/dist/components/p-BgQMEHRa.js +2 -0
- package/dist/components/{p-CwqFJMvP.js.map → p-BgQMEHRa.js.map} +1 -1
- package/dist/components/{p-BQaO7cg_.js → p-BhJXmuRA.js} +2 -2
- package/dist/components/{p-n68x-ZKp.js → p-Bm7rqs3C.js} +2 -2
- package/dist/components/{p-DdspY23v.js → p-Bn8I7iw6.js} +2 -2
- package/dist/components/{p-BnWxbhFP.js → p-Bpd6YCo4.js} +2 -2
- package/dist/components/{p-B-9fdIWv.js → p-C-3YqeTb.js} +2 -2
- package/dist/components/{p-umAf0fBn.js → p-CD4DZPy_.js} +2 -2
- package/dist/components/p-CElUM-xU.js +2 -0
- package/dist/components/p-CElUM-xU.js.map +1 -0
- package/dist/components/{p-CuwopElg.js → p-CGidq1iC.js} +2 -2
- package/dist/components/p-CNxvnQ6A.js +2 -0
- package/dist/components/p-CNxvnQ6A.js.map +1 -0
- package/dist/components/{p-CI7VfYC3.js → p-CUcUHwI3.js} +2 -2
- package/dist/components/p-CYzFfFcH.js +2 -0
- package/dist/components/{p-BINSI_KF.js.map → p-CYzFfFcH.js.map} +1 -1
- package/dist/components/{p-Dhw_W8nk.js → p-Cc3ZUQlJ.js} +2 -2
- package/dist/components/p-Cc3ZUQlJ.js.map +1 -0
- package/dist/components/p-CdgOLWX9.js +2 -0
- package/dist/components/p-CdgOLWX9.js.map +1 -0
- package/dist/components/{p-BcdHgPi5.js → p-CeXf9-X3.js} +2 -2
- package/dist/components/{p-CSnsz3Eb.js → p-CiH4GG6r.js} +2 -2
- package/dist/components/{p-y06IxxoN.js → p-CiJ1WR11.js} +2 -2
- package/dist/components/p-CmexIVnE.js +2 -0
- package/dist/components/{p-N5SHSVo2.js.map → p-CmexIVnE.js.map} +1 -1
- package/dist/components/{p-BmFeeR4q.js → p-CqW2eyiF.js} +2 -2
- package/dist/components/{p-CzbsTZt7.js → p-Cxr0IQjC.js} +2 -2
- package/dist/components/{p-CqlBlv55.js → p-CzIpquvw.js} +2 -2
- package/dist/components/{p-DC69DgAR.js → p-D0y7Sja6.js} +2 -2
- package/dist/components/{p-Cwz9TPVS.js → p-D1vQGJzc.js} +2 -2
- package/dist/components/{p-Cwz9TPVS.js.map → p-D1vQGJzc.js.map} +1 -1
- package/dist/components/{p-C7CZ9pnP.js → p-D6Wl3dRO.js} +2 -2
- package/dist/components/{p-BPhbwXOv.js → p-D922f6Tb.js} +2 -2
- package/dist/components/{p-beRFLHbB.js → p-DHICPS4n.js} +2 -2
- package/dist/components/{p-omPm8_vx.js → p-DOAybCp0.js} +2 -2
- package/dist/components/{p-DEGNrPLe.js → p-DVINzOoK.js} +2 -2
- package/dist/components/{p-DEGNrPLe.js.map → p-DVINzOoK.js.map} +1 -1
- package/dist/components/p-DVOjjuXc.js +2 -0
- package/dist/components/p-DVOjjuXc.js.map +1 -0
- package/dist/components/p-Di5FH7eh.js +2 -0
- package/dist/components/p-Di5FH7eh.js.map +1 -0
- package/dist/components/p-DjkUFlDW.js +2 -0
- package/dist/components/p-DjkUFlDW.js.map +1 -0
- package/dist/components/{p-BnzsBNUY.js → p-Dn9QHL4O.js} +2 -2
- package/dist/components/{p-DGzn4k4h.js → p-Do2FJd1y.js} +2 -2
- package/dist/components/{p-DTDLlinw.js → p-DpoTwJAR.js} +2 -2
- package/dist/components/{p-Dk-8Ju0Q.js → p-Dpr2y6_S.js} +2 -2
- package/dist/components/{p-Dk-8Ju0Q.js.map → p-Dpr2y6_S.js.map} +1 -1
- package/dist/components/p-Dw9sE6Iw.js +2 -0
- package/dist/components/p-Dw9sE6Iw.js.map +1 -0
- package/dist/components/{p-CLGtPE0K.js → p-DwbcNDJF.js} +2 -2
- package/dist/components/p-Dzndkdx5.js +2 -0
- package/dist/components/{p-xHGqrz_p.js.map → p-Dzndkdx5.js.map} +1 -1
- package/dist/components/{p-C8ek-1SP.js → p-E5W27Fu_.js} +2 -2
- package/dist/components/{p-mpk_Mm8_.js → p-FIBCluwV.js} +2 -2
- package/dist/components/{p-DQQFN2sw.js → p-IEq_06J0.js} +2 -2
- package/dist/components/{p-DQQFN2sw.js.map → p-IEq_06J0.js.map} +1 -1
- package/dist/components/{p-CE540WZ7.js → p-MG4lcN0D.js} +2 -2
- package/dist/components/p-Nc76seSq.js +2 -0
- package/dist/components/p-Nc76seSq.js.map +1 -0
- package/dist/components/{p-DtLQIMsa.js → p-ZhP2tVmM.js} +2 -2
- package/dist/components/p-aD5cw_m2.js +2 -0
- package/dist/components/p-aD5cw_m2.js.map +1 -0
- package/dist/components/p-etifxiDc.js +2 -0
- package/dist/components/{p-beCz9OnD.js.map → p-etifxiDc.js.map} +1 -1
- package/dist/components/p-kDZ0sEII.js +2 -0
- package/dist/components/p-kDZ0sEII.js.map +1 -0
- package/dist/components/{p-BPlWEidl.js → p-ljbw3UMZ.js} +2 -2
- package/dist/components/{p-DZ58Sg5a.js → p-vfCu7XSc.js} +2 -2
- package/dist/components/p-vfCu7XSc.js.map +1 -0
- package/dist/components/{p-DFjIBS5B.js → p-xdmJCPCg.js} +2 -2
- package/dist/components/{p-CAxDdYjh.js → p-xtGGIZmU.js} +2 -2
- package/dist/docs/components.json +18102 -14568
- package/dist/lib/components/Icon/flag-icon-catalog.d.ts +2 -0
- package/dist/lib/components/Icon/icon-cache.d.ts +36 -4
- package/dist/lib/components/Icon/map-icon-catalog.d.ts +2 -0
- package/dist/lib/shell/index.js +2 -2
- package/dist/lib/shell/index.js.map +1 -1
- package/dist/lib/utils/button-render.d.ts +1 -1
- package/dist/lib/utils/clock-time.d.ts +22 -0
- package/dist/lib/utils/date-filter-value.d.ts +4 -0
- package/dist/lib/utils/index.d.ts +3 -1
- package/dist/lib/utils/index.js +201 -5
- package/dist/lib/utils/index.js.map +4 -4
- 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 +1 -1
- package/dist/mcp-data/registry/agent-source-list.json +1 -1
- package/dist/mcp-data/registry/agent-tool-call.json +2 -2
- 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 +1 -1
- package/dist/mcp-data/registry/bar-page-title.json +1 -1
- 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 +580 -0
- package/dist/mcp-data/registry/button-unfilled.json +1 -1
- package/dist/mcp-data/registry/calendar.json +273 -0
- 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 +5 -3
- package/dist/mcp-data/registry/card-overview.json +1 -1
- package/dist/mcp-data/registry/card-setting.json +1 -1
- 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.json +1 -1
- 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 +10 -32
- package/dist/mcp-data/registry/data-customize.json +374 -0
- package/dist/mcp-data/registry/{table-filter.json → data-filter.json} +33 -33
- package/dist/mcp-data/registry/data-group.json +358 -0
- package/dist/mcp-data/registry/data-preferences.json +566 -0
- package/dist/mcp-data/registry/data-saved-views.json +433 -0
- package/dist/mcp-data/registry/data-search.json +367 -0
- package/dist/mcp-data/registry/data-sort.json +254 -0
- package/dist/mcp-data/registry/data-toolbar.json +181 -0
- 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 +20 -15
- package/dist/mcp-data/registry/filter-menu.json +7 -11
- package/dist/mcp-data/registry/icon.json +13 -7
- package/dist/mcp-data/registry/input-date.json +516 -0
- package/dist/mcp-data/registry/input-time.json +535 -0
- package/dist/mcp-data/registry/input.json +57 -9
- package/dist/mcp-data/registry/loader.json +1 -1
- package/dist/mcp-data/registry/markdown.json +1 -1
- package/dist/mcp-data/registry/menu.json +3 -3
- package/dist/mcp-data/registry/message-actions.json +1 -1
- package/dist/mcp-data/registry/message-bubble.json +1 -1
- package/dist/mcp-data/registry/message-composer.json +2 -2
- package/dist/mcp-data/registry/message-scroller.json +1 -1
- package/dist/mcp-data/registry/message.json +1 -1
- package/dist/mcp-data/registry/mobile-bar-nav.json +2 -2
- 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 +2 -2
- 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 +1 -1
- package/dist/mcp-data/registry/panel-sub-nav.json +1 -1
- package/dist/mcp-data/registry/panel-tool-header.json +1 -1
- package/dist/mcp-data/registry/panel-tool-search.json +1 -1
- 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.json +1 -1
- package/dist/mcp-data/registry/registry.json +5911 -4816
- 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 +64 -8
- package/dist/mcp-data/registry/shell-app.json +1 -1
- 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 +1 -1
- package/dist/mcp-data/registry/tab-group.json +1 -1
- package/dist/mcp-data/registry/table.json +71 -71
- 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 +3 -3
- package/dist/mcp-data/registry/time-picker.json +259 -0
- 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 +13 -7
- package/dist/react/components.js +13 -7
- package/dist/react/ds-button-inverted.d.ts +13 -0
- package/dist/react/ds-button-inverted.js +15 -0
- package/dist/react/ds-calendar.d.ts +12 -0
- package/dist/react/ds-calendar.js +12 -0
- package/dist/react/ds-data-customize.d.ts +13 -0
- package/dist/react/ds-data-customize.js +15 -0
- package/dist/react/ds-data-filter.d.ts +18 -0
- package/dist/react/{ds-table-filter.js → ds-data-filter.js} +5 -5
- package/dist/react/ds-data-group.d.ts +14 -0
- package/dist/react/{ds-table-group.js → ds-data-group.js} +5 -5
- package/dist/react/ds-data-preferences.d.ts +21 -0
- package/dist/react/{ds-table-preferences.js → ds-data-preferences.js} +6 -6
- package/dist/react/ds-data-saved-views.d.ts +17 -0
- package/dist/react/{ds-table-saved-views.js → ds-data-saved-views.js} +5 -5
- package/dist/react/ds-data-search.d.ts +14 -0
- package/dist/react/{ds-table-search.js → ds-data-search.js} +5 -5
- package/dist/react/ds-data-sort.d.ts +12 -0
- package/dist/react/ds-data-sort.js +12 -0
- package/dist/react/{ds-table-toolbar.d.ts → ds-data-toolbar.d.ts} +3 -3
- package/dist/react/ds-data-toolbar.js +12 -0
- package/dist/react/ds-field.d.ts +1 -1
- package/dist/react/ds-input-date.d.ts +12 -0
- package/dist/react/ds-input-date.js +12 -0
- package/dist/react/ds-input-time.d.ts +12 -0
- package/dist/react/ds-input-time.js +12 -0
- package/dist/react/ds-table.d.ts +3 -3
- package/dist/react/ds-table.js +1 -1
- package/dist/react/ds-time-picker.d.ts +12 -0
- package/dist/react/ds-time-picker.js +12 -0
- package/dist/styles/table.css +11 -11
- package/dist/types/components/BarTitle/BarTitle.d.ts +1 -0
- package/dist/types/components/BarTitle/bar-title-action-chrome.d.ts +2 -0
- package/dist/types/components/ButtonInverted/ButtonInverted.d.ts +83 -0
- package/dist/types/components/ButtonInverted/index.d.ts +2 -0
- package/dist/types/components/Calendar/Calendar.d.ts +32 -0
- package/dist/types/components/Calendar/calendar-grid.d.ts +19 -0
- package/dist/types/components/ConversationList/ConversationList.d.ts +0 -7
- package/dist/types/components/DataCustomize/DataCustomize.d.ts +67 -0
- package/dist/types/components/{TableFilter/TableFilter.d.ts → DataFilter/DataFilter.d.ts} +2 -2
- package/dist/types/components/{TableGroup/TableGroup.d.ts → DataGroup/DataGroup.d.ts} +8 -8
- package/dist/types/components/{TablePreferences/TablePreferences.d.ts → DataPreferences/DataPreferences.d.ts} +29 -13
- package/dist/types/components/{TableSavedViews/TableSavedViews.d.ts → DataSavedViews/DataSavedViews.d.ts} +10 -10
- package/dist/types/components/DataSavedViews/data-saved-views-types.d.ts +24 -0
- package/dist/types/components/DataSavedViews/index.d.ts +2 -0
- package/dist/types/components/{TableSearch/TableSearch.d.ts → DataSearch/DataSearch.d.ts} +6 -6
- package/dist/types/components/{TableSearch/table-search-model.d.ts → DataSearch/data-search-model.d.ts} +6 -6
- package/dist/types/components/{TableSearch/table-search-types.d.ts → DataSearch/data-search-types.d.ts} +3 -3
- package/dist/types/components/{TableSort/TableSort.d.ts → DataSort/DataSort.d.ts} +7 -6
- package/dist/types/components/DataSort/data-sort-menu.d.ts +15 -0
- package/dist/types/components/{TableToolbar/TableToolbar.d.ts → DataToolbar/DataToolbar.d.ts} +3 -3
- package/dist/types/components/Field/Field.d.ts +7 -2
- package/dist/types/components/FilterMenu/FilterMenu.d.ts +0 -10
- package/dist/types/components/Icon/icon-cache.d.ts +36 -4
- package/dist/types/components/Icon/map-icon-catalog.d.ts +3 -0
- package/dist/types/components/Input/Input.d.ts +10 -0
- package/dist/types/components/InputDate/InputDate.d.ts +78 -0
- package/dist/types/components/InputTime/InputTime.d.ts +80 -0
- package/dist/types/components/PanelTools/PanelTools.d.ts +1 -1
- package/dist/types/components/Select/Select.d.ts +8 -1
- package/dist/types/components/Table/Table.d.ts +9 -9
- package/dist/types/components/Table/index.d.ts +1 -1
- package/dist/types/components/Table/table-action-menu.d.ts +1 -1
- package/dist/types/components/Table/table-body-renderer.d.ts +2 -2
- package/dist/types/components/Table/table-column-customizer.d.ts +9 -9
- package/dist/types/components/Table/table-group-load-controller.d.ts +2 -2
- package/dist/types/components/Table/table-model.d.ts +7 -7
- package/dist/types/components/Table/table-render-model.d.ts +3 -3
- package/dist/types/components/Table/table-types.d.ts +17 -36
- package/dist/types/components/Table/table-virtual-model.d.ts +2 -2
- package/dist/types/components/TimePicker/TimePicker.d.ts +33 -0
- package/dist/types/components.d.ts +5461 -4433
- package/dist/types/utils/button-render.d.ts +1 -1
- package/dist/types/utils/clock-time.d.ts +23 -0
- package/dist/types/utils/data-field.d.ts +38 -0
- package/dist/types/utils/date-filter-value.d.ts +4 -0
- package/dist/types/utils/index.d.ts +3 -1
- package/dist/types/utils/list-customizer.d.ts +38 -0
- package/dist/types/utils/table-caption-compact.d.ts +1 -1
- package/dist/vue/components.d.ts +13 -7
- package/dist/vue/components.js +13 -7
- package/dist/vue/ds-button-inverted.d.ts +3 -0
- package/dist/vue/ds-button-inverted.js +33 -0
- package/dist/vue/{ds-table-sort.d.ts → ds-calendar.d.ts} +1 -1
- package/dist/vue/ds-calendar.js +16 -0
- package/dist/vue/ds-conversation-list.js +1 -3
- package/dist/vue/ds-data-customize.d.ts +3 -0
- package/dist/vue/ds-data-customize.js +23 -0
- package/dist/vue/{ds-table-group.d.ts → ds-data-filter.d.ts} +1 -1
- package/dist/vue/{ds-table-filter.js → ds-data-filter.js} +2 -2
- package/dist/vue/{ds-table-filter.d.ts → ds-data-group.d.ts} +1 -1
- package/dist/vue/{ds-table-group.js → ds-data-group.js} +2 -2
- package/dist/vue/{ds-table-saved-views.d.ts → ds-data-preferences.d.ts} +1 -1
- package/dist/vue/{ds-table-preferences.js → ds-data-preferences.js} +10 -7
- package/dist/vue/ds-data-saved-views.d.ts +3 -0
- package/dist/vue/{ds-table-saved-views.js → ds-data-saved-views.js} +2 -2
- package/dist/vue/{ds-table-search.d.ts → ds-data-search.d.ts} +1 -1
- package/dist/vue/{ds-table-search.js → ds-data-search.js} +3 -3
- package/dist/vue/ds-data-sort.d.ts +3 -0
- package/dist/vue/{ds-table-sort.js → ds-data-sort.js} +3 -3
- package/dist/vue/ds-data-toolbar.d.ts +3 -0
- package/dist/vue/ds-data-toolbar.js +9 -0
- package/dist/vue/{ds-table-preferences.d.ts → ds-input-date.d.ts} +1 -1
- package/dist/vue/ds-input-date.js +31 -0
- package/dist/vue/ds-input-time.d.ts +3 -0
- package/dist/vue/ds-input-time.js +32 -0
- package/dist/vue/ds-input.js +2 -0
- package/dist/vue/ds-select.js +3 -0
- package/dist/vue/ds-table.js +4 -4
- package/dist/vue/ds-time-picker.d.ts +3 -0
- package/dist/vue/ds-time-picker.js +16 -0
- package/package.json +3 -3
- package/dist/angular/ds-table-filter.d.ts +0 -50
- package/dist/angular/ds-table-group.d.ts +0 -29
- package/dist/angular/ds-table-preferences.d.ts +0 -39
- package/dist/angular/ds-table-saved-views.d.ts +0 -49
- package/dist/angular/ds-table-search.d.ts +0 -20
- package/dist/angular/ds-table-sort.d.ts +0 -16
- package/dist/angular/ds-table-toolbar.d.ts +0 -12
- package/dist/components/ds-table-filter.js +0 -2
- package/dist/components/ds-table-filter.js.map +0 -1
- package/dist/components/ds-table-group.js +0 -2
- package/dist/components/ds-table-preferences.d.ts +0 -11
- package/dist/components/ds-table-preferences.js +0 -2
- package/dist/components/ds-table-preferences.js.map +0 -1
- package/dist/components/ds-table-saved-views.js +0 -2
- package/dist/components/ds-table-saved-views.js.map +0 -1
- package/dist/components/ds-table-search.js +0 -2
- package/dist/components/ds-table-search.js.map +0 -1
- package/dist/components/ds-table-sort.js +0 -2
- package/dist/components/ds-table-sort.js.map +0 -1
- package/dist/components/ds-table-toolbar.d.ts +0 -11
- package/dist/components/ds-table-toolbar.js +0 -2
- package/dist/components/ds-table-toolbar.js.map +0 -1
- package/dist/components/p-BINSI_KF.js +0 -2
- package/dist/components/p-BbfBvMRR.js +0 -2
- package/dist/components/p-BbfBvMRR.js.map +0 -1
- package/dist/components/p-C1_3CVma.js +0 -2
- package/dist/components/p-C1_3CVma.js.map +0 -1
- package/dist/components/p-CKarsuR2.js +0 -2
- package/dist/components/p-CKarsuR2.js.map +0 -1
- package/dist/components/p-Cea7rROU.js +0 -2
- package/dist/components/p-Cea7rROU.js.map +0 -1
- package/dist/components/p-Cmj04E5Q.js +0 -2
- package/dist/components/p-Cmj04E5Q.js.map +0 -1
- package/dist/components/p-Cq_Qpe_C.js +0 -2
- package/dist/components/p-Cq_Qpe_C.js.map +0 -1
- package/dist/components/p-CwqFJMvP.js +0 -2
- package/dist/components/p-D44g2Kw1.js.map +0 -1
- package/dist/components/p-DZ58Sg5a.js.map +0 -1
- package/dist/components/p-D_u8WhlU.js +0 -2
- package/dist/components/p-Dhw_W8nk.js.map +0 -1
- package/dist/components/p-FPZbS19l.js +0 -2
- package/dist/components/p-FPZbS19l.js.map +0 -1
- package/dist/components/p-KBrC9IG4.js +0 -2
- package/dist/components/p-KBrC9IG4.js.map +0 -1
- package/dist/components/p-N5SHSVo2.js +0 -2
- package/dist/components/p-QjkufCcn.js +0 -2
- package/dist/components/p-QjkufCcn.js.map +0 -1
- package/dist/components/p-UAIxh67Q.js +0 -2
- package/dist/components/p-UAIxh67Q.js.map +0 -1
- package/dist/components/p-beCz9OnD.js +0 -2
- package/dist/components/p-xHGqrz_p.js +0 -2
- package/dist/mcp-data/registry/table-group.json +0 -358
- package/dist/mcp-data/registry/table-preferences.json +0 -511
- package/dist/mcp-data/registry/table-saved-views.json +0 -431
- package/dist/mcp-data/registry/table-search.json +0 -366
- package/dist/mcp-data/registry/table-sort.json +0 -253
- package/dist/mcp-data/registry/table-toolbar.json +0 -180
- package/dist/react/ds-table-filter.d.ts +0 -18
- package/dist/react/ds-table-group.d.ts +0 -14
- package/dist/react/ds-table-preferences.d.ts +0 -21
- package/dist/react/ds-table-saved-views.d.ts +0 -17
- package/dist/react/ds-table-search.d.ts +0 -14
- package/dist/react/ds-table-sort.d.ts +0 -12
- package/dist/react/ds-table-sort.js +0 -12
- package/dist/react/ds-table-toolbar.js +0 -12
- package/dist/types/components/FilterMenu/filter-menu-calendar.d.ts +0 -13
- package/dist/types/components/TableSavedViews/index.d.ts +0 -2
- package/dist/types/components/TableSavedViews/table-saved-views-types.d.ts +0 -24
- package/dist/types/components/TableSort/table-sort-menu.d.ts +0 -15
- package/dist/vue/ds-table-toolbar.d.ts +0 -3
- package/dist/vue/ds-table-toolbar.js +0 -9
- /package/dist/components/{ds-table-group.js.map → ds-calendar.js.map} +0 -0
- /package/dist/components/{p-BQsVI_vO.js.map → p-5URekSny.js.map} +0 -0
- /package/dist/components/{p-eo_pmPqp.js.map → p-7V1AhetH.js.map} +0 -0
- /package/dist/components/{p-yZRXPHDe.js.map → p-8yBdCXCn.js.map} +0 -0
- /package/dist/components/{p-BQaO7cg_.js.map → p-BhJXmuRA.js.map} +0 -0
- /package/dist/components/{p-n68x-ZKp.js.map → p-Bm7rqs3C.js.map} +0 -0
- /package/dist/components/{p-DdspY23v.js.map → p-Bn8I7iw6.js.map} +0 -0
- /package/dist/components/{p-BnWxbhFP.js.map → p-Bpd6YCo4.js.map} +0 -0
- /package/dist/components/{p-B-9fdIWv.js.map → p-C-3YqeTb.js.map} +0 -0
- /package/dist/components/{p-umAf0fBn.js.map → p-CD4DZPy_.js.map} +0 -0
- /package/dist/components/{p-CuwopElg.js.map → p-CGidq1iC.js.map} +0 -0
- /package/dist/components/{p-CI7VfYC3.js.map → p-CUcUHwI3.js.map} +0 -0
- /package/dist/components/{p-BcdHgPi5.js.map → p-CeXf9-X3.js.map} +0 -0
- /package/dist/components/{p-CSnsz3Eb.js.map → p-CiH4GG6r.js.map} +0 -0
- /package/dist/components/{p-y06IxxoN.js.map → p-CiJ1WR11.js.map} +0 -0
- /package/dist/components/{p-BmFeeR4q.js.map → p-CqW2eyiF.js.map} +0 -0
- /package/dist/components/{p-CzbsTZt7.js.map → p-Cxr0IQjC.js.map} +0 -0
- /package/dist/components/{p-CqlBlv55.js.map → p-CzIpquvw.js.map} +0 -0
- /package/dist/components/{p-DC69DgAR.js.map → p-D0y7Sja6.js.map} +0 -0
- /package/dist/components/{p-C7CZ9pnP.js.map → p-D6Wl3dRO.js.map} +0 -0
- /package/dist/components/{p-BPhbwXOv.js.map → p-D922f6Tb.js.map} +0 -0
- /package/dist/components/{p-beRFLHbB.js.map → p-DHICPS4n.js.map} +0 -0
- /package/dist/components/{p-omPm8_vx.js.map → p-DOAybCp0.js.map} +0 -0
- /package/dist/components/{p-BnzsBNUY.js.map → p-Dn9QHL4O.js.map} +0 -0
- /package/dist/components/{p-DGzn4k4h.js.map → p-Do2FJd1y.js.map} +0 -0
- /package/dist/components/{p-DTDLlinw.js.map → p-DpoTwJAR.js.map} +0 -0
- /package/dist/components/{p-CLGtPE0K.js.map → p-DwbcNDJF.js.map} +0 -0
- /package/dist/components/{p-C8ek-1SP.js.map → p-E5W27Fu_.js.map} +0 -0
- /package/dist/components/{p-mpk_Mm8_.js.map → p-FIBCluwV.js.map} +0 -0
- /package/dist/components/{p-CE540WZ7.js.map → p-MG4lcN0D.js.map} +0 -0
- /package/dist/components/{p-DtLQIMsa.js.map → p-ZhP2tVmM.js.map} +0 -0
- /package/dist/components/{p-BPlWEidl.js.map → p-ljbw3UMZ.js.map} +0 -0
- /package/dist/components/{p-DFjIBS5B.js.map → p-xdmJCPCg.js.map} +0 -0
- /package/dist/components/{p-CAxDdYjh.js.map → p-xtGGIZmU.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["answerFor","answers","questionId","find","answer","createQuestionnaireDrafts","questions","Object","fromEntries","map","question","id","choiceValues","Set","choices","choice","value","type","values","Array","isArray","known","filter","has","other","otherSelected","Boolean","allowOther","otherText","skipped","isKnownChoice","normalizeQuestionAnswer","draft","trim","push","length","required","validateQuestionDraft","undefined","missing","formatQuestionAnswer","labels","Map","label","get","join","agentQuestionnaireCss","DEFAULT_LABELS","progress","previous","next","skip","cancel","otherPlaceholder","preparing","questionnaireId","AgentQuestionnaire","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","status","allowCancel","currentStep","drafts","validation","instanceId","otherValue","answerPending","resetScheduled","answersSnapshot","waitingForRequestAnswers","componentWillLoad","draftRequestId","requestId","resetDraft","handleQuestionnaireInputChange","scheduleDraftReset","handleStatusChange","setFocus","focusCurrentControl","copy","disabled","queueMicrotask","requestChanged","answersChanged","preferInvalid","focus","invalidControl","el","querySelector","control","action","target","requestAnimationFrame","setTimeout","updateDraft","update","_removed","rest","validate","message","move","step","Math","min","max","submit","invalidIndex","findIndex","validateWithoutFocus","dsAnswer","emit","progressLabel","split","String","selectSingle","renderSingleChoice","promptId","errorId","options","h","class","size","form","ariaLabelledby","onDsChange","event","detail","renderOtherInput","renderMultipleChoice","detachedForm","key","description","checked","includes","placeholder","onInput","renderQuestion","as","variant","textId","color","rows","role","name","renderAnswered","emphasis","render","Host","last","canSkip","skippable","questionnaire","side","icon","hasBorder","isInactive","onDsClick","dsCancel","errorMessage","width","isLoading"],"sources":["src/wc/components/AgentQuestionnaire/agent-questionnaire-model.ts","src/wc/components/AgentQuestionnaire/AgentQuestionnaire.css?tag=ds-agent-questionnaire&encapsulation=scoped","src/wc/components/AgentQuestionnaire/AgentQuestionnaire.tsx"],"sourcesContent":["import type { AgentQuestion, AgentQuestionAnswer } from '../conversation-types';\n\nexport interface AgentQuestionDraft {\n value: string | string[];\n otherSelected: boolean;\n otherText: string;\n skipped: boolean;\n}\n\nexport type AgentQuestionDrafts = Record<string, AgentQuestionDraft>;\n\nfunction answerFor(\n answers: AgentQuestionAnswer[],\n questionId: string\n): AgentQuestionAnswer | undefined {\n return answers.find(answer => answer.questionId === questionId);\n}\n\nexport function createQuestionnaireDrafts(\n questions: AgentQuestion[],\n answers: AgentQuestionAnswer[]\n): AgentQuestionDrafts {\n return Object.fromEntries(\n questions.map(question => {\n const answer = answerFor(answers, question.id);\n const choiceValues = new Set(question.choices?.map(choice => choice.value) ?? []);\n\n if (question.type === 'multiple') {\n const values = Array.isArray(answer?.value) ? answer.value : [];\n const known = values.filter(value => choiceValues.has(value));\n const other = values.find(value => !choiceValues.has(value)) ?? '';\n return [\n question.id,\n {\n value: known,\n otherSelected: Boolean(question.allowOther && other),\n otherText: question.allowOther ? other : '',\n skipped: answer?.value === null,\n },\n ];\n }\n\n const value = typeof answer?.value === 'string' ? answer.value : '';\n const isKnownChoice = question.type === 'single' && choiceValues.has(value);\n return [\n question.id,\n {\n value: question.type === 'single' && !isKnownChoice ? '' : value,\n otherSelected: Boolean(\n question.type === 'single' && question.allowOther && value && !isKnownChoice\n ),\n otherText:\n question.type === 'single' && question.allowOther && value && !isKnownChoice\n ? value\n : '',\n skipped: answer?.value === null,\n },\n ];\n })\n );\n}\n\nexport function normalizeQuestionAnswer(\n question: AgentQuestion,\n draft: AgentQuestionDraft\n): AgentQuestionAnswer {\n if (draft.skipped) return { questionId: question.id, value: null };\n\n if (question.type === 'multiple') {\n const values = Array.isArray(draft.value) ? [...draft.value] : [];\n if (draft.otherSelected && draft.otherText.trim()) values.push(draft.otherText.trim());\n return {\n questionId: question.id,\n value: values.length || question.required ? values : null,\n };\n }\n\n if (draft.otherSelected) {\n const other = draft.otherText.trim();\n return { questionId: question.id, value: other || null };\n }\n\n const value = typeof draft.value === 'string' ? draft.value.trim() : '';\n return { questionId: question.id, value: value || null };\n}\n\nexport function validateQuestionDraft(\n question: AgentQuestion,\n draft: AgentQuestionDraft\n): string | undefined {\n if ((question.type === 'single' || question.type === 'multiple') && !question.choices?.length) {\n return 'This question has no available choices.';\n }\n\n if (draft.otherSelected && !draft.otherText.trim()) {\n return 'Enter a response for Other.';\n }\n\n if (!question.required || draft.skipped) return undefined;\n const answer = normalizeQuestionAnswer(question, draft).value;\n const missing = answer === null || (Array.isArray(answer) && answer.length === 0);\n if (!missing) return undefined;\n return question.type === 'text'\n ? 'Enter an answer before continuing.'\n : 'Choose an answer before continuing.';\n}\n\nexport function formatQuestionAnswer(\n question: AgentQuestion,\n answer: AgentQuestionAnswer | undefined\n): string {\n if (!answer || answer.value === null) return 'Skipped';\n const values = Array.isArray(answer.value) ? answer.value : [answer.value];\n const labels = new Map(question.choices?.map(choice => [choice.value, choice.label]) ?? []);\n return values.map(value => labels.get(value) ?? value).join(', ');\n}\n","@import '../../utils/forced-colors.css';\n@import '../../utils/visually-hidden.css';\n\n:host {\n display: block;\n width: 100%;\n min-width: 0;\n box-sizing: border-box;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.questionnaire {\n display: grid;\n gap: var(--dimension-space-150);\n width: 100%;\n padding: var(--dimension-space-200);\n border-radius: var(--dimension-radius-125);\n background: var(--color-background-primary);\n box-shadow: var(--effect-elevation-elevated-md);\n box-sizing: border-box;\n}\n\n.questionnaire--answered {\n gap: var(--dimension-space-100);\n padding: var(--dimension-space-150);\n background: var(--color-background-secondary);\n box-shadow: none;\n}\n\n.questionnaire--preparing {\n align-items: center;\n grid-template-columns: auto minmax(0, 1fr);\n}\n\n.questionnaire__header,\n.questionnaire__actions,\n.questionnaire__actions-leading,\n.questionnaire__error,\n.questionnaire__submission-error {\n display: flex;\n align-items: center;\n}\n\n.questionnaire__header,\n.questionnaire__actions {\n justify-content: space-between;\n gap: var(--dimension-space-100);\n}\n\n.questionnaire__body,\n.questionnaire__prompt,\n.questionnaire__choices,\n.questionnaire__single-choice,\n.questionnaire__multiple-choice,\n.questionnaire__other-choice,\n.questionnaire__summary,\n.questionnaire__summary li {\n display: grid;\n}\n\n.questionnaire__body,\n.questionnaire__prompt,\n.questionnaire__choices,\n.questionnaire__single-choice,\n.questionnaire__multiple-choice,\n.questionnaire__other-choice {\n gap: var(--dimension-space-100);\n}\n\n.questionnaire__choices {\n min-width: 0;\n margin: 0;\n padding: 0;\n border: 0;\n}\n\nds-radio,\nds-checkbox {\n width: 100%;\n min-width: 0;\n}\n\n.questionnaire__other-input,\n.questionnaire__text-input {\n width: 100%;\n padding: var(--dimension-space-100);\n border: var(--dimension-stroke-width-012) solid var(--color-border-secondary);\n border-radius: var(--dimension-radius-050);\n outline: none;\n background: var(--color-background-primary);\n color: var(--color-foreground-primary);\n font-family: var(--typography-font-family-ui);\n font-size: var(--typography-fontsize-md);\n font-weight: var(--typography-weight-regular);\n line-height: var(--typography-lineheight-md);\n letter-spacing: var(--typography-letterspacing-negative-half);\n box-sizing: border-box;\n -webkit-user-select: text;\n user-select: text;\n}\n\n.questionnaire__other-input {\n width: calc(100% - var(--dimension-size-500));\n margin-inline-start: var(--dimension-size-500);\n}\n\n.questionnaire__text-input {\n min-height: calc(var(--typography-lineheight-md) * 4 + var(--dimension-space-200));\n resize: vertical;\n}\n\n.questionnaire__other-input:focus,\n.questionnaire__text-input:focus {\n border-color: var(--color-border-bold-brand);\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-018) var(--color-border-bold-brand);\n}\n\n.questionnaire__other-input[aria-invalid='true'],\n.questionnaire__text-input[aria-invalid='true'] {\n border-color: var(--color-border-bold-negative);\n}\n\n.questionnaire__error,\n.questionnaire__submission-error {\n gap: var(--dimension-space-050);\n color: var(--color-foreground-bold-negative);\n}\n\n.questionnaire__submission-error {\n padding: var(--dimension-space-075);\n border-radius: var(--dimension-radius-050);\n background: var(--color-background-faint-negative);\n}\n\n.questionnaire__actions-leading {\n flex-wrap: wrap;\n gap: var(--dimension-space-075);\n}\n\n.questionnaire__action-item {\n width: fit-content;\n max-width: 100%;\n}\n\n.questionnaire textarea:disabled {\n color: var(--color-foreground-tertiary);\n cursor: default;\n opacity: 1;\n}\n\n.questionnaire__summary {\n gap: var(--dimension-space-100);\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.questionnaire__summary li {\n gap: var(--dimension-space-025);\n}\n\n@media (max-width: 480px) {\n .questionnaire {\n padding: var(--dimension-space-150);\n }\n\n .questionnaire__actions {\n align-items: stretch;\n flex-direction: column;\n }\n\n .questionnaire__actions-leading {\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n width: 100%;\n }\n\n .questionnaire__action-item,\n .questionnaire__action-item--primary {\n width: 100%;\n }\n}\n\n@media (forced-colors: active) {\n .questionnaire {\n border: var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);\n box-shadow: none;\n }\n\n .questionnaire__other-input[aria-invalid='true'],\n .questionnaire__text-input[aria-invalid='true'] {\n outline: var(--dimension-stroke-width-025) dashed var(--ds-forced-color-content);\n }\n\n .questionnaire__submission-error {\n border: var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);\n background: var(--ds-forced-color-surface);\n }\n\n .questionnaire input:disabled,\n .questionnaire textarea:disabled {\n color: var(--ds-forced-color-disabled);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport type {\n AgentQuestion,\n AgentQuestionAnswer,\n AgentQuestionnaireAnswerEventDetail,\n AgentQuestionnaireCancelEventDetail,\n AgentQuestionnaireLabels,\n AgentQuestionnaireStatus,\n} from '../conversation-types';\nimport {\n createQuestionnaireDrafts,\n formatQuestionAnswer,\n normalizeQuestionAnswer,\n validateQuestionDraft,\n} from './agent-questionnaire-model';\nimport type { AgentQuestionDraft, AgentQuestionDrafts } from './agent-questionnaire-model';\n\nconst DEFAULT_LABELS: AgentQuestionnaireLabels = {\n progress: 'Question {current} of {total}',\n previous: 'Previous',\n next: 'Next',\n answer: 'Answer',\n skip: 'Skip',\n cancel: 'Cancel',\n other: 'Other',\n otherPlaceholder: 'Enter another answer',\n preparing: 'Preparing questions…',\n};\n\nlet questionnaireId = 0;\n\n@Component({\n tag: 'ds-agent-questionnaire',\n styleUrl: 'AgentQuestionnaire.css',\n scoped: true,\n})\nexport class AgentQuestionnaire {\n @Element() el!: HTMLElement;\n\n @Prop() requestId!: string;\n @Prop() questions!: AgentQuestion[];\n @Prop() answers: AgentQuestionAnswer[] = [];\n @Prop() status: AgentQuestionnaireStatus = 'ready';\n @Prop() errorMessage?: string;\n @Prop() allowCancel: boolean = false;\n @Prop() labels?: Partial<AgentQuestionnaireLabels>;\n\n @Event() dsAnswer!: EventEmitter<AgentQuestionnaireAnswerEventDetail>;\n @Event() dsCancel!: EventEmitter<AgentQuestionnaireCancelEventDetail>;\n\n @State() private currentStep = 0;\n @State() private drafts: AgentQuestionDrafts = {};\n @State() private validation: Record<string, string> = {};\n\n private readonly instanceId = ++questionnaireId;\n private readonly otherValue = `__ds-agent-questionnaire-other-${this.instanceId}`;\n private answerPending = false;\n private resetScheduled = false;\n private draftRequestId?: string;\n private answersSnapshot: AgentQuestionAnswer[] = [];\n private waitingForRequestAnswers = false;\n\n componentWillLoad() {\n this.draftRequestId = this.requestId;\n this.answersSnapshot = this.answers;\n this.resetDraft();\n }\n\n @Watch('requestId')\n @Watch('questions')\n @Watch('answers')\n handleQuestionnaireInputChange() {\n this.scheduleDraftReset();\n }\n\n @Watch('status')\n handleStatusChange(status: AgentQuestionnaireStatus) {\n if (status !== 'submitting') this.answerPending = false;\n }\n\n @Method()\n async setFocus(): Promise<void> {\n this.focusCurrentControl();\n }\n\n private get copy(): AgentQuestionnaireLabels {\n return { ...DEFAULT_LABELS, ...this.labels };\n }\n\n private get disabled(): boolean {\n return this.status === 'submitting';\n }\n\n private resetDraft(answers = this.answers) {\n this.currentStep = 0;\n this.drafts = createQuestionnaireDrafts(this.questions ?? [], answers ?? []);\n this.validation = {};\n this.answerPending = false;\n }\n\n private scheduleDraftReset() {\n if (this.resetScheduled) return;\n this.resetScheduled = true;\n queueMicrotask(() => {\n this.resetScheduled = false;\n const requestChanged = this.requestId !== this.draftRequestId;\n const answersChanged = this.answers !== this.answersSnapshot;\n if (requestChanged && !answersChanged) {\n this.waitingForRequestAnswers = true;\n } else if (answersChanged) {\n this.waitingForRequestAnswers = false;\n }\n this.resetDraft(this.waitingForRequestAnswers ? [] : this.answers);\n this.draftRequestId = this.requestId;\n this.answersSnapshot = this.answers;\n });\n }\n\n private focusCurrentControl(preferInvalid = false) {\n const focus = () => {\n const invalidControl = preferInvalid\n ? this.el.querySelector<HTMLElement>(\n '[data-question-control][aria-invalid=\"true\"]:not([disabled])'\n )\n : null;\n const control =\n invalidControl ??\n this.el.querySelector<HTMLElement>(\n '[data-question-control]:not([disabled]):not([is-inactive])'\n );\n const action = this.el.querySelector<HTMLElement>(\n '[data-question-action]:not([is-inactive]):not([is-loading])'\n );\n const target = (control ?? action) as\n | (HTMLElement & { setFocus?: () => Promise<void> })\n | null;\n if (target?.setFocus) void target.setFocus();\n else target?.focus();\n };\n focus();\n requestAnimationFrame(focus);\n setTimeout(focus, 0);\n }\n\n private updateDraft(questionId: string, update: Partial<AgentQuestionDraft>) {\n const previous = this.drafts[questionId] ?? {\n value: '',\n otherSelected: false,\n otherText: '',\n skipped: false,\n };\n this.drafts = {\n ...this.drafts,\n [questionId]: { ...previous, ...update, skipped: false },\n };\n if (this.validation[questionId]) {\n const { [questionId]: _removed, ...rest } = this.validation;\n this.validation = rest;\n }\n }\n\n private validate(question: AgentQuestion): boolean {\n const message = validateQuestionDraft(question, this.drafts[question.id]);\n if (!message) return true;\n this.validation = { ...this.validation, [question.id]: message };\n this.focusCurrentControl(true);\n return false;\n }\n\n private move(step: number) {\n this.currentStep = Math.min(Math.max(step, 0), this.questions.length - 1);\n this.focusCurrentControl();\n }\n\n private next(question: AgentQuestion) {\n if (!this.validate(question)) return;\n this.move(this.currentStep + 1);\n }\n\n private skip(question: AgentQuestion) {\n if (question.required) return;\n this.drafts = {\n ...this.drafts,\n [question.id]: {\n ...(this.drafts[question.id] ?? {\n value: '',\n otherSelected: false,\n otherText: '',\n }),\n skipped: true,\n },\n };\n if (this.currentStep < this.questions.length - 1) this.move(this.currentStep + 1);\n else this.submit();\n }\n\n private submit() {\n if (this.disabled || this.answerPending) return;\n const invalidIndex = this.questions.findIndex(question => !this.validateWithoutFocus(question));\n if (invalidIndex >= 0) {\n this.currentStep = invalidIndex;\n this.focusCurrentControl(true);\n return;\n }\n\n this.answerPending = true;\n this.dsAnswer.emit({\n requestId: this.requestId,\n answers: this.questions.map(question =>\n normalizeQuestionAnswer(question, this.drafts[question.id])\n ),\n });\n }\n\n private validateWithoutFocus(question: AgentQuestion): boolean {\n const message = validateQuestionDraft(question, this.drafts[question.id]);\n if (!message) return true;\n this.validation = { ...this.validation, [question.id]: message };\n return false;\n }\n\n private progressLabel(): string {\n return this.copy.progress\n .split('{current}')\n .join(String(this.currentStep + 1))\n .split('{total}')\n .join(String(this.questions.length));\n }\n\n private selectSingle(question: AgentQuestion, value: string) {\n const otherSelected = value === this.otherValue;\n this.updateDraft(question.id, {\n value: otherSelected ? '' : value,\n otherSelected,\n });\n if (otherSelected) {\n requestAnimationFrame(() =>\n this.el.querySelector<HTMLInputElement>('[data-question-other-input]')?.focus()\n );\n }\n }\n\n private renderSingleChoice(question: AgentQuestion, promptId: string, errorId: string) {\n const draft = this.drafts[question.id];\n const value = draft.otherSelected\n ? this.otherValue\n : typeof draft.value === 'string'\n ? draft.value\n : '';\n const options = [\n ...(question.choices ?? []),\n ...(question.allowOther ? [{ value: this.otherValue, label: this.copy.other }] : []),\n ];\n return (\n <div class=\"questionnaire__single-choice\">\n <ds-radio\n data-question-control\n size=\"lg\"\n options={options}\n value={value}\n disabled={this.disabled}\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n ariaLabelledby={promptId}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n onDsChange={(event: CustomEvent<string>) => this.selectSingle(question, event.detail)}\n />\n {draft.otherSelected ? this.renderOtherInput(question, errorId) : null}\n </div>\n );\n }\n\n private renderMultipleChoice(question: AgentQuestion, errorId: string) {\n const draft = this.drafts[question.id];\n const values = Array.isArray(draft.value) ? draft.value : [];\n const detachedForm = `ds-agent-questionnaire-detached-${this.instanceId}`;\n return (\n <div class=\"questionnaire__multiple-choice\">\n {question.choices?.map(choice => (\n <ds-checkbox\n key={choice.value}\n data-question-control\n size=\"lg\"\n label={choice.label}\n description={choice.description}\n value={choice.value}\n checked={values.includes(choice.value)}\n disabled={this.disabled}\n form={detachedForm}\n onDsChange={(event: CustomEvent<boolean>) => {\n this.updateDraft(question.id, {\n value: event.detail\n ? [...values, choice.value]\n : values.filter(value => value !== choice.value),\n });\n }}\n />\n ))}\n {question.allowOther ? (\n <div class=\"questionnaire__other-choice\">\n <ds-checkbox\n data-question-control\n size=\"lg\"\n label={this.copy.other}\n checked={draft.otherSelected}\n disabled={this.disabled}\n form={detachedForm}\n onDsChange={(event: CustomEvent<boolean>) => {\n this.updateDraft(question.id, { otherSelected: event.detail });\n if (event.detail) {\n requestAnimationFrame(() =>\n this.el.querySelector<HTMLInputElement>('[data-question-other-input]')?.focus()\n );\n }\n }}\n />\n {draft.otherSelected ? this.renderOtherInput(question, errorId) : null}\n </div>\n ) : null}\n </div>\n );\n }\n\n private renderOtherInput(question: AgentQuestion, errorId: string) {\n const draft = this.drafts[question.id];\n return (\n <input\n class=\"questionnaire__other-input\"\n data-question-control\n data-question-other-input\n type=\"text\"\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n value={draft.otherText}\n placeholder={this.copy.otherPlaceholder}\n aria-label={this.copy.other}\n aria-invalid={this.validation[question.id] ? 'true' : undefined}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n disabled={this.disabled}\n onInput={(event: Event) =>\n this.updateDraft(question.id, {\n otherText: (event.target as HTMLInputElement).value,\n })\n }\n />\n );\n }\n\n private renderQuestion(question: AgentQuestion) {\n const draft = this.drafts[question.id];\n const errorId = `ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-error`;\n const promptId = `ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-prompt`;\n return (\n <div class=\"questionnaire__body\">\n <div class=\"questionnaire__prompt\">\n <ds-text as=\"h2\" variant=\"text-title-small\" textId={promptId}>\n {question.question}\n </ds-text>\n {question.description ? (\n <ds-text variant=\"text-body-small\" color=\"secondary\">\n {question.description}\n </ds-text>\n ) : null}\n </div>\n {question.type === 'text' ? (\n <textarea\n class=\"questionnaire__text-input\"\n data-question-control\n value={typeof draft.value === 'string' ? draft.value : ''}\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n placeholder={question.placeholder}\n aria-label={question.question}\n aria-invalid={this.validation[question.id] ? 'true' : undefined}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n disabled={this.disabled}\n rows={4}\n onInput={(event: Event) =>\n this.updateDraft(question.id, {\n value: (event.target as HTMLTextAreaElement).value,\n })\n }\n />\n ) : (\n <fieldset\n class=\"questionnaire__choices\"\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n >\n <legend class=\"ds-visually-hidden\">{question.question}</legend>\n {question.type === 'single'\n ? this.renderSingleChoice(question, promptId, errorId)\n : this.renderMultipleChoice(question, errorId)}\n </fieldset>\n )}\n {this.validation[question.id] ? (\n <div id={errorId} class=\"questionnaire__error\" role=\"alert\">\n <ds-icon name=\"ErrorTriangle\" size=\"xs\" color=\"inherit\" />\n <ds-text variant=\"text-body-small\" color=\"negative\">\n {this.validation[question.id]}\n </ds-text>\n </div>\n ) : null}\n </div>\n );\n }\n\n private renderAnswered() {\n return (\n <div class=\"questionnaire questionnaire--answered\">\n <ol class=\"questionnaire__summary\">\n {this.questions.map(question => (\n <li>\n <ds-text variant=\"text-body-small\" emphasis>\n {question.question}\n </ds-text>\n <ds-text variant=\"text-body-small\" color=\"secondary\">\n {formatQuestionAnswer(\n question,\n this.answers.find(answer => answer.questionId === question.id)\n )}\n </ds-text>\n </li>\n ))}\n </ol>\n </div>\n );\n }\n\n render() {\n if (this.status === 'preparing') {\n return (\n <Host>\n <div class=\"questionnaire questionnaire--preparing\" role=\"status\">\n <ds-loader size=\"sm\" />\n <ds-text variant=\"text-body-medium\">{this.copy.preparing}</ds-text>\n </div>\n </Host>\n );\n }\n if (!this.questions?.length) return null;\n if (this.status === 'answered') return <Host>{this.renderAnswered()}</Host>;\n\n const question = this.questions[this.currentStep];\n const last = this.currentStep === this.questions.length - 1;\n const canSkip = Boolean(question.skippable && !question.required);\n return (\n <Host>\n <section\n class={{\n questionnaire: true,\n 'questionnaire--submitting': this.disabled,\n 'questionnaire--error': this.status === 'error',\n }}\n aria-busy={this.disabled ? 'true' : undefined}\n aria-label={question.question}\n >\n <header class=\"questionnaire__header\">\n <ds-text variant=\"text-caption\" color=\"secondary\">\n {this.progressLabel()}\n </ds-text>\n {this.allowCancel ? (\n <ds-tooltip label={this.copy.cancel} side=\"top\" size=\"sm\">\n <ds-button-unfilled\n data-question-action\n variant=\"icon\"\n icon=\"Cross\"\n size=\"sm\"\n aria-label={this.copy.cancel}\n hasBorder={false}\n isInactive={this.disabled}\n onDsClick={() => this.dsCancel.emit({ requestId: this.requestId })}\n />\n </ds-tooltip>\n ) : null}\n </header>\n {this.renderQuestion(question)}\n {this.status === 'error' && this.errorMessage ? (\n <div class=\"questionnaire__submission-error\" role=\"alert\">\n <ds-icon name=\"ErrorTriangle\" size=\"xs\" color=\"inherit\" />\n <ds-text variant=\"text-body-small\" color=\"negative\">\n {this.errorMessage}\n </ds-text>\n </div>\n ) : null}\n <footer class=\"questionnaire__actions\">\n <div class=\"questionnaire__actions-leading\">\n {this.currentStep > 0 ? (\n <div class=\"questionnaire__action-item\">\n <ds-button-unfilled\n data-question-action\n label={this.copy.previous}\n size=\"sm\"\n width=\"fill\"\n isInactive={this.disabled}\n onDsClick={() => this.move(this.currentStep - 1)}\n />\n </div>\n ) : null}\n {canSkip ? (\n <div class=\"questionnaire__action-item\">\n <ds-button-unfilled\n data-question-action\n label={this.copy.skip}\n size=\"sm\"\n width=\"fill\"\n hasBorder={false}\n isInactive={this.disabled}\n onDsClick={() => this.skip(question)}\n />\n </div>\n ) : null}\n </div>\n <div class=\"questionnaire__action-item questionnaire__action-item--primary\">\n <ds-button-filled\n data-question-action\n label={last ? this.copy.answer : this.copy.next}\n size=\"sm\"\n width=\"fill\"\n isLoading={this.disabled}\n onDsClick={() => (last ? this.submit() : this.next(question))}\n />\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["answerFor","answers","questionId","find","answer","createQuestionnaireDrafts","questions","Object","fromEntries","map","question","id","choiceValues","Set","choices","choice","value","type","values","Array","isArray","known","filter","has","other","otherSelected","Boolean","allowOther","otherText","skipped","isKnownChoice","normalizeQuestionAnswer","draft","trim","push","length","required","validateQuestionDraft","undefined","missing","formatQuestionAnswer","labels","Map","label","get","join","agentQuestionnaireCss","DEFAULT_LABELS","progress","previous","next","skip","cancel","otherPlaceholder","preparing","questionnaireId","AgentQuestionnaire","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","status","allowCancel","currentStep","drafts","validation","instanceId","otherValue","answerPending","resetScheduled","answersSnapshot","waitingForRequestAnswers","componentWillLoad","draftRequestId","requestId","resetDraft","handleQuestionnaireInputChange","scheduleDraftReset","handleStatusChange","setFocus","focusCurrentControl","copy","disabled","queueMicrotask","requestChanged","answersChanged","preferInvalid","focus","invalidControl","el","querySelector","control","action","target","requestAnimationFrame","setTimeout","updateDraft","update","_removed","rest","validate","message","move","step","Math","min","max","submit","invalidIndex","findIndex","validateWithoutFocus","dsAnswer","emit","progressLabel","split","String","selectSingle","renderSingleChoice","promptId","errorId","options","h","class","size","form","ariaLabelledby","onDsChange","event","detail","renderOtherInput","renderMultipleChoice","detachedForm","key","description","checked","includes","placeholder","onInput","renderQuestion","as","variant","textId","color","rows","role","name","renderAnswered","emphasis","render","Host","last","canSkip","skippable","questionnaire","side","icon","hasBorder","isInactive","onDsClick","dsCancel","errorMessage","width","isLoading"],"sources":["src/wc/components/AgentQuestionnaire/agent-questionnaire-model.ts","src/wc/components/AgentQuestionnaire/AgentQuestionnaire.css?tag=ds-agent-questionnaire&encapsulation=scoped","src/wc/components/AgentQuestionnaire/AgentQuestionnaire.tsx"],"sourcesContent":["import type { AgentQuestion, AgentQuestionAnswer } from '../conversation-types';\n\nexport interface AgentQuestionDraft {\n value: string | string[];\n otherSelected: boolean;\n otherText: string;\n skipped: boolean;\n}\n\nexport type AgentQuestionDrafts = Record<string, AgentQuestionDraft>;\n\nfunction answerFor(\n answers: AgentQuestionAnswer[],\n questionId: string\n): AgentQuestionAnswer | undefined {\n return answers.find(answer => answer.questionId === questionId);\n}\n\nexport function createQuestionnaireDrafts(\n questions: AgentQuestion[],\n answers: AgentQuestionAnswer[]\n): AgentQuestionDrafts {\n return Object.fromEntries(\n questions.map(question => {\n const answer = answerFor(answers, question.id);\n const choiceValues = new Set(question.choices?.map(choice => choice.value) ?? []);\n\n if (question.type === 'multiple') {\n const values = Array.isArray(answer?.value) ? answer.value : [];\n const known = values.filter(value => choiceValues.has(value));\n const other = values.find(value => !choiceValues.has(value)) ?? '';\n return [\n question.id,\n {\n value: known,\n otherSelected: Boolean(question.allowOther && other),\n otherText: question.allowOther ? other : '',\n skipped: answer?.value === null,\n },\n ];\n }\n\n const value = typeof answer?.value === 'string' ? answer.value : '';\n const isKnownChoice = question.type === 'single' && choiceValues.has(value);\n return [\n question.id,\n {\n value: question.type === 'single' && !isKnownChoice ? '' : value,\n otherSelected: Boolean(\n question.type === 'single' && question.allowOther && value && !isKnownChoice\n ),\n otherText:\n question.type === 'single' && question.allowOther && value && !isKnownChoice\n ? value\n : '',\n skipped: answer?.value === null,\n },\n ];\n })\n );\n}\n\nexport function normalizeQuestionAnswer(\n question: AgentQuestion,\n draft: AgentQuestionDraft\n): AgentQuestionAnswer {\n if (draft.skipped) return { questionId: question.id, value: null };\n\n if (question.type === 'multiple') {\n const values = Array.isArray(draft.value) ? [...draft.value] : [];\n if (draft.otherSelected && draft.otherText.trim()) values.push(draft.otherText.trim());\n return {\n questionId: question.id,\n value: values.length || question.required ? values : null,\n };\n }\n\n if (draft.otherSelected) {\n const other = draft.otherText.trim();\n return { questionId: question.id, value: other || null };\n }\n\n const value = typeof draft.value === 'string' ? draft.value.trim() : '';\n return { questionId: question.id, value: value || null };\n}\n\nexport function validateQuestionDraft(\n question: AgentQuestion,\n draft: AgentQuestionDraft\n): string | undefined {\n if ((question.type === 'single' || question.type === 'multiple') && !question.choices?.length) {\n return 'This question has no available choices.';\n }\n\n if (draft.otherSelected && !draft.otherText.trim()) {\n return 'Enter a response for Other.';\n }\n\n if (!question.required || draft.skipped) return undefined;\n const answer = normalizeQuestionAnswer(question, draft).value;\n const missing = answer === null || (Array.isArray(answer) && answer.length === 0);\n if (!missing) return undefined;\n return question.type === 'text'\n ? 'Enter an answer before continuing.'\n : 'Choose an answer before continuing.';\n}\n\nexport function formatQuestionAnswer(\n question: AgentQuestion,\n answer: AgentQuestionAnswer | undefined\n): string {\n if (!answer || answer.value === null) return 'Skipped';\n const values = Array.isArray(answer.value) ? answer.value : [answer.value];\n const labels = new Map(question.choices?.map(choice => [choice.value, choice.label]) ?? []);\n return values.map(value => labels.get(value) ?? value).join(', ');\n}\n","@import '../../utils/forced-colors.css';\n@import '../../utils/visually-hidden.css';\n\n:host {\n display: block;\n width: 100%;\n min-width: 0;\n box-sizing: border-box;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.questionnaire {\n display: grid;\n gap: var(--dimension-space-150);\n width: 100%;\n padding: var(--dimension-space-200);\n border-radius: var(--dimension-radius-125);\n background: var(--color-background-primary);\n box-shadow: var(--effect-elevation-elevated-md);\n box-sizing: border-box;\n}\n\n.questionnaire--answered {\n gap: var(--dimension-space-100);\n padding: var(--dimension-space-150);\n background: var(--color-background-secondary);\n box-shadow: none;\n}\n\n.questionnaire--preparing {\n align-items: center;\n grid-template-columns: auto minmax(0, 1fr);\n}\n\n.questionnaire__header,\n.questionnaire__actions,\n.questionnaire__actions-leading,\n.questionnaire__error,\n.questionnaire__submission-error {\n display: flex;\n align-items: center;\n}\n\n.questionnaire__header,\n.questionnaire__actions {\n justify-content: space-between;\n gap: var(--dimension-space-100);\n}\n\n.questionnaire__body,\n.questionnaire__prompt,\n.questionnaire__choices,\n.questionnaire__single-choice,\n.questionnaire__multiple-choice,\n.questionnaire__other-choice,\n.questionnaire__summary,\n.questionnaire__summary li {\n display: grid;\n}\n\n.questionnaire__body,\n.questionnaire__prompt,\n.questionnaire__choices,\n.questionnaire__single-choice,\n.questionnaire__multiple-choice,\n.questionnaire__other-choice {\n gap: var(--dimension-space-100);\n}\n\n.questionnaire__choices {\n min-width: 0;\n margin: 0;\n padding: 0;\n border: 0;\n}\n\nds-radio,\nds-checkbox {\n width: 100%;\n min-width: 0;\n}\n\n.questionnaire__other-input,\n.questionnaire__text-input {\n width: 100%;\n padding: var(--dimension-space-100);\n border: var(--dimension-stroke-width-012) solid var(--color-border-secondary);\n border-radius: var(--dimension-radius-050);\n outline: none;\n background: var(--color-background-primary);\n color: var(--color-foreground-primary);\n font-family: var(--typography-font-family-ui);\n font-size: var(--typography-fontsize-md);\n font-weight: var(--typography-weight-regular);\n line-height: var(--typography-lineheight-md);\n letter-spacing: var(--typography-letterspacing-negative-half);\n box-sizing: border-box;\n -webkit-user-select: text;\n user-select: text;\n}\n\n.questionnaire__other-input {\n width: calc(100% - var(--dimension-size-500));\n margin-inline-start: var(--dimension-size-500);\n}\n\n.questionnaire__text-input {\n min-height: calc(var(--typography-lineheight-md) * 4 + var(--dimension-space-200));\n resize: vertical;\n}\n\n.questionnaire__other-input:focus,\n.questionnaire__text-input:focus {\n border-color: var(--color-border-bold-brand);\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-018) var(--color-border-bold-brand);\n}\n\n.questionnaire__other-input[aria-invalid='true'],\n.questionnaire__text-input[aria-invalid='true'] {\n border-color: var(--color-border-bold-negative);\n}\n\n.questionnaire__error,\n.questionnaire__submission-error {\n gap: var(--dimension-space-050);\n color: var(--color-foreground-bold-negative);\n}\n\n.questionnaire__submission-error {\n padding: var(--dimension-space-075);\n border-radius: var(--dimension-radius-050);\n background: var(--color-background-faint-negative);\n}\n\n.questionnaire__actions-leading {\n flex-wrap: wrap;\n gap: var(--dimension-space-075);\n}\n\n.questionnaire__action-item {\n width: fit-content;\n max-width: 100%;\n}\n\n.questionnaire textarea:disabled {\n color: var(--color-foreground-tertiary);\n cursor: default;\n opacity: 1;\n}\n\n.questionnaire__summary {\n gap: var(--dimension-space-100);\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.questionnaire__summary li {\n gap: var(--dimension-space-025);\n}\n\n@media (max-width: 480px) {\n .questionnaire {\n padding: var(--dimension-space-150);\n }\n\n .questionnaire__actions {\n align-items: stretch;\n flex-direction: column;\n }\n\n .questionnaire__actions-leading {\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n width: 100%;\n }\n\n .questionnaire__action-item,\n .questionnaire__action-item--primary {\n width: 100%;\n }\n}\n\n@media (forced-colors: active) {\n .questionnaire {\n border: var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);\n box-shadow: none;\n }\n\n .questionnaire__other-input[aria-invalid='true'],\n .questionnaire__text-input[aria-invalid='true'] {\n outline: var(--dimension-stroke-width-025) dashed var(--ds-forced-color-content);\n }\n\n .questionnaire__submission-error {\n border: var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);\n background: var(--ds-forced-color-surface);\n }\n\n .questionnaire input:disabled,\n .questionnaire textarea:disabled {\n color: var(--ds-forced-color-disabled);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport type {\n AgentQuestion,\n AgentQuestionAnswer,\n AgentQuestionnaireAnswerEventDetail,\n AgentQuestionnaireCancelEventDetail,\n AgentQuestionnaireLabels,\n AgentQuestionnaireStatus,\n} from '../conversation-types';\nimport {\n createQuestionnaireDrafts,\n formatQuestionAnswer,\n normalizeQuestionAnswer,\n validateQuestionDraft,\n} from './agent-questionnaire-model';\nimport type { AgentQuestionDraft, AgentQuestionDrafts } from './agent-questionnaire-model';\n\nconst DEFAULT_LABELS: AgentQuestionnaireLabels = {\n progress: 'Question {current} of {total}',\n previous: 'Previous',\n next: 'Next',\n answer: 'Answer',\n skip: 'Skip',\n cancel: 'Cancel',\n other: 'Other',\n otherPlaceholder: 'Enter another answer',\n preparing: 'Preparing questions…',\n};\n\nlet questionnaireId = 0;\n\n@Component({\n tag: 'ds-agent-questionnaire',\n styleUrl: 'AgentQuestionnaire.css',\n scoped: true,\n})\nexport class AgentQuestionnaire {\n @Element() el!: HTMLElement;\n\n @Prop() requestId!: string;\n @Prop() questions!: AgentQuestion[];\n @Prop() answers: AgentQuestionAnswer[] = [];\n @Prop() status: AgentQuestionnaireStatus = 'ready';\n @Prop() errorMessage?: string;\n @Prop() allowCancel: boolean = false;\n @Prop() labels?: Partial<AgentQuestionnaireLabels>;\n\n @Event() dsAnswer!: EventEmitter<AgentQuestionnaireAnswerEventDetail>;\n @Event() dsCancel!: EventEmitter<AgentQuestionnaireCancelEventDetail>;\n\n @State() private currentStep = 0;\n @State() private drafts: AgentQuestionDrafts = {};\n @State() private validation: Record<string, string> = {};\n\n private readonly instanceId = ++questionnaireId;\n private readonly otherValue = `__ds-agent-questionnaire-other-${this.instanceId}`;\n private answerPending = false;\n private resetScheduled = false;\n private draftRequestId?: string;\n private answersSnapshot: AgentQuestionAnswer[] = [];\n private waitingForRequestAnswers = false;\n\n componentWillLoad() {\n this.draftRequestId = this.requestId;\n this.answersSnapshot = this.answers;\n this.resetDraft();\n }\n\n @Watch('requestId')\n @Watch('questions')\n @Watch('answers')\n handleQuestionnaireInputChange() {\n this.scheduleDraftReset();\n }\n\n @Watch('status')\n handleStatusChange(status: AgentQuestionnaireStatus) {\n if (status !== 'submitting') this.answerPending = false;\n }\n\n @Method()\n async setFocus(): Promise<void> {\n this.focusCurrentControl();\n }\n\n private get copy(): AgentQuestionnaireLabels {\n return { ...DEFAULT_LABELS, ...this.labels };\n }\n\n private get disabled(): boolean {\n return this.status === 'submitting';\n }\n\n private resetDraft(answers = this.answers) {\n this.currentStep = 0;\n this.drafts = createQuestionnaireDrafts(this.questions ?? [], answers ?? []);\n this.validation = {};\n this.answerPending = false;\n }\n\n private scheduleDraftReset() {\n if (this.resetScheduled) return;\n this.resetScheduled = true;\n queueMicrotask(() => {\n this.resetScheduled = false;\n const requestChanged = this.requestId !== this.draftRequestId;\n const answersChanged = this.answers !== this.answersSnapshot;\n if (requestChanged && !answersChanged) {\n this.waitingForRequestAnswers = true;\n } else if (answersChanged) {\n this.waitingForRequestAnswers = false;\n }\n this.resetDraft(this.waitingForRequestAnswers ? [] : this.answers);\n this.draftRequestId = this.requestId;\n this.answersSnapshot = this.answers;\n });\n }\n\n private focusCurrentControl(preferInvalid = false) {\n const focus = () => {\n const invalidControl = preferInvalid\n ? this.el.querySelector<HTMLElement>(\n '[data-question-control][aria-invalid=\"true\"]:not([disabled])'\n )\n : null;\n const control =\n invalidControl ??\n this.el.querySelector<HTMLElement>(\n '[data-question-control]:not([disabled]):not([is-inactive])'\n );\n const action = this.el.querySelector<HTMLElement>(\n '[data-question-action]:not([is-inactive]):not([is-loading])'\n );\n const target = (control ?? action) as\n | (HTMLElement & { setFocus?: () => Promise<void> })\n | null;\n if (target?.setFocus) void target.setFocus();\n else target?.focus();\n };\n focus();\n requestAnimationFrame(focus);\n setTimeout(focus, 0);\n }\n\n private updateDraft(questionId: string, update: Partial<AgentQuestionDraft>) {\n const previous = this.drafts[questionId] ?? {\n value: '',\n otherSelected: false,\n otherText: '',\n skipped: false,\n };\n this.drafts = {\n ...this.drafts,\n [questionId]: { ...previous, ...update, skipped: false },\n };\n if (this.validation[questionId]) {\n const { [questionId]: _removed, ...rest } = this.validation;\n this.validation = rest;\n }\n }\n\n private validate(question: AgentQuestion): boolean {\n const message = validateQuestionDraft(question, this.drafts[question.id]);\n if (!message) return true;\n this.validation = { ...this.validation, [question.id]: message };\n this.focusCurrentControl(true);\n return false;\n }\n\n private move(step: number) {\n this.currentStep = Math.min(Math.max(step, 0), this.questions.length - 1);\n this.focusCurrentControl();\n }\n\n private next(question: AgentQuestion) {\n if (!this.validate(question)) return;\n this.move(this.currentStep + 1);\n }\n\n private skip(question: AgentQuestion) {\n if (question.required) return;\n this.drafts = {\n ...this.drafts,\n [question.id]: {\n ...(this.drafts[question.id] ?? {\n value: '',\n otherSelected: false,\n otherText: '',\n }),\n skipped: true,\n },\n };\n if (this.currentStep < this.questions.length - 1) this.move(this.currentStep + 1);\n else this.submit();\n }\n\n private submit() {\n if (this.disabled || this.answerPending) return;\n const invalidIndex = this.questions.findIndex(question => !this.validateWithoutFocus(question));\n if (invalidIndex >= 0) {\n this.currentStep = invalidIndex;\n this.focusCurrentControl(true);\n return;\n }\n\n this.answerPending = true;\n this.dsAnswer.emit({\n requestId: this.requestId,\n answers: this.questions.map(question =>\n normalizeQuestionAnswer(question, this.drafts[question.id])\n ),\n });\n }\n\n private validateWithoutFocus(question: AgentQuestion): boolean {\n const message = validateQuestionDraft(question, this.drafts[question.id]);\n if (!message) return true;\n this.validation = { ...this.validation, [question.id]: message };\n return false;\n }\n\n private progressLabel(): string {\n return this.copy.progress\n .split('{current}')\n .join(String(this.currentStep + 1))\n .split('{total}')\n .join(String(this.questions.length));\n }\n\n private selectSingle(question: AgentQuestion, value: string) {\n const otherSelected = value === this.otherValue;\n this.updateDraft(question.id, {\n value: otherSelected ? '' : value,\n otherSelected,\n });\n if (otherSelected) {\n requestAnimationFrame(() =>\n this.el.querySelector<HTMLInputElement>('[data-question-other-input]')?.focus()\n );\n }\n }\n\n private renderSingleChoice(question: AgentQuestion, promptId: string, errorId: string) {\n const draft = this.drafts[question.id];\n const value = draft.otherSelected\n ? this.otherValue\n : typeof draft.value === 'string'\n ? draft.value\n : '';\n const options = [\n ...(question.choices ?? []),\n ...(question.allowOther ? [{ value: this.otherValue, label: this.copy.other }] : []),\n ];\n return (\n <div class=\"questionnaire__single-choice\">\n <ds-radio\n data-question-control\n size=\"lg\"\n options={options}\n value={value}\n disabled={this.disabled}\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n ariaLabelledby={promptId}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n onDsChange={(event: CustomEvent<string>) => this.selectSingle(question, event.detail)}\n />\n {draft.otherSelected ? this.renderOtherInput(question, errorId) : null}\n </div>\n );\n }\n\n private renderMultipleChoice(question: AgentQuestion, errorId: string) {\n const draft = this.drafts[question.id];\n const values = Array.isArray(draft.value) ? draft.value : [];\n const detachedForm = `ds-agent-questionnaire-detached-${this.instanceId}`;\n return (\n <div class=\"questionnaire__multiple-choice\">\n {question.choices?.map(choice => (\n <ds-checkbox\n key={choice.value}\n data-question-control\n size=\"lg\"\n label={choice.label}\n description={choice.description}\n value={choice.value}\n checked={values.includes(choice.value)}\n disabled={this.disabled}\n form={detachedForm}\n onDsChange={(event: CustomEvent<boolean>) => {\n this.updateDraft(question.id, {\n value: event.detail\n ? [...values, choice.value]\n : values.filter(value => value !== choice.value),\n });\n }}\n />\n ))}\n {question.allowOther ? (\n <div class=\"questionnaire__other-choice\">\n <ds-checkbox\n data-question-control\n size=\"lg\"\n label={this.copy.other}\n checked={draft.otherSelected}\n disabled={this.disabled}\n form={detachedForm}\n onDsChange={(event: CustomEvent<boolean>) => {\n this.updateDraft(question.id, { otherSelected: event.detail });\n if (event.detail) {\n requestAnimationFrame(() =>\n this.el.querySelector<HTMLInputElement>('[data-question-other-input]')?.focus()\n );\n }\n }}\n />\n {draft.otherSelected ? this.renderOtherInput(question, errorId) : null}\n </div>\n ) : null}\n </div>\n );\n }\n\n private renderOtherInput(question: AgentQuestion, errorId: string) {\n const draft = this.drafts[question.id];\n return (\n <input\n class=\"questionnaire__other-input\"\n data-question-control\n data-question-other-input\n type=\"text\"\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n value={draft.otherText}\n placeholder={this.copy.otherPlaceholder}\n aria-label={this.copy.other}\n aria-invalid={this.validation[question.id] ? 'true' : undefined}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n disabled={this.disabled}\n onInput={(event: Event) =>\n this.updateDraft(question.id, {\n otherText: (event.target as HTMLInputElement).value,\n })\n }\n />\n );\n }\n\n private renderQuestion(question: AgentQuestion) {\n const draft = this.drafts[question.id];\n const errorId = `ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-error`;\n const promptId = `ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-prompt`;\n return (\n <div class=\"questionnaire__body\">\n <div class=\"questionnaire__prompt\">\n <ds-text as=\"h2\" variant=\"text-title-small\" textId={promptId}>\n {question.question}\n </ds-text>\n {question.description ? (\n <ds-text variant=\"text-body-small\" color=\"secondary\">\n {question.description}\n </ds-text>\n ) : null}\n </div>\n {question.type === 'text' ? (\n <textarea\n class=\"questionnaire__text-input\"\n data-question-control\n value={typeof draft.value === 'string' ? draft.value : ''}\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n placeholder={question.placeholder}\n aria-label={question.question}\n aria-invalid={this.validation[question.id] ? 'true' : undefined}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n disabled={this.disabled}\n rows={4}\n onInput={(event: Event) =>\n this.updateDraft(question.id, {\n value: (event.target as HTMLTextAreaElement).value,\n })\n }\n />\n ) : (\n <fieldset\n class=\"questionnaire__choices\"\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n >\n <legend class=\"ds-visually-hidden\">{question.question}</legend>\n {question.type === 'single'\n ? this.renderSingleChoice(question, promptId, errorId)\n : this.renderMultipleChoice(question, errorId)}\n </fieldset>\n )}\n {this.validation[question.id] ? (\n <div id={errorId} class=\"questionnaire__error\" role=\"alert\">\n <ds-icon name=\"ExclamationTriangle\" size=\"xs\" color=\"inherit\" />\n <ds-text variant=\"text-body-small\" color=\"negative\">\n {this.validation[question.id]}\n </ds-text>\n </div>\n ) : null}\n </div>\n );\n }\n\n private renderAnswered() {\n return (\n <div class=\"questionnaire questionnaire--answered\">\n <ol class=\"questionnaire__summary\">\n {this.questions.map(question => (\n <li>\n <ds-text variant=\"text-body-small\" emphasis>\n {question.question}\n </ds-text>\n <ds-text variant=\"text-body-small\" color=\"secondary\">\n {formatQuestionAnswer(\n question,\n this.answers.find(answer => answer.questionId === question.id)\n )}\n </ds-text>\n </li>\n ))}\n </ol>\n </div>\n );\n }\n\n render() {\n if (this.status === 'preparing') {\n return (\n <Host>\n <div class=\"questionnaire questionnaire--preparing\" role=\"status\">\n <ds-loader size=\"sm\" />\n <ds-text variant=\"text-body-medium\">{this.copy.preparing}</ds-text>\n </div>\n </Host>\n );\n }\n if (!this.questions?.length) return null;\n if (this.status === 'answered') return <Host>{this.renderAnswered()}</Host>;\n\n const question = this.questions[this.currentStep];\n const last = this.currentStep === this.questions.length - 1;\n const canSkip = Boolean(question.skippable && !question.required);\n return (\n <Host>\n <section\n class={{\n questionnaire: true,\n 'questionnaire--submitting': this.disabled,\n 'questionnaire--error': this.status === 'error',\n }}\n aria-busy={this.disabled ? 'true' : undefined}\n aria-label={question.question}\n >\n <header class=\"questionnaire__header\">\n <ds-text variant=\"text-caption\" color=\"secondary\">\n {this.progressLabel()}\n </ds-text>\n {this.allowCancel ? (\n <ds-tooltip label={this.copy.cancel} side=\"top\" size=\"sm\">\n <ds-button-unfilled\n data-question-action\n variant=\"icon\"\n icon=\"Cross\"\n size=\"sm\"\n aria-label={this.copy.cancel}\n hasBorder={false}\n isInactive={this.disabled}\n onDsClick={() => this.dsCancel.emit({ requestId: this.requestId })}\n />\n </ds-tooltip>\n ) : null}\n </header>\n {this.renderQuestion(question)}\n {this.status === 'error' && this.errorMessage ? (\n <div class=\"questionnaire__submission-error\" role=\"alert\">\n <ds-icon name=\"ExclamationTriangle\" size=\"xs\" color=\"inherit\" />\n <ds-text variant=\"text-body-small\" color=\"negative\">\n {this.errorMessage}\n </ds-text>\n </div>\n ) : null}\n <footer class=\"questionnaire__actions\">\n <div class=\"questionnaire__actions-leading\">\n {this.currentStep > 0 ? (\n <div class=\"questionnaire__action-item\">\n <ds-button-unfilled\n data-question-action\n label={this.copy.previous}\n size=\"sm\"\n width=\"fill\"\n isInactive={this.disabled}\n onDsClick={() => this.move(this.currentStep - 1)}\n />\n </div>\n ) : null}\n {canSkip ? (\n <div class=\"questionnaire__action-item\">\n <ds-button-unfilled\n data-question-action\n label={this.copy.skip}\n size=\"sm\"\n width=\"fill\"\n hasBorder={false}\n isInactive={this.disabled}\n onDsClick={() => this.skip(question)}\n />\n </div>\n ) : null}\n </div>\n <div class=\"questionnaire__action-item questionnaire__action-item--primary\">\n <ds-button-filled\n data-question-action\n label={last ? this.copy.answer : this.copy.next}\n size=\"sm\"\n width=\"fill\"\n isLoading={this.disabled}\n onDsClick={() => (last ? this.submit() : this.next(question))}\n />\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{p as o,H as i,c as e,h as s,a as t,t as r}from"./index.js";import{A as a,r as d}from"./p-B8ZonS3S.js";import{r as n,A as c}from"./p-etg-Uk1u.js";import{b as l,C as u}from"./p-xtGGIZmU.js";import{d as p}from"./p-ZhP2tVmM.js";import{d as g}from"./p-Dzndkdx5.js";import{d as h}from"./p-7V1AhetH.js";import{d as f}from"./p-0qY_HDId.js";import{d as v}from"./p-DjkUFlDW.js";import{d as m}from"./p-Di5FH7eh.js";import{d as b}from"./p-0XTyQNRG.js";import{d as x}from"./p-DwbcNDJF.js";import{d as w}from"./p-CYzFfFcH.js";import{r as y}from"./p-CochmPyg.js";import{b as _,T as k,a as z}from"./p-CeXf9-X3.js";const C=()=>`.sc-ds-data-group-h,.sc-ds-data-group:where(.ds-table),.sc-ds-data-group:where(.tooltip-popup),.sc-ds-data-group:where(.ds-radius){--ds-radius-control:var(--dimension-radius-025);--ds-radius-card:var(--dimension-radius-050);--ds-radius-modal:var(--dimension-radius-050);--ds-radius-menu:var(--dimension-radius-075);--ds-radius-tooltip-control:var(--dimension-radius-025);--ds-radius-tooltip-menu:var(--dimension-radius-075);--ds-radius-table:var(--dimension-radius-050)}@media (forced-colors: active){.sc-ds-data-group:root,.sc-ds-data-group-h,.ds-forced-colors-scope.sc-ds-data-group{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-data-group-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-data-group-h,.ds-focus-ring.sc-ds-data-group,.ds-focus-ring-inset.sc-ds-data-group-h,.ds-focus-ring-inset.sc-ds-data-group{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-data-group-h:focus-visible,.ds-focus-ring.sc-ds-data-group:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-data-group-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-data-group{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-data-group-h:focus-visible,.ds-focus-ring-inset.sc-ds-data-group:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-data-group-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-data-group:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-group-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-group{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-group-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-group::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-data-group-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-data-group:root,.sc-ds-data-group-h,.ds-forced-colors-scope.sc-ds-data-group{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}@media (forced-colors: active){.sc-ds-data-group:root,.sc-ds-data-group-h,.ds-forced-colors-scope.sc-ds-data-group{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-interaction-fill.sc-ds-data-group-h,.ds-interaction-fill.sc-ds-data-group{position:var(--ds-interaction-position, relative);z-index:var(--ds-interaction-z-index, 0);cursor:default;--ds-interaction-hover:var(--color-interaction-hover);--ds-interaction-pressed:var(--color-interaction-pressed);--ds-interaction-active:var(--color-interaction-active-brand);--ds-interaction-border-width:0px;--ds-interaction-border-color:transparent;--ds-interaction-divider-width:0px;--ds-interaction-divider-color:transparent;--ds-interaction-divider-inline-start-width:0px;--ds-interaction-divider-inline-start-color:transparent;--ds-interaction-divider-inline-end-width:0px;--ds-interaction-divider-inline-end-color:transparent}.ds-interaction-fill.sc-ds-data-group-h::before,.ds-interaction-fill.sc-ds-data-group::before,.ds-interaction-fill.sc-ds-data-group-h::after,.ds-interaction-fill.sc-ds-data-group::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-data-group-h::before,.ds-interaction-fill.sc-ds-data-group::before{z-index:1}.ds-interaction-fill.sc-ds-data-group-h::after,.ds-interaction-fill.sc-ds-data-group::after{z-index:3;box-shadow:inset 0 calc(-1 * var(--ds-interaction-divider-width)) 0 var(--ds-interaction-divider-color), inset var(--ds-interaction-divider-inline-start-width) 0 0 var(--ds-interaction-divider-inline-start-color), inset calc(-1 * var(--ds-interaction-divider-inline-end-width)) 0 0 var(--ds-interaction-divider-inline-end-color), inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-data-group-h,.ds-interaction-fill--bordered.sc-ds-data-group{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-data-group-h::before,.ds-interaction-fill--selected.sc-ds-data-group::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-data-group-h,.ds-interaction-fill--selected.sc-ds-data-group{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-data-group-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-data-group:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-data-group-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-data-group:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-data-group-h::after,.ds-interaction-fill--grouped.sc-ds-data-group::after,.ds-interaction-fill--grouped.sc-ds-data-group-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-data-group:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-data-group-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-data-group:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-data-group-h,.ds-interaction-fill--grouped.sc-ds-data-group{--ds-interaction-divider-width:var(--ds-interaction-group-divider-width, 0px);--ds-interaction-divider-color:var(--ds-interaction-group-divider-color, transparent);--ds-interaction-divider-inline-start-width:var( --ds-interaction-group-divider-inline-start-width, 0px );--ds-interaction-divider-inline-start-color:var( --ds-interaction-group-divider-inline-start-color, transparent );--ds-interaction-divider-inline-end-width:var( --ds-interaction-group-divider-inline-end-width, 0px );--ds-interaction-divider-inline-end-color:var( --ds-interaction-group-divider-inline-end-color, transparent )}.ds-interaction-fill.sc-ds-data-group-h>.ds-interaction-fill__content.sc-ds-data-group,.ds-interaction-fill.sc-ds-data-group>.ds-interaction-fill__content.sc-ds-data-group,.ds-interaction-fill__content.sc-ds-data-group{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-data-group-h,.ds-interaction-fill--on-faint.sc-ds-data-group{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-data-group-h,.ds-interaction-fill--on-medium.sc-ds-data-group{--ds-interaction-hover:var(--color-interaction-on-medium-background-hover);--ds-interaction-pressed:var(--color-interaction-on-medium-background-pressed);--ds-interaction-active:var(--color-interaction-on-medium-background-active);--ds-focus-ring-color:var(--color-interaction-on-medium-background-focus)}.ds-interaction-fill--on-bold.sc-ds-data-group-h,.ds-interaction-fill--on-bold.sc-ds-data-group{--ds-interaction-hover:var(--color-interaction-on-bold-background-hover);--ds-interaction-pressed:var(--color-interaction-on-bold-background-pressed);--ds-interaction-active:var(--color-interaction-on-bold-background-active);--ds-focus-ring-color:var(--color-interaction-on-bold-background-focus)}.ds-interaction-fill--on-strong.sc-ds-data-group-h,.ds-interaction-fill--on-strong.sc-ds-data-group{--ds-interaction-hover:var(--color-interaction-on-strong-background-hover);--ds-interaction-pressed:var(--color-interaction-on-strong-background-pressed);--ds-interaction-active:var(--color-interaction-on-strong-background-active);--ds-focus-ring-color:var(--color-interaction-on-strong-background-focus)}.ds-interaction-fill--on-translucent.sc-ds-data-group-h,.ds-interaction-fill--on-translucent.sc-ds-data-group{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active-brand);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-data-group-h,.ds-interaction-fill--on-inverted.sc-ds-data-group{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active-brand);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-data-group-h,.ds-interaction-fill--on-media.sc-ds-data-group{--ds-interaction-hover:var(--color-media-interaction-hover);--ds-interaction-pressed:var(--color-media-interaction-pressed);--ds-interaction-active:var(--color-media-interaction-active);--ds-focus-ring-color:var(--color-media-interaction-focus)}.ds-interaction-fill--on-always-dark.sc-ds-data-group-h,.ds-interaction-fill--on-always-dark.sc-ds-data-group{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-data-group-h,.ds-interaction-fill--on-navigation.sc-ds-data-group{--ds-interaction-hover:var(--color-navigation-interaction-hover);--ds-interaction-pressed:var(--color-navigation-interaction-pressed);--ds-interaction-active:var(--color-navigation-interaction-active);--ds-focus-ring-color:var(--color-navigation-interaction-focus)}.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-data-group-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-data-group:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-data-group-h::after,.ds-interaction-fill.sc-ds-data-group::after{box-shadow:none;outline:var(--ds-interaction-border-width) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--ds-interaction-border-width))}.ds-interaction-fill--surface-open.sc-ds-data-group-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-data-group:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.ds-interaction-fill--selected.sc-ds-data-group-h::before,.ds-interaction-fill--selected.sc-ds-data-group::before{background:transparent;outline:var(--dimension-stroke-width-025) solid var(--ds-forced-color-selected);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}}@media (forced-colors: active) and (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-data-group-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-data-group:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline-color:var(--ds-forced-color-selected);outline-width:var(--dimension-stroke-width-012)}}@media (forced-colors: active){.sc-ds-data-group:root,.sc-ds-data-group-h,.ds-forced-colors-scope.sc-ds-data-group{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-control-inactive.sc-ds-data-group-h,.ds-control-inactive.sc-ds-data-group{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-data-group-h,.ds-control-inactive.sc-ds-data-group{color:var(--ds-forced-color-disabled);opacity:1}}.ds-control--lg.sc-ds-data-group,.ds-control--lg.sc-ds-data-group-h,.ds-control--md.sc-ds-data-group-h,.ds-control--md.sc-ds-data-group,.ds-control--sm.sc-ds-data-group-h,.ds-control--sm.sc-ds-data-group,.ds-control--xs.sc-ds-data-group-h,.ds-control--xs.sc-ds-data-group{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-data-group-h,.ds-control--lg.sc-ds-data-group{--ds-control-height:var(--dimension-size-500);--ds-control-icon:var(--dimension-iconography-lg);--ds-control-padding-inline:var(--dimension-space-100);--ds-control-label-inset:var(--dimension-space-050);--ds-control-gap:var(--dimension-space-050)}.ds-control--md.sc-ds-data-group-h,.ds-control--md.sc-ds-data-group{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050)}.ds-control--sm.sc-ds-data-group-h,.ds-control--sm.sc-ds-data-group{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025)}.ds-control--xs.sc-ds-data-group-h,.ds-control--xs.sc-ds-data-group{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0}.ds-chrome-space--sm.sc-ds-data-group-h,.ds-chrome-space--sm.sc-ds-data-group{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-data-group-h,.ds-chrome-space--md.sc-ds-data-group{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-data-group-h,.ds-chrome-space--lg.sc-ds-data-group{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-data-group-h,.ds-chrome-row.sc-ds-data-group,.ds-chrome-column.sc-ds-data-group-h,.ds-chrome-column.sc-ds-data-group,.ds-chrome-grid.sc-ds-data-group-h,.ds-chrome-grid.sc-ds-data-group{display:flex;box-sizing:border-box;gap:var(--ds-chrome-gap, var(--dimension-space-100));padding:var(--ds-chrome-padding, var(--dimension-space-100))}.ds-chrome-row.sc-ds-data-group-h,.ds-chrome-row.sc-ds-data-group{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-data-group-h,.ds-chrome-column.sc-ds-data-group{flex-direction:column}.ds-chrome-grid.sc-ds-data-group-h,.ds-chrome-grid.sc-ds-data-group{display:grid;align-items:center}.ds-control-frame.sc-ds-data-group{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-section-heading.sc-ds-data-group{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-data-group{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-data-group{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-data-group{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-data-group{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-empty-region.sc-ds-data-group{display:flex;flex:1 1 auto;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;min-height:0}.ds-empty-region--padded.sc-ds-data-group{padding:var(--dimension-space-200)}.sc-ds-data-group:where(.ds-text-decoration,.ds-text-action).sc-ds-data-group{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text-action.sc-ds-data-group{--ds-text-action-foreground:var(--color-foreground-bold-brand);--ds-text-decoration-color:var(--ds-text-action-foreground);color:var(--ds-text-action-foreground);text-decoration-line:none}.ds-text-action--on-medium.sc-ds-data-group{--ds-text-action-foreground:var(--color-foreground-on-medium-background-primary);--ds-text-decoration-color:var(--color-foreground-on-medium-background-secondary);text-decoration-line:underline}.ds-text-action--on-strong.sc-ds-data-group{--ds-text-action-foreground:var(--color-foreground-on-strong-background-primary);--ds-text-decoration-color:var(--color-foreground-on-strong-background-secondary);text-decoration-line:underline}.ds-text-action--on-bold.sc-ds-data-group{--ds-text-action-foreground:var(--color-foreground-on-bold-background-primary);--ds-text-decoration-color:var(--color-foreground-on-bold-background-secondary);text-decoration-line:underline}@media (hover: hover) and (pointer: fine){.ds-text-action.sc-ds-data-group:hover{text-decoration-line:underline}}@media (forced-colors: active){.ds-text-action.sc-ds-data-group{text-decoration-line:underline;text-decoration-color:currentcolor}}.ds-choice-popup.sc-ds-data-group{box-sizing:border-box;display:flex;flex-direction:column;min-width:var(--ds-choice-popup-min-inline-size, var(--dimension-menu-width-xs));max-width:min(var(--dimension-panel-width-lg), calc(100vw - var(--dimension-space-200)));max-height:calc(100vh - var(--dimension-space-200));overflow:hidden;inset:auto;margin:0;padding:0;border:0;background-color:var(--color-background-primary);border-radius:var(--ds-radius-menu);box-shadow:var(--effect-shadow-elevated-floating);color:var(--color-foreground-secondary);animation:dsChoiceFadeIn var(--effect-motion-short-2) forwards;backface-visibility:hidden;will-change:transform;text-align:start}.ds-choice-popup.sc-ds-data-group::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:var(--effect-highlight-elevated-floating)}.ds-choice-popup--closing.sc-ds-data-group{animation:dsChoiceFadeOut var(--effect-motion-short-2) forwards}@keyframes dsChoiceFadeIn{from{opacity:0;transform:inherit scale(0.97)}to{opacity:1}}@keyframes dsChoiceFadeOut{from{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.ds-choice-popup.sc-ds-data-group{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-data-group{opacity:0}}@media (forced-colors: active){.ds-choice-popup.sc-ds-data-group{outline:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);outline-offset:calc(-1 * var(--dimension-stroke-width-012))}.ds-choice-popup.sc-ds-data-group::after{box-shadow:none}}.ds-choice-list.sc-ds-data-group{display:flex;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain}.ds-choice-section--divided.sc-ds-data-group{border-bottom:var(--dimension-stroke-width-015) solid var(--color-border-tertiary)}ds-text.ds-choice-section__header.sc-ds-data-group{text-align:start;-webkit-user-select:none;user-select:none}.ds-choice-section--headed-after-first.sc-ds-data-group{margin-block-start:var(--dimension-space-050)}.select-option-row.sc-ds-data-group{display:flex;flex-direction:column;min-width:0}.ds-choice-item.sc-ds-data-group{width:100%;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));background:transparent;cursor:default;-webkit-user-select:none;user-select:none;text-align:left;color:inherit}.ds-choice-item.sc-ds-data-group:has(.ds-choice-item__subtext){height:auto;min-height:var(--ds-control-height, var(--dimension-size-400));padding-block:var(--ds-control-padding-inline, var(--dimension-space-075));align-items:flex-start}.ds-choice-item.ds-control--xs.sc-ds-data-group:has(.ds-choice-item__subtext){padding-block:0}.ds-choice-item__content.sc-ds-data-group{display:flex;flex:1;flex-direction:column;gap:var(--dimension-space-025);min-width:0}ds-text.ds-choice-item__label.sc-ds-data-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ds-text.ds-choice-item__subtext.sc-ds-data-group{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ds-choice-item__icon.sc-ds-data-group,.ds-choice-item__suffix.sc-ds-data-group{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md));pointer-events:none}.ds-choice-item.ds-interaction-fill--selected.sc-ds-data-group .ds-choice-item__icon.sc-ds-data-group{color:var(--color-foreground-primary)}.ds-choice-item__tag.sc-ds-data-group{flex-shrink:0;pointer-events:none}.ds-choice-empty.sc-ds-data-group,.ds-choice-loading.sc-ds-data-group{min-height:var(--dimension-size-600);padding:var(--dimension-space-100)}.ds-choice-footer.sc-ds-data-group{position:relative;box-sizing:border-box;padding-block:var(--dimension-space-050)}.ds-choice-footer.sc-ds-data-group::before{content:'';position:absolute;inset:0 0 auto;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.ds-choice-footer__content.sc-ds-data-group{display:flex;align-items:center;justify-content:space-between;column-gap:var(--dimension-space-050);box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400))}.ds-choice-footer__summary.sc-ds-data-group,.ds-choice-footer__summary-measure.sc-ds-data-group,.ds-choice-footer__clear.sc-ds-data-group ds-text.sc-ds-data-group,.ds-choice-footer__action.sc-ds-data-group ds-text.sc-ds-data-group{padding-inline:calc( var(--dimension-space-050) + var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-choice-footer__summary.sc-ds-data-group,.ds-choice-footer__summary-measure.sc-ds-data-group,.ds-choice-footer__clear.sc-ds-data-group,.ds-choice-footer__action.sc-ds-data-group{white-space:nowrap}.ds-choice-footer__summary-measure.sc-ds-data-group{position:absolute;visibility:hidden;pointer-events:none}.ds-choice-footer__clear.sc-ds-data-group,.ds-choice-footer__action.sc-ds-data-group{appearance:none;display:inline-flex;align-items:center;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;cursor:default}@media (forced-colors: active){.ds-choice-section--divided.sc-ds-data-group{border-bottom-color:var(--ds-forced-color-content)}.ds-choice-footer.sc-ds-data-group::before{background-color:var(--ds-forced-color-content)}}.ds-control-frame.sc-ds-data-group{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-section-heading.sc-ds-data-group{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-data-group{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-data-group{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-data-group{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-data-group{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-table-caption-control.sc-ds-data-group-h{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.ds-table-caption-control.ds-table-caption-control--compact.sc-ds-data-group-h{flex:0 0 auto;width:var(--ds-control-height, var(--dimension-size-400));height:var(--ds-control-height, var(--dimension-size-400));min-width:var(--ds-control-height, var(--dimension-size-400));min-height:var(--ds-control-height, var(--dimension-size-400));max-width:var(--ds-control-height, var(--dimension-size-400));inline-size:var(--ds-control-height, var(--dimension-size-400));min-inline-size:var(--ds-control-height, var(--dimension-size-400));max-inline-size:var(--ds-control-height, var(--dimension-size-400))}.ds-table-caption-control.ds-table-caption-control--compact.sc-ds-data-group-h .trigger.sc-ds-data-group{justify-content:center;inline-size:100%;min-inline-size:100%;height:100%;padding-inline:0}.ds-table-caption-control.ds-table-caption-control--compact.sc-ds-data-group-h .trigger--has-value.sc-ds-data-group:not(.trigger--label-placeholder){--ds-select-prefix-fg:var(--ds-select-fg-active)}@container ds-table (max-width: 899px){.sc-ds-data-group-h.ds-table-caption-control{flex:0 0 auto;inline-size:var(--ds-control-height, var(--dimension-size-400));min-inline-size:var(--ds-control-height, var(--dimension-size-400));max-inline-size:var(--ds-control-height, var(--dimension-size-400))}.sc-ds-data-group-h.ds-table-caption-control .trigger{justify-content:center;inline-size:100%;min-inline-size:100%;padding-inline:0}.sc-ds-data-group-h.ds-table-caption-control .trigger--has-value:not(.trigger--label-placeholder){--ds-select-prefix-fg:var(--ds-select-fg-active)}}.sc-ds-data-group-h{display:inline-flex;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs)}[hidden].sc-ds-data-group-h{display:none}.data-group__body.sc-ds-data-group{display:grid;grid-template-columns:var(--dimension-menu-width-xs) var(--dimension-menu-width-sm);min-height:calc(var(--dimension-size-800) * 4 + var(--dimension-space-150));max-height:calc(100vh - var(--dimension-size-800) - var(--dimension-size-600))}.data-group__data-pane.sc-ds-data-group,.data-group__order-pane.sc-ds-data-group{display:flex;min-width:0;min-height:0;flex-direction:column}.data-group__data-pane.sc-ds-data-group{border-inline-end:var(--dimension-stroke-width-012) solid var(--color-border-tertiary)}.data-group__list.sc-ds-data-group{flex:1 1 auto}.data-group__empty.sc-ds-data-group{flex:1 1 auto}.data-group__footer.sc-ds-data-group{flex:0 0 auto}.data-group__footer.sc-ds-data-group .ds-choice-footer__content.sc-ds-data-group{justify-content:flex-start}.data-group__footer[aria-hidden='true'].sc-ds-data-group::before{visibility:hidden}.data-group__footer[aria-hidden='true'].sc-ds-data-group .ds-choice-footer__content.sc-ds-data-group{visibility:hidden}@media (forced-colors: active){.data-group__data-pane.sc-ds-data-group{border-inline-end-color:var(--ds-forced-color-content)}}.data-preferences-embedded.sc-ds-data-group{display:flex;flex-direction:column;min-width:0;min-height:0;color:var(--color-foreground-secondary)}.sc-ds-data-group-h:has(.data-preferences-embedded){display:block;max-inline-size:none}.data-preferences-embedded.sc-ds-data-group .data-group__body.sc-ds-data-group{grid-template-columns:min(var(--dimension-menu-width-xs), 40%) minmax(0, 1fr)}.data-group-vertical.sc-ds-data-group-h .data-group__body.sc-ds-data-group{grid-template-columns:minmax(0, 1fr)}.data-group-vertical.sc-ds-data-group-h .data-group__data-pane.sc-ds-data-group{border-inline-end:0}.data-group-vertical.sc-ds-data-group-h .data-group__footer.sc-ds-data-group{display:none}`;const j=[{label:"Ascending",direction:"asc"},{label:"Descending",direction:"desc"}];let D=0;const T=o(class o extends i{constructor(o){super();if(o!==false){this.__registerHost()}this.dsGroupChange=e(this,"dsGroupChange",7);this.dsClear=e(this,"dsClear",7);this.dsOpenChange=e(this,"dsOpenChange",7);this.hasBorder=true;this.vertical=false;this.embedded=false;this.options=[];this.grouping=null;this.ariaLabel=null;this.open=false;this.emptyMessage="Select a group to choose its order.";this.clearLabel="Clear";this.shouldRender=false;this.closing=false;this.positionReady=false;this.pos={x:0,y:0};this.focusRingVisible=false;this.componentId=`ds-data-group-${++D}`;this.triggerId=`${this.componentId}-trigger`;this.popupId=`${this.componentId}-popup`;this.triggerElement=null;this.pendingInitialFocusVisible=false;this.closeTimer=null;this.position=new a({getAnchor:()=>this.triggerElement,getPopup:()=>this.el.querySelector(".data-group-popup"),getOwnerDocument:()=>this.el.ownerDocument,measure:(o,i)=>{if(!this.open)return null;const e=y(k.space050,k.space050);return{anchorRect:o.getBoundingClientRect(),popupWidth:i.offsetWidth||this.popupFallbackWidth,popupHeight:i.offsetHeight||this.popupFallbackHeight,side:"bottom",align:"end",sideOffsetPx:y(z.space050,k.space050),alignOffsetPx:n({align:"end",alignOffsetPx:0,sectionInsetPx:e}),viewportPadPx:y(k.space050,k.space050),viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,collisionRect:d(o)}},apply:({x:o,y:i})=>{this.pos={x:o,y:i}},onReady:()=>{this.positionReady=true},liveUpdate:"double-frame",observeResize:true,topLayer:true});this.interaction=new c({getAnchor:()=>this.triggerElement,getPopup:()=>this.el.querySelector(".data-group-popup"),getOwnerDocument:()=>this.el.ownerDocument,onOutsideActivation:()=>this.close()})}componentDidLoad(){if(this.open)this.onOpenChange(true)}disconnectedCallback(){this.position.unobserve();this.interaction.disconnect();if(this.closeTimer)clearTimeout(this.closeTimer)}onOpenChange(o){if(this.embedded)return;if(o){this.teardown();this.shouldRender=true;this.closing=false;this.positionReady=false;this.focusRingVisible=this.pendingInitialFocusVisible;this.interaction.connect();this.position.observe();this.position.schedule((()=>this.focusInitialDataPoint()));return}if(!this.shouldRender)return;this.position.cancel();this.closing=true;this.interaction.disconnect();this.position.unobserve();const i=_(k.motionShort2,k.animationDurationShort3);if(i<=0)this.finishClose();else this.closeTimer=setTimeout((()=>this.finishClose()),i)}handleKeyDown(o){if(this.embedded&&(o.key==="Escape"||o.key==="Tab"))return;if(!this.shouldRender&&!this.embedded||this.closing)return;if(o.key==="Escape"){o.preventDefault();this.close();return}if(o.key!=="Tab"||!this.interaction.tabLeavesPopup(o))return;o.preventDefault();this.close(false);this.interaction.moveFocusAfterTab(o.shiftKey)}get popupFallbackWidth(){return y(k.menuWidthLg,k.menuWidthLg)}get popupFallbackHeight(){return y(k.menuFallbackHeight,k.menuFallbackHeight)}teardown(){this.position.unobserve();this.interaction.disconnect();if(this.closeTimer){clearTimeout(this.closeTimer);this.closeTimer=null}}toggle(o=false){if(this.open){this.close();return}this.pendingInitialFocusVisible=o;this.open=true;this.dsOpenChange.emit(true);this.onOpenChange(true)}close(o=true){if(o)this.interaction.focusAnchor();this.open=false;this.dsOpenChange.emit(false);this.onOpenChange(false)}finishClose(){const o=this.el.querySelector(".data-group-popup");if(o?.matches(":popover-open"))o.hidePopover();this.shouldRender=false;this.closing=false;this.closeTimer=null}focusInitialDataPoint(){requestAnimationFrame((()=>{const o=this.grouping?this.el.querySelector(`[data-group-value="${CSS.escape(this.grouping.fieldId)}"] [role="option"]`):null;const i=o??this.el.querySelector('[data-group-value] [role="option"]:not([aria-disabled="true"])');i?.focus();this.pendingInitialFocusVisible=false}))}selectData(o){if(o.value==="__none__"){this.dsClear.emit();return}if(o.isInactive)return;if(this.grouping?.fieldId===o.value){this.dsGroupChange.emit({...this.grouping});return}const i=o.orderOptions?.[0];this.dsGroupChange.emit({fieldId:o.value,direction:i?.direction??"asc",...i?.orderBy?{orderBy:i.orderBy}:{}})}get activeOrderOptions(){const o=this.options.find((o=>o.value===this.grouping?.fieldId))?.orderOptions;return o?.length?o:j}get selectedOrderIndex(){if(!this.grouping)return-1;const o=this.activeOrderOptions.findIndex((o=>o.direction===this.grouping?.direction&&o.orderBy===this.grouping?.orderBy));if(o>=0)return o;if(this.grouping.orderBy===undefined){return this.activeOrderOptions.findIndex((o=>o.direction===this.grouping?.direction))}return-1}selectOrder(o,i){if(!this.grouping||this.selectedOrderIndex===i)return;const e={fieldId:this.grouping.fieldId,direction:o.direction};if(o.orderBy)e.orderBy=o.orderBy;this.dsGroupChange.emit(e)}moveFocus(o,i,e,s){if(s&&(o.key==="ArrowLeft"||o.key==="ArrowRight")){o.preventDefault();this.focusRingVisible=true;this.el.querySelector(s)?.focus();return}if(!["ArrowDown","ArrowUp","Home","End"].includes(o.key))return;o.preventDefault();const t=Array.from(this.el.querySelectorAll(i)).filter((o=>o.getAttribute("aria-disabled")!=="true"));if(!t.length)return;let r;if(o.key==="Home")r=0;else if(o.key==="End")r=t.length-1;else r=(e+(o.key==="ArrowDown"?1:-1)+t.length)%t.length;this.focusRingVisible=true;t[r]?.focus()}renderDataOption(o,i){const e=o.value==="__none__"?!this.grouping:o.value===this.grouping?.fieldId;return s(u,{id:`${this.componentId}-data-${i}`,option:{...o},selected:e,active:e,focusRingVisible:this.focusRingVisible,usesSubtext:Boolean(o.description),tabIndex:e||!this.grouping&&i===0?0:-1,onHover:()=>{this.focusRingVisible=false},onSelect:()=>this.selectData(o),onKeyDown:i=>{if(i.key==="Enter"||i.key===" "){i.preventDefault();this.selectData(o);return}this.moveFocus(i,'[data-group-value] [role="option"]',this.options.filter((o=>!o.isInactive)).findIndex((i=>i.value===o.value)),this.grouping?`[data-group-order-index="${this.selectedOrderIndex}"] [role="option"]`:undefined)}})}renderOrder(o,i){const e=i===this.selectedOrderIndex;return s(u,{id:`${this.componentId}-order-${i}`,option:{label:o.label,value:String(i)},selected:e,active:e,focusRingVisible:this.focusRingVisible,usesSubtext:false,tabIndex:e?0:-1,onHover:()=>{this.focusRingVisible=false},onSelect:()=>this.selectOrder(o,i),onKeyDown:e=>{if(e.key==="Enter"||e.key===" "){e.preventDefault();this.selectOrder(o,i);return}this.moveFocus(e,'[data-group-order-index] [role="option"]',i,`[data-group-value="${CSS.escape(this.grouping?.fieldId??"")}"] [role="option"]`)}})}render(){const o=this.ariaLabel?.trim()||"Group table";const i={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,zIndex:"9998",visibility:this.positionReady?"visible":"hidden"};return s(t,{key:"510911b45648afa8340d45751d092a918ff92ff7",class:{"data-group-vertical":this.vertical},hidden:this.options.length===0?true:undefined},this.options.length&&!this.embedded?s("ds-button-unfilled",{hasBorder:this.hasBorder,ref:o=>{this.triggerElement=o??null},id:this.triggerId,variant:"icon-label",size:"md",icon:"SectionList",label:"Group",labelEmphasis:false,pressScale:false,"aria-label":o,haspopup:"dialog",collapseLabel:true,expanded:this.open,surfaceOpen:this.open||this.closing,controls:this.popupId,onDsClick:o=>this.toggle(o.detail.detail===0)}):null,this.shouldRender||this.embedded?s("div",{id:this.popupId,popover:this.embedded?undefined:"manual",class:{"data-group-popup":true,"ds-choice-popup":!this.embedded,"data-preferences-embedded":this.embedded,"ds-choice-popup--closing":this.closing},style:this.embedded?undefined:i,role:"dialog","aria-label":o},s("div",{class:"data-group__body"},s("div",{class:"data-group__data-pane"},s(l,{heading:"Data",ariaLabel:"Group data",className:"data-group__list"},this.vertical&&this.renderDataOption({label:"No grouping",value:"__none__"},-1),this.options.map(((o,i)=>s("div",{"data-group-value":o.value},this.renderDataOption(o,i))))),s("div",{hidden:this.vertical,class:"data-group__footer ds-choice-footer","aria-hidden":!this.grouping?"true":undefined},s("div",{class:"ds-choice-footer__content ds-control--md"},this.grouping?s("button",{class:"ds-choice-footer__clear ds-text-action ds-focus-ring",type:"button",onClick:()=>this.dsClear.emit()},s("ds-text",{as:"span",variant:"text-body-medium",color:"inherit"},this.clearLabel)):null))),s("div",{class:"data-group__order-pane"},this.grouping?s(l,{heading:"Order",ariaLabel:"Group order",className:"data-group__list"},this.activeOrderOptions.map(((o,i)=>s("div",{"data-group-order-index":i},this.renderOrder(o,i))))):s("div",{class:"data-group__empty ds-choice-empty ds-empty-region"},s("ds-empty-state",{body:this.emptyMessage}))))):null)}get el(){return this}static get watchers(){return{open:[{onOpenChange:0}]}}static get style(){return C()}},[2,"ds-data-group",{hasBorder:[4,"has-border"],vertical:[4],embedded:[4],options:[16],grouping:[16],ariaLabel:[1,"aria-label"],open:[1028],emptyMessage:[1,"empty-message"],clearLabel:[1,"clear-label"],shouldRender:[32],closing:[32],positionReady:[32],pos:[32],focusRingVisible:[32]},[[0,"keydown","handleKeyDown"]],{open:[{onOpenChange:0}]}]);function O(){if(typeof customElements==="undefined"){return}const o=["ds-data-group","ds-badge","ds-button-unfilled","ds-divider","ds-empty-state","ds-icon","ds-input","ds-loader","ds-text","ds-tooltip"];o.forEach((o=>{switch(o){case"ds-data-group":if(!customElements.get(r(o))){customElements.define(r(o),T)}break;case"ds-badge":if(!customElements.get(r(o))){p()}break;case"ds-button-unfilled":if(!customElements.get(r(o))){g()}break;case"ds-divider":if(!customElements.get(r(o))){h()}break;case"ds-empty-state":if(!customElements.get(r(o))){f()}break;case"ds-icon":if(!customElements.get(r(o))){v()}break;case"ds-input":if(!customElements.get(r(o))){m()}break;case"ds-loader":if(!customElements.get(r(o))){b()}break;case"ds-text":if(!customElements.get(r(o))){x()}break;case"ds-tooltip":if(!customElements.get(r(o))){w()}break}}))}O();export{T as D,O as d};
|
|
2
|
+
//# sourceMappingURL=p-Dw9sE6Iw.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["dataGroupCss","DEFAULT_ORDER_OPTIONS","label","direction","tableGroupSeq","DataGroup","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","hasBorder","vertical","embedded","options","grouping","ariaLabel","open","emptyMessage","clearLabel","shouldRender","closing","positionReady","pos","x","y","focusRingVisible","componentId","triggerId","popupId","triggerElement","pendingInitialFocusVisible","closeTimer","position","AnchoredPositionController","getAnchor","getPopup","el","querySelector","getOwnerDocument","ownerDocument","measure","anchor","popup","sectionInsetPx","resolveCssLengthPx","TOKEN_DEFAULTS","space050","anchorRect","getBoundingClientRect","popupWidth","offsetWidth","popupFallbackWidth","popupHeight","offsetHeight","popupFallbackHeight","side","align","sideOffsetPx","TOKEN_CSS_LENGTHS","alignOffsetPx","resolveChoicePopupAlignOffset","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","liveUpdate","observeResize","topLayer","interaction","AnchoredOverlayInteractionController","onOutsideActivation","close","componentDidLoad","onOpenChange","disconnectedCallback","unobserve","disconnect","clearTimeout","isOpen","teardown","connect","observe","schedule","focusInitialDataPoint","cancel","duration","resolveMotionTimeMs","motionShort2","animationDurationShort3","finishClose","setTimeout","handleKeyDown","event","key","preventDefault","tabLeavesPopup","moveFocusAfterTab","shiftKey","menuWidthLg","menuFallbackHeight","toggle","fromKeyboard","dsOpenChange","emit","restoreFocus","focusAnchor","matches","hidePopover","requestAnimationFrame","selected","CSS","escape","fieldId","initial","focus","selectData","option","value","dsClear","isInactive","dsGroupChange","initialOrder","orderOptions","orderBy","activeOrderOptions","configured","find","length","selectedOrderIndex","exact","findIndex","undefined","selectOrder","index","moveFocus","selector","currentIndex","oppositeSelector","includes","items","Array","from","querySelectorAll","filter","item","getAttribute","next","renderDataOption","h","ChoiceOptionRow","id","active","usesSubtext","Boolean","description","tabIndex","onHover","onSelect","onKeyDown","candidate","renderOrder","String","render","name","trim","popupStyle","left","top","transform","Math","round","zIndex","visibility","Host","class","hidden","ref","element","variant","size","icon","labelEmphasis","pressScale","haspopup","collapseLabel","expanded","surfaceOpen","controls","onDsClick","detail","popover","style","role","ChoiceListSection","heading","className","map","type","onClick","as","color","body"],"sources":["src/wc/components/DataGroup/DataGroup.css?tag=ds-data-group&encapsulation=scoped","src/wc/components/DataGroup/DataGroup.tsx"],"sourcesContent":["@import '../../utils/radius.css';\n@import '../../utils/choice-list.css';\n@import '../../utils/control-parts.css';\n@import '../../utils/table-caption-control.css';\n\n:host {\n display: inline-flex;\n min-inline-size: 0;\n max-inline-size: var(--dimension-menu-width-xs);\n}\n\n:host([hidden]) {\n display: none;\n}\n\n.data-group__body {\n display: grid;\n grid-template-columns: var(--dimension-menu-width-xs) var(--dimension-menu-width-sm);\n min-height: calc(var(--dimension-size-800) * 4 + var(--dimension-space-150));\n max-height: calc(100vh - var(--dimension-size-800) - var(--dimension-size-600));\n}\n\n.data-group__data-pane,\n.data-group__order-pane {\n display: flex;\n min-width: 0;\n min-height: 0;\n flex-direction: column;\n}\n\n.data-group__data-pane {\n border-inline-end: var(--dimension-stroke-width-012) solid var(--color-border-tertiary);\n}\n\n.data-group__list {\n flex: 1 1 auto;\n}\n\n.data-group__empty {\n flex: 1 1 auto;\n}\n\n.data-group__footer {\n flex: 0 0 auto;\n}\n\n.data-group__footer .ds-choice-footer__content {\n justify-content: flex-start;\n}\n\n.data-group__footer[aria-hidden='true']::before {\n visibility: hidden;\n}\n\n.data-group__footer[aria-hidden='true'] .ds-choice-footer__content {\n visibility: hidden;\n}\n\n@media (forced-colors: active) {\n .data-group__data-pane {\n border-inline-end-color: var(--ds-forced-color-content);\n }\n}\n\n.data-preferences-embedded {\n display: flex;\n flex-direction: column;\n min-width: 0;\n min-height: 0;\n color: var(--color-foreground-secondary);\n}\n\n:host:has(.data-preferences-embedded) {\n display: block;\n max-inline-size: none;\n}\n.data-preferences-embedded .data-group__body {\n grid-template-columns: min(var(--dimension-menu-width-xs), 40%) minmax(0, 1fr);\n}\n\n:host(.data-group-vertical) .data-group__body {\n grid-template-columns: minmax(0, 1fr);\n}\n:host(.data-group-vertical) .data-group__data-pane {\n border-inline-end: 0;\n}\n\n:host(.data-group-vertical) .data-group__footer {\n display: none;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport {\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n TOKEN_CSS_LENGTHS,\n TOKEN_DEFAULTS,\n} from '../../utils';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { AnchoredOverlayInteractionController } from '../../utils/anchored-overlay-interaction-controller';\nimport { resolveAnchoredOverlayBoundaryRect } from '../../utils/anchored-overlay-boundary';\nimport { ChoiceListSection, ChoiceOptionRow } from '../../utils/choice-list-parts';\nimport type { DataGroupingState, DataSortDirection } from '../Table/table-types';\n\nexport interface TableGroupOrderOption {\n label: string;\n direction: DataSortDirection;\n /** Optional application-owned data point used to order the group sections. */\n orderBy?: string;\n}\n\nexport interface DataGroupOption {\n label: string;\n value: string;\n description?: string;\n isInactive?: boolean;\n /** Product-owned order choices for this grouping data point. */\n orderOptions?: TableGroupOrderOption[];\n}\n\nconst DEFAULT_ORDER_OPTIONS: TableGroupOrderOption[] = [\n { label: 'Ascending', direction: 'asc' },\n { label: 'Descending', direction: 'desc' },\n];\n\nlet tableGroupSeq = 0;\n\n@Component({\n tag: 'ds-data-group',\n styleUrl: 'DataGroup.css',\n scoped: true,\n})\nexport class DataGroup {\n @Element() private el!: HTMLElement;\n\n /** Product-owned data points that may group the table. */\n /** Render content inside a parent-owned surface; the parent owns dismissal and positioning. */\n /** Show the trigger border. */\n @Prop() hasBorder: boolean = true;\n @Prop() vertical: boolean = false;\n @Prop() embedded: boolean = false;\n @Prop() options: DataGroupOption[] = [];\n /** Controlled grouping field and the order of its group sections. */\n @Prop() grouping: DataGroupingState | null = null;\n /** Accessible name for the trigger and non-modal dialog. */\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n /** Controlled popup visibility. */\n @Prop({ mutable: true }) open = false;\n /** Empty message kept in the order pane until a grouping data point is selected. */\n @Prop() emptyMessage = 'Select a group to choose its order.';\n /** Clear action label. */\n @Prop() clearLabel = 'Clear';\n\n /** Requests replacement of the complete controlled grouping state. */\n @Event() dsGroupChange!: EventEmitter<DataGroupingState>;\n /** Requests removal of the controlled grouping state. */\n @Event() dsClear!: EventEmitter<void>;\n /** Reports controlled popup visibility changes. */\n @Event() dsOpenChange!: EventEmitter<boolean>;\n\n @State() private shouldRender = false;\n @State() private closing = false;\n @State() private positionReady = false;\n @State() private pos = { x: 0, y: 0 };\n @State() private focusRingVisible = false;\n\n private readonly componentId = `ds-data-group-${++tableGroupSeq}`;\n private readonly triggerId = `${this.componentId}-trigger`;\n private readonly popupId = `${this.componentId}-popup`;\n private triggerElement: HTMLElement | null = null;\n private pendingInitialFocusVisible = false;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.triggerElement,\n getPopup: () => this.el.querySelector<HTMLElement>('.data-group-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n measure: (anchor, popup) => {\n if (!this.open) return null;\n const sectionInsetPx = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n return {\n anchorRect: anchor.getBoundingClientRect(),\n popupWidth: popup.offsetWidth || this.popupFallbackWidth,\n popupHeight: popup.offsetHeight || this.popupFallbackHeight,\n side: 'bottom',\n align: 'end',\n sideOffsetPx: resolveCssLengthPx(TOKEN_CSS_LENGTHS.space050, TOKEN_DEFAULTS.space050),\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'end',\n alignOffsetPx: 0,\n sectionInsetPx,\n }),\n viewportPadPx: resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050),\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n collisionRect: resolveAnchoredOverlayBoundaryRect(anchor),\n };\n },\n apply: ({ x, y }) => {\n this.pos = { x, y };\n },\n onReady: () => {\n this.positionReady = true;\n },\n liveUpdate: 'double-frame',\n observeResize: true,\n topLayer: true,\n });\n\n private readonly interaction = new AnchoredOverlayInteractionController({\n getAnchor: () => this.triggerElement,\n getPopup: () => this.el.querySelector<HTMLElement>('.data-group-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.close(),\n });\n\n componentDidLoad() {\n if (this.open) this.onOpenChange(true);\n }\n\n disconnectedCallback() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) clearTimeout(this.closeTimer);\n }\n\n @Watch('open')\n onOpenChange(isOpen: boolean) {\n if (this.embedded) return;\n if (isOpen) {\n this.teardown();\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.focusRingVisible = this.pendingInitialFocusVisible;\n this.interaction.connect();\n this.position.observe();\n this.position.schedule(() => this.focusInitialDataPoint());\n return;\n }\n if (!this.shouldRender) return;\n this.position.cancel();\n this.closing = true;\n this.interaction.disconnect();\n this.position.unobserve();\n const duration = resolveMotionTimeMs(\n TOKEN_DEFAULTS.motionShort2,\n TOKEN_DEFAULTS.animationDurationShort3\n );\n if (duration <= 0) this.finishClose();\n else this.closeTimer = setTimeout(() => this.finishClose(), duration);\n }\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n if (this.embedded && (event.key === 'Escape' || event.key === 'Tab')) return;\n if ((!this.shouldRender && !this.embedded) || this.closing) return;\n if (event.key === 'Escape') {\n event.preventDefault();\n this.close();\n return;\n }\n if (event.key !== 'Tab' || !this.interaction.tabLeavesPopup(event)) return;\n event.preventDefault();\n this.close(false);\n this.interaction.moveFocusAfterTab(event.shiftKey);\n }\n\n private get popupFallbackWidth(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuWidthLg, TOKEN_DEFAULTS.menuWidthLg);\n }\n\n private get popupFallbackHeight(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuFallbackHeight, TOKEN_DEFAULTS.menuFallbackHeight);\n }\n\n private teardown() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n }\n\n private toggle(fromKeyboard = false) {\n if (this.open) {\n this.close();\n return;\n }\n this.pendingInitialFocusVisible = fromKeyboard;\n this.open = true;\n this.dsOpenChange.emit(true);\n this.onOpenChange(true);\n }\n\n private close(restoreFocus = true) {\n if (restoreFocus) this.interaction.focusAnchor();\n this.open = false;\n this.dsOpenChange.emit(false);\n this.onOpenChange(false);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.data-group-popup');\n if (popup?.matches(':popover-open')) popup.hidePopover();\n this.shouldRender = false;\n this.closing = false;\n this.closeTimer = null;\n }\n\n private focusInitialDataPoint() {\n requestAnimationFrame(() => {\n const selected = this.grouping\n ? this.el.querySelector<HTMLElement>(\n `[data-group-value=\"${CSS.escape(this.grouping.fieldId)}\"] [role=\"option\"]`\n )\n : null;\n const initial =\n selected ??\n this.el.querySelector<HTMLElement>(\n '[data-group-value] [role=\"option\"]:not([aria-disabled=\"true\"])'\n );\n initial?.focus();\n this.pendingInitialFocusVisible = false;\n });\n }\n\n private selectData(option: DataGroupOption) {\n if (option.value === '__none__') {\n this.dsClear.emit();\n return;\n }\n if (option.isInactive) return;\n if (this.grouping?.fieldId === option.value) {\n this.dsGroupChange.emit({ ...this.grouping });\n return;\n }\n const initialOrder = option.orderOptions?.[0];\n this.dsGroupChange.emit({\n fieldId: option.value,\n direction: initialOrder?.direction ?? 'asc',\n ...(initialOrder?.orderBy ? { orderBy: initialOrder.orderBy } : {}),\n });\n }\n\n private get activeOrderOptions(): TableGroupOrderOption[] {\n const configured = this.options.find(\n option => option.value === this.grouping?.fieldId\n )?.orderOptions;\n return configured?.length ? configured : DEFAULT_ORDER_OPTIONS;\n }\n\n private get selectedOrderIndex(): number {\n if (!this.grouping) return -1;\n const exact = this.activeOrderOptions.findIndex(\n option =>\n option.direction === this.grouping?.direction && option.orderBy === this.grouping?.orderBy\n );\n if (exact >= 0) return exact;\n if (this.grouping.orderBy === undefined) {\n return this.activeOrderOptions.findIndex(\n option => option.direction === this.grouping?.direction\n );\n }\n return -1;\n }\n\n private selectOrder(option: TableGroupOrderOption, index: number) {\n if (!this.grouping || this.selectedOrderIndex === index) return;\n const grouping: DataGroupingState = {\n fieldId: this.grouping.fieldId,\n direction: option.direction,\n };\n if (option.orderBy) grouping.orderBy = option.orderBy;\n this.dsGroupChange.emit(grouping);\n }\n\n private moveFocus(\n event: KeyboardEvent,\n selector: string,\n currentIndex: number,\n oppositeSelector?: string\n ) {\n if (oppositeSelector && (event.key === 'ArrowLeft' || event.key === 'ArrowRight')) {\n event.preventDefault();\n this.focusRingVisible = true;\n this.el.querySelector<HTMLElement>(oppositeSelector)?.focus();\n return;\n }\n if (!['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) return;\n event.preventDefault();\n const items = Array.from(this.el.querySelectorAll<HTMLElement>(selector)).filter(\n item => item.getAttribute('aria-disabled') !== 'true'\n );\n if (!items.length) return;\n let next: number;\n if (event.key === 'Home') next = 0;\n else if (event.key === 'End') next = items.length - 1;\n else next = (currentIndex + (event.key === 'ArrowDown' ? 1 : -1) + items.length) % items.length;\n this.focusRingVisible = true;\n items[next]?.focus();\n }\n\n private renderDataOption(option: DataGroupOption, index: number) {\n const selected =\n option.value === '__none__' ? !this.grouping : option.value === this.grouping?.fieldId;\n return (\n <ChoiceOptionRow\n id={`${this.componentId}-data-${index}`}\n option={{ ...option }}\n selected={selected}\n active={selected}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={Boolean(option.description)}\n tabIndex={selected || (!this.grouping && index === 0) ? 0 : -1}\n onHover={() => {\n this.focusRingVisible = false;\n }}\n onSelect={() => this.selectData(option)}\n onKeyDown={(event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.selectData(option);\n return;\n }\n this.moveFocus(\n event,\n '[data-group-value] [role=\"option\"]',\n this.options\n .filter(candidate => !candidate.isInactive)\n .findIndex(candidate => candidate.value === option.value),\n this.grouping\n ? `[data-group-order-index=\"${this.selectedOrderIndex}\"] [role=\"option\"]`\n : undefined\n );\n }}\n />\n );\n }\n\n private renderOrder(option: TableGroupOrderOption, index: number) {\n const selected = index === this.selectedOrderIndex;\n return (\n <ChoiceOptionRow\n id={`${this.componentId}-order-${index}`}\n option={{ label: option.label, value: String(index) }}\n selected={selected}\n active={selected}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={false}\n tabIndex={selected ? 0 : -1}\n onHover={() => {\n this.focusRingVisible = false;\n }}\n onSelect={() => this.selectOrder(option, index)}\n onKeyDown={(event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.selectOrder(option, index);\n return;\n }\n this.moveFocus(\n event,\n '[data-group-order-index] [role=\"option\"]',\n index,\n `[data-group-value=\"${CSS.escape(this.grouping?.fieldId ?? '')}\"] [role=\"option\"]`\n );\n }}\n />\n );\n }\n\n render() {\n const name = this.ariaLabel?.trim() || 'Group table';\n const popupStyle: Record<string, string> = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,\n zIndex: '9998',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n\n return (\n <Host\n class={{ 'data-group-vertical': this.vertical }}\n hidden={this.options.length === 0 ? true : undefined}\n >\n {this.options.length && !this.embedded ? (\n <ds-button-unfilled\n hasBorder={this.hasBorder}\n ref={element => {\n this.triggerElement = (element as HTMLElement) ?? null;\n }}\n id={this.triggerId}\n variant=\"icon-label\"\n size=\"md\"\n icon=\"SectionList\"\n label=\"Group\"\n labelEmphasis={false}\n pressScale={false}\n aria-label={name}\n haspopup=\"dialog\"\n collapseLabel={true}\n expanded={this.open}\n surfaceOpen={this.open || this.closing}\n controls={this.popupId}\n onDsClick={(event: CustomEvent<MouseEvent>) => this.toggle(event.detail.detail === 0)}\n />\n ) : null}\n\n {this.shouldRender || this.embedded ? (\n <div\n id={this.popupId}\n popover={this.embedded ? undefined : 'manual'}\n class={{\n 'data-group-popup': true,\n 'ds-choice-popup': !this.embedded,\n 'data-preferences-embedded': this.embedded,\n 'ds-choice-popup--closing': this.closing,\n }}\n style={this.embedded ? undefined : popupStyle}\n role=\"dialog\"\n aria-label={name}\n >\n <div class=\"data-group__body\">\n <div class=\"data-group__data-pane\">\n <ChoiceListSection\n heading=\"Data\"\n ariaLabel=\"Group data\"\n className=\"data-group__list\"\n >\n {this.vertical &&\n this.renderDataOption({ label: 'No grouping', value: '__none__' }, -1)}\n {this.options.map((option, index) => (\n <div data-group-value={option.value}>\n {this.renderDataOption(option, index)}\n </div>\n ))}\n </ChoiceListSection>\n <div\n hidden={this.vertical}\n class=\"data-group__footer ds-choice-footer\"\n aria-hidden={!this.grouping ? 'true' : undefined}\n >\n <div class=\"ds-choice-footer__content ds-control--md\">\n {this.grouping ? (\n <button\n class=\"ds-choice-footer__clear ds-text-action ds-focus-ring\"\n type=\"button\"\n onClick={() => this.dsClear.emit()}\n >\n <ds-text as=\"span\" variant=\"text-body-medium\" color=\"inherit\">\n {this.clearLabel}\n </ds-text>\n </button>\n ) : null}\n </div>\n </div>\n </div>\n\n <div class=\"data-group__order-pane\">\n {this.grouping ? (\n <ChoiceListSection\n heading=\"Order\"\n ariaLabel=\"Group order\"\n className=\"data-group__list\"\n >\n {this.activeOrderOptions.map((option, index) => (\n <div data-group-order-index={index}>{this.renderOrder(option, index)}</div>\n ))}\n </ChoiceListSection>\n ) : (\n <div class=\"data-group__empty ds-choice-empty ds-empty-region\">\n <ds-empty-state body={this.emptyMessage} />\n </div>\n )}\n </div>\n </div>\n </div>\n ) : null}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as t,H as e,h as s,a as r,t as i}from"./index.js";function d(t){return`ds-text--${t.replace(/^text-/,"")}`}function a(t){return t==="span"||t==="label"?"ds-text--inline-box":"ds-text--block-box"}const o=()=>`.ds-text--display-medium.sc-ds-text-h,.ds-text--display-medium.sc-ds-text{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-text-h,.ds-text--display-small.sc-ds-text{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-text-h,.ds-text--title-large.sc-ds-text{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-text-h,.ds-text--title-medium.sc-ds-text{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-text-h,.ds-text--title-small.sc-ds-text{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-text-h,.ds-text--body-large.sc-ds-text{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-text-h,.ds-text--body-medium.sc-ds-text{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-text-h,.ds-text--body-small.sc-ds-text{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-text-h,.ds-text--caption.sc-ds-text{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-text-h,.ds-text--display-small.ds-text--emphasis.sc-ds-text-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-text,.ds-text--display-small.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-text-h,.ds-text--display-small.ds-text--regular.sc-ds-text-h,.ds-text--display-medium.ds-text--regular.sc-ds-text,.ds-text--display-small.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-text-h,.ds-text--title-large.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-text-h,.ds-text--title-large.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-text-h,.ds-text--title-small.ds-text--emphasis.sc-ds-text-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-text,.ds-text--title-small.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-text-h,.ds-text--title-small.ds-text--regular.sc-ds-text-h,.ds-text--title-medium.ds-text--regular.sc-ds-text,.ds-text--title-small.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-text-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-text-h,.ds-text--body-large.ds-text--emphasis.sc-ds-text,.ds-text--body-medium.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-text-h,.ds-text--body-medium.ds-text--regular.sc-ds-text-h,.ds-text--body-large.ds-text--regular.sc-ds-text,.ds-text--body-medium.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-text-h,.ds-text--body-small.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-text-h,.ds-text--body-small.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-text-h,.ds-text--caption.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-text-h,.ds-text--caption.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}@media (forced-colors: active){.sc-ds-text:root,.sc-ds-text-h,.ds-forced-colors-scope.sc-ds-text{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}@keyframes ds-shimmer-text-motion{0%{background-position:100% 0}76.923%{background-position:0 0}100%{background-position:0 0}}@keyframes ds-shimmer-surface-motion{0%{background-position:100% 0}76.923%{background-position:0 0}100%{background-position:0 0}}.ds-shimmer-text.sc-ds-text{--ds-shimmer-base:currentColor;--ds-shimmer-duration:var(--effect-animation-duration-long-2);--ds-shimmer-repeat-delay:var(--effect-animation-delay-short-3);--ds-shimmer-cycle-duration:calc(var(--ds-shimmer-duration) + var(--ds-shimmer-repeat-delay));--ds-shimmer-easing:var(--effect-animation-easing-linear);--ds-shimmer-spread:var(--dimension-size-500);--ds-shimmer-travel:calc( var(--dimension-size-800) + var(--dimension-size-500) + var(--dimension-size-200) );background-color:var(--ds-shimmer-base);background-image:linear-gradient( 330deg, transparent calc(50% - var(--ds-shimmer-spread)), var(--ds-shimmer, var(--color-shimmer-shimmer)) 50%, transparent calc(50% + var(--ds-shimmer-spread)) );background-repeat:no-repeat;background-position:100% 0;background-size:calc(200% + var(--ds-shimmer-spread) * 2 + var(--ds-shimmer-travel) * 2) 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:ds-shimmer-text-motion var(--ds-shimmer-cycle-duration) var(--ds-shimmer-easing) infinite}.ds-shimmer-surface.sc-ds-text{--ds-shimmer-surface-base:var(--color-foreground-quaternary);--ds-shimmer-duration:var(--effect-animation-duration-long-2);--ds-shimmer-repeat-delay:var(--effect-animation-delay-short-3);--ds-shimmer-cycle-duration:calc(var(--ds-shimmer-duration) + var(--ds-shimmer-repeat-delay));--ds-shimmer-easing:var(--effect-animation-easing-linear);--ds-shimmer-spread:var(--dimension-size-500);--ds-shimmer-travel:calc( var(--dimension-size-800) + var(--dimension-size-500) + var(--dimension-size-200) );position:relative;overflow:hidden;background-color:var(--ds-shimmer-surface-base)}.ds-shimmer-surface.sc-ds-text::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient( 330deg, transparent calc(50% - var(--ds-shimmer-spread)), var(--ds-shimmer, var(--color-shimmer-shimmer)) 50%, transparent calc(50% + var(--ds-shimmer-spread)) );background-repeat:no-repeat;background-position:100% 0;background-size:calc(200% + var(--ds-shimmer-spread) * 2 + var(--ds-shimmer-travel) * 2) 100%;animation:ds-shimmer-surface-motion var(--ds-shimmer-cycle-duration) var(--ds-shimmer-easing) infinite}@media (prefers-reduced-motion: reduce){.ds-shimmer-text.sc-ds-text{animation:none;background-image:none;-webkit-text-fill-color:currentColor}.ds-shimmer-surface.sc-ds-text::after{display:none;animation:none}}@media (forced-colors: active){.ds-shimmer-text.sc-ds-text{animation:none;background-image:none;-webkit-text-fill-color:currentColor}.ds-shimmer-surface.sc-ds-text{background-color:var(--ds-forced-color-disabled)}.ds-shimmer-surface.sc-ds-text::after{display:none;animation:none}}.sc-ds-text-h{box-sizing:border-box;max-width:100%;min-width:0;margin:0;padding:0;border:0;font-family:var(--typography-font-family-ui)}.sc-ds-text-h:where(.ds-text--inline-box){display:inline-block}.sc-ds-text-h:where(.ds-text--block-box){display:block;width:100%}.ds-text__element.sc-ds-text{display:block;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;border:0;font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;text-transform:inherit;text-align:inherit;text-decoration:inherit;text-underline-offset:inherit;font-style:inherit;font-variant-numeric:inherit;font-feature-settings:inherit;-webkit-user-select:inherit;user-select:inherit;white-space:inherit;text-wrap:inherit;overflow-wrap:inherit;word-break:inherit;overflow:inherit;text-overflow:inherit}.ds-text--truncate-1.sc-ds-text-h{overflow:hidden}.ds-text--truncate-1.sc-ds-text-h .ds-text__element.sc-ds-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-text--truncate-2.sc-ds-text-h,.ds-text--truncate-3.sc-ds-text-h,.ds-text--truncate-4.sc-ds-text-h,.ds-text--truncate-5.sc-ds-text-h{overflow:hidden}.ds-text--truncate-2.sc-ds-text-h .ds-text__element.sc-ds-text,.ds-text--truncate-3.sc-ds-text-h .ds-text__element.sc-ds-text,.ds-text--truncate-4.sc-ds-text-h .ds-text__element.sc-ds-text,.ds-text--truncate-5.sc-ds-text-h .ds-text__element.sc-ds-text{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.ds-text--truncate-2.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:2}.ds-text--truncate-3.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:3}.ds-text--truncate-4.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:4}.ds-text--truncate-5.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:5}.ds-text--nowrap.sc-ds-text-h,.ds-text--nowrap.sc-ds-text-h .ds-text__element.sc-ds-text{white-space:nowrap;word-break:normal;overflow:hidden;text-overflow:ellipsis;min-width:0}.ds-text--balance.sc-ds-text-h,.ds-text--balance.sc-ds-text-h .ds-text__element.sc-ds-text{text-wrap:balance}.ds-text--pretty.sc-ds-text-h,.ds-text--pretty.sc-ds-text-h .ds-text__element.sc-ds-text{text-wrap:pretty}.ds-text--color-primary.sc-ds-text-h{color:var(--color-foreground-primary)}.ds-text--color-secondary.sc-ds-text-h{color:var(--color-foreground-secondary)}.ds-text--color-tertiary.sc-ds-text-h{color:var(--color-foreground-tertiary)}.ds-text--color-quaternary.sc-ds-text-h{color:var(--color-foreground-quaternary)}.ds-text--color-brand.sc-ds-text-h{color:var(--color-foreground-bold-brand)}.ds-text--color-negative.sc-ds-text-h{color:var(--color-foreground-bold-negative)}.ds-text--color-positive.sc-ds-text-h{color:var(--color-foreground-bold-positive)}.ds-text--color-warning.sc-ds-text-h{color:var(--color-foreground-bold-warning)}.ds-text--color-caution.sc-ds-text-h{color:var(--color-foreground-bold-caution)}.ds-text--color-ai.sc-ds-text-h{color:var(--color-foreground-bold-ai)}.ds-text--color-on-strong.sc-ds-text-h{color:var(--color-foreground-on-strong-background-primary)}.ds-text--color-on-bold.sc-ds-text-h{color:var(--color-foreground-on-bold-background-primary)}.ds-text--decoration-underline.sc-ds-text-h,.ds-text--decoration-dotted-underline.sc-ds-text-h{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text--decoration-underline.sc-ds-text-h{text-decoration-line:underline}.ds-text--decoration-dotted-underline.sc-ds-text-h{text-decoration-line:underline;text-decoration-style:dotted}.ds-text--italic.sc-ds-text-h{font-style:italic}.ds-text--font-feature-tabular-nums.sc-ds-text-h{font-variant-numeric:tabular-nums;font-feature-settings:'tnum'}.ds-text--align-left.sc-ds-text-h{text-align:left}.ds-text--align-center.sc-ds-text-h{text-align:center}.ds-text--align-right.sc-ds-text-h{text-align:right}`;const n=t(class t extends e{constructor(t){super();if(t!==false){this.__registerHost()}this.variant="text-body-medium";this.emphasis=false;this.color="inherit";this.italic=false;this.shimmer=false;this.lineTruncation="none";this.fontFeature="normal";this.as="p"}render(){const t=this.as;const e=t=>typeof t==="string"&&t.startsWith("var(--");const i=Number(this.lineTruncation);const o={"ds-text":true,[a(this.as)]:true,[d(this.variant)]:true,"ds-text--emphasis":this.emphasis,"ds-text--regular":!this.emphasis,"ds-text--nowrap":this.wrap==="nowrap","ds-text--balance":this.wrap==="balance","ds-text--pretty":this.wrap==="pretty","ds-text--truncate-1":i===1&&this.wrap!=="nowrap","ds-text--truncate-2":i===2&&this.wrap!=="nowrap","ds-text--truncate-3":i===3&&this.wrap!=="nowrap","ds-text--truncate-4":i===4&&this.wrap!=="nowrap","ds-text--truncate-5":i===5&&this.wrap!=="nowrap","ds-text--color-primary":this.color==="primary","ds-text--color-secondary":this.color==="secondary","ds-text--color-tertiary":this.color==="tertiary","ds-text--color-quaternary":this.color==="quaternary","ds-text--color-brand":this.color==="brand","ds-text--color-negative":this.color==="negative","ds-text--color-positive":this.color==="positive","ds-text--color-warning":this.color==="warning","ds-text--color-caution":this.color==="caution","ds-text--color-ai":this.color==="ai","ds-text--color-on-strong":this.color==="on-strong","ds-text--color-on-bold":this.color==="on-bold","ds-text--color-inherit":this.color==="inherit","ds-text--decoration-underline":this.decoration==="underline","ds-text--decoration-dotted-underline":this.decoration==="dotted-underline","ds-text--italic":this.italic,"ds-text--align-left":this.align==="left","ds-text--align-center":this.align==="center","ds-text--align-right":this.align==="right","ds-text--font-feature-tabular-nums":this.fontFeature==="tabular-nums"};const n=this.color&&e(this.color)?{color:this.color}:undefined;const c={};if(this.as==="label"&&this.for)c["for"]=this.for;if(this.textId)c["id"]=this.textId;return s(r,{key:"12a092b9bfa3d2279f9e8aebc821ef1cbe9b03cd",class:o,style:n},s(t,{key:"88013b67692ef9f9aec979b7b7e02b439f6e8de3",class:{"ds-text__element":true,"ds-shimmer-text":this.shimmer},...c},s("slot",{key:"c56847011a0425228471eea9dc30eede0aafbcd6"})))}static get style(){return o()}},[262,"ds-text",{variant:[1],emphasis:[4],color:[1],decoration:[1],italic:[4],shimmer:[4],align:[1],lineTruncation:[8,"line-truncation"],wrap:[1],fontFeature:[1,"font-feature"],as:[1],for:[1],textId:[1,"text-id"]}]);function c(){if(typeof customElements==="undefined"){return}const t=["ds-text"];t.forEach((t=>{switch(t){case"ds-text":if(!customElements.get(i(t))){customElements.define(i(t),n)}break}}))}c();export{n as T,c as d};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{p as t,H as e,h as s,a as r,t as i}from"./index.js";function d(t){return`ds-text--${t.replace(/^text-/,"")}`}function a(t){return t==="span"||t==="label"?"ds-text--inline-box":"ds-text--block-box"}const o=()=>`.ds-text--display-medium.sc-ds-text-h,.ds-text--display-medium.sc-ds-text{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-text-h,.ds-text--display-small.sc-ds-text{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-text-h,.ds-text--title-large.sc-ds-text{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-text-h,.ds-text--title-medium.sc-ds-text{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-text-h,.ds-text--title-small.sc-ds-text{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-text-h,.ds-text--body-large.sc-ds-text{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-text-h,.ds-text--body-medium.sc-ds-text{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-text-h,.ds-text--body-small.sc-ds-text{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-text-h,.ds-text--caption.sc-ds-text{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-text-h,.ds-text--display-small.ds-text--emphasis.sc-ds-text-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-text,.ds-text--display-small.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-text-h,.ds-text--display-small.ds-text--regular.sc-ds-text-h,.ds-text--display-medium.ds-text--regular.sc-ds-text,.ds-text--display-small.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-text-h,.ds-text--title-large.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-text-h,.ds-text--title-large.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-text-h,.ds-text--title-small.ds-text--emphasis.sc-ds-text-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-text,.ds-text--title-small.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-text-h,.ds-text--title-small.ds-text--regular.sc-ds-text-h,.ds-text--title-medium.ds-text--regular.sc-ds-text,.ds-text--title-small.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-text-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-text-h,.ds-text--body-large.ds-text--emphasis.sc-ds-text,.ds-text--body-medium.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-text-h,.ds-text--body-medium.ds-text--regular.sc-ds-text-h,.ds-text--body-large.ds-text--regular.sc-ds-text,.ds-text--body-medium.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-text-h,.ds-text--body-small.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-text-h,.ds-text--body-small.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-text-h,.ds-text--caption.ds-text--emphasis.sc-ds-text{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-text-h,.ds-text--caption.ds-text--regular.sc-ds-text{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}@media (forced-colors: active){.sc-ds-text:root,.sc-ds-text-h,.ds-forced-colors-scope.sc-ds-text{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}@keyframes ds-shimmer-text-motion{0%{background-position:100% 0}76.923%{background-position:0 0}100%{background-position:0 0}}@keyframes ds-shimmer-surface-motion{0%{background-position:100% 0}76.923%{background-position:0 0}100%{background-position:0 0}}.ds-shimmer-text.sc-ds-text{--ds-shimmer-base:currentColor;--ds-shimmer-duration:var(--effect-animation-duration-long-2);--ds-shimmer-repeat-delay:var(--effect-animation-delay-short-3);--ds-shimmer-cycle-duration:calc(var(--ds-shimmer-duration) + var(--ds-shimmer-repeat-delay));--ds-shimmer-easing:var(--effect-animation-easing-linear);--ds-shimmer-spread:var(--dimension-size-500);--ds-shimmer-travel:calc( var(--dimension-size-800) + var(--dimension-size-500) + var(--dimension-size-200) );background-color:var(--ds-shimmer-base);background-image:linear-gradient( 330deg, transparent calc(50% - var(--ds-shimmer-spread)), var(--ds-shimmer, var(--color-shimmer-shimmer)) 50%, transparent calc(50% + var(--ds-shimmer-spread)) );background-repeat:no-repeat;background-position:100% 0;background-size:calc(200% + var(--ds-shimmer-spread) * 2 + var(--ds-shimmer-travel) * 2) 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:ds-shimmer-text-motion var(--ds-shimmer-cycle-duration) var(--ds-shimmer-easing) infinite}.ds-shimmer-surface.sc-ds-text{--ds-shimmer-surface-base:var(--color-foreground-quaternary);--ds-shimmer-duration:var(--effect-animation-duration-long-2);--ds-shimmer-repeat-delay:var(--effect-animation-delay-short-3);--ds-shimmer-cycle-duration:calc(var(--ds-shimmer-duration) + var(--ds-shimmer-repeat-delay));--ds-shimmer-easing:var(--effect-animation-easing-linear);--ds-shimmer-spread:var(--dimension-size-500);--ds-shimmer-travel:calc( var(--dimension-size-800) + var(--dimension-size-500) + var(--dimension-size-200) );position:relative;overflow:hidden;background-color:var(--ds-shimmer-surface-base)}.ds-shimmer-surface.sc-ds-text::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient( 330deg, transparent calc(50% - var(--ds-shimmer-spread)), var(--ds-shimmer, var(--color-shimmer-shimmer)) 50%, transparent calc(50% + var(--ds-shimmer-spread)) );background-repeat:no-repeat;background-position:100% 0;background-size:calc(200% + var(--ds-shimmer-spread) * 2 + var(--ds-shimmer-travel) * 2) 100%;animation:ds-shimmer-surface-motion var(--ds-shimmer-cycle-duration) var(--ds-shimmer-easing) infinite}@media (prefers-reduced-motion: reduce){.ds-shimmer-text.sc-ds-text{animation:none;background-image:none;-webkit-text-fill-color:currentColor}.ds-shimmer-surface.sc-ds-text::after{display:none;animation:none}}@media (forced-colors: active){.ds-shimmer-text.sc-ds-text{animation:none;background-image:none;-webkit-text-fill-color:currentColor}.ds-shimmer-surface.sc-ds-text{background-color:var(--ds-forced-color-disabled)}.ds-shimmer-surface.sc-ds-text::after{display:none;animation:none}}.sc-ds-text-h{box-sizing:border-box;max-width:100%;min-width:0;margin:0;padding:0;border:0;font-family:var(--typography-font-family-ui)}.sc-ds-text-h:where(.ds-text--inline-box){display:inline-block}.sc-ds-text-h:where(.ds-text--block-box){display:block;width:100%}.ds-text__element.sc-ds-text{display:block;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;border:0;font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;text-transform:inherit;text-align:inherit;text-decoration:inherit;text-underline-offset:inherit;font-style:inherit;font-variant-numeric:inherit;font-feature-settings:inherit;-webkit-user-select:inherit;user-select:inherit;white-space:inherit;text-wrap:inherit;overflow-wrap:inherit;word-break:inherit;overflow:inherit;text-overflow:inherit}.ds-text--truncate-1.sc-ds-text-h{overflow:hidden}.ds-text--truncate-1.sc-ds-text-h .ds-text__element.sc-ds-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-text--truncate-2.sc-ds-text-h,.ds-text--truncate-3.sc-ds-text-h,.ds-text--truncate-4.sc-ds-text-h,.ds-text--truncate-5.sc-ds-text-h{overflow:hidden}.ds-text--truncate-2.sc-ds-text-h .ds-text__element.sc-ds-text,.ds-text--truncate-3.sc-ds-text-h .ds-text__element.sc-ds-text,.ds-text--truncate-4.sc-ds-text-h .ds-text__element.sc-ds-text,.ds-text--truncate-5.sc-ds-text-h .ds-text__element.sc-ds-text{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.ds-text--truncate-2.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:2}.ds-text--truncate-3.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:3}.ds-text--truncate-4.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:4}.ds-text--truncate-5.sc-ds-text-h .ds-text__element.sc-ds-text{-webkit-line-clamp:5}.ds-text--nowrap.sc-ds-text-h,.ds-text--nowrap.sc-ds-text-h .ds-text__element.sc-ds-text{white-space:nowrap;word-break:normal;overflow:hidden;text-overflow:ellipsis;min-width:0}.ds-text--balance.sc-ds-text-h,.ds-text--balance.sc-ds-text-h .ds-text__element.sc-ds-text{text-wrap:balance}.ds-text--pretty.sc-ds-text-h,.ds-text--pretty.sc-ds-text-h .ds-text__element.sc-ds-text{text-wrap:pretty}.ds-text--color-primary.sc-ds-text-h{color:var(--color-foreground-primary)}.ds-text--color-secondary.sc-ds-text-h{color:var(--color-foreground-secondary)}.ds-text--color-tertiary.sc-ds-text-h{color:var(--color-foreground-tertiary)}.ds-text--color-quaternary.sc-ds-text-h{color:var(--color-foreground-quaternary)}.ds-text--color-brand.sc-ds-text-h{color:var(--color-foreground-bold-brand)}.ds-text--color-negative.sc-ds-text-h{color:var(--color-foreground-bold-negative)}.ds-text--color-positive.sc-ds-text-h{color:var(--color-foreground-bold-positive)}.ds-text--color-warning.sc-ds-text-h{color:var(--color-foreground-bold-warning)}.ds-text--color-caution.sc-ds-text-h{color:var(--color-foreground-bold-caution)}.ds-text--color-ai.sc-ds-text-h{color:var(--color-foreground-bold-ai)}.ds-text--color-on-strong.sc-ds-text-h{color:var(--color-foreground-on-strong-background-primary)}.ds-text--color-on-bold.sc-ds-text-h{color:var(--color-foreground-on-bold-background-primary)}.ds-text--decoration-underline.sc-ds-text-h,.ds-text--decoration-dotted-underline.sc-ds-text-h{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text--decoration-underline.sc-ds-text-h{text-decoration-line:underline}.ds-text--decoration-dotted-underline.sc-ds-text-h{text-decoration-line:underline;text-decoration-style:dotted}.ds-text--italic.sc-ds-text-h{font-style:italic}.ds-text--font-feature-tabular-nums.sc-ds-text-h{font-variant-numeric:tabular-nums;font-feature-settings:'tnum'}.ds-text--align-left.sc-ds-text-h{text-align:left}.ds-text--align-center.sc-ds-text-h{text-align:center}.ds-text--align-right.sc-ds-text-h{text-align:right}`;const n=t(class t extends e{constructor(t){super();if(t!==false){this.__registerHost()}this.variant="text-body-medium";this.emphasis=false;this.color="inherit";this.italic=false;this.shimmer=false;this.lineTruncation="none";this.fontFeature="normal";this.as="p"}render(){const t=this.as;const e=t=>typeof t==="string"&&t.startsWith("var(--");const i=Number(this.lineTruncation);const o={"ds-text":true,[a(this.as)]:true,[d(this.variant)]:true,"ds-text--emphasis":this.emphasis,"ds-text--regular":!this.emphasis,"ds-text--nowrap":this.wrap==="nowrap","ds-text--balance":this.wrap==="balance","ds-text--pretty":this.wrap==="pretty","ds-text--truncate-1":i===1&&this.wrap!=="nowrap","ds-text--truncate-2":i===2&&this.wrap!=="nowrap","ds-text--truncate-3":i===3&&this.wrap!=="nowrap","ds-text--truncate-4":i===4&&this.wrap!=="nowrap","ds-text--truncate-5":i===5&&this.wrap!=="nowrap","ds-text--color-primary":this.color==="primary","ds-text--color-secondary":this.color==="secondary","ds-text--color-tertiary":this.color==="tertiary","ds-text--color-quaternary":this.color==="quaternary","ds-text--color-brand":this.color==="brand","ds-text--color-negative":this.color==="negative","ds-text--color-positive":this.color==="positive","ds-text--color-warning":this.color==="warning","ds-text--color-caution":this.color==="caution","ds-text--color-ai":this.color==="ai","ds-text--color-on-strong":this.color==="on-strong","ds-text--color-on-bold":this.color==="on-bold","ds-text--color-inherit":this.color==="inherit","ds-text--decoration-underline":this.decoration==="underline","ds-text--decoration-dotted-underline":this.decoration==="dotted-underline","ds-text--italic":this.italic,"ds-text--align-left":this.align==="left","ds-text--align-center":this.align==="center","ds-text--align-right":this.align==="right","ds-text--font-feature-tabular-nums":this.fontFeature==="tabular-nums"};const n=this.color&&e(this.color)?{color:this.color}:undefined;const c={};if(this.as==="label"&&this.for)c["for"]=this.for;if(this.textId)c["id"]=this.textId;return s(r,{key:"092d159aae0c45f3e983b0e60120ab1df449f6d7",class:o,style:n},s(t,{key:"7fa16bec5f1ef3f21ec796f0eb9111c5af964e25",class:{"ds-text__element":true,"ds-shimmer-text":this.shimmer},...c},s("slot",{key:"460d6904265fc062299d5ef3eba8e7e2e73435c3"})))}static get style(){return o()}},[262,"ds-text",{variant:[1],emphasis:[4],color:[1],decoration:[1],italic:[4],shimmer:[4],align:[1],lineTruncation:[8,"line-truncation"],wrap:[1],fontFeature:[1,"font-feature"],as:[1],for:[1],textId:[1,"text-id"]}]);function c(){if(typeof customElements==="undefined"){return}const t=["ds-text"];t.forEach((t=>{switch(t){case"ds-text":if(!customElements.get(i(t))){customElements.define(i(t),n)}break}}))}c();export{n as T,c as d};
|
|
2
|
+
//# sourceMappingURL=p-DwbcNDJF.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{p as n,H as t,c as i,h as o,a as s,t as e}from"./index.js";import{r as d,b as r}from"./p-vfCu7XSc.js";import{d as l}from"./p-ZhP2tVmM.js";import{d as a}from"./p-DjkUFlDW.js";import{d as c}from"./p-0XTyQNRG.js";import{d as u}from"./p-DwbcNDJF.js";import{d as f}from"./p-CYzFfFcH.js";import{c as b}from"./p-DuFm-ieS.js";const h=899;function v(n){return n>0&&n<=h}function g(n){return n.contentBoxSize[0]?.inlineSize??n.contentRect.width}function p(n,t){if(typeof ResizeObserver==="undefined"){t(false);return()=>undefined}const i=n.closest("ds-table")??n.closest("ds-data-toolbar");if(!i){t(false);return()=>undefined}const o=n=>{if(n<=0)return;t(v(n))};const s=new ResizeObserver((n=>{o(n[0]?g(n[0]):0)}));s.observe(i);o(i.clientWidth);return()=>s.disconnect()}const m=()=>`.sc-ds-button-unfilled-h,.sc-ds-button-unfilled:where(.ds-table),.sc-ds-button-unfilled:where(.tooltip-popup),.sc-ds-button-unfilled:where(.ds-radius){--ds-radius-control:var(--dimension-radius-025);--ds-radius-card:var(--dimension-radius-050);--ds-radius-modal:var(--dimension-radius-050);--ds-radius-menu:var(--dimension-radius-075);--ds-radius-tooltip-control:var(--dimension-radius-025);--ds-radius-tooltip-menu:var(--dimension-radius-075);--ds-radius-table:var(--dimension-radius-050)}@media (forced-colors: active){.sc-ds-button-unfilled:root,.sc-ds-button-unfilled-h,.ds-forced-colors-scope.sc-ds-button-unfilled{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-button-unfilled-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-button-unfilled-h,.ds-focus-ring.sc-ds-button-unfilled,.ds-focus-ring-inset.sc-ds-button-unfilled-h,.ds-focus-ring-inset.sc-ds-button-unfilled{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-button-unfilled-h:focus-visible,.ds-focus-ring.sc-ds-button-unfilled:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-button-unfilled-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-button-unfilled{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-button-unfilled-h:focus-visible,.ds-focus-ring-inset.sc-ds-button-unfilled:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-button-unfilled-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-button-unfilled:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-button-unfilled-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-button-unfilled{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-button-unfilled-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-button-unfilled::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-button-unfilled-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-button-unfilled:root,.sc-ds-button-unfilled-h,.ds-forced-colors-scope.sc-ds-button-unfilled{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}@media (forced-colors: active){.sc-ds-button-unfilled:root,.sc-ds-button-unfilled-h,.ds-forced-colors-scope.sc-ds-button-unfilled{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-interaction-fill.sc-ds-button-unfilled-h,.ds-interaction-fill.sc-ds-button-unfilled{position:var(--ds-interaction-position, relative);z-index:var(--ds-interaction-z-index, 0);cursor:default;--ds-interaction-hover:var(--color-interaction-hover);--ds-interaction-pressed:var(--color-interaction-pressed);--ds-interaction-active:var(--color-interaction-active-brand);--ds-interaction-border-width:0px;--ds-interaction-border-color:transparent;--ds-interaction-divider-width:0px;--ds-interaction-divider-color:transparent;--ds-interaction-divider-inline-start-width:0px;--ds-interaction-divider-inline-start-color:transparent;--ds-interaction-divider-inline-end-width:0px;--ds-interaction-divider-inline-end-color:transparent}.ds-interaction-fill.sc-ds-button-unfilled-h::before,.ds-interaction-fill.sc-ds-button-unfilled::before,.ds-interaction-fill.sc-ds-button-unfilled-h::after,.ds-interaction-fill.sc-ds-button-unfilled::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-button-unfilled-h::before,.ds-interaction-fill.sc-ds-button-unfilled::before{z-index:1}.ds-interaction-fill.sc-ds-button-unfilled-h::after,.ds-interaction-fill.sc-ds-button-unfilled::after{z-index:3;box-shadow:inset 0 calc(-1 * var(--ds-interaction-divider-width)) 0 var(--ds-interaction-divider-color), inset var(--ds-interaction-divider-inline-start-width) 0 0 var(--ds-interaction-divider-inline-start-color), inset calc(-1 * var(--ds-interaction-divider-inline-end-width)) 0 0 var(--ds-interaction-divider-inline-end-color), inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-button-unfilled-h,.ds-interaction-fill--bordered.sc-ds-button-unfilled{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-button-unfilled-h::before,.ds-interaction-fill--selected.sc-ds-button-unfilled::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-button-unfilled-h,.ds-interaction-fill--selected.sc-ds-button-unfilled{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-button-unfilled-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-button-unfilled:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-button-unfilled-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-button-unfilled:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-button-unfilled-h::after,.ds-interaction-fill--grouped.sc-ds-button-unfilled::after,.ds-interaction-fill--grouped.sc-ds-button-unfilled-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-button-unfilled:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-button-unfilled-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-button-unfilled:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-button-unfilled-h,.ds-interaction-fill--grouped.sc-ds-button-unfilled{--ds-interaction-divider-width:var(--ds-interaction-group-divider-width, 0px);--ds-interaction-divider-color:var(--ds-interaction-group-divider-color, transparent);--ds-interaction-divider-inline-start-width:var( --ds-interaction-group-divider-inline-start-width, 0px );--ds-interaction-divider-inline-start-color:var( --ds-interaction-group-divider-inline-start-color, transparent );--ds-interaction-divider-inline-end-width:var( --ds-interaction-group-divider-inline-end-width, 0px );--ds-interaction-divider-inline-end-color:var( --ds-interaction-group-divider-inline-end-color, transparent )}.ds-interaction-fill.sc-ds-button-unfilled-h>.ds-interaction-fill__content.sc-ds-button-unfilled,.ds-interaction-fill.sc-ds-button-unfilled>.ds-interaction-fill__content.sc-ds-button-unfilled,.ds-interaction-fill__content.sc-ds-button-unfilled{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-button-unfilled-h,.ds-interaction-fill--on-faint.sc-ds-button-unfilled{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-button-unfilled-h,.ds-interaction-fill--on-medium.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-interaction-on-medium-background-hover);--ds-interaction-pressed:var(--color-interaction-on-medium-background-pressed);--ds-interaction-active:var(--color-interaction-on-medium-background-active);--ds-focus-ring-color:var(--color-interaction-on-medium-background-focus)}.ds-interaction-fill--on-bold.sc-ds-button-unfilled-h,.ds-interaction-fill--on-bold.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-interaction-on-bold-background-hover);--ds-interaction-pressed:var(--color-interaction-on-bold-background-pressed);--ds-interaction-active:var(--color-interaction-on-bold-background-active);--ds-focus-ring-color:var(--color-interaction-on-bold-background-focus)}.ds-interaction-fill--on-strong.sc-ds-button-unfilled-h,.ds-interaction-fill--on-strong.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-interaction-on-strong-background-hover);--ds-interaction-pressed:var(--color-interaction-on-strong-background-pressed);--ds-interaction-active:var(--color-interaction-on-strong-background-active);--ds-focus-ring-color:var(--color-interaction-on-strong-background-focus)}.ds-interaction-fill--on-translucent.sc-ds-button-unfilled-h,.ds-interaction-fill--on-translucent.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active-brand);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-button-unfilled-h,.ds-interaction-fill--on-inverted.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active-brand);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-button-unfilled-h,.ds-interaction-fill--on-media.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-media-interaction-hover);--ds-interaction-pressed:var(--color-media-interaction-pressed);--ds-interaction-active:var(--color-media-interaction-active);--ds-focus-ring-color:var(--color-media-interaction-focus)}.ds-interaction-fill--on-always-dark.sc-ds-button-unfilled-h,.ds-interaction-fill--on-always-dark.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-button-unfilled-h,.ds-interaction-fill--on-navigation.sc-ds-button-unfilled{--ds-interaction-hover:var(--color-navigation-interaction-hover);--ds-interaction-pressed:var(--color-navigation-interaction-pressed);--ds-interaction-active:var(--color-navigation-interaction-active);--ds-focus-ring-color:var(--color-navigation-interaction-focus)}.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-button-unfilled-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-button-unfilled:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-button-unfilled-h::after,.ds-interaction-fill.sc-ds-button-unfilled::after{box-shadow:none;outline:var(--ds-interaction-border-width) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--ds-interaction-border-width))}.ds-interaction-fill--surface-open.sc-ds-button-unfilled-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-button-unfilled:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.ds-interaction-fill--selected.sc-ds-button-unfilled-h::before,.ds-interaction-fill--selected.sc-ds-button-unfilled::before{background:transparent;outline:var(--dimension-stroke-width-025) solid var(--ds-forced-color-selected);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}}@media (forced-colors: active) and (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-button-unfilled-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-button-unfilled:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline-color:var(--ds-forced-color-selected);outline-width:var(--dimension-stroke-width-012)}}.ds-control-press-scale.sc-ds-button-unfilled{transition:scale var(--effect-motion-short-2)}.ds-control-press-scale.sc-ds-button-unfilled:active:not(:disabled):not(.ds-control-inactive):not([aria-busy='true']){scale:var(--ds-control-press-active-scale, var(--dimension-scale-subtle))}@media (prefers-reduced-motion: reduce){.ds-control-press-scale.sc-ds-button-unfilled,.ds-control-press-scale.sc-ds-button-unfilled:active:not(:disabled):not(.ds-control-inactive):not([aria-busy='true']){scale:none;transition:none}}@media (forced-colors: active){.sc-ds-button-unfilled:root,.sc-ds-button-unfilled-h,.ds-forced-colors-scope.sc-ds-button-unfilled{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-control-inactive.sc-ds-button-unfilled-h,.ds-control-inactive.sc-ds-button-unfilled{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-button-unfilled-h,.ds-control-inactive.sc-ds-button-unfilled{color:var(--ds-forced-color-disabled);opacity:1}}.ds-control--lg.sc-ds-button-unfilled,.ds-control--lg.sc-ds-button-unfilled-h,.ds-control--md.sc-ds-button-unfilled-h,.ds-control--md.sc-ds-button-unfilled,.ds-control--sm.sc-ds-button-unfilled-h,.ds-control--sm.sc-ds-button-unfilled,.ds-control--xs.sc-ds-button-unfilled-h,.ds-control--xs.sc-ds-button-unfilled{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-button-unfilled-h,.ds-control--lg.sc-ds-button-unfilled{--ds-control-height:var(--dimension-size-500);--ds-control-icon:var(--dimension-iconography-lg);--ds-control-padding-inline:var(--dimension-space-100);--ds-control-label-inset:var(--dimension-space-050);--ds-control-gap:var(--dimension-space-050)}.ds-control--md.sc-ds-button-unfilled-h,.ds-control--md.sc-ds-button-unfilled{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050)}.ds-control--sm.sc-ds-button-unfilled-h,.ds-control--sm.sc-ds-button-unfilled{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025)}.ds-control--xs.sc-ds-button-unfilled-h,.ds-control--xs.sc-ds-button-unfilled{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0}.ds-control--lg.ds-control--inset.sc-ds-button-unfilled-h,.ds-control--lg.ds-control--inset.sc-ds-button-unfilled{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-025))}.ds-control--md.ds-control--inset.sc-ds-button-unfilled-h,.ds-control--md.ds-control--inset.sc-ds-button-unfilled{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-025))}.ds-control--sm.ds-control--inset.sc-ds-button-unfilled-h,.ds-control--sm.ds-control--inset.sc-ds-button-unfilled{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-025))}.ds-control--xs.ds-control--inset.sc-ds-button-unfilled-h,.ds-control--xs.ds-control--inset.sc-ds-button-unfilled{--ds-control-height:calc(var(--dimension-size-200) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-025) - var(--dimension-space-025))}.ds-control--lg.ds-control--inset-double.sc-ds-button-unfilled-h,.ds-control--lg.ds-control--inset-double.sc-ds-button-unfilled{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-050))}.ds-control--md.ds-control--inset-double.sc-ds-button-unfilled-h,.ds-control--md.ds-control--inset-double.sc-ds-button-unfilled{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-050))}.ds-control--sm.ds-control--inset-double.sc-ds-button-unfilled-h,.ds-control--sm.ds-control--inset-double.sc-ds-button-unfilled{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-050))}.ds-control-frame.sc-ds-button-unfilled{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-section-heading.sc-ds-button-unfilled{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-button-unfilled{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-button-unfilled{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-button-unfilled{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-button-unfilled{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-control-width--hug.sc-ds-button-unfilled-h,.ds-control-width--hug.sc-ds-button-unfilled{width:fit-content;max-width:100%;flex:0 0 auto}.ds-control-width--fill.sc-ds-button-unfilled-h,.ds-control-width--fill.sc-ds-button-unfilled{width:100%;min-width:0;flex:1 1 auto;align-self:stretch}.sc-ds-button-unfilled-h{display:inline-flex;outline:none}.ds-button-host--icon.ds-control-width--hug.sc-ds-button-unfilled-h{width:var(--ds-control-height, var(--dimension-size-400));height:var(--ds-control-height, var(--dimension-size-400));min-width:var(--ds-control-height, var(--dimension-size-400));min-height:var(--ds-control-height, var(--dimension-size-400))}.ds-button-host--icon.ds-control-width--fill.sc-ds-button-unfilled-h{height:var(--ds-control-height, var(--dimension-size-400));min-height:var(--ds-control-height, var(--dimension-size-400))}.ds-control-width--fill.sc-ds-button-unfilled-h .ds-button.sc-ds-button-unfilled{width:100%}.ds-button.sc-ds-button-unfilled{justify-content:center;overflow:hidden;min-inline-size:var(--ds-control-height);border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));border-start-start-radius:var( --ds-button-radius-start-start, var(--ds-control-radius, var(--dimension-radius-025)) );border-start-end-radius:var( --ds-button-radius-start-end, var(--ds-control-radius, var(--dimension-radius-025)) );border-end-start-radius:var( --ds-button-radius-end-start, var(--ds-control-radius, var(--dimension-radius-025)) );border-end-end-radius:var( --ds-button-radius-end-end, var(--ds-control-radius, var(--dimension-radius-025)) );cursor:default;-webkit-user-select:none;user-select:none}.ds-button--icon.sc-ds-button-unfilled{width:100%;height:100%;padding:0}.ds-button--rounded.sc-ds-button-unfilled{--ds-control-radius:var(--dimension-radius-half)}.ds-button--bordered.sc-ds-button-unfilled{--ds-interaction-border-width:var(--dimension-stroke-width-012)}.ds-button--bordered.sc-ds-button-unfilled:not(.ds-interaction-fill){box-shadow:inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-button__icon-wrap.sc-ds-button-unfilled,.ds-button__label.sc-ds-button-unfilled,.ds-button__chevron.sc-ds-button-unfilled{position:relative;z-index:2}.ds-button__label.sc-ds-button-unfilled{flex-shrink:0;min-width:0;white-space:nowrap}.ds-button__label--loading.sc-ds-button-unfilled,.ds-button__chevron--loading.sc-ds-button-unfilled{visibility:hidden}.ds-button.sc-ds-button-unfilled>.ds-button__loader-overlay.sc-ds-button-unfilled{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;pointer-events:none}.ds-button__dot.sc-ds-button-unfilled{position:absolute;top:0;right:0;z-index:2;pointer-events:none}@media (forced-colors: active){.ds-button.sc-ds-button-unfilled{outline:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--dimension-stroke-width-012))}}.ds-button-split.sc-ds-button-unfilled{position:relative;display:inline-flex;align-items:stretch;min-width:0;overflow:hidden;gap:0;border-radius:var(--ds-control-radius, var(--dimension-radius-025));background:transparent}.ds-control-width--fill.sc-ds-button-unfilled-h .ds-button-split.sc-ds-button-unfilled{width:100%}.ds-button-split.sc-ds-button-unfilled>.ds-button-split__primary.sc-ds-button-unfilled{flex:1 1 auto;width:auto;min-width:0;border-start-end-radius:var(--dimension-radius-000);border-end-end-radius:var(--dimension-radius-000)}.ds-button-split.sc-ds-button-unfilled>.ds-button-split__menu.sc-ds-button-unfilled{flex:0 0 var(--ds-control-height);width:var(--ds-control-height);min-width:var(--ds-control-height);border-start-start-radius:var(--dimension-radius-000);border-end-start-radius:var(--dimension-radius-000)}.ds-button-split__divider.sc-ds-button-unfilled{position:relative;z-index:3;align-self:stretch;flex:0 0 0;margin-inline-start:calc(-1 * var(--dimension-stroke-width-012));border-inline-start:var(--dimension-stroke-width-012) solid var(--ds-button-split-divider);pointer-events:none}.ds-button-split__divider--content-height.sc-ds-button-unfilled{align-self:center;block-size:var(--ds-button-split-divider-content-height)}.ds-button-split__outline.sc-ds-button-unfilled{position:absolute;z-index:3;inset:0;border:var(--dimension-stroke-width-012) solid var(--ds-button-split-border);border-radius:inherit;pointer-events:none}.ds-control--lg.sc-ds-button-unfilled-h{--ds-button-split-divider-content-height:var(--dimension-size-300)}.ds-control--md.sc-ds-button-unfilled-h{--ds-button-split-divider-content-height:var(--dimension-size-250)}.ds-control--sm.sc-ds-button-unfilled-h,.ds-control--xs.sc-ds-button-unfilled-h{--ds-button-split-divider-content-height:var(--dimension-size-200)}.ds-button-split-host--primary-icon.ds-control-width--hug.sc-ds-button-unfilled-h .ds-button-split.sc-ds-button-unfilled>.ds-button-split__primary.sc-ds-button-unfilled{flex:0 0 var(--ds-control-height);width:var(--ds-control-height);min-width:var(--ds-control-height);height:var(--ds-control-height)}.ds-button-split--rounded.sc-ds-button-unfilled{border-radius:var(--dimension-radius-half)}.ds-table-caption-control.sc-ds-button-unfilled-h{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.ds-table-caption-control.ds-table-caption-control--compact.sc-ds-button-unfilled-h{flex:0 0 auto;width:var(--ds-control-height, var(--dimension-size-400));height:var(--ds-control-height, var(--dimension-size-400));min-width:var(--ds-control-height, var(--dimension-size-400));min-height:var(--ds-control-height, var(--dimension-size-400));max-width:var(--ds-control-height, var(--dimension-size-400));inline-size:var(--ds-control-height, var(--dimension-size-400));min-inline-size:var(--ds-control-height, var(--dimension-size-400));max-inline-size:var(--ds-control-height, var(--dimension-size-400))}.ds-table-caption-control.ds-table-caption-control--compact.sc-ds-button-unfilled-h .trigger.sc-ds-button-unfilled{justify-content:center;inline-size:100%;min-inline-size:100%;height:100%;padding-inline:0}.ds-table-caption-control.ds-table-caption-control--compact.sc-ds-button-unfilled-h .trigger--has-value.sc-ds-button-unfilled:not(.trigger--label-placeholder){--ds-select-prefix-fg:var(--ds-select-fg-active)}@container ds-table (max-width: 899px){.sc-ds-button-unfilled-h.ds-table-caption-control{flex:0 0 auto;inline-size:var(--ds-control-height, var(--dimension-size-400));min-inline-size:var(--ds-control-height, var(--dimension-size-400));max-inline-size:var(--ds-control-height, var(--dimension-size-400))}.sc-ds-button-unfilled-h.ds-table-caption-control .trigger{justify-content:center;inline-size:100%;min-inline-size:100%;padding-inline:0}.sc-ds-button-unfilled-h.ds-table-caption-control .trigger--has-value:not(.trigger--label-placeholder){--ds-select-prefix-fg:var(--ds-select-fg-active)}}.sc-ds-button-unfilled-h{--ds-button-unfilled-fg:var(--color-foreground-secondary);--ds-button-unfilled-fg-active:var(--color-foreground-primary);--ds-button-unfilled-dot-ring:var(--color-background-secondary);--ds-button-unfilled-border:var(--color-border-secondary);--ds-button-split-border:var(--color-border-secondary);--ds-button-split-divider:var(--color-border-tertiary)}.button-unfilled-host--background-medium.sc-ds-button-unfilled-h{--ds-button-split-border:var(--color-border-on-medium-background-secondary);--ds-button-split-divider:var(--color-border-on-medium-background-tertiary)}.button-unfilled-host--background-bold.sc-ds-button-unfilled-h{--ds-button-split-border:var(--color-border-on-bold-background-secondary);--ds-button-split-divider:var(--color-border-on-bold-background-tertiary)}.button-unfilled-host--background-strong.sc-ds-button-unfilled-h{--ds-button-split-border:var(--color-border-on-strong-background-secondary);--ds-button-split-divider:var(--color-border-on-strong-background-tertiary)}.button-unfilled-host--background-translucent.sc-ds-button-unfilled-h{--ds-button-split-border:var(--color-translucent-border-secondary);--ds-button-split-divider:var(--color-translucent-border-tertiary)}.button-unfilled-host--background-inverted.sc-ds-button-unfilled-h{--ds-button-split-border:var(--color-inverted-border-secondary);--ds-button-split-divider:var(--color-inverted-border-tertiary)}.button-unfilled-host--background-media.sc-ds-button-unfilled-h{--ds-button-split-border:var(--color-media-border-secondary);--ds-button-split-divider:var(--color-media-border-tertiary)}.button-unfilled-host--background-always-dark.sc-ds-button-unfilled-h{--ds-button-split-border:var(--color-always-dark-border-secondary);--ds-button-split-divider:var(--color-always-dark-border-tertiary)}.button-unfilled.sc-ds-button-unfilled{background:transparent;color:var(--ds-button-unfilled-fg)}.button-unfilled--active.sc-ds-button-unfilled{color:var(--ds-button-unfilled-fg-active)}.button-unfilled--bordered.sc-ds-button-unfilled{--ds-interaction-border-color:var(--ds-button-unfilled-border)}.button-unfilled--background-medium.sc-ds-button-unfilled{--ds-button-unfilled-fg:var(--color-foreground-on-medium-background-secondary);--ds-button-unfilled-fg-active:var(--color-foreground-on-medium-background-primary);--ds-button-unfilled-dot-ring:var(--color-background-medium-neutral);--ds-button-unfilled-border:var(--color-border-on-medium-background-secondary)}.button-unfilled--background-bold.sc-ds-button-unfilled{--ds-button-unfilled-fg:var(--color-foreground-on-bold-background-secondary);--ds-button-unfilled-fg-active:var(--color-foreground-on-bold-background-primary);--ds-button-unfilled-dot-ring:var(--color-background-bold-neutral);--ds-button-unfilled-border:var(--color-border-on-bold-background-secondary)}.button-unfilled--background-strong.sc-ds-button-unfilled{--ds-button-unfilled-fg:var(--color-foreground-on-strong-background-secondary);--ds-button-unfilled-fg-active:var(--color-foreground-on-strong-background-primary);--ds-button-unfilled-dot-ring:var(--color-background-strong-neutral);--ds-button-unfilled-border:var(--color-border-on-strong-background-secondary)}.button-unfilled--background-translucent.sc-ds-button-unfilled{--ds-button-unfilled-fg:var(--color-translucent-foreground-secondary);--ds-button-unfilled-fg-active:var(--color-translucent-foreground-primary);--ds-button-unfilled-dot-ring:var(--color-translucent-translucent);--ds-button-unfilled-border:var(--color-translucent-border-secondary)}.button-unfilled--background-inverted.sc-ds-button-unfilled{--ds-button-unfilled-fg:var(--color-inverted-foreground-secondary);--ds-button-unfilled-fg-active:var(--color-inverted-foreground-primary);--ds-button-unfilled-dot-ring:var(--color-inverted-background);--ds-button-unfilled-border:var(--color-inverted-border-secondary)}.button-unfilled--background-media.sc-ds-button-unfilled{--ds-button-unfilled-fg:var(--color-media-foreground-secondary);--ds-button-unfilled-fg-active:var(--color-media-foreground-primary);--ds-button-unfilled-dot-ring:var(--color-media-background);--ds-button-unfilled-border:var(--color-media-border-secondary)}.button-unfilled--on-always-dark.sc-ds-button-unfilled{--ds-button-unfilled-fg:var(--color-always-dark-foreground-secondary);--ds-button-unfilled-fg-active:var(--color-always-dark-foreground-primary);--ds-button-unfilled-dot-ring:var(--color-always-dark-background);--ds-button-unfilled-border:var(--color-always-dark-border-secondary)}.button-unfilled.ds-interaction-fill--selected.sc-ds-button-unfilled{--ds-button-unfilled-dot-ring:var(--ds-interaction-active)}`;const k=n(class n extends t{constructor(n){super();if(n!==false){this.__registerHost()}this.dsClick=i(this,"dsClick",7);this.dsMenuClick=i(this,"dsMenuClick",7);this.dsChange=i(this,"dsChange",7);this.variant="label";this.size="md";this.isInset=false;this.insetDepth="single";this.width="hug";this.label="";this.labelEmphasis=true;this.icon="";this.isActive=false;this.activeFill=true;this.hasBorder=true;this.rounded=false;this.pressScale=true;this.dot=false;this.isInactive=false;this.isLoading=false;this.type="button";this.ariaLabel=null;this.split=false;this.menuAriaLabel="More options";this.collapseLabel=false;this.hasMenu=false;this.captionCompact=false;this.buttonEl=null;this.menuButtonEl=null;this.hasLoaded=false;this.handleClick=n=>{if(this.isInactive||this.isLoading){n.preventDefault();n.stopPropagation();return}this.dsClick.emit(n);if(this.pressed!==undefined)this.dsChange.emit(!this.pressed)};this.handleMenuClick=n=>{if(this.isInactive||this.isLoading){n.preventDefault();n.stopPropagation();return}this.dsMenuClick.emit(n)}}componentDidLoad(){this.hasLoaded=true;this.syncCaptionCompactObserver()}connectedCallback(){if(this.hasLoaded)this.syncCaptionCompactObserver()}disconnectedCallback(){this.disconnectCaptionCompactObserver()}onCollapseLabelChange(){this.syncCaptionCompactObserver()}async setFocus(n="primary"){(n==="menu"?this.menuButtonEl:this.buttonEl)?.focus()}get captionIconOnly(){return this.collapseLabel&&this.captionCompact&&this.variant==="icon-label"&&Boolean(this.icon)}get visualVariant(){return this.captionIconOnly?"icon":this.variant}get showDot(){return this.variant==="icon"&&this.dot&&!this.isLoading}syncCaptionCompactObserver(){this.disconnectCaptionCompactObserver();if(!this.collapseLabel){if(this.captionCompact)this.captionCompact=false;return}this.captionCompactDisconnect=p(this.el,(n=>{if(this.captionCompact!==n)this.captionCompact=n}))}disconnectCaptionCompactObserver(){this.captionCompactDisconnect?.();this.captionCompactDisconnect=undefined}get resolvedHaspopup(){return this.haspopup??(this.hasMenu?"menu":undefined)}get doubleInset(){return this.isInset&&this.insetDepth==="double"&&this.size!=="xs"}get resolvedSurfaceOpen(){const n=this.expanded===true&&(this.split||this.resolvedHaspopup!==undefined);return(this.surfaceOpen??n)&&!this.isInactive}get visuallyActive(){return this.isActive||this.pressed===true}get dotRing(){if((this.isActive||this.pressed===true)&&this.activeFill){return"var(--ds-interaction-active)"}return"var(--ds-button-unfilled-dot-ring)"}get accessibleName(){if(this.ariaLabel)return this.ariaLabel;if(this.isLoading&&this.variant==="label"&&this.label)return this.label;return undefined}buttonClass(n,t,i){const o=this.background;const s={"button-unfilled":true,"ds-button":true,"ds-focus-ring-inset":true,"ds-control-press-scale":this.pressScale&&!this.split,"ds-interaction-fill":true,"ds-interaction-fill--selected":(this.isActive||this.pressed===true)&&this.activeFill&&!this.isInactive,"ds-interaction-fill--on-faint":o==="faint","ds-interaction-fill--on-medium":o==="medium","ds-interaction-fill--on-bold":o==="bold","ds-interaction-fill--on-strong":o==="strong","ds-interaction-fill--on-translucent":o==="translucent","ds-interaction-fill--on-inverted":o==="inverted","ds-interaction-fill--on-media":o==="media","ds-interaction-fill--on-always-dark":o==="always-dark","button-unfilled--active":this.visuallyActive,"button-unfilled--expanded":t,"ds-interaction-fill--surface-open":t,"ds-button--expanded":t,"button-unfilled--bordered":i,"ds-button--bordered":i,"button-unfilled--rounded":this.rounded,"ds-button--rounded":this.rounded,"ds-control-inactive":this.isInactive,"ds-control--lg":this.size==="lg","ds-control--md":this.size==="md","ds-control--sm":this.size==="sm","ds-control--xs":this.size==="xs","ds-control--inset":this.isInset&&!this.doubleInset,"ds-control--inset-double":this.doubleInset,"ds-control-frame":true,"button-unfilled--icon":n==="icon","ds-button--icon":n==="icon","button-unfilled--label":n==="label","button-unfilled--icon-label":n==="icon-label","button-unfilled--background-faint":o==="faint","button-unfilled--background-medium":o==="medium","button-unfilled--background-bold":o==="bold","button-unfilled--background-strong":o==="strong","button-unfilled--background-translucent":o==="translucent","button-unfilled--background-inverted":o==="inverted","button-unfilled--background-media":o==="media","button-unfilled--on-always-dark":o==="always-dark"};return s}render(){const n=o("button",{key:"5b05a896a9ffa4d6fb557d7d8b4d3f2dc6363660",ref:n=>{this.buttonEl=n??null},type:this.type,class:{...this.buttonClass(this.visualVariant,!this.split&&this.resolvedSurfaceOpen,this.hasBorder&&!this.split),"ds-button-split__primary":this.split},disabled:this.isInactive,tabIndex:this.focusTabIndex??0,"aria-label":this.accessibleName,"aria-busy":this.isLoading?"true":undefined,"aria-disabled":this.isLoading?"true":undefined,"aria-controls":this.split?undefined:this.controls,"aria-expanded":this.split||this.expanded===undefined?undefined:String(this.expanded),"aria-haspopup":this.split?undefined:this.resolvedHaspopup,"aria-pressed":this.pressed===undefined?undefined:String(this.pressed),onPointerDown:n=>r(n,this.pressScale&&!this.split&&!this.isInactive&&!this.isLoading),onClick:this.handleClick},d({namespace:"button-unfilled",variant:this.visualVariant,size:this.size,label:this.label,labelEmphasis:this.labelEmphasis,icon:this.icon,hasMenu:!this.split&&this.hasMenu,isLoading:this.isLoading,dot:{visible:this.showDot,background:this.dotRing}}));const t=this.split?o("div",{class:{"ds-button-split":true,"ds-button-split--rounded":this.rounded}},n,o("span",{class:{"ds-button-split__divider":true,"ds-button-split__divider--content-height":!this.hasBorder},"aria-hidden":"true"}),o("button",{ref:n=>{this.menuButtonEl=n??null},class:{...this.buttonClass("icon",this.resolvedSurfaceOpen,false),"ds-button-split__menu":true},type:"button",disabled:this.isInactive||this.isLoading,tabIndex:this.focusTabIndex??0,"aria-label":this.menuAriaLabel,"aria-controls":this.controls,"aria-expanded":String(this.expanded===true),"aria-haspopup":"menu",onClick:this.handleMenuClick},d({namespace:"button-unfilled",variant:"icon",size:this.size,label:"",labelEmphasis:true,icon:"ChevronDown",hasMenu:false,isLoading:false})),this.hasBorder?o("span",{class:"ds-button-split__outline","aria-hidden":"true"}):null):n;return o(s,{key:"cdc69fd96b3146e79740be300e43f132062f7aad",class:{"button-unfilled-host":true,"button-unfilled-host--icon":this.visualVariant==="icon"&&!this.split,"ds-button-host--icon":this.visualVariant==="icon"&&!this.split,"ds-button-split-host":this.split,"ds-button-split-host--primary-icon":this.split&&this.visualVariant==="icon",[`button-unfilled-host--background-${this.background}`]:this.split&&this.background!==undefined,"ds-control--lg":this.size==="lg","ds-control--md":this.size==="md","ds-control--sm":this.size==="sm","ds-control--xs":this.size==="xs","ds-control--inset":this.isInset&&!this.doubleInset,"ds-control--inset-double":this.doubleInset,"ds-table-caption-control":this.collapseLabel,"ds-table-caption-control--compact":this.captionIconOnly,...b(this.width)},tabIndex:-1},this.collapseLabel?o("ds-tooltip",{label:this.captionIconOnly?this.label||this.accessibleName||"":"",side:"top",size:"sm"},t):t)}get el(){return this}static get watchers(){return{collapseLabel:[{onCollapseLabelChange:0}]}}static get style(){return m()}},[2,"ds-button-unfilled",{variant:[1],size:[1],isInset:[4,"is-inset"],insetDepth:[1,"inset-depth"],width:[1],label:[1],labelEmphasis:[4,"label-emphasis"],icon:[1],isActive:[4,"is-active"],activeFill:[4,"active-fill"],hasBorder:[4,"has-border"],rounded:[4],pressScale:[4,"press-scale"],dot:[4],isInactive:[4,"is-inactive"],isLoading:[4,"is-loading"],type:[1],background:[1],ariaLabel:[1,"aria-label"],controls:[1],expanded:[4],surfaceOpen:[4,"surface-open"],haspopup:[1],split:[4],menuAriaLabel:[1,"menu-aria-label"],pressed:[4],collapseLabel:[516,"collapse-label"],hasMenu:[4,"has-menu"],focusTabIndex:[2,"tab-index"],captionCompact:[32],setFocus:[64]},undefined,{collapseLabel:[{onCollapseLabelChange:0}]}]);function w(){if(typeof customElements==="undefined"){return}const n=["ds-button-unfilled","ds-badge","ds-icon","ds-loader","ds-text","ds-tooltip"];n.forEach((n=>{switch(n){case"ds-button-unfilled":if(!customElements.get(e(n))){customElements.define(e(n),k)}break;case"ds-badge":if(!customElements.get(e(n))){l()}break;case"ds-icon":if(!customElements.get(e(n))){a()}break;case"ds-loader":if(!customElements.get(e(n))){c()}break;case"ds-text":if(!customElements.get(e(n))){u()}break;case"ds-tooltip":if(!customElements.get(e(n))){f()}break}}))}w();export{k as B,w as d,p as o};
|
|
2
|
+
//# sourceMappingURL=p-Dzndkdx5.js.map
|