@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
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Signal, TemplateRef, InputSignal, OutputEmitterRef, WritableSignal, OnDestroy, OnInit, DestroyRef } from '@angular/core';
|
|
3
|
+
import { AbstractControl } from '@angular/forms';
|
|
4
|
+
import { Router, ActivatedRoute, Params, CanDeactivateFn } from '@angular/router';
|
|
5
|
+
import { Observable } from 'rxjs';
|
|
6
|
+
import { IRtAsideUnsavedGuard } from '@rt-tools/ui-kit-v2/aside';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Multi-slot container с CSS-grid layout. Slot consumers wrap content в
|
|
10
|
+
* `*rtContainerXxx` structural directives, контейнер подхватывает шаблоны через
|
|
11
|
+
* `contentChild(..., { read: TemplateRef })` + рендерит через `*ngTemplateOutlet`.
|
|
12
|
+
*
|
|
13
|
+
* Slots: `header`, `leftSidenav`, `toolbarLeft/Center/Right`, `content` — живут в
|
|
14
|
+
* CSS-grid. `rightSidenav` рендерится через CDK Overlay поверх grid'а (slide-in
|
|
15
|
+
* side-sheet), а не как grid-cell — overlay переиспользует глобальные
|
|
16
|
+
* `rt-aside-overlay` / `rt-aside-backdrop` классы из rt-aside, чтобы анимация и
|
|
17
|
+
* backdrop вели себя идентично программно открываемым asides.
|
|
18
|
+
*
|
|
19
|
+
* Driver-directives (`[rtContainerLeftSidenavPanel/RightSidenavPanel]`) общаются с
|
|
20
|
+
* контейнером через `RtContainerStateService` (для левой docked) и через
|
|
21
|
+
* `openRight()/closeRight()` + lifecycle outputs (для правой overlay).
|
|
22
|
+
*/
|
|
23
|
+
declare class RtContainerComponent {
|
|
24
|
+
#private;
|
|
25
|
+
protected readonly headerTpl: Signal<TemplateRef<unknown> | undefined>;
|
|
26
|
+
protected readonly leftSidenavTpl: Signal<TemplateRef<unknown> | undefined>;
|
|
27
|
+
protected readonly rightSidenavTpl: Signal<TemplateRef<unknown> | undefined>;
|
|
28
|
+
protected readonly toolbarLeftTpl: Signal<TemplateRef<unknown> | undefined>;
|
|
29
|
+
protected readonly toolbarCenterTpl: Signal<TemplateRef<unknown> | undefined>;
|
|
30
|
+
protected readonly toolbarRightTpl: Signal<TemplateRef<unknown> | undefined>;
|
|
31
|
+
protected readonly contentTpl: Signal<TemplateRef<unknown> | undefined>;
|
|
32
|
+
/**
|
|
33
|
+
* Поведение левого sidenav на мобилке (<=768px): `keep` — остаётся боковой
|
|
34
|
+
* колонкой (по умолчанию, десктоп-стиль); `bottom` — сворачивается в нижний
|
|
35
|
+
* ряд grid'а (таб-бар), контент занимает всю ширину и скроллится над ним.
|
|
36
|
+
*/
|
|
37
|
+
readonly mobileLeftNav: InputSignal<'keep' | 'bottom'>;
|
|
38
|
+
/**
|
|
39
|
+
* Высота контейнера: `auto` — растёт под контент, скроллится документ (по
|
|
40
|
+
* умолчанию; на этом держится sticky-хедер); `viewport` — контейнер жёстко
|
|
41
|
+
* равен вьюпорту, страница не скроллится вовсе, а скроллятся зоны внутри —
|
|
42
|
+
* каждая сама по себе (app-shell раскладка, напр. чаты бот-панели).
|
|
43
|
+
*/
|
|
44
|
+
readonly height: InputSignal<'auto' | 'viewport'>;
|
|
45
|
+
readonly backdropClick: OutputEmitterRef<void>;
|
|
46
|
+
readonly rightOpened: OutputEmitterRef<void>;
|
|
47
|
+
readonly rightClosed: OutputEmitterRef<void>;
|
|
48
|
+
readonly rightOpen: WritableSignal<boolean>;
|
|
49
|
+
/**
|
|
50
|
+
* `true` когда CDK Overlay для правой sidenav создан и attache'нут (см.
|
|
51
|
+
* effect в constructor'е). Дёргать panel.open() из консьюмера можно только
|
|
52
|
+
* когда это true — иначе openRight() видит null overlayRef и early-return'ит,
|
|
53
|
+
* --entering modifier остаётся, панель остаётся за экраном. Re-exposed на
|
|
54
|
+
* driver через `panel.ready` для удобства route-driven dialog'ов.
|
|
55
|
+
*/
|
|
56
|
+
readonly rightOverlayReady: Signal<boolean>;
|
|
57
|
+
constructor();
|
|
58
|
+
openRight(): void;
|
|
59
|
+
closeRight(): void;
|
|
60
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerComponent, never>;
|
|
61
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<RtContainerComponent, "rt-container", never, { "mobileLeftNav": { "alias": "mobileLeftNav"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, { "backdropClick": "backdropClick"; "rightOpened": "rightOpened"; "rightClosed": "rightClosed"; }, ["headerTpl", "leftSidenavTpl", "rightSidenavTpl", "toolbarLeftTpl", "toolbarCenterTpl", "toolbarRightTpl", "contentTpl"], never, true, never>;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Маркеры слотов оболочки — своим файлом, а не рядом с панельными директивами.
|
|
66
|
+
*
|
|
67
|
+
* Панельные директивы берут сам компонент оболочки значением, а компонент объявляет маркеры в
|
|
68
|
+
* своих импортах: вместе это круг «оболочка → директивы → оболочка». Маркеры пусты и не знают
|
|
69
|
+
* об оболочке ничего, поэтому расходятся с ней без потерь.
|
|
70
|
+
*/
|
|
71
|
+
/**
|
|
72
|
+
* Маркер-директива для содержимого хедера `rt-container`.
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```html
|
|
76
|
+
* <rt-container>
|
|
77
|
+
* <ng-container *rtContainerHeader>
|
|
78
|
+
* <rt-header />
|
|
79
|
+
* </ng-container>
|
|
80
|
+
* </rt-container>
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
declare class RtContainerHeaderDirective {
|
|
84
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerHeaderDirective, never>;
|
|
85
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerHeaderDirective, "[rtContainerHeader]", never, {}, {}, never, never, true, never>;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Маркер-директива для контента левой sidenav в `rt-container`.
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```html
|
|
92
|
+
* <rt-container>
|
|
93
|
+
* <ng-container *rtContainerLeftSidenav>
|
|
94
|
+
* <router-outlet name="lo" />
|
|
95
|
+
* </ng-container>
|
|
96
|
+
* </rt-container>
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
declare class RtContainerLeftSidenavDirective {
|
|
100
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerLeftSidenavDirective, never>;
|
|
101
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerLeftSidenavDirective, "[rtContainerLeftSidenav]", never, {}, {}, never, never, true, never>;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Маркер-директива для контента правой sidenav в `rt-container`.
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```html
|
|
108
|
+
* <rt-container>
|
|
109
|
+
* <ng-container *rtContainerRightSidenav>
|
|
110
|
+
* <router-outlet name="ro" />
|
|
111
|
+
* </ng-container>
|
|
112
|
+
* </rt-container>
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
declare class RtContainerRightSidenavDirective {
|
|
116
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerRightSidenavDirective, never>;
|
|
117
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerRightSidenavDirective, "[rtContainerRightSidenav]", never, {}, {}, never, never, true, never>;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Маркер-директива для контента в левой секции toolbar.
|
|
121
|
+
*
|
|
122
|
+
* @example
|
|
123
|
+
* ```html
|
|
124
|
+
* <rt-container>
|
|
125
|
+
* <ng-container *rtContainerToolbarLeft>
|
|
126
|
+
* <router-outlet name="lb" />
|
|
127
|
+
* </ng-container>
|
|
128
|
+
* </rt-container>
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
131
|
+
declare class RtContainerToolbarLeftDirective {
|
|
132
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerToolbarLeftDirective, never>;
|
|
133
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerToolbarLeftDirective, "[rtContainerToolbarLeft]", never, {}, {}, never, never, true, never>;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Маркер-директива для контента в центральной секции toolbar.
|
|
137
|
+
*
|
|
138
|
+
* @example
|
|
139
|
+
* ```html
|
|
140
|
+
* <rt-container>
|
|
141
|
+
* <ng-container *rtContainerToolbarCenter>
|
|
142
|
+
* <router-outlet name="cb" />
|
|
143
|
+
* </ng-container>
|
|
144
|
+
* </rt-container>
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
declare class RtContainerToolbarCenterDirective {
|
|
148
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerToolbarCenterDirective, never>;
|
|
149
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerToolbarCenterDirective, "[rtContainerToolbarCenter]", never, {}, {}, never, never, true, never>;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Маркер-директива для контента в правой секции toolbar.
|
|
153
|
+
*
|
|
154
|
+
* @example
|
|
155
|
+
* ```html
|
|
156
|
+
* <rt-container>
|
|
157
|
+
* <ng-container *rtContainerToolbarRight>
|
|
158
|
+
* <router-outlet name="rb" />
|
|
159
|
+
* </ng-container>
|
|
160
|
+
* </rt-container>
|
|
161
|
+
* ```
|
|
162
|
+
*/
|
|
163
|
+
declare class RtContainerToolbarRightDirective {
|
|
164
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerToolbarRightDirective, never>;
|
|
165
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerToolbarRightDirective, "[rtContainerToolbarRight]", never, {}, {}, never, never, true, never>;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Маркер-директива для основного контента `rt-container`.
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```html
|
|
172
|
+
* <rt-container>
|
|
173
|
+
* <ng-container *rtContainerContent>
|
|
174
|
+
* <router-outlet />
|
|
175
|
+
* </ng-container>
|
|
176
|
+
* </rt-container>
|
|
177
|
+
* ```
|
|
178
|
+
*/
|
|
179
|
+
declare class RtContainerContentDirective {
|
|
180
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerContentDirective, never>;
|
|
181
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerContentDirective, "[rtContainerContent]", never, {}, {}, never, never, true, never>;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Driver-директива для управления левой sidenav через шаблонную ссылку.
|
|
186
|
+
*
|
|
187
|
+
* Пишет в component-scoped `RtContainerStateService.leftSidenavOpen` signal —
|
|
188
|
+
* шаблон контейнера читает этот signal и применяет docked grid-cell состояние.
|
|
189
|
+
*
|
|
190
|
+
* @example
|
|
191
|
+
* ```html
|
|
192
|
+
* <ng-container rtContainerLeftSidenavPanel #left="containerLeftPanel">
|
|
193
|
+
* <button (click)="left.toggle(true)">Open</button>
|
|
194
|
+
* </ng-container>
|
|
195
|
+
* ```
|
|
196
|
+
*/
|
|
197
|
+
declare class RtContainerLeftSidenavPanelDirective {
|
|
198
|
+
#private;
|
|
199
|
+
open(): void;
|
|
200
|
+
close(): void;
|
|
201
|
+
toggle(isOpen: boolean): void;
|
|
202
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerLeftSidenavPanelDirective, never>;
|
|
203
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerLeftSidenavPanelDirective, "[rtContainerLeftSidenavPanel]", ["containerLeftPanel"], {}, {}, never, never, true, never>;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Driver-директива правой sidenav: route-component вызывает `open()`/`close()`,
|
|
207
|
+
* rt-container выполняет slide-in/slide-out через CSS transform. После завершения
|
|
208
|
+
* анимации driver эмитит `(opened)` / `(closed)`; backdrop click и ESC контейнера
|
|
209
|
+
* эмитятся через `(cancelled)` — консьюмер сам решает что делать (обычно `close()`).
|
|
210
|
+
*
|
|
211
|
+
* Sub'ы через `takeUntilDestroyed` снимаются при разрушении route-component'а.
|
|
212
|
+
* При уничтожении с открытой панелью гарантирует cleanup overlay'я (см. `ngOnDestroy`),
|
|
213
|
+
* иначе при hard-navigate без `panel.close()` overlay останется висеть.
|
|
214
|
+
*
|
|
215
|
+
* @example
|
|
216
|
+
* ```html
|
|
217
|
+
* <ng-container
|
|
218
|
+
* rtContainerRightSidenavPanel
|
|
219
|
+
* #right="rtContainerRightPanel"
|
|
220
|
+
* (cancelled)="onClose()"
|
|
221
|
+
* (closed)="onClosed()">
|
|
222
|
+
* </ng-container>
|
|
223
|
+
* ```
|
|
224
|
+
*/
|
|
225
|
+
declare class RtContainerRightSidenavPanelDirective implements OnDestroy {
|
|
226
|
+
#private;
|
|
227
|
+
readonly opened: OutputEmitterRef<void>;
|
|
228
|
+
readonly closed: OutputEmitterRef<void>;
|
|
229
|
+
readonly cancelled: OutputEmitterRef<void>;
|
|
230
|
+
/**
|
|
231
|
+
* Re-export rt-container.rightOverlayReady — `true` когда CDK Overlay создан
|
|
232
|
+
* и attache'нут. Консьюмер должен ждать этого signal'а в effect'е, перед
|
|
233
|
+
* тем как вызывать `panel.open()` (иначе race: rt-container.effect ещё не
|
|
234
|
+
* создал overlay → openRight() рано вернётся → --entering остаётся).
|
|
235
|
+
*/
|
|
236
|
+
readonly ready: Signal<boolean>;
|
|
237
|
+
constructor();
|
|
238
|
+
ngOnDestroy(): void;
|
|
239
|
+
open(): void;
|
|
240
|
+
close(): void;
|
|
241
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerRightSidenavPanelDirective, never>;
|
|
242
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerRightSidenavPanelDirective, "[rtContainerRightSidenavPanel]", ["rtContainerRightPanel"], {}, { "opened": "opened"; "closed": "closed"; "cancelled": "cancelled"; }, never, never, true, never>;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Driver-директива для основного content-региона `rt-container`.
|
|
246
|
+
*
|
|
247
|
+
* Объявляет 3 outputs (`scrolled/scrolledUp/scrolledDown`) — публичную поверхность
|
|
248
|
+
* для будущих consumer'ов. Real-time wiring (scroll listeners → emit) отложено
|
|
249
|
+
* до первого реального потребителя.
|
|
250
|
+
*
|
|
251
|
+
* @example
|
|
252
|
+
* ```html
|
|
253
|
+
* <ng-container
|
|
254
|
+
* rtContainerContentPanel
|
|
255
|
+
* (scrolled)="onScroll()"
|
|
256
|
+
* >
|
|
257
|
+
* <router-outlet />
|
|
258
|
+
* </ng-container>
|
|
259
|
+
* ```
|
|
260
|
+
*/
|
|
261
|
+
declare class RtContainerContentPanelDirective {
|
|
262
|
+
readonly scrolled: OutputEmitterRef<void>;
|
|
263
|
+
readonly scrolledUp: OutputEmitterRef<void>;
|
|
264
|
+
readonly scrolledDown: OutputEmitterRef<void>;
|
|
265
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerContentPanelDirective, never>;
|
|
266
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtContainerContentPanelDirective, "[rtContainerContentPanel]", never, {}, { "scrolled": "scrolled"; "scrolledUp": "scrolledUp"; "scrolledDown": "scrolledDown"; }, never, never, true, never>;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
/**
|
|
270
|
+
* Приватный signal-store для `rt-container`.
|
|
271
|
+
*
|
|
272
|
+
* Хранит open-state левой docked sidenav. Driver-директива
|
|
273
|
+
* `[rtContainerLeftSidenavPanel]` пишет в `leftSidenavOpen`, шаблон
|
|
274
|
+
* `RtContainerComponent` читает через signal-tracking.
|
|
275
|
+
*
|
|
276
|
+
* Provided component-level через `providers: [RtContainerStateService]` на
|
|
277
|
+
* `RtContainerComponent` — per-instance state, без singleton'а. Pure signal IO
|
|
278
|
+
* с автоматической reactivity.
|
|
279
|
+
*
|
|
280
|
+
* Правая sidenav (overlay) НЕ хранится здесь: её open-state живёт прямо в
|
|
281
|
+
* `RtContainerComponent.rightOpen` сигнале и управляется через `openRight()` /
|
|
282
|
+
* `closeRight()` методы + lifecycle outputs.
|
|
283
|
+
*/
|
|
284
|
+
declare class RtContainerStateService {
|
|
285
|
+
readonly leftSidenavOpen: WritableSignal<boolean>;
|
|
286
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtContainerStateService, never>;
|
|
287
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
/**
|
|
291
|
+
* Открытие ждёт `panel.ready()`, а не `ngAfterViewInit`: на F5 rt-container
|
|
292
|
+
* создаёт overlay асинхронно, иначе `open()` гонится с ещё не готовым overlay.
|
|
293
|
+
*
|
|
294
|
+
* `@Directive()` без селектора — чтобы query/`inject`/lifecycle наследовались на
|
|
295
|
+
* конкретный `@Component` (как `RtFormControlBase`).
|
|
296
|
+
*
|
|
297
|
+
* Закрытие всегда идёт через `onClose()`, куда сходятся все четыре пути: две
|
|
298
|
+
* кнопки панели и — через `onCancel()` — нажатие мимо панели и Esc, которые ловит
|
|
299
|
+
* `rt-container`. Панель, поставившая гард через `guardUnsavedChanges()`, на
|
|
300
|
+
* тронутой форме получает вопрос о правках; панель без гарда закрывается сразу.
|
|
301
|
+
*/
|
|
302
|
+
declare abstract class RtRouteAsideComponent<T> implements OnInit {
|
|
303
|
+
#private;
|
|
304
|
+
protected readonly router: Router;
|
|
305
|
+
protected readonly route: ActivatedRoute;
|
|
306
|
+
protected readonly destroyRef: DestroyRef;
|
|
307
|
+
protected readonly panel: Signal<RtContainerRightSidenavPanelDirective | undefined>;
|
|
308
|
+
protected readonly entity: Signal<T | null>;
|
|
309
|
+
/** id из route-параметра как есть (uuid/строка); числовые id консьюмер парсит сам. */
|
|
310
|
+
protected readonly entityId: Signal<string | null>;
|
|
311
|
+
protected readonly isCreateMode: Signal<boolean>;
|
|
312
|
+
protected readonly submitting: Signal<boolean>;
|
|
313
|
+
/**
|
|
314
|
+
* Скелетоны биндятся на это, а не на пустоту `entity()`: та залипает после
|
|
315
|
+
* первой загрузки и не ловит рефетч.
|
|
316
|
+
*/
|
|
317
|
+
protected readonly resolving: Signal<boolean>;
|
|
318
|
+
protected readonly busy: Signal<boolean>;
|
|
319
|
+
/**
|
|
320
|
+
* Форма не тронута. Панель, которая не поставила гард закрытия, считается
|
|
321
|
+
* нетронутой всегда — и закрывается без вопроса, как раньше.
|
|
322
|
+
*/
|
|
323
|
+
protected readonly pristine: Signal<boolean>;
|
|
324
|
+
protected readonly submitError: WritableSignal<string | null>;
|
|
325
|
+
/**
|
|
326
|
+
* Удача мутации — тем же способом, что и отказ. Человек, работающий в панели,
|
|
327
|
+
* смотрит в панель, а не на экран за её краем: тост об успехе всплывает там,
|
|
328
|
+
* куда он в эту минуту не смотрит. Оба сигнала гасятся в начале каждой
|
|
329
|
+
* попытки и гасят друг друга — это ответы на один вопрос, и двух сразу не
|
|
330
|
+
* бывает.
|
|
331
|
+
*/
|
|
332
|
+
protected readonly submitSuccess: WritableSignal<string | null>;
|
|
333
|
+
protected readonly idParamName: string;
|
|
334
|
+
/** id-only режим: нужен только id (например, смена пароля по userId), сущность не грузится. */
|
|
335
|
+
protected readonly idOnly: boolean;
|
|
336
|
+
constructor();
|
|
337
|
+
ngOnInit(): void;
|
|
338
|
+
/**
|
|
339
|
+
* Панель уходит с экрана не сама: её место в аутлете занимает другая — лента
|
|
340
|
+
* событий из шапки или соседняя запись. Тронутая форма спрашивает о правках
|
|
341
|
+
* так же, как при закрытии; окно кнопок этот путь не ловит, потому что панель
|
|
342
|
+
* закрывает роутер.
|
|
343
|
+
*
|
|
344
|
+
* Гард ставится на ro-маршрут панели (`rtAsideUnsavedGuard`).
|
|
345
|
+
*/
|
|
346
|
+
canDeactivate(): Observable<boolean>;
|
|
347
|
+
protected setEntity(entity: T | null): void;
|
|
348
|
+
/** Признак нетронутой формы — тот же, что гейтит кнопку записи. */
|
|
349
|
+
protected pristineSignal(control: AbstractControl | Signal<AbstractControl | undefined>): Signal<boolean>;
|
|
350
|
+
/**
|
|
351
|
+
* Ставит гард закрытия: пока форма тронута, любой из четырёх путей закрытия
|
|
352
|
+
* спрашивает, что сделать с правками, и исход «закрыть с сохранением» зовёт
|
|
353
|
+
* `save`. Признак нетронутости даёт `pristineSignal(control)` — тот же, что
|
|
354
|
+
* гейтит кнопку записи.
|
|
355
|
+
*/
|
|
356
|
+
protected guardUnsavedChanges(guard: IRtAsideUnsavedGuard): void;
|
|
357
|
+
/**
|
|
358
|
+
* Адрес связанной записи для атрибута `href`. Ссылка остаётся настоящей
|
|
359
|
+
* ссылкой: её открывают в новой вкладке и копируют, а обычное нажатие панель
|
|
360
|
+
* перехватывает и уводит сама.
|
|
361
|
+
*/
|
|
362
|
+
protected relatedUrl(commands: readonly unknown[]): string;
|
|
363
|
+
/**
|
|
364
|
+
* Уход на связанную запись. Он уводит с адреса панели так же, как её
|
|
365
|
+
* закрытие, поэтому идёт тем же путём: тронутая форма спрашивает, что
|
|
366
|
+
* сделать с правками, и на исходе «закрыть с сохранением» запись открывается
|
|
367
|
+
* после удачной записи.
|
|
368
|
+
*/
|
|
369
|
+
protected openRelated(commands: readonly unknown[], queryParams?: Params | null): void;
|
|
370
|
+
protected onResolved(): void;
|
|
371
|
+
protected closeOutlets(): Record<string, Array<string> | null>;
|
|
372
|
+
/**
|
|
373
|
+
* `successText` — готовый текст тоста об успехе. Он принадлежит конкретной
|
|
374
|
+
* мутации, а не панели: у снятия промокода и опроса подписки свой текст
|
|
375
|
+
* успеха, и один на панель показал бы не тот.
|
|
376
|
+
*
|
|
377
|
+
* Именно текст, а не ключ словаря: ключ принадлежал бы словарю приложения, а
|
|
378
|
+
* кит чужих словарей не знает — переводит приложение и передаёт готовое.
|
|
379
|
+
*
|
|
380
|
+
* `errorText` принимается и функцией: причина отказа известна только после
|
|
381
|
+
* него — стор кладёт её в свой сигнал, а панель без стора выводит из ответа
|
|
382
|
+
* сервера, — и готовой строкой на момент запуска мутации её не передать.
|
|
383
|
+
*
|
|
384
|
+
* `successMessage` — текст удачи, который панель показывает внутри себя,
|
|
385
|
+
* рядом с формой. Довод отделён от `successText` намеренно: переезд текста
|
|
386
|
+
* из тоста в панель сломал бы всякого потребителя, который тост и хотел, а
|
|
387
|
+
* сказать «мне нужен тост» ему после этого было бы нечем. Назван он по месту
|
|
388
|
+
* показа, а не по исходу: два довода с разницей в одном слоге читались бы
|
|
389
|
+
* как опечатка.
|
|
390
|
+
*/
|
|
391
|
+
protected runMutation(op$: Observable<unknown>, opts?: {
|
|
392
|
+
onSuccess?: () => void;
|
|
393
|
+
successText?: string;
|
|
394
|
+
successMessage?: string;
|
|
395
|
+
errorText?: string | ((error: unknown) => string);
|
|
396
|
+
closeOnSuccess?: boolean;
|
|
397
|
+
refreshOnSuccess?: boolean;
|
|
398
|
+
}): void;
|
|
399
|
+
/**
|
|
400
|
+
* Единственная точка закрытия панели. Через неё идут все четыре пути: кнопка
|
|
401
|
+
* в шапке, кнопка в футере и — через `onCancel()` — нажатие мимо панели и
|
|
402
|
+
* клавиша Esc, которые ловит `rt-container` и отдаёт панели одним выходом
|
|
403
|
+
* `cancelled`.
|
|
404
|
+
*/
|
|
405
|
+
protected onClose(): void;
|
|
406
|
+
protected onCancel(): void;
|
|
407
|
+
protected onClosed(): void;
|
|
408
|
+
protected abstract resolve(id: string): Observable<T | null>;
|
|
409
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RtRouteAsideComponent<any>, never>;
|
|
410
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RtRouteAsideComponent<any>, never, never, {}, {}, never, never, true, never>;
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
/**
|
|
414
|
+
* Панель, которая умеет ответить на вопрос «можно ли уступить место».
|
|
415
|
+
*
|
|
416
|
+
* Объявлена рядом с учётом панелей, а не рядом с гардом: гард берёт учёт значением, и
|
|
417
|
+
* объявление у него замыкало круг «учёт → гард → учёт».
|
|
418
|
+
*/
|
|
419
|
+
interface IRtAsideDeactivate {
|
|
420
|
+
canDeactivate(): Observable<boolean>;
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
declare const rtAsideUnsavedGuard: CanDeactivateFn<IRtAsideDeactivate | null>;
|
|
424
|
+
|
|
425
|
+
export { RtContainerComponent, RtContainerContentDirective, RtContainerContentPanelDirective, RtContainerHeaderDirective, RtContainerLeftSidenavDirective, RtContainerLeftSidenavPanelDirective, RtContainerRightSidenavDirective, RtContainerRightSidenavPanelDirective, RtContainerStateService, RtContainerToolbarCenterDirective, RtContainerToolbarLeftDirective, RtContainerToolbarRightDirective, RtRouteAsideComponent, rtAsideUnsavedGuard };
|