@tiny-mce-umbraco/backoffice 16.0.0-rc2 → 16.0.0-rc2.1

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 (214) hide show
  1. package/README.md +1 -0
  2. package/dist-cms/README.md +1 -0
  3. package/dist-cms/api/client.gen.d.ts +13 -0
  4. package/dist-cms/api/client.gen.d.ts.map +1 -0
  5. package/dist-cms/api/client.gen.js +5 -0
  6. package/dist-cms/api/index.d.ts +3 -0
  7. package/dist-cms/api/index.d.ts.map +1 -0
  8. package/dist-cms/api/index.js +3 -0
  9. package/dist-cms/api/sdk.gen.d.ts +19 -0
  10. package/dist-cms/api/sdk.gen.d.ts.map +1 -0
  11. package/dist-cms/api/sdk.gen.js +16 -0
  12. package/dist-cms/api/types.gen.d.ts +72 -0
  13. package/dist-cms/api/types.gen.d.ts.map +1 -0
  14. package/dist-cms/api/types.gen.js +7 -0
  15. package/dist-cms/components/constants.d.ts +2 -0
  16. package/dist-cms/components/constants.d.ts.map +1 -0
  17. package/dist-cms/components/constants.js +1 -0
  18. package/dist-cms/components/index.d.ts +6 -0
  19. package/dist-cms/components/index.d.ts.map +1 -0
  20. package/dist-cms/components/index.js +5 -0
  21. package/dist-cms/components/input-tiny-mce/index.d.ts +7 -0
  22. package/dist-cms/components/input-tiny-mce/index.d.ts.map +1 -0
  23. package/dist-cms/components/input-tiny-mce/index.js +6 -0
  24. package/dist-cms/components/input-tiny-mce/input-tiny-mce.defaults.d.ts +5 -0
  25. package/dist-cms/components/input-tiny-mce/input-tiny-mce.defaults.d.ts.map +1 -0
  26. package/dist-cms/components/input-tiny-mce/input-tiny-mce.defaults.js +159 -0
  27. package/dist-cms/components/input-tiny-mce/input-tiny-mce.element.d.ts +37 -0
  28. package/dist-cms/components/input-tiny-mce/input-tiny-mce.element.d.ts.map +1 -0
  29. package/dist-cms/components/input-tiny-mce/input-tiny-mce.element.js +449 -0
  30. package/dist-cms/components/input-tiny-mce/input-tiny-mce.handlers.d.ts +3 -0
  31. package/dist-cms/components/input-tiny-mce/input-tiny-mce.handlers.d.ts.map +1 -0
  32. package/dist-cms/components/input-tiny-mce/input-tiny-mce.handlers.js +8 -0
  33. package/dist-cms/components/input-tiny-mce/input-tiny-mce.languages.d.ts +2 -0
  34. package/dist-cms/components/input-tiny-mce/input-tiny-mce.languages.d.ts.map +1 -0
  35. package/dist-cms/components/input-tiny-mce/input-tiny-mce.languages.js +78 -0
  36. package/dist-cms/components/input-tiny-mce/input-tiny-mce.sanitizer.d.ts +9 -0
  37. package/dist-cms/components/input-tiny-mce/input-tiny-mce.sanitizer.d.ts.map +1 -0
  38. package/dist-cms/components/input-tiny-mce/input-tiny-mce.sanitizer.js +47 -0
  39. package/dist-cms/components/input-tiny-mce/tiny-mce-plugin.d.ts +24 -0
  40. package/dist-cms/components/input-tiny-mce/tiny-mce-plugin.d.ts.map +1 -0
  41. package/dist-cms/components/input-tiny-mce/tiny-mce-plugin.js +16 -0
  42. package/dist-cms/components/manifests.d.ts +2 -0
  43. package/dist-cms/components/manifests.d.ts.map +1 -0
  44. package/dist-cms/components/manifests.js +2 -0
  45. package/dist-cms/components/stylesheet-rule-input/constants.d.ts +3 -0
  46. package/dist-cms/components/stylesheet-rule-input/constants.d.ts.map +1 -0
  47. package/dist-cms/components/stylesheet-rule-input/constants.js +2 -0
  48. package/dist-cms/components/stylesheet-rule-input/manifests.d.ts +3 -0
  49. package/dist-cms/components/stylesheet-rule-input/manifests.d.ts.map +1 -0
  50. package/dist-cms/components/stylesheet-rule-input/manifests.js +9 -0
  51. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-input.element.d.ts +18 -0
  52. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-input.element.d.ts.map +1 -0
  53. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-input.element.js +119 -0
  54. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-settings-modal.element.d.ts +12 -0
  55. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-settings-modal.element.d.ts.map +1 -0
  56. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-settings-modal.element.js +142 -0
  57. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-settings-modal.token.d.ts +7 -0
  58. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-settings-modal.token.d.ts.map +1 -0
  59. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-settings-modal.token.js +9 -0
  60. package/dist-cms/components/stylesheet-rule-ref/stylesheet-rule-ref.element.d.ts +16 -0
  61. package/dist-cms/components/stylesheet-rule-ref/stylesheet-rule-ref.element.d.ts.map +1 -0
  62. package/dist-cms/components/stylesheet-rule-ref/stylesheet-rule-ref.element.js +24 -0
  63. package/dist-cms/constants.d.ts +2 -0
  64. package/dist-cms/constants.d.ts.map +1 -0
  65. package/dist-cms/constants.js +1 -0
  66. package/dist-cms/entry-points/entry-point.d.ts +4 -0
  67. package/dist-cms/entry-points/entry-point.d.ts.map +1 -0
  68. package/dist-cms/entry-points/entry-point.js +25 -0
  69. package/dist-cms/entry-points/manifest.d.ts +2 -0
  70. package/dist-cms/entry-points/manifest.d.ts.map +1 -0
  71. package/dist-cms/entry-points/manifest.js +8 -0
  72. package/dist-cms/external/tinymce/index.d.ts +22 -0
  73. package/dist-cms/external/tinymce/index.d.ts.map +1 -0
  74. package/dist-cms/external/tinymce/index.js +18 -0
  75. package/dist-cms/icons/icons.d.ts +6 -0
  76. package/dist-cms/icons/icons.d.ts.map +1 -0
  77. package/dist-cms/icons/icons.js +1 -0
  78. package/dist-cms/icons/manifests.d.ts +2 -0
  79. package/dist-cms/icons/manifests.d.ts.map +1 -0
  80. package/dist-cms/icons/manifests.js +8 -0
  81. package/dist-cms/index.d.ts +5 -0
  82. package/dist-cms/index.d.ts.map +1 -0
  83. package/dist-cms/index.js +3 -0
  84. package/dist-cms/localizations/ar.d.ts +4 -0
  85. package/dist-cms/localizations/ar.d.ts.map +1 -0
  86. package/dist-cms/localizations/ar.js +5 -0
  87. package/dist-cms/localizations/bs.d.ts +4 -0
  88. package/dist-cms/localizations/bs.d.ts.map +1 -0
  89. package/dist-cms/localizations/bs.js +5 -0
  90. package/dist-cms/localizations/cs.d.ts +4 -0
  91. package/dist-cms/localizations/cs.d.ts.map +1 -0
  92. package/dist-cms/localizations/cs.js +5 -0
  93. package/dist-cms/localizations/cy.d.ts +4 -0
  94. package/dist-cms/localizations/cy.d.ts.map +1 -0
  95. package/dist-cms/localizations/cy.js +5 -0
  96. package/dist-cms/localizations/da.d.ts +4 -0
  97. package/dist-cms/localizations/da.d.ts.map +1 -0
  98. package/dist-cms/localizations/da.js +5 -0
  99. package/dist-cms/localizations/de.d.ts +4 -0
  100. package/dist-cms/localizations/de.d.ts.map +1 -0
  101. package/dist-cms/localizations/de.js +5 -0
  102. package/dist-cms/localizations/en.d.ts +4 -0
  103. package/dist-cms/localizations/en.d.ts.map +1 -0
  104. package/dist-cms/localizations/en.js +5 -0
  105. package/dist-cms/localizations/fr.d.ts +4 -0
  106. package/dist-cms/localizations/fr.d.ts.map +1 -0
  107. package/dist-cms/localizations/fr.js +5 -0
  108. package/dist-cms/localizations/hr.d.ts +4 -0
  109. package/dist-cms/localizations/hr.d.ts.map +1 -0
  110. package/dist-cms/localizations/hr.js +5 -0
  111. package/dist-cms/localizations/it.d.ts +4 -0
  112. package/dist-cms/localizations/it.d.ts.map +1 -0
  113. package/dist-cms/localizations/it.js +5 -0
  114. package/dist-cms/localizations/manifests.d.ts +2 -0
  115. package/dist-cms/localizations/manifests.d.ts.map +1 -0
  116. package/dist-cms/localizations/manifests.js +97 -0
  117. package/dist-cms/localizations/nl.d.ts +4 -0
  118. package/dist-cms/localizations/nl.d.ts.map +1 -0
  119. package/dist-cms/localizations/nl.js +5 -0
  120. package/dist-cms/localizations/tr.d.ts +4 -0
  121. package/dist-cms/localizations/tr.d.ts.map +1 -0
  122. package/dist-cms/localizations/tr.js +5 -0
  123. package/dist-cms/manifests.d.ts +2 -0
  124. package/dist-cms/manifests.d.ts.map +1 -0
  125. package/dist-cms/manifests.js +16 -0
  126. package/dist-cms/plugins/core/a11ychecker.tinymce-api.d.ts +6 -0
  127. package/dist-cms/plugins/core/a11ychecker.tinymce-api.d.ts.map +1 -0
  128. package/dist-cms/plugins/core/a11ychecker.tinymce-api.js +7 -0
  129. package/dist-cms/plugins/core/ai-assistant.tinymce-api.d.ts +9 -0
  130. package/dist-cms/plugins/core/ai-assistant.tinymce-api.d.ts.map +1 -0
  131. package/dist-cms/plugins/core/ai-assistant.tinymce-api.js +41 -0
  132. package/dist-cms/plugins/core/ai-request-factory.d.ts +2 -0
  133. package/dist-cms/plugins/core/ai-request-factory.d.ts.map +1 -0
  134. package/dist-cms/plugins/core/ai-request-factory.js +33 -0
  135. package/dist-cms/plugins/core/basic.tinymce-api.d.ts +6 -0
  136. package/dist-cms/plugins/core/basic.tinymce-api.d.ts.map +1 -0
  137. package/dist-cms/plugins/core/basic.tinymce-api.js +7 -0
  138. package/dist-cms/plugins/manifests.d.ts +3 -0
  139. package/dist-cms/plugins/manifests.d.ts.map +1 -0
  140. package/dist-cms/plugins/manifests.js +506 -0
  141. package/dist-cms/plugins/tiny-mce-block-picker.plugin.d.ts +8 -0
  142. package/dist-cms/plugins/tiny-mce-block-picker.plugin.d.ts.map +1 -0
  143. package/dist-cms/plugins/tiny-mce-block-picker.plugin.js +99 -0
  144. package/dist-cms/plugins/tiny-mce-code-editor.plugin.d.ts +7 -0
  145. package/dist-cms/plugins/tiny-mce-code-editor.plugin.d.ts.map +1 -0
  146. package/dist-cms/plugins/tiny-mce-code-editor.plugin.js +42 -0
  147. package/dist-cms/plugins/tiny-mce-embeddedmedia.plugin.d.ts +7 -0
  148. package/dist-cms/plugins/tiny-mce-embeddedmedia.plugin.d.ts.map +1 -0
  149. package/dist-cms/plugins/tiny-mce-embeddedmedia.plugin.js +74 -0
  150. package/dist-cms/plugins/tiny-mce-mediapicker.plugin.d.ts +7 -0
  151. package/dist-cms/plugins/tiny-mce-mediapicker.plugin.d.ts.map +1 -0
  152. package/dist-cms/plugins/tiny-mce-mediapicker.plugin.js +224 -0
  153. package/dist-cms/plugins/tiny-mce-multi-url-picker.plugin.d.ts +8 -0
  154. package/dist-cms/plugins/tiny-mce-multi-url-picker.plugin.d.ts.map +1 -0
  155. package/dist-cms/plugins/tiny-mce-multi-url-picker.plugin.js +172 -0
  156. package/dist-cms/plugins/tinymce-plugin.extension.d.ts +70 -0
  157. package/dist-cms/plugins/tinymce-plugin.extension.d.ts.map +1 -0
  158. package/dist-cms/plugins/tinymce-plugin.extension.js +1 -0
  159. package/dist-cms/plugins/types.d.ts +2 -0
  160. package/dist-cms/plugins/types.d.ts.map +1 -0
  161. package/dist-cms/plugins/types.js +1 -0
  162. package/dist-cms/property-editors/configEditor/property-editor-ui-tiny-mce-config-editor.element.d.ts +23 -0
  163. package/dist-cms/property-editors/configEditor/property-editor-ui-tiny-mce-config-editor.element.d.ts.map +1 -0
  164. package/dist-cms/property-editors/configEditor/property-editor-ui-tiny-mce-config-editor.element.js +102 -0
  165. package/dist-cms/property-editors/constants.d.ts +2 -0
  166. package/dist-cms/property-editors/constants.d.ts.map +1 -0
  167. package/dist-cms/property-editors/constants.js +1 -0
  168. package/dist-cms/property-editors/manifests.d.ts +2 -0
  169. package/dist-cms/property-editors/manifests.d.ts.map +1 -0
  170. package/dist-cms/property-editors/manifests.js +37 -0
  171. package/dist-cms/property-editors/plugin/property-editor-ui-tiny-mce-plugin-configuration.element.d.ts +25 -0
  172. package/dist-cms/property-editors/plugin/property-editor-ui-tiny-mce-plugin-configuration.element.d.ts.map +1 -0
  173. package/dist-cms/property-editors/plugin/property-editor-ui-tiny-mce-plugin-configuration.element.js +212 -0
  174. package/dist-cms/property-editors/tiny-mce/constants.d.ts +2 -0
  175. package/dist-cms/property-editors/tiny-mce/constants.d.ts.map +1 -0
  176. package/dist-cms/property-editors/tiny-mce/constants.js +1 -0
  177. package/dist-cms/property-editors/tiny-mce/manifests.d.ts +2 -0
  178. package/dist-cms/property-editors/tiny-mce/manifests.d.ts.map +1 -0
  179. package/dist-cms/property-editors/tiny-mce/manifests.js +149 -0
  180. package/dist-cms/property-editors/tiny-mce/property-editor-ui-tiny-mce.element.d.ts +16 -0
  181. package/dist-cms/property-editors/tiny-mce/property-editor-ui-tiny-mce.element.d.ts.map +1 -0
  182. package/dist-cms/property-editors/tiny-mce/property-editor-ui-tiny-mce.element.js +79 -0
  183. package/dist-cms/property-editors/toolbar/property-editor-ui-tiny-mce-toolbar-configuration.element.d.ts +25 -0
  184. package/dist-cms/property-editors/toolbar/property-editor-ui-tiny-mce-toolbar-configuration.element.d.ts.map +1 -0
  185. package/dist-cms/property-editors/toolbar/property-editor-ui-tiny-mce-toolbar-configuration.element.js +201 -0
  186. package/dist-cms/stylesheets/entity-actions/manifests.d.ts +2 -0
  187. package/dist-cms/stylesheets/entity-actions/manifests.d.ts.map +1 -0
  188. package/dist-cms/stylesheets/entity-actions/manifests.js +15 -0
  189. package/dist-cms/stylesheets/entity-actions/rte-stylesheet-create-option-action.d.ts +7 -0
  190. package/dist-cms/stylesheets/entity-actions/rte-stylesheet-create-option-action.d.ts.map +1 -0
  191. package/dist-cms/stylesheets/entity-actions/rte-stylesheet-create-option-action.js +8 -0
  192. package/dist-cms/stylesheets/manifests.d.ts +2 -0
  193. package/dist-cms/stylesheets/manifests.d.ts.map +1 -0
  194. package/dist-cms/stylesheets/manifests.js +3 -0
  195. package/dist-cms/stylesheets/stylesheet-rule-manager.d.ts +20 -0
  196. package/dist-cms/stylesheets/stylesheet-rule-manager.d.ts.map +1 -0
  197. package/dist-cms/stylesheets/stylesheet-rule-manager.js +57 -0
  198. package/dist-cms/stylesheets/workspace-views/manifests.d.ts +2 -0
  199. package/dist-cms/stylesheets/workspace-views/manifests.d.ts.map +1 -0
  200. package/dist-cms/stylesheets/workspace-views/manifests.js +22 -0
  201. package/dist-cms/stylesheets/workspace-views/stylesheet-rich-text-rule-workspace-view.element.d.ts +18 -0
  202. package/dist-cms/stylesheets/workspace-views/stylesheet-rich-text-rule-workspace-view.element.d.ts.map +1 -0
  203. package/dist-cms/stylesheets/workspace-views/stylesheet-rich-text-rule-workspace-view.element.js +100 -0
  204. package/dist-cms/tinymce.d.ts +2 -0
  205. package/dist-cms/tinymce.d.ts.map +1 -0
  206. package/dist-cms/tinymce.js +1 -0
  207. package/dist-cms/types.d.ts +6 -0
  208. package/dist-cms/types.d.ts.map +1 -0
  209. package/dist-cms/types.js +1 -0
  210. package/dist-cms/utils/index.d.ts +26 -0
  211. package/dist-cms/utils/index.d.ts.map +1 -0
  212. package/dist-cms/utils/index.js +108 -0
  213. package/package.json +10 -4
  214. package/dist/tiny-mce-umbraco.d.ts +0 -252
@@ -0,0 +1,79 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _UmbPropertyEditorUITinyMceElement_instances, _UmbPropertyEditorUITinyMceElement_onChange;
13
+ import { customElement, html } from '@umbraco-cms/backoffice/external/lit';
14
+ import { UmbPropertyEditorUiRteElementBase } from '@umbraco-cms/backoffice/rte';
15
+ import '../../components/input-tiny-mce/input-tiny-mce.element.js';
16
+ /**
17
+ * @element umb-property-editor-ui-tiny-mce
18
+ */
19
+ let UmbPropertyEditorUITinyMceElement = class UmbPropertyEditorUITinyMceElement extends UmbPropertyEditorUiRteElementBase {
20
+ constructor() {
21
+ super(...arguments);
22
+ _UmbPropertyEditorUITinyMceElement_instances.add(this);
23
+ }
24
+ render() {
25
+ return html `
26
+ <umb-input-tiny-mce
27
+ .configuration=${this._config}
28
+ .value=${this._markup}
29
+ @change=${__classPrivateFieldGet(this, _UmbPropertyEditorUITinyMceElement_instances, "m", _UmbPropertyEditorUITinyMceElement_onChange)}
30
+ ?readonly=${this.readonly}>
31
+ </umb-input-tiny-mce>
32
+ `;
33
+ }
34
+ };
35
+ _UmbPropertyEditorUITinyMceElement_instances = new WeakSet();
36
+ _UmbPropertyEditorUITinyMceElement_onChange = function _UmbPropertyEditorUITinyMceElement_onChange(event) {
37
+ const markup = typeof event.target.value === 'string' ? event.target.value : '';
38
+ // If we don't get any markup clear the property editor value.
39
+ if (markup === '') {
40
+ this.value = undefined;
41
+ this._fireChangeEvent();
42
+ return;
43
+ }
44
+ // Remove unused Blocks of Blocks Layout. Leaving only the Blocks that are present in Markup.
45
+ const usedContentKeys = [];
46
+ // Regex matching all block elements in the markup, and extracting the content key. It's the same as the one used on the backend.
47
+ const regex = new RegExp(/<umb-rte-block(?:-inline)?(?: class="(?:.[^"]*)")? data-content-key="(?<key>.[^"]*)">(?:<!--Umbraco-Block-->)?<\/umb-rte-block(?:-inline)?>/gi);
48
+ let blockElement;
49
+ while ((blockElement = regex.exec(markup)) !== null) {
50
+ if (blockElement.groups?.key) {
51
+ usedContentKeys.push(blockElement.groups.key);
52
+ }
53
+ }
54
+ if (this.value) {
55
+ this.value = {
56
+ ...this.value,
57
+ markup: markup,
58
+ };
59
+ }
60
+ else {
61
+ this.value = {
62
+ markup: markup,
63
+ blocks: {
64
+ layout: {},
65
+ contentData: [],
66
+ settingsData: [],
67
+ expose: [],
68
+ },
69
+ };
70
+ }
71
+ // lets run this one after we set the value, to make sure we don't reset the value.
72
+ this._filterUnusedBlocks(usedContentKeys);
73
+ this._fireChangeEvent();
74
+ };
75
+ UmbPropertyEditorUITinyMceElement = __decorate([
76
+ customElement('umb-property-editor-ui-tiny-mce')
77
+ ], UmbPropertyEditorUITinyMceElement);
78
+ export { UmbPropertyEditorUITinyMceElement };
79
+ export default UmbPropertyEditorUITinyMceElement;
@@ -0,0 +1,25 @@
1
+ import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
2
+ import type { PropertyValueMap } from '@umbraco-cms/backoffice/external/lit';
3
+ import type { UmbPropertyEditorUiElement, UmbPropertyEditorConfigCollection } from '@umbraco-cms/backoffice/property-editor';
4
+ /**
5
+ * @element umb-property-editor-ui-tiny-mce-toolbar-configuration
6
+ */
7
+ export declare class UmbPropertyEditorUITinyMceToolbarConfigurationElement extends UmbLitElement implements UmbPropertyEditorUiElement {
8
+ #private;
9
+ set value(value: string | string[] | null);
10
+ get value(): string[];
11
+ config?: UmbPropertyEditorConfigCollection;
12
+ private readonly _toolbarConfig;
13
+ protected firstUpdated(_changedProperties: PropertyValueMap<unknown>): Promise<void>;
14
+ private getToolbarPlugins;
15
+ private onChange;
16
+ render(): import("lit-html").TemplateResult<1>;
17
+ static readonly styles: import("lit").CSSResult[];
18
+ }
19
+ export default UmbPropertyEditorUITinyMceToolbarConfigurationElement;
20
+ declare global {
21
+ interface HTMLElementTagNameMap {
22
+ 'umb-property-editor-ui-tiny-mce-toolbar-configuration': UmbPropertyEditorUITinyMceToolbarConfigurationElement;
23
+ }
24
+ }
25
+ //# sourceMappingURL=property-editor-ui-tiny-mce-toolbar-configuration.element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"property-editor-ui-tiny-mce-toolbar-configuration.element.d.ts","sourceRoot":"","sources":["../../../src/property-editors/toolbar/property-editor-ui-tiny-mce-toolbar-configuration.element.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,KAAK,EACX,0BAA0B,EAC1B,iCAAiC,EACjC,MAAM,yCAAyC,CAAC;AAiBjD;;GAEG;AACH,qBACa,qDACZ,SAAQ,aACR,YAAW,0BAA0B;;IAErC,IACI,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAqBxC;IACD,IAAI,KAAK,IAAI,MAAM,EAAE,CAEpB;IAGD,MAAM,CAAC,EAAE,iCAAiC,CAAC;IAG3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuB;cAY7B,YAAY,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,OAAO,CAAC;YAoCrE,iBAAiB;IA+C/B,OAAO,CAAC,QAAQ;IAaP,MAAM;IAqBf,gBAAyB,MAAM,4BAe7B;CACF;AAED,eAAe,qDAAqD,CAAC;AAErE,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,uDAAuD,EAAE,qDAAqD,CAAC;KAC/G;CACD"}
@@ -0,0 +1,201 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
+ if (kind === "m") throw new TypeError("Private method is not writable");
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
+ };
13
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
14
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
15
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
16
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
17
+ };
18
+ var _UmbPropertyEditorUITinyMceToolbarConfigurationElement_instances, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_getTinyMceConfig;
19
+ import { css, customElement, html, property, state, repeat } from '@umbraco-cms/backoffice/external/lit';
20
+ import { firstValueFrom } from '@umbraco-cms/backoffice/external/rxjs';
21
+ import { TinyMceService } from '../../api/index.js';
22
+ import { tryExecute } from '@umbraco-cms/backoffice/resources';
23
+ import { umbHttpClient } from '@umbraco-cms/backoffice/http-client';
24
+ import { tinymce } from '@umbraco-cms/backoffice/external/tinymce';
25
+ import { umbExtensionsRegistry } from '@umbraco-cms/backoffice/extension-registry';
26
+ import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
27
+ import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
28
+ import { UmbChangeEvent } from '@umbraco-cms/backoffice/event';
29
+ import { UMB_PROPERTY_DATASET_CONTEXT } from '@umbraco-cms/backoffice/property';
30
+ import { defaultPremiumPluginsList } from '../../components/input-tiny-mce/input-tiny-mce.defaults.js';
31
+ const tinyIconSet = tinymce.IconManager.get('default');
32
+ /**
33
+ * @element umb-property-editor-ui-tiny-mce-toolbar-configuration
34
+ */
35
+ let UmbPropertyEditorUITinyMceToolbarConfigurationElement = class UmbPropertyEditorUITinyMceToolbarConfigurationElement extends UmbLitElement {
36
+ constructor() {
37
+ super(...arguments);
38
+ _UmbPropertyEditorUITinyMceToolbarConfigurationElement_instances.add(this);
39
+ this._toolbarConfig = [];
40
+ _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues.set(this, []);
41
+ }
42
+ set value(value) {
43
+ if (!value)
44
+ return;
45
+ if (typeof value === 'string') {
46
+ __classPrivateFieldSet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, value.split(',').filter((x) => x.length > 0), "f");
47
+ }
48
+ else if (Array.isArray(value)) {
49
+ __classPrivateFieldSet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, value, "f");
50
+ }
51
+ else {
52
+ __classPrivateFieldSet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, [], "f");
53
+ return;
54
+ }
55
+ // Migrations
56
+ if (__classPrivateFieldGet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, "f").includes('ace')) {
57
+ __classPrivateFieldSet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, __classPrivateFieldGet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, "f").filter((v) => v !== 'ace'), "f");
58
+ __classPrivateFieldGet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, "f").push('sourcecode');
59
+ }
60
+ this._toolbarConfig.forEach((v) => {
61
+ v.selected = __classPrivateFieldGet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, "f").includes(v.alias);
62
+ });
63
+ }
64
+ get value() {
65
+ return __classPrivateFieldGet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues, "f");
66
+ }
67
+ async firstUpdated(_changedProperties) {
68
+ super.firstUpdated(_changedProperties);
69
+ this.config?.getValueByAlias('toolbar')?.forEach((v) => {
70
+ this._toolbarConfig.push({
71
+ ...v,
72
+ selected: this.value.includes(v.alias),
73
+ disabled: false,
74
+ isplugin: false,
75
+ pluginAlias: v.pluginAlias,
76
+ });
77
+ });
78
+ await this.getToolbarPlugins();
79
+ this.requestUpdate('_toolbarConfig');
80
+ this.consumeContext(UMB_PROPERTY_DATASET_CONTEXT, async (context) => {
81
+ this.observe(await context?.propertyValueByAlias('plugins'), (value) => {
82
+ //console.log([value]);
83
+ this._toolbarConfig.forEach((p) => {
84
+ if (p.isplugin && p.pluginAlias) {
85
+ if (value?.includes(p.pluginAlias)) {
86
+ p.disabled = false;
87
+ }
88
+ else {
89
+ p.disabled = true;
90
+ }
91
+ }
92
+ });
93
+ //console.log([this._toolbarConfig]);
94
+ this.requestUpdate('_toolbarConfig');
95
+ });
96
+ });
97
+ }
98
+ async getToolbarPlugins() {
99
+ // Get all the toolbar plugins
100
+ const plugin$ = umbExtensionsRegistry.byType('tinyMcePlugin');
101
+ const plugins = await firstValueFrom(plugin$);
102
+ const appSettingsConfig = await __classPrivateFieldGet(this, _UmbPropertyEditorUITinyMceToolbarConfigurationElement_instances, "m", _UmbPropertyEditorUITinyMceToolbarConfigurationElement_getTinyMceConfig).call(this);
103
+ // Get list of plugins to exclude from the list
104
+ let excludeList = [];
105
+ let apiKey = '';
106
+ if (appSettingsConfig) {
107
+ apiKey = appSettingsConfig.richTextEditor?.cloudApiKey || '';
108
+ if (appSettingsConfig.config?.apikey) {
109
+ apiKey = appSettingsConfig.config?.apikey;
110
+ }
111
+ if (Array.isArray(appSettingsConfig.config?.pluginsToExclude)) {
112
+ excludeList = appSettingsConfig.config?.pluginsToExclude;
113
+ }
114
+ if (!apiKey) {
115
+ // Remove pre-loaded premium plugins if no key present
116
+ excludeList = [...new Set([...excludeList, ...defaultPremiumPluginsList])];
117
+ }
118
+ }
119
+ plugins.forEach((p) => {
120
+ // If the plugin has a toolbar, add it to the config
121
+ if (p.meta?.toolbar) {
122
+ p.meta.toolbar.forEach((t) => {
123
+ if (!excludeList.includes(t.pluginAlias)) {
124
+ this._toolbarConfig.push({
125
+ alias: t.alias,
126
+ label: this.localize.string(t.label),
127
+ icon: t.icon ?? 'icon-autofill',
128
+ selected: this.value.includes(t.alias),
129
+ disabled: false,
130
+ isplugin: t.isplugin,
131
+ pluginAlias: t.pluginAlias,
132
+ });
133
+ }
134
+ });
135
+ }
136
+ });
137
+ }
138
+ onChange(event) {
139
+ const checkbox = event.target;
140
+ const alias = checkbox.value;
141
+ const value = this._toolbarConfig
142
+ .filter((t) => (t.alias !== alias && t.selected) || (t.alias === alias && checkbox.checked))
143
+ .map((v) => v.alias);
144
+ this.value = value;
145
+ this.dispatchEvent(new UmbChangeEvent());
146
+ }
147
+ render() {
148
+ return html `<ul>
149
+ ${repeat(this._toolbarConfig, (v) => v.alias, (v) => html `<li>
150
+ <uui-checkbox
151
+ label=${v.label}
152
+ value=${v.alias}
153
+ ?disabled=${v.disabled}
154
+ ?checked=${v.selected}
155
+ @change=${this.onChange}>
156
+ <uui-icon .svg=${tinyIconSet?.icons[v.icon ?? 'alignjustify']}></uui-icon>
157
+ ${v.label}
158
+ </uui-checkbox>
159
+ </li>`)}
160
+ </ul>`;
161
+ }
162
+ };
163
+ _UmbPropertyEditorUITinyMceToolbarConfigurationElement_selectedValues = new WeakMap();
164
+ _UmbPropertyEditorUITinyMceToolbarConfigurationElement_instances = new WeakSet();
165
+ _UmbPropertyEditorUITinyMceToolbarConfigurationElement_getTinyMceConfig = async function _UmbPropertyEditorUITinyMceToolbarConfigurationElement_getTinyMceConfig() {
166
+ // @ts-ignore
167
+ const { data } = await tryExecute(this, TinyMceService.getConfig({ client: umbHttpClient }));
168
+ if (!data)
169
+ return;
170
+ return data;
171
+ };
172
+ UmbPropertyEditorUITinyMceToolbarConfigurationElement.styles = [
173
+ UmbTextStyles,
174
+ css `
175
+ ul {
176
+ list-style: none;
177
+ padding: 0;
178
+ margin: 0;
179
+
180
+ uui-icon {
181
+ width: 1.5em;
182
+ height: 1.5em;
183
+ margin-right: 5px;
184
+ }
185
+ }
186
+ `,
187
+ ];
188
+ __decorate([
189
+ property({ attribute: false })
190
+ ], UmbPropertyEditorUITinyMceToolbarConfigurationElement.prototype, "value", null);
191
+ __decorate([
192
+ property({ attribute: false })
193
+ ], UmbPropertyEditorUITinyMceToolbarConfigurationElement.prototype, "config", void 0);
194
+ __decorate([
195
+ state()
196
+ ], UmbPropertyEditorUITinyMceToolbarConfigurationElement.prototype, "_toolbarConfig", void 0);
197
+ UmbPropertyEditorUITinyMceToolbarConfigurationElement = __decorate([
198
+ customElement('umb-property-editor-ui-tiny-mce-toolbar-configuration')
199
+ ], UmbPropertyEditorUITinyMceToolbarConfigurationElement);
200
+ export { UmbPropertyEditorUITinyMceToolbarConfigurationElement };
201
+ export default UmbPropertyEditorUITinyMceToolbarConfigurationElement;
@@ -0,0 +1,2 @@
1
+ export declare const manifests: Array<UmbExtensionManifest>;
2
+ //# sourceMappingURL=manifests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifests.d.ts","sourceRoot":"","sources":["../../../src/stylesheets/entity-actions/manifests.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAajD,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { UMB_STYLESHEET_FOLDER_ENTITY_TYPE, UMB_STYLESHEET_ROOT_ENTITY_TYPE } from '@umbraco-cms/backoffice/stylesheet';
2
+ export const manifests = [
3
+ {
4
+ type: 'entityCreateOptionAction',
5
+ alias: 'Umb.EntityCreateOptionAction.Stylesheet.Rte',
6
+ name: 'RTE Stylesheet Entity Create Option Action',
7
+ weight: 90,
8
+ api: () => import('./rte-stylesheet-create-option-action.js'),
9
+ forEntityTypes: [UMB_STYLESHEET_ROOT_ENTITY_TYPE, UMB_STYLESHEET_FOLDER_ENTITY_TYPE],
10
+ meta: {
11
+ icon: 'icon-palette',
12
+ label: '#create_newRteStyleSheetFile',
13
+ },
14
+ },
15
+ ];
@@ -0,0 +1,7 @@
1
+ import { UmbEntityCreateOptionActionBase } from '@umbraco-cms/backoffice/entity-create-option-action';
2
+ import type { MetaEntityCreateOptionAction } from '@umbraco-cms/backoffice/entity-create-option-action';
3
+ export declare class UmbStylesheetCreateOptionAction extends UmbEntityCreateOptionActionBase<MetaEntityCreateOptionAction> {
4
+ getHref(): Promise<string>;
5
+ }
6
+ export { UmbStylesheetCreateOptionAction as api };
7
+ //# sourceMappingURL=rte-stylesheet-create-option-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rte-stylesheet-create-option-action.d.ts","sourceRoot":"","sources":["../../../src/stylesheets/entity-actions/rte-stylesheet-create-option-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AAExG,qBAAa,+BAAgC,SAAQ,+BAA+B,CAAC,4BAA4B,CAAC;IAClG,OAAO;CAMtB;AAED,OAAO,EAAE,+BAA+B,IAAI,GAAG,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { UmbEntityCreateOptionActionBase } from '@umbraco-cms/backoffice/entity-create-option-action';
2
+ export class UmbStylesheetCreateOptionAction extends UmbEntityCreateOptionActionBase {
3
+ async getHref() {
4
+ const href = `section/settings/workspace/stylesheet/create/parent/${this.args.entityType}/${this.args.unique || 'null'}`;
5
+ return `${href}/view/rich-text-editor`;
6
+ }
7
+ }
8
+ export { UmbStylesheetCreateOptionAction as api };
@@ -0,0 +1,2 @@
1
+ export declare const manifests: Array<UmbExtensionManifest>;
2
+ //# sourceMappingURL=manifests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifests.d.ts","sourceRoot":"","sources":["../../src/stylesheets/manifests.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAAyC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { manifests as entityActions } from './entity-actions/manifests.js';
2
+ import { manifests as workspaceViews } from './workspace-views/manifests.js';
3
+ export const manifests = [...entityActions, ...workspaceViews];
@@ -0,0 +1,20 @@
1
+ import type { UmbStylesheetRule } from '../types.js';
2
+ export declare class UmbStylesheetRuleManager {
3
+ #private;
4
+ /**
5
+ * Extracts umbraco rules from a stylesheet content
6
+ * @param {string} stylesheetContent
7
+ * @returns {*}
8
+ * @memberof UmbStylesheetRuleManager
9
+ */
10
+ extractRules(stylesheetContent: string): Array<UmbStylesheetRule>;
11
+ /**
12
+ * Inserts umbraco rules into stylesheet content
13
+ * @param {string} stylesheetContent
14
+ * @param {UmbStylesheetRule[]} rules
15
+ * @returns {*}
16
+ * @memberof UmbStylesheetRuleManager
17
+ */
18
+ insertRules(stylesheetContent: string, rules: Array<any>): string;
19
+ }
20
+ //# sourceMappingURL=stylesheet-rule-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylesheet-rule-manager.d.ts","sourceRoot":"","sources":["../../src/stylesheets/stylesheet-rule-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,qBAAa,wBAAwB;;IAGpC;;;;;OAKG;IACH,YAAY,CAAC,iBAAiB,EAAE,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAajE;;;;;;OAMG;IACH,WAAW,CAAC,iBAAiB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM;CAqBjE"}
@@ -0,0 +1,57 @@
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
+ };
6
+ var _UmbStylesheetRuleManager_umbRuleRegex;
7
+ export class UmbStylesheetRuleManager {
8
+ constructor() {
9
+ _UmbStylesheetRuleManager_umbRuleRegex.set(this, /\/\*\*\s*umb_name:\s*(?<name>[^*\r\n]*?)\s*\*\/\s*(?<selector>[^,{]*?)\s*{\s*(?<styles>.*?)\s*}/gis);
10
+ }
11
+ /**
12
+ * Extracts umbraco rules from a stylesheet content
13
+ * @param {string} stylesheetContent
14
+ * @returns {*}
15
+ * @memberof UmbStylesheetRuleManager
16
+ */
17
+ extractRules(stylesheetContent) {
18
+ const regex = __classPrivateFieldGet(this, _UmbStylesheetRuleManager_umbRuleRegex, "f");
19
+ if (!stylesheetContent)
20
+ throw Error('No Stylesheet content');
21
+ return [...stylesheetContent.matchAll(regex)].map((match) => {
22
+ const rule = {
23
+ name: match.groups?.name || '',
24
+ selector: match.groups?.selector || '',
25
+ styles: match.groups?.styles || '',
26
+ };
27
+ return rule;
28
+ });
29
+ }
30
+ /**
31
+ * Inserts umbraco rules into stylesheet content
32
+ * @param {string} stylesheetContent
33
+ * @param {UmbStylesheetRule[]} rules
34
+ * @returns {*}
35
+ * @memberof UmbStylesheetRuleManager
36
+ */
37
+ insertRules(stylesheetContent, rules) {
38
+ const regex = __classPrivateFieldGet(this, _UmbStylesheetRuleManager_umbRuleRegex, "f");
39
+ if (!stylesheetContent && !rules)
40
+ return '';
41
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
42
+ //@ts-ignore
43
+ const cleanedContent = stylesheetContent?.replaceAll(regex, '');
44
+ const newContent = `
45
+ ${cleanedContent.replace(/[\r\n]+$/, '')}
46
+ ${rules
47
+ ?.map((rule) => `
48
+ /**umb_name:${rule.name}*/
49
+ ${rule.selector} {
50
+ ${rule.styles ?? ''}
51
+ }
52
+ `)
53
+ .join('')}`;
54
+ return newContent.trim();
55
+ }
56
+ }
57
+ _UmbStylesheetRuleManager_umbRuleRegex = new WeakMap();
@@ -0,0 +1,2 @@
1
+ export declare const manifests: Array<UmbExtensionManifest>;
2
+ //# sourceMappingURL=manifests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifests.d.ts","sourceRoot":"","sources":["../../../src/stylesheets/workspace-views/manifests.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAmBjD,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { UMB_STYLESHEET_WORKSPACE_ALIAS } from '@umbraco-cms/backoffice/stylesheet';
2
+ import { UMB_WORKSPACE_CONDITION_ALIAS } from '@umbraco-cms/backoffice/workspace';
3
+ export const manifests = [
4
+ {
5
+ type: 'workspaceView',
6
+ alias: 'Umb.WorkspaceView.Stylesheet.RichTextEditor',
7
+ name: 'Stylesheet Workspace Rich Text Editor View',
8
+ element: () => import('./stylesheet-rich-text-rule-workspace-view.element.js'),
9
+ weight: 800,
10
+ meta: {
11
+ label: '#stylesheet_tabRules',
12
+ pathname: 'rich-text-editor',
13
+ icon: 'icon-font',
14
+ },
15
+ conditions: [
16
+ {
17
+ alias: UMB_WORKSPACE_CONDITION_ALIAS,
18
+ match: UMB_STYLESHEET_WORKSPACE_ALIAS,
19
+ },
20
+ ],
21
+ },
22
+ ];
@@ -0,0 +1,18 @@
1
+ import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
2
+ import type { UmbStylesheetRule } from '../../types.js';
3
+ import '../../components/stylesheet-rule-input/stylesheet-rule-input.element.js';
4
+ import '../../components/stylesheet-rule-ref/stylesheet-rule-ref.element.js';
5
+ export declare class UmbStylesheetRichTextRuleWorkspaceViewElement extends UmbLitElement {
6
+ #private;
7
+ _rules: Array<UmbStylesheetRule>;
8
+ constructor();
9
+ render(): import("lit-html").TemplateResult<1>;
10
+ static styles: import("lit").CSSResult[];
11
+ }
12
+ export default UmbStylesheetRichTextRuleWorkspaceViewElement;
13
+ declare global {
14
+ interface HTMLElementTagNameMap {
15
+ 'umb-stylesheet-rich-text-rule-workspace-view': UmbStylesheetRichTextRuleWorkspaceViewElement;
16
+ }
17
+ }
18
+ //# sourceMappingURL=stylesheet-rich-text-rule-workspace-view.element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylesheet-rich-text-rule-workspace-view.element.d.ts","sourceRoot":"","sources":["../../../src/stylesheets/workspace-views/stylesheet-rich-text-rule-workspace-view.element.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAIpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD,OAAO,yEAAyE,CAAC;AACjF,OAAO,qEAAqE,CAAC;AAE7E,qBACa,6CAA8C,SAAQ,aAAa;;IAE/E,MAAM,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAM;;IA4C7B,MAAM;IAaf,OAAgB,MAAM,4BAYpB;CACF;AAED,eAAe,6CAA6C,CAAC;AAE7D,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,8CAA8C,EAAE,6CAA6C,CAAC;KAC9F;CACD"}
@@ -0,0 +1,100 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
+ if (kind === "m") throw new TypeError("Private method is not writable");
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
+ };
13
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
14
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
15
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
16
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
17
+ };
18
+ var _UmbStylesheetRichTextRuleWorkspaceViewElement_instances, _UmbStylesheetRichTextRuleWorkspaceViewElement_context, _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetRuleManager, _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetContent, _UmbStylesheetRichTextRuleWorkspaceViewElement_observeContent, _UmbStylesheetRichTextRuleWorkspaceViewElement_extractRules, _UmbStylesheetRichTextRuleWorkspaceViewElement_onRuleChange;
19
+ import { UmbStylesheetRuleManager } from '../stylesheet-rule-manager.js';
20
+ import { css, customElement, html, state } from '@umbraco-cms/backoffice/external/lit';
21
+ import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
22
+ import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
23
+ import { UMB_STYLESHEET_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/stylesheet';
24
+ import '../../components/stylesheet-rule-input/stylesheet-rule-input.element.js';
25
+ import '../../components/stylesheet-rule-ref/stylesheet-rule-ref.element.js';
26
+ let UmbStylesheetRichTextRuleWorkspaceViewElement = class UmbStylesheetRichTextRuleWorkspaceViewElement extends UmbLitElement {
27
+ constructor() {
28
+ super();
29
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_instances.add(this);
30
+ this._rules = [];
31
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_context.set(this, void 0);
32
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetRuleManager.set(this, new UmbStylesheetRuleManager());
33
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetContent.set(this, '');
34
+ this.consumeContext(UMB_STYLESHEET_WORKSPACE_CONTEXT, (context) => {
35
+ __classPrivateFieldSet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_context, context, "f");
36
+ __classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_instances, "m", _UmbStylesheetRichTextRuleWorkspaceViewElement_observeContent).call(this);
37
+ });
38
+ }
39
+ render() {
40
+ return html `
41
+ <uui-box headline="Rich text editor styles">
42
+ <umb-property-layout
43
+ description="Define the styles that should be available in the rich text editor for this stylesheet.">
44
+ <div slot="editor">
45
+ <umb-stylesheet-rule-input .rules=${this._rules} @change=${__classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_instances, "m", _UmbStylesheetRichTextRuleWorkspaceViewElement_onRuleChange)}></umb-stylesheet-rule-input>
46
+ </div>
47
+ </umb-property-layout>
48
+ </uui-box>
49
+ `;
50
+ }
51
+ };
52
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_context = new WeakMap();
53
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetRuleManager = new WeakMap();
54
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetContent = new WeakMap();
55
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_instances = new WeakSet();
56
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_observeContent = function _UmbStylesheetRichTextRuleWorkspaceViewElement_observeContent() {
57
+ if (!__classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_context, "f")?.content)
58
+ return;
59
+ this.observe(__classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_context, "f").content, (content) => {
60
+ __classPrivateFieldSet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetContent, content || '', "f");
61
+ __classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_instances, "m", _UmbStylesheetRichTextRuleWorkspaceViewElement_extractRules).call(this, content);
62
+ }, 'umbStylesheetContentObserver');
63
+ };
64
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_extractRules = function _UmbStylesheetRichTextRuleWorkspaceViewElement_extractRules(content) {
65
+ if (content) {
66
+ const rules = __classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetRuleManager, "f").extractRules(content);
67
+ this._rules = [...rules];
68
+ }
69
+ else {
70
+ this._rules = [];
71
+ }
72
+ };
73
+ _UmbStylesheetRichTextRuleWorkspaceViewElement_onRuleChange = function _UmbStylesheetRichTextRuleWorkspaceViewElement_onRuleChange(event) {
74
+ event.stopPropagation();
75
+ const target = event.target;
76
+ const rules = target.rules;
77
+ const newContent = __classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetRuleManager, "f").insertRules(__classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_stylesheetContent, "f"), rules);
78
+ __classPrivateFieldGet(this, _UmbStylesheetRichTextRuleWorkspaceViewElement_context, "f")?.setContent(newContent);
79
+ };
80
+ UmbStylesheetRichTextRuleWorkspaceViewElement.styles = [
81
+ UmbTextStyles,
82
+ css `
83
+ :host {
84
+ display: block;
85
+ width: 100%;
86
+ }
87
+
88
+ uui-box {
89
+ margin: var(--uui-size-layout-1);
90
+ }
91
+ `,
92
+ ];
93
+ __decorate([
94
+ state()
95
+ ], UmbStylesheetRichTextRuleWorkspaceViewElement.prototype, "_rules", void 0);
96
+ UmbStylesheetRichTextRuleWorkspaceViewElement = __decorate([
97
+ customElement('umb-stylesheet-rich-text-rule-workspace-view')
98
+ ], UmbStylesheetRichTextRuleWorkspaceViewElement);
99
+ export { UmbStylesheetRichTextRuleWorkspaceViewElement };
100
+ export default UmbStylesheetRichTextRuleWorkspaceViewElement;
@@ -0,0 +1,2 @@
1
+ export * from './external/tinymce/index.js';
2
+ //# sourceMappingURL=tinymce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tinymce.d.ts","sourceRoot":"","sources":["../src/tinymce.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './external/tinymce/index.js';
@@ -0,0 +1,6 @@
1
+ export interface UmbStylesheetRule {
2
+ name: string;
3
+ selector: string;
4
+ styles: string;
5
+ }
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1 @@
1
+ export {};