@useinsider/guido 1.0.2-beta.4e8474b → 1.0.2-beta.585f2fc

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 (132) hide show
  1. package/README.md +1 -1
  2. package/dist/components/Guido.vue.js +8 -8
  3. package/dist/components/Guido.vue2.js +36 -35
  4. package/dist/composables/useHtmlValidator.d.ts +2 -1
  5. package/dist/composables/useHtmlValidator.js +122 -94
  6. package/dist/composables/useSave.js +6 -6
  7. package/dist/composables/useStripo.js +32 -26
  8. package/dist/config/migrator/checkboxMigrator.d.ts +1 -0
  9. package/dist/config/migrator/checkboxMigrator.js +83 -0
  10. package/dist/config/migrator/index.d.ts +1 -0
  11. package/dist/config/migrator/index.js +9 -0
  12. package/dist/config/migrator/radioButtonMigrator.d.ts +1 -0
  13. package/dist/config/migrator/radioButtonMigrator.js +86 -0
  14. package/dist/extensions/Blocks/Checkbox/block.d.ts +10 -0
  15. package/dist/extensions/Blocks/Checkbox/block.js +39 -0
  16. package/dist/extensions/Blocks/Checkbox/control.d.ts +22 -0
  17. package/dist/extensions/Blocks/Checkbox/control.js +104 -0
  18. package/dist/extensions/Blocks/Checkbox/extension.d.ts +2 -0
  19. package/dist/extensions/Blocks/Checkbox/extension.js +20 -0
  20. package/dist/extensions/Blocks/Checkbox/settingsPanel.d.ts +4 -0
  21. package/dist/extensions/Blocks/Checkbox/settingsPanel.js +38 -0
  22. package/dist/extensions/Blocks/Checkbox/template.d.ts +6 -0
  23. package/dist/extensions/Blocks/Checkbox/template.js +75 -0
  24. package/dist/extensions/Blocks/RadioButton/block.d.ts +10 -0
  25. package/dist/extensions/Blocks/RadioButton/block.js +39 -0
  26. package/dist/extensions/Blocks/RadioButton/control.d.ts +17 -0
  27. package/dist/extensions/Blocks/RadioButton/control.js +104 -0
  28. package/dist/extensions/Blocks/RadioButton/extension.d.ts +2 -0
  29. package/dist/extensions/Blocks/RadioButton/extension.js +20 -0
  30. package/dist/extensions/Blocks/RadioButton/settingsPanel.d.ts +4 -0
  31. package/dist/extensions/Blocks/RadioButton/settingsPanel.js +39 -0
  32. package/dist/extensions/Blocks/RadioButton/template.d.ts +6 -0
  33. package/dist/extensions/Blocks/RadioButton/template.js +160 -0
  34. package/dist/extensions/Blocks/_Boilerplate/block.d.ts +10 -0
  35. package/dist/extensions/Blocks/_Boilerplate/control.d.ts +17 -0
  36. package/dist/extensions/Blocks/_Boilerplate/extension.d.ts +2 -0
  37. package/dist/extensions/Blocks/_Boilerplate/settingsPanel.d.ts +4 -0
  38. package/dist/extensions/Blocks/_Boilerplate/template.d.ts +6 -0
  39. package/dist/extensions/DynamicContent/dynamic-content.js +41 -27
  40. package/dist/extensions/DynamicContent/extension.js +18 -6
  41. package/dist/guido.css +1 -1
  42. package/dist/mock/api/unsubscribe.d.ts +2 -0
  43. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/Extension.js +72 -48
  44. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ExtensionBuilder.js +74 -49
  45. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/blocks/Block.js +120 -38
  46. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js +5 -11
  47. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js +5 -11
  48. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js +12 -0
  49. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js +5 -11
  50. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js +116 -101
  51. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js +5 -11
  52. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js +5 -11
  53. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js +5 -11
  54. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js +12 -0
  55. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js +5 -11
  56. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js +5 -11
  57. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js +5 -11
  58. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementsAttributes.js +22 -43
  59. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/Control.js +21 -17
  60. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelRegistry.js +8 -15
  61. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelTab.js +30 -29
  62. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/modifications/ModificationDescription.js +19 -23
  63. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElement.js +37 -19
  64. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElementTagRegistry.js +2 -15
  65. package/package.json +2 -2
  66. package/dist/_virtual/AddCustomFont.js +0 -4
  67. package/dist/_virtual/AiAssistantValueType.js +0 -4
  68. package/dist/_virtual/BackgroundColorBuiltInControl.js +0 -4
  69. package/dist/_virtual/BackgroundImageBuiltInControl.js +0 -4
  70. package/dist/_virtual/Block.js +0 -4
  71. package/dist/_virtual/BlockAttributes.js +0 -4
  72. package/dist/_virtual/BlockCompositionType.js +0 -4
  73. package/dist/_virtual/BlockPaddingsBuiltInControl.js +0 -4
  74. package/dist/_virtual/BlockRenderer.js +0 -4
  75. package/dist/_virtual/BlockType.js +0 -4
  76. package/dist/_virtual/BlocksPanel.js +0 -4
  77. package/dist/_virtual/BuiltInControl.js +0 -4
  78. package/dist/_virtual/BuiltInControlTypes.js +0 -4
  79. package/dist/_virtual/ButtonBorderBuiltInControl.js +0 -4
  80. package/dist/_virtual/ButtonColorBuiltInControl.js +0 -4
  81. package/dist/_virtual/ButtonFontColorBuiltInControl.js +0 -4
  82. package/dist/_virtual/ButtonInternalIndentsBuiltInControl.js +0 -4
  83. package/dist/_virtual/ButtonTextBuiltInControl.js +0 -4
  84. package/dist/_virtual/ContextAction.js +0 -4
  85. package/dist/_virtual/ContextActionType.js +0 -4
  86. package/dist/_virtual/Control.js +0 -4
  87. package/dist/_virtual/EditorStatePropertyType.js +0 -4
  88. package/dist/_virtual/Extension.js +0 -4
  89. package/dist/_virtual/ExtensionBuilder.js +0 -4
  90. package/dist/_virtual/FontFamilyBuiltInControl.js +0 -4
  91. package/dist/_virtual/LinkColorBuiltInControl.js +0 -4
  92. package/dist/_virtual/ModificationDescription.js +0 -4
  93. package/dist/_virtual/PanelPosition.js +0 -4
  94. package/dist/_virtual/PreviewDeviceMode.js +0 -4
  95. package/dist/_virtual/SettingsPanelRegistry.js +0 -4
  96. package/dist/_virtual/SettingsPanelTab.js +0 -4
  97. package/dist/_virtual/SettingsTab.js +0 -4
  98. package/dist/_virtual/StructureBorderBuiltInControl.js +0 -4
  99. package/dist/_virtual/StructurePaddingsBuiltInControl.js +0 -4
  100. package/dist/_virtual/TextColorBuiltInControl.js +0 -4
  101. package/dist/_virtual/TextLineSpacingBuiltInControl.js +0 -4
  102. package/dist/_virtual/TextSizeBuiltInControl.js +0 -4
  103. package/dist/_virtual/TextStyleBuiltInControl.js +0 -4
  104. package/dist/_virtual/UIElement.js +0 -4
  105. package/dist/_virtual/UIElementTagRegistry.js +0 -4
  106. package/dist/_virtual/UIElementType.js +0 -4
  107. package/dist/_virtual/UIElementsAttributes.js +0 -4
  108. package/dist/_virtual/index.js +0 -5
  109. package/dist/_virtual/index2.js +0 -4
  110. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/blocks/BlockRenderer.js +0 -18
  111. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/blocks/BlocksPanel.js +0 -32
  112. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/blocks/ContextAction.js +0 -18
  113. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/AddCustomFont.js +0 -8
  114. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockAttributes.js +0 -34
  115. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/BackgroundColorBuiltInControl.js +0 -43
  116. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/BackgroundImageBuiltInControl.js +0 -46
  117. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/BlockPaddingsBuiltInControl.js +0 -44
  118. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/BuiltInControl.js +0 -22
  119. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/ButtonBorderBuiltInControl.js +0 -46
  120. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/ButtonColorBuiltInControl.js +0 -46
  121. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/ButtonFontColorBuiltInControl.js +0 -45
  122. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/ButtonInternalIndentsBuiltInControl.js +0 -45
  123. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/ButtonTextBuiltInControl.js +0 -45
  124. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/FontFamilyBuiltInControl.js +0 -43
  125. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/LinkColorBuiltInControl.js +0 -45
  126. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/StructureBorderBuiltInControl.js +0 -46
  127. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/StructurePaddingsBuiltInControl.js +0 -44
  128. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/TextColorBuiltInControl.js +0 -43
  129. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/TextLineSpacingBuiltInControl.js +0 -43
  130. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/TextSizeBuiltInControl.js +0 -45
  131. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/TextStyleBuiltInControl.js +0 -43
  132. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/index.js +0 -266
@@ -0,0 +1,104 @@
1
+ var E = Object.defineProperty;
2
+ var p = (o, i, t) => i in o ? E(o, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[i] = t;
3
+ var a = (o, i, t) => p(o, typeof i != "symbol" ? i + "" : i, t);
4
+ import { useHttp as m } from "../../../composables/useHttp.js";
5
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js";
6
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js";
7
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js";
8
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js";
9
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js";
10
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js";
11
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js";
12
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js";
13
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js";
14
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js";
15
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js";
16
+ import { UEAttr as e } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementsAttributes.js";
17
+ import { UIElementType as r } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js";
18
+ import { Control as c } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/controls/Control.js";
19
+ import { ModificationDescription as d } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/modifications/ModificationDescription.js";
20
+ const l = "ui-elements-radio-button", n = "select", { get: L } = m();
21
+ class R extends c {
22
+ constructor() {
23
+ super(...arguments);
24
+ a(this, "currentNode");
25
+ a(this, "selectedUnsubGroup");
26
+ a(this, "unsubList", []);
27
+ }
28
+ getId() {
29
+ return l;
30
+ }
31
+ _setFormValues() {
32
+ this.api.updateValues({
33
+ [n]: ""
34
+ });
35
+ }
36
+ _getLabel(t, s = `${Math.random()}`) {
37
+ return `
38
+ <${r.LABEL}
39
+ ${e.LABEL.text}="${t}"
40
+ ${e.LABEL.name}="${s}">
41
+ </${r.LABEL}>
42
+ `;
43
+ }
44
+ _getSelectItem(t, s) {
45
+ return `
46
+ <${r.SELECT_ITEM}
47
+ ${e.SELECT_ITEM.text}="${t}"
48
+ ${e.SELECT_ITEM.value}="${s}">
49
+ </${r.SELECT_ITEM}>`;
50
+ }
51
+ _getSelect() {
52
+ return this.unsubList.map((t) => this._getSelectItem(t.name, t.sendGridId)).join("");
53
+ }
54
+ getTemplate() {
55
+ return `
56
+ <div class="checkbox-controls-container">
57
+ <div class="checkbox-select-container container two-columns stretch">
58
+ <${r.LABEL}
59
+ ${e.LABEL.text}="${this.api.translate("Unsubscribe Group")}"
60
+ ${e.LABEL.name}="${Math.random()}">
61
+ </${r.LABEL}>
62
+
63
+ <${r.SELECTPICKER}
64
+ ${e.SELECTPICKER.name}="${n}"
65
+ ${e.SELECTPICKER.placeholder}="${this.api.translate("Select Unsubscribe Group")}">
66
+ ${this._getSelect()}
67
+ </${r.SELECTPICKER}>
68
+ </div>
69
+ </div>
70
+ `;
71
+ }
72
+ _onSelectChange(t) {
73
+ this.currentNode && this.api.getDocumentModifier().modifyHtml(this.currentNode).setAttribute("id", t.toString()).apply(new d(`Updated text to ${t}`));
74
+ }
75
+ _listenToFormUpdates() {
76
+ this.api.onValueChanged(n, (t) => this._onSelectChange(t));
77
+ }
78
+ onTemplateNodeUpdated(t) {
79
+ if (this.currentNode = t, "getAttribute" in t) {
80
+ const s = Number(t.getAttribute("id"));
81
+ s && (this.selectedUnsubGroup = s, this.api.updateValues({
82
+ [n]: this.selectedUnsubGroup
83
+ }));
84
+ }
85
+ }
86
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
87
+ async onRender() {
88
+ const t = await L(
89
+ "/unsubscribe-groups/unsubscribe-list"
90
+ ), s = t.data.map((u) => ({
91
+ [e.SELECT_ITEM.text]: u.name,
92
+ [e.SELECT_ITEM.value]: u.sendGridId
93
+ }));
94
+ this.unsubList = t.data, this.api.setUIEAttribute(
95
+ n,
96
+ e.SELECTPICKER.items,
97
+ s
98
+ ), this._setFormValues(), this._listenToFormUpdates();
99
+ }
100
+ }
101
+ export {
102
+ l as CONTROL_BLOCK_ID,
103
+ R as RadioButtonControl
104
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import("@stripoinc/ui-editor-extensions").Extension;
2
+ export default _default;
@@ -0,0 +1,20 @@
1
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js";
2
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js";
3
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js";
4
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js";
5
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js";
6
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js";
7
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js";
8
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js";
9
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js";
10
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js";
11
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js";
12
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js";
13
+ import { ExtensionBuilder as o } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/ExtensionBuilder.js";
14
+ import { RadioButtonCustomBlock as t } from "./block.js";
15
+ import { RadioButtonControl as i } from "./control.js";
16
+ import { RadioButtonBlockSettingsPanel as r } from "./settingsPanel.js";
17
+ const C = new o().addBlock(t).withSettingsPanelRegistry(r).addControl(i).build();
18
+ export {
19
+ C as default
20
+ };
@@ -0,0 +1,4 @@
1
+ import { SettingsPanelRegistry, SettingsPanelTab } from '@stripoinc/ui-editor-extensions';
2
+ export declare class RadioButtonBlockSettingsPanel extends SettingsPanelRegistry {
3
+ registerBlockControls(blockControlsMap: Record<string, SettingsPanelTab[]>): void;
4
+ }
@@ -0,0 +1,39 @@
1
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js";
2
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js";
3
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js";
4
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js";
5
+ import { ContainerControls as t, TextControls as m } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js";
6
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js";
7
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js";
8
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js";
9
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js";
10
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js";
11
+ import { SettingsTab as o } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js";
12
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js";
13
+ import { SettingsPanelRegistry as e } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelRegistry.js";
14
+ import { SettingsPanelTab as r } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelTab.js";
15
+ import { BLOCK_ID as p } from "./block.js";
16
+ import { CONTROL_BLOCK_ID as n } from "./control.js";
17
+ class K extends e {
18
+ registerBlockControls(i) {
19
+ i[p] = [
20
+ new r(
21
+ o.SETTINGS,
22
+ [
23
+ n,
24
+ t.EXTERNAL_INDENTS,
25
+ t.DISPLAY_CONDITIONS
26
+ ]
27
+ ),
28
+ new r(
29
+ o.STYLES,
30
+ [
31
+ m.TEXT_BLOCK_BACKGROUND_COLOR
32
+ ]
33
+ )
34
+ ];
35
+ }
36
+ }
37
+ export {
38
+ K as RadioButtonBlockSettingsPanel
39
+ };
@@ -0,0 +1,6 @@
1
+ declare const migrationTemplate = "\n <td \n align=\"left\" \n esd-extension-block-id=\"radio-button-block\" \n esd-handler-name=\"esd-extension-RadioButtonBlock\"\n class=\"radio-button-v2 esd-block-ra esd-radio-button-block esd-extension-block es-p10t es-p10b es-p30r es-p30l\"\n >\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\">\n <tbody>\n <tr>\n <td align=\"left\" width=\"70%\" style=\"vertical-align: top;\">\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\">\n <tbody>\n <tr>\n {-{-TITLE-}-}\n </tr>\n <tr>\n {-{-DESCRIPTION-}-}\n </tr>\n </tbody>\n </table>\n </td>\n <td align=\"right\" width=\"30%\" style=\"vertical-align: middle;\">\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\">\n <tbody>\n <tr>\n <td width=\"50%\">\n <table width=\"100%\">\n <tr>\n <td width=\"24\">\n <input\n type=\"radio\"\n id=\"radioYes\"\n name=\"unsubscribe\"\n data-cke-editable=\"1\"\n style=\"margin: 0px; vertical-align: middle;>\n </td>\n {-{-YES-}-}\n </tr>\n </table>\n </td>\n <td width=\"50%\">\n <table width=\"100%\">\n <tr>\n <td width=\"24\">\n <input\n type=\"radio\"\n id=\"radioNo\"\n name=\"unsubscribe\"\n data-cke-editable=\"1\"\n style=\"margin: 0px; vertical-align: middle;\">\n </td>\n {-{-NO-}-}\n </tr>\n </table>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n";
2
+ /**
3
+ * @returns The template for the default checkbox block
4
+ */
5
+ export declare function getDefaultTemplate(): string;
6
+ export default migrationTemplate;
@@ -0,0 +1,160 @@
1
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js";
2
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js";
3
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js";
4
+ import { BlockType as t } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js";
5
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js";
6
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js";
7
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js";
8
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js";
9
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js";
10
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js";
11
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js";
12
+ import "../../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js";
13
+ const e = {
14
+ TITLE: "This is a title text",
15
+ DESCRIPTION: "This is a description text",
16
+ YES: "Yes",
17
+ NO: "No"
18
+ }, i = `
19
+ <td align="left" class="radio-button-v2 esd-block-radio es-p10t es-p10b es-p30r es-p30l">
20
+ <table cellpadding="0" cellspacing="0" role="presentation" width="100%">
21
+ <tbody>
22
+ <tr>
23
+ <td align="left" width="70%" style="vertical-align: top;">
24
+ <table cellpadding="0" cellspacing="0" role="presentation" width="100%">
25
+ <tbody>
26
+ <${t.BLOCK_TEXT}>
27
+ {-{-TITLE-}-}
28
+ </${t.BLOCK_TEXT}>
29
+ <${t.BLOCK_TEXT}>
30
+ {-{-DESCRIPTION-}-}
31
+ </${t.BLOCK_TEXT}>
32
+ </tbody>
33
+ </table>
34
+ </td>
35
+ <td align="right" width="30%" style="vertical-align: middle;">
36
+ <table cellpadding="0" cellspacing="0" role="presentation" width="100%">
37
+ <tbody>
38
+ <tr>
39
+ <td width="50%">
40
+ <table width="100%">
41
+ <tr>
42
+ <td width="24">
43
+ <input
44
+ type="radio"
45
+ id="radioYes"
46
+ name="unsubscribe"
47
+ data-cke-editable="1"
48
+ style="margin: 0px; vertical-align: middle;">
49
+ </td>
50
+ <td style="padding-right: 15px;">
51
+ <table width="100%">
52
+ <${t.BLOCK_TEXT}>
53
+ {-{-YES-}-}
54
+ </${t.BLOCK_TEXT}>
55
+ </table>
56
+ </td>
57
+ </tr>
58
+ </table>
59
+ </td>
60
+ <td width="50%">
61
+ <table width="100%">
62
+ <tr>
63
+ <td width="24">
64
+ <input
65
+ type="radio"
66
+ id="radioNo"
67
+ name="unsubscribe"
68
+ data-cke-editable="1"
69
+ style="margin: 0px; vertical-align: middle;">
70
+ </td>
71
+ <td style="padding-right: 15px;">
72
+ <table width="100%">
73
+ <${t.BLOCK_TEXT}>
74
+ {-{-NO-}-}
75
+ </${t.BLOCK_TEXT}>
76
+ </table>
77
+ </td>
78
+ </tr>
79
+ </table>
80
+ </td>
81
+ </tr>
82
+ </tbody>
83
+ </table>
84
+ </td>
85
+ </tr>
86
+ </tbody>
87
+ </table>
88
+ </td>
89
+ `, h = `
90
+ <td
91
+ align="left"
92
+ esd-extension-block-id="radio-button-block"
93
+ esd-handler-name="esd-extension-RadioButtonBlock"
94
+ class="radio-button-v2 esd-block-ra esd-radio-button-block esd-extension-block es-p10t es-p10b es-p30r es-p30l"
95
+ >
96
+ <table cellpadding="0" cellspacing="0" role="presentation" width="100%">
97
+ <tbody>
98
+ <tr>
99
+ <td align="left" width="70%" style="vertical-align: top;">
100
+ <table cellpadding="0" cellspacing="0" role="presentation" width="100%">
101
+ <tbody>
102
+ <tr>
103
+ {-{-TITLE-}-}
104
+ </tr>
105
+ <tr>
106
+ {-{-DESCRIPTION-}-}
107
+ </tr>
108
+ </tbody>
109
+ </table>
110
+ </td>
111
+ <td align="right" width="30%" style="vertical-align: middle;">
112
+ <table cellpadding="0" cellspacing="0" role="presentation" width="100%">
113
+ <tbody>
114
+ <tr>
115
+ <td width="50%">
116
+ <table width="100%">
117
+ <tr>
118
+ <td width="24">
119
+ <input
120
+ type="radio"
121
+ id="radioYes"
122
+ name="unsubscribe"
123
+ data-cke-editable="1"
124
+ style="margin: 0px; vertical-align: middle;>
125
+ </td>
126
+ {-{-YES-}-}
127
+ </tr>
128
+ </table>
129
+ </td>
130
+ <td width="50%">
131
+ <table width="100%">
132
+ <tr>
133
+ <td width="24">
134
+ <input
135
+ type="radio"
136
+ id="radioNo"
137
+ name="unsubscribe"
138
+ data-cke-editable="1"
139
+ style="margin: 0px; vertical-align: middle;">
140
+ </td>
141
+ {-{-NO-}-}
142
+ </tr>
143
+ </table>
144
+ </td>
145
+ </tr>
146
+ </tbody>
147
+ </table>
148
+ </td>
149
+ </tr>
150
+ </tbody>
151
+ </table>
152
+ </td>
153
+ `;
154
+ function m() {
155
+ return i.replace("{-{-TITLE-}-}", `<p path="1">${e.TITLE}</p>`).replace("{-{-DESCRIPTION-}-}", `<p path="1">${e.DESCRIPTION}</p>`).replace("{-{-YES-}-}", `<p path="1">${e.YES}</p>`).replace("{-{-NO-}-}", `<p path="1">${e.NO}</p>`);
156
+ }
157
+ export {
158
+ h as default,
159
+ m as getDefaultTemplate
160
+ };
@@ -0,0 +1,10 @@
1
+ import { Block, BlockCompositionType } from '@stripoinc/ui-editor-extensions';
2
+ export declare const BLOCK_ID = "{{your-block}}";
3
+ export declare class CustomBlock extends Block {
4
+ getId(): string;
5
+ getIcon(): string;
6
+ getBlockCompositionType(): BlockCompositionType;
7
+ getName(): string;
8
+ getDescription(): string;
9
+ getTemplate(): string;
10
+ }
@@ -0,0 +1,17 @@
1
+ import { Control, ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
2
+ export declare const CONTROL_BLOCK_ID = "ui-elements-{{your-control-block}}";
3
+ export declare class CustomControl extends Control {
4
+ private currentNode?;
5
+ private selectedUnsubGroup?;
6
+ private unsubList;
7
+ getId(): string;
8
+ _setFormValues(): void;
9
+ _getLabel(text: string, name?: string): string;
10
+ _getSelectItem(text: string, value: string): string;
11
+ _getSelect(): string;
12
+ getTemplate(): string;
13
+ _onSelectChange(value: string | number): void;
14
+ _listenToFormUpdates(): void;
15
+ onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
16
+ onRender(): Promise<void>;
17
+ }
@@ -0,0 +1,2 @@
1
+ declare const _default: import("@stripoinc/ui-editor-extensions").Extension;
2
+ export default _default;
@@ -0,0 +1,4 @@
1
+ import { SettingsPanelRegistry, SettingsPanelTab } from '@stripoinc/ui-editor-extensions';
2
+ export declare class SettingsPanel extends SettingsPanelRegistry {
3
+ registerBlockControls(blockControlsMap: Record<string, SettingsPanelTab[]>): void;
4
+ }
@@ -0,0 +1,6 @@
1
+ declare const migrationTemplate = "\n <td \n align=\"left\" \n esd-extension-block-id=\"checkbox-block\" \n class=\"checkbox-block-v2 esd-block-checkbox esd-checkbox-block esd-extension-block es-p20\"\n >\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\">\n <tbody>\n <tr>\n <td align=\"left\" width=\"39\" style=\"vertical-align: top\">\n <input type=\"checkbox\">\n </td>\n <td align=\"left\" width=\"816\" style=\"vertical-align: top\">\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\">\n <tbody>\n <tr>{-{-TITLE-}-}</tr>\n <tr>{-{-DESCRIPTION-}-}</tr>\n </tbody>\n </table>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n";
2
+ /**
3
+ * @returns The template for the default checkbox block
4
+ */
5
+ export declare function getDefaultTemplate(): string;
6
+ export default migrationTemplate;
@@ -1,16 +1,30 @@
1
- var o = Object.defineProperty;
2
- var m = (i, t, e) => t in i ? o(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
3
- var r = (i, t, e) => m(i, typeof t != "symbol" ? t + "" : t, e);
4
- import { dynamicContentToMergeTags as l } from "../../utils/genericUtil.js";
5
- import { d as n } from "../../_virtual/index.js";
6
- import { ExternalMergeTagsLibrary as g } from "./dynamic-content-modal.js";
7
- const a = "external-dynamic-content-ui-element", c = "button-add-dynamic-content";
8
- class p extends n.UIElementTagRegistry {
9
- registerUiElements(t) {
10
- t[n.UIElementType.MERGETAGS] = a;
1
+ var a = Object.defineProperty;
2
+ var m = (n, e, t) => e in n ? a(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
3
+ var r = (n, e, t) => m(n, typeof e != "symbol" ? e + "" : e, t);
4
+ import { dynamicContentToMergeTags as g } from "../../utils/genericUtil.js";
5
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js";
6
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js";
7
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js";
8
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js";
9
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js";
10
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js";
11
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js";
12
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js";
13
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js";
14
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js";
15
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js";
16
+ import { UEAttr as c } from "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementsAttributes.js";
17
+ import { UIElementType as i } from "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js";
18
+ import { UIElement as l } from "../../node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElement.js";
19
+ import { UIElementTagRegistry as d } from "../../node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElementTagRegistry.js";
20
+ import { ExternalMergeTagsLibrary as p } from "./dynamic-content-modal.js";
21
+ const s = "external-dynamic-content-ui-element", T = "button-add-dynamic-content";
22
+ class O extends d {
23
+ registerUiElements(e) {
24
+ e[i.MERGETAGS] = s;
11
25
  }
12
26
  }
13
- class u extends n.UIElement {
27
+ class k extends l {
14
28
  constructor() {
15
29
  super(...arguments);
16
30
  r(this, "mergeTagsButton", null);
@@ -20,42 +34,42 @@ class u extends n.UIElement {
20
34
  r(this, "selectedDynamicContent", { value: "", text: "" });
21
35
  }
22
36
  getId() {
23
- return a;
37
+ return s;
24
38
  }
25
- onRender(e) {
26
- var s;
27
- this.listener = this._onClick.bind(this), this.mergeTagsButton = e.querySelector("#guido__btn-add-dynamic-content"), (s = this.mergeTagsButton) == null || s.addEventListener("click", this.listener);
39
+ onRender(t) {
40
+ var o;
41
+ this.listener = this._onClick.bind(this), this.mergeTagsButton = t.querySelector("#guido__btn-add-dynamic-content"), (o = this.mergeTagsButton) == null || o.addEventListener("click", this.listener);
28
42
  }
29
43
  onDestroy() {
30
- var e;
31
- (e = this.mergeTagsButton) == null || e.removeEventListener("click", this.listener);
44
+ var t;
45
+ (t = this.mergeTagsButton) == null || t.removeEventListener("click", this.listener);
32
46
  }
33
47
  _onClick() {
34
48
  this.openMergeTagLibrary();
35
49
  }
36
50
  openMergeTagLibrary() {
37
- this.mergeTagsLibrary || (this.mergeTagsLibrary = new g()), this.mergeTagsLibrary.openMergeTagsLibrary(
51
+ this.mergeTagsLibrary || (this.mergeTagsLibrary = new p()), this.mergeTagsLibrary.openMergeTagsLibrary(
38
52
  this.selectedDynamicContent,
39
- (e) => {
40
- this.api.onValueChanged(l([e])[0]);
53
+ (t) => {
54
+ this.api.onValueChanged(g([t])[0]);
41
55
  }
42
56
  );
43
57
  }
44
58
  getTemplate() {
45
59
  return `
46
60
  <div>
47
- <${n.UIElementType.BUTTON}
61
+ <${i.BUTTON}
48
62
  id="guido__btn-add-dynamic-content"
49
63
  class="btn btn-primary"
50
- ${n.UEAttr.BUTTON.name}="${c}">
51
- <${n.UIElementType.ICON} src="plus" class="icon icon-button color-primary">
52
- </${n.UIElementType.ICON}>
64
+ ${c.BUTTON.name}="${T}">
65
+ <${i.ICON} src="plus" class="icon icon-button color-primary">
66
+ </${i.ICON}>
53
67
  ${this.api.translate("Add Dynamic Content")}
54
- </${n.UIElementType.BUTTON}>
68
+ </${i.BUTTON}>
55
69
  </div>`;
56
70
  }
57
71
  }
58
72
  export {
59
- p as DynamicContentTagRegistry,
60
- u as DynamicContentUiElementExtension
73
+ O as DynamicContentTagRegistry,
74
+ k as DynamicContentUiElementExtension
61
75
  };
@@ -1,11 +1,23 @@
1
- import { d as t } from "../../_virtual/index.js";
2
- import { DynamicContentUiElementExtension as n, DynamicContentTagRegistry as i } from "./dynamic-content.js";
3
- import e from "./dynamic-content.css.js";
4
- const s = new t.ExtensionBuilder().addUiElement(n).withStyles(e).withLocalization({
1
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js";
2
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js";
3
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js";
4
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js";
5
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js";
6
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js";
7
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js";
8
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js";
9
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js";
10
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js";
11
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js";
12
+ import "../../node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js";
13
+ import { ExtensionBuilder as t } from "../../node_modules/@stripoinc/ui-editor-extensions/dist/ExtensionBuilder.js";
14
+ import { DynamicContentUiElementExtension as i, DynamicContentTagRegistry as o } from "./dynamic-content.js";
15
+ import n from "./dynamic-content.css.js";
16
+ const w = new t().addUiElement(i).withStyles(n).withLocalization({
5
17
  en: {
6
18
  "Add Dynamic Content": "Add Dynamic Content"
7
19
  }
8
- }).withUiElementTagRegistry(i).build();
20
+ }).withUiElementTagRegistry(o).build();
9
21
  export {
10
- s as default
22
+ w as default
11
23
  };
package/dist/guido.css CHANGED
@@ -1 +1 @@
1
- [data-v-a18ac2d3] .in-button-v2__wrapper{line-height:0}[data-v-b5997368] .in-segments-wrapper .in-tooltip-wrapper__box{text-align:left}.version-history-item[data-v-ee4b9c3f]{flex-basis:200px}.version-history-wrapper[data-v-52a77eec]{gap:8px}.view-options-wrapper[data-v-d405ca59]{position:relative;display:inline-block}.new-tag[data-v-d405ca59]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-d405ca59] .guido__verion-history-view-option-selection-desktop svg,[data-v-d405ca59] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-d405ca59] .in-segments-wrapper__button_selected,[data-v-d405ca59] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-d405ca59] .in-tooltip-wrapper__icon{cursor:pointer}.view-options-wrapper[data-v-195ab6d4]{position:relative;display:inline-block}.new-tag[data-v-195ab6d4]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-195ab6d4] .guido__view-option-selection-desktop svg,[data-v-195ab6d4] .guido__view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-195ab6d4] .in-segments-wrapper__button_selected,[data-v-195ab6d4] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-195ab6d4] .in-tooltip-wrapper__icon{cursor:pointer}.guido-loading__wrapper[data-v-dced5582]{height:100%;top:75px}.guido-editor__wrapper[data-v-cebb8ab0],.guido-editor__container[data-v-cebb8ab0]{width:100%;height:calc(100vh - 128px)}.guido-editor__no-header[data-v-cebb8ab0]{height:calc(100vh - 75px)}.error-list[data-v-7a09985c]{gap:16px}[data-v-c2adc57d] .in-progress-wrapper__progress p span:last-child{display:none!important}.desktop-preview-container[data-v-2dd60b0c],[data-v-2dd60b0c] .desktop-preview-container .in-container{min-height:720px!important;height:100%}.cropped-text[data-v-f20b3a9b]{width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-v-d3c52b44] .vueperslides__bullets,[data-v-a408dcea] .vueperslides__bullets{pointer-events:none!important}[data-v-a408dcea] .vueperslides__parallax-wrapper{height:110px!important}
1
+ [data-v-a18ac2d3] .in-button-v2__wrapper{line-height:0}[data-v-b5997368] .in-segments-wrapper .in-tooltip-wrapper__box{text-align:left}.version-history-item[data-v-ee4b9c3f]{flex-basis:200px}.version-history-wrapper[data-v-52a77eec]{gap:8px}.view-options-wrapper[data-v-d405ca59]{position:relative;display:inline-block}.new-tag[data-v-d405ca59]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-d405ca59] .guido__verion-history-view-option-selection-desktop svg,[data-v-d405ca59] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-d405ca59] .in-segments-wrapper__button_selected,[data-v-d405ca59] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-d405ca59] .in-tooltip-wrapper__icon{cursor:pointer}.view-options-wrapper[data-v-195ab6d4]{position:relative;display:inline-block}.new-tag[data-v-195ab6d4]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-195ab6d4] .guido__view-option-selection-desktop svg,[data-v-195ab6d4] .guido__view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-195ab6d4] .in-segments-wrapper__button_selected,[data-v-195ab6d4] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-195ab6d4] .in-tooltip-wrapper__icon{cursor:pointer}.guido-loading__wrapper[data-v-dced5582]{height:100%;top:75px}.guido-editor__wrapper[data-v-aca05338],.guido-editor__container[data-v-aca05338]{width:100%;height:calc(100vh - 128px)}.guido-editor__no-header[data-v-aca05338]{height:calc(100vh - 75px)}.error-list[data-v-7a09985c]{gap:16px}[data-v-c2adc57d] .in-progress-wrapper__progress p span:last-child{display:none!important}.desktop-preview-container[data-v-2dd60b0c],[data-v-2dd60b0c] .desktop-preview-container .in-container{min-height:720px!important;height:100%}.cropped-text[data-v-f20b3a9b]{width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-v-d3c52b44] .vueperslides__bullets,[data-v-a408dcea] .vueperslides__bullets{pointer-events:none!important}[data-v-a408dcea] .vueperslides__parallax-wrapper{height:110px!important}
@@ -0,0 +1,2 @@
1
+ declare const _default: import("msw").HttpHandler[];
2
+ export default _default;