@rt-tools/ui-kit-v2 0.16.0 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -0
- package/fesm2022/rt-tools-ui-kit-v2-accordion.mjs +79 -0
- package/fesm2022/rt-tools-ui-kit-v2-accordion.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-action-bar.mjs +227 -0
- package/fesm2022/rt-tools-ui-kit-v2-action-bar.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-aside-section.mjs +47 -0
- package/fesm2022/rt-tools-ui-kit-v2-aside-section.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-aside.mjs +702 -0
- package/fesm2022/rt-tools-ui-kit-v2-aside.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-autocomplete.mjs +214 -0
- package/fesm2022/rt-tools-ui-kit-v2-autocomplete.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-bar-list.mjs +53 -0
- package/fesm2022/rt-tools-ui-kit-v2-bar-list.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-bottom-sheet.mjs +88 -0
- package/fesm2022/rt-tools-ui-kit-v2-bottom-sheet.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-button.mjs +365 -0
- package/fesm2022/rt-tools-ui-kit-v2-button.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-calendar.mjs +152 -0
- package/fesm2022/rt-tools-ui-kit-v2-calendar.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-card.mjs +72 -0
- package/fesm2022/rt-tools-ui-kit-v2-card.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-checkbox.mjs +111 -0
- package/fesm2022/rt-tools-ui-kit-v2-checkbox.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-collapsible-text.mjs +76 -0
- package/fesm2022/rt-tools-ui-kit-v2-collapsible-text.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-confirm-popover.mjs +255 -0
- package/fesm2022/rt-tools-ui-kit-v2-confirm-popover.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-container.mjs +1326 -0
- package/fesm2022/rt-tools-ui-kit-v2-container.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-core.mjs +2590 -0
- package/fesm2022/rt-tools-ui-kit-v2-core.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-counter-row.mjs +45 -0
- package/fesm2022/rt-tools-ui-kit-v2-counter-row.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-counter.mjs +158 -0
- package/fesm2022/rt-tools-ui-kit-v2-counter.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-data-list.mjs +894 -0
- package/fesm2022/rt-tools-ui-kit-v2-data-list.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-data-table.mjs +1217 -0
- package/fesm2022/rt-tools-ui-kit-v2-data-table.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-date-picker.mjs +779 -0
- package/fesm2022/rt-tools-ui-kit-v2-date-picker.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-date-range.mjs +573 -0
- package/fesm2022/rt-tools-ui-kit-v2-date-range.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-delta-view.mjs +141 -0
- package/fesm2022/rt-tools-ui-kit-v2-delta-view.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-detail-list.mjs +68 -0
- package/fesm2022/rt-tools-ui-kit-v2-detail-list.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-dialog.mjs +478 -0
- package/fesm2022/rt-tools-ui-kit-v2-dialog.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-dot-field.mjs +183 -0
- package/fesm2022/rt-tools-ui-kit-v2-dot-field.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-download-link.mjs +44 -0
- package/fesm2022/rt-tools-ui-kit-v2-download-link.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-dynamic-list.mjs +260 -0
- package/fesm2022/rt-tools-ui-kit-v2-dynamic-list.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-dynamic-selector.mjs +937 -0
- package/fesm2022/rt-tools-ui-kit-v2-dynamic-selector.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-empty-state.mjs +56 -0
- package/fesm2022/rt-tools-ui-kit-v2-empty-state.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-expansion-panel.mjs +107 -0
- package/fesm2022/rt-tools-ui-kit-v2-expansion-panel.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-field.mjs +183 -0
- package/fesm2022/rt-tools-ui-kit-v2-field.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-card.mjs +219 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-card.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-drop.mjs +214 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-drop.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-input.mjs +117 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-input.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-list.mjs +32 -0
- package/fesm2022/rt-tools-ui-kit-v2-file-list.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-filter-control.mjs +91 -0
- package/fesm2022/rt-tools-ui-kit-v2-filter-control.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-form-control.mjs +220 -0
- package/fesm2022/rt-tools-ui-kit-v2-form-control.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-header.mjs +72 -0
- package/fesm2022/rt-tools-ui-kit-v2-header.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-icon-button.mjs +163 -0
- package/fesm2022/rt-tools-ui-kit-v2-icon-button.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-icon.mjs +674 -0
- package/fesm2022/rt-tools-ui-kit-v2-icon.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-image-cropper.mjs +540 -0
- package/fesm2022/rt-tools-ui-kit-v2-image-cropper.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-image-upload.mjs +227 -0
- package/fesm2022/rt-tools-ui-kit-v2-image-upload.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-info-item.mjs +37 -0
- package/fesm2022/rt-tools-ui-kit-v2-info-item.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-input-number.mjs +361 -0
- package/fesm2022/rt-tools-ui-kit-v2-input-number.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-input.mjs +143 -0
- package/fesm2022/rt-tools-ui-kit-v2-input.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-live-badge.mjs +49 -0
- package/fesm2022/rt-tools-ui-kit-v2-live-badge.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-logo.mjs +97 -0
- package/fesm2022/rt-tools-ui-kit-v2-logo.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-markdown-text.mjs +57 -0
- package/fesm2022/rt-tools-ui-kit-v2-markdown-text.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-menu.mjs +537 -0
- package/fesm2022/rt-tools-ui-kit-v2-menu.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-message.mjs +105 -0
- package/fesm2022/rt-tools-ui-kit-v2-message.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-money-list.mjs +71 -0
- package/fesm2022/rt-tools-ui-kit-v2-money-list.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-multiselect.mjs +315 -0
- package/fesm2022/rt-tools-ui-kit-v2-multiselect.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-night-grid.mjs +51 -0
- package/fesm2022/rt-tools-ui-kit-v2-night-grid.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-note.mjs +44 -0
- package/fesm2022/rt-tools-ui-kit-v2-note.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-notifications-bell.mjs +54 -0
- package/fesm2022/rt-tools-ui-kit-v2-notifications-bell.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-page-header.mjs +339 -0
- package/fesm2022/rt-tools-ui-kit-v2-page-header.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-pagination.mjs +187 -0
- package/fesm2022/rt-tools-ui-kit-v2-pagination.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-photo-viewer.mjs +170 -0
- package/fesm2022/rt-tools-ui-kit-v2-photo-viewer.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-popover.mjs +312 -0
- package/fesm2022/rt-tools-ui-kit-v2-popover.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-radio-button.mjs +174 -0
- package/fesm2022/rt-tools-ui-kit-v2-radio-button.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-radius.mjs +56 -0
- package/fesm2022/rt-tools-ui-kit-v2-radius.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-rich-editor.mjs +96 -41
- package/fesm2022/rt-tools-ui-kit-v2-rich-editor.mjs.map +1 -1
- package/fesm2022/rt-tools-ui-kit-v2-ripple.mjs +118 -0
- package/fesm2022/rt-tools-ui-kit-v2-ripple.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-scroll-area.mjs +290 -0
- package/fesm2022/rt-tools-ui-kit-v2-scroll-area.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-section-nav.mjs +37 -0
- package/fesm2022/rt-tools-ui-kit-v2-section-nav.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-select.mjs +495 -0
- package/fesm2022/rt-tools-ui-kit-v2-select.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-side-menu.mjs +1493 -0
- package/fesm2022/rt-tools-ui-kit-v2-side-menu.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-skeleton-wrapper.mjs +49 -0
- package/fesm2022/rt-tools-ui-kit-v2-skeleton-wrapper.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-skeleton.mjs +123 -0
- package/fesm2022/rt-tools-ui-kit-v2-skeleton.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-spinner.mjs +70 -0
- package/fesm2022/rt-tools-ui-kit-v2-spinner.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-split-button.mjs +92 -0
- package/fesm2022/rt-tools-ui-kit-v2-split-button.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-stat-tile.mjs +147 -0
- package/fesm2022/rt-tools-ui-kit-v2-stat-tile.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-stepper.mjs +117 -0
- package/fesm2022/rt-tools-ui-kit-v2-stepper.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-table.mjs +1636 -0
- package/fesm2022/rt-tools-ui-kit-v2-table.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-tabs.mjs +350 -0
- package/fesm2022/rt-tools-ui-kit-v2-tabs.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-tag.mjs +122 -0
- package/fesm2022/rt-tools-ui-kit-v2-tag.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-textarea.mjs +85 -0
- package/fesm2022/rt-tools-ui-kit-v2-textarea.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-theme-toggle.mjs +73 -0
- package/fesm2022/rt-tools-ui-kit-v2-theme-toggle.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-thread-list.mjs +196 -0
- package/fesm2022/rt-tools-ui-kit-v2-thread-list.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-timeline.mjs +39 -0
- package/fesm2022/rt-tools-ui-kit-v2-timeline.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-toast.mjs +338 -0
- package/fesm2022/rt-tools-ui-kit-v2-toast.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-toggle-button-group.mjs +132 -0
- package/fesm2022/rt-tools-ui-kit-v2-toggle-button-group.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-toggle-switch.mjs +162 -0
- package/fesm2022/rt-tools-ui-kit-v2-toggle-switch.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-toolbar.mjs +135 -0
- package/fesm2022/rt-tools-ui-kit-v2-toolbar.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-tooltip.mjs +214 -0
- package/fesm2022/rt-tools-ui-kit-v2-tooltip.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-welcome-dialog.mjs +64 -0
- package/fesm2022/rt-tools-ui-kit-v2-welcome-dialog.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-workspace-details.mjs +263 -0
- package/fesm2022/rt-tools-ui-kit-v2-workspace-details.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2-workspace.mjs +296 -0
- package/fesm2022/rt-tools-ui-kit-v2-workspace.mjs.map +1 -0
- package/fesm2022/rt-tools-ui-kit-v2.mjs +91 -23164
- package/fesm2022/rt-tools-ui-kit-v2.mjs.map +1 -1
- package/package.json +349 -1
- package/rt-tools-ui-kit-v2-0.18.0.tgz +0 -0
- package/src/lib/components/action-bar/CONTEXT.md +5 -0
- package/src/lib/components/action-bar/rt-action-bar.component.scss +30 -16
- package/src/lib/components/aside/CONTEXT.md +9 -1
- package/src/lib/components/aside/footer/rt-aside-footer.component.scss +7 -8
- package/src/lib/components/aside/header/rt-aside-header.component.scss +16 -1
- package/src/lib/components/aside/rt-aside.component.scss +17 -1
- package/src/lib/components/button/CONTEXT.md +12 -11
- package/src/lib/components/button/rt-button.directive.scss +36 -0
- package/src/lib/components/data-list/settings/rt-data-list-settings-aside.component.scss +2 -2
- package/src/lib/components/data-table/cell/rt-data-table-cell.component.scss +1 -1
- package/src/lib/components/data-table/filter-cell/rt-data-table-filter-cell.component.scss +1 -1
- package/src/lib/components/data-table/rt-data-table.component.scss +1 -1
- package/src/lib/components/dialog/CONTEXT.md +9 -0
- package/src/lib/components/dialog/content/rt-dialog-content.component.scss +20 -0
- package/src/lib/components/dialog/footer/rt-dialog-footer.component.scss +18 -2
- package/src/lib/components/dialog/header/rt-dialog-header.component.scss +21 -3
- package/src/lib/components/dialog/rt-dialog.component.scss +9 -3
- package/src/lib/components/dot-field/CONTEXT.md +31 -0
- package/src/lib/components/dot-field/rt-dot-field.component.scss +20 -0
- package/src/lib/components/dot-field/stories/component/CONTEXT.md +14 -0
- package/src/lib/components/dot-field/stories/component/test-dot-field.component.scss +31 -0
- package/src/lib/components/dynamic-selector/CONTEXT.md +6 -0
- package/src/lib/components/field/CONTEXT.md +18 -2
- package/src/lib/components/header/CONTEXT.md +2 -2
- package/src/lib/components/icon/CONTEXT.md +11 -7
- package/src/lib/components/icon/rt-icon.component.scss +47 -0
- package/src/lib/components/icon-button/CONTEXT.md +27 -20
- package/src/lib/components/icon-button/rt-icon-button.component.scss +51 -25
- package/src/lib/components/image-upload/CONTEXT.md +20 -15
- package/src/lib/components/image-upload/rt-image-upload.component.scss +14 -2
- package/src/lib/components/pagination/rt-pagination.component.scss +1 -1
- package/src/lib/components/scroll-area/CONTEXT.md +2 -0
- package/src/lib/components/scroll-area/rt-scroll-area.component.scss +20 -3
- package/src/lib/components/select/rt-select.component.scss +4 -0
- package/src/lib/components/side-menu/CONTEXT.md +7 -2
- package/src/lib/components/spinner/CONTEXT.md +15 -8
- package/src/lib/components/spinner/rt-spinner.component.scss +108 -9
- package/src/lib/components/tag/rt-tag.component.scss +43 -23
- package/src/lib/components/toast/CONTEXT.md +8 -0
- package/src/lib/components/toast/rt-toast.component.scss +74 -15
- package/src/lib/components/toast/rt-toaster.component.scss +5 -1
- package/src/lib/components/toggle-button-group/rt-toggle-button-group.component.scss +35 -37
- package/src/lib/components/toggle-switch/CONTEXT.md +11 -3
- package/src/lib/components/toggle-switch/rt-toggle-switch.component.scss +53 -14
- package/src/lib/components/toolbar/rt-toolbar.component.scss +15 -4
- package/src/lib/components/tooltip/CONTEXT.md +5 -5
- package/src/rich-editor/lib/components/chat/CONTEXT.md +7 -2
- package/src/rich-editor/lib/components/chat/rt-chat.component.scss +25 -0
- package/src/styles/_semantic.scss +1 -1
- package/styles/tokens.css +43 -8
- package/types/rt-tools-ui-kit-v2-accordion.d.ts +30 -0
- package/types/rt-tools-ui-kit-v2-action-bar.d.ts +140 -0
- package/types/rt-tools-ui-kit-v2-aside-section.d.ts +25 -0
- package/types/rt-tools-ui-kit-v2-aside.d.ts +436 -0
- package/types/rt-tools-ui-kit-v2-autocomplete.d.ts +78 -0
- package/types/rt-tools-ui-kit-v2-bar-list.d.ts +41 -0
- package/types/rt-tools-ui-kit-v2-bottom-sheet.d.ts +20 -0
- package/types/rt-tools-ui-kit-v2-button.d.ts +76 -0
- package/types/rt-tools-ui-kit-v2-calendar.d.ts +96 -0
- package/types/rt-tools-ui-kit-v2-card.d.ts +38 -0
- package/types/rt-tools-ui-kit-v2-checkbox.d.ts +46 -0
- package/types/rt-tools-ui-kit-v2-collapsible-text.d.ts +20 -0
- package/types/rt-tools-ui-kit-v2-confirm-popover.d.ts +85 -0
- package/types/rt-tools-ui-kit-v2-container.d.ts +425 -0
- package/types/rt-tools-ui-kit-v2-core.d.ts +1222 -0
- package/types/rt-tools-ui-kit-v2-counter-row.d.ts +22 -0
- package/types/rt-tools-ui-kit-v2-counter.d.ts +70 -0
- package/types/rt-tools-ui-kit-v2-data-list.d.ts +334 -0
- package/types/rt-tools-ui-kit-v2-data-table.d.ts +494 -0
- package/types/rt-tools-ui-kit-v2-date-picker.d.ts +181 -0
- package/types/rt-tools-ui-kit-v2-date-range.d.ts +98 -0
- package/types/rt-tools-ui-kit-v2-delta-view.d.ts +20 -0
- package/types/rt-tools-ui-kit-v2-detail-list.d.ts +33 -0
- package/types/rt-tools-ui-kit-v2-dialog.d.ts +287 -0
- package/types/rt-tools-ui-kit-v2-dot-field.d.ts +17 -0
- package/types/rt-tools-ui-kit-v2-download-link.d.ts +17 -0
- package/types/rt-tools-ui-kit-v2-dynamic-list.d.ts +139 -0
- package/types/rt-tools-ui-kit-v2-dynamic-selector.d.ts +384 -0
- package/types/rt-tools-ui-kit-v2-empty-state.d.ts +29 -0
- package/types/rt-tools-ui-kit-v2-expansion-panel.d.ts +57 -0
- package/types/rt-tools-ui-kit-v2-field.d.ts +82 -0
- package/types/rt-tools-ui-kit-v2-file-card.d.ts +114 -0
- package/types/rt-tools-ui-kit-v2-file-drop.d.ts +75 -0
- package/types/rt-tools-ui-kit-v2-file-input.d.ts +48 -0
- package/types/rt-tools-ui-kit-v2-file-list.d.ts +13 -0
- package/types/rt-tools-ui-kit-v2-filter-control.d.ts +72 -0
- package/types/rt-tools-ui-kit-v2-form-control.d.ts +74 -0
- package/types/rt-tools-ui-kit-v2-header.d.ts +40 -0
- package/types/rt-tools-ui-kit-v2-icon-button.d.ts +113 -0
- package/types/rt-tools-ui-kit-v2-icon.d.ts +238 -0
- package/types/rt-tools-ui-kit-v2-image-cropper.d.ts +168 -0
- package/types/rt-tools-ui-kit-v2-image-upload.d.ts +102 -0
- package/types/rt-tools-ui-kit-v2-info-item.d.ts +13 -0
- package/types/rt-tools-ui-kit-v2-input-number.d.ts +67 -0
- package/types/rt-tools-ui-kit-v2-input.d.ts +54 -0
- package/types/rt-tools-ui-kit-v2-live-badge.d.ts +23 -0
- package/types/rt-tools-ui-kit-v2-logo.d.ts +58 -0
- package/types/rt-tools-ui-kit-v2-markdown-text.d.ts +30 -0
- package/types/rt-tools-ui-kit-v2-menu.d.ts +217 -0
- package/types/rt-tools-ui-kit-v2-message.d.ts +56 -0
- package/types/rt-tools-ui-kit-v2-money-list.d.ts +34 -0
- package/types/rt-tools-ui-kit-v2-multiselect.d.ts +93 -0
- package/types/rt-tools-ui-kit-v2-night-grid.d.ts +39 -0
- package/types/rt-tools-ui-kit-v2-note.d.ts +21 -0
- package/types/rt-tools-ui-kit-v2-notifications-bell.d.ts +23 -0
- package/types/rt-tools-ui-kit-v2-page-header.d.ts +173 -0
- package/types/rt-tools-ui-kit-v2-pagination.d.ts +64 -0
- package/types/rt-tools-ui-kit-v2-photo-viewer.d.ts +98 -0
- package/types/rt-tools-ui-kit-v2-popover.d.ts +79 -0
- package/types/rt-tools-ui-kit-v2-radio-button.d.ts +61 -0
- package/types/rt-tools-ui-kit-v2-radius.d.ts +37 -0
- package/types/rt-tools-ui-kit-v2-rich-editor.d.ts +16 -20
- package/types/rt-tools-ui-kit-v2-ripple.d.ts +39 -0
- package/types/rt-tools-ui-kit-v2-scroll-area.d.ts +91 -0
- package/types/rt-tools-ui-kit-v2-section-nav.d.ts +23 -0
- package/types/rt-tools-ui-kit-v2-select.d.ts +215 -0
- package/types/rt-tools-ui-kit-v2-side-menu.d.ts +483 -0
- package/types/rt-tools-ui-kit-v2-skeleton-wrapper.d.ts +32 -0
- package/types/rt-tools-ui-kit-v2-skeleton.d.ts +41 -0
- package/types/rt-tools-ui-kit-v2-spinner.d.ts +56 -0
- package/types/rt-tools-ui-kit-v2-split-button.d.ts +72 -0
- package/types/rt-tools-ui-kit-v2-stat-tile.d.ts +81 -0
- package/types/rt-tools-ui-kit-v2-stepper.d.ts +51 -0
- package/types/rt-tools-ui-kit-v2-table.d.ts +739 -0
- package/types/rt-tools-ui-kit-v2-tabs.d.ts +153 -0
- package/types/rt-tools-ui-kit-v2-tag.d.ts +70 -0
- package/types/rt-tools-ui-kit-v2-textarea.d.ts +36 -0
- package/types/rt-tools-ui-kit-v2-theme-toggle.d.ts +43 -0
- package/types/rt-tools-ui-kit-v2-thread-list.d.ts +111 -0
- package/types/rt-tools-ui-kit-v2-timeline.d.ts +35 -0
- package/types/rt-tools-ui-kit-v2-toast.d.ts +103 -0
- package/types/rt-tools-ui-kit-v2-toggle-button-group.d.ts +109 -0
- package/types/rt-tools-ui-kit-v2-toggle-switch.d.ts +85 -0
- package/types/rt-tools-ui-kit-v2-toolbar.d.ts +66 -0
- package/types/rt-tools-ui-kit-v2-tooltip.d.ts +74 -0
- package/types/rt-tools-ui-kit-v2-welcome-dialog.d.ts +33 -0
- package/types/rt-tools-ui-kit-v2-workspace-details.d.ts +128 -0
- package/types/rt-tools-ui-kit-v2-workspace.d.ts +84 -0
- package/types/rt-tools-ui-kit-v2.d.ts +87 -9290
- package/rt-tools-ui-kit-v2-0.16.0.tgz +0 -0
|
@@ -9,11 +9,6 @@
|
|
|
9
9
|
rt-icon-button {
|
|
10
10
|
display: inline-flex;
|
|
11
11
|
|
|
12
|
-
/* Дефолт = md; перезаписывается модификаторами sm/lg ниже либо inline стилем потребителя.
|
|
13
|
-
Ряд берётся из общей шкалы высот контролов: иконочная кнопка стоит в строке
|
|
14
|
-
рядом с кнопкой и полем и обязана совпадать с ними по высоте. */
|
|
15
|
-
--rt-icon-button-size: var(--rt-control-height-md);
|
|
16
|
-
|
|
17
12
|
/* Цвет иконки объявлен здесь, а не приходил бы запасным значением на месте
|
|
18
13
|
обращения: запасное переживает смену темы — переопределять нечего. Своё
|
|
19
14
|
свойство блока перебивает тот, кому нужен другой цвет: так делает просмотр
|
|
@@ -38,20 +33,26 @@
|
|
|
38
33
|
--rt-icon-button-color-hover: var(--rt-icon-button-color);
|
|
39
34
|
--rt-icon-button-transition-duration: var(--rt-duration-fast);
|
|
40
35
|
|
|
41
|
-
/*
|
|
42
|
-
|
|
43
|
-
|
|
36
|
+
/* Размер и заливка покоя — частные шаги: их пишут модификаторы размера и вида, а кнопка
|
|
37
|
+
читает их под публичными `--rt-icon-button-size` и `--rt-icon-button-bg`. Публичные
|
|
38
|
+
кнопка не объявляет, поэтому значение на теге `<rt-icon-button>` или выше доходит до
|
|
39
|
+
неё; раньше модификатор объявлял публичное свойство на самой кнопке и перебивал тег.
|
|
40
|
+
Компоненты кита, которым нужен свой размер кнопки, тоже пишут шаг, а не публичное
|
|
41
|
+
свойство: последнее слово остаётся за приложением.
|
|
42
|
+
Ряд размеров — из общей шкалы высот контролов: кнопка стоит в строке рядом с полем. */
|
|
43
|
+
--rt-icon-button-bg-variant: transparent;
|
|
44
|
+
--rt-icon-button-size-step: var(--rt-control-height-md);
|
|
44
45
|
|
|
45
46
|
position: relative;
|
|
46
47
|
display: inline-flex;
|
|
47
|
-
width: var(--rt-icon-button-size);
|
|
48
|
-
height: var(--rt-icon-button-size);
|
|
48
|
+
width: var(--rt-icon-button-size, var(--rt-icon-button-size-step));
|
|
49
|
+
height: var(--rt-icon-button-size, var(--rt-icon-button-size-step));
|
|
49
50
|
align-items: center;
|
|
50
51
|
justify-content: center;
|
|
51
52
|
padding: 0;
|
|
52
53
|
border: 0;
|
|
53
54
|
border-radius: var(--rt-icon-button-radius);
|
|
54
|
-
background-color: var(--rt-icon-button-bg);
|
|
55
|
+
background-color: var(--rt-icon-button-bg, var(--rt-icon-button-bg-variant));
|
|
55
56
|
box-shadow: var(--rt-icon-button-shadow);
|
|
56
57
|
color: var(--rt-icon-button-color);
|
|
57
58
|
cursor: pointer;
|
|
@@ -59,24 +60,34 @@
|
|
|
59
60
|
background-color var(--rt-icon-button-transition-duration) ease,
|
|
60
61
|
box-shadow var(--rt-icon-button-transition-duration) ease;
|
|
61
62
|
|
|
63
|
+
/* Два шага меньше `sm` — для плотных строк. У шкалы нет ступени 22px, и ступень ради одной
|
|
64
|
+
кнопки легла бы мимо её сетки в 4px: шаг `xs` записан на месте. */
|
|
65
|
+
&--2xs {
|
|
66
|
+
--rt-icon-button-size-step: var(--rt-size-5);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
&--xs {
|
|
70
|
+
--rt-icon-button-size-step: 22px;
|
|
71
|
+
}
|
|
72
|
+
|
|
62
73
|
&--sm {
|
|
63
|
-
--rt-icon-button-size: var(--rt-control-height-sm);
|
|
74
|
+
--rt-icon-button-size-step: var(--rt-control-height-sm);
|
|
64
75
|
}
|
|
65
76
|
|
|
66
77
|
&--md {
|
|
67
|
-
--rt-icon-button-size: var(--rt-control-height-md);
|
|
78
|
+
--rt-icon-button-size-step: var(--rt-control-height-md);
|
|
68
79
|
}
|
|
69
80
|
|
|
70
81
|
&--lg {
|
|
71
|
-
--rt-icon-button-size: var(--rt-control-height-lg);
|
|
82
|
+
--rt-icon-button-size-step: var(--rt-control-height-lg);
|
|
72
83
|
}
|
|
73
84
|
|
|
74
85
|
&--xl {
|
|
75
|
-
--rt-icon-button-size: var(--rt-control-height-xl);
|
|
86
|
+
--rt-icon-button-size-step: var(--rt-control-height-xl);
|
|
76
87
|
}
|
|
77
88
|
|
|
78
89
|
&--2xl {
|
|
79
|
-
--rt-icon-button-size: var(--rt-control-height-2xl);
|
|
90
|
+
--rt-icon-button-size-step: var(--rt-control-height-2xl);
|
|
80
91
|
}
|
|
81
92
|
|
|
82
93
|
/* Подъём под указателем — ручка для потребителя, как тень покоя; по умолчанию равен
|
|
@@ -85,9 +96,11 @@
|
|
|
85
96
|
box-shadow: var(--rt-icon-button-shadow-hover);
|
|
86
97
|
}
|
|
87
98
|
|
|
99
|
+
/* Заливка под указателем читается под ручкой `--rt-icon-button-bg-hover`; без неё каждый
|
|
100
|
+
вид берёт свою, как прежде. */
|
|
88
101
|
&--ghost {
|
|
89
102
|
&:hover:not(:disabled) {
|
|
90
|
-
background-color: var(--rt-icon-button-color-bg-hover);
|
|
103
|
+
background-color: var(--rt-icon-button-bg-hover, var(--rt-icon-button-color-bg-hover));
|
|
91
104
|
color: var(--rt-icon-button-color-hover);
|
|
92
105
|
}
|
|
93
106
|
|
|
@@ -97,22 +110,22 @@
|
|
|
97
110
|
}
|
|
98
111
|
|
|
99
112
|
&--primary {
|
|
100
|
-
--rt-icon-button-bg: var(--rt-color-action-primary);
|
|
113
|
+
--rt-icon-button-bg-variant: var(--rt-color-action-primary);
|
|
101
114
|
|
|
102
115
|
color: var(--rt-color-action-on-primary);
|
|
103
116
|
|
|
104
117
|
&:hover:not(:disabled) {
|
|
105
|
-
background-color: var(--rt-color-action-primary-hover);
|
|
118
|
+
background-color: var(--rt-icon-button-bg-hover, var(--rt-color-action-primary-hover));
|
|
106
119
|
}
|
|
107
120
|
}
|
|
108
121
|
|
|
109
122
|
&--secondary {
|
|
110
|
-
--rt-icon-button-bg: var(--rt-color-bg-surface-subtle);
|
|
123
|
+
--rt-icon-button-bg-variant: var(--rt-color-bg-surface-subtle);
|
|
111
124
|
|
|
112
125
|
color: var(--rt-color-text-primary);
|
|
113
126
|
|
|
114
127
|
&:hover:not(:disabled) {
|
|
115
|
-
background-color: var(--rt-icon-button-color-bg-hover);
|
|
128
|
+
background-color: var(--rt-icon-button-bg-hover, var(--rt-icon-button-color-bg-hover));
|
|
116
129
|
}
|
|
117
130
|
}
|
|
118
131
|
|
|
@@ -120,7 +133,7 @@
|
|
|
120
133
|
color: var(--rt-color-state-danger);
|
|
121
134
|
|
|
122
135
|
&:hover:not(:disabled) {
|
|
123
|
-
background-color: var(--rt-icon-button-color-bg-hover);
|
|
136
|
+
background-color: var(--rt-icon-button-bg-hover, var(--rt-icon-button-color-bg-hover));
|
|
124
137
|
}
|
|
125
138
|
|
|
126
139
|
&.rt-icon-button--active {
|
|
@@ -132,7 +145,7 @@
|
|
|
132
145
|
color: var(--rt-color-state-success);
|
|
133
146
|
|
|
134
147
|
&:hover:not(:disabled) {
|
|
135
|
-
background-color: var(--rt-icon-button-color-bg-hover);
|
|
148
|
+
background-color: var(--rt-icon-button-bg-hover, var(--rt-icon-button-color-bg-hover));
|
|
136
149
|
}
|
|
137
150
|
|
|
138
151
|
&.rt-icon-button--active {
|
|
@@ -144,7 +157,7 @@
|
|
|
144
157
|
color: var(--rt-color-state-warning);
|
|
145
158
|
|
|
146
159
|
&:hover:not(:disabled) {
|
|
147
|
-
background-color: var(--rt-icon-button-color-bg-hover);
|
|
160
|
+
background-color: var(--rt-icon-button-bg-hover, var(--rt-icon-button-color-bg-hover));
|
|
148
161
|
}
|
|
149
162
|
|
|
150
163
|
&.rt-icon-button--active {
|
|
@@ -157,7 +170,11 @@
|
|
|
157
170
|
встроенным стилем, и правилом его не перебить. Заливка остаётся долей заливки покоя: по умолчанию
|
|
158
171
|
вся, и свой вид прежний. */
|
|
159
172
|
&:disabled {
|
|
160
|
-
background-color: color-mix(
|
|
173
|
+
background-color: color-mix(
|
|
174
|
+
in srgb,
|
|
175
|
+
var(--rt-icon-button-bg, var(--rt-icon-button-bg-variant)) var(--rt-icon-button-disabled-fill),
|
|
176
|
+
transparent
|
|
177
|
+
);
|
|
161
178
|
cursor: not-allowed;
|
|
162
179
|
opacity: var(--rt-icon-button-disabled-opacity);
|
|
163
180
|
|
|
@@ -172,6 +189,15 @@
|
|
|
172
189
|
outline-offset: 2px;
|
|
173
190
|
}
|
|
174
191
|
|
|
192
|
+
/* Своё содержимое вместо значка по имени: встаёт по центру и берёт цвет кнопки. */
|
|
193
|
+
&__content {
|
|
194
|
+
display: inline-flex;
|
|
195
|
+
align-items: center;
|
|
196
|
+
justify-content: center;
|
|
197
|
+
color: inherit;
|
|
198
|
+
line-height: 1;
|
|
199
|
+
}
|
|
200
|
+
|
|
175
201
|
&__spinner {
|
|
176
202
|
--rt-icon-button-spin-duration: 1s;
|
|
177
203
|
|
|
@@ -12,20 +12,23 @@
|
|
|
12
12
|
(imageChanged)="upload($event)" />
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
-
| вход
|
|
16
|
-
|
|
|
17
|
-
| `imageUrl`
|
|
18
|
-
| `fileName`
|
|
19
|
-
| `tooltip`
|
|
20
|
-
| `downloadable`
|
|
21
|
-
| `downloadShape`
|
|
22
|
-
| `
|
|
23
|
-
| `
|
|
24
|
-
| `
|
|
25
|
-
| `
|
|
26
|
-
| `
|
|
27
|
-
| `
|
|
28
|
-
| `
|
|
15
|
+
| вход | тип | умолчание |
|
|
16
|
+
| ------------------ | ------------------------------------------------------- | ---------------------------- |
|
|
17
|
+
| `imageUrl` | `string \| null` | `null` |
|
|
18
|
+
| `fileName` | `string` | `'image'` |
|
|
19
|
+
| `tooltip` | `string` | `''` → `uiImageUploadChange` |
|
|
20
|
+
| `downloadable` | `boolean` | `false` |
|
|
21
|
+
| `downloadShape` | `'circle' \| 'square'` | `'circle'` |
|
|
22
|
+
| `downloadIconSize` | `'xs' \| 'sm' \| 'md' \| 'lg' \| 'xl' \| '2xl' \| null` | `null` → по размеру кнопки |
|
|
23
|
+
| `chooseAppearance` | `'filled' \| 'outlined' \| 'text'` | `'outlined'` |
|
|
24
|
+
| `chooseIcon` | `string \| null` | `'ico-upload'` |
|
|
25
|
+
| `autoApply` | `boolean` | `false` |
|
|
26
|
+
| `loading` | `boolean` | `false` |
|
|
27
|
+
| `disabled` | `boolean` | `false` |
|
|
28
|
+
| `ratio` | `number \| null` | `null` |
|
|
29
|
+
| `round` | `boolean` | `false` |
|
|
30
|
+
| `format` | `'png' \| 'jpeg' \| 'webp' \| null` | `null` |
|
|
31
|
+
| `quality` | `number` | `92` |
|
|
29
32
|
|
|
30
33
|
Выходы: `imageChanged` (`File`), `downloaded`.
|
|
31
34
|
|
|
@@ -48,7 +51,9 @@
|
|
|
48
51
|
Свойства блока: `--rt-image-upload-image-max-height`, `--rt-image-upload-image-radius`,
|
|
49
52
|
`--rt-image-upload-hover-opacity`, `--rt-image-upload-focus-shadow`,
|
|
50
53
|
`--rt-image-upload-download-overhang`, `--rt-image-upload-download-bg`,
|
|
51
|
-
`--rt-image-upload-download-radius
|
|
54
|
+
`--rt-image-upload-download-radius`, `--rt-image-upload-download-size` (размер кнопки скачивания,
|
|
55
|
+
по умолчанию шаг `--rt-control-height-md`), `--rt-image-upload-download-blur` (размытие под ней,
|
|
56
|
+
8px). Они объявлены на самом блоке, поэтому переопределяются
|
|
52
57
|
правилом на `.rt-image-upload`, а не на `:root`. Зона загрузки берёт свойства
|
|
53
58
|
`--rt-empty-state-frame-*`, обрезка — `--rt-image-cropper-*`.
|
|
54
59
|
|
|
@@ -10,6 +10,8 @@
|
|
|
10
10
|
--rt-image-upload-download-overhang: var(--rt-space-sm);
|
|
11
11
|
--rt-image-upload-download-bg: color-mix(in srgb, var(--rt-color-bg-surface) 75%, transparent);
|
|
12
12
|
--rt-image-upload-download-radius: var(--rt-radius-md);
|
|
13
|
+
--rt-image-upload-download-blur: 8px;
|
|
14
|
+
--rt-image-upload-download-size: var(--rt-control-height-md);
|
|
13
15
|
|
|
14
16
|
display: block;
|
|
15
17
|
width: 100%;
|
|
@@ -36,6 +38,9 @@
|
|
|
36
38
|
max-width: 100%;
|
|
37
39
|
box-sizing: border-box;
|
|
38
40
|
padding: var(--rt-image-upload-download-overhang);
|
|
41
|
+
|
|
42
|
+
/* На верх строки: на базовой линии под картинкой оставался зазор под нижние выносные. */
|
|
43
|
+
vertical-align: top;
|
|
39
44
|
}
|
|
40
45
|
|
|
41
46
|
&__download {
|
|
@@ -44,13 +49,20 @@
|
|
|
44
49
|
right: 0;
|
|
45
50
|
border-radius: var(--rt-image-upload-download-radius);
|
|
46
51
|
/* stylelint-disable-next-line property-no-vendor-prefix -- Safari < 18 */
|
|
47
|
-
-webkit-backdrop-filter: blur(
|
|
48
|
-
backdrop-filter: blur(
|
|
52
|
+
-webkit-backdrop-filter: blur(var(--rt-image-upload-download-blur));
|
|
53
|
+
backdrop-filter: blur(var(--rt-image-upload-download-blur));
|
|
49
54
|
background: var(--rt-image-upload-download-bg);
|
|
50
55
|
|
|
51
56
|
&--round {
|
|
52
57
|
--rt-image-upload-download-radius: var(--rt-radius-full);
|
|
53
58
|
}
|
|
59
|
+
|
|
60
|
+
/* Размер отдаётся кнопке её частным шагом, а не публичным `--rt-icon-button-size`: так
|
|
61
|
+
последнее слово остаётся за приложением. Шаг кнопка объявляет на корне своего
|
|
62
|
+
шаблона, а не на хосте, поэтому правило адресует тот же корень. */
|
|
63
|
+
.rt-icon-button {
|
|
64
|
+
--rt-icon-button-size-step: var(--rt-image-upload-download-size);
|
|
65
|
+
}
|
|
54
66
|
}
|
|
55
67
|
|
|
56
68
|
&__image {
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
.rt-icon-button {
|
|
28
|
-
--rt-icon-button-size: var(--rt-pagination-arrow-size);
|
|
28
|
+
--rt-icon-button-size-step: var(--rt-pagination-arrow-size);
|
|
29
29
|
--rt-icon-button-radius: var(--rt-pagination-arrow-radius);
|
|
30
30
|
--rt-icon-button-shadow: var(--rt-pagination-arrow-shadow);
|
|
31
31
|
}
|
|
@@ -46,6 +46,8 @@
|
|
|
46
46
|
- Нажатие на значок уводит тело к самому низу и в содержимое под значком не уходит.
|
|
47
47
|
- Полоса не ловит указатель — нажатия по списку под ней проходят насквозь; значок ловит сам.
|
|
48
48
|
- Перекрасить растушёвку можно свойством `--rt-scroll-area-hint-color` на блоке.
|
|
49
|
+
- Отступы и фоны шапки, тела и подвала — свойства блока `--rt-scroll-area-*-padding` и
|
|
50
|
+
`--rt-scroll-area-*-bg`; фоны по умолчанию прозрачные.
|
|
49
51
|
|
|
50
52
|
## Договорённость
|
|
51
53
|
|
|
@@ -1,8 +1,22 @@
|
|
|
1
1
|
@layer rt-kit.components {
|
|
2
|
+
/* Фон хоста — с нулевой специфичностью. Хост области часто сам элемент чужого блока со своим
|
|
3
|
+
фоном (столбец бокового меню), и правило той же силы перебивало его порядком в файле:
|
|
4
|
+
столбец терял подложку. Под `:where` любое правило по классу сильнее. */
|
|
5
|
+
:where(.rt-scroll-area) {
|
|
6
|
+
background: var(--rt-scroll-area-bg);
|
|
7
|
+
}
|
|
8
|
+
|
|
2
9
|
.rt-scroll-area {
|
|
3
10
|
--rt-scroll-area-hint-height: var(--rt-space-10);
|
|
4
11
|
--rt-scroll-area-hint-color: var(--rt-color-bg-surface);
|
|
5
12
|
--rt-scroll-area-hint-radius: var(--rt-radius-full);
|
|
13
|
+
--rt-scroll-area-header-padding: var(--rt-space-2) var(--rt-space-4);
|
|
14
|
+
--rt-scroll-area-body-padding: var(--rt-space-4);
|
|
15
|
+
--rt-scroll-area-footer-padding: var(--rt-space-4);
|
|
16
|
+
--rt-scroll-area-bg: transparent;
|
|
17
|
+
--rt-scroll-area-header-bg: transparent;
|
|
18
|
+
--rt-scroll-area-body-bg: transparent;
|
|
19
|
+
--rt-scroll-area-footer-bg: transparent;
|
|
6
20
|
|
|
7
21
|
// Полоса растушёвки считает своё место от хоста: тело обрезает всё по своему краю, а
|
|
8
22
|
// полоса обязана дойти до содержимого подвала.
|
|
@@ -15,7 +29,8 @@
|
|
|
15
29
|
|
|
16
30
|
&__header {
|
|
17
31
|
flex: 0 0 auto;
|
|
18
|
-
padding: var(--rt-
|
|
32
|
+
padding: var(--rt-scroll-area-header-padding);
|
|
33
|
+
background: var(--rt-scroll-area-header-bg);
|
|
19
34
|
}
|
|
20
35
|
|
|
21
36
|
&__body {
|
|
@@ -23,13 +38,15 @@
|
|
|
23
38
|
overflow: auto;
|
|
24
39
|
flex: 1 1 auto;
|
|
25
40
|
flex-direction: column;
|
|
26
|
-
padding: var(--rt-
|
|
41
|
+
padding: var(--rt-scroll-area-body-padding);
|
|
42
|
+
background: var(--rt-scroll-area-body-bg);
|
|
27
43
|
min-block-size: 0;
|
|
28
44
|
}
|
|
29
45
|
|
|
30
46
|
&__footer {
|
|
31
47
|
flex: 0 0 auto;
|
|
32
|
-
padding: var(--rt-
|
|
48
|
+
padding: var(--rt-scroll-area-footer-padding);
|
|
49
|
+
background: var(--rt-scroll-area-footer-bg);
|
|
33
50
|
}
|
|
34
51
|
|
|
35
52
|
// Полоса стоит поверх стыка тела и подвала и не ловит указатель: под ней живой список,
|
|
@@ -82,6 +82,10 @@
|
|
|
82
82
|
border-color: transparent;
|
|
83
83
|
background-color: transparent;
|
|
84
84
|
|
|
85
|
+
/* Высота строки поля рассчитана на подпись поля, а здесь разметка потребителя: с ней
|
|
86
|
+
кнопка вырастала бы на пару точек и сдвигала панель. Строка остаётся прежней. */
|
|
87
|
+
line-height: var(--rt-leading-none);
|
|
88
|
+
|
|
85
89
|
&:focus {
|
|
86
90
|
border-color: transparent;
|
|
87
91
|
box-shadow: none;
|
|
@@ -17,10 +17,15 @@
|
|
|
17
17
|
|
|
18
18
|
**Режим и ширину подменю хранит сервис, а не меню.** `provideRtSideMenuSettings()` включает
|
|
19
19
|
хранение под номером меню; без провайдера меню ничего не помнит, и режим с шириной приходят
|
|
20
|
-
входами. Вход важнее сохранённого.
|
|
20
|
+
входами. Вход важнее сохранённого. `pinShown="false"` убирает кнопку закрепления, и сохранённое
|
|
21
|
+
закрепление тогда не читается: иначе человек не открепил бы меню.
|
|
22
|
+
|
|
23
|
+
**Подсказки строк подменю гасит `subMenuTooltipsShown="false"`.** Имена кнопок для чтения экрана
|
|
24
|
+
остаются.
|
|
21
25
|
|
|
22
26
|
**Значок вне набора — шаблон `rtSideMenuIcon`.** Имя Material первого кита меню переводит парой
|
|
23
|
-
из перечня кита, как `rt-menu`. Имя без пары берёт свой шаблон меню, один на все
|
|
27
|
+
из перечня кита, как `rt-menu`. Имя без пары берёт свой шаблон меню, один на все пункты и кнопки строк;
|
|
28
|
+
контекст — строка (`$implicit`), имя (`icon`) и место (`slot`: `'icon'` или `'iconButton'`). Без
|
|
24
29
|
шаблона на его месте пусто, а в режиме разработки консоль называет такое имя.
|
|
25
30
|
|
|
26
31
|
**Раздел и запрос меню держит само.** Их не задать входом: раздел открывает нажатие или наведение
|
|
@@ -4,17 +4,24 @@
|
|
|
4
4
|
<rt-spinner color="primary" [diameter]="32" />
|
|
5
5
|
```
|
|
6
6
|
|
|
7
|
-
| вход
|
|
8
|
-
|
|
|
9
|
-
| `diameter`
|
|
10
|
-
| `color`
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
| вход | тип | умолчание |
|
|
8
|
+
| ------------ | ---------------------------------------- | ----------- |
|
|
9
|
+
| `diameter` | `number \| string` (px) | `32` |
|
|
10
|
+
| `color` | `'primary' \| 'neutral' \| 'on-primary'` | `'primary'` |
|
|
11
|
+
| `appearance` | `'border' \| 'arc'` | `'border'` |
|
|
12
|
+
| `overlay` | `boolean` | `false` |
|
|
13
|
+
| `backdrop` | `boolean` — только вместе с `overlay` | `false` |
|
|
14
|
+
| `plate` | `boolean` | `false` |
|
|
15
|
+
|
|
16
|
+
Выходов нет. Без `overlay`, `plate` и `arc` собственной разметки нет — кольцо рисуется на host-е,
|
|
17
|
+
и так спиннер стоит в компонентах кита. Любой из этих входов включает внутреннюю разметку.
|
|
13
18
|
|
|
14
19
|
## Главное, что нужно знать
|
|
15
20
|
|
|
16
|
-
**Спиннер не решает, показывать ли себя.**
|
|
17
|
-
и
|
|
21
|
+
**Спиннер не решает, показывать ли себя.** Условной отрисовки внутри нет — это дело вмещающего.
|
|
22
|
+
Подложку и накрытие блока он рисует по просьбе: `overlay` занимает позиционированного родителя,
|
|
23
|
+
`backdrop` приглушает его содержимое. Слой оверлея — `sticky`, переназначается свойством
|
|
24
|
+
`--rt-spinner-overlay-z`. Таблица рисует свой sticky-overlay и кладёт спиннер внутрь, кнопка
|
|
18
25
|
подменяет им иконку.
|
|
19
26
|
|
|
20
27
|
Диаметр едет свойством оформления `--rt-spinner-diameter`, а не классом, — поэтому размер
|
|
@@ -7,15 +7,28 @@
|
|
|
7
7
|
--rt-spinner-rotation-duration: 1s;
|
|
8
8
|
--rt-spinner-rotation-duration-reduced: 4s;
|
|
9
9
|
--rt-spinner-radius: var(--rt-radius-full);
|
|
10
|
+
--rt-spinner-overlay-z: var(--rt-z-sticky);
|
|
11
|
+
--rt-spinner-plate-size: calc(var(--rt-spinner-diameter) + 2 * var(--rt-space-2));
|
|
12
|
+
--rt-spinner-plate-bg: var(--rt-color-bg-surface);
|
|
13
|
+
--rt-spinner-plate-shadow: var(--rt-shadow-md);
|
|
14
|
+
--rt-spinner-plate-radius: var(--rt-radius-full);
|
|
15
|
+
--rt-spinner-backdrop-bg: color-mix(in srgb, var(--rt-color-bg-subtle) 85%, transparent);
|
|
16
|
+
--rt-spinner-arc-duration: 1.4s;
|
|
17
|
+
--rt-spinner-arc-duration-reduced: 5.6s;
|
|
10
18
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
+
/* Кольцо: border с одной цветной стороной и вращение. Его рисует host без новых режимов,
|
|
20
|
+
а в них — элемент `__ring` внутри, теми же правилами. */
|
|
21
|
+
&,
|
|
22
|
+
&__ring {
|
|
23
|
+
display: inline-block;
|
|
24
|
+
width: var(--rt-spinner-diameter);
|
|
25
|
+
height: var(--rt-spinner-diameter);
|
|
26
|
+
box-sizing: border-box;
|
|
27
|
+
border: var(--rt-spinner-border-width) solid var(--rt-spinner-track-color);
|
|
28
|
+
border-radius: var(--rt-spinner-radius);
|
|
29
|
+
border-right-color: var(--rt-spinner-progress-color);
|
|
30
|
+
animation: rt-spinner-rotate var(--rt-spinner-rotation-duration) linear infinite;
|
|
31
|
+
}
|
|
19
32
|
|
|
20
33
|
&--primary {
|
|
21
34
|
--rt-spinner-progress-color: var(--rt-color-action-primary);
|
|
@@ -29,6 +42,61 @@
|
|
|
29
42
|
--rt-spinner-track-color: var(--rt-overlay-white-25);
|
|
30
43
|
--rt-spinner-progress-color: var(--rt-color-action-on-primary);
|
|
31
44
|
}
|
|
45
|
+
|
|
46
|
+
/* В новых режимах host — коробка, а кольцо внутри: border и вращение с host-а снимаются. */
|
|
47
|
+
&--framed {
|
|
48
|
+
display: inline-flex;
|
|
49
|
+
width: auto;
|
|
50
|
+
height: auto;
|
|
51
|
+
align-items: center;
|
|
52
|
+
justify-content: center;
|
|
53
|
+
border: 0;
|
|
54
|
+
border-radius: 0;
|
|
55
|
+
animation: none;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/* Слой — ступень sticky: выше закреплённых частей самого блока, ниже всего, что открывается
|
|
59
|
+
поверх страницы; приложение переназначает слой свойством `--rt-spinner-overlay-z`. Родитель
|
|
60
|
+
должен быть позиционирован — его спиннер не трогает. */
|
|
61
|
+
&--overlay {
|
|
62
|
+
position: absolute;
|
|
63
|
+
z-index: var(--rt-spinner-overlay-z);
|
|
64
|
+
display: flex;
|
|
65
|
+
inset: 0;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
&--backdrop {
|
|
69
|
+
background: var(--rt-spinner-backdrop-bg);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
&__plate {
|
|
73
|
+
display: inline-flex;
|
|
74
|
+
width: var(--rt-spinner-plate-size);
|
|
75
|
+
height: var(--rt-spinner-plate-size);
|
|
76
|
+
align-items: center;
|
|
77
|
+
justify-content: center;
|
|
78
|
+
border-radius: var(--rt-spinner-plate-radius);
|
|
79
|
+
background: var(--rt-spinner-plate-bg);
|
|
80
|
+
box-shadow: var(--rt-spinner-plate-shadow);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/* Дуга как у Material: контейнер вращается, а длина дуги растёт и сокращается. Дорожки нет. */
|
|
84
|
+
&__arc {
|
|
85
|
+
display: block;
|
|
86
|
+
width: var(--rt-spinner-diameter);
|
|
87
|
+
height: var(--rt-spinner-diameter);
|
|
88
|
+
animation: rt-spinner-rotate var(--rt-spinner-arc-duration) linear infinite;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
&__arc-circle {
|
|
92
|
+
animation: rt-spinner-arc-dash var(--rt-spinner-arc-duration) ease-in-out infinite;
|
|
93
|
+
fill: none;
|
|
94
|
+
stroke: var(--rt-spinner-progress-color);
|
|
95
|
+
stroke-dasharray: 89 200;
|
|
96
|
+
stroke-dashoffset: -35;
|
|
97
|
+
stroke-linecap: round;
|
|
98
|
+
stroke-width: 4;
|
|
99
|
+
}
|
|
32
100
|
}
|
|
33
101
|
|
|
34
102
|
@keyframes rt-spinner-rotate {
|
|
@@ -37,9 +105,40 @@
|
|
|
37
105
|
}
|
|
38
106
|
}
|
|
39
107
|
|
|
108
|
+
/* Цикл Material — точка, длинная дуга, дуга уходит в точку — начат с длинной дуги. Движение то
|
|
109
|
+
же, а кадр с остановленным движением показывает дугу, а не точку. В середине дуга уже точка, и
|
|
110
|
+
переход к началу её длины глазу не виден. */
|
|
111
|
+
@keyframes rt-spinner-arc-dash {
|
|
112
|
+
0% {
|
|
113
|
+
stroke-dasharray: 89 200;
|
|
114
|
+
stroke-dashoffset: -35;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
50% {
|
|
118
|
+
stroke-dasharray: 89 200;
|
|
119
|
+
stroke-dashoffset: -124;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
50.01% {
|
|
123
|
+
stroke-dasharray: 1 200;
|
|
124
|
+
stroke-dashoffset: 0;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
100% {
|
|
128
|
+
stroke-dasharray: 89 200;
|
|
129
|
+
stroke-dashoffset: -35;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
40
133
|
@media (prefers-reduced-motion: reduce) {
|
|
41
|
-
.rt-spinner
|
|
134
|
+
.rt-spinner,
|
|
135
|
+
.rt-spinner__ring {
|
|
42
136
|
animation-duration: var(--rt-spinner-rotation-duration-reduced);
|
|
43
137
|
}
|
|
138
|
+
|
|
139
|
+
.rt-spinner__arc,
|
|
140
|
+
.rt-spinner__arc-circle {
|
|
141
|
+
animation-duration: var(--rt-spinner-arc-duration-reduced);
|
|
142
|
+
}
|
|
44
143
|
}
|
|
45
144
|
}
|