@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
|
@@ -224,7 +224,7 @@ export class CoRadioGroup {
|
|
|
224
224
|
"references": {
|
|
225
225
|
"RadioOption": {
|
|
226
226
|
"location": "local",
|
|
227
|
-
"path": "/Users/agox/
|
|
227
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-radio-group/co-radio-group.tsx",
|
|
228
228
|
"id": "src/components/co-radio-group/co-radio-group.tsx::RadioOption"
|
|
229
229
|
}
|
|
230
230
|
}
|
|
@@ -85,14 +85,16 @@
|
|
|
85
85
|
line-height: 1;
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
+
/* Tinta de estado por --co-semantic-text-*: gira con el tema (status-* es relleno, no se
|
|
89
|
+
aclara, y como texto en oscuro daba <4,5). Fallback a la primitiva hasta publicar tokens. */
|
|
88
90
|
.co-rating__helper--error .co-rating__helper-icon,
|
|
89
|
-
.co-rating__helper--error .co-rating__helper-text { color: var(--co-semantic-status-error); }
|
|
91
|
+
.co-rating__helper--error .co-rating__helper-text { color: var(--co-semantic-text-error, var(--co-semantic-status-error)); }
|
|
90
92
|
|
|
91
93
|
.co-rating__helper--success .co-rating__helper-icon,
|
|
92
|
-
.co-rating__helper--success .co-rating__helper-text { color: var(--co-semantic-status-success); }
|
|
94
|
+
.co-rating__helper--success .co-rating__helper-text { color: var(--co-semantic-text-success, var(--co-semantic-status-success)); }
|
|
93
95
|
|
|
94
96
|
.co-rating__helper--warning .co-rating__helper-icon,
|
|
95
|
-
.co-rating__helper--warning .co-rating__helper-text { color: var(--co-color-status-review); }
|
|
97
|
+
.co-rating__helper--warning .co-rating__helper-text { color: var(--co-semantic-text-warning, var(--co-color-status-review)); }
|
|
96
98
|
|
|
97
99
|
.co-rating__helper--info .co-rating__helper-icon,
|
|
98
|
-
.co-rating__helper--info .co-rating__helper-text { color: var(--co-semantic-status-info); }
|
|
100
|
+
.co-rating__helper--info .co-rating__helper-text { color: var(--co-semantic-text-info, var(--co-semantic-status-info)); }
|
|
@@ -48,16 +48,16 @@ export class CoRating {
|
|
|
48
48
|
const iconSize = this.size === 'large' ? 28 : 20;
|
|
49
49
|
const active = this.hoverValue || this.value;
|
|
50
50
|
const stars = Array.from({ length: this.max }, (_, i) => i + 1);
|
|
51
|
-
return (h("div", { key: '
|
|
51
|
+
return (h("div", { key: 'd100ef9f45fab43561f8d6786f19543b9c3b95ba', class: {
|
|
52
52
|
'co-rating': true,
|
|
53
53
|
'co-rating--disabled': this.disabled,
|
|
54
54
|
'co-rating--readonly': this.readOnly,
|
|
55
55
|
[`co-rating--${this.size}`]: true,
|
|
56
|
-
} }, this.label && h("label", { key: '
|
|
56
|
+
} }, this.label && h("label", { key: '4943fe6704fb1e2456378c988bcb60c5a9376c59', class: "co-rating__label" }, this.label), h("div", { key: 'fa5b3ff7a54490ee5bc513a31978c21daf49bd52', class: "co-rating__stars", onMouseLeave: this.handleMouseLeave }, stars.map(star => (h("button", { class: {
|
|
57
57
|
'co-rating__star': true,
|
|
58
58
|
'co-rating__star--active': star <= active,
|
|
59
59
|
'co-rating__star--hover': this.hoverValue > 0 && star <= this.hoverValue,
|
|
60
|
-
}, type: "button", tabIndex: this.disabled || this.readOnly ? -1 : 0, disabled: this.disabled, onClick: () => this.handleClick(star), onMouseEnter: () => this.handleMouseEnter(star), "aria-label": `${star} of ${this.max}` }, h("co-icon", { name: this.icon, size: iconSize, weight: star <= active ? 'fill' : 'regular' }))))), this.helperText && (h("div", { key: '
|
|
60
|
+
}, type: "button", tabIndex: this.disabled || this.readOnly ? -1 : 0, disabled: this.disabled, onClick: () => this.handleClick(star), onMouseEnter: () => this.handleMouseEnter(star), "aria-label": `${star} of ${this.max}` }, h("co-icon", { name: this.icon, size: iconSize, weight: star <= active ? 'fill' : 'regular' }))))), this.helperText && (h("div", { key: 'b1aaa3ce09b9454204655a648ccd6f84836c011c', class: `co-rating__helper co-rating__helper--${this.status}` }, this.statusIcon && h("co-icon", { key: 'ef3a4c165a52e568cee28d0ffcbb9aca2d7ff4cf', name: this.statusIcon, size: 14, weight: "fill", class: "co-rating__helper-icon" }), h("span", { key: '15ad0f44daaa0fa73a678155f014fa768da6217a', class: "co-rating__helper-text" }, this.helperText)))));
|
|
61
61
|
}
|
|
62
62
|
static get is() { return "co-rating"; }
|
|
63
63
|
static get encapsulation() { return "shadow"; }
|
|
@@ -137,7 +137,10 @@
|
|
|
137
137
|
cursor: not-allowed;
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
|
|
140
|
+
/* Borde de error de CAMPO por --co-semantic-border-error: gira con el tema (status-error es
|
|
141
|
+
relleno fijo y como trazo en oscuro daba 2,94:1). En claro vale status-error (idéntico).
|
|
142
|
+
Fallback: la primitiva de hoy, hasta publicar tokens. */
|
|
143
|
+
.co-ref-field--error { border-color: var(--co-semantic-border-error, var(--co-semantic-status-error)); }
|
|
141
144
|
.co-ref-field--success { border-color: var(--co-semantic-status-success); }
|
|
142
145
|
.co-ref-field--warning { border-color: var(--co-color-status-review); }
|
|
143
146
|
|
|
@@ -335,7 +338,9 @@
|
|
|
335
338
|
dot-only chips) defines the height, so the chip never exceeds the field's
|
|
336
339
|
inner content area and the trigger height stays constant. */
|
|
337
340
|
padding: 0 var(--co-spacing-sm2);
|
|
338
|
-
|
|
341
|
+
/* surface-control = gray-100 en claro y gira en oscuro: con la primitiva, la etiqueta
|
|
342
|
+
(text-default, blanca en oscuro) quedaba blanco sobre blanco (2026-09-27). */
|
|
343
|
+
background: var(--co-semantic-surface-control);
|
|
339
344
|
border-radius: var(--co-border-radius-full);
|
|
340
345
|
line-height: 1;
|
|
341
346
|
/* Cap at 160px, but never wider than the chips wrapper: in a narrow field
|
|
@@ -420,7 +425,7 @@
|
|
|
420
425
|
border: none;
|
|
421
426
|
background: transparent;
|
|
422
427
|
cursor: pointer;
|
|
423
|
-
color: var(--co-
|
|
428
|
+
color: var(--co-semantic-text-muted);
|
|
424
429
|
transition: color var(--co-motion-duration-fast) var(--co-motion-ease-out);
|
|
425
430
|
flex-shrink: 0;
|
|
426
431
|
}
|
|
@@ -429,13 +434,40 @@
|
|
|
429
434
|
color: var(--co-semantic-text-default);
|
|
430
435
|
}
|
|
431
436
|
|
|
437
|
+
/* `editable` + `multiple`: lápiz al inicio de cada chip (paridad V1), mismo trato que la ✕. */
|
|
438
|
+
.co-ref-field__chip-edit {
|
|
439
|
+
display: flex;
|
|
440
|
+
align-items: center;
|
|
441
|
+
padding: 0;
|
|
442
|
+
margin: 0;
|
|
443
|
+
border: none;
|
|
444
|
+
background: transparent;
|
|
445
|
+
cursor: pointer;
|
|
446
|
+
color: var(--co-semantic-text-muted);
|
|
447
|
+
transition: color var(--co-motion-duration-fast) var(--co-motion-ease-out);
|
|
448
|
+
flex-shrink: 0;
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
.co-ref-field__chip-edit:hover {
|
|
452
|
+
color: var(--co-semantic-text-default);
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
.co-ref-field__chip--fill .co-ref-field__chip-edit {
|
|
456
|
+
color: inherit;
|
|
457
|
+
opacity: 0.72;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
.co-ref-field__chip--fill .co-ref-field__chip-edit:hover {
|
|
461
|
+
opacity: 1;
|
|
462
|
+
}
|
|
463
|
+
|
|
432
464
|
.co-ref-field__chip-overflow {
|
|
433
465
|
flex-shrink: 0;
|
|
434
466
|
display: inline-flex;
|
|
435
467
|
align-items: center;
|
|
436
468
|
justify-content: center;
|
|
437
469
|
padding: var(--co-spacing-xs) var(--co-spacing-sm);
|
|
438
|
-
background: var(--co-
|
|
470
|
+
background: var(--co-semantic-surface-hover);
|
|
439
471
|
border-radius: var(--co-border-radius-full);
|
|
440
472
|
font-size: var(--co-font-size-12);
|
|
441
473
|
font-weight: 600;
|
|
@@ -536,9 +568,11 @@
|
|
|
536
568
|
color: var(--co-semantic-text-muted);
|
|
537
569
|
}
|
|
538
570
|
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
.co-ref-field__helper--
|
|
571
|
+
/* Tinta de estado por --co-semantic-text-*: gira con el tema (status-* es relleno, no se
|
|
572
|
+
aclara, y como texto en oscuro daba <4,5). Fallback a la primitiva hasta publicar tokens. */
|
|
573
|
+
.co-ref-field__helper--error { color: var(--co-semantic-text-error, var(--co-semantic-status-error)); }
|
|
574
|
+
.co-ref-field__helper--success { color: var(--co-semantic-text-success, var(--co-semantic-status-success)); }
|
|
575
|
+
.co-ref-field__helper--warning { color: var(--co-semantic-text-warning, var(--co-color-status-review)); }
|
|
542
576
|
|
|
543
577
|
/* ── Horizontal layout: label left; control + helper stacked right ──
|
|
544
578
|
Set --co-field-label-width on a container to align labels across fields. */
|
|
@@ -566,9 +600,10 @@
|
|
|
566
600
|
min-width: 0;
|
|
567
601
|
}
|
|
568
602
|
|
|
603
|
+
/* Asterisco de requerido: tinta --co-semantic-text-error (gira con el tema). */
|
|
569
604
|
.co-field-required {
|
|
570
605
|
margin-left: 2px;
|
|
571
|
-
color: var(--co-color-status-error);
|
|
606
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error));
|
|
572
607
|
}
|
|
573
608
|
|
|
574
609
|
.co-field-required__caption {
|
|
@@ -31,8 +31,8 @@ export class CoRefField {
|
|
|
31
31
|
this.disabled = false;
|
|
32
32
|
/** Muestra la × que vacía la selección cuando hay valor (default `true`); emite `coClear`. */
|
|
33
33
|
this.clearable = true;
|
|
34
|
-
/** Shows a pencil button on the single-value trigger
|
|
35
|
-
* `coEditSelected` with
|
|
34
|
+
/** Shows a pencil button on the single-value trigger (and on each chip when
|
|
35
|
+
* `multiple`) that emits `coEditSelected` with that record's id. The host owns policy
|
|
36
36
|
* (permissions, what opens) — the component only paints and emits. */
|
|
37
37
|
this.editable = false;
|
|
38
38
|
/** Accessible name / tooltip for the edit button. */
|
|
@@ -240,6 +240,11 @@ export class CoRefField {
|
|
|
240
240
|
if (selected)
|
|
241
241
|
this.coEditSelected.emit(selected._id);
|
|
242
242
|
};
|
|
243
|
+
this.handleEditChip = (id, e) => {
|
|
244
|
+
// Sin abrir el panel: el chip vive dentro del trigger clicable.
|
|
245
|
+
e.stopPropagation();
|
|
246
|
+
this.coEditSelected.emit(id);
|
|
247
|
+
};
|
|
243
248
|
this.handleRemoveChip = (id, e) => {
|
|
244
249
|
var _a;
|
|
245
250
|
e.stopPropagation();
|
|
@@ -427,7 +432,9 @@ export class CoRefField {
|
|
|
427
432
|
var _a;
|
|
428
433
|
const active = document.activeElement;
|
|
429
434
|
if (active === this.el || this.el.contains(active)) {
|
|
430
|
-
|
|
435
|
+
// Sin scroll: si el panel se cerró porque el campo salió de la vista de su scroller
|
|
436
|
+
// (co-popover), devolverle el foco llevaba al usuario de vuelta arriba del formulario.
|
|
437
|
+
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus({ preventScroll: true });
|
|
431
438
|
}
|
|
432
439
|
}
|
|
433
440
|
/** Selección desde un panel proyectado (slot `panel`): mismo contrato que un
|
|
@@ -506,7 +513,7 @@ export class CoRefField {
|
|
|
506
513
|
'co-ref-field__chip--fill-light': fill && isLightColor(item.color),
|
|
507
514
|
'co-ref-field__chip--clipped': !fixed && i >= visibleCount,
|
|
508
515
|
[`co-ref-field__chip--${this.normalizedSize}`]: true,
|
|
509
|
-
}, style: fill ? { backgroundColor: item.color } : undefined, onRemove: (e) => this.handleRemoveChip(item._id, e) }, item.image || item.avatar ? (this.renderItemAvatar(item)) : item.color && !fill ? (h("span", { class: "co-ref-field__chip-dot", style: { backgroundColor: item.color } })) : null));
|
|
516
|
+
}, style: fill ? { backgroundColor: item.color } : undefined, onRemove: (e) => this.handleRemoveChip(item._id, e), onEdit: this.editable && !this.disabled ? (e) => this.handleEditChip(item._id, e) : undefined, editLabel: this.editLabel }, item.image || item.avatar ? (this.renderItemAvatar(item)) : item.color && !fill ? (h("span", { class: "co-ref-field__chip-dot", style: { backgroundColor: item.color } })) : null));
|
|
510
517
|
})), overflow > 0 && h("span", { class: "co-ref-field__chip-overflow" }, "+", overflow)));
|
|
511
518
|
}
|
|
512
519
|
/** Botones del footer. `slotted`: dentro de la co-option-list van por su
|
|
@@ -533,7 +540,7 @@ export class CoRefField {
|
|
|
533
540
|
}
|
|
534
541
|
// ── Main render ────────────────────────────────────────────
|
|
535
542
|
render() {
|
|
536
|
-
return (h("div", { key: '
|
|
543
|
+
return (h("div", { key: 'fad34cd2f0ec9272285f3e6a9f97000b96d18e6d', class: "co-ref-field" }, (this.label || this.secondaryLabel) && (h("div", { key: '9f58fb3ad9dbf3d367641ab8f6346a74b377d42a', class: "co-ref-field__labels" }, this.label && (h("label", { key: '7960d2be8de225ef03283aac808c667c505884dd', class: "co-ref-field__label" }, this.labelIcon && (h("co-icon", { key: '5171afeb59ca8cf75ccf4a18b0390d23972a73a9', class: "co-ref-field__label-icon", name: this.labelIcon, size: 16 })), this.label, h(RequiredMark, { key: '88eb7972e30150185ef563eecce2fb57f97a1eb3', required: this.required }))), this.secondaryLabel && (h("span", { key: '8751906f899790cead37c9e28d5015e1fa58a801', class: "co-ref-field__secondary-label" }, this.secondaryLabel)))), h("co-popover", { key: 'b7953165b080b55ef0d95cad89849b30e2c27bfe', open: this.isOpen, placement: "bottom-start", matchWidth: !this.panelWidth, offset: 4, onCoOpen: this.handlePopoverOpen, onCoClose: this.handlePopoverClose }, h("div", { key: '07d22fe2182afa3899abb14845fbf0069cbd8b6f', slot: "trigger" }, this.renderTrigger()), this.isOpen && this.renderPanel()), this.helperText && (h("div", { key: '8842f7aecf18c770ceee88c368f3b50803178a6a', class: `co-ref-field__helper co-ref-field__helper--${this.status}` }, this.status !== 'default' && (h("co-icon", { key: '88925d75dad7a8853febedeeab60d5a83914396e', name: this.status === 'error' ? 'warning-circle' : this.status === 'success' ? 'check-circle' : 'info', size: 14 })), h("span", { key: '14577358ff94a20cb6ba9d91ab64388e48501632' }, this.helperText)))));
|
|
537
544
|
}
|
|
538
545
|
static get is() { return "co-ref-field"; }
|
|
539
546
|
static get encapsulation() { return "shadow"; }
|
|
@@ -698,7 +705,7 @@ export class CoRefField {
|
|
|
698
705
|
"optional": false,
|
|
699
706
|
"docs": {
|
|
700
707
|
"tags": [],
|
|
701
|
-
"text": "Shows a pencil button on the single-value trigger
|
|
708
|
+
"text": "Shows a pencil button on the single-value trigger (and on each chip when\n`multiple`) that emits `coEditSelected` with that record's id. The host owns policy\n(permissions, what opens) \u2014 the component only paints and emits."
|
|
702
709
|
},
|
|
703
710
|
"getter": false,
|
|
704
711
|
"setter": false,
|
|
@@ -1349,7 +1356,7 @@ export class CoRefField {
|
|
|
1349
1356
|
"references": {
|
|
1350
1357
|
"RefFieldOption": {
|
|
1351
1358
|
"location": "local",
|
|
1352
|
-
"path": "/Users/agox/
|
|
1359
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-ref-field/co-ref-field.tsx",
|
|
1353
1360
|
"id": "src/components/co-ref-field/co-ref-field.tsx::RefFieldOption"
|
|
1354
1361
|
}
|
|
1355
1362
|
}
|
|
@@ -1490,7 +1497,7 @@ export class CoRefField {
|
|
|
1490
1497
|
"references": {
|
|
1491
1498
|
"RefFieldOption": {
|
|
1492
1499
|
"location": "local",
|
|
1493
|
-
"path": "/Users/agox/
|
|
1500
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-ref-field/co-ref-field.tsx",
|
|
1494
1501
|
"id": "src/components/co-ref-field/co-ref-field.tsx::RefFieldOption"
|
|
1495
1502
|
}
|
|
1496
1503
|
}
|
|
@@ -1511,7 +1518,7 @@ export class CoRefField {
|
|
|
1511
1518
|
"references": {
|
|
1512
1519
|
"RefFieldOption": {
|
|
1513
1520
|
"location": "local",
|
|
1514
|
-
"path": "/Users/agox/
|
|
1521
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-ref-field/co-ref-field.tsx",
|
|
1515
1522
|
"id": "src/components/co-ref-field/co-ref-field.tsx::RefFieldOption"
|
|
1516
1523
|
}
|
|
1517
1524
|
}
|
|
@@ -1550,7 +1557,7 @@ export class CoRefField {
|
|
|
1550
1557
|
},
|
|
1551
1558
|
"RefFieldOption": {
|
|
1552
1559
|
"location": "local",
|
|
1553
|
-
"path": "/Users/agox/
|
|
1560
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-ref-field/co-ref-field.tsx",
|
|
1554
1561
|
"id": "src/components/co-ref-field/co-ref-field.tsx::RefFieldOption"
|
|
1555
1562
|
}
|
|
1556
1563
|
},
|
|
@@ -78,8 +78,11 @@ co-rich-text-editor {
|
|
|
78
78
|
box-shadow: 0 0 0 3px var(--co-semantic-border-focus-ring, rgba(37, 99, 235, 0.15));
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
+
/* Borde de error de CAMPO por --co-semantic-border-error: gira con el tema (status-error es
|
|
82
|
+
relleno fijo y como trazo en oscuro daba 2,94:1). En claro vale status-error (idéntico).
|
|
83
|
+
Fallback: la primitiva de hoy, hasta publicar tokens. */
|
|
81
84
|
.co-rich-text-editor--error .co-rich-text-editor__frame {
|
|
82
|
-
border-color: var(--co-color-status-error);
|
|
85
|
+
border-color: var(--co-semantic-border-error, var(--co-color-status-error));
|
|
83
86
|
}
|
|
84
87
|
.co-rich-text-editor--success .co-rich-text-editor__frame {
|
|
85
88
|
border-color: var(--co-color-status-success);
|
|
@@ -433,8 +436,10 @@ co-rich-text-editor {
|
|
|
433
436
|
color: var(--co-semantic-text-secondary);
|
|
434
437
|
font-size: var(--co-font-size-12, 12px);
|
|
435
438
|
}
|
|
436
|
-
|
|
437
|
-
|
|
439
|
+
/* Tinta de estado por --co-semantic-text-*: gira con el tema (status-* es relleno, no se
|
|
440
|
+
aclara, y como texto en oscuro daba <4,5). Fallback a la primitiva hasta publicar tokens. */
|
|
441
|
+
.co-rich-text-editor__helper--error { color: var(--co-semantic-text-error, var(--co-color-status-error)); }
|
|
442
|
+
.co-rich-text-editor__helper--success { color: var(--co-semantic-text-success, var(--co-color-status-success)); }
|
|
438
443
|
|
|
439
444
|
.co-rich-text-editor__count {
|
|
440
445
|
margin-left: auto;
|
|
@@ -1042,7 +1047,7 @@ co-rich-text-editor {
|
|
|
1042
1047
|
}
|
|
1043
1048
|
|
|
1044
1049
|
.co-rte-bubble__overflow-item--danger {
|
|
1045
|
-
color: var(--co-color-status-error, #aa2e1b);
|
|
1050
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error, #aa2e1b));
|
|
1046
1051
|
}
|
|
1047
1052
|
.co-rte-bubble__overflow-item--danger:hover {
|
|
1048
1053
|
background: rgba(170, 46, 27, 0.06);
|
|
@@ -1384,3 +1389,20 @@ co-rich-text-editor {
|
|
|
1384
1389
|
outline: none !important;
|
|
1385
1390
|
}
|
|
1386
1391
|
|
|
1392
|
+
|
|
1393
|
+
/* Marca de requerido: la misma de todos los campos co-* (utils/requiredMark). */
|
|
1394
|
+
.co-field-required {
|
|
1395
|
+
margin-left: 2px;
|
|
1396
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error));
|
|
1397
|
+
}
|
|
1398
|
+
|
|
1399
|
+
.co-field-required__caption {
|
|
1400
|
+
margin-left: 4px;
|
|
1401
|
+
color: var(--co-semantic-text-muted);
|
|
1402
|
+
font-size: var(--co-font-size-12);
|
|
1403
|
+
font-weight: 400;
|
|
1404
|
+
}
|
|
1405
|
+
|
|
1406
|
+
.co-field-required__caption::before {
|
|
1407
|
+
content: var(--co-field-required-text, ' (required)');
|
|
1408
|
+
}
|
|
@@ -2,6 +2,7 @@ import { h } from "@stencil/core";
|
|
|
2
2
|
import * as RichText from "@prolibu-suite/cobalt-rich-text";
|
|
3
3
|
import { getRichTextStrings } from "../../utils/richTextI18n";
|
|
4
4
|
import { applyExternalValue, buildOutput, EchoGuard, parseEditorValue, parseFeatures, syncImageLayouts, syncToolbarEditor } from "../../utils/rich-text-host";
|
|
5
|
+
import { RequiredMark } from "../../utils/requiredMark";
|
|
5
6
|
/**
|
|
6
7
|
* Rich text editor backed by Tiptap v3.
|
|
7
8
|
*
|
|
@@ -85,6 +86,16 @@ export class CoRichTextEditor {
|
|
|
85
86
|
this.applyingExternal = false;
|
|
86
87
|
this.rt = RichText;
|
|
87
88
|
this.imgLayoutVisible = false;
|
|
89
|
+
/** `componentDidLoad` ya corrió: desde acá un `connectedCallback` es una RE-conexión. */
|
|
90
|
+
this.loaded = false;
|
|
91
|
+
this.onToolbarMousedown = () => {
|
|
92
|
+
this.closeBubbleDropdowns();
|
|
93
|
+
};
|
|
94
|
+
this.onToolbarPopoverChange = (e) => {
|
|
95
|
+
var _a;
|
|
96
|
+
const open = (_a = e.detail) === null || _a === void 0 ? void 0 : _a.open;
|
|
97
|
+
this.suppressBubble(!!open);
|
|
98
|
+
};
|
|
88
99
|
this.handleUpdate = (editor) => {
|
|
89
100
|
this.refreshCharCount();
|
|
90
101
|
if (this.applyingExternal)
|
|
@@ -119,20 +130,38 @@ export class CoRichTextEditor {
|
|
|
119
130
|
}, 100);
|
|
120
131
|
};
|
|
121
132
|
}
|
|
133
|
+
connectedCallback() {
|
|
134
|
+
// El host volvió al documento DESPUÉS de un teardown (estuvo fuera más de un
|
|
135
|
+
// tick). `componentDidLoad` no vuelve a correr: sin esto el editor quedaba
|
|
136
|
+
// muerto y `getEditorInstance()` devolvía null.
|
|
137
|
+
if (this.loaded && !this.editor)
|
|
138
|
+
this.mountEditor();
|
|
139
|
+
}
|
|
122
140
|
async componentDidLoad() {
|
|
141
|
+
this.mountEditor();
|
|
142
|
+
this.loaded = true;
|
|
143
|
+
}
|
|
144
|
+
/** Crea el editor Tiptap sobre `contentEl`. Corre en la carga y al reconectar. */
|
|
145
|
+
mountEditor() {
|
|
123
146
|
var _a, _b;
|
|
124
147
|
if (!this.contentEl)
|
|
125
148
|
return;
|
|
149
|
+
const remount = this.loaded;
|
|
126
150
|
// Create bubble element imperatively so Stencil VDOM cannot interfere
|
|
127
151
|
// with BubbleMenu's DOM management (it calls element.remove/appendChild).
|
|
128
152
|
const showToolbar = this.resolvedToolbar !== 'none' && !this.readonly && !this.disabled;
|
|
129
153
|
if (showToolbar) {
|
|
130
154
|
this.bubbleEl = this.createBubbleElement();
|
|
131
155
|
}
|
|
156
|
+
// Al recrear, la instantánea del teardown (lo tipeado, que el padre puede no
|
|
157
|
+
// haber devuelto por `value`) gana; un `value` nuevo mientras tanto la borra.
|
|
158
|
+
const fromValue = this.detachedContent === undefined;
|
|
159
|
+
const content = fromValue ? parseEditorValue(this.value) : this.detachedContent;
|
|
160
|
+
this.detachedContent = undefined;
|
|
132
161
|
this.editor = this.rt.createEditor({
|
|
133
162
|
preset: this.preset,
|
|
134
163
|
element: this.contentEl,
|
|
135
|
-
content
|
|
164
|
+
content,
|
|
136
165
|
editable: !this.disabled && !this.readonly,
|
|
137
166
|
placeholder: this.placeholder,
|
|
138
167
|
maxLength: this.maxLength,
|
|
@@ -172,32 +201,47 @@ export class CoRichTextEditor {
|
|
|
172
201
|
this.updateImageLayoutBar();
|
|
173
202
|
});
|
|
174
203
|
// Clicking the toolbar closes bubble popups (link form, panels, etc.)
|
|
204
|
+
// Handlers con referencia estable: al recrear el editor, el mismo
|
|
205
|
+
// addEventListener sobre el mismo toolbar es un no-op (no se duplican).
|
|
175
206
|
if (this.bubbleEl && this.toolbarEl) {
|
|
176
|
-
this.toolbarEl.addEventListener('mousedown',
|
|
177
|
-
this.closeBubbleDropdowns();
|
|
178
|
-
});
|
|
207
|
+
this.toolbarEl.addEventListener('mousedown', this.onToolbarMousedown);
|
|
179
208
|
// Hide the selection bubble while a toolbar dropdown/popover is open so
|
|
180
209
|
// the two never overlap in the same space (the bubble lives inside the
|
|
181
210
|
// content area, right where toolbar dropdowns expand into).
|
|
182
|
-
this.toolbarEl.addEventListener('coPopoverChange',
|
|
183
|
-
var _a;
|
|
184
|
-
const open = (_a = e.detail) === null || _a === void 0 ? void 0 : _a.open;
|
|
185
|
-
this.suppressBubble(!!open);
|
|
186
|
-
});
|
|
211
|
+
this.toolbarEl.addEventListener('coPopoverChange', this.onToolbarPopoverChange);
|
|
187
212
|
}
|
|
188
|
-
|
|
213
|
+
// Recreado desde la instantánea: el guard anti-eco conserva el último output
|
|
214
|
+
// emitido (re-sembrarlo con `value` haría que un eco tardío del padre
|
|
215
|
+
// re-aplicara el contenido). Desde `value` (carga o valor nuevo), se siembra.
|
|
216
|
+
if (fromValue)
|
|
217
|
+
this.echo.seed((_b = this.value) !== null && _b !== void 0 ? _b : null);
|
|
189
218
|
this.ready = true;
|
|
190
219
|
this.refreshCharCount();
|
|
191
220
|
this.syncToolbar();
|
|
192
221
|
this.coReady.emit();
|
|
193
|
-
if (this.autofocus)
|
|
222
|
+
if (this.autofocus && !remount)
|
|
194
223
|
this.editor.commands.focus();
|
|
195
224
|
// Tag every image container with its layout mode so the CSS rules apply.
|
|
196
225
|
// Runs even without the layout toolbar (readonly/disabled viewers).
|
|
197
226
|
requestAnimationFrame(() => this.syncImageLayouts());
|
|
198
227
|
}
|
|
199
228
|
disconnectedCallback() {
|
|
200
|
-
|
|
229
|
+
// Un MOVIMIENTO del host (quitar + insertar en el mismo tick: el drawer que
|
|
230
|
+
// pasa de plano a split mueve el scrollport) también dispara este callback.
|
|
231
|
+
// Destruir en el acto dejaba el editor muerto. El teardown se difiere un
|
|
232
|
+
// microtask y solo corre si el host sigue fuera del documento; si volvió
|
|
233
|
+
// más tarde, `connectedCallback` lo recrea.
|
|
234
|
+
queueMicrotask(() => {
|
|
235
|
+
// Sin `window` el realm ya se desmontó (fin del entorno de pruebas): no hay nada que
|
|
236
|
+
// liberar y el `destroy()` de Tiptap reventaría leyendo `window`.
|
|
237
|
+
if (typeof window === 'undefined')
|
|
238
|
+
return;
|
|
239
|
+
if (!this.el.isConnected)
|
|
240
|
+
this.teardownEditor();
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
teardownEditor() {
|
|
244
|
+
var _a, _b, _c;
|
|
201
245
|
clearTimeout(this.blurTimeout);
|
|
202
246
|
clearTimeout(this.bubbleLockTimer);
|
|
203
247
|
(_a = this.bubbleStyleObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
@@ -207,10 +251,17 @@ export class CoRichTextEditor {
|
|
|
207
251
|
document.removeEventListener('mouseup', this.bubbleDragEndHandler);
|
|
208
252
|
if (this.bubbleOutsideClickHandler)
|
|
209
253
|
document.removeEventListener('click', this.bubbleOutsideClickHandler, true);
|
|
210
|
-
(
|
|
254
|
+
if (this.editor) {
|
|
255
|
+
// Instantánea de lo tipeado para recrear igual si el host vuelve.
|
|
256
|
+
this.detachedContent = this.editor.isEmpty ? null : this.editor.getJSON();
|
|
257
|
+
this.editor.destroy();
|
|
258
|
+
}
|
|
211
259
|
this.editor = undefined;
|
|
212
|
-
(
|
|
213
|
-
|
|
260
|
+
(_b = this.bubbleEl) === null || _b === void 0 ? void 0 : _b.remove();
|
|
261
|
+
this.bubbleEl = undefined;
|
|
262
|
+
(_c = this.imgLayoutEl) === null || _c === void 0 ? void 0 : _c.remove();
|
|
263
|
+
this.imgLayoutEl = undefined;
|
|
264
|
+
this.imgLayoutVisible = false;
|
|
214
265
|
}
|
|
215
266
|
componentDidRender() {
|
|
216
267
|
this.syncToolbar();
|
|
@@ -224,7 +275,13 @@ export class CoRichTextEditor {
|
|
|
224
275
|
}
|
|
225
276
|
}
|
|
226
277
|
onValueChange(next) {
|
|
227
|
-
|
|
278
|
+
// Sin editor tras un teardown: el valor nuevo gana sobre la instantánea al recrear.
|
|
279
|
+
if (!this.editor) {
|
|
280
|
+
if (this.loaded)
|
|
281
|
+
this.detachedContent = undefined;
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
if (this.applyingExternal)
|
|
228
285
|
return;
|
|
229
286
|
const incoming = next !== null && next !== void 0 ? next : null;
|
|
230
287
|
// El padre suele devolver nuestro propio output (JSON o HTML): re-aplicarlo
|
|
@@ -2007,11 +2064,11 @@ export class CoRichTextEditor {
|
|
|
2007
2064
|
const showToolbar = this.resolvedToolbar !== 'none' && !this.readonly && !this.disabled;
|
|
2008
2065
|
const showCount = this.showCharacterCount || this.maxLength != null;
|
|
2009
2066
|
const bottom = this.toolbarPosition === 'bottom';
|
|
2010
|
-
const toolbar = showToolbar && (h("co-rich-text-toolbar", { key: '
|
|
2067
|
+
const toolbar = showToolbar && (h("co-rich-text-toolbar", { key: '7b2112db75bb679695e9bb58385d193e90d3678b', class: "co-rich-text-editor__toolbar", part: "toolbar", variant: this.resolvedToolbar, position: this.toolbarPosition, disabled: this.disabled || this.readonly, locale: this.locale, attachmentsEnabled: this.attachmentsEnabled, attachmentAccept: this.attachmentAccept, onCoAttachmentsSelected: (e) => {
|
|
2011
2068
|
e.stopPropagation();
|
|
2012
2069
|
this.coAttachmentsSelected.emit(e.detail);
|
|
2013
2070
|
}, ref: (el) => (this.toolbarEl = el) }));
|
|
2014
|
-
return (h("div", { key: '
|
|
2071
|
+
return (h("div", { key: '8b848da977b08aa7f3466fa14403155ddc1c1d66', class: {
|
|
2015
2072
|
'co-rich-text-editor': true,
|
|
2016
2073
|
'co-rich-text-editor--focused': this.hasFocus,
|
|
2017
2074
|
'co-rich-text-editor--disabled': this.disabled,
|
|
@@ -2020,7 +2077,7 @@ export class CoRichTextEditor {
|
|
|
2020
2077
|
[`co-rich-text-editor--${this.status}`]: this.status !== 'default',
|
|
2021
2078
|
'co-rich-text-editor--flat': this.variant === 'flat',
|
|
2022
2079
|
'co-rich-text-editor--toolbar-bottom': bottom,
|
|
2023
|
-
}, part: "wrapper" }, (this.label || this.secondaryLabel) && (h("div", { key: '
|
|
2080
|
+
}, part: "wrapper" }, (this.label || this.secondaryLabel) && (h("div", { key: 'f35d59f312dabcd2b384e958a45bb7ac4a33f7bb', class: "co-rich-text-editor__labels" }, this.label && h("label", { key: 'e7b2d47de7356e4a89fabf925255dbf0d25fc8e9', class: "co-rich-text-editor__label", part: "label" }, this.label, h(RequiredMark, { key: 'f56500b0382d9d12c7f78b4448aab7cc748271be', required: this.required })), this.secondaryLabel && (h("span", { key: 'e305aecd4fee9963221210ac076791f456aad91c', class: "co-rich-text-editor__secondary-label" }, this.secondaryLabel)))), h("div", { key: '284ff5c06606efef9a06de80478acc57868229eb', class: "co-rich-text-editor__frame" }, !bottom && toolbar, h("div", { key: '145b244c505ae5374bd847855978da02baa878cc', class: "co-rich-text-editor__box" }, h("div", { key: 'c5f02991df3e712a3e6a0163415a75c5e91e4384', class: "co-rte-content", part: "content", role: "textbox", "aria-multiline": "true", "aria-label": this.label, "aria-required": this.required ? 'true' : undefined, "aria-invalid": this.status === 'error' ? 'true' : undefined, ref: (el) => (this.contentEl = el) })), h("slot", { key: '060e3e5bcda76b403357ada26950c9f50a71076e', name: "content-end" }), bottom && (h("div", { key: '2ec4329cfc09714a78caab5ca774f08af2984729', class: "co-rich-text-editor__toolbar-row", part: "toolbar-row" }, toolbar, h("slot", { key: '806f94a2d924df1b33d5fcf5d28279b093f69845', name: "toolbar-end" })))), h("div", { key: '8fcb92d7f3404c7458f95fc578fbb579ecb4b5e7', class: "co-rich-text-editor__footer" }, this.helperText && (h("div", { key: 'b1b664ceb090e940cadc3aa782eb074e6517146a', class: `co-rich-text-editor__helper co-rich-text-editor__helper--${this.status}`, part: "helper" }, h("co-icon", { key: 'a8db33f94d1aec0bc62bd9ee709d4cff914fc51c', name: this.helperIcon, size: 14 }), h("span", { key: 'be99a15b919ea82668da83854735b80eaf03ebf7' }, this.helperText))), showCount && (h("span", { key: 'dfde31e7c4f62fc9cf9fc3654f5eb6a2377dcf9a', class: "co-rich-text-editor__count", ref: (el) => (this.charCountEl = el) }, this.charCount, this.maxLength != null ? ` / ${this.maxLength}` : '')))));
|
|
2024
2081
|
}
|
|
2025
2082
|
static get is() { return "co-rich-text-editor"; }
|
|
2026
2083
|
static get originalStyleUrls() {
|
|
@@ -2671,7 +2728,7 @@ export class CoRichTextEditor {
|
|
|
2671
2728
|
"composed": true,
|
|
2672
2729
|
"docs": {
|
|
2673
2730
|
"tags": [],
|
|
2674
|
-
"text": "Emitted once the editor is mounted and ready."
|
|
2731
|
+
"text": "Emitted once the editor is mounted and ready. Se RE-emite si el editor se\nrecrea al reconectar el host tras un teardown: quien guarde la instancia de\n`getEditorInstance()` debe volver a pedirla en cada `coReady`."
|
|
2675
2732
|
},
|
|
2676
2733
|
"complexType": {
|
|
2677
2734
|
"original": "void",
|
|
@@ -227,8 +227,10 @@
|
|
|
227
227
|
color: #fff;
|
|
228
228
|
}
|
|
229
229
|
|
|
230
|
+
/* Tinta de estado por --co-semantic-text-*: gira con el tema (status-* es relleno, no se
|
|
231
|
+
aclara, y como texto en oscuro daba <4,5). Fallback a la primitiva hasta publicar tokens. */
|
|
230
232
|
.co-rich-text-toolbar__popover-btn--danger {
|
|
231
|
-
color: var(--co-color-status-error, #aa2e1b);
|
|
233
|
+
color: var(--co-semantic-text-error, var(--co-color-status-error, #aa2e1b));
|
|
232
234
|
border-color: var(--co-color-status-error, #aa2e1b);
|
|
233
235
|
}
|
|
234
236
|
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import { h } from "@stencil/core";
|
|
2
2
|
import { toolbarItems, COLOR_PALETTE, TABLE_CONTEXT_ITEMS } from "@prolibu-suite/cobalt-rich-text";
|
|
3
3
|
import { getRichTextStrings } from "../../utils/richTextI18n";
|
|
4
|
+
import { panelShiftX, visibleArea } from "./panelFit";
|
|
5
|
+
/** Paneles que cuelgan de un botón (ver co-rich-text-toolbar.css): los que `fitOpenPanel` encaja. */
|
|
6
|
+
const PANEL_SELECTOR = [
|
|
7
|
+
'.co-rich-text-toolbar__popover',
|
|
8
|
+
'.co-rich-text-toolbar__dropdown',
|
|
9
|
+
'.co-rich-text-toolbar__color-picker',
|
|
10
|
+
'.co-rich-text-toolbar__table-picker',
|
|
11
|
+
'.co-rich-text-toolbar__listpicker',
|
|
12
|
+
].join(', ');
|
|
4
13
|
/**
|
|
5
14
|
* Formatting toolbar for co-rich-text-editor. Receives the Tiptap editor
|
|
6
15
|
* instance via the `editor` JS property, runs commands, and reflects active
|
|
@@ -384,6 +393,37 @@ export class CoRichTextToolbar {
|
|
|
384
393
|
return;
|
|
385
394
|
this.coPopoverChange.emit({ open: !!next });
|
|
386
395
|
}
|
|
396
|
+
componentDidRender() {
|
|
397
|
+
this.fitOpenPanel();
|
|
398
|
+
}
|
|
399
|
+
/**
|
|
400
|
+
* Corre el panel abierto hacia la izquierda si se sale del área VISIBLE
|
|
401
|
+
* (viewport ∩ ancestros que recortan, ver panelFit.ts). Los paneles anclan a
|
|
402
|
+
* `left:0` de su botón por CSS: en una columna angosta (inspector del
|
|
403
|
+
* cotizador) el de link/listas se cortaba y el contenedor ganaba scroll-x.
|
|
404
|
+
* Se mide tras cada render con el panel abierto (su contenido cambia: menú →
|
|
405
|
+
* URL de la imagen), reseteando antes el corrimiento anterior.
|
|
406
|
+
*/
|
|
407
|
+
fitOpenPanel() {
|
|
408
|
+
var _a;
|
|
409
|
+
if (!this.openPopover || typeof window === 'undefined')
|
|
410
|
+
return;
|
|
411
|
+
const panels = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll(PANEL_SELECTOR);
|
|
412
|
+
if (!(panels === null || panels === void 0 ? void 0 : panels.length))
|
|
413
|
+
return;
|
|
414
|
+
const viewport = document.documentElement.clientWidth || window.innerWidth; // sin la scrollbar de la página
|
|
415
|
+
const area = visibleArea(this.el, viewport, (node) => getComputedStyle(node).overflowX);
|
|
416
|
+
panels.forEach((panel) => {
|
|
417
|
+
panel.style.translate = '';
|
|
418
|
+
const box = panel.getBoundingClientRect();
|
|
419
|
+
if (!box.width)
|
|
420
|
+
return;
|
|
421
|
+
const scale = panel.offsetWidth ? box.width / panel.offsetWidth || 1 : 1;
|
|
422
|
+
const dx = panelShiftX(box, area);
|
|
423
|
+
if (dx)
|
|
424
|
+
panel.style.translate = `${dx / scale}px 0`;
|
|
425
|
+
});
|
|
426
|
+
}
|
|
387
427
|
disconnectedCallback() {
|
|
388
428
|
var _a;
|
|
389
429
|
(_a = this.editor) === null || _a === void 0 ? void 0 : _a.off('transaction', this.onTransaction);
|