@cuby-ui/core 0.0.485 → 0.0.487
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 +794 -13
- package/package.json +7 -4
- package/animations/animations.d.ts +0 -36
- package/animations/index.d.ts +0 -1
- package/classes/accessors.d.ts +0 -17
- package/classes/driver.d.ts +0 -16
- package/classes/index.d.ts +0 -3
- package/classes/vehicle.d.ts +0 -6
- package/components/accordion/accordion-item/accordion-item.component.d.ts +0 -14
- package/components/accordion/accordion-item/accordion-item.options.d.ts +0 -1
- package/components/accordion/accordion.component.d.ts +0 -5
- package/components/accordion/accordion.directive.d.ts +0 -15
- package/components/accordion/accordion.module.d.ts +0 -11
- package/components/accordion/index.d.ts +0 -4
- package/components/alert/alert.component.d.ts +0 -13
- package/components/alert/alert.interfaces.d.ts +0 -9
- package/components/alert/alert.module.d.ts +0 -11
- package/components/alert/alert.service.d.ts +0 -7
- package/components/alert/alert.tokens.d.ts +0 -16
- package/components/alert/alert.types.d.ts +0 -3
- package/components/alert/alerts.component.d.ts +0 -17
- package/components/alert/index.d.ts +0 -8
- package/components/alert-hint/alert-hint.component.d.ts +0 -11
- package/components/alert-hint/error-status.d.ts +0 -1
- package/components/alert-hint/index.d.ts +0 -2
- package/components/badge/badge.component.d.ts +0 -10
- package/components/badge/badge.module.d.ts +0 -8
- package/components/badge/badge.options.d.ts +0 -12
- package/components/badge/index.d.ts +0 -3
- package/components/banner/banner.component.d.ts +0 -21
- package/components/banner/banner.module.d.ts +0 -11
- package/components/banner/banner.options.d.ts +0 -13
- package/components/banner/index.d.ts +0 -3
- package/components/breadcrumbs/breadcrumb/breadcrumb.component.d.ts +0 -6
- package/components/breadcrumbs/breadcrumbs.component.d.ts +0 -7
- package/components/breadcrumbs/breadcrumbs.module.d.ts +0 -10
- package/components/breadcrumbs/index.d.ts +0 -3
- package/components/button/button.component.d.ts +0 -39
- package/components/button/button.module.d.ts +0 -9
- package/components/button/button.options.d.ts +0 -14
- package/components/button/index.d.ts +0 -3
- package/components/button-group/button-group.component.d.ts +0 -5
- package/components/button-group/button-group.module.d.ts +0 -7
- package/components/button-group/index.d.ts +0 -2
- package/components/card-wrapper/card-wrapper.component.d.ts +0 -7
- package/components/card-wrapper/index.d.ts +0 -1
- package/components/checkbox/checkbox.component.d.ts +0 -5
- package/components/checkbox/checkbox.module.d.ts +0 -7
- package/components/checkbox/index.d.ts +0 -2
- package/components/content-header/content-header.component.d.ts +0 -8
- package/components/content-header/index.d.ts +0 -1
- package/components/content-wrapper/content-wrapper.component.d.ts +0 -11
- package/components/content-wrapper/index.d.ts +0 -1
- package/components/context-menu/context-menu.component.d.ts +0 -41
- package/components/context-menu/context-menu.module.d.ts +0 -9
- package/components/context-menu/index.d.ts +0 -2
- package/components/dialog/dialog-actions/dialog-actions.component.d.ts +0 -5
- package/components/dialog/dialog-header/dialog-header.component.d.ts +0 -12
- package/components/dialog/dialog.component.d.ts +0 -33
- package/components/dialog/dialog.interfaces.d.ts +0 -11
- package/components/dialog/dialog.module.d.ts +0 -14
- package/components/dialog/dialog.service.d.ts +0 -7
- package/components/dialog/dialog.tokens.d.ts +0 -8
- package/components/dialog/dialogs.component.d.ts +0 -18
- package/components/dialog/index.d.ts +0 -8
- package/components/dropdown/dropdown-wrapper.component.d.ts +0 -9
- package/components/dropdown/dropdown.directive.d.ts +0 -41
- package/components/dropdown/dropdown.interfaces.d.ts +0 -8
- package/components/dropdown/index.d.ts +0 -3
- package/components/empty-state/empty-state.component.d.ts +0 -7
- package/components/empty-state/index.d.ts +0 -1
- package/components/file-icon/file-icon.component.d.ts +0 -9
- package/components/file-icon/file-icon.options.d.ts +0 -12
- package/components/file-icon/index.d.ts +0 -1
- package/components/form-field/form-field.component.d.ts +0 -5
- package/components/form-field/form-field.module.d.ts +0 -7
- package/components/form-field/index.d.ts +0 -2
- package/components/ghost-input/ghost-input.component.d.ts +0 -6
- package/components/ghost-input/index.d.ts +0 -1
- package/components/hint/hint.component.d.ts +0 -7
- package/components/hint/hint.module.d.ts +0 -7
- package/components/hint/index.d.ts +0 -2
- package/components/icon-button/icon-button.component.d.ts +0 -13
- package/components/icon-button/icon-button.module.d.ts +0 -9
- package/components/icon-button/index.d.ts +0 -2
- package/components/index.d.ts +0 -41
- package/components/input-number/index.d.ts +0 -2
- package/components/input-number/input-number.component.d.ts +0 -38
- package/components/input-number/input-number.module.d.ts +0 -12
- package/components/input-password/index.d.ts +0 -2
- package/components/input-password/input-password.component.d.ts +0 -31
- package/components/input-password/input-password.module.d.ts +0 -11
- package/components/input-text/index.d.ts +0 -2
- package/components/input-text/input-text.component.d.ts +0 -31
- package/components/input-text/input-text.module.d.ts +0 -11
- package/components/input-time/index.d.ts +0 -3
- package/components/input-time/input-time.component.d.ts +0 -36
- package/components/input-time/input-time.module.d.ts +0 -12
- package/components/input-time/input-time.options.d.ts +0 -7
- package/components/label/index.d.ts +0 -2
- package/components/label/label.component.d.ts +0 -6
- package/components/label/label.module.d.ts +0 -8
- package/components/layout/index.d.ts +0 -1
- package/components/layout/layout.component.d.ts +0 -6
- package/components/letter-box/index.d.ts +0 -1
- package/components/letter-box/letter-box.component.d.ts +0 -14
- package/components/letter-box/letter-box.interfaces.d.ts +0 -3
- package/components/notification/index.d.ts +0 -3
- package/components/notification/notification.component.d.ts +0 -18
- package/components/notification/notification.module.d.ts +0 -9
- package/components/notification/notification.options.d.ts +0 -17
- package/components/options-button/index.d.ts +0 -1
- package/components/options-button/options-button.component.d.ts +0 -8
- package/components/radio/index.d.ts +0 -2
- package/components/radio/radio.component.d.ts +0 -5
- package/components/radio/radio.module.d.ts +0 -7
- package/components/render-dynamic-components/index.d.ts +0 -3
- package/components/render-dynamic-components/render-dynamic-components.component.d.ts +0 -7
- package/components/render-dynamic-components/render-dynamic-components.options.d.ts +0 -7
- package/components/render-dynamic-components/render-dynamic-components.service.d.ts +0 -12
- package/components/root/index.d.ts +0 -3
- package/components/root/root.component.d.ts +0 -10
- package/components/root/root.module.d.ts +0 -11
- package/components/root/root.options.d.ts +0 -1
- package/components/select/index.d.ts +0 -2
- package/components/select/select.component.d.ts +0 -53
- package/components/select/select.module.d.ts +0 -11
- package/components/sidebar/index.d.ts +0 -7
- package/components/sidebar/sidebar-container/index.d.ts +0 -1
- package/components/sidebar/sidebar-container/sidebar-container.component.d.ts +0 -10
- package/components/sidebar/sidebar-header/index.d.ts +0 -1
- package/components/sidebar/sidebar-header/sidebar-header.component.d.ts +0 -12
- package/components/sidebar/sidebar-navigation/index.d.ts +0 -1
- package/components/sidebar/sidebar-navigation/sidebar-navigation.component.d.ts +0 -9
- package/components/sidebar/sidebar-navigation-container/index.d.ts +0 -1
- package/components/sidebar/sidebar-navigation-container/sidebar-navigation-container.component.d.ts +0 -8
- package/components/sidebar/sidebar-navigation-item/index.d.ts +0 -1
- package/components/sidebar/sidebar-navigation-item/sidebar-navigation-item.component.d.ts +0 -9
- package/components/sidebar/sidebar.options.d.ts +0 -4
- package/components/sidebar/sidebar.service.d.ts +0 -17
- package/components/svg/index.d.ts +0 -2
- package/components/svg/svg.component.d.ts +0 -16
- package/components/svg/svg.module.d.ts +0 -8
- package/components/tab/index.d.ts +0 -1
- package/components/tab/tab.component.d.ts +0 -15
- package/components/tabs/components/abstract-tabs/abstract-tabs.component.d.ts +0 -15
- package/components/tabs/components/abstract-tabs/index.d.ts +0 -1
- package/components/tabs/components/index.d.ts +0 -1
- package/components/tabs/index.d.ts +0 -5
- package/components/tabs/services/index.d.ts +0 -1
- package/components/tabs/services/tabs.service.d.ts +0 -14
- package/components/tabs/tabs.component.d.ts +0 -8
- package/components/tabs/tabs.options.d.ts +0 -21
- package/components/tabs/tabs.provider.d.ts +0 -3
- package/components/textarea/index.d.ts +0 -2
- package/components/textarea/textarea.component.d.ts +0 -10
- package/components/textarea/textarea.module.d.ts +0 -7
- package/components/toggle/index.d.ts +0 -2
- package/components/toggle/toggle.component.d.ts +0 -5
- package/components/toggle/toggle.module.d.ts +0 -7
- package/directives/index.d.ts +0 -2
- package/directives/text-field-controller/index.d.ts +0 -8
- package/directives/text-field-controller/text-field-controller.module.d.ts +0 -11
- package/directives/text-field-controller/text-field-controller.provider.d.ts +0 -4
- package/directives/text-field-controller/text-field-icon-left.directive.d.ts +0 -9
- package/directives/text-field-controller/text-field-id.directive.d.ts +0 -8
- package/directives/text-field-controller/text-field-is-error.directive.d.ts +0 -8
- package/directives/text-field-controller/text-field-placeholder.directive.d.ts +0 -8
- package/directives/text-field-controller/text-field-size.directive.d.ts +0 -9
- package/directives/text-field-controller/text-field.controller.d.ts +0 -20
- package/directives/tooltip/index.d.ts +0 -16
- package/directives/tooltip/tooltip-describe.directive.d.ts +0 -16
- package/directives/tooltip/tooltip-driver.directive.d.ts +0 -7
- package/directives/tooltip/tooltip-host.directive.d.ts +0 -9
- package/directives/tooltip/tooltip-hover.directive.d.ts +0 -21
- package/directives/tooltip/tooltip-manual.directive.d.ts +0 -13
- package/directives/tooltip/tooltip-options.directive.d.ts +0 -36
- package/directives/tooltip/tooltip-overflow.directive.d.ts +0 -8
- package/directives/tooltip/tooltip-pointer.directive.d.ts +0 -10
- package/directives/tooltip/tooltip-position.directive.d.ts +0 -20
- package/directives/tooltip/tooltip-unstyled.component.d.ts +0 -17
- package/directives/tooltip/tooltip.component.d.ts +0 -33
- package/directives/tooltip/tooltip.d.ts +0 -13
- package/directives/tooltip/tooltip.directive.d.ts +0 -26
- package/directives/tooltip/tooltip.providers.d.ts +0 -5
- package/directives/tooltip/tooltip.service.d.ts +0 -13
- package/directives/tooltip/tooltips.component.d.ts +0 -12
- package/editor/components/editor-attaches-tool/editor-attaches-tool.component.d.ts +0 -19
- package/editor/components/editor-attaches-tool/editor-attaches-tool.options.d.ts +0 -18
- package/editor/components/editor-attaches-tool/index.d.ts +0 -2
- package/editor/components/editor-image-tool/editor-image-tool.component.d.ts +0 -14
- package/editor/components/editor-image-tool/editor-image-tool.options.d.ts +0 -26
- package/editor/components/editor-image-tool/index.d.ts +0 -2
- package/editor/components/editor-tool/editor-tool.component.d.ts +0 -22
- package/editor/components/editor-tool-modal/editor-tool-modal.component.d.ts +0 -24
- package/editor/components/editor-tool-modal/editor-tool-modal.options.d.ts +0 -8
- package/editor/components/editor-tool-modal/index.d.ts +0 -2
- package/editor/components/editor-tooltip/editor-tooltip.component.d.ts +0 -16
- package/editor/components/editor-tooltip/editor-tooltip.options.d.ts +0 -9
- package/editor/components/editor-tooltip/index.d.ts +0 -2
- package/editor/components/editor-video-tool/editor-video-tool.component.d.ts +0 -12
- package/editor/components/editor-video-tool/editor-video-tool.options.d.ts +0 -26
- package/editor/components/editor-video-tool/index.d.ts +0 -2
- package/editor/components/index.d.ts +0 -7
- package/editor/components/marker-modal/index.d.ts +0 -3
- package/editor/components/marker-modal/marker-modal.component.d.ts +0 -62
- package/editor/components/marker-modal/marker-modal.interfaces.d.ts +0 -7
- package/editor/components/marker-modal/marker-modal.options.d.ts +0 -1
- package/editor/components/marker-select/component/select-item/select-option.component.d.ts +0 -7
- package/editor/components/marker-select/index.d.ts +0 -2
- package/editor/components/marker-select/marker-select.component.d.ts +0 -40
- package/editor/components/marker-select/marker-select.options.d.ts +0 -1
- package/editor/config/custom-elements.d.ts +0 -2
- package/editor/config/editor.config.d.ts +0 -3
- package/editor/config/index.d.ts +0 -1
- package/editor/constants/editor.constants.d.ts +0 -15
- package/editor/constants/index.d.ts +0 -1
- package/editor/editor.component.d.ts +0 -73
- package/editor/events/editor-drag.event.d.ts +0 -2
- package/editor/events/editor-keyboard.event.d.ts +0 -2
- package/editor/events/editor-modal.event.d.ts +0 -3
- package/editor/events/editor-tooltip.event.d.ts +0 -2
- package/editor/events/set-editor-events.d.ts +0 -1
- package/editor/index.d.ts +0 -9
- package/editor/interfaces/angular-element.d.ts +0 -2
- package/editor/interfaces/blocks-request-data.d.ts +0 -6
- package/editor/interfaces/combined-block-adding-event.d.ts +0 -7
- package/editor/interfaces/combined-block-data.d.ts +0 -5
- package/editor/interfaces/combined-part-block-data.d.ts +0 -7
- package/editor/interfaces/custom-element.d.ts +0 -5
- package/editor/interfaces/editor-service.d.ts +0 -4
- package/editor/interfaces/event-action-data.d.ts +0 -5
- package/editor/interfaces/file-response-data.d.ts +0 -15
- package/editor/interfaces/full-block-data.d.ts +0 -8
- package/editor/interfaces/index.d.ts +0 -15
- package/editor/interfaces/main-editor-config.d.ts +0 -12
- package/editor/interfaces/mutation-actions.d.ts +0 -5
- package/editor/interfaces/parent.d.ts +0 -4
- package/editor/interfaces/tools.d.ts +0 -4
- package/editor/interfaces/tune.d.ts +0 -6
- package/editor/pipes/file-size.pipe.d.ts +0 -9
- package/editor/providers/editor.provider.d.ts +0 -2
- package/editor/providers/index.d.ts +0 -1
- package/editor/services/editor-service.options.d.ts +0 -8
- package/editor/services/editor.service.d.ts +0 -23
- package/editor/services/index.d.ts +0 -4
- package/editor/services/markers-service.options.d.ts +0 -4
- package/editor/services/markers.service.d.ts +0 -11
- package/editor/tools/attaches.tool.d.ts +0 -31
- package/editor/tools/bold.tool.d.ts +0 -11
- package/editor/tools/combined-text-block.tool.d.ts +0 -49
- package/editor/tools/custom-marker.tool.d.ts +0 -16
- package/editor/tools/header.tool.d.ts +0 -8
- package/editor/tools/image.tool.d.ts +0 -37
- package/editor/tools/index.d.ts +0 -11
- package/editor/tools/italic.tool.d.ts +0 -12
- package/editor/tools/link-marker.tool.d.ts +0 -15
- package/editor/tools/list.tool.d.ts +0 -5
- package/editor/tools/marker.tool.d.ts +0 -36
- package/editor/tools/role-marker.tool.d.ts +0 -7
- package/editor/tools/selection-base.tool.d.ts +0 -24
- package/editor/tools/tool-marker.tool.d.ts +0 -7
- package/editor/tools/video.tool.d.ts +0 -32
- package/editor/utils/copy-text-to-clipboard.d.ts +0 -1
- package/editor/utils/create-link-modal.d.ts +0 -3
- package/editor/utils/create-tool-modal.d.ts +0 -4
- package/editor/utils/create-tools-data.d.ts +0 -3
- package/editor/utils/create-tooltip.d.ts +0 -8
- package/editor/utils/file-uploader.d.ts +0 -27
- package/editor/utils/generate-id.d.ts +0 -1
- package/editor/utils/index.d.ts +0 -12
- package/editor/utils/open-file-in-browser.d.ts +0 -2
- package/editor/utils/recalculate-indexes.d.ts +0 -2
- package/editor/utils/remove-element-tag-wrapper.d.ts +0 -1
- package/editor/utils/set-loading.d.ts +0 -2
- package/editor/utils/split-html.d.ts +0 -1
- package/editor/utils/url.validator.d.ts +0 -2
- package/editor/widgets/editor-block/editor-block.component.d.ts +0 -22
- package/editor/widgets/editor-block/index.d.ts +0 -1
- package/editor/widgets/editor-modal/editor-modal.component.d.ts +0 -19
- package/editor/widgets/editor-modal/index.d.ts +0 -1
- package/editor/widgets/editor-readonly/editor-readonly.component.d.ts +0 -27
- package/editor/widgets/editor-readonly/editor-readonly.options.d.ts +0 -5
- package/editor/widgets/editor-readonly/editor-resize-observer.directive.d.ts +0 -15
- package/editor/widgets/editor-readonly/index.d.ts +0 -2
- package/editor/widgets/index.d.ts +0 -3
- package/esm2022/animations/animations.mjs +0 -228
- package/esm2022/animations/index.mjs +0 -2
- package/esm2022/classes/accessors.mjs +0 -31
- package/esm2022/classes/driver.mjs +0 -35
- package/esm2022/classes/index.mjs +0 -4
- package/esm2022/classes/vehicle.mjs +0 -7
- package/esm2022/components/accordion/accordion-item/accordion-item.component.mjs +0 -37
- package/esm2022/components/accordion/accordion-item/accordion-item.options.mjs +0 -2
- package/esm2022/components/accordion/accordion.component.mjs +0 -11
- package/esm2022/components/accordion/accordion.directive.mjs +0 -56
- package/esm2022/components/accordion/accordion.module.mjs +0 -21
- package/esm2022/components/accordion/index.mjs +0 -5
- package/esm2022/components/alert/alert.component.mjs +0 -36
- package/esm2022/components/alert/alert.interfaces.mjs +0 -2
- package/esm2022/components/alert/alert.module.mjs +0 -21
- package/esm2022/components/alert/alert.service.mjs +0 -17
- package/esm2022/components/alert/alert.tokens.mjs +0 -20
- package/esm2022/components/alert/alert.types.mjs +0 -2
- package/esm2022/components/alert/alerts.component.mjs +0 -34
- package/esm2022/components/alert/index.mjs +0 -9
- package/esm2022/components/alert-hint/alert-hint.component.mjs +0 -28
- package/esm2022/components/alert-hint/error-status.mjs +0 -2
- package/esm2022/components/alert-hint/index.mjs +0 -2
- package/esm2022/components/badge/badge.component.mjs +0 -31
- package/esm2022/components/badge/badge.module.mjs +0 -18
- package/esm2022/components/badge/badge.options.mjs +0 -8
- package/esm2022/components/badge/index.mjs +0 -3
- package/esm2022/components/banner/banner.component.mjs +0 -68
- package/esm2022/components/banner/banner.module.mjs +0 -21
- package/esm2022/components/banner/banner.options.mjs +0 -6
- package/esm2022/components/banner/index.mjs +0 -4
- package/esm2022/components/breadcrumbs/breadcrumb/breadcrumb.component.mjs +0 -16
- package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +0 -17
- package/esm2022/components/breadcrumbs/breadcrumbs.module.mjs +0 -20
- package/esm2022/components/breadcrumbs/index.mjs +0 -4
- package/esm2022/components/button/button.component.mjs +0 -133
- package/esm2022/components/button/button.module.mjs +0 -19
- package/esm2022/components/button/button.options.mjs +0 -11
- package/esm2022/components/button/index.mjs +0 -4
- package/esm2022/components/button-group/button-group.component.mjs +0 -11
- package/esm2022/components/button-group/button-group.module.mjs +0 -16
- package/esm2022/components/button-group/index.mjs +0 -3
- package/esm2022/components/card-wrapper/card-wrapper.component.mjs +0 -18
- package/esm2022/components/card-wrapper/index.mjs +0 -2
- package/esm2022/components/checkbox/checkbox.component.mjs +0 -11
- package/esm2022/components/checkbox/checkbox.module.mjs +0 -16
- package/esm2022/components/checkbox/index.mjs +0 -3
- package/esm2022/components/content-header/content-header.component.mjs +0 -19
- package/esm2022/components/content-header/index.mjs +0 -2
- package/esm2022/components/content-wrapper/content-wrapper.component.mjs +0 -29
- package/esm2022/components/content-wrapper/index.mjs +0 -2
- package/esm2022/components/context-menu/context-menu.component.mjs +0 -148
- package/esm2022/components/context-menu/context-menu.module.mjs +0 -19
- package/esm2022/components/context-menu/index.mjs +0 -3
- package/esm2022/components/dialog/dialog-actions/dialog-actions.component.mjs +0 -11
- package/esm2022/components/dialog/dialog-header/dialog-header.component.mjs +0 -28
- package/esm2022/components/dialog/dialog.component.mjs +0 -67
- package/esm2022/components/dialog/dialog.interfaces.mjs +0 -2
- package/esm2022/components/dialog/dialog.module.mjs +0 -24
- package/esm2022/components/dialog/dialog.service.mjs +0 -17
- package/esm2022/components/dialog/dialog.tokens.mjs +0 -12
- package/esm2022/components/dialog/dialogs.component.mjs +0 -49
- package/esm2022/components/dialog/index.mjs +0 -9
- package/esm2022/components/dropdown/dropdown-wrapper.component.mjs +0 -23
- package/esm2022/components/dropdown/dropdown.directive.mjs +0 -182
- package/esm2022/components/dropdown/dropdown.interfaces.mjs +0 -2
- package/esm2022/components/dropdown/index.mjs +0 -3
- package/esm2022/components/empty-state/empty-state.component.mjs +0 -17
- package/esm2022/components/empty-state/index.mjs +0 -2
- package/esm2022/components/file-icon/file-icon.component.mjs +0 -22
- package/esm2022/components/file-icon/file-icon.options.mjs +0 -120
- package/esm2022/components/file-icon/index.mjs +0 -2
- package/esm2022/components/form-field/form-field.component.mjs +0 -11
- package/esm2022/components/form-field/form-field.module.mjs +0 -16
- package/esm2022/components/form-field/index.mjs +0 -3
- package/esm2022/components/ghost-input/ghost-input.component.mjs +0 -16
- package/esm2022/components/ghost-input/index.mjs +0 -2
- package/esm2022/components/hint/hint.component.mjs +0 -19
- package/esm2022/components/hint/hint.module.mjs +0 -16
- package/esm2022/components/hint/index.mjs +0 -3
- package/esm2022/components/icon-button/icon-button.component.mjs +0 -32
- package/esm2022/components/icon-button/icon-button.module.mjs +0 -19
- package/esm2022/components/icon-button/index.mjs +0 -3
- package/esm2022/components/index.mjs +0 -42
- package/esm2022/components/input-number/index.mjs +0 -3
- package/esm2022/components/input-number/input-number.component.mjs +0 -107
- package/esm2022/components/input-number/input-number.module.mjs +0 -22
- package/esm2022/components/input-password/index.mjs +0 -3
- package/esm2022/components/input-password/input-password.component.mjs +0 -83
- package/esm2022/components/input-password/input-password.module.mjs +0 -21
- package/esm2022/components/input-text/index.mjs +0 -3
- package/esm2022/components/input-text/input-text.component.mjs +0 -81
- package/esm2022/components/input-text/input-text.module.mjs +0 -21
- package/esm2022/components/input-time/index.mjs +0 -4
- package/esm2022/components/input-time/input-time.component.mjs +0 -93
- package/esm2022/components/input-time/input-time.module.mjs +0 -22
- package/esm2022/components/input-time/input-time.options.mjs +0 -8
- package/esm2022/components/label/index.mjs +0 -3
- package/esm2022/components/label/label.component.mjs +0 -17
- package/esm2022/components/label/label.module.mjs +0 -18
- package/esm2022/components/layout/index.mjs +0 -2
- package/esm2022/components/layout/layout.component.mjs +0 -16
- package/esm2022/components/letter-box/index.mjs +0 -2
- package/esm2022/components/letter-box/letter-box.component.mjs +0 -43
- package/esm2022/components/letter-box/letter-box.interfaces.mjs +0 -2
- package/esm2022/components/notification/index.mjs +0 -4
- package/esm2022/components/notification/notification.component.mjs +0 -47
- package/esm2022/components/notification/notification.module.mjs +0 -19
- package/esm2022/components/notification/notification.options.mjs +0 -53
- package/esm2022/components/options-button/index.mjs +0 -2
- package/esm2022/components/options-button/options-button.component.mjs +0 -20
- package/esm2022/components/radio/index.mjs +0 -3
- package/esm2022/components/radio/radio.component.mjs +0 -11
- package/esm2022/components/radio/radio.module.mjs +0 -16
- package/esm2022/components/render-dynamic-components/index.mjs +0 -3
- package/esm2022/components/render-dynamic-components/render-dynamic-components.component.mjs +0 -17
- package/esm2022/components/render-dynamic-components/render-dynamic-components.options.mjs +0 -2
- package/esm2022/components/render-dynamic-components/render-dynamic-components.service.mjs +0 -29
- package/esm2022/components/root/index.mjs +0 -4
- package/esm2022/components/root/root.component.mjs +0 -27
- package/esm2022/components/root/root.module.mjs +0 -21
- package/esm2022/components/root/root.options.mjs +0 -2
- package/esm2022/components/select/index.mjs +0 -3
- package/esm2022/components/select/select.component.mjs +0 -171
- package/esm2022/components/select/select.module.mjs +0 -21
- package/esm2022/components/sidebar/index.mjs +0 -7
- package/esm2022/components/sidebar/sidebar-container/index.mjs +0 -2
- package/esm2022/components/sidebar/sidebar-container/sidebar-container.component.mjs +0 -30
- package/esm2022/components/sidebar/sidebar-header/index.mjs +0 -2
- package/esm2022/components/sidebar/sidebar-header/sidebar-header.component.mjs +0 -27
- package/esm2022/components/sidebar/sidebar-navigation/index.mjs +0 -2
- package/esm2022/components/sidebar/sidebar-navigation/sidebar-navigation.component.mjs +0 -16
- package/esm2022/components/sidebar/sidebar-navigation-container/index.mjs +0 -2
- package/esm2022/components/sidebar/sidebar-navigation-container/sidebar-navigation-container.component.mjs +0 -16
- package/esm2022/components/sidebar/sidebar-navigation-item/index.mjs +0 -2
- package/esm2022/components/sidebar/sidebar-navigation-item/sidebar-navigation-item.component.mjs +0 -21
- package/esm2022/components/sidebar/sidebar.options.mjs +0 -2
- package/esm2022/components/sidebar/sidebar.service.mjs +0 -39
- package/esm2022/components/svg/index.mjs +0 -3
- package/esm2022/components/svg/svg.component.mjs +0 -48
- package/esm2022/components/svg/svg.module.mjs +0 -18
- package/esm2022/components/tab/index.mjs +0 -2
- package/esm2022/components/tab/tab.component.mjs +0 -36
- package/esm2022/components/tabs/components/abstract-tabs/abstract-tabs.component.mjs +0 -40
- package/esm2022/components/tabs/components/abstract-tabs/index.mjs +0 -2
- package/esm2022/components/tabs/components/index.mjs +0 -2
- package/esm2022/components/tabs/index.mjs +0 -6
- package/esm2022/components/tabs/services/index.mjs +0 -2
- package/esm2022/components/tabs/services/tabs.service.mjs +0 -27
- package/esm2022/components/tabs/tabs.component.mjs +0 -17
- package/esm2022/components/tabs/tabs.options.mjs +0 -5
- package/esm2022/components/tabs/tabs.provider.mjs +0 -9
- package/esm2022/components/textarea/index.mjs +0 -3
- package/esm2022/components/textarea/textarea.component.mjs +0 -35
- package/esm2022/components/textarea/textarea.module.mjs +0 -16
- package/esm2022/components/toggle/index.mjs +0 -3
- package/esm2022/components/toggle/toggle.component.mjs +0 -11
- package/esm2022/components/toggle/toggle.module.mjs +0 -16
- package/esm2022/cuby-ui-core.mjs +0 -5
- package/esm2022/directives/index.mjs +0 -3
- package/esm2022/directives/text-field-controller/index.mjs +0 -9
- package/esm2022/directives/text-field-controller/text-field-controller.module.mjs +0 -40
- package/esm2022/directives/text-field-controller/text-field-controller.provider.mjs +0 -24
- package/esm2022/directives/text-field-controller/text-field-icon-left.directive.mjs +0 -21
- package/esm2022/directives/text-field-controller/text-field-id.directive.mjs +0 -21
- package/esm2022/directives/text-field-controller/text-field-is-error.directive.mjs +0 -24
- package/esm2022/directives/text-field-controller/text-field-placeholder.directive.mjs +0 -21
- package/esm2022/directives/text-field-controller/text-field-size.directive.mjs +0 -24
- package/esm2022/directives/text-field-controller/text-field.controller.mjs +0 -25
- package/esm2022/directives/tooltip/index.mjs +0 -17
- package/esm2022/directives/tooltip/tooltip-describe.directive.mjs +0 -47
- package/esm2022/directives/tooltip/tooltip-driver.directive.mjs +0 -18
- package/esm2022/directives/tooltip/tooltip-host.directive.mjs +0 -26
- package/esm2022/directives/tooltip/tooltip-hover.directive.mjs +0 -50
- package/esm2022/directives/tooltip/tooltip-manual.directive.mjs +0 -31
- package/esm2022/directives/tooltip/tooltip-options.directive.mjs +0 -83
- package/esm2022/directives/tooltip/tooltip-overflow.directive.mjs +0 -31
- package/esm2022/directives/tooltip/tooltip-pointer.directive.mjs +0 -31
- package/esm2022/directives/tooltip/tooltip-position.directive.mjs +0 -91
- package/esm2022/directives/tooltip/tooltip-unstyled.component.mjs +0 -40
- package/esm2022/directives/tooltip/tooltip.component.mjs +0 -109
- package/esm2022/directives/tooltip/tooltip.directive.mjs +0 -92
- package/esm2022/directives/tooltip/tooltip.mjs +0 -27
- package/esm2022/directives/tooltip/tooltip.providers.mjs +0 -7
- package/esm2022/directives/tooltip/tooltip.service.mjs +0 -28
- package/esm2022/directives/tooltip/tooltips.component.mjs +0 -33
- package/esm2022/editor/components/editor-attaches-tool/editor-attaches-tool.component.mjs +0 -60
- package/esm2022/editor/components/editor-attaches-tool/editor-attaches-tool.options.mjs +0 -2
- package/esm2022/editor/components/editor-attaches-tool/index.mjs +0 -3
- package/esm2022/editor/components/editor-image-tool/editor-image-tool.component.mjs +0 -43
- package/esm2022/editor/components/editor-image-tool/editor-image-tool.options.mjs +0 -2
- package/esm2022/editor/components/editor-image-tool/index.mjs +0 -3
- package/esm2022/editor/components/editor-tool/editor-tool.component.mjs +0 -74
- package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.component.mjs +0 -69
- package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.options.mjs +0 -2
- package/esm2022/editor/components/editor-tool-modal/index.mjs +0 -3
- package/esm2022/editor/components/editor-tooltip/editor-tooltip.component.mjs +0 -45
- package/esm2022/editor/components/editor-tooltip/editor-tooltip.options.mjs +0 -2
- package/esm2022/editor/components/editor-tooltip/index.mjs +0 -3
- package/esm2022/editor/components/editor-video-tool/editor-video-tool.component.mjs +0 -41
- package/esm2022/editor/components/editor-video-tool/editor-video-tool.options.mjs +0 -2
- package/esm2022/editor/components/editor-video-tool/index.mjs +0 -3
- package/esm2022/editor/components/index.mjs +0 -8
- package/esm2022/editor/components/marker-modal/index.mjs +0 -3
- package/esm2022/editor/components/marker-modal/marker-modal.component.mjs +0 -261
- package/esm2022/editor/components/marker-modal/marker-modal.interfaces.mjs +0 -2
- package/esm2022/editor/components/marker-modal/marker-modal.options.mjs +0 -2
- package/esm2022/editor/components/marker-select/component/select-item/select-option.component.mjs +0 -15
- package/esm2022/editor/components/marker-select/index.mjs +0 -3
- package/esm2022/editor/components/marker-select/marker-select.component.mjs +0 -155
- package/esm2022/editor/components/marker-select/marker-select.options.mjs +0 -2
- package/esm2022/editor/config/custom-elements.mjs +0 -32
- package/esm2022/editor/config/editor.config.mjs +0 -30
- package/esm2022/editor/config/index.mjs +0 -2
- package/esm2022/editor/constants/editor.constants.mjs +0 -20
- package/esm2022/editor/constants/index.mjs +0 -2
- package/esm2022/editor/editor.component.mjs +0 -385
- package/esm2022/editor/events/editor-drag.event.mjs +0 -7
- package/esm2022/editor/events/editor-keyboard.event.mjs +0 -33
- package/esm2022/editor/events/editor-modal.event.mjs +0 -31
- package/esm2022/editor/events/editor-tooltip.event.mjs +0 -63
- package/esm2022/editor/events/set-editor-events.mjs +0 -11
- package/esm2022/editor/i18n/en.json +0 -14
- package/esm2022/editor/index.mjs +0 -8
- package/esm2022/editor/interfaces/angular-element.mjs +0 -2
- package/esm2022/editor/interfaces/blocks-request-data.mjs +0 -2
- package/esm2022/editor/interfaces/combined-block-adding-event.mjs +0 -2
- package/esm2022/editor/interfaces/combined-block-data.mjs +0 -2
- package/esm2022/editor/interfaces/combined-part-block-data.mjs +0 -2
- package/esm2022/editor/interfaces/custom-element.mjs +0 -2
- package/esm2022/editor/interfaces/editor-service.mjs +0 -2
- package/esm2022/editor/interfaces/event-action-data.mjs +0 -2
- package/esm2022/editor/interfaces/file-response-data.mjs +0 -2
- package/esm2022/editor/interfaces/full-block-data.mjs +0 -2
- package/esm2022/editor/interfaces/index.mjs +0 -15
- package/esm2022/editor/interfaces/main-editor-config.mjs +0 -2
- package/esm2022/editor/interfaces/mutation-actions.mjs +0 -2
- package/esm2022/editor/interfaces/parent.mjs +0 -2
- package/esm2022/editor/interfaces/tools.mjs +0 -2
- package/esm2022/editor/interfaces/tune.mjs +0 -2
- package/esm2022/editor/pipes/file-size.pipe.mjs +0 -25
- package/esm2022/editor/providers/editor.provider.mjs +0 -19
- package/esm2022/editor/providers/index.mjs +0 -2
- package/esm2022/editor/services/editor-service.options.mjs +0 -4
- package/esm2022/editor/services/editor.service.mjs +0 -138
- package/esm2022/editor/services/index.mjs +0 -5
- package/esm2022/editor/services/markers-service.options.mjs +0 -2
- package/esm2022/editor/services/markers.service.mjs +0 -79
- package/esm2022/editor/tools/attaches.tool.mjs +0 -102
- package/esm2022/editor/tools/bold.tool.mjs +0 -33
- package/esm2022/editor/tools/combined-text-block.tool.mjs +0 -380
- package/esm2022/editor/tools/custom-marker.tool.mjs +0 -88
- package/esm2022/editor/tools/header.tool.mjs +0 -16
- package/esm2022/editor/tools/image.tool.mjs +0 -157
- package/esm2022/editor/tools/index.mjs +0 -12
- package/esm2022/editor/tools/italic.tool.mjs +0 -35
- package/esm2022/editor/tools/link-marker.tool.mjs +0 -80
- package/esm2022/editor/tools/list.tool.mjs +0 -10
- package/esm2022/editor/tools/marker.tool.mjs +0 -144
- package/esm2022/editor/tools/role-marker.tool.mjs +0 -17
- package/esm2022/editor/tools/selection-base.tool.mjs +0 -92
- package/esm2022/editor/tools/tool-marker.tool.mjs +0 -14
- package/esm2022/editor/tools/video.tool.mjs +0 -132
- package/esm2022/editor/utils/copy-text-to-clipboard.mjs +0 -17
- package/esm2022/editor/utils/create-link-modal.mjs +0 -22
- package/esm2022/editor/utils/create-tool-modal.mjs +0 -45
- package/esm2022/editor/utils/create-tools-data.mjs +0 -56
- package/esm2022/editor/utils/create-tooltip.mjs +0 -43
- package/esm2022/editor/utils/file-uploader.mjs +0 -60
- package/esm2022/editor/utils/generate-id.mjs +0 -4
- package/esm2022/editor/utils/index.mjs +0 -13
- package/esm2022/editor/utils/open-file-in-browser.mjs +0 -9
- package/esm2022/editor/utils/recalculate-indexes.mjs +0 -32
- package/esm2022/editor/utils/remove-element-tag-wrapper.mjs +0 -11
- package/esm2022/editor/utils/set-loading.mjs +0 -14
- package/esm2022/editor/utils/split-html.mjs +0 -128
- package/esm2022/editor/utils/url.validator.mjs +0 -12
- package/esm2022/editor/widgets/editor-block/editor-block.component.mjs +0 -63
- package/esm2022/editor/widgets/editor-block/index.mjs +0 -2
- package/esm2022/editor/widgets/editor-modal/editor-modal.component.mjs +0 -42
- package/esm2022/editor/widgets/editor-modal/index.mjs +0 -2
- package/esm2022/editor/widgets/editor-readonly/editor-readonly.component.mjs +0 -36
- package/esm2022/editor/widgets/editor-readonly/editor-readonly.options.mjs +0 -2
- package/esm2022/editor/widgets/editor-readonly/editor-resize-observer.directive.mjs +0 -51
- package/esm2022/editor/widgets/editor-readonly/index.mjs +0 -2
- package/esm2022/editor/widgets/index.mjs +0 -4
- package/esm2022/index.mjs +0 -12
- package/esm2022/interceptors/auth.interceptor.mjs +0 -15
- package/esm2022/interceptors/error-handler.interceptor.mjs +0 -23
- package/esm2022/interceptors/index.mjs +0 -5
- package/esm2022/interceptors/loader.interceptor.mjs +0 -12
- package/esm2022/interceptors/x-ndjson.interceptor.mjs +0 -48
- package/esm2022/interfaces/context-menu-item.mjs +0 -2
- package/esm2022/interfaces/error-notification-service.mjs +0 -2
- package/esm2022/interfaces/error-stategy.mjs +0 -2
- package/esm2022/interfaces/image.mjs +0 -2
- package/esm2022/interfaces/index.mjs +0 -6
- package/esm2022/interfaces/option.mjs +0 -2
- package/esm2022/operators/handle-error.mjs +0 -12
- package/esm2022/operators/index.mjs +0 -2
- package/esm2022/providers/auth.options.mjs +0 -3
- package/esm2022/providers/auth.provider.mjs +0 -31
- package/esm2022/providers/error-handler.options.mjs +0 -2
- package/esm2022/providers/error-handler.provider.mjs +0 -23
- package/esm2022/providers/index.mjs +0 -4
- package/esm2022/services/auth.service.mjs +0 -31
- package/esm2022/services/browser-auth.service.mjs +0 -31
- package/esm2022/services/error-resolver-factory.service.mjs +0 -75
- package/esm2022/services/global-handler-error.service.mjs +0 -26
- package/esm2022/services/index.mjs +0 -10
- package/esm2022/services/loader.options.mjs +0 -6
- package/esm2022/services/loader.service.mjs +0 -60
- package/esm2022/services/mobile-auth.service.mjs +0 -25
- package/esm2022/services/position.service.mjs +0 -23
- package/esm2022/services/theme.options.mjs +0 -6
- package/esm2022/services/theme.service.mjs +0 -30
- package/esm2022/services/token.options.mjs +0 -2
- package/esm2022/services/token.service.mjs +0 -121
- package/esm2022/services/visual-viewport.service.mjs +0 -28
- package/esm2022/tokens/animations-speed.mjs +0 -8
- package/esm2022/tokens/error-notification-service.mjs +0 -15
- package/esm2022/tokens/error-translation-prefix.mjs +0 -6
- package/esm2022/tokens/index.mjs +0 -6
- package/esm2022/tokens/reduced-motion.mjs +0 -5
- package/esm2022/tokens/viewport.mjs +0 -31
- package/esm2022/types/appearance.mjs +0 -2
- package/esm2022/types/button-theme.mjs +0 -2
- package/esm2022/types/hint-type.mjs +0 -2
- package/esm2022/types/index.mjs +0 -11
- package/esm2022/types/point.mjs +0 -2
- package/esm2022/types/portal-item.mjs +0 -2
- package/esm2022/types/position.mjs +0 -2
- package/esm2022/types/resizing.mjs +0 -2
- package/esm2022/types/shape.mjs +0 -2
- package/esm2022/types/size.mjs +0 -2
- package/esm2022/types/status.mjs +0 -2
- package/esm2022/utils/check-fixed-position.mjs +0 -7
- package/esm2022/utils/default-validators/create-default-validators.mjs +0 -19
- package/esm2022/utils/default-validators/create-default-validators.options.mjs +0 -2
- package/esm2022/utils/default-validators/extra-spaces.options.mjs +0 -11
- package/esm2022/utils/default-validators/extra-spaces.validators.mjs +0 -11
- package/esm2022/utils/default-validators/index.mjs +0 -2
- package/esm2022/utils/format/index.mjs +0 -3
- package/esm2022/utils/format/remove-spaces.mjs +0 -4
- package/esm2022/utils/format/replace.mjs +0 -5
- package/esm2022/utils/index.mjs +0 -5
- package/esm2022/utils/miscellaneous/index.mjs +0 -4
- package/esm2022/utils/miscellaneous/is-obscured.mjs +0 -8
- package/esm2022/utils/miscellaneous/override-options.mjs +0 -11
- package/esm2022/utils/miscellaneous/to-animation-options.mjs +0 -14
- package/esm2022/widgets/assets/constants/index.mjs +0 -2
- package/esm2022/widgets/assets/constants/translations.mjs +0 -5
- package/esm2022/widgets/assets/i18n/en.json +0 -45
- package/esm2022/widgets/assets/i18n/ru.json +0 -45
- package/esm2022/widgets/assets/index.mjs +0 -2
- package/esm2022/widgets/index.mjs +0 -5
- package/esm2022/widgets/model/circle-loader-size.type.mjs +0 -2
- package/esm2022/widgets/model/index.mjs +0 -11
- package/esm2022/widgets/model/resource-state-service.interface.mjs +0 -2
- package/esm2022/widgets/model/resource-state-service.token.mjs +0 -3
- package/esm2022/widgets/model/resources-block.options.mjs +0 -2
- package/esm2022/widgets/model/subject-modal-service.interface.mjs +0 -2
- package/esm2022/widgets/model/subject-modal-service.token.mjs +0 -3
- package/esm2022/widgets/model/used-elements-service.interface.mjs +0 -2
- package/esm2022/widgets/model/used-elements-service.token.mjs +0 -3
- package/esm2022/widgets/model/utility-service.interface.mjs +0 -2
- package/esm2022/widgets/model/utility-service.token.mjs +0 -3
- package/esm2022/widgets/service/index.mjs +0 -5
- package/esm2022/widgets/service/resource-state-base.service.mjs +0 -19
- package/esm2022/widgets/service/subject-modal-base.service.mjs +0 -15
- package/esm2022/widgets/service/used-elements-base.service.mjs +0 -17
- package/esm2022/widgets/service/utility-base.service.mjs +0 -129
- package/esm2022/widgets/ui/assignee-role-item/assignee-role-item.component.mjs +0 -31
- package/esm2022/widgets/ui/assignee-role-item/index.mjs +0 -2
- package/esm2022/widgets/ui/assignee-roles-tabs/assignee-roles-tabs.component.mjs +0 -48
- package/esm2022/widgets/ui/assignee-roles-tabs/index.mjs +0 -2
- package/esm2022/widgets/ui/button-change-theme/button-change-theme.component.mjs +0 -27
- package/esm2022/widgets/ui/button-change-theme/index.mjs +0 -2
- package/esm2022/widgets/ui/categories/categories.component.mjs +0 -78
- package/esm2022/widgets/ui/categories/components/categories-list/categories-list.component.mjs +0 -17
- package/esm2022/widgets/ui/categories/components/categories-list/index.mjs +0 -2
- package/esm2022/widgets/ui/categories/components/category-form/category-form.component.mjs +0 -79
- package/esm2022/widgets/ui/categories/components/category-form/index.mjs +0 -2
- package/esm2022/widgets/ui/categories/components/category-item/category-item.component.mjs +0 -126
- package/esm2022/widgets/ui/categories/components/category-item/index.mjs +0 -2
- package/esm2022/widgets/ui/categories/components/create-category-item/create-category-item.component.mjs +0 -25
- package/esm2022/widgets/ui/categories/components/create-category-item/index.mjs +0 -2
- package/esm2022/widgets/ui/categories/components/index.mjs +0 -3
- package/esm2022/widgets/ui/categories/index.mjs +0 -3
- package/esm2022/widgets/ui/categories/services/index.mjs +0 -2
- package/esm2022/widgets/ui/categories/services/selected-category.service.mjs +0 -38
- package/esm2022/widgets/ui/checklist-block/checklist-block.component.mjs +0 -75
- package/esm2022/widgets/ui/checklist-block/checklist-block.options.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list/checklist-block-list.component.mjs +0 -85
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-card/checklist-block-list-item-action-card.component.mjs +0 -133
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-card/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-with-verification/checklist-block-list-item-action-with-verification.component.mjs +0 -45
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-with-verification/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-without-verification/checklist-block-list-item-action-without-verification.component.mjs +0 -35
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-without-verification/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-container/checklist-block-list-item-container.component.mjs +0 -152
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-container/checklist-block-list-item-container.options.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-container/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/checklist-block-list-item-evaluation.component.mjs +0 -282
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/checklist-block-list-item-evaluation.options.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/checklist-block-list-item-evaluation-criteria.component.mjs +0 -117
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/checklist-block-list-item-evaluation-criteria.options.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-title-control/checklist-block-title-control.component.mjs +0 -39
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-title-control/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/components/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/index.mjs +0 -2
- package/esm2022/widgets/ui/checklist-block/services/checklist-block.service.mjs +0 -50
- package/esm2022/widgets/ui/checklist-block/services/index.mjs +0 -2
- package/esm2022/widgets/ui/circle-loader/circle-loader.component.mjs +0 -20
- package/esm2022/widgets/ui/circle-loader/index.mjs +0 -2
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item/consumable-form-item.component.mjs +0 -78
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item/default-control-delay.mjs +0 -2
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item/index.mjs +0 -3
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item-readonly/consumable-form-item-readonly.component.mjs +0 -17
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item-readonly/index.mjs +0 -2
- package/esm2022/widgets/ui/consumable-form/components/index.mjs +0 -4
- package/esm2022/widgets/ui/consumable-form/consumable-form.component.mjs +0 -184
- package/esm2022/widgets/ui/consumable-form/consumable-form.options.mjs +0 -2
- package/esm2022/widgets/ui/consumable-form/index.mjs +0 -2
- package/esm2022/widgets/ui/criterion-info/criterion-info.component.mjs +0 -137
- package/esm2022/widgets/ui/criterion-info/index.mjs +0 -2
- package/esm2022/widgets/ui/criterion-info-form/criterion-info-form.component.mjs +0 -147
- package/esm2022/widgets/ui/criterion-info-form/criterion-info-form.options.mjs +0 -2
- package/esm2022/widgets/ui/criterion-info-form/index.mjs +0 -2
- package/esm2022/widgets/ui/criterion-readonly-info/criterion-readonly-info.component.mjs +0 -72
- package/esm2022/widgets/ui/criterion-readonly-info/index.mjs +0 -2
- package/esm2022/widgets/ui/delete-modal/delete-modal.component.mjs +0 -39
- package/esm2022/widgets/ui/delete-modal/delete-modal.options.mjs +0 -2
- package/esm2022/widgets/ui/delete-modal/index.mjs +0 -2
- package/esm2022/widgets/ui/framer-preview/framer-preview.component.mjs +0 -77
- package/esm2022/widgets/ui/framer-preview/framer-preview.options.mjs +0 -2
- package/esm2022/widgets/ui/framer-preview/index.mjs +0 -2
- package/esm2022/widgets/ui/general-control-error-hint/general-control-error-hint.component.mjs +0 -21
- package/esm2022/widgets/ui/general-control-error-hint/index.mjs +0 -2
- package/esm2022/widgets/ui/index.mjs +0 -30
- package/esm2022/widgets/ui/inserted/index.mjs +0 -2
- package/esm2022/widgets/ui/inserted/inserted.component.mjs +0 -17
- package/esm2022/widgets/ui/instruction-info/index.mjs +0 -2
- package/esm2022/widgets/ui/instruction-info/instruction-info.component.mjs +0 -147
- package/esm2022/widgets/ui/instruction-info-form/index.mjs +0 -2
- package/esm2022/widgets/ui/instruction-info-form/instruction-info-form.component.mjs +0 -153
- package/esm2022/widgets/ui/instruction-info-form/instruction-info-form.options.mjs +0 -2
- package/esm2022/widgets/ui/instruction-readonly-info/index.mjs +0 -2
- package/esm2022/widgets/ui/instruction-readonly-info/instruction-readonly-info.component.mjs +0 -72
- package/esm2022/widgets/ui/linear-loader/index.mjs +0 -2
- package/esm2022/widgets/ui/linear-loader/linear-loader.component.mjs +0 -11
- package/esm2022/widgets/ui/modal-criteria-tab/index.mjs +0 -2
- package/esm2022/widgets/ui/modal-criteria-tab/modal-criteria-tab.component.mjs +0 -45
- package/esm2022/widgets/ui/modal-divided-section/index.mjs +0 -3
- package/esm2022/widgets/ui/modal-divided-section/modal-divided-section.component.mjs +0 -58
- package/esm2022/widgets/ui/modal-divided-section/modal-divided-section.interfaces.mjs +0 -2
- package/esm2022/widgets/ui/modal-header/index.mjs +0 -2
- package/esm2022/widgets/ui/modal-header/modal-header.component.mjs +0 -31
- package/esm2022/widgets/ui/modal-header-inserted-buttons/index.mjs +0 -2
- package/esm2022/widgets/ui/modal-header-inserted-buttons/modal-header-inserted-buttons.component.mjs +0 -22
- package/esm2022/widgets/ui/modal-header-tabs/index.mjs +0 -2
- package/esm2022/widgets/ui/modal-header-tabs/modal-header-tabs.component.mjs +0 -19
- package/esm2022/widgets/ui/modal-info-tab/index.mjs +0 -3
- package/esm2022/widgets/ui/modal-info-tab/modal-info-tab.component.mjs +0 -19
- package/esm2022/widgets/ui/modal-info-tab/modal-info-tab.options.mjs +0 -2
- package/esm2022/widgets/ui/modal-instructions-tab/index.mjs +0 -2
- package/esm2022/widgets/ui/modal-instructions-tab/modal-instructions-tab.component.mjs +0 -31
- package/esm2022/widgets/ui/modal-operation-part/index.mjs +0 -2
- package/esm2022/widgets/ui/modal-operation-part/modal-operation-part.component.mjs +0 -119
- package/esm2022/widgets/ui/modal-resources-tab/index.mjs +0 -2
- package/esm2022/widgets/ui/modal-resources-tab/modal-resources-tab.component.mjs +0 -33
- package/esm2022/widgets/ui/render-dynamic-modal/index.mjs +0 -3
- package/esm2022/widgets/ui/render-dynamic-modal/render-dynamic-modal.component.mjs +0 -29
- package/esm2022/widgets/ui/render-dynamic-modal/render-dynamic-modal.option.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/index.mjs +0 -4
- package/esm2022/widgets/ui/resources-block/components/resources-block-consumables/index.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-block-consumables/resources-block-consumables.component.mjs +0 -53
- package/esm2022/widgets/ui/resources-block/components/resources-block-consumables/resources-block-consumables.options.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-block-content/index.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-block-content/resources-block-content.component.mjs +0 -38
- package/esm2022/widgets/ui/resources-block/components/resources-block-part/index.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-block-part/resources-block-part.component.mjs +0 -57
- package/esm2022/widgets/ui/resources-block/components/resources-block-part/resources-block-part.options.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-block-tabs/index.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-block-tabs/resources-block-tabs.component.mjs +0 -56
- package/esm2022/widgets/ui/resources-block/components/resources-block-tabs/resources-block-tabs.options.mjs +0 -10
- package/esm2022/widgets/ui/resources-block/components/resources-block-toolbox/index.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-block-toolbox/resources-block-toolbox.component.mjs +0 -56
- package/esm2022/widgets/ui/resources-block/components/resources-block-toolbox/resources-block-toolbox.options.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-options/index.mjs +0 -2
- package/esm2022/widgets/ui/resources-block/components/resources-options/resources-options.component.mjs +0 -42
- package/esm2022/widgets/ui/resources-block/index.mjs +0 -3
- package/esm2022/widgets/ui/resources-block/resources-block.component.mjs +0 -137
- package/esm2022/widgets/ui/resources-block-tabs/index.mjs +0 -2
- package/esm2022/widgets/ui/resources-block-tabs/resources-block-tabs.component.mjs +0 -57
- package/esm2022/widgets/ui/resources-block-tabs/resources-block-tabs.options.mjs +0 -10
- package/esm2022/widgets/ui/select-modal/components/index.mjs +0 -3
- package/esm2022/widgets/ui/select-modal/components/select-modal-folder/index.mjs +0 -2
- package/esm2022/widgets/ui/select-modal/components/select-modal-folder/select-modal-folder.component.mjs +0 -21
- package/esm2022/widgets/ui/select-modal/components/select-modal-search/index.mjs +0 -2
- package/esm2022/widgets/ui/select-modal/components/select-modal-search/select-modal-search.component.mjs +0 -32
- package/esm2022/widgets/ui/select-modal/index.mjs +0 -4
- package/esm2022/widgets/ui/select-modal/select-modal.component.mjs +0 -35
- package/esm2022/widgets/ui/select-modal/select-modal.interfaces.mjs +0 -2
- package/esm2022/widgets/ui/select-modal/select-modal.service.mjs +0 -23
- package/esm2022/widgets/ui/stated-loader/index.mjs +0 -2
- package/esm2022/widgets/ui/stated-loader/stated-loader.component.mjs +0 -36
- package/esm2022/widgets/ui/storage-list/components/index.mjs +0 -2
- package/esm2022/widgets/ui/storage-list/components/storage-list-item/index.mjs +0 -2
- package/esm2022/widgets/ui/storage-list/components/storage-list-item/storage-list-item.component.mjs +0 -87
- package/esm2022/widgets/ui/storage-list/index.mjs +0 -3
- package/esm2022/widgets/ui/storage-list/storage-list.component.mjs +0 -17
- package/esm2022/widgets/ui/storage-list/storage-list.options.mjs +0 -3
- package/esm2022/widgets/ui/toolbox-form/components/index.mjs +0 -2
- package/esm2022/widgets/ui/toolbox-form/components/tool-form-readonly/index.mjs +0 -2
- package/esm2022/widgets/ui/toolbox-form/components/tool-form-readonly/tool-form-readonly.component.mjs +0 -19
- package/esm2022/widgets/ui/toolbox-form/index.mjs +0 -3
- package/esm2022/widgets/ui/toolbox-form/tool-form.component.mjs +0 -106
- package/esm2022/widgets/ui/toolbox-form/tool-form.options.mjs +0 -2
- package/esm2022/widgets/ui/user-action-context-menu/activity-item/activity-item.component.mjs +0 -59
- package/esm2022/widgets/ui/user-action-context-menu/activity-item/index.mjs +0 -2
- package/esm2022/widgets/ui/user-action-context-menu/company-item/company-item.component.mjs +0 -67
- package/esm2022/widgets/ui/user-action-context-menu/company-item/index.mjs +0 -2
- package/esm2022/widgets/ui/user-action-context-menu/index.mjs +0 -4
- package/esm2022/widgets/ui/user-action-context-menu/services/activity-base.service.mjs +0 -32
- package/esm2022/widgets/ui/user-action-context-menu/services/activity.service.mjs +0 -35
- package/esm2022/widgets/ui/user-action-context-menu/services/index.mjs +0 -3
- package/esm2022/widgets/ui/user-action-context-menu/user-action-context-menu.component.mjs +0 -80
- package/esm2022/widgets/ui/user-action-context-menu/user-action-context.option.mjs +0 -3
- package/esm2022/widgets/ui/utility-info-readonly/index.mjs +0 -3
- package/esm2022/widgets/ui/utility-info-readonly/utility-info-readonly.component.mjs +0 -94
- package/esm2022/widgets/ui/utility-info-readonly/utility-info-readonly.options.mjs +0 -2
- package/esm2022/widgets/ui/utility-modal/components/criterion-modal-create/criterion-modal-create.component.mjs +0 -41
- package/esm2022/widgets/ui/utility-modal/components/criterion-modal-create/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-modal/components/index.mjs +0 -5
- package/esm2022/widgets/ui/utility-modal/components/instruction-modal-create/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-modal/components/instruction-modal-create/instruction-modal-create.component.mjs +0 -41
- package/esm2022/widgets/ui/utility-modal/components/readonly-criterion-modal/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-modal/components/readonly-criterion-modal/readonly-criterion-modal.component.mjs +0 -40
- package/esm2022/widgets/ui/utility-modal/components/readonly-instruction-modal/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-modal/components/readonly-instruction-modal/readonly-instruction-modal.component.mjs +0 -40
- package/esm2022/widgets/ui/utility-modal/components/readonly-utility-modal/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-modal/components/readonly-utility-modal/readonly-utility-modal.component.mjs +0 -43
- package/esm2022/widgets/ui/utility-modal/components/utility-modal-create/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-modal/components/utility-modal-create/utility-modal-create.component.mjs +0 -55
- package/esm2022/widgets/ui/utility-modal/index.mjs +0 -4
- package/esm2022/widgets/ui/utility-modal/utility-modal.component.mjs +0 -22
- package/esm2022/widgets/ui/utility-modal/utility-modal.options.mjs +0 -3
- package/esm2022/widgets/ui/utility-readonly-thumbnail/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-readonly-thumbnail/utility-readonly-thumbnail.component.mjs +0 -15
- package/esm2022/widgets/ui/utility-thumbnail/index.mjs +0 -2
- package/esm2022/widgets/ui/utility-thumbnail/utility-thumbnail.component.mjs +0 -95
- package/fesm2022/cuby-ui-core-en-BvvbrGg1.mjs +0 -91
- package/fesm2022/cuby-ui-core-en-BvvbrGg1.mjs.map +0 -1
- package/fesm2022/cuby-ui-core-en-CnpigsdW.mjs +0 -29
- package/fesm2022/cuby-ui-core-en-CnpigsdW.mjs.map +0 -1
- package/fesm2022/cuby-ui-core-ru-bROcEQBf.mjs +0 -91
- package/fesm2022/cuby-ui-core-ru-bROcEQBf.mjs.map +0 -1
- package/fesm2022/cuby-ui-core.mjs +0 -12165
- package/fesm2022/cuby-ui-core.mjs.map +0 -1
- package/fonts/Inter-Bold.eot +0 -0
- package/fonts/Inter-Bold.otf +0 -0
- package/fonts/Inter-Bold.svg +0 -25443
- package/fonts/Inter-Bold.ttf +0 -0
- package/fonts/Inter-Bold.woff +0 -0
- package/fonts/Inter-Bold.woff2 +0 -0
- package/fonts/Inter-Medium.eot +0 -0
- package/fonts/Inter-Medium.otf +0 -0
- package/fonts/Inter-Medium.svg +0 -25400
- package/fonts/Inter-Medium.ttf +0 -0
- package/fonts/Inter-Medium.woff +0 -0
- package/fonts/Inter-Medium.woff2 +0 -0
- package/fonts/Inter-Regular.eot +0 -0
- package/fonts/Inter-Regular.otf +0 -0
- package/fonts/Inter-Regular.svg +0 -24341
- package/fonts/Inter-Regular.ttf +0 -0
- package/fonts/Inter-Regular.woff +0 -0
- package/fonts/Inter-Regular.woff2 +0 -0
- package/fonts/Inter-SemiBold.eot +0 -0
- package/fonts/Inter-SemiBold.otf +0 -0
- package/fonts/Inter-SemiBold.svg +0 -25459
- package/fonts/Inter-SemiBold.ttf +0 -0
- package/fonts/Inter-SemiBold.woff +0 -0
- package/fonts/Inter-SemiBold.woff2 +0 -0
- package/fonts/Nunito-ExtraBoldItalic.eot +0 -0
- package/fonts/Nunito-ExtraBoldItalic.otf +0 -0
- package/fonts/Nunito-ExtraBoldItalic.svg +0 -9508
- package/fonts/Nunito-ExtraBoldItalic.ttf +0 -0
- package/fonts/Nunito-ExtraBoldItalic.woff +0 -0
- package/fonts/Nunito-ExtraBoldItalic.woff2 +0 -0
- package/index.d.ts +0 -11
- package/interceptors/auth.interceptor.d.ts +0 -2
- package/interceptors/error-handler.interceptor.d.ts +0 -2
- package/interceptors/index.d.ts +0 -4
- package/interceptors/loader.interceptor.d.ts +0 -2
- package/interceptors/x-ndjson.interceptor.d.ts +0 -2
- package/interfaces/context-menu-item.d.ts +0 -7
- package/interfaces/error-notification-service.d.ts +0 -3
- package/interfaces/error-stategy.d.ts +0 -3
- package/interfaces/image.d.ts +0 -5
- package/interfaces/index.d.ts +0 -5
- package/interfaces/option.d.ts +0 -5
- package/operators/handle-error.d.ts +0 -2
- package/operators/index.d.ts +0 -1
- package/providers/auth.options.d.ts +0 -15
- package/providers/auth.provider.d.ts +0 -3
- package/providers/error-handler.options.d.ts +0 -6
- package/providers/error-handler.provider.d.ts +0 -3
- package/providers/index.d.ts +0 -4
- package/services/auth.service.d.ts +0 -8
- package/services/browser-auth.service.d.ts +0 -10
- package/services/error-resolver-factory.service.d.ts +0 -10
- package/services/global-handler-error.service.d.ts +0 -10
- package/services/index.d.ts +0 -9
- package/services/loader.options.d.ts +0 -7
- package/services/loader.service.d.ts +0 -21
- package/services/mobile-auth.service.d.ts +0 -8
- package/services/position.service.d.ts +0 -10
- package/services/theme.options.d.ts +0 -5
- package/services/theme.service.d.ts +0 -12
- package/services/token.options.d.ts +0 -31
- package/services/token.service.d.ts +0 -26
- package/services/visual-viewport.service.d.ts +0 -9
- package/styles/direcive/flex-container.scss +0 -3
- package/styles/fonts.scss +0 -69
- package/styles/global.scss +0 -10
- package/styles/mixins/buttons.scss +0 -13
- package/styles/mixins/flex.scss +0 -21
- package/styles/mixins/headings.scss +0 -115
- package/styles/mixins/inputs.scss +0 -91
- package/styles/mixins/lists.scss +0 -41
- package/styles/mixins/paddings.scss +0 -35
- package/styles/mixins/shadows.scss +0 -42
- package/styles/mixins/texts.scss +0 -224
- package/styles/reset.scss +0 -111
- package/styles/theme.scss +0 -427
- package/styles/variables/colors.scss +0 -288
- package/styles/variables/fonts.scss +0 -2
- package/tokens/animations-speed.d.ts +0 -4
- package/tokens/error-notification-service.d.ts +0 -3
- package/tokens/error-translation-prefix.d.ts +0 -2
- package/tokens/index.d.ts +0 -5
- package/tokens/reduced-motion.d.ts +0 -1
- package/tokens/viewport.d.ts +0 -7
- package/types/appearance.d.ts +0 -11
- package/types/button-theme.d.ts +0 -5
- package/types/hint-type.d.ts +0 -1
- package/types/index.d.ts +0 -10
- package/types/point.d.ts +0 -1
- package/types/portal-item.d.ts +0 -9
- package/types/position.d.ts +0 -2
- package/types/resizing.d.ts +0 -3
- package/types/shape.d.ts +0 -1
- package/types/size.d.ts +0 -6
- package/types/status.d.ts +0 -1
- package/utils/check-fixed-position.d.ts +0 -1
- package/utils/default-validators/create-default-validators.d.ts +0 -5
- package/utils/default-validators/create-default-validators.options.d.ts +0 -5
- package/utils/default-validators/extra-spaces.options.d.ts +0 -2
- package/utils/default-validators/extra-spaces.validators.d.ts +0 -3
- package/utils/default-validators/index.d.ts +0 -2
- package/utils/format/index.d.ts +0 -2
- package/utils/format/remove-spaces.d.ts +0 -1
- package/utils/format/replace.d.ts +0 -1
- package/utils/index.d.ts +0 -4
- package/utils/miscellaneous/index.d.ts +0 -3
- package/utils/miscellaneous/is-obscured.d.ts +0 -4
- package/utils/miscellaneous/override-options.d.ts +0 -1
- package/utils/miscellaneous/to-animation-options.d.ts +0 -4
- package/widgets/assets/constants/index.d.ts +0 -1
- package/widgets/assets/constants/translations.d.ts +0 -2
- package/widgets/assets/index.d.ts +0 -1
- package/widgets/index.d.ts +0 -4
- package/widgets/model/circle-loader-size.type.d.ts +0 -2
- package/widgets/model/index.d.ts +0 -10
- package/widgets/model/resource-state-service.interface.d.ts +0 -4
- package/widgets/model/resource-state-service.token.d.ts +0 -3
- package/widgets/model/resources-block.options.d.ts +0 -15
- package/widgets/model/subject-modal-service.interface.d.ts +0 -7
- package/widgets/model/subject-modal-service.token.d.ts +0 -3
- package/widgets/model/used-elements-service.interface.d.ts +0 -5
- package/widgets/model/used-elements-service.token.d.ts +0 -3
- package/widgets/model/utility-service.interface.d.ts +0 -23
- package/widgets/model/utility-service.token.d.ts +0 -3
- package/widgets/service/index.d.ts +0 -4
- package/widgets/service/resource-state-base.service.d.ts +0 -10
- package/widgets/service/subject-modal-base.service.d.ts +0 -11
- package/widgets/service/used-elements-base.service.d.ts +0 -11
- package/widgets/service/utility-base.service.d.ts +0 -29
- package/widgets/ui/assignee-role-item/assignee-role-item.component.d.ts +0 -12
- package/widgets/ui/assignee-role-item/index.d.ts +0 -1
- package/widgets/ui/assignee-roles-tabs/assignee-roles-tabs.component.d.ts +0 -18
- package/widgets/ui/assignee-roles-tabs/index.d.ts +0 -1
- package/widgets/ui/button-change-theme/button-change-theme.component.d.ts +0 -9
- package/widgets/ui/button-change-theme/index.d.ts +0 -1
- package/widgets/ui/categories/categories.component.d.ts +0 -25
- package/widgets/ui/categories/components/categories-list/categories-list.component.d.ts +0 -8
- package/widgets/ui/categories/components/categories-list/index.d.ts +0 -1
- package/widgets/ui/categories/components/category-form/category-form.component.d.ts +0 -28
- package/widgets/ui/categories/components/category-form/index.d.ts +0 -1
- package/widgets/ui/categories/components/category-item/category-item.component.d.ts +0 -42
- package/widgets/ui/categories/components/category-item/index.d.ts +0 -1
- package/widgets/ui/categories/components/create-category-item/create-category-item.component.d.ts +0 -10
- package/widgets/ui/categories/components/create-category-item/index.d.ts +0 -1
- package/widgets/ui/categories/components/index.d.ts +0 -2
- package/widgets/ui/categories/index.d.ts +0 -2
- package/widgets/ui/categories/services/index.d.ts +0 -1
- package/widgets/ui/categories/services/selected-category.service.d.ts +0 -18
- package/widgets/ui/checklist-block/checklist-block.component.d.ts +0 -21
- package/widgets/ui/checklist-block/checklist-block.options.d.ts +0 -12
- package/widgets/ui/checklist-block/components/checklist-block-list/checklist-block-list.component.d.ts +0 -27
- package/widgets/ui/checklist-block/components/checklist-block-list/index.d.ts +0 -1
- package/widgets/ui/checklist-block/components/checklist-block-list-item-action-card/checklist-block-list-item-action-card.component.d.ts +0 -30
- package/widgets/ui/checklist-block/components/checklist-block-list-item-action-card/index.d.ts +0 -1
- package/widgets/ui/checklist-block/components/checklist-block-list-item-action-with-verification/checklist-block-list-item-action-with-verification.component.d.ts +0 -11
- package/widgets/ui/checklist-block/components/checklist-block-list-item-action-with-verification/index.d.ts +0 -1
- package/widgets/ui/checklist-block/components/checklist-block-list-item-action-without-verification/checklist-block-list-item-action-without-verification.component.d.ts +0 -10
- package/widgets/ui/checklist-block/components/checklist-block-list-item-action-without-verification/index.d.ts +0 -1
- package/widgets/ui/checklist-block/components/checklist-block-list-item-container/checklist-block-list-item-container.component.d.ts +0 -41
- package/widgets/ui/checklist-block/components/checklist-block-list-item-container/checklist-block-list-item-container.options.d.ts +0 -5
- package/widgets/ui/checklist-block/components/checklist-block-list-item-container/index.d.ts +0 -1
- package/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/checklist-block-list-item-evaluation.component.d.ts +0 -51
- package/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/checklist-block-list-item-evaluation.options.d.ts +0 -14
- package/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/index.d.ts +0 -2
- package/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/checklist-block-list-item-evaluation-criteria.component.d.ts +0 -33
- package/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/checklist-block-list-item-evaluation-criteria.options.d.ts +0 -4
- package/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/index.d.ts +0 -1
- package/widgets/ui/checklist-block/components/checklist-block-title-control/checklist-block-title-control.component.d.ts +0 -8
- package/widgets/ui/checklist-block/components/checklist-block-title-control/index.d.ts +0 -1
- package/widgets/ui/checklist-block/components/index.d.ts +0 -1
- package/widgets/ui/checklist-block/index.d.ts +0 -1
- package/widgets/ui/checklist-block/services/checklist-block.service.d.ts +0 -19
- package/widgets/ui/checklist-block/services/index.d.ts +0 -1
- package/widgets/ui/circle-loader/circle-loader.component.d.ts +0 -8
- package/widgets/ui/circle-loader/index.d.ts +0 -1
- package/widgets/ui/consumable-form/components/consumable-form-item/consumable-form-item.component.d.ts +0 -31
- package/widgets/ui/consumable-form/components/consumable-form-item/default-control-delay.d.ts +0 -1
- package/widgets/ui/consumable-form/components/consumable-form-item/index.d.ts +0 -2
- package/widgets/ui/consumable-form/components/consumable-form-item-readonly/consumable-form-item-readonly.component.d.ts +0 -8
- package/widgets/ui/consumable-form/components/consumable-form-item-readonly/index.d.ts +0 -1
- package/widgets/ui/consumable-form/components/index.d.ts +0 -3
- package/widgets/ui/consumable-form/consumable-form.component.d.ts +0 -46
- package/widgets/ui/consumable-form/consumable-form.options.d.ts +0 -22
- package/widgets/ui/consumable-form/index.d.ts +0 -1
- package/widgets/ui/criterion-info/criterion-info.component.d.ts +0 -43
- package/widgets/ui/criterion-info/index.d.ts +0 -1
- package/widgets/ui/criterion-info-form/criterion-info-form.component.d.ts +0 -39
- package/widgets/ui/criterion-info-form/criterion-info-form.options.d.ts +0 -7
- package/widgets/ui/criterion-info-form/index.d.ts +0 -2
- package/widgets/ui/criterion-readonly-info/criterion-readonly-info.component.d.ts +0 -26
- package/widgets/ui/criterion-readonly-info/index.d.ts +0 -1
- package/widgets/ui/delete-modal/delete-modal.component.d.ts +0 -13
- package/widgets/ui/delete-modal/delete-modal.options.d.ts +0 -7
- package/widgets/ui/delete-modal/index.d.ts +0 -2
- package/widgets/ui/framer-preview/framer-preview.component.d.ts +0 -26
- package/widgets/ui/framer-preview/framer-preview.options.d.ts +0 -5
- package/widgets/ui/framer-preview/index.d.ts +0 -2
- package/widgets/ui/general-control-error-hint/general-control-error-hint.component.d.ts +0 -9
- package/widgets/ui/general-control-error-hint/index.d.ts +0 -1
- package/widgets/ui/index.d.ts +0 -29
- package/widgets/ui/inserted/index.d.ts +0 -1
- package/widgets/ui/inserted/inserted.component.d.ts +0 -5
- package/widgets/ui/instruction-info/index.d.ts +0 -1
- package/widgets/ui/instruction-info/instruction-info.component.d.ts +0 -45
- package/widgets/ui/instruction-info-form/index.d.ts +0 -2
- package/widgets/ui/instruction-info-form/instruction-info-form.component.d.ts +0 -43
- package/widgets/ui/instruction-info-form/instruction-info-form.options.d.ts +0 -9
- package/widgets/ui/instruction-readonly-info/index.d.ts +0 -1
- package/widgets/ui/instruction-readonly-info/instruction-readonly-info.component.d.ts +0 -26
- package/widgets/ui/linear-loader/index.d.ts +0 -1
- package/widgets/ui/linear-loader/linear-loader.component.d.ts +0 -5
- package/widgets/ui/modal-criteria-tab/index.d.ts +0 -1
- package/widgets/ui/modal-criteria-tab/modal-criteria-tab.component.d.ts +0 -15
- package/widgets/ui/modal-divided-section/index.d.ts +0 -2
- package/widgets/ui/modal-divided-section/modal-divided-section.component.d.ts +0 -22
- package/widgets/ui/modal-divided-section/modal-divided-section.interfaces.d.ts +0 -6
- package/widgets/ui/modal-header/index.d.ts +0 -1
- package/widgets/ui/modal-header/modal-header.component.d.ts +0 -12
- package/widgets/ui/modal-header-inserted-buttons/index.d.ts +0 -1
- package/widgets/ui/modal-header-inserted-buttons/modal-header-inserted-buttons.component.d.ts +0 -7
- package/widgets/ui/modal-header-tabs/index.d.ts +0 -1
- package/widgets/ui/modal-header-tabs/modal-header-tabs.component.d.ts +0 -8
- package/widgets/ui/modal-info-tab/index.d.ts +0 -2
- package/widgets/ui/modal-info-tab/modal-info-tab.component.d.ts +0 -8
- package/widgets/ui/modal-info-tab/modal-info-tab.options.d.ts +0 -4
- package/widgets/ui/modal-instructions-tab/index.d.ts +0 -1
- package/widgets/ui/modal-instructions-tab/modal-instructions-tab.component.d.ts +0 -15
- package/widgets/ui/modal-operation-part/index.d.ts +0 -1
- package/widgets/ui/modal-operation-part/modal-operation-part.component.d.ts +0 -26
- package/widgets/ui/modal-resources-tab/index.d.ts +0 -1
- package/widgets/ui/modal-resources-tab/modal-resources-tab.component.d.ts +0 -14
- package/widgets/ui/render-dynamic-modal/index.d.ts +0 -2
- package/widgets/ui/render-dynamic-modal/render-dynamic-modal.component.d.ts +0 -11
- package/widgets/ui/render-dynamic-modal/render-dynamic-modal.option.d.ts +0 -5
- package/widgets/ui/resources-block/components/index.d.ts +0 -5
- package/widgets/ui/resources-block/components/resources-block-consumables/index.d.ts +0 -2
- package/widgets/ui/resources-block/components/resources-block-consumables/resources-block-consumables.component.d.ts +0 -17
- package/widgets/ui/resources-block/components/resources-block-consumables/resources-block-consumables.options.d.ts +0 -7
- package/widgets/ui/resources-block/components/resources-block-content/index.d.ts +0 -1
- package/widgets/ui/resources-block/components/resources-block-content/resources-block-content.component.d.ts +0 -19
- package/widgets/ui/resources-block/components/resources-block-part/index.d.ts +0 -1
- package/widgets/ui/resources-block/components/resources-block-part/resources-block-part.component.d.ts +0 -19
- package/widgets/ui/resources-block/components/resources-block-part/resources-block-part.options.d.ts +0 -5
- package/widgets/ui/resources-block/components/resources-block-tabs/index.d.ts +0 -1
- package/widgets/ui/resources-block/components/resources-block-tabs/resources-block-tabs.component.d.ts +0 -28
- package/widgets/ui/resources-block/components/resources-block-tabs/resources-block-tabs.options.d.ts +0 -13
- package/widgets/ui/resources-block/components/resources-block-toolbox/index.d.ts +0 -2
- package/widgets/ui/resources-block/components/resources-block-toolbox/resources-block-toolbox.component.d.ts +0 -17
- package/widgets/ui/resources-block/components/resources-block-toolbox/resources-block-toolbox.options.d.ts +0 -5
- package/widgets/ui/resources-block/components/resources-options/index.d.ts +0 -1
- package/widgets/ui/resources-block/components/resources-options/resources-options.component.d.ts +0 -20
- package/widgets/ui/resources-block/index.d.ts +0 -2
- package/widgets/ui/resources-block/resources-block.component.d.ts +0 -35
- package/widgets/ui/resources-block-tabs/index.d.ts +0 -1
- package/widgets/ui/resources-block-tabs/resources-block-tabs.component.d.ts +0 -28
- package/widgets/ui/resources-block-tabs/resources-block-tabs.options.d.ts +0 -14
- package/widgets/ui/select-modal/components/index.d.ts +0 -2
- package/widgets/ui/select-modal/components/select-modal-folder/index.d.ts +0 -1
- package/widgets/ui/select-modal/components/select-modal-folder/select-modal-folder.component.d.ts +0 -10
- package/widgets/ui/select-modal/components/select-modal-search/index.d.ts +0 -1
- package/widgets/ui/select-modal/components/select-modal-search/select-modal-search.component.d.ts +0 -12
- package/widgets/ui/select-modal/index.d.ts +0 -4
- package/widgets/ui/select-modal/select-modal.component.d.ts +0 -13
- package/widgets/ui/select-modal/select-modal.interfaces.d.ts +0 -15
- package/widgets/ui/select-modal/select-modal.service.d.ts +0 -13
- package/widgets/ui/stated-loader/index.d.ts +0 -1
- package/widgets/ui/stated-loader/stated-loader.component.d.ts +0 -20
- package/widgets/ui/storage-list/components/index.d.ts +0 -1
- package/widgets/ui/storage-list/components/storage-list-item/index.d.ts +0 -1
- package/widgets/ui/storage-list/components/storage-list-item/storage-list-item.component.d.ts +0 -24
- package/widgets/ui/storage-list/index.d.ts +0 -2
- package/widgets/ui/storage-list/storage-list.component.d.ts +0 -10
- package/widgets/ui/storage-list/storage-list.options.d.ts +0 -16
- package/widgets/ui/toolbox-form/components/index.d.ts +0 -1
- package/widgets/ui/toolbox-form/components/tool-form-readonly/index.d.ts +0 -1
- package/widgets/ui/toolbox-form/components/tool-form-readonly/tool-form-readonly.component.d.ts +0 -7
- package/widgets/ui/toolbox-form/index.d.ts +0 -2
- package/widgets/ui/toolbox-form/tool-form.component.d.ts +0 -34
- package/widgets/ui/toolbox-form/tool-form.options.d.ts +0 -5
- package/widgets/ui/user-action-context-menu/activity-item/activity-item.component.d.ts +0 -16
- package/widgets/ui/user-action-context-menu/activity-item/index.d.ts +0 -1
- package/widgets/ui/user-action-context-menu/company-item/company-item.component.d.ts +0 -20
- package/widgets/ui/user-action-context-menu/company-item/index.d.ts +0 -1
- package/widgets/ui/user-action-context-menu/index.d.ts +0 -3
- package/widgets/ui/user-action-context-menu/services/activity-base.service.d.ts +0 -14
- package/widgets/ui/user-action-context-menu/services/activity.service.d.ts +0 -14
- package/widgets/ui/user-action-context-menu/services/index.d.ts +0 -2
- package/widgets/ui/user-action-context-menu/user-action-context-menu.component.d.ts +0 -25
- package/widgets/ui/user-action-context-menu/user-action-context.option.d.ts +0 -15
- package/widgets/ui/utility-info-readonly/index.d.ts +0 -2
- package/widgets/ui/utility-info-readonly/utility-info-readonly.component.d.ts +0 -29
- package/widgets/ui/utility-info-readonly/utility-info-readonly.options.d.ts +0 -4
- package/widgets/ui/utility-modal/components/criterion-modal-create/criterion-modal-create.component.d.ts +0 -18
- package/widgets/ui/utility-modal/components/criterion-modal-create/index.d.ts +0 -1
- package/widgets/ui/utility-modal/components/index.d.ts +0 -4
- package/widgets/ui/utility-modal/components/instruction-modal-create/index.d.ts +0 -1
- package/widgets/ui/utility-modal/components/instruction-modal-create/instruction-modal-create.component.d.ts +0 -18
- package/widgets/ui/utility-modal/components/readonly-criterion-modal/index.d.ts +0 -1
- package/widgets/ui/utility-modal/components/readonly-criterion-modal/readonly-criterion-modal.component.d.ts +0 -16
- package/widgets/ui/utility-modal/components/readonly-instruction-modal/index.d.ts +0 -1
- package/widgets/ui/utility-modal/components/readonly-instruction-modal/readonly-instruction-modal.component.d.ts +0 -16
- package/widgets/ui/utility-modal/components/readonly-utility-modal/index.d.ts +0 -1
- package/widgets/ui/utility-modal/components/readonly-utility-modal/readonly-utility-modal.component.d.ts +0 -18
- package/widgets/ui/utility-modal/components/utility-modal-create/index.d.ts +0 -1
- package/widgets/ui/utility-modal/components/utility-modal-create/utility-modal-create.component.d.ts +0 -25
- package/widgets/ui/utility-modal/index.d.ts +0 -3
- package/widgets/ui/utility-modal/utility-modal.component.d.ts +0 -10
- package/widgets/ui/utility-modal/utility-modal.options.d.ts +0 -12
- package/widgets/ui/utility-readonly-thumbnail/index.d.ts +0 -1
- package/widgets/ui/utility-readonly-thumbnail/utility-readonly-thumbnail.component.d.ts +0 -8
- package/widgets/ui/utility-thumbnail/index.d.ts +0 -1
- package/widgets/ui/utility-thumbnail/utility-thumbnail.component.d.ts +0 -21
|
@@ -1,380 +0,0 @@
|
|
|
1
|
-
import { COMBINED_TEXT_BLOCK, COMBINED_TEXT_BLOCK_ADDED, COMBINED_TEXT_BLOCK_NAME, COMBINED_TEXT_BLOCK_PART, COMBINED_TEXT_BLOCK_REMOVED, COMBINED_TEXT_BLOCK_UPDATED, DEFAULT_PLACEHOLDER, DEFAULT_READONLY_PLACEHOLDER, SPLIT_MAX_LENGTH } from '../constants';
|
|
2
|
-
import { recalculateIndexes, splitHTML, generateId } from '../utils';
|
|
3
|
-
export class CuiCombinedTextBlockTool {
|
|
4
|
-
constructor(options) {
|
|
5
|
-
this.TAG = 'span';
|
|
6
|
-
this.DEBOUNCE_TIME = 350;
|
|
7
|
-
this.MAX_CHILD_COUNT_FOR_EMPTY = 1;
|
|
8
|
-
this.PLACEHOLDER_ATTRIBUTE_NAME = 'placeholderActive';
|
|
9
|
-
this.mutationConfig = {
|
|
10
|
-
subtree: true,
|
|
11
|
-
childList: true,
|
|
12
|
-
characterData: true
|
|
13
|
-
};
|
|
14
|
-
this.changes = new Map();
|
|
15
|
-
this.getMutationCallback = (wait) => {
|
|
16
|
-
let timeoutId = null;
|
|
17
|
-
return () => {
|
|
18
|
-
if (timeoutId) {
|
|
19
|
-
clearTimeout(timeoutId);
|
|
20
|
-
}
|
|
21
|
-
timeoutId = setTimeout(() => this.handleMutations(), wait);
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
const body = options;
|
|
25
|
-
const data = body.data;
|
|
26
|
-
this.readOnly = body.readOnly;
|
|
27
|
-
this.placeholder = this.getPlaceholder(body.config);
|
|
28
|
-
this.api = body.api;
|
|
29
|
-
this.data = {
|
|
30
|
-
id: data.id || generateId(),
|
|
31
|
-
textBlocks: data.textBlocks || []
|
|
32
|
-
};
|
|
33
|
-
this.convertDefaultDataToCustom(data);
|
|
34
|
-
}
|
|
35
|
-
static get isInline() {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
static get isReadOnlySupported() {
|
|
39
|
-
return true;
|
|
40
|
-
}
|
|
41
|
-
static get enableLineBreaks() {
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
static get toolbox() {
|
|
45
|
-
return {
|
|
46
|
-
icon: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24"><path stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M8 9V7.2C8 7.08954 8.08954 7 8.2 7L12 7M16 9V7.2C16 7.08954 15.9105 7 15.8 7L12 7M12 7L12 17M12 17H10M12 17H14"></path></svg>',
|
|
47
|
-
title: 'Text'
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
static get pasteConfig() {
|
|
51
|
-
return {
|
|
52
|
-
tags: ['P']
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
onPaste(event) {
|
|
56
|
-
if (event.type !== 'tag') {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
const text = event.detail.data.textContent;
|
|
60
|
-
this.data.textBlocks.splice(this.data.textBlocks.length - 1, 1, this.getBlockPartObject(generateId(), text));
|
|
61
|
-
this.update(this.data.textBlocks);
|
|
62
|
-
}
|
|
63
|
-
render() {
|
|
64
|
-
this.wrapper = document.createElement('div');
|
|
65
|
-
this.wrapper.classList.add(COMBINED_TEXT_BLOCK);
|
|
66
|
-
this.wrapper.dataset[this.PLACEHOLDER_ATTRIBUTE_NAME] = this.api.i18n.t(this.placeholder);
|
|
67
|
-
if (!this.readOnly) {
|
|
68
|
-
this.wrapper.contentEditable = 'true';
|
|
69
|
-
}
|
|
70
|
-
if (!this.data.textBlocks.length) {
|
|
71
|
-
this.data.textBlocks.push(this.getBlockPartObject(generateId(), ''));
|
|
72
|
-
}
|
|
73
|
-
this.update(this.data.textBlocks);
|
|
74
|
-
this.checkIsEditorEmpty();
|
|
75
|
-
if (!this.readOnly) {
|
|
76
|
-
const callback = this.getMutationCallback(this.DEBOUNCE_TIME);
|
|
77
|
-
this.observer = new MutationObserver(this.onMutationEvent.bind(this, callback));
|
|
78
|
-
this.observer.observe(this.wrapper, this.mutationConfig);
|
|
79
|
-
}
|
|
80
|
-
return this.wrapper;
|
|
81
|
-
}
|
|
82
|
-
merge(blocksData) {
|
|
83
|
-
if (!this.wrapper) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
let blocksTextContent = '';
|
|
87
|
-
this.data.textBlocks = [];
|
|
88
|
-
blocksData.forEach((block) => {
|
|
89
|
-
blocksTextContent += block.data.text;
|
|
90
|
-
});
|
|
91
|
-
for (let i = 0; i < this.wrapper.childNodes.length; i++) {
|
|
92
|
-
const node = this.wrapper.childNodes.item(i);
|
|
93
|
-
if (!(node instanceof HTMLSpanElement)) {
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
i--;
|
|
97
|
-
blocksTextContent = node.innerHTML + blocksTextContent;
|
|
98
|
-
node.remove();
|
|
99
|
-
}
|
|
100
|
-
const parts = blocksTextContent.length < SPLIT_MAX_LENGTH ? [blocksTextContent] : splitHTML(blocksTextContent);
|
|
101
|
-
parts.forEach((part) => {
|
|
102
|
-
const blockObject = this.getBlockPartObject(generateId(), part);
|
|
103
|
-
this.data.textBlocks.push(blockObject);
|
|
104
|
-
});
|
|
105
|
-
this.update(this.data.textBlocks);
|
|
106
|
-
}
|
|
107
|
-
save(blockContent) {
|
|
108
|
-
const textBlocks = [];
|
|
109
|
-
blockContent.querySelectorAll(this.TAG).forEach((span) => {
|
|
110
|
-
textBlocks.push(this.getBlockPartObject(span.dataset['id'], span.innerHTML));
|
|
111
|
-
});
|
|
112
|
-
return textBlocks;
|
|
113
|
-
}
|
|
114
|
-
removed() {
|
|
115
|
-
this.observer?.disconnect();
|
|
116
|
-
const blockIds = new Set();
|
|
117
|
-
this.data.textBlocks.forEach((block) => {
|
|
118
|
-
blockIds.add(block.id || '');
|
|
119
|
-
});
|
|
120
|
-
this.removeBlocks(blockIds);
|
|
121
|
-
}
|
|
122
|
-
onMutationEvent(callback, mutationList) {
|
|
123
|
-
if (mutationList.length === 0) {
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
mutationList.forEach((mutation) => {
|
|
127
|
-
if (mutation.removedNodes.length) {
|
|
128
|
-
this.changes.set(generateId(), mutation);
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
this.changes.set(mutation.target, mutation);
|
|
132
|
-
});
|
|
133
|
-
callback(mutationList);
|
|
134
|
-
this.checkIsEditorEmpty();
|
|
135
|
-
}
|
|
136
|
-
handleMutations() {
|
|
137
|
-
const mutationsList = [...this.changes.values()];
|
|
138
|
-
const { updatedElements, removedElementsIds } = this.getMutationActions(mutationsList);
|
|
139
|
-
const splitedParts = [];
|
|
140
|
-
updatedElements.forEach((element) => {
|
|
141
|
-
const elementContent = element.innerHTML;
|
|
142
|
-
if (elementContent.length < SPLIT_MAX_LENGTH) {
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
const parts = splitHTML(elementContent);
|
|
146
|
-
parts.forEach((part, index) => {
|
|
147
|
-
if (index === 0) {
|
|
148
|
-
return;
|
|
149
|
-
}
|
|
150
|
-
const blockId = generateId();
|
|
151
|
-
const textElement = this.createBlock(blockId, part);
|
|
152
|
-
splitedParts.push(textElement);
|
|
153
|
-
});
|
|
154
|
-
element.innerHTML = parts[0];
|
|
155
|
-
element.after(...splitedParts);
|
|
156
|
-
});
|
|
157
|
-
this.addBlocks(splitedParts, updatedElements);
|
|
158
|
-
this.updateBlocks(updatedElements);
|
|
159
|
-
this.removeBlocks(removedElementsIds);
|
|
160
|
-
this.changes.clear();
|
|
161
|
-
}
|
|
162
|
-
getNextIndex() {
|
|
163
|
-
recalculateIndexes(this.api.blocks);
|
|
164
|
-
const index = this.api.blocks.getCurrentBlockIndex();
|
|
165
|
-
const block = this.api.blocks.getBlockByIndex(index);
|
|
166
|
-
const dataIndex = Number(block?.holder.dataset['index']);
|
|
167
|
-
const selection = window.getSelection();
|
|
168
|
-
const range = selection?.rangeCount ? selection.getRangeAt(0) : null;
|
|
169
|
-
const caretPosition = range?.startOffset ?? 1;
|
|
170
|
-
let nextBlockIndex = dataIndex;
|
|
171
|
-
if (caretPosition !== 0) {
|
|
172
|
-
const blockContainer = block?.holder.querySelector('.' + COMBINED_TEXT_BLOCK);
|
|
173
|
-
const childrenCount = blockContainer?.children?.length ? blockContainer?.children?.length - 1 : 0;
|
|
174
|
-
nextBlockIndex = dataIndex + childrenCount + 1;
|
|
175
|
-
}
|
|
176
|
-
if (!nextBlockIndex) {
|
|
177
|
-
nextBlockIndex ||= 0;
|
|
178
|
-
}
|
|
179
|
-
return nextBlockIndex;
|
|
180
|
-
}
|
|
181
|
-
getBlockPartObject(blockId, text) {
|
|
182
|
-
return {
|
|
183
|
-
id: blockId,
|
|
184
|
-
type: COMBINED_TEXT_BLOCK_PART,
|
|
185
|
-
data: {
|
|
186
|
-
text,
|
|
187
|
-
parentId: this.data.id,
|
|
188
|
-
parentType: COMBINED_TEXT_BLOCK_NAME
|
|
189
|
-
}
|
|
190
|
-
};
|
|
191
|
-
}
|
|
192
|
-
getMutationActions(mutationList) {
|
|
193
|
-
const updatedElements = new Set();
|
|
194
|
-
const removedElementsIds = new Set();
|
|
195
|
-
const changedOutsideElements = [];
|
|
196
|
-
this.lastBlockElement = undefined;
|
|
197
|
-
mutationList.forEach((mutation) => {
|
|
198
|
-
this.handleUpdatedBlocks(mutation, updatedElements, changedOutsideElements);
|
|
199
|
-
this.handleRemovedBlocks(mutation, removedElementsIds);
|
|
200
|
-
});
|
|
201
|
-
if (this.lastBlockElement) {
|
|
202
|
-
const lastBlockElement = this.lastBlockElement;
|
|
203
|
-
lastBlockElement.append(...changedOutsideElements);
|
|
204
|
-
this.setCaretToBlocksEnd(lastBlockElement);
|
|
205
|
-
}
|
|
206
|
-
return {
|
|
207
|
-
updatedElements,
|
|
208
|
-
removedElementsIds
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
setCaretToBlocksEnd(block) {
|
|
212
|
-
const selection = window.getSelection();
|
|
213
|
-
const range = document.createRange();
|
|
214
|
-
range.setStart(block, block.childNodes.length);
|
|
215
|
-
selection?.removeAllRanges();
|
|
216
|
-
selection?.addRange(range);
|
|
217
|
-
}
|
|
218
|
-
handleUpdatedBlocks(mutation, updatedElements, outsideChanges) {
|
|
219
|
-
let element = mutation.target;
|
|
220
|
-
if (mutation.target.nodeType === Node.TEXT_NODE) {
|
|
221
|
-
element = mutation.target.parentElement;
|
|
222
|
-
}
|
|
223
|
-
const span = element?.closest('.' + COMBINED_TEXT_BLOCK_PART);
|
|
224
|
-
if (span) {
|
|
225
|
-
updatedElements.add(span);
|
|
226
|
-
return;
|
|
227
|
-
}
|
|
228
|
-
this.handleChangesOutsideBlock(element, outsideChanges);
|
|
229
|
-
}
|
|
230
|
-
handleChangesOutsideBlock(element, outsideChanges) {
|
|
231
|
-
if (!element || this.lastBlockElement) {
|
|
232
|
-
return;
|
|
233
|
-
}
|
|
234
|
-
element.childNodes.forEach((block) => {
|
|
235
|
-
const blockElement = block;
|
|
236
|
-
if (blockElement.classList?.contains(COMBINED_TEXT_BLOCK_PART)) {
|
|
237
|
-
this.lastBlockElement = blockElement;
|
|
238
|
-
return;
|
|
239
|
-
}
|
|
240
|
-
outsideChanges.push(block);
|
|
241
|
-
});
|
|
242
|
-
}
|
|
243
|
-
addBlocks(splicedParts, updatedElements) {
|
|
244
|
-
if (!splicedParts.length) {
|
|
245
|
-
return;
|
|
246
|
-
}
|
|
247
|
-
const addedBlocks = splicedParts.map((block) => {
|
|
248
|
-
const blockId = block.dataset['id'];
|
|
249
|
-
return {
|
|
250
|
-
id: blockId,
|
|
251
|
-
type: COMBINED_TEXT_BLOCK_PART,
|
|
252
|
-
data: {
|
|
253
|
-
text: block.innerHTML,
|
|
254
|
-
parentId: this.data.id,
|
|
255
|
-
parentType: COMBINED_TEXT_BLOCK_NAME
|
|
256
|
-
}
|
|
257
|
-
};
|
|
258
|
-
});
|
|
259
|
-
const previousElement = updatedElements.values().next().value;
|
|
260
|
-
const id = previousElement?.dataset['id'];
|
|
261
|
-
const index = Number(previousElement?.dataset['index']) + 1;
|
|
262
|
-
const blockIndex = this.data.textBlocks.findIndex((block) => block.id === id);
|
|
263
|
-
this.data.textBlocks.splice(blockIndex, 0, ...addedBlocks);
|
|
264
|
-
this.api.events.emit(COMBINED_TEXT_BLOCK_ADDED, {
|
|
265
|
-
index,
|
|
266
|
-
blockIndex,
|
|
267
|
-
blocks: addedBlocks,
|
|
268
|
-
data: this.data.textBlocks
|
|
269
|
-
});
|
|
270
|
-
}
|
|
271
|
-
updateBlocks(updatedElements) {
|
|
272
|
-
if (!updatedElements.size) {
|
|
273
|
-
return;
|
|
274
|
-
}
|
|
275
|
-
const updatedBlocks = [...updatedElements.values()].map((block) => {
|
|
276
|
-
return {
|
|
277
|
-
id: block.dataset['id'],
|
|
278
|
-
type: COMBINED_TEXT_BLOCK_PART,
|
|
279
|
-
data: {
|
|
280
|
-
text: block.innerHTML,
|
|
281
|
-
parentId: this.data.id,
|
|
282
|
-
parentType: COMBINED_TEXT_BLOCK_NAME
|
|
283
|
-
}
|
|
284
|
-
};
|
|
285
|
-
});
|
|
286
|
-
this.api.events.emit(COMBINED_TEXT_BLOCK_UPDATED, updatedBlocks);
|
|
287
|
-
}
|
|
288
|
-
handleRemovedBlocks(mutation, removedElementsIds) {
|
|
289
|
-
if (mutation.removedNodes.length === 0) {
|
|
290
|
-
return;
|
|
291
|
-
}
|
|
292
|
-
mutation.removedNodes.forEach((node) => {
|
|
293
|
-
if (!(node instanceof HTMLElement)) {
|
|
294
|
-
return;
|
|
295
|
-
}
|
|
296
|
-
const blockId = node.dataset['id'];
|
|
297
|
-
if (!blockId) {
|
|
298
|
-
return;
|
|
299
|
-
}
|
|
300
|
-
removedElementsIds.add(blockId);
|
|
301
|
-
});
|
|
302
|
-
}
|
|
303
|
-
removeBlocks(ids) {
|
|
304
|
-
if (!ids.size) {
|
|
305
|
-
return;
|
|
306
|
-
}
|
|
307
|
-
const removedElementIds = [...ids.values()];
|
|
308
|
-
this.data.textBlocks = this.data.textBlocks.filter((block) => !ids.has(block.id || ''));
|
|
309
|
-
this.api.events.emit(COMBINED_TEXT_BLOCK_REMOVED, removedElementIds);
|
|
310
|
-
}
|
|
311
|
-
update(blocks) {
|
|
312
|
-
if (!blocks.length) {
|
|
313
|
-
return;
|
|
314
|
-
}
|
|
315
|
-
blocks.forEach((block) => {
|
|
316
|
-
const textElement = this.createBlock(block.id || generateId(), block.data.text);
|
|
317
|
-
if (!this.wrapper) {
|
|
318
|
-
return;
|
|
319
|
-
}
|
|
320
|
-
if (this.wrapper.querySelector('.' + COMBINED_TEXT_BLOCK_PART)) {
|
|
321
|
-
this.wrapper.append(textElement);
|
|
322
|
-
return;
|
|
323
|
-
}
|
|
324
|
-
this.wrapper.replaceChildren(textElement);
|
|
325
|
-
});
|
|
326
|
-
setTimeout(() => {
|
|
327
|
-
this.api.events.emit(COMBINED_TEXT_BLOCK_ADDED, {
|
|
328
|
-
blocks
|
|
329
|
-
});
|
|
330
|
-
});
|
|
331
|
-
}
|
|
332
|
-
createBlock(id, text) {
|
|
333
|
-
const textElement = document.createElement(this.TAG);
|
|
334
|
-
textElement.classList.add(COMBINED_TEXT_BLOCK_PART);
|
|
335
|
-
textElement.innerHTML = text;
|
|
336
|
-
textElement.dataset['id'] = id;
|
|
337
|
-
return textElement;
|
|
338
|
-
}
|
|
339
|
-
convertDefaultDataToCustom(data) {
|
|
340
|
-
if (Array.isArray(data)) {
|
|
341
|
-
this.data.textBlocks = data.map((block) => {
|
|
342
|
-
block.id = generateId();
|
|
343
|
-
block.data.parentId = this.data.id;
|
|
344
|
-
return block;
|
|
345
|
-
});
|
|
346
|
-
}
|
|
347
|
-
if (!data.text) {
|
|
348
|
-
return;
|
|
349
|
-
}
|
|
350
|
-
const fragment = document.createRange().createContextualFragment(data.text);
|
|
351
|
-
let elementContent = '';
|
|
352
|
-
fragment.childNodes.forEach((node) => {
|
|
353
|
-
if (node.nodeType === Node.TEXT_NODE) {
|
|
354
|
-
elementContent += node.textContent;
|
|
355
|
-
return;
|
|
356
|
-
}
|
|
357
|
-
elementContent += node.innerHTML;
|
|
358
|
-
});
|
|
359
|
-
const parts = elementContent.length < SPLIT_MAX_LENGTH ? [elementContent] : splitHTML(elementContent);
|
|
360
|
-
parts.forEach((part) => {
|
|
361
|
-
const blockObject = this.getBlockPartObject(generateId(), part);
|
|
362
|
-
this.data.textBlocks.push(blockObject);
|
|
363
|
-
});
|
|
364
|
-
}
|
|
365
|
-
checkIsEditorEmpty() {
|
|
366
|
-
if (!this.wrapper || this.wrapper.children.length > this.MAX_CHILD_COUNT_FOR_EMPTY) {
|
|
367
|
-
return;
|
|
368
|
-
}
|
|
369
|
-
const item = this.wrapper.children.item(0);
|
|
370
|
-
const isItemEmpty = !item.textContent?.length;
|
|
371
|
-
this.wrapper.dataset['empty'] = `${isItemEmpty}`;
|
|
372
|
-
}
|
|
373
|
-
getPlaceholder(config) {
|
|
374
|
-
if (this.readOnly) {
|
|
375
|
-
return config.readonlyPlaceholder ?? DEFAULT_READONLY_PLACEHOLDER;
|
|
376
|
-
}
|
|
377
|
-
return config.placeholder ?? DEFAULT_PLACEHOLDER;
|
|
378
|
-
}
|
|
379
|
-
}
|
|
380
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZWQtdGV4dC1ibG9jay50b29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvdG9vbHMvY29tYmluZWQtdGV4dC1ibG9jay50b29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLHdCQUF3QixFQUN4Qix3QkFBd0IsRUFDeEIsMkJBQTJCLEVBQzNCLDJCQUEyQixFQUMzQixtQkFBbUIsRUFDbkIsNEJBQTRCLEVBQzVCLGdCQUFnQixFQUNuQixNQUFNLGNBQWMsQ0FBQztBQU90QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVyRSxNQUFNLE9BQU8sd0JBQXdCO0lBb0JqQyxZQUFZLE9BQWdCO1FBbkJYLFFBQUcsR0FBRyxNQUFNLENBQUM7UUFDYixrQkFBYSxHQUFHLEdBQUcsQ0FBQztRQUNwQiw4QkFBeUIsR0FBRyxDQUFDLENBQUM7UUFDOUIsK0JBQTBCLEdBQUcsbUJBQW1CLENBQUM7UUFFMUQsbUJBQWMsR0FBRztZQUNyQixPQUFPLEVBQUUsSUFBSTtZQUNiLFNBQVMsRUFBRSxJQUFJO1lBQ2YsYUFBYSxFQUFFLElBQUk7U0FDdEIsQ0FBQztRQVFNLFlBQU8sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBMkpwQix3QkFBbUIsR0FBRyxDQUFDLElBQVksRUFBdUIsRUFBRTtZQUNoRSxJQUFJLFNBQVMsR0FBK0MsSUFBSSxDQUFDO1lBRWpFLE9BQU8sR0FBRyxFQUFFO2dCQUNSLElBQUksU0FBUyxFQUFFLENBQUM7b0JBQ1osWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUM1QixDQUFDO2dCQUVELFNBQVMsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFD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RUFBRSxDQUFDO0lBQ3JELENBQUM7SUFFTyxjQUFjLENBQUMsTUFBa0I7UUFDckMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEIsT0FBTyxNQUFNLENBQUMsbUJBQW1CLElBQUksNEJBQTRCLENBQUM7UUFDdEUsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDLFdBQVcsSUFBSSxtQkFBbUIsQ0FBQztJQUNyRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEN1aU51bGxhYmxlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcbmltcG9ydCB0eXBlIHsgQVBJLCBCbG9ja1Rvb2wsIEJsb2NrVG9vbENvbnN0cnVjdG9yT3B0aW9ucywgVG9vbENvbmZpZyB9IGZyb20gJ0BlZGl0b3Jqcy9lZGl0b3Jqcyc7XG5cbmltcG9ydCB7XG4gICAgQ09NQklORURfVEVYVF9CTE9DSyxcbiAgICBDT01CSU5FRF9URVhUX0JMT0NLX0FEREVELFxuICAgIENPTUJJTkVEX1RFWFRfQkxPQ0tfTkFNRSxcbiAgICBDT01CSU5FRF9URVhUX0JMT0NLX1BBUlQsXG4gICAgQ09NQklORURfVEVYVF9CTE9DS19SRU1PVkVELFxuICAgIENPTUJJTkVEX1RFWFRfQkxPQ0tfVVBEQVRFRCxcbiAgICBERUZBVUxUX1BMQUNFSE9MREVSLFxuICAgIERFRkFVTFRfUkVBRE9OTFlfUExBQ0VIT0xERVIsXG4gICAgU1BMSVRfTUFYX0xFTkdUSFxufSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUge1xuICAgIEN1aUNvbWJpbmVkQmxvY2tUb29sRGF0YSxcbiAgICBDdWlDb21iaW5lZFBhcnRCbG9jayxcbiAgICBDdWlNdXRhdGlvbkFjdGlvbnMsXG4gICAgQ3VpTXV0YXRpb25DYWxsYmFja1xufSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IHJlY2FsY3VsYXRlSW5kZXhlcywgc3BsaXRIVE1MLCBnZW5lcmF0ZUlkIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgQ3VpQ29tYmluZWRUZXh0QmxvY2tUb29sIGltcGxlbWVudHMgQmxvY2tUb29sIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFRBRyA9ICdzcGFuJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IERFQk9VTkNFX1RJTUUgPSAzNTA7XG4gICAgcHJpdmF0ZSByZWFkb25seSBNQVhfQ0hJTERfQ09VTlRfRk9SX0VNUFRZID0gMTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFBMQUNFSE9MREVSX0FUVFJJQlVURV9OQU1FID0gJ3BsYWNlaG9sZGVyQWN0aXZlJztcblxuICAgIHByaXZhdGUgbXV0YXRpb25Db25maWcgPSB7XG4gICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgY2hhcmFjdGVyRGF0YTogdHJ1ZVxuICAgIH07XG4gICAgcHJpdmF0ZSBhcGk6IEFQSTtcbiAgICBwcml2YXRlIGRhdGE6IEN1aUNvbWJpbmVkQmxvY2tUb29sRGF0YTtcbiAgICBwcml2YXRlIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSB3cmFwcGVyPzogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBvYnNlcnZlcj86IE11dGF0aW9uT2JzZXJ2ZXI7XG4gICAgcHJpdmF0ZSBsYXN0QmxvY2tFbGVtZW50PzogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSByZWFkT25seT86IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBjaGFuZ2VzID0gbmV3IE1hcCgpO1xuXG4gICAgY29uc3RydWN0b3Iob3B0aW9uczogdW5rbm93bikge1xuICAgICAgICBjb25zdCBib2R5ID0gb3B0aW9ucyBhcyBCbG9ja1Rvb2xDb25zdHJ1Y3Rvck9wdGlvbnM7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBib2R5LmRhdGE7XG5cbiAgICAgICAgdGhpcy5yZWFkT25seSA9IGJvZHkucmVhZE9ubHk7XG4gICAgICAgIHRoaXMucGxhY2Vob2xkZXIgPSB0aGlzLmdldFBsYWNlaG9sZGVyKGJvZHkuY29uZmlnKTtcbiAgICAgICAgdGhpcy5hcGkgPSBib2R5LmFwaTtcbiAgICAgICAgdGhpcy5kYXRhID0ge1xuICAgICAgICAgICAgaWQ6IGRhdGEuaWQgfHwgZ2VuZXJhdGVJZCgpLFxuICAgICAgICAgICAgdGV4dEJsb2NrczogZGF0YS50ZXh0QmxvY2tzIHx8IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5jb252ZXJ0RGVmYXVsdERhdGFUb0N1c3RvbShkYXRhKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldCBpc0lubGluZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0IGlzUmVhZE9ubHlTdXBwb3J0ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0IGVuYWJsZUxpbmVCcmVha3MoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldCB0b29sYm94KCk6IHsgaWNvbjogc3RyaW5nOyB0aXRsZTogc3RyaW5nIH0ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWNvbjogJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIGZpbGw9XCJub25lXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiPjxwYXRoIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk04IDlWNy4yQzggNy4wODk1NCA4LjA4OTU0IDcgOC4yIDdMMTIgN00xNiA5VjcuMkMxNiA3LjA4OTU0IDE1LjkxMDUgNyAxNS44IDdMMTIgN00xMiA3TDEyIDE3TTEyIDE3SDEwTTEyIDE3SDE0XCI+PC9wYXRoPjwvc3ZnPicsXG4gICAgICAgICAgICB0aXRsZTogJ1RleHQnXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXQgcGFzdGVDb25maWcoKTogb2JqZWN0IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHRhZ3M6IFsnUCddXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIG9uUGFzdGUoZXZlbnQ6IEN1c3RvbUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChldmVudC50eXBlICE9PSAndGFnJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdGV4dCA9IGV2ZW50LmRldGFpbC5kYXRhLnRleHRDb250ZW50O1xuXG4gICAgICAgIHRoaXMuZGF0YS50ZXh0QmxvY2tzLnNwbGljZSh0aGlzLmRhdGEudGV4dEJsb2Nrcy5sZW5ndGggLSAxLCAxLCB0aGlzLmdldEJsb2NrUGFydE9iamVjdChnZW5lcmF0ZUlkKCksIHRleHQpKTtcbiAgICAgICAgdGhpcy51cGRhdGUodGhpcy5kYXRhLnRleHRCbG9ja3MpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW5kZXIoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICB0aGlzLndyYXBwZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgdGhpcy53cmFwcGVyLmNsYXNzTGlzdC5hZGQoQ09NQklORURfVEVYVF9CTE9DSyk7XG4gICAgICAgIHRoaXMud3JhcHBlci5kYXRhc2V0W3RoaXMuUExBQ0VIT0xERVJfQVRUUklCVVRFX05BTUVdID0gdGhpcy5hcGkuaTE4bi50KHRoaXMucGxhY2Vob2xkZXIpO1xuXG4gICAgICAgIGlmICghdGhpcy5yZWFkT25seSkge1xuICAgICAgICAgICAgdGhpcy53cmFwcGVyLmNvbnRlbnRFZGl0YWJsZSA9ICd0cnVlJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5kYXRhLnRleHRCbG9ja3MubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGEudGV4dEJsb2Nrcy5wdXNoKHRoaXMuZ2V0QmxvY2tQYXJ0T2JqZWN0KGdlbmVyYXRlSWQoKSwgJycpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlKHRoaXMuZGF0YS50ZXh0QmxvY2tzKTtcbiAgICAgICAgdGhpcy5jaGVja0lzRWRpdG9yRW1wdHkoKTtcblxuICAgICAgICBpZiAoIXRoaXMucmVhZE9ubHkpIHtcbiAgICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gdGhpcy5nZXRNdXRhdGlvbkNhbGxiYWNrKHRoaXMuREVCT1VOQ0VfVElNRSk7XG5cbiAgICAgICAgICAgIHRoaXMub2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcih0aGlzLm9uTXV0YXRpb25FdmVudC5iaW5kKHRoaXMsIGNhbGxiYWNrKSk7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUodGhpcy53cmFwcGVyLCB0aGlzLm11dGF0aW9uQ29uZmlnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLndyYXBwZXI7XG4gICAgfVxuXG4gICAgcHVibGljIG1lcmdlKGJsb2Nrc0RhdGE6IEN1aUNvbWJpbmVkUGFydEJsb2NrW10pOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLndyYXBwZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBibG9ja3NUZXh0Q29udGVudCA9ICcnO1xuICAgICAgICB0aGlzLmRhdGEudGV4dEJsb2NrcyA9IFtdO1xuXG4gICAgICAgIGJsb2Nrc0RhdGEuZm9yRWFjaCgoYmxvY2spID0+IHtcbiAgICAgICAgICAgIGJsb2Nrc1RleHRDb250ZW50ICs9IGJsb2NrLmRhdGEudGV4dDtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLndyYXBwZXIuY2hpbGROb2Rlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMud3JhcHBlci5jaGlsZE5vZGVzLml0ZW0oaSk7XG5cbiAgICAgICAgICAgIGlmICghKG5vZGUgaW5zdGFuY2VvZiBIVE1MU3BhbkVsZW1lbnQpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpLS07XG4gICAgICAgICAgICBibG9ja3NUZXh0Q29udGVudCA9IG5vZGUuaW5uZXJIVE1MICsgYmxvY2tzVGV4dENvbnRlbnQ7XG4gICAgICAgICAgICBub2RlLnJlbW92ZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFydHMgPSBibG9ja3NUZXh0Q29udGVudC5sZW5ndGggPCBTUExJVF9NQVhfTEVOR1RIID8gW2Jsb2Nrc1RleHRDb250ZW50XSA6IHNwbGl0SFRNTChibG9ja3NUZXh0Q29udGVudCk7XG5cbiAgICAgICAgcGFydHMuZm9yRWFjaCgocGFydDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBibG9ja09iamVjdCA9IHRoaXMuZ2V0QmxvY2tQYXJ0T2JqZWN0KGdlbmVyYXRlSWQoKSwgcGFydCk7XG5cbiAgICAgICAgICAgIHRoaXMuZGF0YS50ZXh0QmxvY2tzLnB1c2goYmxvY2tPYmplY3QpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnVwZGF0ZSh0aGlzLmRhdGEudGV4dEJsb2Nrcyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNhdmUoYmxvY2tDb250ZW50OiBIVE1MRWxlbWVudCk6IEN1aUNvbWJpbmVkUGFydEJsb2NrW10ge1xuICAgICAgICBjb25zdCB0ZXh0QmxvY2tzOiBDdWlDb21iaW5lZFBhcnRCbG9ja1tdID0gW107XG5cbiAgICAgICAgYmxvY2tDb250ZW50LnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5UQUcpLmZvckVhY2goKHNwYW46IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICB0ZXh0QmxvY2tzLnB1c2godGhpcy5nZXRCbG9ja1BhcnRPYmplY3Qoc3Bhbi5kYXRhc2V0WydpZCddISwgc3Bhbi5pbm5lckhUTUwpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHRleHRCbG9ja3M7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcblxuICAgICAgICBjb25zdCBibG9ja0lkcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gICAgICAgIHRoaXMuZGF0YS50ZXh0QmxvY2tzLmZvckVhY2goKGJsb2NrOiBDdWlDb21iaW5lZFBhcnRCbG9jaykgPT4ge1xuICAgICAgICAgICAgYmxvY2tJZHMuYWRkKGJsb2NrLmlkIHx8ICcnKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5yZW1vdmVCbG9ja3MoYmxvY2tJZHMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25NdXRhdGlvbkV2ZW50KGNhbGxiYWNrOiAobXV0YXRpb25MaXN0OiBNdXRhdGlvblJlY29yZFtdKSA9PiB2b2lkLCBtdXRhdGlvbkxpc3Q6IE11dGF0aW9uUmVjb3JkW10pOiB2b2lkIHtcbiAgICAgICAgaWYgKG11dGF0aW9uTGlzdC5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIG11dGF0aW9uTGlzdC5mb3JFYWNoKChtdXRhdGlvbikgPT4ge1xuICAgICAgICAgICAgaWYgKG11dGF0aW9uLnJlbW92ZWROb2Rlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KGdlbmVyYXRlSWQoKSwgbXV0YXRpb24pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmNoYW5nZXMuc2V0KG11dGF0aW9uLnRhcmdldCwgbXV0YXRpb24pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjYWxsYmFjayhtdXRhdGlvbkxpc3QpO1xuICAgICAgICB0aGlzLmNoZWNrSXNFZGl0b3JFbXB0eSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TXV0YXRpb25DYWxsYmFjayA9ICh3YWl0OiBudW1iZXIpOiBDdWlNdXRhdGlvbkNhbGxiYWNrID0+IHtcbiAgICAgICAgbGV0IHRpbWVvdXRJZDogQ3VpTnVsbGFibGU8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+ID0gbnVsbDtcblxuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRpbWVvdXRJZCkge1xuICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMuaGFuZGxlTXV0YXRpb25zKCksIHdhaXQpO1xuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBwcml2YXRlIGhhbmRsZU11dGF0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbXV0YXRpb25zTGlzdCA9IFsuLi50aGlzLmNoYW5nZXMudmFsdWVzKCldO1xuICAgICAgICBjb25zdCB7IHVwZGF0ZWRFbGVtZW50cywgcmVtb3ZlZEVsZW1lbnRzSWRzIH0gPSB0aGlzLmdldE11dGF0aW9uQWN0aW9ucyhtdXRhdGlvbnNMaXN0KTtcbiAgICAgICAgY29uc3Qgc3BsaXRlZFBhcnRzOiBIVE1MRWxlbWVudFtdID0gW107XG5cbiAgICAgICAgdXBkYXRlZEVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQ6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBlbGVtZW50Q29udGVudDogc3RyaW5nID0gZWxlbWVudC5pbm5lckhUTUw7XG5cbiAgICAgICAgICAgIGlmIChlbGVtZW50Q29udGVudC5sZW5ndGggPCBTUExJVF9NQVhfTEVOR1RIKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBwYXJ0cyA9IHNwbGl0SFRNTChlbGVtZW50Q29udGVudCk7XG5cbiAgICAgICAgICAgIHBhcnRzLmZvckVhY2goKHBhcnQ6IHN0cmluZywgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrSWQgPSBnZW5lcmF0ZUlkKCk7XG4gICAgICAgICAgICAgICAgY29uc3QgdGV4dEVsZW1lbnQgPSB0aGlzLmNyZWF0ZUJsb2NrKGJsb2NrSWQsIHBhcnQpO1xuXG4gICAgICAgICAgICAgICAgc3BsaXRlZFBhcnRzLnB1c2godGV4dEVsZW1lbnQpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGVsZW1lbnQuaW5uZXJIVE1MID0gcGFydHNbMF07XG4gICAgICAgICAgICBlbGVtZW50LmFmdGVyKC4uLnNwbGl0ZWRQYXJ0cyk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuYWRkQmxvY2tzKHNwbGl0ZWRQYXJ0cywgdXBkYXRlZEVsZW1lbnRzKTtcbiAgICAgICAgdGhpcy51cGRhdGVCbG9ja3ModXBkYXRlZEVsZW1lbnRzKTtcbiAgICAgICAgdGhpcy5yZW1vdmVCbG9ja3MocmVtb3ZlZEVsZW1lbnRzSWRzKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VzLmNsZWFyKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXROZXh0SW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmVjYWxjdWxhdGVJbmRleGVzKHRoaXMuYXBpLmJsb2Nrcyk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5hcGkuYmxvY2tzLmdldEN1cnJlbnRCbG9ja0luZGV4KCk7XG4gICAgICAgIGNvbnN0IGJsb2NrID0gdGhpcy5hcGkuYmxvY2tzLmdldEJsb2NrQnlJbmRleChpbmRleCk7XG4gICAgICAgIGNvbnN0IGRhdGFJbmRleCA9IE51bWJlcihibG9jaz8uaG9sZGVyLmRhdGFzZXRbJ2luZGV4J10pO1xuXG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICAgICAgY29uc3QgcmFuZ2UgPSBzZWxlY3Rpb24/LnJhbmdlQ291bnQgPyBzZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKSA6IG51bGw7XG4gICAgICAgIGNvbnN0IGNhcmV0UG9zaXRpb24gPSByYW5nZT8uc3RhcnRPZmZzZXQgPz8gMTtcblxuICAgICAgICBsZXQgbmV4dEJsb2NrSW5kZXggPSBkYXRhSW5kZXg7XG5cbiAgICAgICAgaWYgKGNhcmV0UG9zaXRpb24gIT09IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGJsb2NrQ29udGFpbmVyID0gYmxvY2s/LmhvbGRlci5xdWVyeVNlbGVjdG9yKCcuJyArIENPTUJJTkVEX1RFWFRfQkxPQ0spIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW5Db3VudCA9IGJsb2NrQ29udGFpbmVyPy5jaGlsZHJlbj8ubGVuZ3RoID8gYmxvY2tDb250YWluZXI/LmNoaWxkcmVuPy5sZW5ndGggLSAxIDogMDtcblxuICAgICAgICAgICAgbmV4dEJsb2NrSW5kZXggPSBkYXRhSW5kZXggKyBjaGlsZHJlbkNvdW50ICsgMTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghbmV4dEJsb2NrSW5kZXgpIHtcbiAgICAgICAgICAgIG5leHRCbG9ja0luZGV4IHx8PSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5leHRCbG9ja0luZGV4O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0QmxvY2tQYXJ0T2JqZWN0KGJsb2NrSWQ6IHN0cmluZywgdGV4dDogc3RyaW5nKTogQ3VpQ29tYmluZWRQYXJ0QmxvY2sge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IGJsb2NrSWQsXG4gICAgICAgICAgICB0eXBlOiBDT01CSU5FRF9URVhUX0JMT0NLX1BBUlQsXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgdGV4dCxcbiAgICAgICAgICAgICAgICBwYXJlbnRJZDogdGhpcy5kYXRhLmlkLFxuICAgICAgICAgICAgICAgIHBhcmVudFR5cGU6IENPTUJJTkVEX1RFWFRfQkxPQ0tfTkFNRVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TXV0YXRpb25BY3Rpb25zKG11dGF0aW9uTGlzdDogTXV0YXRpb25SZWNvcmRbXSk6IEN1aU11dGF0aW9uQWN0aW9ucyB7XG4gICAgICAgIGNvbnN0IHVwZGF0ZWRFbGVtZW50cyA9IG5ldyBTZXQ8SFRNTEVsZW1lbnQ+KCk7XG4gICAgICAgIGNvbnN0IHJlbW92ZWRFbGVtZW50c0lkcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgICAgICBjb25zdCBjaGFuZ2VkT3V0c2lkZUVsZW1lbnRzOiBOb2RlW10gPSBbXTtcblxuICAgICAgICB0aGlzLmxhc3RCbG9ja0VsZW1lbnQgPSB1bmRlZmluZWQ7XG5cbiAgICAgICAgbXV0YXRpb25MaXN0LmZvckVhY2goKG11dGF0aW9uOiBNdXRhdGlvblJlY29yZCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVVcGRhdGVkQmxvY2tzKG11dGF0aW9uLCB1cGRhdGVkRWxlbWVudHMsIGNoYW5nZWRPdXRzaWRlRWxlbWVudHMpO1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZW1vdmVkQmxvY2tzKG11dGF0aW9uLCByZW1vdmVkRWxlbWVudHNJZHMpO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodGhpcy5sYXN0QmxvY2tFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zdCBsYXN0QmxvY2tFbGVtZW50ID0gdGhpcy5sYXN0QmxvY2tFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgICAgICBsYXN0QmxvY2tFbGVtZW50LmFwcGVuZCguLi5jaGFuZ2VkT3V0c2lkZUVsZW1lbnRzKTtcbiAgICAgICAgICAgIHRoaXMuc2V0Q2FyZXRUb0Jsb2Nrc0VuZChsYXN0QmxvY2tFbGVtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB1cGRhdGVkRWxlbWVudHMsXG4gICAgICAgICAgICByZW1vdmVkRWxlbWVudHNJZHNcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENhcmV0VG9CbG9ja3NFbmQoYmxvY2s6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICAgICAgY29uc3QgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpO1xuXG4gICAgICAgIHJhbmdlLnNldFN0YXJ0KGJsb2NrLCBibG9jay5jaGlsZE5vZGVzLmxlbmd0aCk7XG4gICAgICAgIHNlbGVjdGlvbj8ucmVtb3ZlQWxsUmFuZ2VzKCk7XG4gICAgICAgIHNlbGVjdGlvbj8uYWRkUmFuZ2UocmFuZ2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlVXBkYXRlZEJsb2NrcyhcbiAgICAgICAgbXV0YXRpb246IE11dGF0aW9uUmVjb3JkLFxuICAgICAgICB1cGRhdGVkRWxlbWVudHM6IFNldDxIVE1MRWxlbWVudD4sXG4gICAgICAgIG91dHNpZGVDaGFuZ2VzOiBOb2RlW11cbiAgICApOiB2b2lkIHtcbiAgICAgICAgbGV0IGVsZW1lbnQgPSBtdXRhdGlvbi50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKG11dGF0aW9uLnRhcmdldC5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUpIHtcbiAgICAgICAgICAgIGVsZW1lbnQgPSBtdXRhdGlvbi50YXJnZXQucGFyZW50RWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNwYW4gPSBlbGVtZW50Py5jbG9zZXN0KCcuJyArIENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCkgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKHNwYW4pIHtcbiAgICAgICAgICAgIHVwZGF0ZWRFbGVtZW50cy5hZGQoc3Bhbik7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaGFuZGxlQ2hhbmdlc091dHNpZGVCbG9jayhlbGVtZW50LCBvdXRzaWRlQ2hhbmdlcyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVDaGFuZ2VzT3V0c2lkZUJsb2NrKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBvdXRzaWRlQ2hhbmdlczogTm9kZVtdKTogdm9pZCB7XG4gICAgICAgIGlmICghZWxlbWVudCB8fCB0aGlzLmxhc3RCbG9ja0VsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGVsZW1lbnQuY2hpbGROb2Rlcy5mb3JFYWNoKChibG9jaykgPT4ge1xuICAgICAgICAgICAgY29uc3QgYmxvY2tFbGVtZW50ID0gYmxvY2sgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgICAgIGlmIChibG9ja0VsZW1lbnQuY2xhc3NMaXN0Py5jb250YWlucyhDT01CSU5FRF9URVhUX0JMT0NLX1BBUlQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sYXN0QmxvY2tFbGVtZW50ID0gYmxvY2tFbGVtZW50O1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBvdXRzaWRlQ2hhbmdlcy5wdXNoKGJsb2NrKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRCbG9ja3Moc3BsaWNlZFBhcnRzOiBIVE1MRWxlbWVudFtdLCB1cGRhdGVkRWxlbWVudHM6IFNldDxIVE1MRWxlbWVudD4pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFzcGxpY2VkUGFydHMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhZGRlZEJsb2NrczogQ3VpQ29tYmluZWRQYXJ0QmxvY2tbXSA9IHNwbGljZWRQYXJ0cy5tYXAoKGJsb2NrKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBibG9ja0lkID0gYmxvY2suZGF0YXNldFsnaWQnXTtcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBpZDogYmxvY2tJZCxcbiAgICAgICAgICAgICAgICB0eXBlOiBDT01CSU5FRF9URVhUX0JMT0NLX1BBUlQsXG4gICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiBibG9jay5pbm5lckhUTUwsXG4gICAgICAgICAgICAgICAgICAgIHBhcmVudElkOiB0aGlzLmRhdGEuaWQsXG4gICAgICAgICAgICAgICAgICAgIHBhcmVudFR5cGU6IENPTUJJTkVEX1RFWFRfQkxPQ0tfTkFNRVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IHByZXZpb3VzRWxlbWVudCA9IHVwZGF0ZWRFbGVtZW50cy52YWx1ZXMoKS5uZXh0KCkudmFsdWU7XG4gICAgICAgIGNvbnN0IGlkID0gcHJldmlvdXNFbGVtZW50Py5kYXRhc2V0WydpZCddO1xuICAgICAgICBjb25zdCBpbmRleCA9IE51bWJlcihwcmV2aW91c0VsZW1lbnQ/LmRhdGFzZXRbJ2luZGV4J10pICsgMTtcbiAgICAgICAgY29uc3QgYmxvY2tJbmRleCA9IHRoaXMuZGF0YS50ZXh0QmxvY2tzLmZpbmRJbmRleCgoYmxvY2spID0+IGJsb2NrLmlkID09PSBpZCk7XG5cbiAgICAgICAgdGhpcy5kYXRhLnRleHRCbG9ja3Muc3BsaWNlKGJsb2NrSW5kZXgsIDAsIC4uLmFkZGVkQmxvY2tzKTtcbiAgICAgICAgdGhpcy5hcGkuZXZlbnRzLmVtaXQoQ09NQklORURfVEVYVF9CTE9DS19BRERFRCwge1xuICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICBibG9ja0luZGV4LFxuICAgICAgICAgICAgYmxvY2tzOiBhZGRlZEJsb2NrcyxcbiAgICAgICAgICAgIGRhdGE6IHRoaXMuZGF0YS50ZXh0QmxvY2tzXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQmxvY2tzKHVwZGF0ZWRFbGVtZW50czogU2V0PEhUTUxFbGVtZW50Pik6IHZvaWQge1xuICAgICAgICBpZiAoIXVwZGF0ZWRFbGVtZW50cy5zaXplKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB1cGRhdGVkQmxvY2tzID0gWy4uLnVwZGF0ZWRFbGVtZW50cy52YWx1ZXMoKV0ubWFwKChibG9jaykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBpZDogYmxvY2suZGF0YXNldFsnaWQnXSxcbiAgICAgICAgICAgICAgICB0eXBlOiBDT01CSU5FRF9URVhUX0JMT0NLX1BBUlQsXG4gICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiBibG9jay5pbm5lckhUTUwsXG4gICAgICAgICAgICAgICAgICAgIHBhcmVudElkOiB0aGlzLmRhdGEuaWQsXG4gICAgICAgICAgICAgICAgICAgIHBhcmVudFR5cGU6IENPTUJJTkVEX1RFWFRfQkxPQ0tfTkFNRVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuYXBpLmV2ZW50cy5lbWl0KENPTUJJTkVEX1RFWFRfQkxPQ0tfVVBEQVRFRCwgdXBkYXRlZEJsb2Nrcyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVSZW1vdmVkQmxvY2tzKG11dGF0aW9uOiBNdXRhdGlvblJlY29yZCwgcmVtb3ZlZEVsZW1lbnRzSWRzOiBTZXQ8c3RyaW5nPik6IHZvaWQge1xuICAgICAgICBpZiAobXV0YXRpb24ucmVtb3ZlZE5vZGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbXV0YXRpb24ucmVtb3ZlZE5vZGVzLmZvckVhY2goKG5vZGU6IE5vZGUpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIGlmICghKG5vZGUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGJsb2NrSWQgPSAobm9kZSBhcyBIVE1MRWxlbWVudCkuZGF0YXNldFsnaWQnXTtcblxuICAgICAgICAgICAgaWYgKCFibG9ja0lkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZW1vdmVkRWxlbWVudHNJZHMuYWRkKGJsb2NrSWQpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZUJsb2NrcyhpZHM6IFNldDxzdHJpbmc+KTogdm9pZCB7XG4gICAgICAgIGlmICghaWRzLnNpemUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlbW92ZWRFbGVtZW50SWRzID0gWy4uLmlkcy52YWx1ZXMoKV07XG5cbiAgICAgICAgdGhpcy5kYXRhLnRleHRCbG9ja3MgPSB0aGlzLmRhdGEudGV4dEJsb2Nrcy5maWx0ZXIoKGJsb2NrKSA9PiAhaWRzLmhhcyhibG9jay5pZCB8fCAnJykpO1xuICAgICAgICB0aGlzLmFwaS5ldmVudHMuZW1pdChDT01CSU5FRF9URVhUX0JMT0NLX1JFTU9WRUQsIHJlbW92ZWRFbGVtZW50SWRzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZShibG9ja3M6IEN1aUNvbWJpbmVkUGFydEJsb2NrW10pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFibG9ja3MubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBibG9ja3MuZm9yRWFjaCgoYmxvY2s6IEN1aUNvbWJpbmVkUGFydEJsb2NrKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0ZXh0RWxlbWVudCA9IHRoaXMuY3JlYXRlQmxvY2soYmxvY2suaWQgfHwgZ2VuZXJhdGVJZCgpLCBibG9jay5kYXRhLnRleHQpO1xuXG4gICAgICAgICAgICBpZiAoIXRoaXMud3JhcHBlcikge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoaXMud3JhcHBlci5xdWVyeVNlbGVjdG9yKCcuJyArIENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLndyYXBwZXIuYXBwZW5kKHRleHRFbGVtZW50KTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLnJlcGxhY2VDaGlsZHJlbih0ZXh0RWxlbWVudCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hcGkuZXZlbnRzLmVtaXQoQ09NQklORURfVEVYVF9CTE9DS19BRERFRCwge1xuICAgICAgICAgICAgICAgIGJsb2Nrc1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlQmxvY2soaWQ6IHN0cmluZywgdGV4dDogc3RyaW5nKTogSFRNTEVsZW1lbnQge1xuICAgICAgICBjb25zdCB0ZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGhpcy5UQUcpO1xuICAgICAgICB0ZXh0RWxlbWVudC5jbGFzc0xpc3QuYWRkKENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCk7XG4gICAgICAgIHRleHRFbGVtZW50LmlubmVySFRNTCA9IHRleHQ7XG4gICAgICAgIHRleHRFbGVtZW50LmRhdGFzZXRbJ2lkJ10gPSBpZDtcblxuICAgICAgICByZXR1cm4gdGV4dEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb252ZXJ0RGVmYXVsdERhdGFUb0N1c3RvbShkYXRhOiB7IHRleHQ6IHN0cmluZyB9KTogdm9pZCB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGEudGV4dEJsb2NrcyA9IGRhdGEubWFwKChibG9jaykgPT4ge1xuICAgICAgICAgICAgICAgIGJsb2NrLmlkID0gZ2VuZXJhdGVJZCgpO1xuICAgICAgICAgICAgICAgIGJsb2NrLmRhdGEucGFyZW50SWQgPSB0aGlzLmRhdGEuaWQ7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2s7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghZGF0YS50ZXh0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmcmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCkuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KGRhdGEudGV4dCk7XG4gICAgICAgIGxldCBlbGVtZW50Q29udGVudCA9ICcnO1xuXG4gICAgICAgIGZyYWdtZW50LmNoaWxkTm9kZXMuZm9yRWFjaCgobm9kZSkgPT4ge1xuICAgICAgICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSB7XG4gICAgICAgICAgICAgICAgZWxlbWVudENvbnRlbnQgKz0gbm9kZS50ZXh0Q29udGVudDtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZWxlbWVudENvbnRlbnQgKz0gKG5vZGUgYXMgSFRNTEVsZW1lbnQpLmlubmVySFRNTDtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3QgcGFydHMgPSBlbGVtZW50Q29udGVudC5sZW5ndGggPCBTUExJVF9NQVhfTEVOR1RIID8gW2VsZW1lbnRDb250ZW50XSA6IHNwbGl0SFRNTChlbGVtZW50Q29udGVudCk7XG5cbiAgICAgICAgcGFydHMuZm9yRWFjaCgocGFydDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBibG9ja09iamVjdCA9IHRoaXMuZ2V0QmxvY2tQYXJ0T2JqZWN0KGdlbmVyYXRlSWQoKSwgcGFydCk7XG5cbiAgICAgICAgICAgIHRoaXMuZGF0YS50ZXh0QmxvY2tzLnB1c2goYmxvY2tPYmplY3QpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoZWNrSXNFZGl0b3JFbXB0eSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLndyYXBwZXIgfHwgdGhpcy53cmFwcGVyLmNoaWxkcmVuLmxlbmd0aCA+IHRoaXMuTUFYX0NISUxEX0NPVU5UX0ZPUl9FTVBUWSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMud3JhcHBlci5jaGlsZHJlbi5pdGVtKDApIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBjb25zdCBpc0l0ZW1FbXB0eSA9ICFpdGVtLnRleHRDb250ZW50Py5sZW5ndGg7XG5cbiAgICAgICAgdGhpcy53cmFwcGVyLmRhdGFzZXRbJ2VtcHR5J10gPSBgJHtpc0l0ZW1FbXB0eX1gO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UGxhY2Vob2xkZXIoY29uZmlnOiBUb29sQ29uZmlnKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMucmVhZE9ubHkpIHtcbiAgICAgICAgICAgIHJldHVybiBjb25maWcucmVhZG9ubHlQbGFjZWhvbGRlciA/PyBERUZBVUxUX1JFQURPTkxZX1BMQUNFSE9MREVSO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbmZpZy5wbGFjZWhvbGRlciA/PyBERUZBVUxUX1BMQUNFSE9MREVSO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { MARKER_MODAL_SELECTOR } from '../components/marker-modal/marker-modal.options';
|
|
2
|
-
import { CuiMarkerTool } from './marker.tool';
|
|
3
|
-
export class CuiCustomMarkerTool extends CuiMarkerTool {
|
|
4
|
-
static get sanitize() {
|
|
5
|
-
return {
|
|
6
|
-
mark: {
|
|
7
|
-
class: true,
|
|
8
|
-
'data-id': true,
|
|
9
|
-
'data-type': true,
|
|
10
|
-
contenteditable: true
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
constructor(data) {
|
|
15
|
-
super(data);
|
|
16
|
-
}
|
|
17
|
-
wrapTool(range, markerData) {
|
|
18
|
-
const { startContainer, endContainer } = range;
|
|
19
|
-
if (markerData.data && typeof markerData.data !== 'string') {
|
|
20
|
-
this.id = markerData.data.id;
|
|
21
|
-
this.type = markerData.data.type;
|
|
22
|
-
}
|
|
23
|
-
const mark = this.createElement(markerData.title);
|
|
24
|
-
range.extractContents();
|
|
25
|
-
this.removeNestedMarkers(mark, this.DEFAULT_CLASS);
|
|
26
|
-
this.addMarkerToDOM(range, mark, startContainer, endContainer);
|
|
27
|
-
this.removeExternalMarkers(range, this.DEFAULT_CLASS);
|
|
28
|
-
this.removeEmptyMarkers(range);
|
|
29
|
-
this.api.selection.expandToTag(mark);
|
|
30
|
-
}
|
|
31
|
-
onToolButtonClick(event) {
|
|
32
|
-
const range = window.getSelection()?.getRangeAt(0);
|
|
33
|
-
if (range) {
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
event.stopImmediatePropagation();
|
|
37
|
-
}
|
|
38
|
-
render() {
|
|
39
|
-
super.render();
|
|
40
|
-
this.button.onclick = this.onToolButtonClick.bind(this);
|
|
41
|
-
return this.button;
|
|
42
|
-
}
|
|
43
|
-
renderActions() {
|
|
44
|
-
this.dropdown = document.createElement(this.DIV);
|
|
45
|
-
if (this.state) {
|
|
46
|
-
return this.dropdown;
|
|
47
|
-
}
|
|
48
|
-
const markerSelect = this.createLinkModal();
|
|
49
|
-
this.dropdown.append(markerSelect);
|
|
50
|
-
return this.dropdown;
|
|
51
|
-
}
|
|
52
|
-
createElement(text = '') {
|
|
53
|
-
const element = super.createElement(text);
|
|
54
|
-
element.contentEditable = 'false';
|
|
55
|
-
element.classList.add(this.CLASS);
|
|
56
|
-
element.setAttribute('data-id', this.id);
|
|
57
|
-
element.setAttribute('data-type', this.type);
|
|
58
|
-
return element;
|
|
59
|
-
}
|
|
60
|
-
checkState(select) {
|
|
61
|
-
const range = select.getRangeAt(0);
|
|
62
|
-
const mark = this.api.selection.findParentTag(this.TAG);
|
|
63
|
-
const isCorrectTool = mark?.classList.contains(this.CLASS);
|
|
64
|
-
if (!mark || !isCorrectTool) {
|
|
65
|
-
this.state = false;
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
const startContainer = range.startContainer;
|
|
69
|
-
const endContainer = range.endContainer;
|
|
70
|
-
const isStartMarker = mark.contains(startContainer);
|
|
71
|
-
const isEndMarker = mark.contains(endContainer);
|
|
72
|
-
this.state = isStartMarker && isEndMarker && isStartMarker === isEndMarker;
|
|
73
|
-
}
|
|
74
|
-
createLinkModal() {
|
|
75
|
-
this.markerModal = document.createElement(MARKER_MODAL_SELECTOR);
|
|
76
|
-
this.markerModal.tool = { id: '', title: '', type: undefined };
|
|
77
|
-
this.markerModal.target = this.button;
|
|
78
|
-
this.markerModal.isTool = true;
|
|
79
|
-
this.markerModal.isGlobal = true;
|
|
80
|
-
this.markerModal.addEventListener('saveClicked', (event) => {
|
|
81
|
-
const customEvent = event;
|
|
82
|
-
const data = customEvent.detail;
|
|
83
|
-
this.wrapTool(this.range, data);
|
|
84
|
-
});
|
|
85
|
-
return this.markerModal;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLW1hcmtlci50b29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvdG9vbHMvY3VzdG9tLW1hcmtlci50b29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXhGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUMsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQWE7SUFJM0MsTUFBTSxLQUFLLFFBQVE7UUFDdEIsT0FBTztZQUNILElBQUksRUFBRTtnQkFDRixLQUFLLEVBQUUsSUFBSTtnQkFDWCxTQUFTLEVBQUUsSUFBSTtnQkFDZixXQUFXLEVBQUUsSUFBSTtnQkFDakIsZUFBZSxFQUFFLElBQUk7YUFDeEI7U0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELFlBQVksSUFBa0M7UUFDMUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFTSxRQUFRLENBQUMsS0FBWSxFQUFFLFVBQXNCO1FBQ2hELE1BQU0sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBRS9DLElBQUksVUFBVSxDQUFDLElBQUksSUFBSSxPQUFPLFVBQVUsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLEVBQUUsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUcsQ0FBQztZQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSyxDQUFDO1FBQ3RDLENBQUM7UUFFRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUks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LElBQUksQ0FBQyxLQUFLLEdBQUcsYUFBYSxJQUFJLFdBQVcsSUFBSSxhQUFhLEtBQUssV0FBVyxDQUFDO0lBQy9FLENBQUM7SUFFTyxlQUFlO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBNEMsQ0FBQztRQUU1RyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFDL0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUN0QyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBRWpDLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBWSxFQUFFLEVBQUU7WUFDOUQsTUFBTSxXQUFXLEdBQUcsS0FBZ0MsQ0FBQztZQUNyRCxNQUFNLElBQUksR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDO1lBRWhDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IElubGluZVRvb2xDb25zdHJ1Y3Rvck9wdGlvbnMsIFNhbml0aXplckNvbmZpZyB9IGZyb20gJ0BlZGl0b3Jqcy9lZGl0b3Jqcyc7XHJcblxyXG5pbXBvcnQgdHlwZSB7IEN1aUFuZ3VsYXJFbGVtZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XHJcblxyXG5pbXBvcnQgdHlwZSB7IE1hcmtlck1vZGFsQ29tcG9uZW50LCBNYXJrZXJEYXRhIH0gZnJvbSAnLi4vY29tcG9uZW50cy9tYXJrZXItbW9kYWwnO1xyXG5pbXBvcnQgeyBNQVJLRVJfTU9EQUxfU0VMRUNUT1IgfSBmcm9tICcuLi9jb21wb25lbnRzL21hcmtlci1tb2RhbC9tYXJrZXItbW9kYWwub3B0aW9ucyc7XHJcblxyXG5pbXBvcnQgeyBDdWlNYXJrZXJUb29sIH0gZnJvbSAnLi9tYXJrZXIudG9vbCc7XHJcblxyXG5leHBvcnQgY2xhc3MgQ3VpQ3VzdG9tTWFya2VyVG9vbCBleHRlbmRzIEN1aU1hcmtlclRvb2wge1xyXG4gICAgcHJvdGVjdGVkIGlkITogc3RyaW5nO1xyXG4gICAgcHJvdGVjdGVkIHR5cGUhOiBzdHJpbmc7XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBnZXQgc2FuaXRpemUoKTogU2FuaXRpemVyQ29uZmlnIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBtYXJrOiB7XHJcbiAgICAgICAgICAgICAgICBjbGFzczogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICdkYXRhLWlkJzogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICdkYXRhLXR5cGUnOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgY29udGVudGVkaXRhYmxlOiB0cnVlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IElubGluZVRvb2xDb25zdHJ1Y3Rvck9wdGlvbnMpIHtcclxuICAgICAgICBzdXBlcihkYXRhKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgd3JhcFRvb2wocmFuZ2U6IFJhbmdlLCBtYXJrZXJEYXRhOiBNYXJrZXJEYXRhKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgeyBzdGFydENvbnRhaW5lciwgZW5kQ29udGFpbmVyIH0gPSByYW5nZTtcclxuXHJcbiAgICAgICAgaWYgKG1hcmtlckRhdGEuZGF0YSAmJiB0eXBlb2YgbWFya2VyRGF0YS5kYXRhICE9PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICB0aGlzLmlkID0gbWFya2VyRGF0YS5kYXRhLmlkITtcclxuICAgICAgICAgICAgdGhpcy50eXBlID0gbWFya2VyRGF0YS5kYXRhLnR5cGUhO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgbWFyayA9IHRoaXMuY3JlYXRlRWxlbWVudChtYXJrZXJEYXRhLnRpdGxlKTtcclxuXHJcbiAgICAgICAgcmFuZ2UuZXh0cmFjdENvbnRlbnRzKCk7XHJcblxyXG4gICAgICAgIHRoaXMucmVtb3ZlTmVzdGVkTWFya2VycyhtYXJrLCB0aGlzLkRFRkFVTFRfQ0xBU1MpO1xyXG5cclxuICAgICAgICB0aGlzLmFkZE1hcmtlclRvRE9NKHJhbmdlLCBtYXJrLCBzdGFydENvbnRhaW5lciwgZW5kQ29udGFpbmVyKTtcclxuXHJcbiAgICAgICAgdGhpcy5yZW1vdmVFeHRlcm5hbE1hcmtlcnMocmFuZ2UsIHRoaXMuREVGQVVMVF9DTEFTUyk7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVFbXB0eU1hcmtlcnMocmFuZ2UpO1xyXG5cclxuICAgICAgICB0aGlzLmFwaS5zZWxlY3Rpb24uZXhwYW5kVG9UYWcobWFyayk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvblRvb2xCdXR0b25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHJhbmdlID0gd2luZG93LmdldFNlbGVjdGlvbigpPy5nZXRSYW5nZUF0KDApO1xyXG5cclxuICAgICAgICBpZiAocmFuZ2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG92ZXJyaWRlIHJlbmRlcigpOiBIVE1MQnV0dG9uRWxlbWVudCB7XHJcbiAgICAgICAgc3VwZXIucmVuZGVyKCk7XHJcblxyXG4gICAgICAgIHRoaXMuYnV0dG9uLm9uY2xpY2sgPSB0aGlzLm9uVG9vbEJ1dHRvbkNsaWNrLmJpbmQodGhpcyk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmJ1dHRvbjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcmVuZGVyQWN0aW9ucygpOiBIVE1MRWxlbWVudCB7XHJcbiAgICAgICAgdGhpcy5kcm9wZG93biA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGhpcy5ESVYpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5zdGF0ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kcm9wZG93bjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IG1hcmtlclNlbGVjdCA9IHRoaXMuY3JlYXRlTGlua01vZGFsKCk7XHJcblxyXG4gICAgICAgIHRoaXMuZHJvcGRvd24uYXBwZW5kKG1hcmtlclNlbGVjdCk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmRyb3Bkb3duO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVFbGVtZW50KHRleHQgPSAnJyk6IEhUTUxFbGVtZW50IHtcclxuICAgICAgICBjb25zdCBlbGVtZW50ID0gc3VwZXIuY3JlYXRlRWxlbWVudCh0ZXh0KTtcclxuXHJcbiAgICAgICAgZWxlbWVudC5jb250ZW50RWRpdGFibGUgPSAnZmFsc2UnO1xyXG4gICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCh0aGlzLkNMQVNTKTtcclxuICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnZGF0YS1pZCcsIHRoaXMuaWQpO1xyXG4gICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdkYXRhLXR5cGUnLCB0aGlzLnR5cGUpO1xyXG5cclxuICAgICAgICByZXR1cm4gZWxlbWVudDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY2hlY2tTdGF0ZShzZWxlY3Q6IFNlbGVjdGlvbik6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHJhbmdlID0gc2VsZWN0LmdldFJhbmdlQXQoMCk7XHJcbiAgICAgICAgY29uc3QgbWFyayA9IHRoaXMuYXBpLnNlbGVjdGlvbi5maW5kUGFyZW50VGFnKHRoaXMuVEFHKTtcclxuICAgICAgICBjb25zdCBpc0NvcnJlY3RUb29sID0gbWFyaz8uY2xhc3NMaXN0LmNvbnRhaW5zKHRoaXMuQ0xBU1MpO1xyXG5cclxuICAgICAgICBpZiAoIW1hcmsgfHwgIWlzQ29ycmVjdFRvb2wpIHtcclxuICAgICAgICAgICAgdGhpcy5zdGF0ZSA9IGZhbHNlO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3Qgc3RhcnRDb250YWluZXIgPSByYW5nZS5zdGFydENvbnRhaW5lcjtcclxuICAgICAgICBjb25zdCBlbmRDb250YWluZXIgPSByYW5nZS5lbmRDb250YWluZXI7XHJcblxyXG4gICAgICAgIGNvbnN0IGlzU3RhcnRNYXJrZXIgPSBtYXJrLmNvbnRhaW5zKHN0YXJ0Q29udGFpbmVyKTtcclxuICAgICAgICBjb25zdCBpc0VuZE1hcmtlciA9IG1hcmsuY29udGFpbnMoZW5kQ29udGFpbmVyKTtcclxuXHJcbiAgICAgICAgdGhpcy5zdGF0ZSA9IGlzU3RhcnRNYXJrZXIgJiYgaXNFbmRNYXJrZXIgJiYgaXNTdGFydE1hcmtlciA9PT0gaXNFbmRNYXJrZXI7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjcmVhdGVMaW5rTW9kYWwoKTogQ3VpQW5ndWxhckVsZW1lbnQ8TWFya2VyTW9kYWxDb21wb25lbnQ+IHtcclxuICAgICAgICB0aGlzLm1hcmtlck1vZGFsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChNQVJLRVJfTU9EQUxfU0VMRUNUT1IpIGFzIEN1aUFuZ3VsYXJFbGVtZW50PE1hcmtlck1vZGFsQ29tcG9uZW50PjtcclxuXHJcbiAgICAgICAgdGhpcy5tYXJrZXJNb2RhbC50b29sID0geyBpZDogJycsIHRpdGxlOiAnJywgdHlwZTogdW5kZWZpbmVkIH07XHJcbiAgICAgICAgdGhpcy5tYXJrZXJNb2RhbC50YXJnZXQgPSB0aGlzLmJ1dHRvbjtcclxuICAgICAgICB0aGlzLm1hcmtlck1vZGFsLmlzVG9vbCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5tYXJrZXJNb2RhbC5pc0dsb2JhbCA9IHRydWU7XHJcblxyXG4gICAgICAgIHRoaXMubWFya2VyTW9kYWwuYWRkRXZlbnRMaXN0ZW5lcignc2F2ZUNsaWNrZWQnLCAoZXZlbnQ6IEV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbUV2ZW50ID0gZXZlbnQgYXMgQ3VzdG9tRXZlbnQ8TWFya2VyRGF0YT47XHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBjdXN0b21FdmVudC5kZXRhaWw7XHJcblxyXG4gICAgICAgICAgICB0aGlzLndyYXBUb29sKHRoaXMucmFuZ2UsIGRhdGEpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5tYXJrZXJNb2RhbDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import Header from '@editorjs/header';
|
|
2
|
-
export class CuiHeaderTool extends Header {
|
|
3
|
-
constructor(data) {
|
|
4
|
-
super(data);
|
|
5
|
-
}
|
|
6
|
-
validate() {
|
|
7
|
-
return true;
|
|
8
|
-
}
|
|
9
|
-
render() {
|
|
10
|
-
return super.render();
|
|
11
|
-
}
|
|
12
|
-
save(block) {
|
|
13
|
-
return super.save(block);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLnRvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci90b29scy9oZWFkZXIudG9vbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLE1BQU0sTUFBTSxrQkFBa0IsQ0FBQztBQUV0QyxNQUFNLE9BQU8sYUFBYyxTQUFRLE1BQU07SUFDckMsWUFBWSxJQUFTO1FBQ2pCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRWUsUUFBUTtRQUNwQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRWUsTUFBTTtRQUNsQixPQUFPLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRWUsSUFBSSxDQUFDLEtBQXlCO1FBQzFDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJsb2NrVG9vbERhdGEgfSBmcm9tICdAZWRpdG9yanMvZWRpdG9yanMnO1xyXG5pbXBvcnQgSGVhZGVyIGZyb20gJ0BlZGl0b3Jqcy9oZWFkZXInO1xyXG5cclxuZXhwb3J0IGNsYXNzIEN1aUhlYWRlclRvb2wgZXh0ZW5kcyBIZWFkZXIge1xyXG4gICAgY29uc3RydWN0b3IoZGF0YTogYW55KSB7XHJcbiAgICAgICAgc3VwZXIoZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG92ZXJyaWRlIHZhbGlkYXRlKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvdmVycmlkZSByZW5kZXIoKTogSFRNTEhlYWRpbmdFbGVtZW50IHtcclxuICAgICAgICByZXR1cm4gc3VwZXIucmVuZGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG92ZXJyaWRlIHNhdmUoYmxvY2s6IEhUTUxIZWFkaW5nRWxlbWVudCk6IEJsb2NrVG9vbERhdGEge1xyXG4gICAgICAgIHJldHVybiBzdXBlci5zYXZlKGJsb2NrKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|