@cuby-ui/core 0.0.227 → 0.0.230
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/components/button/button.component.d.ts +1 -1
- package/components/content-wrapper/content-wrapper.component.d.ts +11 -0
- package/components/content-wrapper/index.d.ts +1 -0
- package/components/empty-state/empty-state.component.d.ts +7 -0
- package/components/empty-state/index.d.ts +1 -0
- package/components/ghost-input/ghost-input.component.d.ts +6 -0
- package/components/ghost-input/index.d.ts +1 -0
- package/components/index.d.ts +3 -0
- package/components/sidebar/sidebar-header/sidebar-header.component.d.ts +1 -1
- package/components/sidebar/sidebar-navigation-item/sidebar-navigation-item.component.d.ts +1 -1
- package/directives/tooltip/tooltip.component.d.ts +1 -1
- package/editor/components/editor-attaches-tool/editor-attaches-tool.component.d.ts +44 -0
- package/editor/components/editor-attaches-tool/editor-attaches-tool.options.d.ts +17 -0
- package/editor/components/editor-attaches-tool/index.d.ts +2 -0
- package/editor/components/editor-image-tool/editor-image-tool.component.d.ts +14 -0
- package/editor/components/editor-image-tool/editor-image-tool.options.d.ts +26 -0
- package/editor/components/editor-image-tool/index.d.ts +2 -0
- package/editor/components/editor-tool/editor-tool.component.d.ts +22 -0
- package/editor/components/editor-tool-modal/editor-tool-modal.component.d.ts +24 -0
- package/editor/components/editor-tool-modal/editor-tool-modal.options.d.ts +8 -0
- package/editor/components/editor-tool-modal/index.d.ts +2 -0
- package/editor/components/editor-tooltip/editor-tooltip.component.d.ts +16 -0
- package/editor/components/editor-tooltip/editor-tooltip.options.d.ts +9 -0
- package/editor/components/editor-tooltip/index.d.ts +2 -0
- package/editor/components/editor-video-tool/editor-video-tool.component.d.ts +12 -0
- package/editor/components/editor-video-tool/editor-video-tool.options.d.ts +26 -0
- package/editor/components/editor-video-tool/index.d.ts +2 -0
- package/editor/components/index.d.ts +7 -0
- package/editor/components/marker-modal/index.d.ts +3 -0
- package/editor/components/marker-modal/marker-modal.component.d.ts +62 -0
- package/editor/components/marker-modal/marker-modal.interfaces.d.ts +7 -0
- package/editor/components/marker-modal/marker-modal.options.d.ts +1 -0
- package/editor/components/marker-select/component/select-item/select-option.component.d.ts +7 -0
- package/editor/components/marker-select/index.d.ts +2 -0
- package/editor/components/marker-select/marker-select.component.d.ts +40 -0
- package/editor/components/marker-select/marker-select.options.d.ts +1 -0
- package/editor/config/custom-elements.d.ts +2 -0
- package/editor/config/editor.config.d.ts +3 -0
- package/editor/config/editor.provider.d.ts +2 -0
- package/editor/config/index.d.ts +2 -0
- package/editor/constants/editor.constants.d.ts +15 -0
- package/editor/constants/index.d.ts +1 -0
- package/editor/editor.component.d.ts +71 -0
- package/editor/events/editor-drag.event.d.ts +2 -0
- package/editor/events/editor-keyboard.event.d.ts +2 -0
- package/editor/events/editor-modal.event.d.ts +3 -0
- package/editor/events/editor-tooltip.event.d.ts +2 -0
- package/editor/events/set-editor-events.d.ts +1 -0
- package/editor/index.d.ts +9 -0
- package/editor/interfaces/angular-element.d.ts +2 -0
- package/editor/interfaces/blocks-request-data.d.ts +6 -0
- package/editor/interfaces/combined-block-adding-event.d.ts +7 -0
- package/editor/interfaces/combined-block-data.d.ts +5 -0
- package/editor/interfaces/combined-part-block-data.d.ts +7 -0
- package/editor/interfaces/custom-element.d.ts +5 -0
- package/editor/interfaces/event-action-data.d.ts +5 -0
- package/editor/interfaces/file-response-data.d.ts +10 -0
- package/editor/interfaces/full-block-data.d.ts +8 -0
- package/editor/interfaces/index.d.ts +14 -0
- package/editor/interfaces/main-editor-config.d.ts +15 -0
- package/editor/interfaces/mutation-actions.d.ts +5 -0
- package/editor/interfaces/parent.d.ts +4 -0
- package/editor/interfaces/tools.d.ts +4 -0
- package/editor/interfaces/tune.d.ts +6 -0
- package/editor/pipes/file-size.pipe.d.ts +9 -0
- package/editor/services/editor-service.options.d.ts +8 -0
- package/editor/services/editor.service.d.ts +23 -0
- package/editor/services/index.d.ts +6 -0
- package/editor/services/jtext-api.options.d.ts +20 -0
- package/editor/services/jtext-api.service.d.ts +23 -0
- package/editor/services/markers-service.options.d.ts +4 -0
- package/editor/services/markers.service.d.ts +11 -0
- package/editor/tools/attaches.tool.d.ts +28 -0
- package/editor/tools/bold.tool.d.ts +11 -0
- package/editor/tools/combined-text-block.tool.d.ts +49 -0
- package/editor/tools/custom-marker.tool.d.ts +16 -0
- package/editor/tools/header.tool.d.ts +8 -0
- package/editor/tools/image.tool.d.ts +37 -0
- package/editor/tools/index.d.ts +11 -0
- package/editor/tools/italic.tool.d.ts +12 -0
- package/editor/tools/link-marker.tool.d.ts +15 -0
- package/editor/tools/list.tool.d.ts +5 -0
- package/editor/tools/marker.tool.d.ts +36 -0
- package/editor/tools/role-marker.tool.d.ts +7 -0
- package/editor/tools/selection-base.tool.d.ts +24 -0
- package/editor/tools/tool-marker.tool.d.ts +7 -0
- package/editor/tools/video.tool.d.ts +32 -0
- package/editor/utils/create-link-modal.d.ts +3 -0
- package/editor/utils/create-tool-modal.d.ts +4 -0
- package/editor/utils/create-tooltip.d.ts +8 -0
- package/editor/utils/file-uploader.d.ts +26 -0
- package/editor/utils/generate-id.d.ts +1 -0
- package/editor/utils/index.d.ts +9 -0
- package/editor/utils/recalculate-indexes.d.ts +2 -0
- package/editor/utils/remove-element-tag-wrapper.d.ts +1 -0
- package/editor/utils/split-html.d.ts +1 -0
- package/editor/utils/url.validator.d.ts +2 -0
- package/editor/widgets/editor-block/editor-block.component.d.ts +22 -0
- package/editor/widgets/editor-block/index.d.ts +1 -0
- package/editor/widgets/editor-modal/editor-modal.component.d.ts +19 -0
- package/editor/widgets/editor-modal/index.d.ts +1 -0
- package/editor/widgets/editor-readonly/editor-readonly.component.d.ts +28 -0
- package/editor/widgets/editor-readonly/editor-readonly.options.d.ts +5 -0
- package/editor/widgets/editor-readonly/index.d.ts +2 -0
- package/editor/widgets/index.d.ts +3 -0
- package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +2 -2
- package/esm2022/components/content-wrapper/content-wrapper.component.mjs +29 -0
- package/esm2022/components/content-wrapper/index.mjs +2 -0
- package/esm2022/components/empty-state/empty-state.component.mjs +17 -0
- package/esm2022/components/empty-state/index.mjs +2 -0
- package/esm2022/components/ghost-input/ghost-input.component.mjs +16 -0
- package/esm2022/components/ghost-input/index.mjs +2 -0
- package/esm2022/components/index.mjs +4 -1
- package/esm2022/directives/tooltip/tooltip-describe.directive.mjs +5 -3
- package/esm2022/directives/tooltip/tooltip-position.directive.mjs +6 -3
- package/esm2022/directives/tooltip/tooltip.component.mjs +6 -3
- package/esm2022/editor/components/editor-attaches-tool/editor-attaches-tool.component.mjs +76 -0
- package/esm2022/editor/components/editor-attaches-tool/editor-attaches-tool.options.mjs +2 -0
- package/esm2022/editor/components/editor-attaches-tool/index.mjs +3 -0
- package/esm2022/editor/components/editor-image-tool/editor-image-tool.component.mjs +43 -0
- package/esm2022/editor/components/editor-image-tool/editor-image-tool.options.mjs +2 -0
- package/esm2022/editor/components/editor-image-tool/index.mjs +3 -0
- package/esm2022/editor/components/editor-tool/editor-tool.component.mjs +74 -0
- package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.component.mjs +69 -0
- package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.options.mjs +2 -0
- package/esm2022/editor/components/editor-tool-modal/index.mjs +3 -0
- package/esm2022/editor/components/editor-tooltip/editor-tooltip.component.mjs +45 -0
- package/esm2022/editor/components/editor-tooltip/editor-tooltip.options.mjs +2 -0
- package/esm2022/editor/components/editor-tooltip/index.mjs +3 -0
- package/esm2022/editor/components/editor-video-tool/editor-video-tool.component.mjs +41 -0
- package/esm2022/editor/components/editor-video-tool/editor-video-tool.options.mjs +2 -0
- package/esm2022/editor/components/editor-video-tool/index.mjs +3 -0
- package/esm2022/editor/components/index.mjs +8 -0
- package/esm2022/editor/components/marker-modal/index.mjs +3 -0
- package/esm2022/editor/components/marker-modal/marker-modal.component.mjs +261 -0
- package/esm2022/editor/components/marker-modal/marker-modal.interfaces.mjs +2 -0
- package/esm2022/editor/components/marker-modal/marker-modal.options.mjs +2 -0
- package/esm2022/editor/components/marker-select/component/select-item/select-option.component.mjs +15 -0
- package/esm2022/editor/components/marker-select/index.mjs +3 -0
- package/esm2022/editor/components/marker-select/marker-select.component.mjs +155 -0
- package/esm2022/editor/components/marker-select/marker-select.options.mjs +2 -0
- package/esm2022/editor/config/custom-elements.mjs +32 -0
- package/esm2022/editor/config/editor.config.mjs +30 -0
- package/esm2022/editor/config/editor.provider.mjs +19 -0
- package/esm2022/editor/config/index.mjs +3 -0
- package/esm2022/editor/constants/editor.constants.mjs +20 -0
- package/esm2022/editor/constants/index.mjs +2 -0
- package/esm2022/editor/editor.component.mjs +380 -0
- package/esm2022/editor/events/editor-drag.event.mjs +7 -0
- package/esm2022/editor/events/editor-keyboard.event.mjs +33 -0
- package/esm2022/editor/events/editor-modal.event.mjs +31 -0
- package/esm2022/editor/events/editor-tooltip.event.mjs +63 -0
- package/esm2022/editor/events/set-editor-events.mjs +11 -0
- package/esm2022/editor/i18n/en.json +14 -0
- package/esm2022/editor/index.mjs +8 -0
- package/esm2022/editor/interfaces/angular-element.mjs +2 -0
- package/esm2022/editor/interfaces/blocks-request-data.mjs +2 -0
- package/esm2022/editor/interfaces/combined-block-adding-event.mjs +2 -0
- package/esm2022/editor/interfaces/combined-block-data.mjs +2 -0
- package/esm2022/editor/interfaces/combined-part-block-data.mjs +2 -0
- package/esm2022/editor/interfaces/custom-element.mjs +2 -0
- package/esm2022/editor/interfaces/event-action-data.mjs +2 -0
- package/esm2022/editor/interfaces/file-response-data.mjs +2 -0
- package/esm2022/editor/interfaces/full-block-data.mjs +2 -0
- package/esm2022/editor/interfaces/index.mjs +14 -0
- package/esm2022/editor/interfaces/main-editor-config.mjs +2 -0
- package/esm2022/editor/interfaces/mutation-actions.mjs +2 -0
- package/esm2022/editor/interfaces/parent.mjs +2 -0
- package/esm2022/editor/interfaces/tools.mjs +2 -0
- package/esm2022/editor/interfaces/tune.mjs +2 -0
- package/esm2022/editor/pipes/file-size.pipe.mjs +25 -0
- package/esm2022/editor/services/editor-service.options.mjs +4 -0
- package/esm2022/editor/services/editor.service.mjs +138 -0
- package/esm2022/editor/services/index.mjs +7 -0
- package/esm2022/editor/services/jtext-api.options.mjs +2 -0
- package/esm2022/editor/services/jtext-api.service.mjs +50 -0
- package/esm2022/editor/services/markers-service.options.mjs +2 -0
- package/esm2022/editor/services/markers.service.mjs +79 -0
- package/esm2022/editor/tools/attaches.tool.mjs +96 -0
- package/esm2022/editor/tools/bold.tool.mjs +33 -0
- package/esm2022/editor/tools/combined-text-block.tool.mjs +380 -0
- package/esm2022/editor/tools/custom-marker.tool.mjs +88 -0
- package/esm2022/editor/tools/header.tool.mjs +16 -0
- package/esm2022/editor/tools/image.tool.mjs +157 -0
- package/esm2022/editor/tools/index.mjs +12 -0
- package/esm2022/editor/tools/italic.tool.mjs +35 -0
- package/esm2022/editor/tools/link-marker.tool.mjs +80 -0
- package/esm2022/editor/tools/list.tool.mjs +10 -0
- package/esm2022/editor/tools/marker.tool.mjs +144 -0
- package/esm2022/editor/tools/role-marker.tool.mjs +17 -0
- package/esm2022/editor/tools/selection-base.tool.mjs +92 -0
- package/esm2022/editor/tools/tool-marker.tool.mjs +14 -0
- package/esm2022/editor/tools/video.tool.mjs +132 -0
- package/esm2022/editor/utils/create-link-modal.mjs +22 -0
- package/esm2022/editor/utils/create-tool-modal.mjs +45 -0
- package/esm2022/editor/utils/create-tooltip.mjs +44 -0
- package/esm2022/editor/utils/file-uploader.mjs +57 -0
- package/esm2022/editor/utils/generate-id.mjs +4 -0
- package/esm2022/editor/utils/index.mjs +10 -0
- package/esm2022/editor/utils/recalculate-indexes.mjs +32 -0
- package/esm2022/editor/utils/remove-element-tag-wrapper.mjs +11 -0
- package/esm2022/editor/utils/split-html.mjs +128 -0
- package/esm2022/editor/utils/url.validator.mjs +12 -0
- package/esm2022/editor/widgets/editor-block/editor-block.component.mjs +63 -0
- package/esm2022/editor/widgets/editor-block/index.mjs +2 -0
- package/esm2022/editor/widgets/editor-modal/editor-modal.component.mjs +47 -0
- package/esm2022/editor/widgets/editor-modal/index.mjs +2 -0
- package/esm2022/editor/widgets/editor-readonly/editor-readonly.component.mjs +40 -0
- package/esm2022/editor/widgets/editor-readonly/editor-readonly.options.mjs +2 -0
- package/esm2022/editor/widgets/editor-readonly/index.mjs +2 -0
- package/esm2022/editor/widgets/index.mjs +4 -0
- package/esm2022/index.mjs +3 -1
- package/esm2022/interceptors/loader.interceptor.mjs +3 -3
- package/esm2022/services/loader.options.mjs +2 -2
- package/esm2022/services/loader.service.mjs +11 -11
- package/esm2022/utils/default-validators/create-default-validators.mjs +12 -0
- package/esm2022/utils/default-validators/extra-spaces.options.mjs +11 -0
- package/esm2022/utils/default-validators/extra-spaces.validators.mjs +16 -0
- package/esm2022/utils/default-validators/index.mjs +2 -0
- package/esm2022/utils/index.mjs +2 -1
- package/esm2022/widgets/categories/categories.component.mjs +75 -0
- package/esm2022/widgets/categories/components/categories-list/categories-list.component.mjs +16 -0
- package/esm2022/widgets/categories/components/categories-list/index.mjs +2 -0
- package/esm2022/widgets/categories/components/category-form/category-form.component.mjs +79 -0
- package/esm2022/widgets/categories/components/category-form/index.mjs +2 -0
- package/esm2022/widgets/categories/components/category-item/category-item.component.mjs +123 -0
- package/esm2022/widgets/categories/components/category-item/index.mjs +2 -0
- package/esm2022/widgets/categories/components/create-category-item/create-category-item.component.mjs +25 -0
- package/esm2022/widgets/categories/components/create-category-item/index.mjs +2 -0
- package/esm2022/widgets/categories/components/index.mjs +3 -0
- package/esm2022/widgets/categories/index.mjs +2 -0
- package/esm2022/widgets/categories/services/index.mjs +2 -0
- package/esm2022/widgets/categories/services/selected-category.service.mjs +38 -0
- package/esm2022/widgets/general-control-error-hint/general-control-error-hint.component.mjs +21 -0
- package/esm2022/widgets/general-control-error-hint/index.mjs +2 -0
- package/esm2022/widgets/index.mjs +3 -0
- package/esm2022/widgets/utility-info/index.mjs +2 -0
- package/esm2022/widgets/utility-info/utility-info.component.mjs +224 -0
- package/fesm2022/cuby-ui-core-en-D3DnyYmu.mjs +29 -0
- package/fesm2022/cuby-ui-core-en-D3DnyYmu.mjs.map +1 -0
- package/fesm2022/cuby-ui-core.mjs +4047 -67
- package/fesm2022/cuby-ui-core.mjs.map +1 -1
- package/index.d.ts +2 -0
- package/package.json +3 -3
- package/services/loader.options.d.ts +2 -2
- package/services/loader.service.d.ts +7 -7
- package/utils/default-validators/create-default-validators.d.ts +5 -0
- package/utils/default-validators/extra-spaces.options.d.ts +2 -0
- package/utils/default-validators/extra-spaces.validators.d.ts +3 -0
- package/utils/default-validators/index.d.ts +1 -0
- package/utils/index.d.ts +1 -0
- package/widgets/categories/categories.component.d.ts +24 -0
- package/widgets/categories/components/categories-list/categories-list.component.d.ts +7 -0
- package/widgets/categories/components/categories-list/index.d.ts +1 -0
- package/widgets/categories/components/category-form/category-form.component.d.ts +28 -0
- package/widgets/categories/components/category-form/index.d.ts +1 -0
- package/widgets/categories/components/category-item/category-item.component.d.ts +40 -0
- package/widgets/categories/components/category-item/index.d.ts +1 -0
- package/widgets/categories/components/create-category-item/create-category-item.component.d.ts +10 -0
- package/widgets/categories/components/create-category-item/index.d.ts +1 -0
- package/widgets/categories/components/index.d.ts +2 -0
- package/widgets/categories/index.d.ts +1 -0
- package/widgets/categories/services/index.d.ts +1 -0
- package/widgets/categories/services/selected-category.service.d.ts +18 -0
- package/widgets/general-control-error-hint/general-control-error-hint.component.d.ts +9 -0
- package/widgets/general-control-error-hint/index.d.ts +1 -0
- package/widgets/index.d.ts +2 -0
- package/widgets/utility-info/index.d.ts +1 -0
- package/widgets/utility-info/utility-info.component.d.ts +45 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { COMBINED_TEXT_BLOCK, COMBINED_TEXT_BLOCK_PART } from '../constants';
|
|
2
|
+
const FIRST_CHILD_SELECTOR = '_selected';
|
|
3
|
+
export function setEditorKeyboardEvents(editorElement, signal) {
|
|
4
|
+
editorElement.addEventListener('keydown', keydownListener, { signal });
|
|
5
|
+
}
|
|
6
|
+
export function keydownListener(event) {
|
|
7
|
+
const target = event.target;
|
|
8
|
+
const block = target.closest(`.${COMBINED_TEXT_BLOCK}`);
|
|
9
|
+
if (!block) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const selection = window.getSelection();
|
|
13
|
+
const ranges = selection?.rangeCount;
|
|
14
|
+
if (!ranges || !checkIsBlockFullySelected(block)) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const firstChild = block?.firstElementChild;
|
|
18
|
+
firstChild?.classList.add(FIRST_CHILD_SELECTOR);
|
|
19
|
+
setTimeout(() => firstChild?.classList.remove(FIRST_CHILD_SELECTOR));
|
|
20
|
+
}
|
|
21
|
+
function checkIsBlockFullySelected(blockElement) {
|
|
22
|
+
const selection = window.getSelection();
|
|
23
|
+
if (!selection || selection.rangeCount === 0) {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
const range = selection.getRangeAt(0);
|
|
27
|
+
const startBlock = range.startContainer.parentElement?.closest('.' + COMBINED_TEXT_BLOCK_PART);
|
|
28
|
+
const endBlock = range.endContainer.parentElement?.closest('.' + COMBINED_TEXT_BLOCK_PART);
|
|
29
|
+
const isStartAtBlockStart = startBlock === blockElement.firstChild && range.startOffset === 0;
|
|
30
|
+
const isEndAtBlockEnd = endBlock === blockElement.lastChild;
|
|
31
|
+
return isStartAtBlockStart && isEndAtBlockEnd;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWtleWJvYXJkLmV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvZXZlbnRzL2VkaXRvci1rZXlib2FyZC5ldmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFN0UsTUFBTSxvQkFBb0IsR0FBRyxXQUFXLENBQUM7QUFFekMsTUFBTSxVQUFVLHVCQUF1QixDQUFDLGFBQTBCLEVBQUUsTUFBbUI7SUFDbkYsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQzNFLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLEtBQW9CO0lBQ2hELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFxQixDQUFDO0lBQzNDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFFeEQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1QsT0FBTztJQUNYLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsTUFBTSxNQUFNLEdBQUcsU0FBUyxFQUFFLFVBQVUsQ0FBQztJQUVyQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMvQyxPQUFPO0lBQ1gsQ0FBQztJQUVELE1BQU0sVUFBVSxHQUFHLEtBQUssRUFBRSxpQkFBaUIsQ0FBQztJQUU1QyxVQUFVLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ2hELFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7QUFDekUsQ0FBQztBQUVELFNBQVMseUJBQXlCLENBQUMsWUFBcUI7SUFDcEQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRXhDLElBQUksQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFVBQVUsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMzQyxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsR0FBRyxHQUFHLHdCQUF3QixDQUFDLENBQUM7SUFDL0YsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLEdBQUcsR0FBRyx3QkFBd0IsQ0FBQyxDQUFDO0lBRTNGLE1BQU0sbUJBQW1CLEdBQUcsVUFBVSxLQUFLLFlBQVksQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFdBQVcsS0FBSyxDQUFDLENBQUM7SUFDOUYsTUFBTSxlQUFlLEdBQUcsUUFBUSxLQUFLLFlBQVksQ0FBQyxTQUFTLENBQUM7SUFFNUQsT0FBTyxtQkFBbUIsSUFBSSxlQUFlLENBQUM7QUFDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENPTUJJTkVEX1RFWFRfQkxPQ0ssIENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XHJcblxyXG5jb25zdCBGSVJTVF9DSElMRF9TRUxFQ1RPUiA9ICdfc2VsZWN0ZWQnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldEVkaXRvcktleWJvYXJkRXZlbnRzKGVkaXRvckVsZW1lbnQ6IEhUTUxFbGVtZW50LCBzaWduYWw6IEFib3J0U2lnbmFsKTogdm9pZCB7XHJcbiAgICBlZGl0b3JFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBrZXlkb3duTGlzdGVuZXIsIHsgc2lnbmFsIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24ga2V5ZG93bkxpc3RlbmVyKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCBibG9jayA9IHRhcmdldC5jbG9zZXN0KGAuJHtDT01CSU5FRF9URVhUX0JMT0NLfWApO1xyXG5cclxuICAgIGlmICghYmxvY2spIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpO1xyXG4gICAgY29uc3QgcmFuZ2VzID0gc2VsZWN0aW9uPy5yYW5nZUNvdW50O1xyXG5cclxuICAgIGlmICghcmFuZ2VzIHx8ICFjaGVja0lzQmxvY2tGdWxseVNlbGVjdGVkKGJsb2NrKSkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBmaXJzdENoaWxkID0gYmxvY2s/LmZpcnN0RWxlbWVudENoaWxkO1xyXG5cclxuICAgIGZpcnN0Q2hpbGQ/LmNsYXNzTGlzdC5hZGQoRklSU1RfQ0hJTERfU0VMRUNUT1IpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiBmaXJzdENoaWxkPy5jbGFzc0xpc3QucmVtb3ZlKEZJUlNUX0NISUxEX1NFTEVDVE9SKSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNoZWNrSXNCbG9ja0Z1bGx5U2VsZWN0ZWQoYmxvY2tFbGVtZW50OiBFbGVtZW50KTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7XHJcblxyXG4gICAgaWYgKCFzZWxlY3Rpb24gfHwgc2VsZWN0aW9uLnJhbmdlQ291bnQgPT09IDApIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgcmFuZ2UgPSBzZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKTtcclxuICAgIGNvbnN0IHN0YXJ0QmxvY2sgPSByYW5nZS5zdGFydENvbnRhaW5lci5wYXJlbnRFbGVtZW50Py5jbG9zZXN0KCcuJyArIENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCk7XHJcbiAgICBjb25zdCBlbmRCbG9jayA9IHJhbmdlLmVuZENvbnRhaW5lci5wYXJlbnRFbGVtZW50Py5jbG9zZXN0KCcuJyArIENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCk7XHJcblxyXG4gICAgY29uc3QgaXNTdGFydEF0QmxvY2tTdGFydCA9IHN0YXJ0QmxvY2sgPT09IGJsb2NrRWxlbWVudC5maXJzdENoaWxkICYmIHJhbmdlLnN0YXJ0T2Zmc2V0ID09PSAwO1xyXG4gICAgY29uc3QgaXNFbmRBdEJsb2NrRW5kID0gZW5kQmxvY2sgPT09IGJsb2NrRWxlbWVudC5sYXN0Q2hpbGQ7XHJcblxyXG4gICAgcmV0dXJuIGlzU3RhcnRBdEJsb2NrU3RhcnQgJiYgaXNFbmRBdEJsb2NrRW5kO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { EDITOR_TOOL_MODAL_SELECTOR } from '../components';
|
|
2
|
+
export function setEditorInfoModalEvents(editorElement, signal) {
|
|
3
|
+
editorElement?.addEventListener('pointerup', pointerUpListener, { signal });
|
|
4
|
+
}
|
|
5
|
+
export function pointerUpListener(event) {
|
|
6
|
+
const selection = window.getSelection();
|
|
7
|
+
if (selection && selection.toString().length > 0) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const target = event.target;
|
|
11
|
+
const marker = target.closest('.marker');
|
|
12
|
+
if (!marker) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
onMarkerClick(marker);
|
|
16
|
+
}
|
|
17
|
+
export function onMarkerClick(marker) {
|
|
18
|
+
const id = marker.dataset['id'];
|
|
19
|
+
const type = marker.dataset['type'];
|
|
20
|
+
if (!(id && type)) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const toolModal = document.createElement(EDITOR_TOOL_MODAL_SELECTOR);
|
|
24
|
+
toolModal.tool = { id, type, title: 'Молоток КУБИПРО Ультра MAX 3000' };
|
|
25
|
+
toolModal.marker = marker;
|
|
26
|
+
toolModal.addEventListener('closed', function onCloseModal() {
|
|
27
|
+
toolModal.remove();
|
|
28
|
+
});
|
|
29
|
+
document.body.append(toolModal);
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLW1vZGFsLmV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvZXZlbnRzL2VkaXRvci1tb2RhbC5ldmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsMEJBQTBCLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBR3JGLE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxhQUEwQixFQUFFLE1BQW1CO0lBQ3BGLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBaUI7SUFDL0MsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRXhDLElBQUksU0FBUyxJQUFJLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDL0MsT0FBTztJQUNYLENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztJQUMzQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBZ0IsQ0FBQztJQUV4RCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDVixPQUFPO0lBQ1gsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxNQUFtQjtJQUM3QyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFlLENBQUM7SUFFbEQsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDaEIsT0FBTztJQUNYLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLDBCQUEwQixDQUFnRCxDQUFDO0lBRXBILFNBQVMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxpQ0FBaUMsRUFBRSxDQUFDO0lBQ3hFLFNBQVMsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBRTFCLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsU0FBUyxZQUFZO1FBQ3RELFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN2QixDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdWlBbmd1bGFyRWxlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xyXG5cclxuaW1wb3J0IHsgRURJVE9SX1RPT0xfTU9EQUxfU0VMRUNUT1IsIEVkaXRvclRvb2xNb2RhbENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgdHlwZSB7IE1hcmtlclR5cGUgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2V0RWRpdG9ySW5mb01vZGFsRXZlbnRzKGVkaXRvckVsZW1lbnQ6IEhUTUxFbGVtZW50LCBzaWduYWw6IEFib3J0U2lnbmFsKTogdm9pZCB7XHJcbiAgICBlZGl0b3JFbGVtZW50Py5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVydXAnLCBwb2ludGVyVXBMaXN0ZW5lciwgeyBzaWduYWwgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwb2ludGVyVXBMaXN0ZW5lcihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpO1xyXG5cclxuICAgIGlmIChzZWxlY3Rpb24gJiYgc2VsZWN0aW9uLnRvU3RyaW5nKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCBtYXJrZXIgPSB0YXJnZXQuY2xvc2VzdCgnLm1hcmtlcicpIGFzIEhUTUxFbGVtZW50O1xyXG5cclxuICAgIGlmICghbWFya2VyKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIG9uTWFya2VyQ2xpY2sobWFya2VyKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG9uTWFya2VyQ2xpY2sobWFya2VyOiBIVE1MRWxlbWVudCk6IHZvaWQge1xyXG4gICAgY29uc3QgaWQgPSBtYXJrZXIuZGF0YXNldFsnaWQnXTtcclxuICAgIGNvbnN0IHR5cGUgPSBtYXJrZXIuZGF0YXNldFsndHlwZSddIGFzIE1hcmtlclR5cGU7XHJcblxyXG4gICAgaWYgKCEoaWQgJiYgdHlwZSkpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdG9vbE1vZGFsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChFRElUT1JfVE9PTF9NT0RBTF9TRUxFQ1RPUikgYXMgQ3VpQW5ndWxhckVsZW1lbnQ8RWRpdG9yVG9vbE1vZGFsQ29tcG9uZW50PjtcclxuXHJcbiAgICB0b29sTW9kYWwudG9vbCA9IHsgaWQsIHR5cGUsIHRpdGxlOiAn0JzQvtC70L7RgtC+0Log0JrQo9CR0JjQn9Cg0J4g0KPQu9GM0YLRgNCwIE1BWCAzMDAwJyB9O1xyXG4gICAgdG9vbE1vZGFsLm1hcmtlciA9IG1hcmtlcjtcclxuXHJcbiAgICB0b29sTW9kYWwuYWRkRXZlbnRMaXN0ZW5lcignY2xvc2VkJywgZnVuY3Rpb24gb25DbG9zZU1vZGFsKCkge1xyXG4gICAgICAgIHRvb2xNb2RhbC5yZW1vdmUoKTtcclxuICAgIH0pO1xyXG5cclxuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kKHRvb2xNb2RhbCk7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { tooltipMap } from '../utils';
|
|
2
|
+
const TOOLTIP_POSITION_X = 5;
|
|
3
|
+
const TOOLTIP_POSITION_Y = 40;
|
|
4
|
+
const TOOLTIP_SAFE_RIGHT_SHIFT = 10;
|
|
5
|
+
const TOOLTIP_DEBOUNCE_TIME = 500;
|
|
6
|
+
const CLOSE_TOOLTIP_DEBOUNCE_TIME = 50;
|
|
7
|
+
let tooltip;
|
|
8
|
+
let timeoutId;
|
|
9
|
+
let closeTimeoutId;
|
|
10
|
+
const closeTooltipHandler = () => closeTooltip();
|
|
11
|
+
function closeTooltip(callback) {
|
|
12
|
+
clearTimeout(closeTimeoutId);
|
|
13
|
+
closeTimeoutId = setTimeout(() => {
|
|
14
|
+
clearTimeout(timeoutId);
|
|
15
|
+
tooltip?.remove();
|
|
16
|
+
callback?.();
|
|
17
|
+
}, CLOSE_TOOLTIP_DEBOUNCE_TIME);
|
|
18
|
+
}
|
|
19
|
+
const debouncedEvent = (event, marker, target) => {
|
|
20
|
+
clearTimeout(timeoutId);
|
|
21
|
+
timeoutId = setTimeout(() => {
|
|
22
|
+
if (tooltip && tooltip?.contains(target)) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
closeTooltip(() => openTooltip(event, marker));
|
|
26
|
+
}, TOOLTIP_DEBOUNCE_TIME);
|
|
27
|
+
};
|
|
28
|
+
function openTooltip(event, marker) {
|
|
29
|
+
const type = marker.tagName;
|
|
30
|
+
tooltip = tooltipMap[type](marker);
|
|
31
|
+
tooltip.style.visibility = 'hidden';
|
|
32
|
+
document.body.append(tooltip);
|
|
33
|
+
setTimeout(() => {
|
|
34
|
+
const positionX = event.clientX;
|
|
35
|
+
const positionY = event.clientY;
|
|
36
|
+
const rightX = document.documentElement.clientWidth - positionX;
|
|
37
|
+
const rightShiftDiffX = tooltip.offsetWidth - rightX;
|
|
38
|
+
const rightShiftX = rightShiftDiffX > 0 ? rightShiftDiffX + TOOLTIP_SAFE_RIGHT_SHIFT : 0;
|
|
39
|
+
tooltip.style.top = positionY - TOOLTIP_POSITION_Y + 'px';
|
|
40
|
+
tooltip.style.left = positionX + TOOLTIP_POSITION_X - rightShiftX + 'px';
|
|
41
|
+
tooltip.style.visibility = 'visible';
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
export function setEditorTooltipEvents(signal) {
|
|
45
|
+
document.body.addEventListener('mousemove', mouseMoveListener, { signal });
|
|
46
|
+
document.body.addEventListener('mouseleave', closeTooltipHandler, { signal });
|
|
47
|
+
}
|
|
48
|
+
export function mouseMoveListener(event) {
|
|
49
|
+
const target = event.target;
|
|
50
|
+
const marker = target.closest('.marker');
|
|
51
|
+
if (tooltip?.contains(target)) {
|
|
52
|
+
clearTimeout(timeoutId);
|
|
53
|
+
clearTimeout(closeTimeoutId);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if (!marker) {
|
|
57
|
+
closeTooltip();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
clearTimeout(closeTimeoutId);
|
|
61
|
+
debouncedEvent(event, marker, target);
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2x0aXAuZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9ldmVudHMvZWRpdG9yLXRvb2x0aXAuZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUV0QyxNQUFNLGtCQUFrQixHQUFHLENBQUMsQ0FBQztBQUM3QixNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztBQUM5QixNQUFNLHdCQUF3QixHQUFHLEVBQUUsQ0FBQztBQUNwQyxNQUFNLHFCQUFxQixHQUFHLEdBQUcsQ0FBQztBQUNsQyxNQUFNLDJCQUEyQixHQUFHLEVBQUUsQ0FBQztBQUV2QyxJQUFJLE9BQW9CLENBQUM7QUFDekIsSUFBSSxTQUF3QyxDQUFDO0FBQzdDLElBQUksY0FBNkMsQ0FBQztBQUVsRCxNQUFNLG1CQUFtQixHQUFHLEdBQVMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO0FBRXZELFNBQVMsWUFBWSxDQUFDLFFBQXFCO0lBQ3ZDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUU3QixjQUFjLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUM3QixZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDeEIsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQ2xCLFFBQVEsRUFBRSxFQUFFLENBQUM7SUFDakIsQ0FBQyxFQUFFLDJCQUEyQixDQUFDLENBQUM7QUFDcEMsQ0FBQztBQUVELE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBaUIsRUFBRSxNQUFtQixFQUFFLE1BQW1CLEVBQVEsRUFBRTtJQUN6RixZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFeEIsU0FBUyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDeEIsSUFBSSxPQUFPLElBQUksT0FBTyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLE9BQU87UUFDWCxDQUFDO1FBRUQsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNuRCxDQUFDLEVBQUUscUJBQXFCLENBQUMsQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRixTQUFTLFdBQVcsQ0FBQyxLQUFpQixFQUFFLE1BQW1CO0lBQ3ZELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxPQUFrQyxDQUFDO0lBRXZELE9BQU8sR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO0lBRXBDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRTlCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDWixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ2hDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDaEMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1FBQ2hFLE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO1FBQ3JELE1BQU0sV0FBVyxHQUFHLGVBQWUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsR0FBRyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXpGLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLFNBQVMsR0FBRyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDMUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsU0FBUyxHQUFHLGtCQUFrQixHQUFHLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDekUsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQ3pDLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxNQUFtQjtJQUN0RCxRQUFRLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDM0UsUUFBUSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQ2xGLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBaUI7SUFDL0MsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7SUFDM0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQWdCLENBQUM7SUFFeEQsSUFBSSxPQUFPLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDNUIsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hCLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUU3QixPQUFPO0lBQ1gsQ0FBQztJQUVELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNWLFlBQVksRUFBRSxDQUFDO1FBRWYsT0FBTztJQUNYLENBQUM7SUFFRCxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDN0IsY0FBYyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDMUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRvb2x0aXBNYXAgfSBmcm9tICcuLi91dGlscyc7XHJcblxyXG5jb25zdCBUT09MVElQX1BPU0lUSU9OX1ggPSA1O1xyXG5jb25zdCBUT09MVElQX1BPU0lUSU9OX1kgPSA0MDtcclxuY29uc3QgVE9PTFRJUF9TQUZFX1JJR0hUX1NISUZUID0gMTA7XHJcbmNvbnN0IFRPT0xUSVBfREVCT1VOQ0VfVElNRSA9IDUwMDtcclxuY29uc3QgQ0xPU0VfVE9PTFRJUF9ERUJPVU5DRV9USU1FID0gNTA7XHJcblxyXG5sZXQgdG9vbHRpcDogSFRNTEVsZW1lbnQ7XHJcbmxldCB0aW1lb3V0SWQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+O1xyXG5sZXQgY2xvc2VUaW1lb3V0SWQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+O1xyXG5cclxuY29uc3QgY2xvc2VUb29sdGlwSGFuZGxlciA9ICgpOiB2b2lkID0+IGNsb3NlVG9vbHRpcCgpO1xyXG5cclxuZnVuY3Rpb24gY2xvc2VUb29sdGlwKGNhbGxiYWNrPzogKCkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgY2xlYXJUaW1lb3V0KGNsb3NlVGltZW91dElkKTtcclxuXHJcbiAgICBjbG9zZVRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xyXG4gICAgICAgIHRvb2x0aXA/LnJlbW92ZSgpO1xyXG4gICAgICAgIGNhbGxiYWNrPy4oKTtcclxuICAgIH0sIENMT1NFX1RPT0xUSVBfREVCT1VOQ0VfVElNRSk7XHJcbn1cclxuXHJcbmNvbnN0IGRlYm91bmNlZEV2ZW50ID0gKGV2ZW50OiBNb3VzZUV2ZW50LCBtYXJrZXI6IEhUTUxFbGVtZW50LCB0YXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCA9PiB7XHJcbiAgICBjbGVhclRpbWVvdXQodGltZW91dElkKTtcclxuXHJcbiAgICB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBpZiAodG9vbHRpcCAmJiB0b29sdGlwPy5jb250YWlucyh0YXJnZXQpKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNsb3NlVG9vbHRpcCgoKSA9PiBvcGVuVG9vbHRpcChldmVudCwgbWFya2VyKSk7XHJcbiAgICB9LCBUT09MVElQX0RFQk9VTkNFX1RJTUUpO1xyXG59O1xyXG5cclxuZnVuY3Rpb24gb3BlblRvb2x0aXAoZXZlbnQ6IE1vdXNlRXZlbnQsIG1hcmtlcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHR5cGUgPSBtYXJrZXIudGFnTmFtZSBhcyBrZXlvZiB0eXBlb2YgdG9vbHRpcE1hcDtcclxuXHJcbiAgICB0b29sdGlwID0gdG9vbHRpcE1hcFt0eXBlXShtYXJrZXIpO1xyXG4gICAgdG9vbHRpcC5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XHJcblxyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmQodG9vbHRpcCk7XHJcblxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcG9zaXRpb25YID0gZXZlbnQuY2xpZW50WDtcclxuICAgICAgICBjb25zdCBwb3NpdGlvblkgPSBldmVudC5jbGllbnRZO1xyXG4gICAgICAgIGNvbnN0IHJpZ2h0WCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCAtIHBvc2l0aW9uWDtcclxuICAgICAgICBjb25zdCByaWdodFNoaWZ0RGlmZlggPSB0b29sdGlwLm9mZnNldFdpZHRoIC0gcmlnaHRYO1xyXG4gICAgICAgIGNvbnN0IHJpZ2h0U2hpZnRYID0gcmlnaHRTaGlmdERpZmZYID4gMCA/IHJpZ2h0U2hpZnREaWZmWCArIFRPT0xUSVBfU0FGRV9SSUdIVF9TSElGVCA6IDA7XHJcblxyXG4gICAgICAgIHRvb2x0aXAuc3R5bGUudG9wID0gcG9zaXRpb25ZIC0gVE9PTFRJUF9QT1NJVElPTl9ZICsgJ3B4JztcclxuICAgICAgICB0b29sdGlwLnN0eWxlLmxlZnQgPSBwb3NpdGlvblggKyBUT09MVElQX1BPU0lUSU9OX1ggLSByaWdodFNoaWZ0WCArICdweCc7XHJcbiAgICAgICAgdG9vbHRpcC5zdHlsZS52aXNpYmlsaXR5ID0gJ3Zpc2libGUnO1xyXG4gICAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRFZGl0b3JUb29sdGlwRXZlbnRzKHNpZ25hbDogQWJvcnRTaWduYWwpOiB2b2lkIHtcclxuICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgbW91c2VNb3ZlTGlzdGVuZXIsIHsgc2lnbmFsIH0pO1xyXG4gICAgZG9jdW1lbnQuYm9keS5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgY2xvc2VUb29sdGlwSGFuZGxlciwgeyBzaWduYWwgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtb3VzZU1vdmVMaXN0ZW5lcihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY29uc3QgbWFya2VyID0gdGFyZ2V0LmNsb3Nlc3QoJy5tYXJrZXInKSBhcyBIVE1MRWxlbWVudDtcclxuXHJcbiAgICBpZiAodG9vbHRpcD8uY29udGFpbnModGFyZ2V0KSkge1xyXG4gICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xyXG4gICAgICAgIGNsZWFyVGltZW91dChjbG9zZVRpbWVvdXRJZCk7XHJcblxyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIW1hcmtlcikge1xyXG4gICAgICAgIGNsb3NlVG9vbHRpcCgpO1xyXG5cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJUaW1lb3V0KGNsb3NlVGltZW91dElkKTtcclxuICAgIGRlYm91bmNlZEV2ZW50KGV2ZW50LCBtYXJrZXIsIHRhcmdldCk7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { setEditorDragEvents } from './editor-drag.event';
|
|
2
|
+
import { setEditorKeyboardEvents } from './editor-keyboard.event';
|
|
3
|
+
import { setEditorInfoModalEvents } from './editor-modal.event';
|
|
4
|
+
import { setEditorTooltipEvents } from './editor-tooltip.event';
|
|
5
|
+
export function setEditorEvents(editorElement, signal) {
|
|
6
|
+
setEditorTooltipEvents(signal);
|
|
7
|
+
setEditorInfoModalEvents(editorElement, signal);
|
|
8
|
+
setEditorDragEvents(editorElement, signal);
|
|
9
|
+
setEditorKeyboardEvents(editorElement, signal);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWVkaXRvci1ldmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9ldmVudHMvc2V0LWVkaXRvci1ldmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFaEUsTUFBTSxVQUFVLGVBQWUsQ0FBQyxhQUEwQixFQUFFLE1BQW1CO0lBQzNFLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLHdCQUF3QixDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRCxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0MsdUJBQXVCLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzZXRFZGl0b3JEcmFnRXZlbnRzIH0gZnJvbSAnLi9lZGl0b3ItZHJhZy5ldmVudCc7XHJcbmltcG9ydCB7IHNldEVkaXRvcktleWJvYXJkRXZlbnRzIH0gZnJvbSAnLi9lZGl0b3Ita2V5Ym9hcmQuZXZlbnQnO1xyXG5pbXBvcnQgeyBzZXRFZGl0b3JJbmZvTW9kYWxFdmVudHMgfSBmcm9tICcuL2VkaXRvci1tb2RhbC5ldmVudCc7XHJcbmltcG9ydCB7IHNldEVkaXRvclRvb2x0aXBFdmVudHMgfSBmcm9tICcuL2VkaXRvci10b29sdGlwLmV2ZW50JztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRFZGl0b3JFdmVudHMoZWRpdG9yRWxlbWVudDogSFRNTEVsZW1lbnQsIHNpZ25hbDogQWJvcnRTaWduYWwpOiB2b2lkIHtcclxuICAgIHNldEVkaXRvclRvb2x0aXBFdmVudHMoc2lnbmFsKTtcclxuICAgIHNldEVkaXRvckluZm9Nb2RhbEV2ZW50cyhlZGl0b3JFbGVtZW50LCBzaWduYWwpO1xyXG4gICAgc2V0RWRpdG9yRHJhZ0V2ZW50cyhlZGl0b3JFbGVtZW50LCBzaWduYWwpO1xyXG4gICAgc2V0RWRpdG9yS2V5Ym9hcmRFdmVudHMoZWRpdG9yRWxlbWVudCwgc2lnbmFsKTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"FILE_TITLE": "File title",
|
|
3
|
+
"CAPTION": "Caption",
|
|
4
|
+
"TITLE": "Title",
|
|
5
|
+
"FIELD_IS_REQUIRED": "Field is required",
|
|
6
|
+
"PLEASE_KEEP_FIELD_UNDER_CHARACTERS": "Please keep field under characters",
|
|
7
|
+
"TOOL": "Tool",
|
|
8
|
+
"URL": "Url",
|
|
9
|
+
"SELECT_TOOL": "Select tool",
|
|
10
|
+
"LINK": "Link",
|
|
11
|
+
"INVALID_URL": "Invalid url",
|
|
12
|
+
"CANCEL": "Cancel",
|
|
13
|
+
"SAVE": "Save"
|
|
14
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './interfaces';
|
|
2
|
+
export { CuiEditorComponent } from './editor.component';
|
|
3
|
+
export { cuiProvideEditor } from './config';
|
|
4
|
+
export { CuiFileUploaderStatus } from './utils';
|
|
5
|
+
export { CuiEditorTranslations } from './constants';
|
|
6
|
+
export { CuiAttachesTool, CuiHeaderTool, CuiImageTool, CuiVideoTool, CuiListTool, CuiLinkMarker, CuiToolMarker, CuiRoleMarker } from './tools';
|
|
7
|
+
export { CuiEditorReadonlyComponent, CuiEditorBlockComponent, CuiEditorModalComponent } from './widgets';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQztBQUM3QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRCxPQUFPLEVBQ0gsZUFBZSxFQUNmLGFBQWEsRUFDYixZQUFZLEVBQ1osWUFBWSxFQUNaLFdBQVcsRUFDWCxhQUFhLEVBQ2IsYUFBYSxFQUNiLGFBQWEsRUFDaEIsTUFBTSxTQUFTLENBQUM7QUFPakIsT0FBTyxFQUNILDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsdUJBQXVCLEVBQzFCLE1BQU0sV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcclxuZXhwb3J0IHsgQ3VpRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9lZGl0b3IuY29tcG9uZW50JztcclxuZXhwb3J0IHsgY3VpUHJvdmlkZUVkaXRvciB9IGZyb20gJy4vY29uZmlnJztcclxuZXhwb3J0IHsgQ3VpRmlsZVVwbG9hZGVyU3RhdHVzIH0gZnJvbSAnLi91dGlscyc7XHJcbmV4cG9ydCB7IEN1aUVkaXRvclRyYW5zbGF0aW9ucyB9IGZyb20gJy4vY29uc3RhbnRzJztcclxuZXhwb3J0IHtcclxuICAgIEN1aUF0dGFjaGVzVG9vbCxcclxuICAgIEN1aUhlYWRlclRvb2wsXHJcbiAgICBDdWlJbWFnZVRvb2wsXHJcbiAgICBDdWlWaWRlb1Rvb2wsXHJcbiAgICBDdWlMaXN0VG9vbCxcclxuICAgIEN1aUxpbmtNYXJrZXIsXHJcbiAgICBDdWlUb29sTWFya2VyLFxyXG4gICAgQ3VpUm9sZU1hcmtlclxyXG59IGZyb20gJy4vdG9vbHMnO1xyXG5leHBvcnQgdHlwZSB7IEN1aUVkaXRvclJlYWRvbmx5Q29uZmlnIH0gZnJvbSAnLi93aWRnZXRzJztcclxuZXhwb3J0IHtcclxuICAgIEN1aVZpZGVvVG9vbENvbmZpZyxcclxuICAgIEN1aUF0dGFjaGVzVG9vbENvbmZpZyxcclxuICAgIEN1aUltYWdlVG9vbENvbmZpZ1xyXG59IGZyb20gJy4vY29tcG9uZW50cyc7XHJcbmV4cG9ydCB7XHJcbiAgICBDdWlFZGl0b3JSZWFkb25seUNvbXBvbmVudCxcclxuICAgIEN1aUVkaXRvckJsb2NrQ29tcG9uZW50LFxyXG4gICAgQ3VpRWRpdG9yTW9kYWxDb21wb25lbnRcclxufSBmcm9tICcuL3dpZGdldHMnO1xyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1lbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvaW50ZXJmYWNlcy9hbmd1bGFyLWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTmdFbGVtZW50LCBXaXRoUHJvcGVydGllcyB9IGZyb20gJ0Bhbmd1bGFyL2VsZW1lbnRzJztcclxuXHJcbmV4cG9ydCB0eXBlIEN1aUFuZ3VsYXJFbGVtZW50PFQ+ID0gTmdFbGVtZW50ICYgV2l0aFByb3BlcnRpZXM8VD47XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tzLXJlcXVlc3QtZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2ludGVyZmFjZXMvYmxvY2tzLXJlcXVlc3QtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgdHlwZSB7IEN1aUZ1bGxCbG9ja0RhdGEgfSBmcm9tICcuL2Z1bGwtYmxvY2stZGF0YSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUJsb2Nrc1JlcXVlc3REYXRhIHtcclxuICByZWFkb25seSBhZGRCbG9ja3MkOiBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcclxuICByZWFkb25seSBhZGRlZEJsb2NrczogQ3VpRnVsbEJsb2NrRGF0YVtdO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZWQtYmxvY2stYWRkaW5nLWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvaW50ZXJmYWNlcy9jb21iaW5lZC1ibG9jay1hZGRpbmctZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmxvY2sgfSBmcm9tICcuLi9zZXJ2aWNlcy9qdGV4dC1hcGkub3B0aW9ucyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUNvbWJpbmVkQmxvY2tBZGRpbmdFdmVudCB7XHJcbiAgcmVhZG9ubHkgaW5kZXg6IG51bWJlcjtcclxuICByZWFkb25seSBibG9ja0luZGV4OiBudW1iZXI7XHJcbiAgcmVhZG9ubHkgYmxvY2tzOiBCbG9ja1tdO1xyXG4gIHJlYWRvbmx5IGRhdGE6IEJsb2NrW107XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZWQtYmxvY2stZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2ludGVyZmFjZXMvY29tYmluZWQtYmxvY2stZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDdWlDb21iaW5lZFBhcnRCbG9jayB9IGZyb20gJy4vY29tYmluZWQtcGFydC1ibG9jay1kYXRhJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpQ29tYmluZWRCbG9ja1Rvb2xEYXRhIHtcclxuICBpZDogc3RyaW5nO1xyXG4gIHRleHRCbG9ja3M6IEN1aUNvbWJpbmVkUGFydEJsb2NrW107XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZWQtcGFydC1ibG9jay1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvaW50ZXJmYWNlcy9jb21iaW5lZC1wYXJ0LWJsb2NrLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmxvY2sgfSBmcm9tICcuLi9zZXJ2aWNlcy9qdGV4dC1hcGkub3B0aW9ucyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUNvbWJpbmVkUGFydEJsb2NrRGF0YSB7XHJcbiAgcmVhZG9ubHkgdGV4dDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IHBhcmVudElkOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgcGFyZW50VHlwZTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDdWlDb21iaW5lZFBhcnRCbG9jayA9IEJsb2NrPEN1aUNvbWJpbmVkUGFydEJsb2NrRGF0YT47XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWVsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9pbnRlcmZhY2VzL2N1c3RvbS1lbGVtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpQ3VzdG9tRWxlbWVudCB7XHJcbiAgICByZWFkb25seSBzZWxlY3Rvcjogc3RyaW5nO1xyXG4gICAgcmVhZG9ubHkgY29tcG9uZW50OiBUeXBlPHVua25vd24+O1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtYWN0aW9uLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9pbnRlcmZhY2VzL2V2ZW50LWFjdGlvbi1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJsb2NrTXV0YXRpb25FdmVudCB9IGZyb20gJ0BlZGl0b3Jqcy9lZGl0b3Jqcyc7XHJcblxyXG5pbXBvcnQgdHlwZSB7IEV2ZW50QWN0aW9ucyB9IGZyb20gJy4uL3NlcnZpY2VzL2VkaXRvci1zZXJ2aWNlLm9wdGlvbnMnO1xyXG5cclxuZXhwb3J0IHR5cGUgQ3VpRXZlbnRBY3Rpb25EYXRhID0geyBba2V5IGluIEV2ZW50QWN0aW9uc106IEJsb2NrTXV0YXRpb25FdmVudFtdIH07XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1yZXNwb25zZS1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvaW50ZXJmYWNlcy9maWxlLXJlc3BvbnNlLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ3VpRmlsZVJlc3BvbnNlRGF0YSB7XHJcbiAgICByZWFkb25seSBzdWNjZXNzOiBudW1iZXI7XHJcbiAgICByZWFkb25seSBmaWxlOiBDdWlGaWxlRGF0YTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWlGaWxlRGF0YSB7XHJcbiAgcmVhZG9ubHkgdXJsOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgc2l6ZT86IG51bWJlcjtcclxuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IGV4dGVuc2lvbj86IHN0cmluZztcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVsbC1ibG9jay1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvaW50ZXJmYWNlcy9mdWxsLWJsb2NrLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmxvY2sgfSBmcm9tICcuLi9zZXJ2aWNlcy9qdGV4dC1hcGkub3B0aW9ucyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUZ1bGxCbG9ja0RhdGEgZXh0ZW5kcyBDdWlCbG9ja0RhdGEge1xyXG4gIHJlYWRvbmx5IGluZGV4OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpQmxvY2tEYXRhIHtcclxuICByZWFkb25seSBpZDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IGJsb2NrOiBCbG9jaztcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from './blocks-request-data';
|
|
2
|
+
export * from './combined-block-adding-event';
|
|
3
|
+
export * from './combined-block-data';
|
|
4
|
+
export * from './combined-part-block-data';
|
|
5
|
+
export * from './event-action-data';
|
|
6
|
+
export * from './file-response-data';
|
|
7
|
+
export * from './full-block-data';
|
|
8
|
+
export * from './custom-element';
|
|
9
|
+
export * from './angular-element';
|
|
10
|
+
export * from './mutation-actions';
|
|
11
|
+
export * from './parent';
|
|
12
|
+
export * from './tools';
|
|
13
|
+
export * from './tune';
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUJBQW1CLENBQUM7QUFFbEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Jsb2Nrcy1yZXF1ZXN0LWRhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbWJpbmVkLWJsb2NrLWFkZGluZy1ldmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tYmluZWQtYmxvY2stZGF0YSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tYmluZWQtcGFydC1ibG9jay1kYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9ldmVudC1hY3Rpb24tZGF0YSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1yZXNwb25zZS1kYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9mdWxsLWJsb2NrLWRhdGEnO1xyXG5leHBvcnQgeyBDdWlFZGl0b3JDb25maWcsIEN1aVJlcXVlc3RPcHRpb25zIH0gZnJvbSAnLi9tYWluLWVkaXRvci1jb25maWcnO1xyXG5leHBvcnQgKiBmcm9tICcuL2N1c3RvbS1lbGVtZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9hbmd1bGFyLWVsZW1lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL211dGF0aW9uLWFjdGlvbnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3BhcmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdG9vbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3R1bmUnO1xyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi1lZGl0b3ItY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvaW50ZXJmYWNlcy9tYWluLWVkaXRvci1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDb250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgdHlwZSB7IEN1aVRvb2xzIH0gZnJvbSAnLi90b29scyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUVkaXRvckNvbmZpZyB7XHJcbiAgcmVhZG9ubHkgdG9vbHM/OiBDdWlUb29scztcclxuICByZWFkb25seSByZWFkT25seT86IGJvb2xlYW47XHJcbiAgcmVhZG9ubHkgYXV0b2ZvY3VzPzogYm9vbGVhbjtcclxuICByZWFkb25seSBlbGVtZW50PzogSFRNTEVsZW1lbnQ7XHJcbiAgcmVhZG9ubHkgd2l0aG91dFByZWxvYWQ/OiBib29sZWFuO1xyXG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IHJlYWRvbmx5UGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgcmVxdWVzdE9wdGlvbnM/OiBDdWlSZXF1ZXN0T3B0aW9ucztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWlSZXF1ZXN0T3B0aW9ucyB7XHJcbiAgcmVhZG9ubHkgY29udGV4dD86IEh0dHBDb250ZXh0O1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXV0YXRpb24tYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2ludGVyZmFjZXMvbXV0YXRpb24tYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQ3VpTXV0YXRpb25DYWxsYmFjayA9IChtdXRhdGlvbkxpc3Q6IE11dGF0aW9uUmVjb3JkW10pID0+IHZvaWQ7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aU11dGF0aW9uQWN0aW9ucyB7XHJcbiAgcmVhZG9ubHkgdXBkYXRlZEVsZW1lbnRzOiBTZXQ8SFRNTEVsZW1lbnQ+O1xyXG4gIHJlYWRvbmx5IHJlbW92ZWRFbGVtZW50c0lkczogU2V0PHN0cmluZz47XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvaW50ZXJmYWNlcy9wYXJlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ3VpUGFyZW50IHtcclxuICByZWFkb25seSBjbGFzc05hbWU6IHN0cmluZztcclxuICByZWFkb25seSBwYXJlbnQ6IEVsZW1lbnQ7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9pbnRlcmZhY2VzL3Rvb2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFRvb2xDb25zdHJ1Y3RhYmxlLCBUb29sU2V0dGluZ3MgfSBmcm9tICdAZWRpdG9yanMvZWRpdG9yanMnO1xyXG5cclxuZXhwb3J0IHR5cGUgQ3VpVG9vbHMgPSB7IFtrZXk6IHN0cmluZ106IFRvb2xDb25zdHJ1Y3RhYmxlIHwgVG9vbFNldHRpbmdzIH07XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHVuZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2ludGVyZmFjZXMvdHVuZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBDdWlUdW5lIHtcclxuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgdGl0bGU6IHN0cmluZztcclxuICByZWFkb25seSBpY29uPzogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IHRvZ2dsZTogYm9vbGVhbjtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class FileSizePipe {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.SIZES = ['Bytes', 'KB', 'MB', 'GB'];
|
|
6
|
+
this.BYTES_IN_KILOBYTE = 1024;
|
|
7
|
+
}
|
|
8
|
+
transform(bytes) {
|
|
9
|
+
if (isNaN(bytes) || bytes === 0) {
|
|
10
|
+
return '0 Bytes';
|
|
11
|
+
}
|
|
12
|
+
const index = Math.floor(Math.log(bytes) / Math.log(this.BYTES_IN_KILOBYTE));
|
|
13
|
+
return `${parseFloat((bytes / Math.pow(this.BYTES_IN_KILOBYTE, index)).toFixed(1))} ${this.SIZES[index]}`;
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileSizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
16
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: FileSizePipe, isStandalone: true, name: "fileSize" }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileSizePipe, decorators: [{
|
|
19
|
+
type: Pipe,
|
|
20
|
+
args: [{
|
|
21
|
+
name: 'fileSize',
|
|
22
|
+
standalone: true
|
|
23
|
+
}]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zaXplLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9waXBlcy9maWxlLXNpemUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1yQyxNQUFNLE9BQU8sWUFBWTtJQUp6QjtRQUtxQixVQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwQyxzQkFBaUIsR0FBRyxJQUFJLENBQUM7S0FXN0M7SUFUVSxTQUFTLENBQUMsS0FBYTtRQUMxQixJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDOUIsT0FBTyxTQUFTLENBQUM7UUFDckIsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7UUFFN0UsT0FBTyxHQUFHLFVBQVUsQ0FBQyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztJQUM5RyxDQUFDOytHQVpRLFlBQVk7NkdBQVosWUFBWTs7NEZBQVosWUFBWTtrQkFKeEIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsVUFBVTtvQkFDaEIsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6ICdmaWxlU2l6ZScsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWxlU2l6ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgU0laRVMgPSBbJ0J5dGVzJywgJ0tCJywgJ01CJywgJ0dCJ107XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IEJZVEVTX0lOX0tJTE9CWVRFID0gMTAyNDtcclxuXHJcbiAgICBwdWJsaWMgdHJhbnNmb3JtKGJ5dGVzOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmIChpc05hTihieXRlcykgfHwgYnl0ZXMgPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuICcwIEJ5dGVzJztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gTWF0aC5mbG9vcihNYXRoLmxvZyhieXRlcykgLyBNYXRoLmxvZyh0aGlzLkJZVEVTX0lOX0tJTE9CWVRFKSk7XHJcblxyXG4gICAgICAgIHJldHVybiBgJHtwYXJzZUZsb2F0KChieXRlcyAvIE1hdGgucG93KHRoaXMuQllURVNfSU5fS0lMT0JZVEUsIGluZGV4KSkudG9GaXhlZCgxKSl9ICR7dGhpcy5TSVpFU1tpbmRleF19YDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export const BlockConversionToCombined = {
|
|
2
|
+
paragraph: 'combinedTextBlock'
|
|
3
|
+
};
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXNlcnZpY2Uub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL3NlcnZpY2VzL2VkaXRvci1zZXJ2aWNlLm9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUc7SUFDckMsU0FBUyxFQUFFLG1CQUFtQjtDQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJsb2NrQ29udmVyc2lvblRvQ29tYmluZWQgPSB7XHJcbiAgICBwYXJhZ3JhcGg6ICdjb21iaW5lZFRleHRCbG9jaydcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBlbnVtIEV2ZW50QWN0aW9ucyB7XHJcbiAgICBhZGQgPSAnYmxvY2stYWRkZWQnLFxyXG4gICAgdXBkYXRlID0gJ2Jsb2NrLWNoYW5nZWQnLFxyXG4gICAgcmVtb3ZlID0gJ2Jsb2NrLXJlbW92ZWQnXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { DestroyRef, Injectable, inject } from '@angular/core';
|
|
2
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { forkJoin, of } from 'rxjs';
|
|
4
|
+
import { COMBINED_TEXT_BLOCK_ADDED, COMBINED_TEXT_BLOCK_NAME, COMBINED_TEXT_BLOCK_PART, COMBINED_TEXT_BLOCK_REMOVED, COMBINED_TEXT_BLOCK_UPDATED } from '../constants';
|
|
5
|
+
import { generateId } from '../utils/generate-id';
|
|
6
|
+
import { CuiJTextApiService } from './jtext-api.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class CuiEditorService {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.destroyRef = inject(DestroyRef);
|
|
11
|
+
this.jtextService = inject(CuiJTextApiService);
|
|
12
|
+
}
|
|
13
|
+
sortEventsByTypes(events) {
|
|
14
|
+
const blocks = {
|
|
15
|
+
'block-removed': [],
|
|
16
|
+
'block-added': [],
|
|
17
|
+
'block-changed': []
|
|
18
|
+
};
|
|
19
|
+
events.forEach((editorEvent) => {
|
|
20
|
+
if (editorEvent.detail.target.name === COMBINED_TEXT_BLOCK_NAME) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const eventType = editorEvent.type;
|
|
24
|
+
if (eventType === "block-changed" /* EventActions.update */) {
|
|
25
|
+
const changedBlock = blocks["block-added" /* EventActions.add */].find((block) => block.detail.target.id === editorEvent.detail.target.id);
|
|
26
|
+
if (changedBlock) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if (eventType === "block-removed" /* EventActions.remove */) {
|
|
31
|
+
const len = blocks["block-added" /* EventActions.add */].length;
|
|
32
|
+
blocks["block-added" /* EventActions.add */] = blocks["block-added" /* EventActions.add */].filter((block) => block.detail.target.id !== editorEvent.detail.target.id);
|
|
33
|
+
if (len > blocks["block-added" /* EventActions.add */].length) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
blocks[eventType].push(editorEvent);
|
|
38
|
+
});
|
|
39
|
+
return blocks;
|
|
40
|
+
}
|
|
41
|
+
collectAddedBlocksRequest(editorId, addedBlocks) {
|
|
42
|
+
const addBlocksBody = {
|
|
43
|
+
jtextContainerId: editorId,
|
|
44
|
+
position: addedBlocks[0]?.index,
|
|
45
|
+
block: addedBlocks.map((e) => e.block)
|
|
46
|
+
};
|
|
47
|
+
const addBlocks$ = addedBlocks.length ? this.jtextService.createBlocks(addBlocksBody) : of([]);
|
|
48
|
+
return addBlocks$;
|
|
49
|
+
}
|
|
50
|
+
collectUpdatedBlocksRequest(updatedBlocks, blockIdsMap) {
|
|
51
|
+
const updatedBlocksWithId = updatedBlocks.reduce((acc, block) => {
|
|
52
|
+
const blockWithId = {
|
|
53
|
+
...block,
|
|
54
|
+
id: blockIdsMap.get(block.id)
|
|
55
|
+
};
|
|
56
|
+
if (blockWithId.id) {
|
|
57
|
+
acc.push(blockWithId);
|
|
58
|
+
}
|
|
59
|
+
return acc;
|
|
60
|
+
}, []);
|
|
61
|
+
const updateBlocksArray = updatedBlocksWithId.map((block) => this.jtextService.updateBlock(block));
|
|
62
|
+
const updateBlocks$ = updatedBlocksWithId.length ? forkJoin(updateBlocksArray) : of([]);
|
|
63
|
+
return updateBlocks$;
|
|
64
|
+
}
|
|
65
|
+
collectRemovedBlocksRequest(editorId, removedBlocksIds, blockIdsMap) {
|
|
66
|
+
const removedBlocks = removedBlocksIds.reduce((blockIds, blockId) => {
|
|
67
|
+
const backendID = blockIdsMap.get(blockId);
|
|
68
|
+
if (backendID) {
|
|
69
|
+
blockIds.push(backendID);
|
|
70
|
+
}
|
|
71
|
+
return blockIds;
|
|
72
|
+
}, []);
|
|
73
|
+
const removeBlocks$ = removedBlocks.length ? this.jtextService.deleteBlocks(editorId, removedBlocks) : of();
|
|
74
|
+
removedBlocks.forEach((removedBlock) => {
|
|
75
|
+
blockIdsMap.delete(removedBlock);
|
|
76
|
+
});
|
|
77
|
+
return removeBlocks$;
|
|
78
|
+
}
|
|
79
|
+
getFullBlockData(event, editorData) {
|
|
80
|
+
const target = event.detail.target;
|
|
81
|
+
const index = Number(target.holder.dataset['index']);
|
|
82
|
+
const blockIndex = event.detail.index;
|
|
83
|
+
const blockType = target.name;
|
|
84
|
+
const blockId = target.id;
|
|
85
|
+
const currentBlockByIndex = editorData.blocks[blockIndex];
|
|
86
|
+
const blockData = currentBlockByIndex?.id === blockId ? editorData.blocks[blockIndex].data : { text: '' };
|
|
87
|
+
return {
|
|
88
|
+
index,
|
|
89
|
+
id: blockId,
|
|
90
|
+
block: {
|
|
91
|
+
type: blockType,
|
|
92
|
+
data: blockData
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
setListenersOnCustomBlockChanges(editor, data) {
|
|
97
|
+
editor.on(COMBINED_TEXT_BLOCK_ADDED, data.addedCallback);
|
|
98
|
+
editor.on(COMBINED_TEXT_BLOCK_UPDATED, data.updatedCallback);
|
|
99
|
+
editor.on(COMBINED_TEXT_BLOCK_REMOVED, data.removedCallback);
|
|
100
|
+
}
|
|
101
|
+
setStartBlock(editorId, callback) {
|
|
102
|
+
const blockId = generateId();
|
|
103
|
+
const emptyBlock = {
|
|
104
|
+
type: COMBINED_TEXT_BLOCK_PART,
|
|
105
|
+
data: {
|
|
106
|
+
text: '',
|
|
107
|
+
parentId: blockId,
|
|
108
|
+
parentType: COMBINED_TEXT_BLOCK_NAME
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
const body = {
|
|
112
|
+
position: 0,
|
|
113
|
+
block: emptyBlock,
|
|
114
|
+
jtextContainerId: editorId
|
|
115
|
+
};
|
|
116
|
+
this.jtextService
|
|
117
|
+
.createBlock(body)
|
|
118
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
119
|
+
.subscribe((id) => {
|
|
120
|
+
emptyBlock.id = id;
|
|
121
|
+
const block = {
|
|
122
|
+
id: blockId,
|
|
123
|
+
type: COMBINED_TEXT_BLOCK_NAME,
|
|
124
|
+
data: {
|
|
125
|
+
id: blockId,
|
|
126
|
+
textBlocks: [emptyBlock]
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
callback(block, id);
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiEditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
133
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiEditorService }); }
|
|
134
|
+
}
|
|
135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiEditorService, decorators: [{
|
|
136
|
+
type: Injectable
|
|
137
|
+
}] });
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9zZXJ2aWNlcy9lZGl0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJaEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUNILHlCQUF5QixFQUN6Qix3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQ3hCLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDOUIsTUFBTSxjQUFjLENBQUM7QUFRdEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUl6RCxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRXFCLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMsaUJBQVksR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQXFLOUQ7SUFuS1UsaUJBQWlCLENBQUMsTUFBNEI7UUFDakQsTUFBTSxNQUFNLEdBQXVCO1lBQy9CLGVBQWUsRUFBRSxFQUFFO1lBQ25CLGFBQWEsRUFBRSxFQUFFO1lBQ2pCLGVBQWUsRUFBRSxFQUFFO1NBQ3RCLENBQUM7UUFFRixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssd0JBQXdCLEVBQUUsQ0FBQztnQkFDOUQsT0FBTztZQUNYLENBQUM7WUFFRCxNQUFNLFNBQVMsR0FBRyxXQUFXLENB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QUcsRUFBRSxDQUFDO1lBRW5CLE1BQU0sS0FBSyxHQUFvQztnQkFDM0MsRUFBRSxFQUFFLE9BQU87Z0JBQ1gsSUFBSSxFQUFFLHdCQUF3QjtnQkFDOUIsSUFBSSxFQUFFO29CQUNGLEVBQUUsRUFBRSxPQUFPO29CQUNYLFVBQVUsRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDM0I7YUFDSixDQUFDO1lBRUYsUUFBUSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7K0dBdEtRLGdCQUFnQjttSEFBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHR5cGUgRWRpdG9ySlMgZnJvbSAnQGVkaXRvcmpzL2VkaXRvcmpzJztcclxuaW1wb3J0IHR5cGUgeyBCbG9ja011dGF0aW9uRXZlbnQsIE91dHB1dERhdGEgfSBmcm9tICdAZWRpdG9yanMvZWRpdG9yanMnO1xyXG5pbXBvcnQgdHlwZSB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZm9ya0pvaW4sIG9mIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgQ09NQklORURfVEVYVF9CTE9DS19BRERFRCxcclxuICAgIENPTUJJTkVEX1RFWFRfQkxPQ0tfTkFNRSxcclxuICAgIENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCxcclxuICAgIENPTUJJTkVEX1RFWFRfQkxPQ0tfUkVNT1ZFRCxcclxuICAgIENPTUJJTkVEX1RFWFRfQkxPQ0tfVVBEQVRFRFxyXG59IGZyb20gJy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB0eXBlIHtcclxuICAgIEN1aUNvbWJpbmVkQmxvY2tBZGRpbmdFdmVudCxcclxuICAgIEN1aUNvbWJpbmVkQmxvY2tUb29sRGF0YSxcclxuICAgIEN1aUNvbWJpbmVkUGFydEJsb2NrLFxyXG4gICAgQ3VpRXZlbnRBY3Rpb25EYXRhLFxyXG4gICAgQ3VpRnVsbEJsb2NrRGF0YVxyXG59IGZyb20gJy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBnZW5lcmF0ZUlkIH0gZnJvbSAnLi4vdXRpbHMvZ2VuZXJhdGUtaWQnO1xyXG5pbXBvcnQgdHlwZSB7IEJsb2NrIH0gZnJvbSAnLi9qdGV4dC1hcGkub3B0aW9ucyc7XHJcbmltcG9ydCB7IEN1aUpUZXh0QXBpU2VydmljZSB9IGZyb20gJy4vanRleHQtYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFdmVudEFjdGlvbnMgfSBmcm9tICcuL2VkaXRvci1zZXJ2aWNlLm9wdGlvbnMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ3VpRWRpdG9yU2VydmljZSB7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGp0ZXh0U2VydmljZSA9IGluamVjdChDdWlKVGV4dEFwaVNlcnZpY2UpO1xyXG5cclxuICAgIHB1YmxpYyBzb3J0RXZlbnRzQnlUeXBlcyhldmVudHM6IEJsb2NrTXV0YXRpb25FdmVudFtdKTogQ3VpRXZlbnRBY3Rpb25EYXRhIHtcclxuICAgICAgICBjb25zdCBibG9ja3M6IEN1aUV2ZW50QWN0aW9uRGF0YSA9IHtcclxuICAgICAgICAgICAgJ2Jsb2NrLXJlbW92ZWQnOiBbXSxcclxuICAgICAgICAgICAgJ2Jsb2NrLWFkZGVkJzogW10sXHJcbiAgICAgICAgICAgICdibG9jay1jaGFuZ2VkJzogW11cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBldmVudHMuZm9yRWFjaCgoZWRpdG9yRXZlbnQpID0+IHtcclxuICAgICAgICAgICAgaWYgKGVkaXRvckV2ZW50LmRldGFpbC50YXJnZXQubmFtZSA9PT0gQ09NQklORURfVEVYVF9CTE9DS19OQU1FKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGV2ZW50VHlwZSA9IGVkaXRvckV2ZW50LnR5cGU7XHJcblxyXG4gICAgICAgICAgICBpZiAoZXZlbnRUeXBlID09PSBFdmVudEFjdGlvbnMudXBkYXRlKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBjaGFuZ2VkQmxvY2sgPSBibG9ja3NbRXZlbnRBY3Rpb25zLmFkZF0uZmluZChcclxuICAgICAgICAgICAgICAgICAgICAoYmxvY2spID0+IGJsb2NrLmRldGFpbC50YXJnZXQuaWQgPT09IGVkaXRvckV2ZW50LmRldGFpbC50YXJnZXQuaWRcclxuICAgICAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGNoYW5nZWRCbG9jaykge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKGV2ZW50VHlwZSA9PT0gRXZlbnRBY3Rpb25zLnJlbW92ZSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbGVuID0gYmxvY2tzW0V2ZW50QWN0aW9ucy5hZGRdLmxlbmd0aDtcclxuXHJcbiAgICAgICAgICAgICAgICBibG9ja3NbRXZlbnRBY3Rpb25zLmFkZF0gPSBibG9ja3NbRXZlbnRBY3Rpb25zLmFkZF0uZmlsdGVyKFxyXG4gICAgICAgICAgICAgICAgICAgIChibG9jaykgPT4gYmxvY2suZGV0YWlsLnRhcmdldC5pZCAhPT0gZWRpdG9yRXZlbnQuZGV0YWlsLnRhcmdldC5pZFxyXG4gICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAobGVuID4gYmxvY2tzW0V2ZW50QWN0aW9ucy5hZGRdLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYmxvY2tzW2V2ZW50VHlwZSBhcyBFdmVudEFjdGlvbnNdLnB1c2goZWRpdG9yRXZlbnQpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gYmxvY2tzO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBjb2xsZWN0QWRkZWRCbG9ja3NSZXF1ZXN0KGVkaXRvcklkOiBzdHJpbmcsIGFkZGVkQmxvY2tzOiBDdWlGdWxsQmxvY2tEYXRhW10pOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICAgICAgY29uc3QgYWRkQmxvY2tzQm9keSA9IHtcclxuICAgICAgICAgICAganRleHRDb250YWluZXJJZDogZWRpdG9ySWQsXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhZGRlZEJsb2Nrc1swXT8uaW5kZXgsXHJcbiAgICAgICAgICAgIGJsb2NrOiBhZGRlZEJsb2Nrcy5tYXAoKGUpID0+IGUuYmxvY2spXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zdCBhZGRCbG9ja3MkID0gYWRkZWRCbG9ja3MubGVuZ3RoID8gdGhpcy5qdGV4dFNlcnZpY2UuY3JlYXRlQmxvY2tzKGFkZEJsb2Nrc0JvZHkpIDogb2YoW10pO1xyXG5cclxuICAgICAgICByZXR1cm4gYWRkQmxvY2tzJDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY29sbGVjdFVwZGF0ZWRCbG9ja3NSZXF1ZXN0KHVwZGF0ZWRCbG9ja3M6IEJsb2NrW10sIGJsb2NrSWRzTWFwOiBNYXA8c3RyaW5nLCBzdHJpbmc+KTogT2JzZXJ2YWJsZTxCbG9ja1tdPiB7XHJcbiAgICAgICAgY29uc3QgdXBkYXRlZEJsb2Nrc1dpdGhJZCA9IHVwZGF0ZWRCbG9ja3MucmVkdWNlKChhY2MsIGJsb2NrKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGJsb2NrV2l0aElkID0ge1xyXG4gICAgICAgICAgICAgICAgLi4uYmxvY2ssXHJcbiAgICAgICAgICAgICAgICBpZDogYmxvY2tJZHNNYXAuZ2V0KGJsb2NrLmlkISlcclxuICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgIGlmIChibG9ja1dpdGhJZC5pZCkge1xyXG4gICAgICAgICAgICAgICAgYWNjLnB1c2goYmxvY2tXaXRoSWQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICAgIH0sIFtdIGFzIEJsb2NrW10pO1xyXG5cclxuICAgICAgICBjb25zdCB1cGRhdGVCbG9ja3NBcnJheSA9IHVwZGF0ZWRCbG9ja3NXaXRoSWQubWFwKChibG9jaykgPT4gdGhpcy5qdGV4dFNlcnZpY2UudXBkYXRlQmxvY2soYmxvY2spKTtcclxuICAgICAgICBjb25zdCB1cGRhdGVCbG9ja3MkID0gdXBkYXRlZEJsb2Nrc1dpdGhJZC5sZW5ndGggPyBmb3JrSm9pbih1cGRhdGVCbG9ja3NBcnJheSkgOiBvZihbXSk7XHJcblxyXG4gICAgICAgIHJldHVybiB1cGRhdGVCbG9ja3MkO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBjb2xsZWN0UmVtb3ZlZEJsb2Nrc1JlcXVlc3QoXHJcbiAgICAgICAgZWRpdG9ySWQ6IHN0cmluZyxcclxuICAgICAgICByZW1vdmVkQmxvY2tzSWRzOiBzdHJpbmdbXSxcclxuICAgICAgICBibG9ja0lkc01hcDogTWFwPHN0cmluZywgc3RyaW5nPlxyXG4gICAgKTogT2JzZXJ2YWJsZTx2b2lkPiB7XHJcbiAgICAgICAgY29uc3QgcmVtb3ZlZEJsb2Nrczogc3RyaW5nW10gPSByZW1vdmVkQmxvY2tzSWRzLnJlZHVjZSgoYmxvY2tJZHMsIGJsb2NrSWQpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgYmFja2VuZElEID0gYmxvY2tJZHNNYXAuZ2V0KGJsb2NrSWQpIGFzIHN0cmluZztcclxuXHJcbiAgICAgICAgICAgIGlmIChiYWNrZW5kSUQpIHtcclxuICAgICAgICAgICAgICAgIGJsb2NrSWRzLnB1c2goYmFja2VuZElEKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIGJsb2NrSWRzO1xyXG4gICAgICAgIH0sIFtdIGFzIHN0cmluZ1tdKTtcclxuXHJcbiAgICAgICAgY29uc3QgcmVtb3ZlQmxvY2tzJCA9IHJlbW92ZWRCbG9ja3MubGVuZ3RoID8gdGhpcy5qdGV4dFNlcnZpY2UuZGVsZXRlQmxvY2tzKGVkaXRvcklkLCByZW1vdmVkQmxvY2tzKSA6IG9mKCk7XHJcblxyXG4gICAgICAgIHJlbW92ZWRCbG9ja3MuZm9yRWFjaCgocmVtb3ZlZEJsb2NrKSA9PiB7XHJcbiAgICAgICAgICAgIGJsb2NrSWRzTWFwLmRlbGV0ZShyZW1vdmVkQmxvY2spO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gcmVtb3ZlQmxvY2tzJDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0RnVsbEJsb2NrRGF0YShldmVudDogQmxvY2tNdXRhdGlvbkV2ZW50LCBlZGl0b3JEYXRhOiBPdXRwdXREYXRhKTogQ3VpRnVsbEJsb2NrRGF0YSB7XHJcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQuZGV0YWlsLnRhcmdldDtcclxuICAgICAgICBjb25zdCBpbmRleCA9IE51bWJlcih0YXJnZXQuaG9sZGVyLmRhdGFzZXRbJ2luZGV4J10pO1xyXG4gICAgICAgIGNvbnN0IGJsb2NrSW5kZXggPSAoZXZlbnQuZGV0YWlsIGFzIHVua25vd24gYXMgeyBpbmRleDogbnVtYmVyIH0pLmluZGV4O1xyXG4gICAgICAgIGNvbnN0IGJsb2NrVHlwZSA9IHRhcmdldC5uYW1lO1xyXG4gICAgICAgIGNvbnN0IGJsb2NrSWQgPSB0YXJnZXQuaWQ7XHJcbiAgICAgICAgY29uc3QgY3VycmVudEJsb2NrQnlJbmRleCA9IGVkaXRvckRhdGEuYmxvY2tzW2Jsb2NrSW5kZXhdO1xyXG4gICAgICAgIGNvbnN0IGJsb2NrRGF0YSA9IGN1cnJlbnRCbG9ja0J5SW5kZXg/LmlkID09PSBibG9ja0lkID8gZWRpdG9yRGF0YS5ibG9ja3NbYmxvY2tJbmRleF0uZGF0YSA6IHsgdGV4dDogJycgfTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaW5kZXgsXHJcbiAgICAgICAgICAgIGlkOiBibG9ja0lkLFxyXG4gICAgICAgICAgICBibG9jazoge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogYmxvY2tUeXBlLFxyXG4gICAgICAgICAgICAgICAgZGF0YTogYmxvY2tEYXRhXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXRMaXN0ZW5lcnNPbkN1c3RvbUJsb2NrQ2hhbmdlcyhcclxuICAgICAgICBlZGl0b3I6IEVkaXRvckpTLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgcmVtb3ZlZENhbGxiYWNrOiAoYmxvY2tJZHM6IHN0cmluZ1tdKSA9PiB2b2lkO1xyXG4gICAgICAgICAgICB1cGRhdGVkQ2FsbGJhY2s6ICh1cGRhdGVkQmxvY2tzOiBCbG9ja1tdKSA9PiB2b2lkO1xyXG4gICAgICAgICAgICBhZGRlZENhbGxiYWNrOiAoZGF0YTogQ3VpQ29tYmluZWRCbG9ja0FkZGluZ0V2ZW50KSA9PiB2b2lkO1xyXG4gICAgICAgIH1cclxuICAgICk6IHZvaWQge1xyXG4gICAgICAgIGVkaXRvci5vbihDT01CSU5FRF9URVhUX0JMT0NLX0FEREVELCBkYXRhLmFkZGVkQ2FsbGJhY2spO1xyXG4gICAgICAgIGVkaXRvci5vbihDT01CSU5FRF9URVhUX0JMT0NLX1VQREFURUQsIGRhdGEudXBkYXRlZENhbGxiYWNrKTtcclxuICAgICAgICBlZGl0b3Iub24oQ09NQklORURfVEVYVF9CTE9DS19SRU1PVkVELCBkYXRhLnJlbW92ZWRDYWxsYmFjayk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldFN0YXJ0QmxvY2soZWRpdG9ySWQ6IHN0cmluZywgY2FsbGJhY2s6IChibG9jazogQmxvY2s8Q3VpQ29tYmluZWRCbG9ja1Rvb2xEYXRhPiwgaWQ6IHN0cmluZykgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGJsb2NrSWQgPSBnZW5lcmF0ZUlkKCk7XHJcbiAgICAgICAgY29uc3QgZW1wdHlCbG9jazogQ3VpQ29tYmluZWRQYXJ0QmxvY2sgPSB7XHJcbiAgICAgICAgICAgIHR5cGU6IENPTUJJTkVEX1RFWFRfQkxPQ0tfUEFSVCxcclxuICAgICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICAgICAgdGV4dDogJycsXHJcbiAgICAgICAgICAgICAgICBwYXJlbnRJZDogYmxvY2tJZCxcclxuICAgICAgICAgICAgICAgIHBhcmVudFR5cGU6IENPTUJJTkVEX1RFWFRfQkxPQ0tfTkFNRVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zdCBib2R5ID0ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogMCxcclxuICAgICAgICAgICAgYmxvY2s6IGVtcHR5QmxvY2ssXHJcbiAgICAgICAgICAgIGp0ZXh0Q29udGFpbmVySWQ6IGVkaXRvcklkXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5qdGV4dFNlcnZpY2VcclxuICAgICAgICAgICAgLmNyZWF0ZUJsb2NrKGJvZHkpXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChpZCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgZW1wdHlCbG9jay5pZCA9IGlkO1xyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrOiBCbG9jazxDdWlDb21iaW5lZEJsb2NrVG9vbERhdGE+ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlkOiBibG9ja0lkLFxyXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IENPTUJJTkVEX1RFWFRfQkxPQ0tfTkFNRSxcclxuICAgICAgICAgICAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBibG9ja0lkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0QmxvY2tzOiBbZW1wdHlCbG9ja11cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgIGNhbGxiYWNrKGJsb2NrLCBpZCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './editor-service.options';
|
|
2
|
+
export * from './editor.service';
|
|
3
|
+
export * from './markers-service.options';
|
|
4
|
+
export * from './markers.service';
|
|
5
|
+
export * from './jtext-api.options';
|
|
6
|
+
export * from './jtext-api.service';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9zZXJ2aWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLXNlcnZpY2Uub3B0aW9ucyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL21hcmtlcnMtc2VydmljZS5vcHRpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9tYXJrZXJzLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2p0ZXh0LWFwaS5vcHRpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9qdGV4dC1hcGkuc2VydmljZSc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianRleHQtYXBpLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9zZXJ2aWNlcy9qdGV4dC1hcGkub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQmxvY2s8VCA9IHVua25vd24+ID0ge1xyXG4gICAgaWQ/OiBzdHJpbmc7XHJcbiAgICByZWFkb25seSB0eXBlOiBzdHJpbmc7XHJcbiAgICByZWFkb25seSBkYXRhOiBUO1xyXG59O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBKVGV4dENyZWF0ZUJsb2NrUmVxdWVzdEJvZHkge1xyXG4gICAgcmVhZG9ubHkgcG9zaXRpb246IG51bWJlcjtcclxuICAgIHJlYWRvbmx5IGJsb2NrOiBCbG9jaztcclxuICAgIHJlYWRvbmx5IGp0ZXh0Q29udGFpbmVySWQ6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBKVGV4dFVwZGF0ZUJsb2NrUmVxdWVzdEJvZHkge1xyXG4gICAgcmVhZG9ubHkgcG9zaXRpb246IG51bWJlcjtcclxuICAgIHJlYWRvbmx5IGJsb2NrOiBCbG9jaztcclxuICAgIHJlYWRvbmx5IGp0ZXh0Q29udGFpbmVySWQ6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBKVGV4dENyZWF0ZUJsb2Nrc1JlcXVlc3RCb2R5IHtcclxuICAgIHJlYWRvbmx5IHBvc2l0aW9uOiBudW1iZXI7XHJcbiAgICByZWFkb25seSBibG9jazogQmxvY2tbXTtcclxuICAgIHJlYWRvbmx5IGp0ZXh0Q29udGFpbmVySWQ6IHN0cmluZztcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { HttpClient } from '@angular/common/http';
|
|
2
|
+
import { Injectable, inject } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class CuiJTextApiService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.httpClient = inject(HttpClient);
|
|
7
|
+
this.GET_BLOCK_DEFAULT_SIZE = 40;
|
|
8
|
+
this.JTEXT_URL = 'framer/jtext';
|
|
9
|
+
this.BLOCK_URL = 'block';
|
|
10
|
+
this.BLOCKS_URL = 'blocks';
|
|
11
|
+
this.JTEXT_BLOCK_URL = this.JTEXT_URL + '/' + this.BLOCK_URL;
|
|
12
|
+
this.JTEXT_BLOCKS_URL = this.JTEXT_URL + '/' + this.BLOCKS_URL;
|
|
13
|
+
this.options = {};
|
|
14
|
+
}
|
|
15
|
+
addOptions(options) {
|
|
16
|
+
this.options = options ?? {};
|
|
17
|
+
}
|
|
18
|
+
createBlock(body) {
|
|
19
|
+
return this.httpClient.post(this.JTEXT_BLOCK_URL, body, this.options);
|
|
20
|
+
}
|
|
21
|
+
updateBlock(body) {
|
|
22
|
+
return this.httpClient.patch(this.JTEXT_BLOCK_URL, body, this.options);
|
|
23
|
+
}
|
|
24
|
+
getBlocks(fragmentId, page = 0, sizeBlock = this.GET_BLOCK_DEFAULT_SIZE) {
|
|
25
|
+
return this.httpClient.get(`${this.JTEXT_URL}/${fragmentId}`, {
|
|
26
|
+
params: { page, sizeBlock },
|
|
27
|
+
headers: { 'Content-Type': 'application/x-ndjson' },
|
|
28
|
+
observe: 'events',
|
|
29
|
+
...this.options
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
createBlocks(body) {
|
|
33
|
+
return this.httpClient.post(this.JTEXT_BLOCKS_URL, body, this.options);
|
|
34
|
+
}
|
|
35
|
+
deleteBlock(containerId, blockId) {
|
|
36
|
+
return this.httpClient.delete(`${this.JTEXT_URL}/${containerId}/${this.BLOCK_URL}/${blockId}`, this.options);
|
|
37
|
+
}
|
|
38
|
+
deleteBlocks(containerId, blocksIds) {
|
|
39
|
+
return this.httpClient.delete(`${this.JTEXT_URL}/${containerId}/${this.BLOCKS_URL}`, {
|
|
40
|
+
params: { blocksIds },
|
|
41
|
+
...this.options
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiJTextApiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
45
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiJTextApiService }); }
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiJTextApiService, decorators: [{
|
|
48
|
+
type: Injectable
|
|
49
|
+
}] });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianRleHQtYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9zZXJ2aWNlcy9qdGV4dC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBT25ELE1BQU0sT0FBTyxrQkFBa0I7SUFEL0I7UUFFcUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVoQywyQkFBc0IsR0FBRyxFQUFFLENBQUM7UUFDNUIsY0FBUyxHQUFHLGNBQWMsQ0FBQztRQUMzQixjQUFTLEdBQUcsT0FBTyxDQUFDO1FBQ3BCLGVBQVUsR0FBRyxRQUFRLENBQUM7UUFDdEIsb0JBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hELHFCQUFnQixHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFFbkUsWUFBTyxHQUFzQixFQUFFLENBQUM7S0FxQzNDO0lBbkNVLFVBQVUsQ0FBQyxPQUEyQjtRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVNLFdBQVcsQ0FBQyxJQUFpQztRQUNoRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFTLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRU0sV0FBVyxDQUFDLElBQVc7UUFDMUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBUSxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVNLFNBQVMsQ0FBQyxVQUFrQixFQUFFLElBQUksR0FBRyxDQUFDLEVBQUUsU0FBUyxHQUFHLElBQUksQ0FBQyxzQkFBc0I7UUFDbEYsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksVUFBVSxFQUFFLEVBQUU7WUFDMUQsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtZQUMzQixPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsc0JBQXNCLEVBQUU7WUFDbkQsT0FBTyxFQUFFLFFBQVE7WUFDakIsR0FBRyxJQUFJLENBQUMsT0FBTztTQUNsQixDQUFpQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxZQUFZLENBQUMsSUFBa0M7UUFDbEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBVyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU0sV0FBVyxDQUFDLFdBQW1CLEVBQUUsT0FBZTtRQUNuRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxPQUFPLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkgsQ0FBQztJQUVNLFlBQVksQ0FBQyxXQUFtQixFQUFFLFNBQW1CO1FBQ3hELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdkYsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFO1lBQ3JCLEdBQUcsSUFBSSxDQUFDLE9BQU87U0FDbEIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0E5Q1Esa0JBQWtCO21IQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgdHlwZSB7IEJsb2NrLCBKVGV4dENyZWF0ZUJsb2NrUmVxdWVzdEJvZHksIEpUZXh0Q3JlYXRlQmxvY2tzUmVxdWVzdEJvZHkgfSBmcm9tICcuL2p0ZXh0LWFwaS5vcHRpb25zJztcclxuaW1wb3J0IHsgQ3VpUmVxdWVzdE9wdGlvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEN1aUpUZXh0QXBpU2VydmljZSB7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHBDbGllbnQgPSBpbmplY3QoSHR0cENsaWVudCk7XHJcblxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBHRVRfQkxPQ0tfREVGQVVMVF9TSVpFID0gNDA7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IEpURVhUX1VSTCA9ICdmcmFtZXIvanRleHQnO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBCTE9DS19VUkwgPSAnYmxvY2snO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBCTE9DS1NfVVJMID0gJ2Jsb2Nrcyc7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IEpURVhUX0JMT0NLX1VSTCA9IHRoaXMuSlRFWFRfVVJMICsgJy8nICsgdGhpcy5CTE9DS19VUkw7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IEpURVhUX0JMT0NLU19VUkwgPSB0aGlzLkpURVhUX1VSTCArICcvJyArIHRoaXMuQkxPQ0tTX1VSTDtcclxuXHJcbiAgICBwcml2YXRlIG9wdGlvbnM6IEN1aVJlcXVlc3RPcHRpb25zID0ge307XHJcblxyXG4gICAgcHVibGljIGFkZE9wdGlvbnMob3B0aW9ucz86IEN1aVJlcXVlc3RPcHRpb25zKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucyA/PyB7fTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY3JlYXRlQmxvY2soYm9keTogSlRleHRDcmVhdGVCbG9ja1JlcXVlc3RCb2R5KTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8c3RyaW5nPih0aGlzLkpURVhUX0JMT0NLX1VSTCwgYm9keSwgdGhpcy5vcHRpb25zKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXBkYXRlQmxvY2soYm9keTogQmxvY2spOiBPYnNlcnZhYmxlPEJsb2NrPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wYXRjaDxCbG9jaz4odGhpcy5KVEVYVF9CTE9DS19VUkwsIGJvZHksIHRoaXMub3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEJsb2NrcyhmcmFnbWVudElkOiBzdHJpbmcsIHBhZ2UgPSAwLCBzaXplQmxvY2sgPSB0aGlzLkdFVF9CTE9DS19ERUZBVUxUX1NJWkUpOiBPYnNlcnZhYmxlPEJsb2NrPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoYCR7dGhpcy5KVEVYVF9VUkx9LyR7ZnJhZ21lbnRJZH1gLCB7XHJcbiAgICAgICAgICAgIHBhcmFtczogeyBwYWdlLCBzaXplQmxvY2sgfSxcclxuICAgICAgICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtbmRqc29uJyB9LFxyXG4gICAgICAgICAgICBvYnNlcnZlOiAnZXZlbnRzJyxcclxuICAgICAgICAgICAgLi4udGhpcy5vcHRpb25zXHJcbiAgICAgICAgfSkgYXMgdW5rbm93biBhcyBPYnNlcnZhYmxlPEJsb2NrPjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY3JlYXRlQmxvY2tzKGJvZHk6IEpUZXh0Q3JlYXRlQmxvY2tzUmVxdWVzdEJvZHkpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PHN0cmluZ1tdPih0aGlzLkpURVhUX0JMT0NLU19VUkwsIGJvZHksIHRoaXMub3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRlbGV0ZUJsb2NrKGNvbnRhaW5lcklkOiBzdHJpbmcsIGJsb2NrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZGVsZXRlPHZvaWQ+KGAke3RoaXMuSlRFWFRfVVJMfS8ke2NvbnRhaW5lcklkfS8ke3RoaXMuQkxPQ0tfVVJMfS8ke2Jsb2NrSWR9YCwgdGhpcy5vcHRpb25zKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGVsZXRlQmxvY2tzKGNvbnRhaW5lcklkOiBzdHJpbmcsIGJsb2Nrc0lkczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmRlbGV0ZTx2b2lkPihgJHt0aGlzLkpURVhUX1VSTH0vJHtjb250YWluZXJJZH0vJHt0aGlzLkJMT0NLU19VUkx9YCwge1xyXG4gICAgICAgICAgICBwYXJhbXM6IHsgYmxvY2tzSWRzIH0sXHJcbiAgICAgICAgICAgIC4uLnRoaXMub3B0aW9uc1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Vycy1zZXJ2aWNlLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9zZXJ2aWNlcy9tYXJrZXJzLXNlcnZpY2Uub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudW0gTWFya2VyVHlwZSB7XHJcbiAgICByb2xlID0gJ3JvbGUnLFxyXG4gICAgdG9vbCA9ICd0b29sJ1xyXG59XHJcbiJdfQ==
|