@prolibu-suite/cobalt-core 0.11.6 → 0.11.8
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/custom-elements.json +160 -46
- package/dist/cjs/co-action-bar.cjs.entry.js +1 -1
- package/dist/cjs/co-app-shell.cjs.entry.js +1 -1
- package/dist/cjs/co-autocomplete.cjs.entry.js +1 -1
- package/dist/cjs/co-avatar.cjs.entry.js +6 -3
- package/dist/cjs/co-button.cjs.entry.js +14 -6
- package/dist/cjs/co-calendar-month_2.cjs.entry.js +9 -5
- package/dist/cjs/co-calendar_3.cjs.entry.js +25 -8
- package/dist/cjs/co-checkbox-group.cjs.entry.js +1 -1
- package/dist/cjs/co-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/co-chip_2.cjs.entry.js +4 -4
- package/dist/cjs/co-color-picker.cjs.entry.js +24 -5
- package/dist/cjs/co-column-picker.cjs.entry.js +3 -3
- package/dist/cjs/co-combobox.cjs.entry.js +7 -5
- package/dist/cjs/co-command-search.cjs.entry.js +1 -1
- package/dist/cjs/co-data-table-pagination.cjs.entry.js +5 -5
- package/dist/cjs/co-data-table.cjs.entry.js +1 -1
- package/dist/cjs/co-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/co-date-range-picker.cjs.entry.js +1 -1
- package/dist/cjs/co-date-range.cjs.entry.js +1 -1
- package/dist/cjs/co-date-time-picker.cjs.entry.js +3 -3
- package/dist/cjs/co-document-editor.cjs.entry.js +108 -7
- package/dist/cjs/co-drive-card.cjs.entry.js +2 -2
- package/dist/cjs/co-drop-zone.cjs.entry.js +1 -1
- package/dist/cjs/co-emoji-picker.cjs.entry.js +2 -2
- package/dist/cjs/co-empty-state.cjs.entry.js +3 -3
- package/dist/cjs/co-event-calendar.cjs.entry.js +2 -2
- package/dist/cjs/co-event-popover.cjs.entry.js +1 -1
- package/dist/cjs/co-fab.cjs.entry.js +3 -3
- package/dist/cjs/co-file-field.cjs.entry.js +87 -16
- package/dist/cjs/co-file-type-tile.cjs.entry.js +2 -2
- package/dist/cjs/co-gradient-bar.cjs.entry.js +4 -4
- package/dist/cjs/co-helper-text.cjs.entry.js +3 -3
- package/dist/cjs/co-icon-button.cjs.entry.js +3 -3
- package/dist/cjs/co-icon.cjs.entry.js +2 -2
- package/dist/cjs/co-input.cjs.entry.js +1 -1
- package/dist/cjs/co-json-field.cjs.entry.js +4 -4
- package/dist/cjs/co-kbd_2.cjs.entry.js +6 -5
- package/dist/cjs/co-lightbox.cjs.entry.js +74 -9
- package/dist/cjs/co-list-footer.cjs.entry.js +1 -1
- package/dist/cjs/co-list-item.cjs.entry.js +4 -4
- package/dist/cjs/co-media-thumb.cjs.entry.js +2 -2
- package/dist/cjs/co-menu-divider.cjs.entry.js +1 -1
- package/dist/cjs/co-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/co-menu.cjs.entry.js +3 -3
- package/dist/cjs/co-modal.cjs.entry.js +23 -3
- package/dist/cjs/co-navbar.cjs.entry.js +2 -2
- package/dist/cjs/co-number-field.cjs.entry.js +9 -5
- package/dist/cjs/co-overlay.cjs.entry.js +5 -4
- package/dist/cjs/co-page-header.cjs.entry.js +1 -1
- package/dist/cjs/co-phone-field.cjs.entry.js +52 -2
- package/dist/cjs/co-popover.cjs.entry.js +36 -6
- package/dist/cjs/co-progress-bar.cjs.entry.js +3 -3
- package/dist/cjs/co-progress-circle.cjs.entry.js +2 -2
- package/dist/cjs/co-provider-logo_2.cjs.entry.js +1 -1
- package/dist/cjs/co-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/co-radio.cjs.entry.js +3 -3
- package/dist/cjs/co-rating.cjs.entry.js +4 -4
- package/dist/cjs/co-ref-field.cjs.entry.js +15 -8
- package/dist/cjs/co-rich-text-editor.cjs.entry.js +80 -23
- package/dist/cjs/co-rich-text-toolbar.cjs.entry.js +105 -2
- package/dist/cjs/co-rich-text-viewer.cjs.entry.js +2 -2
- package/dist/cjs/co-row.cjs.entry.js +2 -2
- package/dist/cjs/co-select.cjs.entry.js +10 -8
- package/dist/cjs/co-separator.cjs.entry.js +1 -1
- package/dist/cjs/co-sidebar-nav.cjs.entry.js +11 -9
- package/dist/cjs/co-sidebar.cjs.entry.js +2 -2
- package/dist/cjs/co-slider.cjs.entry.js +3 -3
- package/dist/cjs/co-swatch-grid.cjs.entry.js +3 -3
- package/dist/cjs/co-switch.cjs.entry.js +4 -4
- package/dist/cjs/co-tab-group.cjs.entry.js +110 -12
- package/dist/cjs/co-tab.cjs.entry.js +3 -3
- package/dist/cjs/co-tags-field.cjs.entry.js +7 -7
- package/dist/cjs/co-textarea.cjs.entry.js +5 -5
- package/dist/cjs/co-tile.cjs.entry.js +1 -1
- package/dist/cjs/co-time-field.cjs.entry.js +1 -1
- package/dist/cjs/co-toast.cjs.entry.js +1 -1
- package/dist/cjs/co-toggle-button-group.cjs.entry.js +6 -4
- package/dist/cjs/co-toggle-button.cjs.entry.js +5 -3
- package/dist/cjs/co-transfer-list.cjs.entry.js +1 -1
- package/dist/cjs/co-video.cjs.entry.js +2 -2
- package/dist/cjs/cobalt.cjs.js +1 -1
- package/dist/cjs/{color-DQVrQGi0.js → color-DlKNWtdc.js} +38 -2
- package/dist/cjs/escapeLayers-DlCir9Sr.js +22 -0
- package/dist/cjs/fieldChip-DbYMfylq.js +7 -0
- package/dist/cjs/{gradientStops-CMpH4fB_.js → gradientStops-xZbv7bi6.js} +1 -1
- package/dist/cjs/{index-BbSD1Eyw.js → index-CJhgaDE1.js} +1 -1
- package/dist/cjs/index-bHoidDwv.js +14 -14
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pagination-S2sSAgdl.js → pagination-BPA1UGs-.js} +30 -0
- package/dist/cjs/popoverApi-D1ChCCdO.js +27 -0
- package/dist/cjs/{richTextI18n-DXGIv5w1.js → richTextI18n-B8qb5JKb.js} +12 -0
- package/dist/cobalt/cobalt.esm.js +1 -1
- package/dist/cobalt/p-01b54d81.entry.js +1 -0
- package/dist/cobalt/{p-02ff847e.entry.js → p-02133c95.entry.js} +1 -1
- package/dist/cobalt/{p-73313cbe.entry.js → p-0bbaaf4f.entry.js} +1 -1
- package/dist/cobalt/p-0f3a3232.entry.js +1 -0
- package/dist/cobalt/p-12fc5119.entry.js +1 -0
- package/dist/cobalt/p-19f0f534.entry.js +1 -0
- package/dist/cobalt/p-1c9253a2.entry.js +1 -0
- package/dist/cobalt/{p-63908a8d.entry.js → p-256ca457.entry.js} +1 -1
- package/dist/cobalt/p-2832ab99.entry.js +1 -0
- package/dist/cobalt/p-299c2425.entry.js +1 -0
- package/dist/cobalt/{p-71fe35c4.entry.js → p-2ff8f591.entry.js} +1 -1
- package/dist/cobalt/p-33840969.entry.js +1 -0
- package/dist/cobalt/p-353ff9ed.entry.js +1 -0
- package/dist/cobalt/p-37f9ec35.entry.js +1 -0
- package/dist/cobalt/p-3878f174.entry.js +1 -0
- package/dist/cobalt/{p-a4eb298c.entry.js → p-3890d22f.entry.js} +1 -1
- package/dist/cobalt/{p-7fabd8ba.entry.js → p-3b7e90c8.entry.js} +1 -1
- package/dist/cobalt/p-3bff827a.entry.js +1 -0
- package/dist/cobalt/{p-65c191aa.entry.js → p-3e532a11.entry.js} +1 -1
- package/dist/cobalt/{p-4d743628.entry.js → p-3e864e7d.entry.js} +1 -1
- package/dist/cobalt/p-454dd8ab.entry.js +1 -0
- package/dist/cobalt/{p-cfaaa684.entry.js → p-4ae6fe0e.entry.js} +1 -1
- package/dist/cobalt/p-4cdfcd9c.entry.js +1 -0
- package/dist/cobalt/p-50ab6b9b.entry.js +1 -0
- package/dist/cobalt/{p-713637f2.entry.js → p-59a71695.entry.js} +1 -1
- package/dist/cobalt/{p-06689166.entry.js → p-5d41b58b.entry.js} +1 -1
- package/dist/cobalt/{p-95f2ebb1.entry.js → p-5e14f676.entry.js} +1 -1
- package/dist/cobalt/p-5e39cf70.entry.js +1 -0
- package/dist/cobalt/{p-df529110.entry.js → p-600d0cab.entry.js} +1 -1
- package/dist/cobalt/{p-d5d8fa8b.entry.js → p-63f888a1.entry.js} +1 -1
- package/dist/cobalt/{p-d00c3894.entry.js → p-6eca1c7c.entry.js} +1 -1
- package/dist/cobalt/p-74804c79.entry.js +1 -0
- package/dist/cobalt/{p-f2fa2ac0.entry.js → p-76ea3f34.entry.js} +1 -1
- package/dist/cobalt/p-7737354e.entry.js +1 -0
- package/dist/cobalt/p-7e444408.entry.js +1 -0
- package/dist/cobalt/p-7e72720a.entry.js +1 -0
- package/dist/cobalt/p-82bcd062.entry.js +1 -0
- package/dist/cobalt/{p-56176aa0.entry.js → p-83691cfb.entry.js} +1 -1
- package/dist/cobalt/p-84ad0227.entry.js +1 -0
- package/dist/cobalt/{p-b2457431.entry.js → p-89328cd8.entry.js} +1 -1
- package/dist/cobalt/p-8a26f3cc.entry.js +1 -0
- package/dist/cobalt/p-8e7ad2fe.entry.js +1 -0
- package/dist/cobalt/p-947b8e35.entry.js +1 -0
- package/dist/cobalt/p-94b871fb.entry.js +1 -0
- package/dist/cobalt/p-99781b0b.entry.js +1 -0
- package/dist/cobalt/{p-71dc8e4a.entry.js → p-9af26af0.entry.js} +1 -1
- package/dist/cobalt/p-9ce57385.entry.js +1 -0
- package/dist/cobalt/p-BzxEh7sq.js +1 -0
- package/dist/cobalt/{p-DXLeDZvr.js → p-CP7MznKV.js} +1 -1
- package/dist/cobalt/p-CSLjZ3WO.js +1 -0
- package/dist/cobalt/{p-Ch-Tygdb.js → p-CqQobidl.js} +1 -1
- package/dist/cobalt/p-Dp1JT0dm.js +1 -0
- package/dist/cobalt/p-EtYK1iGx.js +1 -0
- package/dist/cobalt/p-LnW75kr5.js +1 -0
- package/dist/cobalt/{p-cf5b91be.entry.js → p-a18c01eb.entry.js} +1 -1
- package/dist/cobalt/{p-65d44da2.entry.js → p-a33a277a.entry.js} +1 -1
- package/dist/cobalt/p-a4154bcf.entry.js +1 -0
- package/dist/cobalt/{p-aed832d5.entry.js → p-a4264bde.entry.js} +1 -1
- package/dist/cobalt/p-a6c9a0c5.entry.js +1 -0
- package/dist/cobalt/{p-f69804a6.entry.js → p-b402665a.entry.js} +1 -1
- package/dist/cobalt/p-b723aa47.entry.js +1 -0
- package/dist/cobalt/{p-903237f9.entry.js → p-bbf3d859.entry.js} +1 -1
- package/dist/cobalt/p-bee52042.entry.js +1 -0
- package/dist/cobalt/{p-a7cd61ce.entry.js → p-c004fde5.entry.js} +1 -1
- package/dist/cobalt/p-c026968c.entry.js +1 -0
- package/dist/cobalt/{p-8a2a2b6c.entry.js → p-c23630ab.entry.js} +1 -1
- package/dist/cobalt/p-c31b9b51.entry.js +1 -0
- package/dist/cobalt/{p-0e4c2234.entry.js → p-c93be2d5.entry.js} +1 -1
- package/dist/cobalt/p-cb1013e6.entry.js +1 -0
- package/dist/cobalt/p-cd43d372.entry.js +1 -0
- package/dist/cobalt/{p-26cbdc33.entry.js → p-cea21e08.entry.js} +1 -1
- package/dist/cobalt/{p-ba39a965.entry.js → p-d1595580.entry.js} +1 -1
- package/dist/cobalt/{p-99df434b.entry.js → p-d26dc681.entry.js} +1 -1
- package/dist/cobalt/{p-8680559b.entry.js → p-d375c84e.entry.js} +1 -1
- package/dist/cobalt/{p-bee30373.entry.js → p-d7775109.entry.js} +1 -1
- package/dist/cobalt/p-d9b4594b.entry.js +1 -0
- package/dist/cobalt/{p-b67fb616.entry.js → p-e4646a0e.entry.js} +1 -1
- package/dist/cobalt/{p-7beface1.entry.js → p-e5350eeb.entry.js} +1 -1
- package/dist/cobalt/p-eab59be5.entry.js +1 -0
- package/dist/cobalt/{p-e5f0d560.entry.js → p-f1da1df1.entry.js} +1 -1
- package/dist/cobalt/p-f23f52ed.entry.js +1 -0
- package/dist/cobalt/p-f562bd96.entry.js +1 -0
- package/dist/cobalt/{p-13e5b724.entry.js → p-f6f273f7.entry.js} +1 -1
- package/dist/cobalt/{p-71ae1551.entry.js → p-fb6671e0.entry.js} +1 -1
- package/dist/cobalt/p-fb731600.entry.js +1 -0
- package/dist/cobalt/{p-7d1718ed.entry.js → p-feec49a4.entry.js} +1 -1
- package/dist/cobalt/p-ff218d09.entry.js +1 -0
- package/dist/cobalt/p-hXbDUT3I.js +1 -0
- package/dist/collection/components/co-action-bar/co-action-bar.css +6 -2
- package/dist/collection/components/co-app-shell/co-app-shell.css +6 -5
- package/dist/collection/components/co-autocomplete/co-autocomplete.css +12 -6
- package/dist/collection/components/co-autocomplete/co-autocomplete.js +1 -1
- package/dist/collection/components/co-avatar/co-avatar.css +11 -1
- package/dist/collection/components/co-avatar/co-avatar.js +5 -2
- package/dist/collection/components/co-avatar-group/co-avatar-group.js +1 -1
- package/dist/collection/components/co-button/co-button.css +38 -7
- package/dist/collection/components/co-button/co-button.js +34 -6
- package/dist/collection/components/co-calendar/co-calendar.css +4 -1
- package/dist/collection/components/co-calendar-month/co-calendar-month.css +3 -1
- package/dist/collection/components/co-calendar-timegrid/co-calendar-timegrid.css +3 -1
- package/dist/collection/components/co-checkbox/co-checkbox.css +5 -1
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.css +10 -5
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +1 -1
- package/dist/collection/components/co-chip/co-chip.css +17 -12
- package/dist/collection/components/co-color-area/co-color-area.js +2 -2
- package/dist/collection/components/co-color-picker/co-color-picker.css +19 -7
- package/dist/collection/components/co-color-picker/co-color-picker.js +42 -3
- package/dist/collection/components/co-color-slider/co-color-slider.js +1 -1
- package/dist/collection/components/co-column-picker/co-column-picker.css +10 -5
- package/dist/collection/components/co-column-picker/co-column-picker.js +2 -2
- package/dist/collection/components/co-combobox/co-combobox.css +8 -5
- package/dist/collection/components/co-combobox/co-combobox.js +7 -5
- package/dist/collection/components/co-command-search/co-command-search.css +5 -2
- package/dist/collection/components/co-command-search/co-command-search.js +1 -1
- package/dist/collection/components/co-data-table/co-data-table.css +13 -10
- package/dist/collection/components/co-data-table/co-data-table.js +1 -1
- package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.css +15 -13
- package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.js +4 -4
- package/dist/collection/components/co-date-field/co-date-field.css +11 -5
- package/dist/collection/components/co-date-field/co-date-field.js +4 -4
- package/dist/collection/components/co-date-picker/co-date-picker.css +5 -2
- package/dist/collection/components/co-date-range/co-date-range.js +1 -1
- package/dist/collection/components/co-date-range-picker/co-date-range-picker.css +9 -3
- package/dist/collection/components/co-date-range-picker/co-date-range-picker.js +2 -2
- package/dist/collection/components/co-date-time-picker/co-date-time-picker.css +11 -5
- package/dist/collection/components/co-date-time-picker/co-date-time-picker.js +2 -2
- package/dist/collection/components/co-document-editor/co-document-editor.css +112 -1
- package/dist/collection/components/co-document-editor/co-document-editor.js +91 -10
- package/dist/collection/components/co-document-editor/signature-bar.js +26 -0
- package/dist/collection/components/co-drawer/co-drawer.css +12 -4
- package/dist/collection/components/co-drawer/co-drawer.js +18 -1
- package/dist/collection/components/co-drive-card/co-drive-card.css +18 -12
- package/dist/collection/components/co-drive-card/co-drive-card.js +1 -1
- package/dist/collection/components/co-drop-zone/co-drop-zone.js +1 -1
- package/dist/collection/components/co-emoji-picker/co-emoji-picker.js +2 -2
- package/dist/collection/components/co-empty-state/co-empty-state.css +10 -6
- package/dist/collection/components/co-empty-state/co-empty-state.js +2 -2
- package/dist/collection/components/co-event-calendar/co-event-calendar.js +2 -2
- package/dist/collection/components/co-event-popover/co-event-popover.js +1 -1
- package/dist/collection/components/co-fab/co-fab.css +5 -3
- package/dist/collection/components/co-fab/co-fab.js +2 -2
- package/dist/collection/components/co-file-field/co-file-field.css +11 -6
- package/dist/collection/components/co-file-field/co-file-field.js +30 -16
- package/dist/collection/components/co-file-field/co-file-field.utils.js +57 -0
- package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +2 -2
- package/dist/collection/components/co-gradient-bar/co-gradient-bar.js +2 -2
- package/dist/collection/components/co-helper-text/co-helper-text.css +6 -4
- package/dist/collection/components/co-helper-text/co-helper-text.js +2 -2
- package/dist/collection/components/co-icon/co-icon.js +2 -2
- package/dist/collection/components/co-icon-button/co-icon-button.css +5 -3
- package/dist/collection/components/co-icon-button/co-icon-button.js +2 -2
- package/dist/collection/components/co-input/co-input.css +49 -22
- package/dist/collection/components/co-json-field/co-json-field.css +10 -5
- package/dist/collection/components/co-json-field/co-json-field.js +3 -3
- package/dist/collection/components/co-kbd/co-kbd.js +1 -1
- package/dist/collection/components/co-lightbox/co-lightbox.js +11 -9
- package/dist/collection/components/co-lightbox/openInTab.js +63 -0
- package/dist/collection/components/co-list-footer/co-list-footer.js +1 -1
- package/dist/collection/components/co-list-item/co-list-item.js +4 -4
- package/dist/collection/components/co-media-thumb/co-media-thumb.js +2 -2
- package/dist/collection/components/co-menu/co-menu.css +7 -0
- package/dist/collection/components/co-menu/co-menu.js +2 -2
- package/dist/collection/components/co-menu-divider/co-menu-divider.js +1 -1
- package/dist/collection/components/co-menu-item/co-menu-item.css +19 -7
- package/dist/collection/components/co-modal/co-modal.css +3 -0
- package/dist/collection/components/co-modal/co-modal.js +23 -2
- package/dist/collection/components/co-navbar/co-navbar.js +2 -2
- package/dist/collection/components/co-number-field/co-number-field.css +12 -6
- package/dist/collection/components/co-number-field/co-number-field.js +3 -3
- package/dist/collection/components/co-option-list/co-option-list.css +7 -4
- package/dist/collection/components/co-option-list/co-option-list.js +2 -2
- package/dist/collection/components/co-overlay/co-overlay.css +3 -0
- package/dist/collection/components/co-overlay/co-overlay.js +4 -3
- package/dist/collection/components/co-overlay/escapeLayers.js +20 -0
- package/dist/collection/components/co-page-header/co-page-header.js +1 -1
- package/dist/collection/components/co-phone-field/co-phone-field.css +8 -3
- package/dist/collection/components/co-phone-field/co-phone-field.js +36 -1
- package/dist/collection/components/co-popover/co-popover.css +4 -0
- package/dist/collection/components/co-popover/co-popover.js +36 -6
- package/dist/collection/components/co-progress-bar/co-progress-bar.css +6 -2
- package/dist/collection/components/co-progress-bar/co-progress-bar.js +2 -2
- package/dist/collection/components/co-progress-circle/co-progress-circle.js +2 -2
- package/dist/collection/components/co-radio/co-radio.js +3 -3
- package/dist/collection/components/co-radio-group/co-radio-group.css +10 -5
- package/dist/collection/components/co-radio-group/co-radio-group.js +1 -1
- package/dist/collection/components/co-rating/co-rating.css +6 -4
- package/dist/collection/components/co-rating/co-rating.js +3 -3
- package/dist/collection/components/co-ref-field/co-ref-field.css +43 -8
- package/dist/collection/components/co-ref-field/co-ref-field.js +17 -10
- package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.css +26 -4
- package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +77 -20
- package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.css +3 -1
- package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.js +40 -0
- package/dist/collection/components/co-rich-text-toolbar/panelFit.js +63 -0
- package/dist/collection/components/co-rich-text-viewer/co-rich-text-viewer.css +2 -1
- package/dist/collection/components/co-row/co-row.js +2 -2
- package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +1 -1
- package/dist/collection/components/co-select/co-select.css +22 -12
- package/dist/collection/components/co-select/co-select.js +10 -8
- package/dist/collection/components/co-separator/co-separator.js +1 -1
- package/dist/collection/components/co-sidebar/co-sidebar.js +2 -2
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.css +56 -19
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +11 -9
- package/dist/collection/components/co-skeleton/co-skeleton.js +1 -1
- package/dist/collection/components/co-slider/co-slider.css +6 -4
- package/dist/collection/components/co-slider/co-slider.js +2 -2
- package/dist/collection/components/co-swatch-grid/co-swatch-grid.js +1 -1
- package/dist/collection/components/co-switch/co-switch.css +16 -7
- package/dist/collection/components/co-switch/co-switch.js +3 -3
- package/dist/collection/components/co-tab/co-tab.css +33 -29
- package/dist/collection/components/co-tab/co-tab.js +2 -2
- package/dist/collection/components/co-tab-group/co-tab-group.css +26 -6
- package/dist/collection/components/co-tab-group/co-tab-group.js +78 -11
- package/dist/collection/components/co-tab-group/trackScroll.js +31 -0
- package/dist/collection/components/co-tags-field/co-tags-field.css +10 -5
- package/dist/collection/components/co-tags-field/co-tags-field.js +5 -5
- package/dist/collection/components/co-textarea/co-textarea.css +12 -7
- package/dist/collection/components/co-textarea/co-textarea.js +4 -4
- package/dist/collection/components/co-tile/co-tile.js +1 -1
- package/dist/collection/components/co-time-field/co-time-field.js +1 -1
- package/dist/collection/components/co-toast/co-toast.css +36 -25
- package/dist/collection/components/co-toast/co-toast.js +2 -2
- package/dist/collection/components/co-toggle-button/co-toggle-button.css +47 -0
- package/dist/collection/components/co-toggle-button/co-toggle-button.js +7 -5
- package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.css +12 -0
- package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +10 -8
- package/dist/collection/components/co-tooltip/co-tooltip.js +5 -4
- package/dist/collection/components/co-transfer-list/co-transfer-list.css +15 -8
- package/dist/collection/components/co-transfer-list/co-transfer-list.js +1 -1
- package/dist/collection/components/co-tree-item/co-tree-item.js +2 -2
- package/dist/collection/components/co-video/co-video.js +2 -2
- package/dist/collection/utils/amountText.js +5 -1
- package/dist/collection/utils/color.js +36 -2
- package/dist/collection/utils/eventColor.js +7 -3
- package/dist/collection/utils/fieldChip.js +1 -1
- package/dist/collection/utils/phoneI18n.js +34 -0
- package/dist/collection/utils/popoverApi.js +23 -0
- package/dist/collection/utils/richTextI18n.js +12 -0
- package/dist/components/co-accordion.js +1 -1
- package/dist/components/co-action-bar.js +1 -1
- package/dist/components/co-app-shell.js +1 -1
- package/dist/components/co-audio-player.js +1 -1
- package/dist/components/co-autocomplete.js +1 -1
- package/dist/components/co-avatar-group.js +1 -1
- package/dist/components/co-avatar.js +1 -1
- package/dist/components/co-breadcrumb-item.js +1 -1
- package/dist/components/co-breadcrumb.js +1 -1
- package/dist/components/co-button.js +1 -1
- package/dist/components/co-calendar-month.js +1 -1
- package/dist/components/co-calendar-timegrid.js +1 -1
- package/dist/components/co-calendar.js +1 -1
- package/dist/components/co-carousel.js +1 -1
- package/dist/components/co-checkbox-group.js +1 -1
- package/dist/components/co-checkbox.js +1 -1
- package/dist/components/co-chip.js +1 -1
- package/dist/components/co-color-picker.js +1 -1
- package/dist/components/co-column-picker.js +1 -1
- package/dist/components/co-combobox.js +1 -1
- package/dist/components/co-command-search.js +1 -1
- package/dist/components/co-data-table-pagination.js +1 -1
- package/dist/components/co-data-table.js +1 -1
- package/dist/components/co-date-field.js +1 -1
- package/dist/components/co-date-picker.js +1 -1
- package/dist/components/co-date-range-picker.js +1 -1
- package/dist/components/co-date-range.js +1 -1
- package/dist/components/co-date-time-picker.js +1 -1
- package/dist/components/co-document-editor.js +1 -1
- package/dist/components/co-drawer.js +1 -1
- package/dist/components/co-drive-card.js +1 -1
- package/dist/components/co-drop-zone.js +1 -1
- package/dist/components/co-emoji-picker.js +1 -1
- package/dist/components/co-empty-state.js +1 -1
- package/dist/components/co-event-calendar.js +1 -1
- package/dist/components/co-event-popover.js +1 -1
- package/dist/components/co-fab.js +1 -1
- package/dist/components/co-file-field.js +1 -1
- package/dist/components/co-file-type-tile.js +1 -1
- package/dist/components/co-gradient-bar.js +1 -1
- package/dist/components/co-helper-text.js +1 -1
- package/dist/components/co-icon-button.js +1 -1
- package/dist/components/co-icon.js +1 -1
- package/dist/components/co-input.js +1 -1
- package/dist/components/co-json-field.js +1 -1
- package/dist/components/co-kbd.js +1 -1
- package/dist/components/co-lightbox.js +1 -1
- package/dist/components/co-list-footer.js +1 -1
- package/dist/components/co-list-item.js +1 -1
- package/dist/components/co-media-thumb.js +1 -1
- package/dist/components/co-menu-divider.js +1 -1
- package/dist/components/co-menu-item.js +1 -1
- package/dist/components/co-menu.js +1 -1
- package/dist/components/co-modal.js +1 -1
- package/dist/components/co-navbar.js +1 -1
- package/dist/components/co-number-field.js +1 -1
- package/dist/components/co-option-list.js +1 -1
- package/dist/components/co-overlay.js +1 -1
- package/dist/components/co-page-header.js +1 -1
- package/dist/components/co-phone-field.js +1 -1
- package/dist/components/co-popover.js +1 -1
- package/dist/components/co-progress-bar.js +1 -1
- package/dist/components/co-progress-circle.js +1 -1
- package/dist/components/co-radio-group.js +1 -1
- package/dist/components/co-radio.js +1 -1
- package/dist/components/co-rating.js +1 -1
- package/dist/components/co-ref-field.js +1 -1
- package/dist/components/co-rich-text-editor.js +1 -1
- package/dist/components/co-rich-text-toolbar.js +1 -1
- package/dist/components/co-rich-text-viewer.js +1 -1
- package/dist/components/co-row.js +1 -1
- package/dist/components/co-select.js +1 -1
- package/dist/components/co-separator.js +1 -1
- package/dist/components/co-sidebar-nav.js +1 -1
- package/dist/components/co-sidebar.js +1 -1
- package/dist/components/co-skeleton.js +1 -1
- package/dist/components/co-slider.js +1 -1
- package/dist/components/co-swatch-grid.js +1 -1
- package/dist/components/co-switch.js +1 -1
- package/dist/components/co-tab-group.js +1 -1
- package/dist/components/co-tab.js +1 -1
- package/dist/components/co-tags-field.js +1 -1
- package/dist/components/co-textarea.js +1 -1
- package/dist/components/co-tile.js +1 -1
- package/dist/components/co-time-field.js +1 -1
- package/dist/components/co-toast.js +1 -1
- package/dist/components/co-toggle-button-group.js +1 -1
- package/dist/components/co-toggle-button.js +1 -1
- package/dist/components/co-tooltip.js +1 -1
- package/dist/components/co-transfer-list.js +1 -1
- package/dist/components/co-tree-item.js +1 -1
- package/dist/components/co-video.js +1 -1
- package/dist/components/{p-CxWo3qDo.js → p-4Y3YkFf1.js} +1 -1
- package/dist/components/p-B70R6xWE.js +1 -0
- package/dist/components/{p-BW10Sgiy.js → p-BGNXvnDr.js} +1 -1
- package/dist/components/p-BMyWdiVO.js +1 -0
- package/dist/components/p-BRIf9NGv.js +1 -0
- package/dist/components/p-BSt2t5Fy.js +1 -0
- package/dist/components/p-Bd6H9_5D.js +1 -0
- package/dist/components/p-BfDYq7JS.js +1 -0
- package/dist/components/{p-C4sZjIDj.js → p-BhmVj5-9.js} +1 -1
- package/dist/components/{p-BI_VaFsx.js → p-BkyYV32T.js} +1 -1
- package/dist/components/p-BzxEh7sq.js +1 -0
- package/dist/components/p-CDiRdG6I.js +1 -0
- package/dist/components/{p-Dn2wblrA.js → p-CO12CK0t.js} +1 -1
- package/dist/components/{p-DymSqdlK.js → p-COCcx0DN.js} +1 -1
- package/dist/components/{p-DXLeDZvr.js → p-CP7MznKV.js} +1 -1
- package/dist/components/{p-Bw_b_czs.js → p-CXi0fhTi.js} +1 -1
- package/dist/components/p-CaAdnjC6.js +1 -0
- package/dist/components/p-CjB5Vqpy.js +1 -0
- package/dist/components/{p-Ch-Tygdb.js → p-CqQobidl.js} +1 -1
- package/dist/components/{p-BRZci8B3.js → p-CwRoHnzq.js} +1 -1
- package/dist/components/p-DHIa14ep.js +1 -0
- package/dist/components/{p-Dnz99Ox_.js → p-DMW9TJ7Z.js} +1 -1
- package/dist/components/p-DRL-a5hO.js +1 -0
- package/dist/components/p-DTWqwwXO.js +1 -0
- package/dist/components/{p-8XzG8pzY.js → p-DldA2IL3.js} +1 -1
- package/dist/components/p-Dp1JT0dm.js +1 -0
- package/dist/components/p-LnW75kr5.js +1 -0
- package/dist/components/p-R1W48hzW.js +1 -0
- package/dist/components/p-hXbDUT3I.js +1 -0
- package/dist/components/p-o5wUtH9g.js +1 -0
- package/dist/components/{p-KK2vAKs-.js → p-qMNHMnvI.js} +1 -1
- package/dist/components/{p-C6WHpL5X.js → p-rfvTj6cP.js} +1 -1
- package/dist/components/{p-COozgrEk.js → p-w3AQrtBx.js} +1 -1
- package/dist/components/p-xA7AfoIW.js +1 -0
- package/dist/esm/co-action-bar.entry.js +1 -1
- package/dist/esm/co-app-shell.entry.js +1 -1
- package/dist/esm/co-autocomplete.entry.js +1 -1
- package/dist/esm/co-avatar.entry.js +6 -3
- package/dist/esm/co-button.entry.js +14 -6
- package/dist/esm/co-calendar-month_2.entry.js +9 -5
- package/dist/esm/co-calendar_3.entry.js +25 -8
- package/dist/esm/co-checkbox-group.entry.js +1 -1
- package/dist/esm/co-checkbox.entry.js +1 -1
- package/dist/esm/co-chip_2.entry.js +4 -4
- package/dist/esm/co-color-picker.entry.js +24 -5
- package/dist/esm/co-column-picker.entry.js +3 -3
- package/dist/esm/co-combobox.entry.js +7 -5
- package/dist/esm/co-command-search.entry.js +1 -1
- package/dist/esm/co-data-table-pagination.entry.js +5 -5
- package/dist/esm/co-data-table.entry.js +1 -1
- package/dist/esm/co-date-picker.entry.js +1 -1
- package/dist/esm/co-date-range-picker.entry.js +1 -1
- package/dist/esm/co-date-range.entry.js +1 -1
- package/dist/esm/co-date-time-picker.entry.js +3 -3
- package/dist/esm/co-document-editor.entry.js +108 -7
- package/dist/esm/co-drive-card.entry.js +2 -2
- package/dist/esm/co-drop-zone.entry.js +1 -1
- package/dist/esm/co-emoji-picker.entry.js +2 -2
- package/dist/esm/co-empty-state.entry.js +3 -3
- package/dist/esm/co-event-calendar.entry.js +2 -2
- package/dist/esm/co-event-popover.entry.js +1 -1
- package/dist/esm/co-fab.entry.js +3 -3
- package/dist/esm/co-file-field.entry.js +87 -16
- package/dist/esm/co-file-type-tile.entry.js +2 -2
- package/dist/esm/co-gradient-bar.entry.js +4 -4
- package/dist/esm/co-helper-text.entry.js +3 -3
- package/dist/esm/co-icon-button.entry.js +3 -3
- package/dist/esm/co-icon.entry.js +2 -2
- package/dist/esm/co-input.entry.js +1 -1
- package/dist/esm/co-json-field.entry.js +4 -4
- package/dist/esm/co-kbd_2.entry.js +6 -5
- package/dist/esm/co-lightbox.entry.js +74 -9
- package/dist/esm/co-list-footer.entry.js +1 -1
- package/dist/esm/co-list-item.entry.js +4 -4
- package/dist/esm/co-media-thumb.entry.js +2 -2
- package/dist/esm/co-menu-divider.entry.js +1 -1
- package/dist/esm/co-menu-item.entry.js +1 -1
- package/dist/esm/co-menu.entry.js +3 -3
- package/dist/esm/co-modal.entry.js +23 -3
- package/dist/esm/co-navbar.entry.js +2 -2
- package/dist/esm/co-number-field.entry.js +9 -5
- package/dist/esm/co-overlay.entry.js +5 -4
- package/dist/esm/co-page-header.entry.js +1 -1
- package/dist/esm/co-phone-field.entry.js +52 -2
- package/dist/esm/co-popover.entry.js +36 -6
- package/dist/esm/co-progress-bar.entry.js +3 -3
- package/dist/esm/co-progress-circle.entry.js +2 -2
- package/dist/esm/co-provider-logo_2.entry.js +1 -1
- package/dist/esm/co-radio-group.entry.js +1 -1
- package/dist/esm/co-radio.entry.js +3 -3
- package/dist/esm/co-rating.entry.js +4 -4
- package/dist/esm/co-ref-field.entry.js +15 -8
- package/dist/esm/co-rich-text-editor.entry.js +80 -23
- package/dist/esm/co-rich-text-toolbar.entry.js +105 -2
- package/dist/esm/co-rich-text-viewer.entry.js +2 -2
- package/dist/esm/co-row.entry.js +2 -2
- package/dist/esm/co-select.entry.js +10 -8
- package/dist/esm/co-separator.entry.js +1 -1
- package/dist/esm/co-sidebar-nav.entry.js +11 -9
- package/dist/esm/co-sidebar.entry.js +2 -2
- package/dist/esm/co-slider.entry.js +3 -3
- package/dist/esm/co-swatch-grid.entry.js +3 -3
- package/dist/esm/co-switch.entry.js +4 -4
- package/dist/esm/co-tab-group.entry.js +110 -12
- package/dist/esm/co-tab.entry.js +3 -3
- package/dist/esm/co-tags-field.entry.js +7 -7
- package/dist/esm/co-textarea.entry.js +5 -5
- package/dist/esm/co-tile.entry.js +1 -1
- package/dist/esm/co-time-field.entry.js +1 -1
- package/dist/esm/co-toast.entry.js +1 -1
- package/dist/esm/co-toggle-button-group.entry.js +6 -4
- package/dist/esm/co-toggle-button.entry.js +5 -3
- package/dist/esm/co-transfer-list.entry.js +1 -1
- package/dist/esm/co-video.entry.js +2 -2
- package/dist/esm/cobalt.js +1 -1
- package/dist/esm/{color-BVGGRfNG.js → color-BzxEh7sq.js} +37 -3
- package/dist/esm/escapeLayers-hXbDUT3I.js +18 -0
- package/dist/esm/fieldChip-B0N8z5W-.js +5 -0
- package/dist/esm/{gradientStops-DDK0y8ra.js → gradientStops-W-_rTTl_.js} +1 -1
- package/dist/esm/{index-CgyOJePd.js → index-BNt7Zg14.js} +1 -1
- package/dist/esm/index-DJkaRtbb.js +14 -14
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pagination-BzrIQtrk.js → pagination-BXztNUE3.js} +30 -0
- package/dist/esm/popoverApi-Dp1JT0dm.js +25 -0
- package/dist/esm/{richTextI18n-xnrKkNWQ.js → richTextI18n-EtYK1iGx.js} +12 -0
- package/dist/types/components/co-button/co-button.d.ts +4 -0
- package/dist/types/components/co-color-picker/co-color-picker.d.ts +7 -0
- package/dist/types/components/co-document-editor/co-document-editor.d.ts +24 -1
- package/dist/types/components/co-document-editor/signature-bar.d.ts +26 -0
- package/dist/types/components/co-drawer/co-drawer.d.ts +2 -0
- package/dist/types/components/co-file-field/co-file-field.d.ts +6 -0
- package/dist/types/components/co-file-field/co-file-field.utils.d.ts +26 -0
- package/dist/types/components/co-lightbox/co-lightbox.d.ts +5 -0
- package/dist/types/components/co-lightbox/openInTab.d.ts +46 -0
- package/dist/types/components/co-modal/co-modal.d.ts +2 -0
- package/dist/types/components/co-overlay/escapeLayers.d.ts +18 -0
- package/dist/types/components/co-phone-field/co-phone-field.d.ts +11 -0
- package/dist/types/components/co-popover/co-popover.d.ts +7 -0
- package/dist/types/components/co-ref-field/co-ref-field.d.ts +3 -2
- package/dist/types/components/co-rich-text-editor/co-rich-text-editor.d.ts +14 -1
- package/dist/types/components/co-rich-text-toolbar/co-rich-text-toolbar.d.ts +10 -0
- package/dist/types/components/co-rich-text-toolbar/panelFit.d.ts +38 -0
- package/dist/types/components/co-tab-group/co-tab-group.d.ts +21 -3
- package/dist/types/components/co-tab-group/trackScroll.d.ts +19 -0
- package/dist/types/components/co-toggle-button/co-toggle-button.d.ts +3 -1
- package/dist/types/components/co-toggle-button-group/co-toggle-button-group.d.ts +6 -4
- package/dist/types/components.d.ts +50 -25
- package/dist/types/utils/color.d.ts +28 -1
- package/dist/types/utils/eventColor.d.ts +3 -1
- package/dist/types/utils/fieldChip.d.ts +6 -0
- package/dist/types/utils/phoneI18n.d.ts +18 -0
- package/dist/types/utils/popoverApi.d.ts +12 -0
- package/dist/types/utils/richTextI18n.d.ts +4 -0
- package/package.json +5 -5
- package/dist/cjs/fieldChip-C7MxxBVO.js +0 -7
- package/dist/cobalt/p-0d046d98.entry.js +0 -1
- package/dist/cobalt/p-12914c0a.entry.js +0 -1
- package/dist/cobalt/p-1348d5ca.entry.js +0 -1
- package/dist/cobalt/p-2231bacc.entry.js +0 -1
- package/dist/cobalt/p-28cf05f3.entry.js +0 -1
- package/dist/cobalt/p-38eb2615.entry.js +0 -1
- package/dist/cobalt/p-3d1a48e5.entry.js +0 -1
- package/dist/cobalt/p-4bcdd422.entry.js +0 -1
- package/dist/cobalt/p-58ebb303.entry.js +0 -1
- package/dist/cobalt/p-5e678e88.entry.js +0 -1
- package/dist/cobalt/p-60f948c4.entry.js +0 -1
- package/dist/cobalt/p-6974df59.entry.js +0 -1
- package/dist/cobalt/p-69ecc933.entry.js +0 -1
- package/dist/cobalt/p-6c1992c9.entry.js +0 -1
- package/dist/cobalt/p-6c7e423c.entry.js +0 -1
- package/dist/cobalt/p-6d4a660c.entry.js +0 -1
- package/dist/cobalt/p-763698b3.entry.js +0 -1
- package/dist/cobalt/p-77e0d401.entry.js +0 -1
- package/dist/cobalt/p-78412feb.entry.js +0 -1
- package/dist/cobalt/p-7c20207b.entry.js +0 -1
- package/dist/cobalt/p-7df18a52.entry.js +0 -1
- package/dist/cobalt/p-848f5ca4.entry.js +0 -1
- package/dist/cobalt/p-868d1a18.entry.js +0 -1
- package/dist/cobalt/p-87de5469.entry.js +0 -1
- package/dist/cobalt/p-93063876.entry.js +0 -1
- package/dist/cobalt/p-9adbab95.entry.js +0 -1
- package/dist/cobalt/p-9b114836.entry.js +0 -1
- package/dist/cobalt/p-9dc01092.entry.js +0 -1
- package/dist/cobalt/p-BVGGRfNG.js +0 -1
- package/dist/cobalt/p-DGLDAl09.js +0 -1
- package/dist/cobalt/p-DgJovDdy.js +0 -1
- package/dist/cobalt/p-a56bd4a8.entry.js +0 -1
- package/dist/cobalt/p-a5eabecb.entry.js +0 -1
- package/dist/cobalt/p-a5ee1fc2.entry.js +0 -1
- package/dist/cobalt/p-ad752791.entry.js +0 -1
- package/dist/cobalt/p-b39a4999.entry.js +0 -1
- package/dist/cobalt/p-b5dabdc3.entry.js +0 -1
- package/dist/cobalt/p-b9b73dcb.entry.js +0 -1
- package/dist/cobalt/p-bb7bbe70.entry.js +0 -1
- package/dist/cobalt/p-c5464a98.entry.js +0 -1
- package/dist/cobalt/p-c567533e.entry.js +0 -1
- package/dist/cobalt/p-d6215d80.entry.js +0 -1
- package/dist/cobalt/p-ea24eea8.entry.js +0 -1
- package/dist/cobalt/p-f0898e21.entry.js +0 -1
- package/dist/cobalt/p-f403eeec.entry.js +0 -1
- package/dist/cobalt/p-xnrKkNWQ.js +0 -1
- package/dist/components/p-B3Egz082.js +0 -1
- package/dist/components/p-B9wdMd_0.js +0 -1
- package/dist/components/p-BVGGRfNG.js +0 -1
- package/dist/components/p-BdmzslA5.js +0 -1
- package/dist/components/p-BzNBPHen.js +0 -1
- package/dist/components/p-C4U2tbRp.js +0 -1
- package/dist/components/p-C_6szR7t.js +0 -1
- package/dist/components/p-CiYPJW0B.js +0 -1
- package/dist/components/p-D4XP17VP.js +0 -1
- package/dist/components/p-DB8DGMc-.js +0 -1
- package/dist/components/p-DGLDAl09.js +0 -1
- package/dist/components/p-DhPxNA2f.js +0 -1
- package/dist/components/p-DsuFNmTI.js +0 -1
- package/dist/components/p-TGRbLkLz.js +0 -1
- package/dist/components/p-V7HYy0VO.js +0 -1
- package/dist/components/p-dnaee7fS.js +0 -1
- package/dist/components/p-wUXcJGdy.js +0 -1
- package/dist/esm/fieldChip-B2ctp2m6.js +0 -5
|
@@ -84,24 +84,26 @@
|
|
|
84
84
|
line-height: 1;
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
+
/* Tinta de estado por --co-semantic-text-*: gira con el tema (status-* es relleno, no se
|
|
88
|
+
aclara, y como texto en oscuro daba <4,5). Fallback a la primitiva hasta publicar tokens. */
|
|
87
89
|
.co-switch-wrapper__helper--error .co-switch-wrapper__helper-icon,
|
|
88
90
|
.co-switch-wrapper__helper--error .co-switch-wrapper__helper-text {
|
|
89
|
-
color: var(--co-semantic-status-error);
|
|
91
|
+
color: var(--co-semantic-text-error, var(--co-semantic-status-error));
|
|
90
92
|
}
|
|
91
93
|
|
|
92
94
|
.co-switch-wrapper__helper--success .co-switch-wrapper__helper-icon,
|
|
93
95
|
.co-switch-wrapper__helper--success .co-switch-wrapper__helper-text {
|
|
94
|
-
color: var(--co-semantic-status-success);
|
|
96
|
+
color: var(--co-semantic-text-success, var(--co-semantic-status-success));
|
|
95
97
|
}
|
|
96
98
|
|
|
97
99
|
.co-switch-wrapper__helper--warning .co-switch-wrapper__helper-icon,
|
|
98
100
|
.co-switch-wrapper__helper--warning .co-switch-wrapper__helper-text {
|
|
99
|
-
color: var(--co-color-status-review);
|
|
101
|
+
color: var(--co-semantic-text-warning, var(--co-color-status-review));
|
|
100
102
|
}
|
|
101
103
|
|
|
102
104
|
.co-switch-wrapper__helper--info .co-switch-wrapper__helper-icon,
|
|
103
105
|
.co-switch-wrapper__helper--info .co-switch-wrapper__helper-text {
|
|
104
|
-
color: var(--co-semantic-status-info);
|
|
106
|
+
color: var(--co-semantic-text-info, var(--co-semantic-status-info));
|
|
105
107
|
}
|
|
106
108
|
|
|
107
109
|
/* ---- Switch track ---- */
|
|
@@ -126,8 +128,12 @@
|
|
|
126
128
|
.co-switch--on { background: var(--co-semantic-surface-primary); }
|
|
127
129
|
.co-switch--off {
|
|
128
130
|
/* Sin backdrop-filter (D2): el track off vive sobre fondo uniforme
|
|
129
|
-
(CellActiveToggle en fila de datatable, forms) → blur inerte.
|
|
130
|
-
|
|
131
|
+
(CellActiveToggle en fila de datatable, forms) → blur inerte.
|
|
132
|
+
Pista apagada por --co-semantic-control-track-off (D8, auditoría oscuro): en claro vale
|
|
133
|
+
el mismo color-mix de siempre (también es el fallback); en oscuro, gray-500 opaco — el
|
|
134
|
+
35% de surface-muted quedaba a 1,06:1 de la página y el pulgar oscuro se perdía encima.
|
|
135
|
+
El pulgar sigue en control-thumb (base-negro en oscuro: 4,78:1 sobre la pista). */
|
|
136
|
+
background: var(--co-semantic-control-track-off, color-mix(in srgb, var(--co-semantic-surface-muted) 35%, transparent));
|
|
131
137
|
}
|
|
132
138
|
|
|
133
139
|
/* ─── THUMB ─────────────────────────────────────────────────── */
|
|
@@ -154,9 +160,10 @@
|
|
|
154
160
|
pointer-events: none;
|
|
155
161
|
}
|
|
156
162
|
|
|
163
|
+
/* Asterisco de requerido: tinta --co-semantic-text-error (gira con el tema). */
|
|
157
164
|
.co-field-required {
|
|
158
165
|
margin-left: 2px;
|
|
159
|
-
color: var(--co-color-status-error);
|
|
166
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error));
|
|
160
167
|
}
|
|
161
168
|
|
|
162
169
|
.co-field-required__caption {
|
|
@@ -170,6 +177,8 @@
|
|
|
170
177
|
content: var(--co-field-required-text, ' (required)');
|
|
171
178
|
}
|
|
172
179
|
|
|
180
|
+
/* Sin color-mix el token claro (un color-mix) sería inválido en tiempo de cómputo y dejaría la
|
|
181
|
+
pista transparente: este respaldo legado se queda en surface-muted pelado. */
|
|
173
182
|
@supports not (background: color-mix(in srgb, red, transparent)) {
|
|
174
183
|
.co-switch--off { background: var(--co-semantic-surface-muted); }
|
|
175
184
|
}
|
|
@@ -38,16 +38,16 @@ export class CoSwitch {
|
|
|
38
38
|
render() {
|
|
39
39
|
const hasLabels = this.label || this.secondaryLabel;
|
|
40
40
|
const hasHelper = !!this.helperText;
|
|
41
|
-
return (h("div", { key: '
|
|
41
|
+
return (h("div", { key: '6aabc6ae0391fbf4fa7426b76bc681055ecbf2d3', class: {
|
|
42
42
|
'co-switch-wrapper': true,
|
|
43
43
|
'co-switch-wrapper--disabled': this.disabled,
|
|
44
44
|
[`co-switch-wrapper--${this.status}`]: this.status !== 'default',
|
|
45
|
-
} }, h("div", { key: '
|
|
45
|
+
} }, h("div", { key: '4873bb3271632fc90720c04b3354a1ba01237575', class: "co-switch-wrapper__row", onClick: this.handleClick }, h("button", { key: 'b393832df4eabb3d3411373517de4cc10942b847', role: "switch", "aria-checked": String(this.checked), "aria-label": this.label || '', class: {
|
|
46
46
|
'co-switch': true,
|
|
47
47
|
'co-switch--on': this.checked,
|
|
48
48
|
'co-switch--off': !this.checked,
|
|
49
49
|
'co-switch--disabled': this.disabled,
|
|
50
|
-
}, disabled: this.disabled, part: "track" }, h("span", { key: '
|
|
50
|
+
}, disabled: this.disabled, part: "track" }, h("span", { key: '22caaea1c694f5a18193c83cb3777c42dd8c76e1', class: "co-switch__thumb", part: "thumb" })), hasLabels && (h("div", { key: 'a4bd9311e6dffdce3478bcf58d7aa1dbce60eb2f', class: "co-switch-wrapper__labels" }, this.label && h("span", { key: '7be285b4acfd32bcaa6aaf87ea73cfaa62f4e1ba', class: "co-switch-wrapper__label", part: "label" }, this.label, h(RequiredMark, { key: '50aa4b8a2895781424d9b9e5049c51ab0d105ccd', required: this.required })), this.secondaryLabel && (h("span", { key: '77d37cc202438af84f5b80638bb8592f07168882', class: "co-switch-wrapper__secondary-label", part: "secondary-label" }, this.secondaryLabel))))), hasHelper && (h("div", { key: '8133fa87b018a7a2ec96368ec0687652319c40ec', class: `co-switch-wrapper__helper co-switch-wrapper__helper--${this.status}` }, this.statusIcon && (h("co-icon", { key: 'c55bad51cdddcc583de762b563dfbabf39cb7d76', name: this.statusIcon, size: 14, weight: "fill", class: "co-switch-wrapper__helper-icon" })), h("span", { key: '9f99e4fcf3ea29a1db4b7fdb7bc7d1e81ec56c31', class: "co-switch-wrapper__helper-text" }, this.helperText)))));
|
|
51
51
|
}
|
|
52
52
|
static get is() { return "co-switch"; }
|
|
53
53
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @prop --co-tab-cursor: Cursor del tab (default pointer); co-tab-group lo pone en «grabbing» al presionar para desplazar el strip.
|
|
3
|
+
*/
|
|
1
4
|
:host {
|
|
2
5
|
display: inline-flex;
|
|
3
6
|
}
|
|
@@ -8,14 +11,15 @@
|
|
|
8
11
|
gap: var(--co-spacing-sm2);
|
|
9
12
|
border: none;
|
|
10
13
|
outline: none;
|
|
11
|
-
|
|
14
|
+
/* El grupo lo cambia a «grabbing» mientras se arrastra el strip (co-tab-group). */
|
|
15
|
+
cursor: var(--co-tab-cursor, pointer);
|
|
12
16
|
font-family: var(--co-font-family-primary);
|
|
13
17
|
font-weight: 400;
|
|
14
18
|
line-height: 1;
|
|
15
19
|
white-space: nowrap;
|
|
16
20
|
border-radius: var(--co-border-radius-full);
|
|
17
21
|
background: transparent;
|
|
18
|
-
color: var(--co-
|
|
22
|
+
color: var(--co-semantic-text-muted);
|
|
19
23
|
transition: background var(--co-motion-duration-fast) var(--co-motion-ease-out), color var(--co-motion-duration-fast) var(--co-motion-ease-out);
|
|
20
24
|
box-sizing: border-box;
|
|
21
25
|
}
|
|
@@ -48,19 +52,19 @@
|
|
|
48
52
|
has no hover rule. Every pill tab carries `.co-tab--pill`, so this
|
|
49
53
|
reproduces the previous `.co-tab:hover` behavior exactly. */
|
|
50
54
|
.co-tab--pill:hover:not(:disabled) {
|
|
51
|
-
background: var(--co-
|
|
52
|
-
color: var(--co-
|
|
55
|
+
background: var(--co-semantic-surface-control);
|
|
56
|
+
color: var(--co-semantic-text-default);
|
|
53
57
|
}
|
|
54
58
|
|
|
55
59
|
.co-tab--selected {
|
|
56
|
-
background: var(--co-
|
|
57
|
-
color: var(--co-
|
|
60
|
+
background: var(--co-semantic-surface-control);
|
|
61
|
+
color: var(--co-semantic-text-default);
|
|
58
62
|
font-weight: 500;
|
|
59
63
|
}
|
|
60
64
|
|
|
61
65
|
.co-tab--pill.co-tab--selected:hover:not(:disabled) {
|
|
62
|
-
background: var(--co-
|
|
63
|
-
color: var(--co-
|
|
66
|
+
background: var(--co-semantic-surface-control);
|
|
67
|
+
color: var(--co-semantic-text-default);
|
|
64
68
|
}
|
|
65
69
|
|
|
66
70
|
.co-tab--disabled {
|
|
@@ -85,7 +89,7 @@
|
|
|
85
89
|
border-bottom: 2px solid transparent;
|
|
86
90
|
margin-bottom: -1px;
|
|
87
91
|
background: transparent;
|
|
88
|
-
color: var(--co-
|
|
92
|
+
color: var(--co-semantic-text-muted);
|
|
89
93
|
font-size: var(--co-font-size-14, 14px);
|
|
90
94
|
font-weight: 400;
|
|
91
95
|
letter-spacing: var(--co-font-letter-spacing-body, -0.03em);
|
|
@@ -94,8 +98,8 @@
|
|
|
94
98
|
|
|
95
99
|
.co-tab--underline.co-tab--selected {
|
|
96
100
|
background: transparent;
|
|
97
|
-
border-bottom-color: var(--co-
|
|
98
|
-
color: var(--co-
|
|
101
|
+
border-bottom-color: var(--co-semantic-text-default);
|
|
102
|
+
color: var(--co-semantic-text-default);
|
|
99
103
|
font-weight: 500;
|
|
100
104
|
}
|
|
101
105
|
|
|
@@ -112,13 +116,13 @@
|
|
|
112
116
|
font-size: 11px;
|
|
113
117
|
font-weight: 500;
|
|
114
118
|
line-height: 1;
|
|
115
|
-
background: var(--co-
|
|
116
|
-
color: var(--co-
|
|
119
|
+
background: var(--co-semantic-surface-muted);
|
|
120
|
+
color: var(--co-semantic-text-secondary);
|
|
117
121
|
}
|
|
118
122
|
|
|
119
123
|
.co-tab--selected .co-tab__badge {
|
|
120
|
-
background: var(--co-
|
|
121
|
-
color: var(--co-
|
|
124
|
+
background: var(--co-semantic-surface-primary);
|
|
125
|
+
color: var(--co-semantic-on-primary);
|
|
122
126
|
}
|
|
123
127
|
|
|
124
128
|
/* ─── Segmented variant ─────────────────────────────────────── */
|
|
@@ -134,26 +138,26 @@
|
|
|
134
138
|
font-size: var(--co-font-size-14);
|
|
135
139
|
font-weight: 400;
|
|
136
140
|
letter-spacing: -0.03em;
|
|
137
|
-
color: var(--co-
|
|
141
|
+
color: var(--co-semantic-text-secondary);
|
|
138
142
|
background: transparent;
|
|
139
143
|
}
|
|
140
144
|
|
|
141
145
|
.co-tab--segmented:hover:not(:disabled) {
|
|
142
146
|
background: transparent;
|
|
143
|
-
color: var(--co-
|
|
147
|
+
color: var(--co-semantic-text-default);
|
|
144
148
|
}
|
|
145
149
|
|
|
146
150
|
.co-tab--segmented.co-tab--selected {
|
|
147
|
-
background: var(--co-
|
|
151
|
+
background: var(--co-semantic-surface-page);
|
|
148
152
|
border-color: var(--co-semantic-border-subtle, rgba(31, 28, 27, 0.08));
|
|
149
153
|
box-shadow: var(--co-shadow-lg);
|
|
150
154
|
font-weight: 500;
|
|
151
|
-
color: var(--co-
|
|
155
|
+
color: var(--co-semantic-text-default);
|
|
152
156
|
}
|
|
153
157
|
|
|
154
158
|
.co-tab--segmented.co-tab--selected:hover:not(:disabled) {
|
|
155
|
-
background: var(--co-
|
|
156
|
-
color: var(--co-
|
|
159
|
+
background: var(--co-semantic-surface-page);
|
|
160
|
+
color: var(--co-semantic-text-default);
|
|
157
161
|
}
|
|
158
162
|
|
|
159
163
|
/* ─── Segmented size s (28px, escala unificada D-19) ────────────── */
|
|
@@ -172,15 +176,15 @@
|
|
|
172
176
|
border-radius: var(--co-spacing-sm, 6px);
|
|
173
177
|
font-size: var(--co-font-size-12, 12px);
|
|
174
178
|
font-weight: 500;
|
|
175
|
-
color: var(--co-
|
|
179
|
+
color: var(--co-semantic-text-secondary);
|
|
176
180
|
background: transparent;
|
|
177
181
|
}
|
|
178
182
|
|
|
179
183
|
.co-tab--segmented.co-tab--s.co-tab--selected {
|
|
180
|
-
background: var(--co-
|
|
181
|
-
border-color: var(--co-
|
|
184
|
+
background: var(--co-semantic-surface-page);
|
|
185
|
+
border-color: var(--co-semantic-border-subtle);
|
|
182
186
|
box-shadow: var(--co-shadow-lg);
|
|
183
|
-
color: var(--co-
|
|
187
|
+
color: var(--co-semantic-text-default);
|
|
184
188
|
font-weight: 500;
|
|
185
189
|
}
|
|
186
190
|
|
|
@@ -194,14 +198,14 @@
|
|
|
194
198
|
border-radius: var(--co-spacing-sm, 6px);
|
|
195
199
|
font-size: var(--co-font-size-10, 10px);
|
|
196
200
|
font-weight: 500;
|
|
197
|
-
color: var(--co-
|
|
201
|
+
color: var(--co-semantic-text-secondary);
|
|
198
202
|
background: transparent;
|
|
199
203
|
}
|
|
200
204
|
|
|
201
205
|
.co-tab--segmented.co-tab--xs.co-tab--selected {
|
|
202
|
-
background: var(--co-
|
|
203
|
-
border-color: var(--co-
|
|
206
|
+
background: var(--co-semantic-surface-page);
|
|
207
|
+
border-color: var(--co-semantic-border-subtle);
|
|
204
208
|
box-shadow: var(--co-shadow-lg);
|
|
205
|
-
color: var(--co-
|
|
209
|
+
color: var(--co-semantic-text-default);
|
|
206
210
|
font-weight: 500;
|
|
207
211
|
}
|
|
@@ -39,13 +39,13 @@ export class CoTab {
|
|
|
39
39
|
}
|
|
40
40
|
render() {
|
|
41
41
|
const iconSize = this.variant === 'underline' ? 16 : this.size === 'large' ? 18 : 14;
|
|
42
|
-
return (h("button", { key: '
|
|
42
|
+
return (h("button", { key: 'f969b1dbfaa65dd1a82f0850074c028cba683b4e', class: {
|
|
43
43
|
'co-tab': true,
|
|
44
44
|
[`co-tab--${this.size}`]: true,
|
|
45
45
|
[`co-tab--${this.variant}`]: true,
|
|
46
46
|
'co-tab--selected': this.selected,
|
|
47
47
|
'co-tab--disabled': this.disabled,
|
|
48
|
-
}, type: "button", role: "tab", "aria-selected": this.selected ? 'true' : 'false', disabled: this.disabled, part: "tab", onClick: this.handleClick }, this.iconLeft && (h("co-icon", { key: '
|
|
48
|
+
}, type: "button", role: "tab", "aria-selected": this.selected ? 'true' : 'false', disabled: this.disabled, part: "tab", onClick: this.handleClick }, this.iconLeft && (h("co-icon", { key: '22119752dd8e2606ece1ed07abc8c8174b7aa2c2', name: this.iconLeft, size: iconSize })), h("span", { key: '35646e95c0b2e1b05ad3f6ad51fd8399e3c31f1b' }, this.label), this.badge && (h("span", { key: 'd44bcd2989aca1694d3755d60f9eba9f4c6e1422', class: "co-tab__badge", part: "badge" }, this.badge)), this.iconRight && (h("co-icon", { key: 'c4065c2011bd20a614e0b93cd92b26e3ada849cb', name: this.iconRight, size: iconSize }))));
|
|
49
49
|
}
|
|
50
50
|
static get is() { return "co-tab"; }
|
|
51
51
|
static get encapsulation() { return "shadow"; }
|
|
@@ -18,16 +18,36 @@
|
|
|
18
18
|
scrollbar-width: none;
|
|
19
19
|
/* Al clickear un tab parcialmente fuera de vista, el navegador lo mete en
|
|
20
20
|
vista (focus scroll). Con smooth ese reajuste es un deslizamiento suave en
|
|
21
|
-
vez de un salto brusco.
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
vez de un salto brusco. Asignar `scrollLeft` TAMBIÉN respeta esta
|
|
22
|
+
propiedad (anima): por eso la rueda y el arrastre del componente mueven el
|
|
23
|
+
track con `scrollTo({ behavior: 'instant' })` (ver `scrollTrack`). */
|
|
24
24
|
scroll-behavior: smooth;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
+
/* Strip agarrado (mouse presionado con pestañas que desbordan): manito de arrastre en todo el
|
|
28
|
+
strip, también sobre los tabs (--co-tab-cursor hereda al shadow de cada co-tab). */
|
|
29
|
+
.co-tab-group--grabbing {
|
|
30
|
+
cursor: grabbing;
|
|
31
|
+
--co-tab-cursor: grabbing;
|
|
32
|
+
user-select: none;
|
|
33
|
+
}
|
|
34
|
+
|
|
27
35
|
.co-tab-group::-webkit-scrollbar {
|
|
28
36
|
display: none;
|
|
29
37
|
}
|
|
30
38
|
|
|
39
|
+
/* Arrastrando el strip (onPointerMove): el desplazamiento sigue al puntero (sin el smooth de
|
|
40
|
+
arriba), mano cerrada y sin seleccionar texto de las pestañas mientras se recorre. */
|
|
41
|
+
.co-tab-group--dragging {
|
|
42
|
+
scroll-behavior: auto;
|
|
43
|
+
cursor: grabbing;
|
|
44
|
+
user-select: none;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.co-tab-group--dragging ::slotted(co-tab) {
|
|
48
|
+
pointer-events: none;
|
|
49
|
+
}
|
|
50
|
+
|
|
31
51
|
/* Los tabs no se comprimen: el desborde se resuelve scrolleando, no encogiendo. */
|
|
32
52
|
::slotted(co-tab) {
|
|
33
53
|
flex-shrink: 0;
|
|
@@ -54,7 +74,7 @@
|
|
|
54
74
|
their own `margin-bottom: -1px`. */
|
|
55
75
|
.co-tab-group--underline {
|
|
56
76
|
gap: var(--co-spacing-xs, 4px);
|
|
57
|
-
border-bottom: 1px solid var(--co-
|
|
77
|
+
border-bottom: 1px solid var(--co-semantic-border-subtle);
|
|
58
78
|
}
|
|
59
79
|
|
|
60
80
|
/* ─── Segmented variant ─────────────────────────────────────── */
|
|
@@ -66,8 +86,8 @@
|
|
|
66
86
|
display: inline-flex;
|
|
67
87
|
gap: var(--co-spacing-xxs, 2px);
|
|
68
88
|
padding: var(--co-spacing-sm, 6px);
|
|
69
|
-
background: var(--co-
|
|
70
|
-
border-bottom: 1px solid var(--co-
|
|
89
|
+
background: var(--co-semantic-surface-control);
|
|
90
|
+
border-bottom: 1px solid var(--co-semantic-border-hairline);
|
|
71
91
|
border-radius: var(--co-border-radius-sm, 12px);
|
|
72
92
|
}
|
|
73
93
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { h } from "@stencil/core";
|
|
2
2
|
import { revealScrollLeft, tabEdgesInTrack } from "./revealTab";
|
|
3
|
+
import { dragScrollLeft, passedDragThreshold, wheelScrollLeft } from "./trackScroll";
|
|
3
4
|
/**
|
|
4
5
|
* Grupo de pestañas (`co-tab`) que controla cuál está activa: `value` marca la
|
|
5
6
|
* pestaña, al elegir otra se actualiza y emite `coTabChange`. Propaga `variant`,
|
|
@@ -33,19 +34,75 @@ export class CoTabGroup {
|
|
|
33
34
|
this.revealSelected();
|
|
34
35
|
};
|
|
35
36
|
/** Wheel → horizontal scroll cuando el track desborda (los tabs clipean con
|
|
36
|
-
`overflow-x`, ver CSS): la rueda
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
`overflow-x`, ver CSS): la rueda VERTICAL del mouse scrollea el strip. El
|
|
38
|
+
gesto horizontal (trackpad) lo resuelve el scroll nativo, y en los extremos
|
|
39
|
+
el evento sigue a la página. */
|
|
39
40
|
this.onWheel = (e) => {
|
|
40
41
|
const track = e.currentTarget;
|
|
41
|
-
const
|
|
42
|
-
if (
|
|
42
|
+
const next = wheelScrollLeft(track.scrollLeft, track.scrollWidth - track.clientWidth, e.deltaX, e.deltaY);
|
|
43
|
+
if (next === null)
|
|
43
44
|
return;
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
45
|
+
this.scrollTrack(track, next);
|
|
46
|
+
e.preventDefault();
|
|
47
|
+
};
|
|
48
|
+
this.swallowClick = false;
|
|
49
|
+
this.onPointerDown = (e) => {
|
|
50
|
+
const track = e.currentTarget;
|
|
51
|
+
// Un arrastre anterior cuyo click nunca llegó no puede comerse este.
|
|
52
|
+
this.swallowClick = false;
|
|
53
|
+
if (e.pointerType !== 'mouse' || e.button !== 0)
|
|
54
|
+
return;
|
|
55
|
+
if (track.scrollWidth <= track.clientWidth)
|
|
56
|
+
return;
|
|
57
|
+
this.drag = { pointerId: e.pointerId, startX: e.clientX, startLeft: track.scrollLeft, moved: false };
|
|
58
|
+
// La manito de arrastre sale al PRESIONAR (no recién al moverse): se ve que el strip se agarra.
|
|
59
|
+
track.classList.add('co-tab-group--grabbing');
|
|
60
|
+
};
|
|
61
|
+
this.onPointerMove = (e) => {
|
|
62
|
+
var _a;
|
|
63
|
+
const drag = this.drag;
|
|
64
|
+
if (!drag || e.pointerId !== drag.pointerId)
|
|
47
65
|
return;
|
|
48
|
-
track
|
|
66
|
+
const track = e.currentTarget;
|
|
67
|
+
if (!drag.moved) {
|
|
68
|
+
if (!passedDragThreshold(drag.startX, e.clientX))
|
|
69
|
+
return;
|
|
70
|
+
drag.moved = true;
|
|
71
|
+
// Captura para no perder el arrastre si el puntero sale del strip; si el navegador la
|
|
72
|
+
// rechaza (puntero ya liberado), el arrastre sigue igual.
|
|
73
|
+
try {
|
|
74
|
+
(_a = track.setPointerCapture) === null || _a === void 0 ? void 0 : _a.call(track, e.pointerId);
|
|
75
|
+
}
|
|
76
|
+
catch ( /* sin captura */_b) { /* sin captura */ }
|
|
77
|
+
track.classList.add('co-tab-group--dragging');
|
|
78
|
+
}
|
|
79
|
+
this.scrollTrack(track, dragScrollLeft(drag.startLeft, drag.startX, e.clientX, track.scrollWidth - track.clientWidth));
|
|
80
|
+
};
|
|
81
|
+
this.onPointerEnd = (e) => {
|
|
82
|
+
var _a;
|
|
83
|
+
const drag = this.drag;
|
|
84
|
+
if (!drag || e.pointerId !== drag.pointerId)
|
|
85
|
+
return;
|
|
86
|
+
const track = e.currentTarget;
|
|
87
|
+
track.classList.remove('co-tab-group--grabbing');
|
|
88
|
+
if (drag.moved) {
|
|
89
|
+
this.swallowClick = true;
|
|
90
|
+
track.classList.remove('co-tab-group--dragging');
|
|
91
|
+
try {
|
|
92
|
+
if ((_a = track.hasPointerCapture) === null || _a === void 0 ? void 0 : _a.call(track, e.pointerId))
|
|
93
|
+
track.releasePointerCapture(e.pointerId);
|
|
94
|
+
}
|
|
95
|
+
catch ( /* no estaba capturado */_b) { /* no estaba capturado */ }
|
|
96
|
+
}
|
|
97
|
+
this.drag = undefined;
|
|
98
|
+
};
|
|
99
|
+
/** Captura: corre ANTES que el click de la pestaña (que vive más abajo en el
|
|
100
|
+
árbol). Solo se traga el click que cierra un arrastre. */
|
|
101
|
+
this.onClickCapture = (e) => {
|
|
102
|
+
if (!this.swallowClick)
|
|
103
|
+
return;
|
|
104
|
+
this.swallowClick = false;
|
|
105
|
+
e.stopPropagation();
|
|
49
106
|
e.preventDefault();
|
|
50
107
|
};
|
|
51
108
|
}
|
|
@@ -133,12 +190,22 @@ export class CoTabGroup {
|
|
|
133
190
|
this.raisedFullWidth.delete(tab);
|
|
134
191
|
}
|
|
135
192
|
}
|
|
193
|
+
/** Mueve el track SIN animar. El CSS tiene `scroll-behavior: smooth` (para el
|
|
194
|
+
reajuste al enfocar un tab) y asignar `scrollLeft` TAMBIÉN lo respeta: cada
|
|
195
|
+
evento de rueda/arrastre reiniciaba la animación desde una posición que
|
|
196
|
+
todavía no había avanzado y el strip apenas se movía (se sentía roto). */
|
|
197
|
+
scrollTrack(track, left) {
|
|
198
|
+
if (typeof track.scrollTo === 'function')
|
|
199
|
+
track.scrollTo({ left, behavior: 'instant' });
|
|
200
|
+
else
|
|
201
|
+
track.scrollLeft = left;
|
|
202
|
+
}
|
|
136
203
|
render() {
|
|
137
|
-
return (h("div", { key: '
|
|
204
|
+
return (h("div", { key: '6bec54850c1e0180a8513770b99b3b4dba865962', class: {
|
|
138
205
|
'co-tab-group': true,
|
|
139
206
|
[`co-tab-group--${this.variant}`]: true,
|
|
140
207
|
[`co-tab-group--size-${this.size}`]: !!this.size,
|
|
141
|
-
}, role: "tablist", part: "tab-group", onWheel: this.onWheel }, h("slot", { key: '
|
|
208
|
+
}, role: "tablist", part: "tab-group", onWheel: this.onWheel, onPointerDown: this.onPointerDown, onPointerMove: this.onPointerMove, onPointerUp: this.onPointerEnd, onPointerCancel: this.onPointerEnd, onClickCapture: this.onClickCapture }, h("slot", { key: '08d10802582e1255cc8a7cef14bf0fe84dd6f3b6', onSlotchange: this.onSlotChange })));
|
|
142
209
|
}
|
|
143
210
|
static get is() { return "co-tab-group"; }
|
|
144
211
|
static get encapsulation() { return "shadow"; }
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Desplazamiento del track de pestañas cuando desborda: rueda del mouse y
|
|
3
|
+
* arrastre con el puntero. Puro (sin DOM) para testearlo; el componente aplica
|
|
4
|
+
* el resultado con `scrollTo({ behavior: 'instant' })`.
|
|
5
|
+
*/
|
|
6
|
+
/** px que el puntero tiene que moverse antes de que un press cuente como arrastre
|
|
7
|
+
(por debajo sigue siendo un click en la pestaña). */
|
|
8
|
+
export const DRAG_THRESHOLD = 5;
|
|
9
|
+
const clamp = (value, max) => Math.max(0, Math.min(max, value));
|
|
10
|
+
/**
|
|
11
|
+
* `scrollLeft` destino para un evento de rueda, o `null` si el componente NO
|
|
12
|
+
* debe intervenir:
|
|
13
|
+
* - gesto horizontal (trackpad, shift+rueda): el scroll nativo ya lo resuelve;
|
|
14
|
+
* - en el extremo hacia el que empuja: el scroll sigue a la página.
|
|
15
|
+
*/
|
|
16
|
+
export function wheelScrollLeft(scrollLeft, max, deltaX, deltaY) {
|
|
17
|
+
if (max <= 0)
|
|
18
|
+
return null;
|
|
19
|
+
if (Math.abs(deltaX) >= Math.abs(deltaY))
|
|
20
|
+
return null;
|
|
21
|
+
const next = clamp(scrollLeft + deltaY, max);
|
|
22
|
+
return next === scrollLeft ? null : next;
|
|
23
|
+
}
|
|
24
|
+
/** `scrollLeft` mientras se arrastra: el contenido sigue al puntero. */
|
|
25
|
+
export function dragScrollLeft(startScrollLeft, startX, x, max) {
|
|
26
|
+
return clamp(startScrollLeft - (x - startX), max);
|
|
27
|
+
}
|
|
28
|
+
/** ¿El puntero ya se movió lo suficiente para que el press sea un arrastre? */
|
|
29
|
+
export function passedDragThreshold(startX, x) {
|
|
30
|
+
return Math.abs(x - startX) >= DRAG_THRESHOLD;
|
|
31
|
+
}
|
|
@@ -36,9 +36,11 @@
|
|
|
36
36
|
cursor: default;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
+
/* Tinta de estado por --co-semantic-text-*: gira con el tema (status-* es relleno, no se
|
|
40
|
+
aclara, y como texto en oscuro daba <4,5). Fallback a la primitiva hasta publicar tokens. */
|
|
39
41
|
.co-field-required {
|
|
40
42
|
margin-left: 2px;
|
|
41
|
-
color: var(--co-color-status-error);
|
|
43
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error));
|
|
42
44
|
}
|
|
43
45
|
|
|
44
46
|
.co-field-required__caption {
|
|
@@ -260,18 +262,21 @@
|
|
|
260
262
|
}
|
|
261
263
|
|
|
262
264
|
/* ---- Invalid (mirrors co-input error) ---- */
|
|
265
|
+
/* Borde de error de CAMPO por --co-semantic-border-error: gira con el tema (status-error es
|
|
266
|
+
relleno fijo y como trazo en oscuro daba 2,94:1). En claro vale status-error (idéntico); el
|
|
267
|
+
halo sale de color-mix 12% (= el rgba(170, 46, 27, .12) de antes). Fallback: la primitiva de hoy. */
|
|
263
268
|
.co-tags-field--invalid .co-tags-field__field {
|
|
264
|
-
border-color: var(--co-semantic-status-error);
|
|
269
|
+
border-color: var(--co-semantic-border-error, var(--co-semantic-status-error));
|
|
265
270
|
}
|
|
266
271
|
|
|
267
272
|
.co-tags-field--invalid.co-tags-field--focused .co-tags-field__field {
|
|
268
|
-
border-color: var(--co-semantic-status-error);
|
|
269
|
-
box-shadow: 0 0 0 2px
|
|
273
|
+
border-color: var(--co-semantic-border-error, var(--co-semantic-status-error));
|
|
274
|
+
box-shadow: 0 0 0 2px color-mix(in srgb, var(--co-semantic-border-error, var(--co-semantic-status-error)) 12%, transparent);
|
|
270
275
|
}
|
|
271
276
|
|
|
272
277
|
.co-tags-field__helper--error .co-tags-field__helper-icon,
|
|
273
278
|
.co-tags-field__helper--error .co-tags-field__helper-text {
|
|
274
|
-
color: var(--co-semantic-status-error);
|
|
279
|
+
color: var(--co-semantic-text-error, var(--co-semantic-status-error));
|
|
275
280
|
}
|
|
276
281
|
|
|
277
282
|
/* ── Horizontal layout: label left; control + helper stacked right ──
|
|
@@ -193,14 +193,14 @@ export class CoTagsField {
|
|
|
193
193
|
const showClear = this.clearable && this.hasValue && !this.disabled && !this.readonly;
|
|
194
194
|
const helper = this.isInvalid ? this.errorMessage : this.helperText;
|
|
195
195
|
const showInput = !this.readonly && !this.atCapacity;
|
|
196
|
-
return (h("div", { key: '
|
|
196
|
+
return (h("div", { key: 'fd91a99e457cbf54c88d423be8af54c566f3066c', class: {
|
|
197
197
|
'co-tags-field': true,
|
|
198
198
|
'co-tags-field--disabled': this.disabled,
|
|
199
199
|
'co-tags-field--focused': this.hasFocus,
|
|
200
200
|
'co-tags-field--filled': this.hasValue,
|
|
201
201
|
'co-tags-field--invalid': this.isInvalid,
|
|
202
202
|
[`co-tags-field--${this.size}`]: true,
|
|
203
|
-
}, part: "wrapper" }, this.label && (h("div", { key: '
|
|
203
|
+
}, part: "wrapper" }, this.label && (h("div", { key: '49bfcb174303ee8660e5acc4f98217aaf66f40ac', class: "co-tags-field__labels" }, h("label", { key: '79762edec0be8829ccaca058eba30a3bde927254', class: "co-tags-field__label", part: "label" }, this.label, h(RequiredMark, { key: 'c70bec9252eb1921c481ecd61d8b6fe63a3d6c10', required: this.required })))), h("div", { key: '32a0647964bd4acc982a2a790647c93a40801c36', class: "co-tags-field__field-row" }, h("div", { key: '4e8368806c1f672c72eb02331f113669db4cf8d1', class: "co-tags-field__field", part: "field", onClick: this.handleFieldClick }, h("div", { key: '4ad6a373fd8c05ee5aac5bff758ce2fbe4312dc8', class: "co-tags-field__input-wrapper" }, tags.map((tag, index) => this.editingIndex === index ? (h("input", { key: `edit-${index}`, ref: (el) => (this.editEl = el), class: "co-tags-field__edit", type: "text", value: this.editingDraft, onInput: (e) => (this.editingDraft = e.target.value), onKeyDown: this.handleEditKeyDown, onBlur: () => this.saveEdit() })) : (
|
|
204
204
|
// Shared field-chip (utils/fieldChip.tsx) per the Figma
|
|
205
205
|
// "Tipo=Chips" spec — same look as co-ref-field's chips.
|
|
206
206
|
h(FieldChip, { key: `chip-${index}-${tag}`, baseClass: "co-tags-field__chip", label: tag, title: tag, onChipDblClick: () => this.startEdit(index), onRemove: !this.disabled && !this.readonly
|
|
@@ -208,13 +208,13 @@ export class CoTagsField {
|
|
|
208
208
|
e.stopPropagation();
|
|
209
209
|
this.removeTag(index);
|
|
210
210
|
}
|
|
211
|
-
: undefined }))), showInput && (h("input", { key: '
|
|
211
|
+
: undefined }))), showInput && (h("input", { key: 'f225a29c660941323b3e83344cf4b5524bbd72a2', ref: (el) => (this.inputEl = el), class: "co-tags-field__native", type: "text", autocomplete: "off", value: this.draft, placeholder: tags.length === 0 ? this.placeholder : '', disabled: this.disabled, required: this.required && tags.length === 0, "aria-invalid": this.isInvalid ? 'true' : 'false', "aria-label": !this.label ? 'Tags' : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, part: "input" }))), this.clearable && (h("button", { key: '37317b91ff4f58ca30ae13d7d639fcc79efaeb3b', class: {
|
|
212
212
|
'co-tags-field__clear': true,
|
|
213
213
|
'co-tags-field__clear--hidden': !showClear,
|
|
214
|
-
}, type: "button", tabIndex: -1, onMouseDown: (e) => e.preventDefault() /* keep input focus */, onClick: this.handleClearAll, "aria-label": "Clear all", part: "clear" }, h("co-icon", { key: '
|
|
214
|
+
}, type: "button", tabIndex: -1, onMouseDown: (e) => e.preventDefault() /* keep input focus */, onClick: this.handleClearAll, "aria-label": "Clear all", part: "clear" }, h("co-icon", { key: 'f29e8727db13e9ce6b6fc72e38786aeb619a51b1', name: "x-circle", size: 16, weight: "fill" }))))), this.name && h("input", { key: '592bcd5ecd3f552ac6c8adb87fbd9dab04ec0e40', type: "hidden", name: this.name, value: JSON.stringify(tags) }), helper && (h("div", { key: '7402a33a90484fdce495df229b7325d6e6527991', class: {
|
|
215
215
|
'co-tags-field__helper': true,
|
|
216
216
|
'co-tags-field__helper--error': this.isInvalid,
|
|
217
|
-
}, part: "helper" }, this.isInvalid && (h("co-icon", { key: '
|
|
217
|
+
}, part: "helper" }, this.isInvalid && (h("co-icon", { key: '8b9116529e02f275ef957e23ad98adb8d726b375', name: "warning-circle", size: 14, class: "co-tags-field__helper-icon" })), h("span", { key: '5f952c6feb9b82b46552bb8e8faeb5aaeb4abc29', class: "co-tags-field__helper-text" }, helper)))));
|
|
218
218
|
}
|
|
219
219
|
static get is() { return "co-tags-field"; }
|
|
220
220
|
static get encapsulation() { return "shadow"; }
|
|
@@ -46,9 +46,11 @@
|
|
|
46
46
|
text-align: right;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
+
/* Tinta de estado por --co-semantic-text-*: gira con el tema (status-* es relleno, no se
|
|
50
|
+
aclara, y como texto en oscuro daba <4,5). Fallback a la primitiva hasta publicar tokens. */
|
|
49
51
|
.co-field-required {
|
|
50
52
|
margin-left: 2px;
|
|
51
|
-
color: var(--co-color-status-error);
|
|
53
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error));
|
|
52
54
|
}
|
|
53
55
|
|
|
54
56
|
.co-field-required__caption {
|
|
@@ -207,7 +209,7 @@
|
|
|
207
209
|
}
|
|
208
210
|
|
|
209
211
|
.co-textarea__counter--over {
|
|
210
|
-
color: var(--co-color-status-error);
|
|
212
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error));
|
|
211
213
|
font-weight: 500;
|
|
212
214
|
}
|
|
213
215
|
|
|
@@ -230,18 +232,21 @@
|
|
|
230
232
|
}
|
|
231
233
|
|
|
232
234
|
/* ---- Error ---- */
|
|
235
|
+
/* Borde de error de CAMPO por --co-semantic-border-error: gira con el tema (status-error es
|
|
236
|
+
relleno fijo y como trazo en oscuro daba 2,94:1). En claro vale status-error (idéntico); el
|
|
237
|
+
halo sale de color-mix 12% (= el rgba(170, 46, 27, .12) de antes). Fallback: la primitiva de hoy. */
|
|
233
238
|
.co-textarea--error .co-textarea__field {
|
|
234
|
-
border-color: var(--co-semantic-status-error);
|
|
239
|
+
border-color: var(--co-semantic-border-error, var(--co-semantic-status-error));
|
|
235
240
|
}
|
|
236
241
|
|
|
237
242
|
.co-textarea--error.co-textarea--focused .co-textarea__field {
|
|
238
|
-
border-color: var(--co-semantic-status-error);
|
|
239
|
-
box-shadow: 0 0 0 2px
|
|
243
|
+
border-color: var(--co-semantic-border-error, var(--co-semantic-status-error));
|
|
244
|
+
box-shadow: 0 0 0 2px color-mix(in srgb, var(--co-semantic-border-error, var(--co-semantic-status-error)) 12%, transparent);
|
|
240
245
|
}
|
|
241
246
|
|
|
242
247
|
.co-textarea--error .co-textarea__helper-icon,
|
|
243
248
|
.co-textarea--error .co-textarea__helper-text {
|
|
244
|
-
color: var(--co-semantic-status-error);
|
|
249
|
+
color: var(--co-semantic-text-error, var(--co-semantic-status-error));
|
|
245
250
|
}
|
|
246
251
|
|
|
247
252
|
/* ---- Success ---- */
|
|
@@ -266,7 +271,7 @@
|
|
|
266
271
|
|
|
267
272
|
/* ---- Over character limit ---- */
|
|
268
273
|
.co-textarea--over-limit .co-textarea__field {
|
|
269
|
-
border-color: var(--co-semantic-status-error);
|
|
274
|
+
border-color: var(--co-semantic-border-error, var(--co-semantic-status-error));
|
|
270
275
|
}
|
|
271
276
|
|
|
272
277
|
/* ── Horizontal layout: label left; control + helper stacked right ──
|