@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.
Files changed (269) hide show
  1. package/components/button/button.component.d.ts +1 -1
  2. package/components/content-wrapper/content-wrapper.component.d.ts +11 -0
  3. package/components/content-wrapper/index.d.ts +1 -0
  4. package/components/empty-state/empty-state.component.d.ts +7 -0
  5. package/components/empty-state/index.d.ts +1 -0
  6. package/components/ghost-input/ghost-input.component.d.ts +6 -0
  7. package/components/ghost-input/index.d.ts +1 -0
  8. package/components/index.d.ts +3 -0
  9. package/components/sidebar/sidebar-header/sidebar-header.component.d.ts +1 -1
  10. package/components/sidebar/sidebar-navigation-item/sidebar-navigation-item.component.d.ts +1 -1
  11. package/directives/tooltip/tooltip.component.d.ts +1 -1
  12. package/editor/components/editor-attaches-tool/editor-attaches-tool.component.d.ts +44 -0
  13. package/editor/components/editor-attaches-tool/editor-attaches-tool.options.d.ts +17 -0
  14. package/editor/components/editor-attaches-tool/index.d.ts +2 -0
  15. package/editor/components/editor-image-tool/editor-image-tool.component.d.ts +14 -0
  16. package/editor/components/editor-image-tool/editor-image-tool.options.d.ts +26 -0
  17. package/editor/components/editor-image-tool/index.d.ts +2 -0
  18. package/editor/components/editor-tool/editor-tool.component.d.ts +22 -0
  19. package/editor/components/editor-tool-modal/editor-tool-modal.component.d.ts +24 -0
  20. package/editor/components/editor-tool-modal/editor-tool-modal.options.d.ts +8 -0
  21. package/editor/components/editor-tool-modal/index.d.ts +2 -0
  22. package/editor/components/editor-tooltip/editor-tooltip.component.d.ts +16 -0
  23. package/editor/components/editor-tooltip/editor-tooltip.options.d.ts +9 -0
  24. package/editor/components/editor-tooltip/index.d.ts +2 -0
  25. package/editor/components/editor-video-tool/editor-video-tool.component.d.ts +12 -0
  26. package/editor/components/editor-video-tool/editor-video-tool.options.d.ts +26 -0
  27. package/editor/components/editor-video-tool/index.d.ts +2 -0
  28. package/editor/components/index.d.ts +7 -0
  29. package/editor/components/marker-modal/index.d.ts +3 -0
  30. package/editor/components/marker-modal/marker-modal.component.d.ts +62 -0
  31. package/editor/components/marker-modal/marker-modal.interfaces.d.ts +7 -0
  32. package/editor/components/marker-modal/marker-modal.options.d.ts +1 -0
  33. package/editor/components/marker-select/component/select-item/select-option.component.d.ts +7 -0
  34. package/editor/components/marker-select/index.d.ts +2 -0
  35. package/editor/components/marker-select/marker-select.component.d.ts +40 -0
  36. package/editor/components/marker-select/marker-select.options.d.ts +1 -0
  37. package/editor/config/custom-elements.d.ts +2 -0
  38. package/editor/config/editor.config.d.ts +3 -0
  39. package/editor/config/editor.provider.d.ts +2 -0
  40. package/editor/config/index.d.ts +2 -0
  41. package/editor/constants/editor.constants.d.ts +15 -0
  42. package/editor/constants/index.d.ts +1 -0
  43. package/editor/editor.component.d.ts +71 -0
  44. package/editor/events/editor-drag.event.d.ts +2 -0
  45. package/editor/events/editor-keyboard.event.d.ts +2 -0
  46. package/editor/events/editor-modal.event.d.ts +3 -0
  47. package/editor/events/editor-tooltip.event.d.ts +2 -0
  48. package/editor/events/set-editor-events.d.ts +1 -0
  49. package/editor/index.d.ts +9 -0
  50. package/editor/interfaces/angular-element.d.ts +2 -0
  51. package/editor/interfaces/blocks-request-data.d.ts +6 -0
  52. package/editor/interfaces/combined-block-adding-event.d.ts +7 -0
  53. package/editor/interfaces/combined-block-data.d.ts +5 -0
  54. package/editor/interfaces/combined-part-block-data.d.ts +7 -0
  55. package/editor/interfaces/custom-element.d.ts +5 -0
  56. package/editor/interfaces/event-action-data.d.ts +5 -0
  57. package/editor/interfaces/file-response-data.d.ts +10 -0
  58. package/editor/interfaces/full-block-data.d.ts +8 -0
  59. package/editor/interfaces/index.d.ts +14 -0
  60. package/editor/interfaces/main-editor-config.d.ts +15 -0
  61. package/editor/interfaces/mutation-actions.d.ts +5 -0
  62. package/editor/interfaces/parent.d.ts +4 -0
  63. package/editor/interfaces/tools.d.ts +4 -0
  64. package/editor/interfaces/tune.d.ts +6 -0
  65. package/editor/pipes/file-size.pipe.d.ts +9 -0
  66. package/editor/services/editor-service.options.d.ts +8 -0
  67. package/editor/services/editor.service.d.ts +23 -0
  68. package/editor/services/index.d.ts +6 -0
  69. package/editor/services/jtext-api.options.d.ts +20 -0
  70. package/editor/services/jtext-api.service.d.ts +23 -0
  71. package/editor/services/markers-service.options.d.ts +4 -0
  72. package/editor/services/markers.service.d.ts +11 -0
  73. package/editor/tools/attaches.tool.d.ts +28 -0
  74. package/editor/tools/bold.tool.d.ts +11 -0
  75. package/editor/tools/combined-text-block.tool.d.ts +49 -0
  76. package/editor/tools/custom-marker.tool.d.ts +16 -0
  77. package/editor/tools/header.tool.d.ts +8 -0
  78. package/editor/tools/image.tool.d.ts +37 -0
  79. package/editor/tools/index.d.ts +11 -0
  80. package/editor/tools/italic.tool.d.ts +12 -0
  81. package/editor/tools/link-marker.tool.d.ts +15 -0
  82. package/editor/tools/list.tool.d.ts +5 -0
  83. package/editor/tools/marker.tool.d.ts +36 -0
  84. package/editor/tools/role-marker.tool.d.ts +7 -0
  85. package/editor/tools/selection-base.tool.d.ts +24 -0
  86. package/editor/tools/tool-marker.tool.d.ts +7 -0
  87. package/editor/tools/video.tool.d.ts +32 -0
  88. package/editor/utils/create-link-modal.d.ts +3 -0
  89. package/editor/utils/create-tool-modal.d.ts +4 -0
  90. package/editor/utils/create-tooltip.d.ts +8 -0
  91. package/editor/utils/file-uploader.d.ts +26 -0
  92. package/editor/utils/generate-id.d.ts +1 -0
  93. package/editor/utils/index.d.ts +9 -0
  94. package/editor/utils/recalculate-indexes.d.ts +2 -0
  95. package/editor/utils/remove-element-tag-wrapper.d.ts +1 -0
  96. package/editor/utils/split-html.d.ts +1 -0
  97. package/editor/utils/url.validator.d.ts +2 -0
  98. package/editor/widgets/editor-block/editor-block.component.d.ts +22 -0
  99. package/editor/widgets/editor-block/index.d.ts +1 -0
  100. package/editor/widgets/editor-modal/editor-modal.component.d.ts +19 -0
  101. package/editor/widgets/editor-modal/index.d.ts +1 -0
  102. package/editor/widgets/editor-readonly/editor-readonly.component.d.ts +28 -0
  103. package/editor/widgets/editor-readonly/editor-readonly.options.d.ts +5 -0
  104. package/editor/widgets/editor-readonly/index.d.ts +2 -0
  105. package/editor/widgets/index.d.ts +3 -0
  106. package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +2 -2
  107. package/esm2022/components/content-wrapper/content-wrapper.component.mjs +29 -0
  108. package/esm2022/components/content-wrapper/index.mjs +2 -0
  109. package/esm2022/components/empty-state/empty-state.component.mjs +17 -0
  110. package/esm2022/components/empty-state/index.mjs +2 -0
  111. package/esm2022/components/ghost-input/ghost-input.component.mjs +16 -0
  112. package/esm2022/components/ghost-input/index.mjs +2 -0
  113. package/esm2022/components/index.mjs +4 -1
  114. package/esm2022/directives/tooltip/tooltip-describe.directive.mjs +5 -3
  115. package/esm2022/directives/tooltip/tooltip-position.directive.mjs +6 -3
  116. package/esm2022/directives/tooltip/tooltip.component.mjs +6 -3
  117. package/esm2022/editor/components/editor-attaches-tool/editor-attaches-tool.component.mjs +76 -0
  118. package/esm2022/editor/components/editor-attaches-tool/editor-attaches-tool.options.mjs +2 -0
  119. package/esm2022/editor/components/editor-attaches-tool/index.mjs +3 -0
  120. package/esm2022/editor/components/editor-image-tool/editor-image-tool.component.mjs +43 -0
  121. package/esm2022/editor/components/editor-image-tool/editor-image-tool.options.mjs +2 -0
  122. package/esm2022/editor/components/editor-image-tool/index.mjs +3 -0
  123. package/esm2022/editor/components/editor-tool/editor-tool.component.mjs +74 -0
  124. package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.component.mjs +69 -0
  125. package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.options.mjs +2 -0
  126. package/esm2022/editor/components/editor-tool-modal/index.mjs +3 -0
  127. package/esm2022/editor/components/editor-tooltip/editor-tooltip.component.mjs +45 -0
  128. package/esm2022/editor/components/editor-tooltip/editor-tooltip.options.mjs +2 -0
  129. package/esm2022/editor/components/editor-tooltip/index.mjs +3 -0
  130. package/esm2022/editor/components/editor-video-tool/editor-video-tool.component.mjs +41 -0
  131. package/esm2022/editor/components/editor-video-tool/editor-video-tool.options.mjs +2 -0
  132. package/esm2022/editor/components/editor-video-tool/index.mjs +3 -0
  133. package/esm2022/editor/components/index.mjs +8 -0
  134. package/esm2022/editor/components/marker-modal/index.mjs +3 -0
  135. package/esm2022/editor/components/marker-modal/marker-modal.component.mjs +261 -0
  136. package/esm2022/editor/components/marker-modal/marker-modal.interfaces.mjs +2 -0
  137. package/esm2022/editor/components/marker-modal/marker-modal.options.mjs +2 -0
  138. package/esm2022/editor/components/marker-select/component/select-item/select-option.component.mjs +15 -0
  139. package/esm2022/editor/components/marker-select/index.mjs +3 -0
  140. package/esm2022/editor/components/marker-select/marker-select.component.mjs +155 -0
  141. package/esm2022/editor/components/marker-select/marker-select.options.mjs +2 -0
  142. package/esm2022/editor/config/custom-elements.mjs +32 -0
  143. package/esm2022/editor/config/editor.config.mjs +30 -0
  144. package/esm2022/editor/config/editor.provider.mjs +19 -0
  145. package/esm2022/editor/config/index.mjs +3 -0
  146. package/esm2022/editor/constants/editor.constants.mjs +20 -0
  147. package/esm2022/editor/constants/index.mjs +2 -0
  148. package/esm2022/editor/editor.component.mjs +380 -0
  149. package/esm2022/editor/events/editor-drag.event.mjs +7 -0
  150. package/esm2022/editor/events/editor-keyboard.event.mjs +33 -0
  151. package/esm2022/editor/events/editor-modal.event.mjs +31 -0
  152. package/esm2022/editor/events/editor-tooltip.event.mjs +63 -0
  153. package/esm2022/editor/events/set-editor-events.mjs +11 -0
  154. package/esm2022/editor/i18n/en.json +14 -0
  155. package/esm2022/editor/index.mjs +8 -0
  156. package/esm2022/editor/interfaces/angular-element.mjs +2 -0
  157. package/esm2022/editor/interfaces/blocks-request-data.mjs +2 -0
  158. package/esm2022/editor/interfaces/combined-block-adding-event.mjs +2 -0
  159. package/esm2022/editor/interfaces/combined-block-data.mjs +2 -0
  160. package/esm2022/editor/interfaces/combined-part-block-data.mjs +2 -0
  161. package/esm2022/editor/interfaces/custom-element.mjs +2 -0
  162. package/esm2022/editor/interfaces/event-action-data.mjs +2 -0
  163. package/esm2022/editor/interfaces/file-response-data.mjs +2 -0
  164. package/esm2022/editor/interfaces/full-block-data.mjs +2 -0
  165. package/esm2022/editor/interfaces/index.mjs +14 -0
  166. package/esm2022/editor/interfaces/main-editor-config.mjs +2 -0
  167. package/esm2022/editor/interfaces/mutation-actions.mjs +2 -0
  168. package/esm2022/editor/interfaces/parent.mjs +2 -0
  169. package/esm2022/editor/interfaces/tools.mjs +2 -0
  170. package/esm2022/editor/interfaces/tune.mjs +2 -0
  171. package/esm2022/editor/pipes/file-size.pipe.mjs +25 -0
  172. package/esm2022/editor/services/editor-service.options.mjs +4 -0
  173. package/esm2022/editor/services/editor.service.mjs +138 -0
  174. package/esm2022/editor/services/index.mjs +7 -0
  175. package/esm2022/editor/services/jtext-api.options.mjs +2 -0
  176. package/esm2022/editor/services/jtext-api.service.mjs +50 -0
  177. package/esm2022/editor/services/markers-service.options.mjs +2 -0
  178. package/esm2022/editor/services/markers.service.mjs +79 -0
  179. package/esm2022/editor/tools/attaches.tool.mjs +96 -0
  180. package/esm2022/editor/tools/bold.tool.mjs +33 -0
  181. package/esm2022/editor/tools/combined-text-block.tool.mjs +380 -0
  182. package/esm2022/editor/tools/custom-marker.tool.mjs +88 -0
  183. package/esm2022/editor/tools/header.tool.mjs +16 -0
  184. package/esm2022/editor/tools/image.tool.mjs +157 -0
  185. package/esm2022/editor/tools/index.mjs +12 -0
  186. package/esm2022/editor/tools/italic.tool.mjs +35 -0
  187. package/esm2022/editor/tools/link-marker.tool.mjs +80 -0
  188. package/esm2022/editor/tools/list.tool.mjs +10 -0
  189. package/esm2022/editor/tools/marker.tool.mjs +144 -0
  190. package/esm2022/editor/tools/role-marker.tool.mjs +17 -0
  191. package/esm2022/editor/tools/selection-base.tool.mjs +92 -0
  192. package/esm2022/editor/tools/tool-marker.tool.mjs +14 -0
  193. package/esm2022/editor/tools/video.tool.mjs +132 -0
  194. package/esm2022/editor/utils/create-link-modal.mjs +22 -0
  195. package/esm2022/editor/utils/create-tool-modal.mjs +45 -0
  196. package/esm2022/editor/utils/create-tooltip.mjs +44 -0
  197. package/esm2022/editor/utils/file-uploader.mjs +57 -0
  198. package/esm2022/editor/utils/generate-id.mjs +4 -0
  199. package/esm2022/editor/utils/index.mjs +10 -0
  200. package/esm2022/editor/utils/recalculate-indexes.mjs +32 -0
  201. package/esm2022/editor/utils/remove-element-tag-wrapper.mjs +11 -0
  202. package/esm2022/editor/utils/split-html.mjs +128 -0
  203. package/esm2022/editor/utils/url.validator.mjs +12 -0
  204. package/esm2022/editor/widgets/editor-block/editor-block.component.mjs +63 -0
  205. package/esm2022/editor/widgets/editor-block/index.mjs +2 -0
  206. package/esm2022/editor/widgets/editor-modal/editor-modal.component.mjs +47 -0
  207. package/esm2022/editor/widgets/editor-modal/index.mjs +2 -0
  208. package/esm2022/editor/widgets/editor-readonly/editor-readonly.component.mjs +40 -0
  209. package/esm2022/editor/widgets/editor-readonly/editor-readonly.options.mjs +2 -0
  210. package/esm2022/editor/widgets/editor-readonly/index.mjs +2 -0
  211. package/esm2022/editor/widgets/index.mjs +4 -0
  212. package/esm2022/index.mjs +3 -1
  213. package/esm2022/interceptors/loader.interceptor.mjs +3 -3
  214. package/esm2022/services/loader.options.mjs +2 -2
  215. package/esm2022/services/loader.service.mjs +11 -11
  216. package/esm2022/utils/default-validators/create-default-validators.mjs +12 -0
  217. package/esm2022/utils/default-validators/extra-spaces.options.mjs +11 -0
  218. package/esm2022/utils/default-validators/extra-spaces.validators.mjs +16 -0
  219. package/esm2022/utils/default-validators/index.mjs +2 -0
  220. package/esm2022/utils/index.mjs +2 -1
  221. package/esm2022/widgets/categories/categories.component.mjs +75 -0
  222. package/esm2022/widgets/categories/components/categories-list/categories-list.component.mjs +16 -0
  223. package/esm2022/widgets/categories/components/categories-list/index.mjs +2 -0
  224. package/esm2022/widgets/categories/components/category-form/category-form.component.mjs +79 -0
  225. package/esm2022/widgets/categories/components/category-form/index.mjs +2 -0
  226. package/esm2022/widgets/categories/components/category-item/category-item.component.mjs +123 -0
  227. package/esm2022/widgets/categories/components/category-item/index.mjs +2 -0
  228. package/esm2022/widgets/categories/components/create-category-item/create-category-item.component.mjs +25 -0
  229. package/esm2022/widgets/categories/components/create-category-item/index.mjs +2 -0
  230. package/esm2022/widgets/categories/components/index.mjs +3 -0
  231. package/esm2022/widgets/categories/index.mjs +2 -0
  232. package/esm2022/widgets/categories/services/index.mjs +2 -0
  233. package/esm2022/widgets/categories/services/selected-category.service.mjs +38 -0
  234. package/esm2022/widgets/general-control-error-hint/general-control-error-hint.component.mjs +21 -0
  235. package/esm2022/widgets/general-control-error-hint/index.mjs +2 -0
  236. package/esm2022/widgets/index.mjs +3 -0
  237. package/esm2022/widgets/utility-info/index.mjs +2 -0
  238. package/esm2022/widgets/utility-info/utility-info.component.mjs +224 -0
  239. package/fesm2022/cuby-ui-core-en-D3DnyYmu.mjs +29 -0
  240. package/fesm2022/cuby-ui-core-en-D3DnyYmu.mjs.map +1 -0
  241. package/fesm2022/cuby-ui-core.mjs +4047 -67
  242. package/fesm2022/cuby-ui-core.mjs.map +1 -1
  243. package/index.d.ts +2 -0
  244. package/package.json +3 -3
  245. package/services/loader.options.d.ts +2 -2
  246. package/services/loader.service.d.ts +7 -7
  247. package/utils/default-validators/create-default-validators.d.ts +5 -0
  248. package/utils/default-validators/extra-spaces.options.d.ts +2 -0
  249. package/utils/default-validators/extra-spaces.validators.d.ts +3 -0
  250. package/utils/default-validators/index.d.ts +1 -0
  251. package/utils/index.d.ts +1 -0
  252. package/widgets/categories/categories.component.d.ts +24 -0
  253. package/widgets/categories/components/categories-list/categories-list.component.d.ts +7 -0
  254. package/widgets/categories/components/categories-list/index.d.ts +1 -0
  255. package/widgets/categories/components/category-form/category-form.component.d.ts +28 -0
  256. package/widgets/categories/components/category-form/index.d.ts +1 -0
  257. package/widgets/categories/components/category-item/category-item.component.d.ts +40 -0
  258. package/widgets/categories/components/category-item/index.d.ts +1 -0
  259. package/widgets/categories/components/create-category-item/create-category-item.component.d.ts +10 -0
  260. package/widgets/categories/components/create-category-item/index.d.ts +1 -0
  261. package/widgets/categories/components/index.d.ts +2 -0
  262. package/widgets/categories/index.d.ts +1 -0
  263. package/widgets/categories/services/index.d.ts +1 -0
  264. package/widgets/categories/services/selected-category.service.d.ts +18 -0
  265. package/widgets/general-control-error-hint/general-control-error-hint.component.d.ts +9 -0
  266. package/widgets/general-control-error-hint/index.d.ts +1 -0
  267. package/widgets/index.d.ts +2 -0
  268. package/widgets/utility-info/index.d.ts +1 -0
  269. package/widgets/utility-info/utility-info.component.d.ts +45 -0
@@ -0,0 +1,76 @@
1
+ import { NgIf, UpperCasePipe } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { TranslocoDirective } from '@jsverse/transloco';
5
+ import { CuiSvgModule } from '../../../components';
6
+ import { EditorToolComponent } from '../editor-tool/editor-tool.component';
7
+ import { FileSizePipe } from '../../pipes/file-size.pipe';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../../components/svg/svg.component";
10
+ export class EditorAttachesToolComponent extends EditorToolComponent {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.Extensions = {
14
+ doc: '#1483E9',
15
+ docx: '#1483E9',
16
+ odt: '#1483E9',
17
+ pdf: '#DB2F2F',
18
+ rtf: '#744FDC',
19
+ tex: '#5a5a5b',
20
+ txt: '#5a5a5b',
21
+ pptx: '#E35200',
22
+ ppt: '#E35200',
23
+ mp3: '#eab456',
24
+ mp4: '#f676a6',
25
+ xls: '#11AE3D',
26
+ html: '#2988f0',
27
+ htm: '#2988f0',
28
+ png: '#AA2284',
29
+ jpg: '#D13359',
30
+ jpeg: '#D13359',
31
+ gif: '#f6af76',
32
+ zip: '#4f566f',
33
+ rar: '#4f566f',
34
+ exe: '#e26f6f',
35
+ svg: '#bf5252',
36
+ key: '#00B2FF',
37
+ sketch: '#FFC700',
38
+ ai: '#FB601D',
39
+ psd: '#388ae5',
40
+ dmg: '#e26f6f',
41
+ json: '#2988f0',
42
+ csv: '#11AE3D'
43
+ };
44
+ }
45
+ get color() {
46
+ return this.Extensions[this.file?.extension];
47
+ }
48
+ get isShowLoadButton() {
49
+ return !this.file && !this.isCaptionShown && !this.isLoading;
50
+ }
51
+ onPreventEnter(event) {
52
+ if (this.checkKey(event)) {
53
+ return;
54
+ }
55
+ event.preventDefault();
56
+ event.stopPropagation();
57
+ }
58
+ checkKey(event) {
59
+ return event.key !== 'Enter';
60
+ }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorAttachesToolComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EditorAttachesToolComponent, isStandalone: true, selector: "ng-component", inputs: { file: "file", title: "title" }, host: { properties: { "class._hidden": "isShowLoadButton" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!isLoading; else preloader\">\r\n <ng-container *transloco=\"let t\">\r\n <div *ngIf=\"file; else buttonTemplate\" class=\"file\">\r\n <div\r\n class=\"icon\"\r\n [style.backgroundColor]=\"color\"\r\n >\r\n {{ file.extension | uppercase }}\r\n </div>\r\n <div class=\"info\">\r\n <div\r\n class=\"title\"\r\n attr.data-placeholder=\"{{ t('FILE_TITLE') }}...\"\r\n [innerHTML]=\"title\"\r\n [attr.contenteditable]=\"!readOnly\"\r\n (paste)=\"onTitlePaste($event)\"\r\n (keydown)=\"onPreventEnter($event)\"\r\n (keyup)=\"onTitleChange($event)\"\r\n ></div>\r\n <div *ngIf=\"file.size; let size\" class=\"size\">{{ size | fileSize }}</div>\r\n </div>\r\n <a\r\n class=\"download\"\r\n [href]=\"file.url\"\r\n target=\"_blank\"\r\n download\r\n >\r\n <cui-svg icon=\"cuiIconChevronDownSm\" />\r\n </a>\r\n </div>\r\n <ng-template #buttonTemplate>\r\n <button\r\n [class]=\"['select-btn', this.api.styles.button]\"\r\n (click)=\"onSelectFile()\"\r\n type=\"button\"\r\n >\r\n <cui-svg icon=\"cuiIconPaperclipSm\" />\r\n &nbsp;{{ buttonContent }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n</ng-container>\r\n\r\n<ng-template #preloader>\r\n <div class=\"wrapper\">\r\n <div class=\"preloader\"></div>\r\n </div>\r\n</ng-template>\r\n\r\n", styles: [":host{padding-top:6px;padding-bottom:6px;font-weight:400;font-size:14px;line-height:20px;font-family:var(--cui-main-font);display:block}:host._hidden{display:none}.file{padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:8px;border-radius:10px;border:1px solid var(--cui-base-200);background-color:var(--cui-base-10)}.info{display:flex;flex-direction:column;gap:2px;width:85%}.icon{padding:6px 2px;font-weight:500;font-size:12px;line-height:14px;display:flex;align-items:flex-end;border-radius:8px;width:35px;height:35px;color:var(--cui-gray-0)}.title{font-weight:400;font-size:14px;line-height:20px;outline:none}.size{font-weight:400;font-size:13px;line-height:16px;color:var(--cui-base-500)}.download{padding:6px;margin-left:auto;border-radius:8px;color:var(--cui-base-0);background:var(--cui-base-50)}.wrapper{display:flex;flex-direction:column;margin-bottom:10px;border:1px solid var(--cui-base-200);border-radius:10px;min-height:50px;background-color:var(--cui-base-0)}.wrapper._loaded{min-height:auto}.preloader{width:30px;height:30px;border-radius:50%;background-size:cover;margin:auto;position:relative;background-position:center center}@keyframes preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preloader:after{content:\"\";position:absolute;z-index:3;width:30px;height:30px;border-radius:50%;border:2px solid var(--cui-base-200);border-top-color:var(--cui-blue-600);left:50%;top:50%;margin-top:-15px;margin-left:-15px;animation:preloader-spin 2s infinite linear;box-sizing:border-box}.title[data-placeholder]:empty:before{content:attr(data-placeholder);position:absolute;color:var(--cui-base-400)}.select-btn{display:flex;align-items:center;justify-content:center;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i1.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "pipe", type: FileSizePipe, name: "fileSize" }, { kind: "ngmodule", type: FormsModule }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
63
+ }
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorAttachesToolComponent, decorators: [{
65
+ type: Component,
66
+ args: [{ standalone: true, imports: [CuiSvgModule, FileSizePipe, FormsModule, UpperCasePipe, NgIf, TranslocoDirective], changeDetection: ChangeDetectionStrategy.OnPush, host: {
67
+ '[class._hidden]': 'isShowLoadButton'
68
+ }, template: "<ng-container *ngIf=\"!isLoading; else preloader\">\r\n <ng-container *transloco=\"let t\">\r\n <div *ngIf=\"file; else buttonTemplate\" class=\"file\">\r\n <div\r\n class=\"icon\"\r\n [style.backgroundColor]=\"color\"\r\n >\r\n {{ file.extension | uppercase }}\r\n </div>\r\n <div class=\"info\">\r\n <div\r\n class=\"title\"\r\n attr.data-placeholder=\"{{ t('FILE_TITLE') }}...\"\r\n [innerHTML]=\"title\"\r\n [attr.contenteditable]=\"!readOnly\"\r\n (paste)=\"onTitlePaste($event)\"\r\n (keydown)=\"onPreventEnter($event)\"\r\n (keyup)=\"onTitleChange($event)\"\r\n ></div>\r\n <div *ngIf=\"file.size; let size\" class=\"size\">{{ size | fileSize }}</div>\r\n </div>\r\n <a\r\n class=\"download\"\r\n [href]=\"file.url\"\r\n target=\"_blank\"\r\n download\r\n >\r\n <cui-svg icon=\"cuiIconChevronDownSm\" />\r\n </a>\r\n </div>\r\n <ng-template #buttonTemplate>\r\n <button\r\n [class]=\"['select-btn', this.api.styles.button]\"\r\n (click)=\"onSelectFile()\"\r\n type=\"button\"\r\n >\r\n <cui-svg icon=\"cuiIconPaperclipSm\" />\r\n &nbsp;{{ buttonContent }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n</ng-container>\r\n\r\n<ng-template #preloader>\r\n <div class=\"wrapper\">\r\n <div class=\"preloader\"></div>\r\n </div>\r\n</ng-template>\r\n\r\n", styles: [":host{padding-top:6px;padding-bottom:6px;font-weight:400;font-size:14px;line-height:20px;font-family:var(--cui-main-font);display:block}:host._hidden{display:none}.file{padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:8px;border-radius:10px;border:1px solid var(--cui-base-200);background-color:var(--cui-base-10)}.info{display:flex;flex-direction:column;gap:2px;width:85%}.icon{padding:6px 2px;font-weight:500;font-size:12px;line-height:14px;display:flex;align-items:flex-end;border-radius:8px;width:35px;height:35px;color:var(--cui-gray-0)}.title{font-weight:400;font-size:14px;line-height:20px;outline:none}.size{font-weight:400;font-size:13px;line-height:16px;color:var(--cui-base-500)}.download{padding:6px;margin-left:auto;border-radius:8px;color:var(--cui-base-0);background:var(--cui-base-50)}.wrapper{display:flex;flex-direction:column;margin-bottom:10px;border:1px solid var(--cui-base-200);border-radius:10px;min-height:50px;background-color:var(--cui-base-0)}.wrapper._loaded{min-height:auto}.preloader{width:30px;height:30px;border-radius:50%;background-size:cover;margin:auto;position:relative;background-position:center center}@keyframes preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preloader:after{content:\"\";position:absolute;z-index:3;width:30px;height:30px;border-radius:50%;border:2px solid var(--cui-base-200);border-top-color:var(--cui-blue-600);left:50%;top:50%;margin-top:-15px;margin-left:-15px;animation:preloader-spin 2s infinite linear;box-sizing:border-box}.title[data-placeholder]:empty:before{content:attr(data-placeholder);position:absolute;color:var(--cui-base-400)}.select-btn{display:flex;align-items:center;justify-content:center;width:100%}\n"] }]
69
+ }], propDecorators: { file: [{
70
+ type: Input,
71
+ args: [{ required: true }]
72
+ }], title: [{
73
+ type: Input,
74
+ args: [{ required: true }]
75
+ }] } });
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWF0dGFjaGVzLXRvb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvY29tcG9uZW50cy9lZGl0b3ItYXR0YWNoZXMtdG9vbC9lZGl0b3ItYXR0YWNoZXMtdG9vbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci1hdHRhY2hlcy10b29sL2VkaXRvci1hdHRhY2hlcy10b29sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXhELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7OztBQVkxRCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsbUJBQW1CO0lBVnBFOztRQVd1QixlQUFVLEdBQUc7WUFDNUIsR0FBRyxFQUFFLFNBQVM7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLEdBQUcsRUFBRSxTQUFTO1lBQ2QsR0FBRyxFQUFFLFNBQVM7WUFDZCxHQUFHLEVBQUUsU0FBUztZQUNkLEdBQUcsRUFBRSxTQUFTO1lBQ2QsR0FBRyxFQUFFLFNBQVM7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLEdBQUcsRUFBRSxTQUFTO1lBQ2QsR0FBRyxFQUFFLFNBQVM7WUFDZCxHQUFHLEVBQUUsU0FBUztZQUNkLEdBQUcsRUFBRSxTQUFTO1lBQ2QsSUFBSSxFQUFFLFNBQVM7WUFDZixHQUFHLEVBQUUsU0FBUztZQUNkLEdBQUcsRUFBRSxTQUFTO1lBQ2QsR0FBRyxFQUFFLFNBQVM7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLEdBQUcsRUFBRSxTQUFTO1lBQ2QsR0FBRyxFQUFFLFNBQVM7WUFDZCxHQUFHLEVBQUUsU0FBUztZQUNkLEdBQUcsRUFBRSxTQUFTO1lBQ2QsR0FBRyxFQUFFLFNBQVM7WUFDZCxHQUFHLEVBQUUsU0FBUztZQUNkLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLEVBQUUsRUFBRSxTQUFTO1lBQ2IsR0FBRyxFQUFFLFNBQVM7WUFDZCxHQUFHLEVBQUUsU0FBUztZQUNkLElBQUksRUFBRSxTQUFTO1lBQ2YsR0FBRyxFQUFFLFNBQVM7U0FDakIsQ0FBQztLQTRCTDtJQXBCRyxJQUFjLEtBQUs7UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxTQUF5QyxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVELElBQWMsZ0JBQWdCO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDakUsQ0FBQztJQUVTLGNBQWMsQ0FBQyxLQUFvQjtRQUN6QyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN2QixPQUFPO1FBQ1gsQ0FBQztRQUVELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLFFBQVEsQ0FBQyxLQUFvQjtRQUNqQyxPQUFPLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDO0lBQ2pDLENBQUM7K0dBMURRLDJCQUEyQjttR0FBM0IsMkJBQTJCLHdNQ3BCeEMsa3JEQWlEQSxvd0REckNjLFlBQVksbUtBQUUsWUFBWSxnREFBRSxXQUFXLDBCQUFFLGFBQWEsa0RBQUUsSUFBSSw2RkFBRSxrQkFBa0I7OzRGQVFqRiwyQkFBMkI7a0JBVnZDLFNBQVM7aUNBQ00sSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxtQkFHMUUsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDRixpQkFBaUIsRUFBRSxrQkFBa0I7cUJBQ3hDOzhCQW9DTSxJQUFJO3NCQURWLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUlsQixLQUFLO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiwgVXBwZXJDYXNlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUcmFuc2xvY29EaXJlY3RpdmUgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nO1xyXG5cclxuaW1wb3J0IHsgQ3VpU3ZnTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB0eXBlIHsgQ3VpRmlsZURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ZpbGUtcmVzcG9uc2UtZGF0YSc7XHJcbmltcG9ydCB7IEVkaXRvclRvb2xDb21wb25lbnQgfSBmcm9tICcuLi9lZGl0b3ItdG9vbC9lZGl0b3ItdG9vbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGaWxlU2l6ZVBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy9maWxlLXNpemUucGlwZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbQ3VpU3ZnTW9kdWxlLCBGaWxlU2l6ZVBpcGUsIEZvcm1zTW9kdWxlLCBVcHBlckNhc2VQaXBlLCBOZ0lmLCBUcmFuc2xvY29EaXJlY3RpdmVdLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VkaXRvci1hdHRhY2hlcy10b29sLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2VkaXRvci1hdHRhY2hlcy10b29sLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIGhvc3Q6IHtcclxuICAgICAgICAnW2NsYXNzLl9oaWRkZW5dJzogJ2lzU2hvd0xvYWRCdXR0b24nXHJcbiAgICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JBdHRhY2hlc1Rvb2xDb21wb25lbnQgZXh0ZW5kcyBFZGl0b3JUb29sQ29tcG9uZW50IHtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBFeHRlbnNpb25zID0ge1xyXG4gICAgICAgIGRvYzogJyMxNDgzRTknLFxyXG4gICAgICAgIGRvY3g6ICcjMTQ4M0U5JyxcclxuICAgICAgICBvZHQ6ICcjMTQ4M0U5JyxcclxuICAgICAgICBwZGY6ICcjREIyRjJGJyxcclxuICAgICAgICBydGY6ICcjNzQ0RkRDJyxcclxuICAgICAgICB0ZXg6ICcjNWE1YTViJyxcclxuICAgICAgICB0eHQ6ICcjNWE1YTViJyxcclxuICAgICAgICBwcHR4OiAnI0UzNTIwMCcsXHJcbiAgICAgICAgcHB0OiAnI0UzNTIwMCcsXHJcbiAgICAgICAgbXAzOiAnI2VhYjQ1NicsXHJcbiAgICAgICAgbXA0OiAnI2Y2NzZhNicsXHJcbiAgICAgICAgeGxzOiAnIzExQUUzRCcsXHJcbiAgICAgICAgaHRtbDogJyMyOTg4ZjAnLFxyXG4gICAgICAgIGh0bTogJyMyOTg4ZjAnLFxyXG4gICAgICAgIHBuZzogJyNBQTIyODQnLFxyXG4gICAgICAgIGpwZzogJyNEMTMzNTknLFxyXG4gICAgICAgIGpwZWc6ICcjRDEzMzU5JyxcclxuICAgICAgICBnaWY6ICcjZjZhZjc2JyxcclxuICAgICAgICB6aXA6ICcjNGY1NjZmJyxcclxuICAgICAgICByYXI6ICcjNGY1NjZmJyxcclxuICAgICAgICBleGU6ICcjZTI2ZjZmJyxcclxuICAgICAgICBzdmc6ICcjYmY1MjUyJyxcclxuICAgICAgICBrZXk6ICcjMDBCMkZGJyxcclxuICAgICAgICBza2V0Y2g6ICcjRkZDNzAwJyxcclxuICAgICAgICBhaTogJyNGQjYwMUQnLFxyXG4gICAgICAgIHBzZDogJyMzODhhZTUnLFxyXG4gICAgICAgIGRtZzogJyNlMjZmNmYnLFxyXG4gICAgICAgIGpzb246ICcjMjk4OGYwJyxcclxuICAgICAgICBjc3Y6ICcjMTFBRTNEJ1xyXG4gICAgfTtcclxuXHJcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxyXG4gICAgcHVibGljIGZpbGU/OiBDdWlGaWxlRGF0YTtcclxuXHJcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxyXG4gICAgcHVibGljIHRpdGxlITogc3RyaW5nO1xyXG5cclxuICAgIHByb3RlY3RlZCBnZXQgY29sb3IoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5FeHRlbnNpb25zW3RoaXMuZmlsZT8uZXh0ZW5zaW9uIGFzIGtleW9mIHR5cGVvZiB0aGlzLkV4dGVuc2lvbnNdO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBnZXQgaXNTaG93TG9hZEJ1dHRvbigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuZmlsZSAmJiAhdGhpcy5pc0NhcHRpb25TaG93biAmJiAhdGhpcy5pc0xvYWRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uUHJldmVudEVudGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tLZXkoZXZlbnQpKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGVja0tleShldmVudDogS2V5Ym9hcmRFdmVudCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBldmVudC5rZXkgIT09ICdFbnRlcic7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0xvYWRpbmc7IGVsc2UgcHJlbG9hZGVyXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cclxuICAgICAgPGRpdiAqbmdJZj1cImZpbGU7IGVsc2UgYnV0dG9uVGVtcGxhdGVcIiBjbGFzcz1cImZpbGVcIj5cclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBjbGFzcz1cImljb25cIlxyXG4gICAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiY29sb3JcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIHt7IGZpbGUuZXh0ZW5zaW9uIHwgdXBwZXJjYXNlIH19XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvXCI+XHJcbiAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInRpdGxlXCJcclxuICAgICAgICAgICAgICAgICAgYXR0ci5kYXRhLXBsYWNlaG9sZGVyPVwie3sgdCgnRklMRV9USVRMRScpIH19Li4uXCJcclxuICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJ0aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgIFthdHRyLmNvbnRlbnRlZGl0YWJsZV09XCIhcmVhZE9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAocGFzdGUpPVwib25UaXRsZVBhc3RlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJvblByZXZlbnRFbnRlcigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgKGtleXVwKT1cIm9uVGl0bGVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmaWxlLnNpemU7IGxldCBzaXplXCIgY2xhc3M9XCJzaXplXCI+e3sgc2l6ZSB8IGZpbGVTaXplIH19PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJkb3dubG9hZFwiXHJcbiAgICAgICAgICAgICAgW2hyZWZdPVwiZmlsZS51cmxcIlxyXG4gICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXHJcbiAgICAgICAgICAgICAgZG93bmxvYWRcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8Y3VpLXN2ZyBpY29uPVwiY3VpSWNvbkNoZXZyb25Eb3duU21cIiAvPlxyXG4gICAgICAgICAgPC9hPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPG5nLXRlbXBsYXRlICNidXR0b25UZW1wbGF0ZT5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIFtjbGFzc109XCJbJ3NlbGVjdC1idG4nLCB0aGlzLmFwaS5zdHlsZXMuYnV0dG9uXVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdEZpbGUoKVwiXHJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgICAgPGN1aS1zdmcgaWNvbj1cImN1aUljb25QYXBlcmNsaXBTbVwiIC8+XHJcbiAgICAgICAgICAgICZuYnNwO3t7IGJ1dHRvbkNvbnRlbnQgfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy1jb250YWluZXI+XHJcblxyXG48bmctdGVtcGxhdGUgI3ByZWxvYWRlcj5cclxuICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInByZWxvYWRlclwiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export const EDITOR_ATTACHES_TOOL_SELECTOR = 'cc-editor-attaches-tool';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWF0dGFjaGVzLXRvb2wub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2NvbXBvbmVudHMvZWRpdG9yLWF0dGFjaGVzLXRvb2wvZWRpdG9yLWF0dGFjaGVzLXRvb2wub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQVBJIH0gZnJvbSAnQGVkaXRvcmpzL2VkaXRvcmpzJztcclxuXHJcbmltcG9ydCB0eXBlIHsgQ3VpRmlsZURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ZpbGUtcmVzcG9uc2UtZGF0YSc7XHJcbmltcG9ydCB7IEN1aUZpbGVVcGxvYWRlckNvbmZpZyB9IGZyb20gJy4uLy4uL3V0aWxzL2ZpbGUtdXBsb2FkZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IEVESVRPUl9BVFRBQ0hFU19UT09MX1NFTEVDVE9SID0gJ2NjLWVkaXRvci1hdHRhY2hlcy10b29sJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpQXR0YWNoZXNUb29sQ29uZmlnIGV4dGVuZHMgQ3VpRmlsZVVwbG9hZGVyQ29uZmlnIHtcclxuICByZWFkb25seSBidXR0b25Db250ZW50OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpQXR0YWNoZXNUb29sT3B0aW9ucyB7XHJcbiAgcmVhZG9ubHkgYXBpOiBBUEk7XHJcbiAgcmVhZG9ubHkgY29uZmlnOiBDdWlBdHRhY2hlc1Rvb2xDb25maWc7XHJcbiAgcmVhZG9ubHkgb25TZWxlY3RGaWxlOiAoKSA9PiB2b2lkO1xyXG4gIHJlYWRvbmx5IHJlYWRPbmx5OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUF0dGFjaGVzVG9vbERhdGEge1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgZmlsZTogQ3VpRmlsZURhdGE7XHJcbn1cclxuIl19
@@ -0,0 +1,3 @@
1
+ export { EditorAttachesToolComponent } from './editor-attaches-tool.component';
2
+ export * from './editor-attaches-tool.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci1hdHRhY2hlcy10b29sL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBFZGl0b3JBdHRhY2hlc1Rvb2xDb21wb25lbnQgfSBmcm9tICcuL2VkaXRvci1hdHRhY2hlcy10b29sLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLWF0dGFjaGVzLXRvb2wub3B0aW9ucyc7XHJcbiJdfQ==
@@ -0,0 +1,43 @@
1
+ import { NgClass, NgIf } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, Input, signal } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { TranslocoDirective } from '@jsverse/transloco';
5
+ import { CuiSvgModule } from '../../../components';
6
+ import { EditorToolComponent } from '../editor-tool/editor-tool.component';
7
+ import * as i0 from "@angular/core";
8
+ export class EditorImageToolComponent extends EditorToolComponent {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.isLoaded = signal(false);
12
+ this.tunesSignal = signal({});
13
+ }
14
+ set tunes(tunes) {
15
+ this.tunesSignal.set(tunes);
16
+ }
17
+ get isShowLoadButton() {
18
+ return !this.image && !this.isCaptionShown && !this.isLoading;
19
+ }
20
+ onPreventEnter(event) {
21
+ if (this.checkKey(event)) {
22
+ return;
23
+ }
24
+ event.stopPropagation();
25
+ }
26
+ checkKey(event) {
27
+ return (event.key !== 'Backspace' && event.key !== 'Enter') || event.shiftKey;
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorImageToolComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EditorImageToolComponent, isStandalone: true, selector: "ng-component", inputs: { image: "image", tunes: "tunes" }, host: { properties: { "class._hidden": "isShowLoadButton" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!isLoading; else preloader\">\r\n <ng-container *transloco=\"let t\">\r\n <ng-container *ngIf=\"image; else buttonTemplate\">\r\n <div\r\n class=\"wrapper\"\r\n [ngClass]=\"tunesSignal()\"\r\n [class._loaded]=\"isLoaded()\"\r\n >\r\n <img\r\n class=\"image\"\r\n [src]=\"image\"\r\n alt=\"Image\"\r\n />\r\n </div>\r\n <div\r\n *ngIf=\"isCaptionShown\"\r\n class=\"caption cdx-input\"\r\n [attr.contenteditable]=\"!readOnly\"\r\n attr.data-placeholder=\"{{ t('CAPTION') }}...\"\r\n (paste)=\"onTitlePaste($event)\"\r\n (keydown)=\"onPreventEnter($event)\"\r\n (keyup)=\"onTitleChange($event)\"\r\n [innerHTML]=\"caption\"\r\n ></div>\r\n </ng-container>\r\n <ng-template #buttonTemplate>\r\n <button\r\n #button\r\n type=\"button\"\r\n [class]=\"['select-btn', this.api.styles.button]\"\r\n (click)=\"onSelectFile()\"\r\n >\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"20\"\r\n height=\"20\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M12.5013 4.1665H7.5013C5.66035 4.1665 4.16797 5.65889 4.16797 7.49984V12.4998C4.16797 14.3408 5.66035 15.8332 7.5013 15.8332H12.5013C14.3423 15.8332 15.8346 14.3408 15.8346 12.4998V7.49984C15.8346 5.65889 14.3423 4.1665 12.5013 4.1665Z\"\r\n stroke=\"#121315\"\r\n stroke-width=\"1.66667\"\r\n />\r\n <path\r\n d=\"M4.28125 12.7665L7.24033 9.63825C7.52263 9.33617 7.90546 9.1665 8.30463 9.1665C8.70377 9.1665 9.0866 9.33617 9.36893 9.63825L12.8208 13.3332M11.3154 11.7218L12.5092 10.444C12.7914 10.1419 13.1743 9.97217 13.5734 9.97217C13.9726 9.97217 14.3554 10.1419 14.6378 10.444L15.699 11.636\"\r\n stroke=\"#121315\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n <path\r\n d=\"M11.4805 7.77783H11.4879\"\r\n stroke=\"#121315\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n &nbsp;{{ buttonContent }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n</ng-container>\r\n<ng-template #preloader>\r\n <div class=\"wrapper\">\r\n <div class=\"preloader\">\r\n <img\r\n *ngIf=\"preview\"\r\n class=\"preloader__image\"\r\n [src]=\"preview\"\r\n alt=\"Preloader\"\r\n />\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n", styles: [":host{padding-top:6px;padding-bottom:6px;font-weight:400;font-size:14px;line-height:20px;font-family:var(--cui-main-font);display:block}:host ::ng-deep .cdx-input{border:1px solid var(--cui-base-200);background:transparent;box-shadow:none}:host ::ng-deep .play{margin:auto}:host ::ng-deep .play path{fill:var(--cui-base-0);stroke:var(--cui-base-300)}:host._hidden{display:none}.image{display:block;max-width:100%;width:fit-content;height:250px}.wrapper{display:flex;flex-direction:column;margin-bottom:10px;border:1px solid var(--cui-base-200);border-radius:3px;min-height:200px;background-color:var(--cui-base-0)}.wrapper._loaded{min-height:auto}.wrapper.stretched .image{width:100%;height:auto}.wrapper.center .image{margin:auto}.preloader{width:50px;height:50px;border-radius:50%;background-size:cover;margin:auto;position:relative;background-color:var(--cui-base-200);background-position:center center}@keyframes preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preloader__image{width:50px;height:50px;border-radius:50%}.preloader:after{content:\"\";position:absolute;z-index:3;width:60px;height:60px;border-radius:50%;border:2px solid var(--cui-base-200);border-top-color:var(--cui-blue-600);left:50%;top:50%;margin-top:-30px;margin-left:-30px;animation:preloader-spin 2s infinite linear;box-sizing:border-box}.caption[data-placeholder]:empty:before{content:attr(data-placeholder);position:absolute;color:var(--cui-base-400)}.select-btn{display:flex;align-items:center;justify-content:center;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CuiSvgModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorImageToolComponent, decorators: [{
33
+ type: Component,
34
+ args: [{ standalone: true, imports: [CuiSvgModule, FormsModule, NgClass, NgIf, TranslocoDirective], changeDetection: ChangeDetectionStrategy.OnPush, host: {
35
+ '[class._hidden]': 'isShowLoadButton'
36
+ }, template: "<ng-container *ngIf=\"!isLoading; else preloader\">\r\n <ng-container *transloco=\"let t\">\r\n <ng-container *ngIf=\"image; else buttonTemplate\">\r\n <div\r\n class=\"wrapper\"\r\n [ngClass]=\"tunesSignal()\"\r\n [class._loaded]=\"isLoaded()\"\r\n >\r\n <img\r\n class=\"image\"\r\n [src]=\"image\"\r\n alt=\"Image\"\r\n />\r\n </div>\r\n <div\r\n *ngIf=\"isCaptionShown\"\r\n class=\"caption cdx-input\"\r\n [attr.contenteditable]=\"!readOnly\"\r\n attr.data-placeholder=\"{{ t('CAPTION') }}...\"\r\n (paste)=\"onTitlePaste($event)\"\r\n (keydown)=\"onPreventEnter($event)\"\r\n (keyup)=\"onTitleChange($event)\"\r\n [innerHTML]=\"caption\"\r\n ></div>\r\n </ng-container>\r\n <ng-template #buttonTemplate>\r\n <button\r\n #button\r\n type=\"button\"\r\n [class]=\"['select-btn', this.api.styles.button]\"\r\n (click)=\"onSelectFile()\"\r\n >\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"20\"\r\n height=\"20\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"none\"\r\n >\r\n <path\r\n d=\"M12.5013 4.1665H7.5013C5.66035 4.1665 4.16797 5.65889 4.16797 7.49984V12.4998C4.16797 14.3408 5.66035 15.8332 7.5013 15.8332H12.5013C14.3423 15.8332 15.8346 14.3408 15.8346 12.4998V7.49984C15.8346 5.65889 14.3423 4.1665 12.5013 4.1665Z\"\r\n stroke=\"#121315\"\r\n stroke-width=\"1.66667\"\r\n />\r\n <path\r\n d=\"M4.28125 12.7665L7.24033 9.63825C7.52263 9.33617 7.90546 9.1665 8.30463 9.1665C8.70377 9.1665 9.0866 9.33617 9.36893 9.63825L12.8208 13.3332M11.3154 11.7218L12.5092 10.444C12.7914 10.1419 13.1743 9.97217 13.5734 9.97217C13.9726 9.97217 14.3554 10.1419 14.6378 10.444L15.699 11.636\"\r\n stroke=\"#121315\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n <path\r\n d=\"M11.4805 7.77783H11.4879\"\r\n stroke=\"#121315\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n &nbsp;{{ buttonContent }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n</ng-container>\r\n<ng-template #preloader>\r\n <div class=\"wrapper\">\r\n <div class=\"preloader\">\r\n <img\r\n *ngIf=\"preview\"\r\n class=\"preloader__image\"\r\n [src]=\"preview\"\r\n alt=\"Preloader\"\r\n />\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n", styles: [":host{padding-top:6px;padding-bottom:6px;font-weight:400;font-size:14px;line-height:20px;font-family:var(--cui-main-font);display:block}:host ::ng-deep .cdx-input{border:1px solid var(--cui-base-200);background:transparent;box-shadow:none}:host ::ng-deep .play{margin:auto}:host ::ng-deep .play path{fill:var(--cui-base-0);stroke:var(--cui-base-300)}:host._hidden{display:none}.image{display:block;max-width:100%;width:fit-content;height:250px}.wrapper{display:flex;flex-direction:column;margin-bottom:10px;border:1px solid var(--cui-base-200);border-radius:3px;min-height:200px;background-color:var(--cui-base-0)}.wrapper._loaded{min-height:auto}.wrapper.stretched .image{width:100%;height:auto}.wrapper.center .image{margin:auto}.preloader{width:50px;height:50px;border-radius:50%;background-size:cover;margin:auto;position:relative;background-color:var(--cui-base-200);background-position:center center}@keyframes preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preloader__image{width:50px;height:50px;border-radius:50%}.preloader:after{content:\"\";position:absolute;z-index:3;width:60px;height:60px;border-radius:50%;border:2px solid var(--cui-base-200);border-top-color:var(--cui-blue-600);left:50%;top:50%;margin-top:-30px;margin-left:-30px;animation:preloader-spin 2s infinite linear;box-sizing:border-box}.caption[data-placeholder]:empty:before{content:attr(data-placeholder);position:absolute;color:var(--cui-base-400)}.select-btn{display:flex;align-items:center;justify-content:center;width:100%}\n"] }]
37
+ }], propDecorators: { image: [{
38
+ type: Input,
39
+ args: [{ required: true }]
40
+ }], tunes: [{
41
+ type: Input
42
+ }] } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWltYWdlLXRvb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvY29tcG9uZW50cy9lZGl0b3ItaW1hZ2UtdG9vbC9lZGl0b3ItaW1hZ2UtdG9vbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci1pbWFnZS10b29sL2VkaXRvci1pbWFnZS10b29sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBYzNFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxtQkFBbUI7SUFWakU7O1FBV3VCLGFBQVEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsZ0JBQVcsR0FBRyxNQUFNLENBQWdCLEVBQUUsQ0FBQyxDQUFDO0tBeUI5RDtJQXBCRyxJQUNXLEtBQUssQ0FBQyxLQUFvQjtRQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBYyxnQkFBZ0I7UUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNsRSxDQUFDO0lBRVMsY0FBYyxDQUFDLEtBQW9CO1FBQ3pDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE9BQU87UUFDWCxDQUFDO1FBRUQsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxRQUFRLENBQUMsS0FBb0I7UUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssV0FBVyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUNsRixDQUFDOytHQTFCUSx3QkFBd0I7bUdBQXhCLHdCQUF3QiwwTUNwQnJDLHVvR0E2RUEsa2pERGpFYyxZQUFZLDhCQUFFLFdBQVcsK0JBQUUsT0FBTyxvRkFBRSxJQUFJLDZGQUFFLGtCQUFrQjs7NEZBUTdELHdCQUF3QjtrQkFWcEMsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsa0JBQWtCLENBQUMsbUJBR3RELHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0YsaUJBQWlCLEVBQUUsa0JBQWtCO3FCQUN4Qzs4QkFPTSxLQUFLO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUlkLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUcmFuc2xvY29EaXJlY3RpdmUgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nO1xyXG5cclxuaW1wb3J0IHsgQ3VpU3ZnTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IEVkaXRvclRvb2xDb21wb25lbnQgfSBmcm9tICcuLi9lZGl0b3ItdG9vbC9lZGl0b3ItdG9vbC5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHR5cGUgeyBDdWlJbWFnZVR1bmVzIH0gZnJvbSAnLi9lZGl0b3ItaW1hZ2UtdG9vbC5vcHRpb25zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtDdWlTdmdNb2R1bGUsIEZvcm1zTW9kdWxlLCBOZ0NsYXNzLCBOZ0lmLCBUcmFuc2xvY29EaXJlY3RpdmVdLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VkaXRvci1pbWFnZS10b29sLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2VkaXRvci1pbWFnZS10b29sLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIGhvc3Q6IHtcclxuICAgICAgICAnW2NsYXNzLl9oaWRkZW5dJzogJ2lzU2hvd0xvYWRCdXR0b24nXHJcbiAgICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JJbWFnZVRvb2xDb21wb25lbnQgZXh0ZW5kcyBFZGl0b3JUb29sQ29tcG9uZW50IHtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0xvYWRlZCA9IHNpZ25hbChmYWxzZSk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdHVuZXNTaWduYWwgPSBzaWduYWw8Q3VpSW1hZ2VUdW5lcz4oe30pO1xyXG5cclxuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXHJcbiAgICBwdWJsaWMgaW1hZ2UhOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzZXQgdHVuZXModHVuZXM6IEN1aUltYWdlVHVuZXMpIHtcclxuICAgICAgICB0aGlzLnR1bmVzU2lnbmFsLnNldCh0dW5lcyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGdldCBpc1Nob3dMb2FkQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhdGhpcy5pbWFnZSAmJiAhdGhpcy5pc0NhcHRpb25TaG93biAmJiAhdGhpcy5pc0xvYWRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uUHJldmVudEVudGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tLZXkoZXZlbnQpKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tLZXkoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKGV2ZW50LmtleSAhPT0gJ0JhY2tzcGFjZScgJiYgZXZlbnQua2V5ICE9PSAnRW50ZXInKSB8fCBldmVudC5zaGlmdEtleTtcclxuICAgIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGluZzsgZWxzZSBwcmVsb2FkZXJcIj5cclxuICA8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpbWFnZTsgZWxzZSBidXR0b25UZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwid3JhcHBlclwiXHJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwidHVuZXNTaWduYWwoKVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLl9sb2FkZWRdPVwiaXNMb2FkZWQoKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlXCJcclxuICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZVwiXHJcbiAgICAgICAgICAgICAgICAgIGFsdD1cIkltYWdlXCJcclxuICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJpc0NhcHRpb25TaG93blwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJjYXB0aW9uIGNkeC1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgW2F0dHIuY29udGVudGVkaXRhYmxlXT1cIiFyZWFkT25seVwiXHJcbiAgICAgICAgICAgICAgYXR0ci5kYXRhLXBsYWNlaG9sZGVyPVwie3sgdCgnQ0FQVElPTicpIH19Li4uXCJcclxuICAgICAgICAgICAgICAocGFzdGUpPVwib25UaXRsZVBhc3RlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uUHJldmVudEVudGVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChrZXl1cCk9XCJvblRpdGxlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiY2FwdGlvblwiXHJcbiAgICAgICAgICA+PC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNidXR0b25UZW1wbGF0ZT5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAjYnV0dG9uXHJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cIlsnc2VsZWN0LWJ0bicsIHRoaXMuYXBpLnN0eWxlcy5idXR0b25dXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3RGaWxlKClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzdmdcclxuICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMi41MDEzIDQuMTY2NUg3LjUwMTNDNS42NjAzNSA0LjE2NjUgNC4xNjc5NyA1LjY1ODg5IDQuMTY3OTcgNy40OTk4NFYxMi40OTk4QzQuMTY3OTcgMTQuMzQwOCA1LjY2MDM1IDE1LjgzMzIgNy41MDEzIDE1LjgzMzJIMTIuNTAxM0MxNC4zNDIzIDE1LjgzMzIgMTUuODM0NiAxNC4zNDA4IDE1LjgzNDYgMTIuNDk5OFY3LjQ5OTg0QzE1LjgzNDYgNS42NTg4OSAxNC4zNDIzIDQuMTY2NSAxMi41MDEzIDQuMTY2NVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzEyMTMxNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNC4yODEyNSAxMi43NjY1TDcuMjQwMzMgOS42MzgyNUM3LjUyMjYzIDkuMzM2MTcgNy45MDU0NiA5LjE2NjUgOC4zMDQ2MyA5LjE2NjVDOC43MDM3NyA5LjE2NjUgOS4wODY2IDkuMzM2MTcgOS4zNjg5MyA5LjYzODI1TDEyLjgyMDggMTMuMzMzMk0xMS4zMTU0IDExLjcyMThMMTIuNTA5MiAxMC40NDRDMTIuNzkxNCAxMC4xNDE5IDEzLjE3NDMgOS45NzIxNyAxMy41NzM0IDkuOTcyMTdDMTMuOTcyNiA5Ljk3MjE3IDE0LjM1NTQgMTAuMTQxOSAxNC42Mzc4IDEwLjQ0NEwxNS42OTkgMTEuNjM2XCJcclxuICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMxMjEzMTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTEuNDgwNSA3Ljc3NzgzSDExLjQ4NzlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzEyMTMxNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCJcclxuICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICZuYnNwO3t7IGJ1dHRvbkNvbnRlbnQgfX1cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGUgI3ByZWxvYWRlcj5cclxuICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicHJlbG9hZGVyXCI+XHJcbiAgICAgICAgICA8aW1nXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJwcmV2aWV3XCJcclxuICAgICAgICAgICAgICBjbGFzcz1cInByZWxvYWRlcl9faW1hZ2VcIlxyXG4gICAgICAgICAgICAgIFtzcmNdPVwicHJldmlld1wiXHJcbiAgICAgICAgICAgICAgYWx0PVwiUHJlbG9hZGVyXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuIl19
@@ -0,0 +1,2 @@
1
+ export const EDITOR_IMAGE_TOOL_SELECTOR = 'cc-editor-image-tool';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWltYWdlLXRvb2wub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2NvbXBvbmVudHMvZWRpdG9yLWltYWdlLXRvb2wvZWRpdG9yLWltYWdlLXRvb2wub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQVBJIH0gZnJvbSAnQGVkaXRvcmpzL2VkaXRvcmpzJztcclxuXHJcbmltcG9ydCB0eXBlIHsgQ3VpRmlsZURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ZpbGUtcmVzcG9uc2UtZGF0YSc7XHJcbmltcG9ydCB7IEN1aUZpbGVVcGxvYWRlckNvbmZpZyB9IGZyb20gJy4uLy4uL3V0aWxzL2ZpbGUtdXBsb2FkZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IEVESVRPUl9JTUFHRV9UT09MX1NFTEVDVE9SID0gJ2NjLWVkaXRvci1pbWFnZS10b29sJztcclxuXHJcbmV4cG9ydCB0eXBlIEN1aUltYWdlS2V5c09iamVjdDxWID0gc3RyaW5nPiA9IHtcclxuICBba2V5OiBzdHJpbmddOiBWO1xyXG59O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWlJbWFnZVRvb2xDb25maWcgZXh0ZW5kcyBDdWlGaWxlVXBsb2FkZXJDb25maWcge1xyXG4gIHJlYWRvbmx5IGJ1dHRvbkNvbnRlbnQ6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWlJbWFnZVRvb2xPcHRpb25zIHtcclxuICByZWFkb25seSBhcGk6IEFQSTtcclxuICByZWFkb25seSBjb25maWc6IEN1aUltYWdlVG9vbENvbmZpZztcclxuICByZWFkb25seSBvblNlbGVjdEZpbGU6ICgpID0+IHZvaWQ7XHJcbiAgcmVhZG9ubHkgcmVhZE9ubHk6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpSW1hZ2VUb29sRGF0YSB7XHJcbiAgY2FwdGlvbjogc3RyaW5nO1xyXG4gIGZpbGU6IEN1aUZpbGVEYXRhO1xyXG4gIHR1bmVzOiBDdWlJbWFnZVR1bmVzO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUltYWdlVHVuZXMge1xyXG4gIHN0cmV0Y2hlZD86IGJvb2xlYW47XHJcbiAgbGVmdD86IGJvb2xlYW47XHJcbiAgcmlnaHQ/OiBib29sZWFuO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export { EditorImageToolComponent } from './editor-image-tool.component';
2
+ export * from './editor-image-tool.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci1pbWFnZS10b29sL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3pFLGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBFZGl0b3JJbWFnZVRvb2xDb21wb25lbnQgfSBmcm9tICcuL2VkaXRvci1pbWFnZS10b29sLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLWltYWdlLXRvb2wub3B0aW9ucyc7XHJcbiJdfQ==
@@ -0,0 +1,74 @@
1
+ import { DOCUMENT } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, inject, Input, Output } from '@angular/core';
3
+ import { CUI_WINDOW } from '@cuby-ui/cdk';
4
+ import * as i0 from "@angular/core";
5
+ export class EditorToolComponent {
6
+ constructor() {
7
+ this.window = inject(CUI_WINDOW);
8
+ this.document = inject(DOCUMENT);
9
+ this.readOnly = false;
10
+ this.isLoading = false;
11
+ this.fileSelected = new EventEmitter();
12
+ this.captionChanged = new EventEmitter();
13
+ this.previousValue = this.caption;
14
+ }
15
+ get isCaptionShown() {
16
+ return !this.readOnly || !!this.caption;
17
+ }
18
+ onSelectFile() {
19
+ this.fileSelected.emit();
20
+ }
21
+ onTitleChange(event) {
22
+ const target = event.currentTarget;
23
+ if (target.innerHTML === '<br>') {
24
+ target.innerHTML = '';
25
+ }
26
+ const value = target.innerHTML;
27
+ if (this.previousValue === value) {
28
+ return;
29
+ }
30
+ this.previousValue = value;
31
+ this.captionChanged.emit(value);
32
+ }
33
+ async onTitlePaste(event) {
34
+ event.stopPropagation();
35
+ event.preventDefault();
36
+ if (!this.document) {
37
+ return;
38
+ }
39
+ const value = await this.window.navigator.clipboard.readText();
40
+ const target = event.target;
41
+ this.document.execCommand('insertText', false, value);
42
+ setTimeout(() => this.captionChanged.emit(target.textContent));
43
+ }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EditorToolComponent, selector: "ng-component", inputs: { api: "api", preview: "preview", caption: "caption", buttonContent: "buttonContent", readOnly: "readOnly", isLoading: "isLoading" }, outputs: { fileSelected: "fileSelected", captionChanged: "captionChanged" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorToolComponent, decorators: [{
48
+ type: Component,
49
+ args: [{
50
+ template: '',
51
+ changeDetection: ChangeDetectionStrategy.OnPush
52
+ }]
53
+ }], propDecorators: { api: [{
54
+ type: Input,
55
+ args: [{ required: true }]
56
+ }], preview: [{
57
+ type: Input,
58
+ args: [{ required: true }]
59
+ }], caption: [{
60
+ type: Input,
61
+ args: [{ required: true }]
62
+ }], buttonContent: [{
63
+ type: Input,
64
+ args: [{ required: true }]
65
+ }], readOnly: [{
66
+ type: Input
67
+ }], isLoading: [{
68
+ type: Input
69
+ }], fileSelected: [{
70
+ type: Output
71
+ }], captionChanged: [{
72
+ type: Output
73
+ }] } });
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvY29tcG9uZW50cy9lZGl0b3ItdG9vbC9lZGl0b3ItdG9vbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBTzFDLE1BQU0sT0FBTyxtQkFBbUI7SUFKaEM7UUFLcUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QixhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBZXRDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUdsQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFHeEMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRTNDLGtCQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztLQXlDeEM7SUF2Q0csSUFBYyxjQUFjO1FBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQzVDLENBQUM7SUFFUyxZQUFZO1FBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVTLGFBQWEsQ0FBQyxLQUFvQjtRQUN4QyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsYUFBNEIsQ0FBQztRQUVsRCxJQUFJLE1BQU0sQ0FBQyxTQUFTLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDOUIsTUFBTSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxTQUFVLENBQUM7UUFFaEMsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQy9CLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVTLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBWTtRQUNyQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXZCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsT0FBTztRQUNYLENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMvRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztRQUUzQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RELFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBWSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDOytHQXBFUSxtQkFBbUI7bUdBQW5CLG1CQUFtQiwrUUFIbEIsRUFBRTs7NEZBR0gsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs4QkFNVSxHQUFHO3NCQURULEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUlsQixPQUFPO3NCQURiLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUlsQixPQUFPO3NCQURiLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUlsQixhQUFhO3NCQURuQixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFJbEIsUUFBUTtzQkFEZCxLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxZQUFZO3NCQURsQixNQUFNO2dCQUlBLGNBQWM7c0JBRHBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENVSV9XSU5ET1cgfSBmcm9tICdAY3VieS11aS9jZGsnO1xyXG5pbXBvcnQgdHlwZSB7IEFQSSB9IGZyb20gJ0BlZGl0b3Jqcy9lZGl0b3Jqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHRlbXBsYXRlOiAnJyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JUb29sQ29tcG9uZW50IHtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2luZG93ID0gaW5qZWN0KENVSV9XSU5ET1cpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XHJcblxyXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcclxuICAgIHB1YmxpYyBhcGkhOiBBUEk7XHJcblxyXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcclxuICAgIHB1YmxpYyBwcmV2aWV3ITogc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXHJcbiAgICBwdWJsaWMgY2FwdGlvbiE6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxyXG4gICAgcHVibGljIGJ1dHRvbkNvbnRlbnQhOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyByZWFkT25seSA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgZmlsZVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGNhcHRpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gICAgcHJpdmF0ZSBwcmV2aW91c1ZhbHVlID0gdGhpcy5jYXB0aW9uO1xyXG5cclxuICAgIHByb3RlY3RlZCBnZXQgaXNDYXB0aW9uU2hvd24oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICF0aGlzLnJlYWRPbmx5IHx8ICEhdGhpcy5jYXB0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvblNlbGVjdEZpbGUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5maWxlU2VsZWN0ZWQuZW1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvblRpdGxlQ2hhbmdlKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuXHJcbiAgICAgICAgaWYgKHRhcmdldC5pbm5lckhUTUwgPT09ICc8YnI+Jykge1xyXG4gICAgICAgICAgICB0YXJnZXQuaW5uZXJIVE1MID0gJyc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCB2YWx1ZSA9IHRhcmdldC5pbm5lckhUTUwhO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5wcmV2aW91c1ZhbHVlID09PSB2YWx1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnByZXZpb3VzVmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLmNhcHRpb25DaGFuZ2VkLmVtaXQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBhc3luYyBvblRpdGxlUGFzdGUoZXZlbnQ6IEV2ZW50KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLmRvY3VtZW50KSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHZhbHVlID0gYXdhaXQgdGhpcy53aW5kb3cubmF2aWdhdG9yLmNsaXBib2FyZC5yZWFkVGV4dCgpO1xyXG4gICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuXHJcbiAgICAgICAgdGhpcy5kb2N1bWVudC5leGVjQ29tbWFuZCgnaW5zZXJ0VGV4dCcsIGZhbHNlLCB2YWx1ZSk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNhcHRpb25DaGFuZ2VkLmVtaXQodGFyZ2V0LnRleHRDb250ZW50ISkpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,69 @@
1
+ import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, HostBinding, Input, Output, inject, signal } from '@angular/core';
2
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
+ import { CUI_WINDOW, CuiClickOutsideDirective } from '@cuby-ui/cdk';
4
+ import { skip } from 'rxjs';
5
+ import { CuiButtonModule } from '../../../components';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@cuby-ui/cdk";
8
+ import * as i2 from "../../../components/button/button.component";
9
+ export class EditorToolModalComponent {
10
+ set marker(value) {
11
+ this.calculateModalPosition(value);
12
+ }
13
+ get _isHidden() {
14
+ return this.isHidden();
15
+ }
16
+ get _isFullscreen() {
17
+ return this.isFullscreen();
18
+ }
19
+ constructor() {
20
+ this.element = inject(ElementRef).nativeElement;
21
+ this.window = inject(CUI_WINDOW);
22
+ this.cuiClickOutsideDirective = inject(CuiClickOutsideDirective, { self: true });
23
+ this.SPACE_BETWEEN_TARGET_AND_LIST = 10;
24
+ this.isFullscreen = signal(false);
25
+ this.isHidden = signal(true);
26
+ this.closed = new EventEmitter();
27
+ this.initClickOutsideSubscription();
28
+ }
29
+ onCloseModal() {
30
+ this.closed.emit();
31
+ }
32
+ onMaximizeModal() {
33
+ this.isFullscreen.update((prev) => !prev);
34
+ }
35
+ initClickOutsideSubscription() {
36
+ this.cuiClickOutsideDirective.cuiClickOutside
37
+ .pipe(skip(1), takeUntilDestroyed())
38
+ .subscribe(() => this.onCloseModal());
39
+ }
40
+ calculateModalPosition(marker) {
41
+ const { bottom, left } = marker.getBoundingClientRect();
42
+ setTimeout(() => {
43
+ const modalWidth = this.element.offsetWidth;
44
+ this.element.style.top = bottom + this.window.scrollY + this.SPACE_BETWEEN_TARGET_AND_LIST + 'px';
45
+ this.element.style.left = left + this.window.scrollX + marker.offsetWidth / 2 - modalWidth / 2 + 'px';
46
+ this.isHidden.set(false);
47
+ });
48
+ }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorToolModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EditorToolModalComponent, isStandalone: true, selector: "ng-component", inputs: { tool: "tool", marker: "marker" }, outputs: { closed: "closed" }, host: { properties: { "class._hidden": "this._isHidden", "class._fullscreen": "this._isFullscreen" } }, hostDirectives: [{ directive: i1.CuiClickOutsideDirective }], ngImport: i0, template: "<div class=\"triangle\"></div>\r\n<div class=\"wrapper\">\r\n <header class=\"header\">\r\n <h3 class=\"title\">{{ tool.title }}</h3>\r\n <div class=\"header__buttons\">\r\n <!-- TODO: replace icon with 'maximize' -->\r\n <button\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n icon=\"cuiIconArrowSortSm\"\r\n (click)=\"onMaximizeModal()\"\r\n ></button>\r\n <button\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n icon=\"cuiIconX\"\r\n (click)=\"onCloseModal()\"\r\n ></button>\r\n </div>\r\n </header>\r\n <div class=\"content\">\r\n <div class=\"info\">\r\n <!-- TODO: \u0431\u0443\u0434\u0435\u0442 \u043A\u0430\u0440\u0442\u0438\u043D\u043A\u0430-->\r\n <p class=\"info__item\">\r\n <span class=\"info__field\">\u0422\u0438\u043F:</span>\r\n <span class=\"info__title\">{{ tool.title }}</span>\r\n </p>\r\n <p class=\"info__item\">\r\n <span class=\"info__field\">\u0421\u0442\u0440\u0430\u043D\u0430 \u043F\u0440\u043E\u0438\u0437\u0432\u043E\u0434\u0438\u0442\u0435\u043B\u044C:</span>\r\n <span class=\"info__title\">{{ tool.title }}</span>\r\n </p>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".content{padding-right:23px;padding-left:23px;padding-bottom:7px;font-weight:400;font-size:14px;line-height:20px;font-family:var(--cui-main-font);max-height:415px;overflow-y:auto}:host{position:absolute;z-index:10;left:50%;top:30px;min-height:100px;max-width:450px}:host._fullscreen{position:fixed;top:0!important;left:0!important;max-width:none;height:100vh;width:100%;transform:none}:host._fullscreen .content{max-height:calc(100% - 56px)}:host._hidden{visibility:hidden}.triangle{position:absolute;top:-7px;left:50%;width:14px;height:14px;border-radius:2px;border:1px solid var(--cui-base-200);background:var(--cui-base-0);transform:translate(-50%) rotate(45deg)}.wrapper{position:relative;border-radius:8px;border:1px solid var(--cui-base-200);background:var(--cui-base-0);height:100%}.header{padding:8.2px 15px 8px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}.title{font-weight:500;font-size:14px;line-height:20px;padding-top:2px;padding-bottom:2px;text-wrap:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--cui-base-900)}.info{display:flex;flex-direction:column;gap:8px}.info__item{display:flex;gap:8px}.info__field{font-weight:400;font-size:16px;line-height:24px;text-wrap:nowrap;color:var(--cui-gray-600)}.info__title{font-weight:500;font-size:16px;line-height:24px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:var(--cui-base-900)}\n"], dependencies: [{ kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i2.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorToolModalComponent, decorators: [{
53
+ type: Component,
54
+ args: [{ standalone: true, imports: [CuiButtonModule], changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [CuiClickOutsideDirective], template: "<div class=\"triangle\"></div>\r\n<div class=\"wrapper\">\r\n <header class=\"header\">\r\n <h3 class=\"title\">{{ tool.title }}</h3>\r\n <div class=\"header__buttons\">\r\n <!-- TODO: replace icon with 'maximize' -->\r\n <button\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n icon=\"cuiIconArrowSortSm\"\r\n (click)=\"onMaximizeModal()\"\r\n ></button>\r\n <button\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n icon=\"cuiIconX\"\r\n (click)=\"onCloseModal()\"\r\n ></button>\r\n </div>\r\n </header>\r\n <div class=\"content\">\r\n <div class=\"info\">\r\n <!-- TODO: \u0431\u0443\u0434\u0435\u0442 \u043A\u0430\u0440\u0442\u0438\u043D\u043A\u0430-->\r\n <p class=\"info__item\">\r\n <span class=\"info__field\">\u0422\u0438\u043F:</span>\r\n <span class=\"info__title\">{{ tool.title }}</span>\r\n </p>\r\n <p class=\"info__item\">\r\n <span class=\"info__field\">\u0421\u0442\u0440\u0430\u043D\u0430 \u043F\u0440\u043E\u0438\u0437\u0432\u043E\u0434\u0438\u0442\u0435\u043B\u044C:</span>\r\n <span class=\"info__title\">{{ tool.title }}</span>\r\n </p>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".content{padding-right:23px;padding-left:23px;padding-bottom:7px;font-weight:400;font-size:14px;line-height:20px;font-family:var(--cui-main-font);max-height:415px;overflow-y:auto}:host{position:absolute;z-index:10;left:50%;top:30px;min-height:100px;max-width:450px}:host._fullscreen{position:fixed;top:0!important;left:0!important;max-width:none;height:100vh;width:100%;transform:none}:host._fullscreen .content{max-height:calc(100% - 56px)}:host._hidden{visibility:hidden}.triangle{position:absolute;top:-7px;left:50%;width:14px;height:14px;border-radius:2px;border:1px solid var(--cui-base-200);background:var(--cui-base-0);transform:translate(-50%) rotate(45deg)}.wrapper{position:relative;border-radius:8px;border:1px solid var(--cui-base-200);background:var(--cui-base-0);height:100%}.header{padding:8.2px 15px 8px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}.title{font-weight:500;font-size:14px;line-height:20px;padding-top:2px;padding-bottom:2px;text-wrap:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--cui-base-900)}.info{display:flex;flex-direction:column;gap:8px}.info__item{display:flex;gap:8px}.info__field{font-weight:400;font-size:16px;line-height:24px;text-wrap:nowrap;color:var(--cui-gray-600)}.info__title{font-weight:500;font-size:16px;line-height:24px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:var(--cui-base-900)}\n"] }]
55
+ }], ctorParameters: () => [], propDecorators: { tool: [{
56
+ type: Input,
57
+ args: [{ required: true }]
58
+ }], marker: [{
59
+ type: Input
60
+ }], closed: [{
61
+ type: Output
62
+ }], _isHidden: [{
63
+ type: HostBinding,
64
+ args: ['class._hidden']
65
+ }], _isFullscreen: [{
66
+ type: HostBinding,
67
+ args: ['class._fullscreen']
68
+ }] } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2wtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvY29tcG9uZW50cy9lZGl0b3ItdG9vbC1tb2RhbC9lZGl0b3ItdG9vbC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci10b29sLW1vZGFsL2VkaXRvci10b29sLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLHdCQUF3QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0FBV3RELE1BQU0sT0FBTyx3QkFBd0I7SUFhakMsSUFDVyxNQUFNLENBQUMsS0FBa0I7UUFDaEMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFLRCxJQUNjLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQ2MsYUFBYTtRQUN2QixPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7UUE5QmlCLFlBQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQzNDLFdBQU0sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUIsNkJBQXdCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFNUUsa0NBQTZCLEdBQUcsRUFBRSxDQUFDO1FBRTdDLGlCQUFZLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLGFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFXeEIsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFhckMsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVTLFlBQVk7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRVMsZUFBZTtRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sNEJBQTRCO1FBQ2hDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxlQUFlO2FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQzthQUNuQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVPLHNCQUFzQixDQUFDLE1BQW1CO1FBQzlDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFeEQsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1lBRTVDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixHQUFHLElBQUksQ0FBQztZQUNsRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxHQUFHLFVBQVUsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBRXRHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0E1RFEsd0JBQXdCO21HQUF4Qix3QkFBd0IseVRDMUJyQyxvaERBc0NBLGs4Q0RsQmMsZUFBZTs7NEZBTWhCLHdCQUF3QjtrQkFScEMsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxlQUFlLENBQUMsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0IsQ0FBQyx3QkFBd0IsQ0FBQzt3REFhbkMsSUFBSTtzQkFEVixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFJZCxNQUFNO3NCQURoQixLQUFLO2dCQU1DLE1BQU07c0JBRFosTUFBTTtnQkFJTyxTQUFTO3NCQUR0QixXQUFXO3VCQUFDLGVBQWU7Z0JBTWQsYUFBYTtzQkFEMUIsV0FBVzt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgSG9zdEJpbmRpbmcsXHJcbiAgICBJbnB1dCxcclxuICAgIE91dHB1dCxcclxuICAgIGluamVjdCxcclxuICAgIHNpZ25hbFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7IENVSV9XSU5ET1csIEN1aUNsaWNrT3V0c2lkZURpcmVjdGl2ZSB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XHJcbmltcG9ydCB7IHNraXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEN1aUJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgdHlwZSB7IFRvb2wgfSBmcm9tICcuL2VkaXRvci10b29sLW1vZGFsLm9wdGlvbnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW0N1aUJ1dHRvbk1vZHVsZV0sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWRpdG9yLXRvb2wtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vZWRpdG9yLXRvb2wtbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtDdWlDbGlja091dHNpZGVEaXJlY3RpdmVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JUb29sTW9kYWxDb21wb25lbnQge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdyA9IGluamVjdChDVUlfV0lORE9XKTtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3VpQ2xpY2tPdXRzaWRlRGlyZWN0aXZlID0gaW5qZWN0KEN1aUNsaWNrT3V0c2lkZURpcmVjdGl2ZSwgeyBzZWxmOiB0cnVlIH0pO1xyXG5cclxuICAgIHByaXZhdGUgcmVhZG9ubHkgU1BBQ0VfQkVUV0VFTl9UQVJHRVRfQU5EX0xJU1QgPSAxMDtcclxuXHJcbiAgICBwdWJsaWMgaXNGdWxsc2NyZWVuID0gc2lnbmFsKGZhbHNlKTtcclxuICAgIHB1YmxpYyBpc0hpZGRlbiA9IHNpZ25hbCh0cnVlKTtcclxuXHJcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxyXG4gICAgcHVibGljIHRvb2whOiBUb29sO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgc2V0IG1hcmtlcih2YWx1ZTogSFRNTEVsZW1lbnQpIHtcclxuICAgICAgICB0aGlzLmNhbGN1bGF0ZU1vZGFsUG9zaXRpb24odmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9oaWRkZW4nKVxyXG4gICAgcHJvdGVjdGVkIGdldCBfaXNIaWRkZW4oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNIaWRkZW4oKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9mdWxsc2NyZWVuJylcclxuICAgIHByb3RlY3RlZCBnZXQgX2lzRnVsbHNjcmVlbigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc0Z1bGxzY3JlZW4oKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLmluaXRDbGlja091dHNpZGVTdWJzY3JpcHRpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25DbG9zZU1vZGFsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25NYXhpbWl6ZU1vZGFsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNGdWxsc2NyZWVuLnVwZGF0ZSgocHJldikgPT4gIXByZXYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdENsaWNrT3V0c2lkZVN1YnNjcmlwdGlvbigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmN1aUNsaWNrT3V0c2lkZURpcmVjdGl2ZS5jdWlDbGlja091dHNpZGVcclxuICAgICAgICAgICAgLnBpcGUoc2tpcCgxKSwgdGFrZVVudGlsRGVzdHJveWVkKCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkNsb3NlTW9kYWwoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVNb2RhbFBvc2l0aW9uKG1hcmtlcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB7IGJvdHRvbSwgbGVmdCB9ID0gbWFya2VyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgbW9kYWxXaWR0aCA9IHRoaXMuZWxlbWVudC5vZmZzZXRXaWR0aDtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5zdHlsZS50b3AgPSBib3R0b20gKyB0aGlzLndpbmRvdy5zY3JvbGxZICsgdGhpcy5TUEFDRV9CRVRXRUVOX1RBUkdFVF9BTkRfTElTVCArICdweCc7XHJcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5zdHlsZS5sZWZ0ID0gbGVmdCArIHRoaXMud2luZG93LnNjcm9sbFggKyBtYXJrZXIub2Zmc2V0V2lkdGggLyAyIC0gbW9kYWxXaWR0aCAvIDIgKyAncHgnO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5pc0hpZGRlbi5zZXQoZmFsc2UpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0cmlhbmdsZVwiPjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgPGhlYWRlciBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgICAgIDxoMyBjbGFzcz1cInRpdGxlXCI+e3sgdG9vbC50aXRsZSB9fTwvaDM+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICA8IS0tIFRPRE86IHJlcGxhY2UgaWNvbiB3aXRoICdtYXhpbWl6ZScgLS0+XHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXHJcbiAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvbkFycm93U29ydFNtXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk1heGltaXplTW9kYWwoKVwiXHJcbiAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJnaG9zdFwiXHJcbiAgICAgICAgICAgICAgICBzaXplPVwieHhzXCJcclxuICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uWFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbG9zZU1vZGFsKClcIlxyXG4gICAgICAgICAgICA+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2hlYWRlcj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250ZW50XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImluZm9cIj5cclxuICAgICAgICAgICAgPCEtLSBUT0RPOiDQsdGD0LTQtdGCINC60LDRgNGC0LjQvdC60LAtLT5cclxuICAgICAgICAgICAgPHAgY2xhc3M9XCJpbmZvX19pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImluZm9fX2ZpZWxkXCI+0KLQuNC/Ojwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaW5mb19fdGl0bGVcIj57eyB0b29sLnRpdGxlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxwIGNsYXNzPVwiaW5mb19faXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpbmZvX19maWVsZFwiPtCh0YLRgNCw0L3QsCDQv9GA0L7QuNC30LLQvtC00LjRgtC10LvRjDo8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImluZm9fX3RpdGxlXCI+e3sgdG9vbC50aXRsZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export const EDITOR_TOOL_MODAL_SELECTOR = 'cc-editor-tool-modal';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2wtbW9kYWwub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2NvbXBvbmVudHMvZWRpdG9yLXRvb2wtbW9kYWwvZWRpdG9yLXRvb2wtbW9kYWwub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWFya2VyVHlwZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21hcmtlcnMtc2VydmljZS5vcHRpb25zJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVG9vbCB7XHJcbiAgaWQ6IHN0cmluZztcclxuICBpbWFnZT86IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICB0eXBlPzogTWFya2VyVHlwZTtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IEVESVRPUl9UT09MX01PREFMX1NFTEVDVE9SID0gJ2NjLWVkaXRvci10b29sLW1vZGFsJztcclxuIl19
@@ -0,0 +1,3 @@
1
+ export { EditorToolModalComponent } from './editor-tool-modal.component';
2
+ export { EDITOR_TOOL_MODAL_SELECTOR } from './editor-tool-modal.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci10b29sLW1vZGFsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3pFLE9BQU8sRUFBUSwwQkFBMEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgRWRpdG9yVG9vbE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9lZGl0b3ItdG9vbC1tb2RhbC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBUb29sLCBFRElUT1JfVE9PTF9NT0RBTF9TRUxFQ1RPUiB9IGZyb20gJy4vZWRpdG9yLXRvb2wtbW9kYWwub3B0aW9ucyc7XHJcbiJdfQ==
@@ -0,0 +1,45 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { NgFor } from '@angular/common';
3
+ import { CuiButtonModule } from '../../../components';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../components/button/button.component";
6
+ export class EditorTooltipComponent {
7
+ constructor() {
8
+ // TODO: Удалить класс
9
+ this.BUTTONS_OPTIONS = new Map([
10
+ ['copy', { icon: 'cuiIconCopy', handler: (event) => this.copyClicked.emit(event) }],
11
+ ['edit', { icon: 'cuiIconEdit', handler: (event) => this.editClicked.emit(event), class: 'edit' }],
12
+ ['delete', { icon: 'cuiIconTrash', handler: (event) => this.deleteClicked.emit(event) }]
13
+ ]);
14
+ this._options = ['edit', 'delete'];
15
+ this.buttons = this.getButtonsFromOptions(this._options);
16
+ this.copyClicked = new EventEmitter();
17
+ this.editClicked = new EventEmitter();
18
+ this.deleteClicked = new EventEmitter();
19
+ }
20
+ set options(value) {
21
+ this._options = value;
22
+ this.buttons = this.getButtonsFromOptions(value);
23
+ }
24
+ getButtonsFromOptions(options) {
25
+ return options.map((option) => this.BUTTONS_OPTIONS.get(option));
26
+ }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EditorTooltipComponent, isStandalone: true, selector: "ng-component", inputs: { title: "title", options: "options" }, outputs: { copyClicked: "copyClicked", editClicked: "editClicked", deleteClicked: "deleteClicked" }, ngImport: i0, template: "<h3 class=\"title\">{{ title }}</h3>\r\n<div class=\"buttons-container\">\r\n <ng-container *ngFor=\"let button of buttons\">\r\n <div class=\"divider\"></div>\r\n <!-- TODO: class \u0434\u043E\u043B\u0436\u0435\u043D \u0431\u044B\u0442\u044C \u0443\u0434\u0430\u043B\u0451\u043D \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043C-->\r\n <button\r\n class=\"button\"\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n [icon]=\"button.icon\"\r\n [class]=\"button.class\"\r\n (click)=\"button.handler($event)\"\r\n ></button>\r\n </ng-container>\r\n</div>\r\n", styles: [":host{padding:4px 6px;box-shadow:0 4px 6px -2px #0000000d,0 10px 15px -3px #0000001a;font-weight:400;font-size:14px;line-height:20px;position:fixed;z-index:12;left:0;top:0;display:flex;align-items:center;gap:12px;border-radius:4px;font-family:var(--cui-main-font);background:var(--cui-gray-800)}.title{font-weight:400;font-size:14px;line-height:20px;max-width:300px;text-wrap:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--cui-gray-0)}.divider{width:1px;height:24px;background:var(--cui-gray-500)}.buttons-container{display:flex;align-items:center;gap:4px}.button{--cui-base-50: rgba(255 255 255 / 10%);--cui-base-500: var(--cui-gray-0)}\n"], dependencies: [{ kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
29
+ }
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorTooltipComponent, decorators: [{
31
+ type: Component,
32
+ args: [{ standalone: true, imports: [CuiButtonModule, NgFor], changeDetection: ChangeDetectionStrategy.OnPush, template: "<h3 class=\"title\">{{ title }}</h3>\r\n<div class=\"buttons-container\">\r\n <ng-container *ngFor=\"let button of buttons\">\r\n <div class=\"divider\"></div>\r\n <!-- TODO: class \u0434\u043E\u043B\u0436\u0435\u043D \u0431\u044B\u0442\u044C \u0443\u0434\u0430\u043B\u0451\u043D \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043C-->\r\n <button\r\n class=\"button\"\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n [icon]=\"button.icon\"\r\n [class]=\"button.class\"\r\n (click)=\"button.handler($event)\"\r\n ></button>\r\n </ng-container>\r\n</div>\r\n", styles: [":host{padding:4px 6px;box-shadow:0 4px 6px -2px #0000000d,0 10px 15px -3px #0000001a;font-weight:400;font-size:14px;line-height:20px;position:fixed;z-index:12;left:0;top:0;display:flex;align-items:center;gap:12px;border-radius:4px;font-family:var(--cui-main-font);background:var(--cui-gray-800)}.title{font-weight:400;font-size:14px;line-height:20px;max-width:300px;text-wrap:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--cui-gray-0)}.divider{width:1px;height:24px;background:var(--cui-gray-500)}.buttons-container{display:flex;align-items:center;gap:4px}.button{--cui-base-50: rgba(255 255 255 / 10%);--cui-base-500: var(--cui-gray-0)}\n"] }]
33
+ }], propDecorators: { title: [{
34
+ type: Input,
35
+ args: [{ required: true }]
36
+ }], options: [{
37
+ type: Input
38
+ }], copyClicked: [{
39
+ type: Output
40
+ }], editClicked: [{
41
+ type: Output
42
+ }], deleteClicked: [{
43
+ type: Output
44
+ }] } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2x0aXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvY29tcG9uZW50cy9lZGl0b3ItdG9vbHRpcC9lZGl0b3ItdG9vbHRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci10b29sdGlwL2VkaXRvci10b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBVXRELE1BQU0sT0FBTyxzQkFBc0I7SUFQbkM7UUFRSSxzQkFBc0I7UUFDSCxvQkFBZSxHQUFHLElBQUksR0FBRyxDQUEyQztZQUNuRixDQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pGLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUN4RyxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1NBQ2pHLENBQUMsQ0FBQztRQUVPLGFBQVEsR0FBeUIsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDcEQsWUFBTyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFZOUMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzdDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUc3QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7S0FLbEU7SUFsQkcsSUFDVyxPQUFPLENBQUMsS0FBMkI7UUFDMUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQVdPLHFCQUFxQixDQUFDLE9BQTZCO1FBQ3ZELE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFFLENBQUMsQ0FBQztJQUN0RSxDQUFDOytHQS9CUSxzQkFBc0I7bUdBQXRCLHNCQUFzQiw2TkNibkMsb3JCQWlCQSxtc0JEVGMsZUFBZSwyTkFBRSxLQUFLOzs0RkFLdkIsc0JBQXNCO2tCQVBsQyxTQUFTO2lDQUNNLElBQUksV0FDUCxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU07OEJBY3hDLEtBQUs7c0JBRFgsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBSWQsT0FBTztzQkFEakIsS0FBSztnQkFPVSxXQUFXO3NCQUQxQixNQUFNO2dCQUlTLFdBQVc7c0JBRDFCLE1BQU07Z0JBSVMsYUFBYTtzQkFENUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBDdWlCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzJztcclxuaW1wb3J0IHR5cGUgeyBFZGl0b3JUb29sdGlwQnV0dG9uLCBFZGl0b3JUb29sdGlwT3B0aW9uLCBFZGl0b3JUb29sdGlwT3B0aW9ucyB9IGZyb20gJy4vZWRpdG9yLXRvb2x0aXAub3B0aW9ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbQ3VpQnV0dG9uTW9kdWxlLCBOZ0Zvcl0sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWRpdG9yLXRvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vZWRpdG9yLXRvb2x0aXAuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JUb29sdGlwQ29tcG9uZW50IHtcclxuICAgIC8vIFRPRE86INCj0LTQsNC70LjRgtGMINC60LvQsNGB0YFcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBCVVRUT05TX09QVElPTlMgPSBuZXcgTWFwPEVkaXRvclRvb2x0aXBPcHRpb24sIEVkaXRvclRvb2x0aXBCdXR0b24+KFtcclxuICAgICAgICBbJ2NvcHknLCB7IGljb246ICdjdWlJY29uQ29weScsIGhhbmRsZXI6IChldmVudCk6IHZvaWQgPT4gdGhpcy5jb3B5Q2xpY2tlZC5lbWl0KGV2ZW50KSB9XSxcclxuICAgICAgICBbJ2VkaXQnLCB7IGljb246ICdjdWlJY29uRWRpdCcsIGhhbmRsZXI6IChldmVudCk6IHZvaWQgPT4gdGhpcy5lZGl0Q2xpY2tlZC5lbWl0KGV2ZW50KSwgY2xhc3M6ICdlZGl0JyB9XSxcclxuICAgICAgICBbJ2RlbGV0ZScsIHsgaWNvbjogJ2N1aUljb25UcmFzaCcsIGhhbmRsZXI6IChldmVudCk6IHZvaWQgPT4gdGhpcy5kZWxldGVDbGlja2VkLmVtaXQoZXZlbnQpIH1dXHJcbiAgICBdKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgX29wdGlvbnM6IEVkaXRvclRvb2x0aXBPcHRpb25zID0gWydlZGl0JywgJ2RlbGV0ZSddO1xyXG4gICAgcHJvdGVjdGVkIGJ1dHRvbnMgPSB0aGlzLmdldEJ1dHRvbnNGcm9tT3B0aW9ucyh0aGlzLl9vcHRpb25zKTtcclxuXHJcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxyXG4gICAgcHVibGljIHRpdGxlITogc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgc2V0IG9wdGlvbnModmFsdWU6IEVkaXRvclRvb2x0aXBPcHRpb25zKSB7XHJcbiAgICAgICAgdGhpcy5fb3B0aW9ucyA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuYnV0dG9ucyA9IHRoaXMuZ2V0QnV0dG9uc0Zyb21PcHRpb25zKHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBjb3B5Q2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBlZGl0Q2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBkZWxldGVDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICAgIHByaXZhdGUgZ2V0QnV0dG9uc0Zyb21PcHRpb25zKG9wdGlvbnM6IEVkaXRvclRvb2x0aXBPcHRpb25zKTogRWRpdG9yVG9vbHRpcEJ1dHRvbltdIHtcclxuICAgICAgICByZXR1cm4gb3B0aW9ucy5tYXAoKG9wdGlvbikgPT4gdGhpcy5CVVRUT05TX09QVElPTlMuZ2V0KG9wdGlvbikhKTtcclxuICAgIH1cclxufVxyXG4iLCI8aDMgY2xhc3M9XCJ0aXRsZVwiPnt7IHRpdGxlIH19PC9oMz5cclxuPGRpdiBjbGFzcz1cImJ1dHRvbnMtY29udGFpbmVyXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidXR0b24gb2YgYnV0dG9uc1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiPjwvZGl2PlxyXG4gICAgICA8IS0tICAgICAgICBUT0RPOiBjbGFzcyDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YPQtNCw0LvRkdC9INCyINCx0YPQtNGD0YnQtdC8LS0+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICAgIGNsYXNzPVwiYnV0dG9uXCJcclxuICAgICAgICAgIGN1aUJ1dHRvblxyXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxyXG4gICAgICAgICAgc2l6ZT1cInh4c1wiXHJcbiAgICAgICAgICBbaWNvbl09XCJidXR0b24uaWNvblwiXHJcbiAgICAgICAgICBbY2xhc3NdPVwiYnV0dG9uLmNsYXNzXCJcclxuICAgICAgICAgIChjbGljayk9XCJidXR0b24uaGFuZGxlcigkZXZlbnQpXCJcclxuICAgICAgPjwvYnV0dG9uPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export const EDITOR_TOOLTIP_SELECTOR = 'cc-editor-tooltip';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2x0aXAub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2NvbXBvbmVudHMvZWRpdG9yLXRvb2x0aXAvZWRpdG9yLXRvb2x0aXAub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFhQSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ3VpSWNvbiB9IGZyb20gJ0BjdWJ5LXVpL2ljb25zJztcclxuXHJcbmV4cG9ydCB0eXBlIEVkaXRvclRvb2x0aXBPcHRpb24gPSAnY29weScgfCAnZWRpdCcgfCAnZGVsZXRlJztcclxuXHJcbmV4cG9ydCB0eXBlIEVkaXRvclRvb2x0aXBPcHRpb25zID0gRWRpdG9yVG9vbHRpcE9wdGlvbltdO1xyXG5cclxuLy8gVE9ETzogY2xhc3Mg0LTQvtC70LbQtdC9INCx0YvRgtGMINGD0LTQsNC70ZHQvSDQsiDQsdGD0LTRg9GJ0LXQvFxyXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRvclRvb2x0aXBCdXR0b24ge1xyXG4gICAgcmVhZG9ubHkgaWNvbjogQ3VpSWNvbjtcclxuICAgIHJlYWRvbmx5IGhhbmRsZXI6IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcclxuICAgIHJlYWRvbmx5IGNsYXNzPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgRURJVE9SX1RPT0xUSVBfU0VMRUNUT1IgPSAnY2MtZWRpdG9yLXRvb2x0aXAnO1xyXG4iXX0=
@@ -0,0 +1,3 @@
1
+ export { EditorTooltipComponent } from './editor-tooltip.component';
2
+ export * from './editor-tooltip.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci10b29sdGlwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBFZGl0b3JUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi9lZGl0b3ItdG9vbHRpcC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci10b29sdGlwLm9wdGlvbnMnO1xyXG4iXX0=
@@ -0,0 +1,41 @@
1
+ import { ChangeDetectionStrategy, Component, Input, signal } from '@angular/core';
2
+ import { FormsModule } from '@angular/forms';
3
+ import { NgIf } from '@angular/common';
4
+ import { TranslocoDirective } from '@jsverse/transloco';
5
+ import { CuiSvgModule } from '../../../components';
6
+ import { EditorToolComponent } from '../editor-tool/editor-tool.component';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../components/svg/svg.component";
9
+ export class EditorVideoToolComponent extends EditorToolComponent {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.isLoaded = signal(false);
13
+ }
14
+ get isShowLoadButton() {
15
+ return !this.video && !this.isCaptionShown && !this.isLoading;
16
+ }
17
+ onPlay() {
18
+ this.isLoaded.set(true);
19
+ }
20
+ onPreventEnter(event) {
21
+ if (this.checkKey(event)) {
22
+ return;
23
+ }
24
+ event.stopPropagation();
25
+ }
26
+ checkKey(event) {
27
+ return (event.key !== 'Backspace' && event.key !== 'Enter') || event.shiftKey;
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorVideoToolComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EditorVideoToolComponent, isStandalone: true, selector: "ng-component", inputs: { video: "video" }, host: { properties: { "class._hidden": "isShowLoadButton" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <ng-container *ngIf=\"!isLoading; else preloader\">\r\n <ng-container *ngIf=\"video; else buttonTemplate\">\r\n <div\r\n class=\"wrapper\"\r\n [class._loaded]=\"isLoaded()\"\r\n >\r\n <video\r\n *ngIf=\"isLoaded(); else playButtonTemplate\"\r\n class=\"video\"\r\n [src]=\"video\"\r\n controls\r\n autoplay\r\n ></video>\r\n\r\n <ng-template #playButtonTemplate>\r\n <button\r\n type=\"button\"\r\n class=\"play\"\r\n (click)=\"onPlay()\"\r\n >\r\n <cui-svg\r\n class=\"play\"\r\n icon=\"cuiIconPlayCircleSm\"\r\n [height]=\"72\"\r\n [width]=\"72\"\r\n [strokeWidth]=\"0.5\"\r\n />\r\n </button>\r\n </ng-template>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"isCaptionShown\"\r\n class=\"caption cdx-input\"\r\n [attr.contenteditable]=\"!readOnly\"\r\n attr.data-placeholder=\"{{ t('CAPTION') }}...\"\r\n (paste)=\"onTitlePaste($event)\"\r\n (keydown)=\"onPreventEnter($event)\"\r\n (keyup)=\"onTitleChange($event)\"\r\n [innerHTML]=\"caption\"\r\n ></div>\r\n </ng-container>\r\n\r\n <ng-template #buttonTemplate>\r\n <button\r\n type=\"button\"\r\n [class]=\"['select-btn', this.api.styles.button]\"\r\n (click)=\"onSelectFile()\"\r\n >\r\n <cui-svg icon=\"cuiIconPlayCircle\" />\r\n &nbsp;{{ buttonContent }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n</ng-container>\r\n\r\n\r\n<ng-template #preloader>\r\n <div class=\"wrapper\">\r\n <div class=\"preloader\">\r\n <img\r\n *ngIf=\"preview\"\r\n class=\"preloader__image\"\r\n [src]=\"preview\"\r\n alt=\"Preloader\"\r\n />\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n\r\n", styles: [":host{font-weight:400;font-size:14px;line-height:20px;padding-top:6px;padding-bottom:6px;font-family:var(--cui-main-font);display:block}:host ::ng-deep .cdx-input{border:1px solid var(--cui-base-200);background:transparent;box-shadow:none}:host ::ng-deep .play{margin:auto}:host ::ng-deep .play path{fill:var(--cui-base-0);stroke:var(--cui-base-300)}:host._hidden{display:none}.wrapper{display:flex;flex-direction:column;margin-bottom:10px;border:1px solid var(--cui-base-200);border-radius:3px;min-height:200px;background-color:var(--cui-base-0)}.wrapper._loaded{min-height:auto}.video{display:block;max-width:100%}.preloader{width:50px;height:50px;border-radius:50%;background-size:cover;margin:auto;position:relative;background-color:var(--cui-base-200);background-position:center center}@keyframes preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preloader__image{width:50px;height:50px;border-radius:50%}.preloader:after{content:\"\";position:absolute;z-index:3;width:60px;height:60px;border-radius:50%;border:2px solid var(--cui-base-200);border-top-color:var(--cui-blue-600);left:50%;top:50%;margin-top:-30px;margin-left:-30px;animation:preloader-spin 2s infinite linear;box-sizing:border-box}.caption[data-placeholder]:empty:before{content:attr(data-placeholder);position:absolute;color:var(--cui-base-400)}.select-btn{display:flex;align-items:center;justify-content:center;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i1.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditorVideoToolComponent, decorators: [{
33
+ type: Component,
34
+ args: [{ standalone: true, imports: [CuiSvgModule, FormsModule, NgIf, TranslocoDirective], changeDetection: ChangeDetectionStrategy.OnPush, host: {
35
+ '[class._hidden]': 'isShowLoadButton'
36
+ }, template: "<ng-container *transloco=\"let t\">\r\n <ng-container *ngIf=\"!isLoading; else preloader\">\r\n <ng-container *ngIf=\"video; else buttonTemplate\">\r\n <div\r\n class=\"wrapper\"\r\n [class._loaded]=\"isLoaded()\"\r\n >\r\n <video\r\n *ngIf=\"isLoaded(); else playButtonTemplate\"\r\n class=\"video\"\r\n [src]=\"video\"\r\n controls\r\n autoplay\r\n ></video>\r\n\r\n <ng-template #playButtonTemplate>\r\n <button\r\n type=\"button\"\r\n class=\"play\"\r\n (click)=\"onPlay()\"\r\n >\r\n <cui-svg\r\n class=\"play\"\r\n icon=\"cuiIconPlayCircleSm\"\r\n [height]=\"72\"\r\n [width]=\"72\"\r\n [strokeWidth]=\"0.5\"\r\n />\r\n </button>\r\n </ng-template>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"isCaptionShown\"\r\n class=\"caption cdx-input\"\r\n [attr.contenteditable]=\"!readOnly\"\r\n attr.data-placeholder=\"{{ t('CAPTION') }}...\"\r\n (paste)=\"onTitlePaste($event)\"\r\n (keydown)=\"onPreventEnter($event)\"\r\n (keyup)=\"onTitleChange($event)\"\r\n [innerHTML]=\"caption\"\r\n ></div>\r\n </ng-container>\r\n\r\n <ng-template #buttonTemplate>\r\n <button\r\n type=\"button\"\r\n [class]=\"['select-btn', this.api.styles.button]\"\r\n (click)=\"onSelectFile()\"\r\n >\r\n <cui-svg icon=\"cuiIconPlayCircle\" />\r\n &nbsp;{{ buttonContent }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n</ng-container>\r\n\r\n\r\n<ng-template #preloader>\r\n <div class=\"wrapper\">\r\n <div class=\"preloader\">\r\n <img\r\n *ngIf=\"preview\"\r\n class=\"preloader__image\"\r\n [src]=\"preview\"\r\n alt=\"Preloader\"\r\n />\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n\r\n", styles: [":host{font-weight:400;font-size:14px;line-height:20px;padding-top:6px;padding-bottom:6px;font-family:var(--cui-main-font);display:block}:host ::ng-deep .cdx-input{border:1px solid var(--cui-base-200);background:transparent;box-shadow:none}:host ::ng-deep .play{margin:auto}:host ::ng-deep .play path{fill:var(--cui-base-0);stroke:var(--cui-base-300)}:host._hidden{display:none}.wrapper{display:flex;flex-direction:column;margin-bottom:10px;border:1px solid var(--cui-base-200);border-radius:3px;min-height:200px;background-color:var(--cui-base-0)}.wrapper._loaded{min-height:auto}.video{display:block;max-width:100%}.preloader{width:50px;height:50px;border-radius:50%;background-size:cover;margin:auto;position:relative;background-color:var(--cui-base-200);background-position:center center}@keyframes preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preloader__image{width:50px;height:50px;border-radius:50%}.preloader:after{content:\"\";position:absolute;z-index:3;width:60px;height:60px;border-radius:50%;border:2px solid var(--cui-base-200);border-top-color:var(--cui-blue-600);left:50%;top:50%;margin-top:-30px;margin-left:-30px;animation:preloader-spin 2s infinite linear;box-sizing:border-box}.caption[data-placeholder]:empty:before{content:attr(data-placeholder);position:absolute;color:var(--cui-base-400)}.select-btn{display:flex;align-items:center;justify-content:center;width:100%}\n"] }]
37
+ }], propDecorators: { video: [{
38
+ type: Input,
39
+ args: [{ required: true }]
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXZpZGVvLXRvb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9lZGl0b3IvY29tcG9uZW50cy9lZGl0b3ItdmlkZW8tdG9vbC9lZGl0b3ItdmlkZW8tdG9vbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci12aWRlby10b29sL2VkaXRvci12aWRlby10b29sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXhELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7O0FBWTNFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxtQkFBbUI7SUFWakU7O1FBV2MsYUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztLQXdCdEM7SUFuQkcsSUFBYyxnQkFBZ0I7UUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNsRSxDQUFDO0lBRVMsTUFBTTtRQUNaLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFUyxjQUFjLENBQUMsS0FBb0I7UUFDekMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkIsT0FBTztRQUNYLENBQUM7UUFFRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLFFBQVEsQ0FBQyxLQUFvQjtRQUNqQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxXQUFXLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDO0lBQ2xGLENBQUM7K0dBeEJRLHdCQUF3QjttR0FBeEIsd0JBQXdCLDBMQ2xCckMsaWhFQXdFQSwrN0NEOURjLFlBQVksdUtBQUUsV0FBVywrQkFBRSxJQUFJLDZGQUFFLGtCQUFrQjs7NEZBUXBELHdCQUF3QjtrQkFWcEMsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxtQkFHN0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDRixpQkFBaUIsRUFBRSxrQkFBa0I7cUJBQ3hDOzhCQU1NLEtBQUs7c0JBRFgsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcclxuXHJcbmltcG9ydCB7IEN1aVN2Z01vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBFZGl0b3JUb29sQ29tcG9uZW50IH0gZnJvbSAnLi4vZWRpdG9yLXRvb2wvZWRpdG9yLXRvb2wuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtDdWlTdmdNb2R1bGUsIEZvcm1zTW9kdWxlLCBOZ0lmLCBUcmFuc2xvY29EaXJlY3RpdmVdLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VkaXRvci12aWRlby10b29sLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2VkaXRvci12aWRlby10b29sLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIGhvc3Q6IHtcclxuICAgICAgICAnW2NsYXNzLl9oaWRkZW5dJzogJ2lzU2hvd0xvYWRCdXR0b24nXHJcbiAgICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JWaWRlb1Rvb2xDb21wb25lbnQgZXh0ZW5kcyBFZGl0b3JUb29sQ29tcG9uZW50IHtcclxuICAgIHByb3RlY3RlZCBpc0xvYWRlZCA9IHNpZ25hbChmYWxzZSk7XHJcblxyXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcclxuICAgIHB1YmxpYyB2aWRlbyE6IHN0cmluZztcclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0IGlzU2hvd0xvYWRCdXR0b24oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICF0aGlzLnZpZGVvICYmICF0aGlzLmlzQ2FwdGlvblNob3duICYmICF0aGlzLmlzTG9hZGluZztcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25QbGF5KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNMb2FkZWQuc2V0KHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvblByZXZlbnRFbnRlcihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrS2V5KGV2ZW50KSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNoZWNrS2V5KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIChldmVudC5rZXkgIT09ICdCYWNrc3BhY2UnICYmIGV2ZW50LmtleSAhPT0gJ0VudGVyJykgfHwgZXZlbnQuc2hpZnRLZXk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGluZzsgZWxzZSBwcmVsb2FkZXJcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2aWRlbzsgZWxzZSBidXR0b25UZW1wbGF0ZVwiPlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgICBjbGFzcz1cIndyYXBwZXJcIlxyXG4gICAgICAgICAgW2NsYXNzLl9sb2FkZWRdPVwiaXNMb2FkZWQoKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8dmlkZW9cclxuICAgICAgICAgICAgKm5nSWY9XCJpc0xvYWRlZCgpOyBlbHNlIHBsYXlCdXR0b25UZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidmlkZW9cIlxyXG4gICAgICAgICAgICBbc3JjXT1cInZpZGVvXCJcclxuICAgICAgICAgICAgY29udHJvbHNcclxuICAgICAgICAgICAgYXV0b3BsYXlcclxuICAgICAgICA+PC92aWRlbz5cclxuXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNwbGF5QnV0dG9uVGVtcGxhdGU+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJwbGF5XCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwib25QbGF5KClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8Y3VpLXN2Z1xyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwbGF5XCJcclxuICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uUGxheUNpcmNsZVNtXCJcclxuICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiNzJcIlxyXG4gICAgICAgICAgICAgICAgW3dpZHRoXT1cIjcyXCJcclxuICAgICAgICAgICAgICAgIFtzdHJva2VXaWR0aF09XCIwLjVcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgICAqbmdJZj1cImlzQ2FwdGlvblNob3duXCJcclxuICAgICAgICAgIGNsYXNzPVwiY2FwdGlvbiBjZHgtaW5wdXRcIlxyXG4gICAgICAgICAgW2F0dHIuY29udGVudGVkaXRhYmxlXT1cIiFyZWFkT25seVwiXHJcbiAgICAgICAgICBhdHRyLmRhdGEtcGxhY2Vob2xkZXI9XCJ7eyB0KCdDQVBUSU9OJykgfX0uLi5cIlxyXG4gICAgICAgICAgKHBhc3RlKT1cIm9uVGl0bGVQYXN0ZSgkZXZlbnQpXCJcclxuICAgICAgICAgIChrZXlkb3duKT1cIm9uUHJldmVudEVudGVyKCRldmVudClcIlxyXG4gICAgICAgICAgKGtleXVwKT1cIm9uVGl0bGVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbaW5uZXJIVE1MXT1cImNhcHRpb25cIlxyXG4gICAgICA+PC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2J1dHRvblRlbXBsYXRlPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgIFtjbGFzc109XCJbJ3NlbGVjdC1idG4nLCB0aGlzLmFwaS5zdHlsZXMuYnV0dG9uXVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3RGaWxlKClcIlxyXG4gICAgICA+XHJcbiAgICAgICAgICA8Y3VpLXN2ZyBpY29uPVwiY3VpSWNvblBsYXlDaXJjbGVcIiAvPlxyXG4gICAgICAgICAgJm5ic3A7e3sgYnV0dG9uQ29udGVudCB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjcHJlbG9hZGVyPlxyXG4gIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicHJlbG9hZGVyXCI+XHJcbiAgICAgIDxpbWdcclxuICAgICAgICAgICpuZ0lmPVwicHJldmlld1wiXHJcbiAgICAgICAgICBjbGFzcz1cInByZWxvYWRlcl9faW1hZ2VcIlxyXG4gICAgICAgICAgW3NyY109XCJwcmV2aWV3XCJcclxuICAgICAgICAgIGFsdD1cIlByZWxvYWRlclwiXHJcbiAgICAgIC8+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcblxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export const EDITOR_VIDEO_TOOL_SELECTOR = 'cc-editor-video-tool';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXZpZGVvLXRvb2wub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL2NvbXBvbmVudHMvZWRpdG9yLXZpZGVvLXRvb2wvZWRpdG9yLXZpZGVvLXRvb2wub3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQVBJIH0gZnJvbSAnQGVkaXRvcmpzL2VkaXRvcmpzJztcclxuXHJcbmltcG9ydCB0eXBlIHsgQ3VpRmlsZURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ZpbGUtcmVzcG9uc2UtZGF0YSc7XHJcbmltcG9ydCB7IEN1aUZpbGVVcGxvYWRlckNvbmZpZyB9IGZyb20gJy4uLy4uL3V0aWxzL2ZpbGUtdXBsb2FkZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IEVESVRPUl9WSURFT19UT09MX1NFTEVDVE9SID0gJ2NjLWVkaXRvci12aWRlby10b29sJztcclxuXHJcbmV4cG9ydCB0eXBlIFZpZGVvS2V5c09iamVjdDxWID0gc3RyaW5nPiA9IHtcclxuICBba2V5OiBzdHJpbmddOiBWO1xyXG59O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWlWaWRlb1Rvb2xDb25maWcgZXh0ZW5kcyBDdWlGaWxlVXBsb2FkZXJDb25maWcge1xyXG4gIHJlYWRvbmx5IGJ1dHRvbkNvbnRlbnQ6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWlWaWRlb1Rvb2xQbGF5ZXIge1xyXG4gIHJlYWRvbmx5IHBpcDogYm9vbGVhbjtcclxuICByZWFkb25seSBjb250cm9sczogYm9vbGVhbjtcclxuICByZWFkb25seSBsaWdodDogYm9vbGVhbjtcclxuICByZWFkb25seSBwbGF5aW5nOiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aVZpZGVvVG9vbE9wdGlvbnMge1xyXG4gIHJlYWRvbmx5IGFwaTogQVBJO1xyXG4gIHJlYWRvbmx5IGNvbmZpZzogQ3VpVmlkZW9Ub29sQ29uZmlnO1xyXG4gIHJlYWRvbmx5IG9uU2VsZWN0RmlsZTogKCkgPT4gdm9pZDtcclxuICByZWFkb25seSByZWFkT25seTogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWlWaWRlb1Rvb2xEYXRhIHtcclxuICBjYXB0aW9uOiBzdHJpbmc7XHJcbiAgZmlsZTogQ3VpRmlsZURhdGE7XHJcbn1cclxuIl19
@@ -0,0 +1,3 @@
1
+ export { EditorVideoToolComponent } from './editor-video-tool.component';
2
+ export * from './editor-video-tool.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2VkaXRvci12aWRlby10b29sL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3pFLGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBFZGl0b3JWaWRlb1Rvb2xDb21wb25lbnQgfSBmcm9tICcuL2VkaXRvci12aWRlby10b29sLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLXZpZGVvLXRvb2wub3B0aW9ucyc7XHJcbiJdfQ==
@@ -0,0 +1,8 @@
1
+ export { EditorToolModalComponent, EDITOR_TOOL_MODAL_SELECTOR } from './editor-tool-modal';
2
+ export { EditorTooltipComponent, EDITOR_TOOLTIP_SELECTOR } from './editor-tooltip';
3
+ export { MarkerModalComponent, MARKER_MODAL_SELECTOR } from './marker-modal';
4
+ export { MarkerSelectComponent, MARKER_SELECT_SELECTOR } from './marker-select';
5
+ export { EditorAttachesToolComponent, EDITOR_ATTACHES_TOOL_SELECTOR } from './editor-attaches-tool';
6
+ export { EditorImageToolComponent, EDITOR_IMAGE_TOOL_SELECTOR } from './editor-image-tool';
7
+ export { EditorVideoToolComponent, EDITOR_VIDEO_TOOL_SELECTOR } from './editor-video-tool';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSwwQkFBMEIsRUFBUSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBd0IsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQWMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsNkJBQTZCLEVBQXlCLE1BQU0sd0JBQXdCLENBQUM7QUFDM0gsT0FBTyxFQUFFLHdCQUF3QixFQUFFLDBCQUEwQixFQUFzQixNQUFNLHFCQUFxQixDQUFDO0FBQy9HLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSwwQkFBMEIsRUFBc0IsTUFBTSxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEVkaXRvclRvb2xNb2RhbENvbXBvbmVudCwgRURJVE9SX1RPT0xfTU9EQUxfU0VMRUNUT1IsIFRvb2wgfSBmcm9tICcuL2VkaXRvci10b29sLW1vZGFsJztcclxuZXhwb3J0IHsgRWRpdG9yVG9vbHRpcENvbXBvbmVudCwgRURJVE9SX1RPT0xUSVBfU0VMRUNUT1IsIEVkaXRvclRvb2x0aXBPcHRpb25zIH0gZnJvbSAnLi9lZGl0b3ItdG9vbHRpcCc7XHJcbmV4cG9ydCB7IE1hcmtlck1vZGFsQ29tcG9uZW50LCBNQVJLRVJfTU9EQUxfU0VMRUNUT1IsIE1hcmtlckRhdGEgfSBmcm9tICcuL21hcmtlci1tb2RhbCc7XHJcbmV4cG9ydCB7IE1hcmtlclNlbGVjdENvbXBvbmVudCwgTUFSS0VSX1NFTEVDVF9TRUxFQ1RPUiB9IGZyb20gJy4vbWFya2VyLXNlbGVjdCc7XHJcbmV4cG9ydCB7IEVkaXRvckF0dGFjaGVzVG9vbENvbXBvbmVudCwgRURJVE9SX0FUVEFDSEVTX1RPT0xfU0VMRUNUT1IsIEN1aUF0dGFjaGVzVG9vbENvbmZpZyB9IGZyb20gJy4vZWRpdG9yLWF0dGFjaGVzLXRvb2wnO1xyXG5leHBvcnQgeyBFZGl0b3JJbWFnZVRvb2xDb21wb25lbnQsIEVESVRPUl9JTUFHRV9UT09MX1NFTEVDVE9SLCBDdWlJbWFnZVRvb2xDb25maWcgfSBmcm9tICcuL2VkaXRvci1pbWFnZS10b29sJztcclxuZXhwb3J0IHsgRWRpdG9yVmlkZW9Ub29sQ29tcG9uZW50LCBFRElUT1JfVklERU9fVE9PTF9TRUxFQ1RPUiwgQ3VpVmlkZW9Ub29sQ29uZmlnIH0gZnJvbSAnLi9lZGl0b3ItdmlkZW8tdG9vbCc7XHJcbiJdfQ==