@g1cloud/page-builder-editor 1.0.0-alpha.10 → 1.0.0-alpha.100

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 (120) hide show
  1. package/css/page-builder-editor.css +391 -0
  2. package/css/page-builder-viewer.css +200 -0
  3. package/dist/PageBuilderEditor.vue.d.ts +22 -11
  4. package/dist/PbHtmlEditorModal-C0MLYY66.js +193 -0
  5. package/dist/PbPropertyEditorBoolean-c5CNiTpt.js +38 -0
  6. package/dist/{PbPropertyEditorColor-B9I99uQK.js → PbPropertyEditorColor-CwgsFX20.js} +8 -9
  7. package/dist/{PbPropertyEditorText-BWOKvwD9.js → PbPropertyEditorCssLength-BimevQPh.js} +10 -9
  8. package/dist/PbPropertyEditorHtml-Dq5TqAEK.js +62 -0
  9. package/dist/PbPropertyEditorImage-Bn9LMbEK.js +122 -0
  10. package/dist/{PbPropertyEditorMultilineText-Bv4luXWg.js → PbPropertyEditorMultilineText-gDifsouH.js} +28 -27
  11. package/dist/PbPropertyEditorNumber-B76ArSb5.js +47 -0
  12. package/dist/{PbPropertyEditorReadonlyText-Dgp_AVOD.js → PbPropertyEditorReadonlyText-BJ5qx69O.js} +6 -6
  13. package/dist/{PbPropertyEditorSelect-CWedbXJI.js → PbPropertyEditorSelect-B5sfulvx.js} +5 -6
  14. package/dist/PbPropertyEditorText-C7Tr7KGc.js +50 -0
  15. package/dist/PbPropertyEditorYoutube-Ci8_jXBk.js +62 -0
  16. package/dist/PbScreenSelectModal-57LXAzjs.js +69 -0
  17. package/dist/PbWidgetAddModal-BdTUeERo.js +79 -0
  18. package/dist/PbYoutubeModal-CU8sClMD.js +73 -0
  19. package/dist/components/canvas/PbCanvas.vue.d.ts +1 -1
  20. package/dist/components/depart/PbLoginDepart.vue.d.ts +3 -3
  21. package/dist/components/menu/PbMenu.vue.d.ts +16 -1
  22. package/dist/components/menu/PbToolbar.vue.d.ts +16 -1
  23. package/dist/components/menu/PbToolbarButton.vue.d.ts +3 -3
  24. package/dist/components/menu/PbToolbarButtonGroup.vue.d.ts +3 -3
  25. package/dist/components/modal/PbHtmlEditorModal.vue.d.ts +28 -0
  26. package/dist/components/modal/PbPartAddModal.vue.d.ts +4 -4
  27. package/dist/components/modal/PbScreenSelectModal.vue.d.ts +6 -0
  28. package/dist/components/modal/PbWidgetAddModal.vue.d.ts +4 -4
  29. package/dist/components/modal/PbYoutubeModal.vue.d.ts +19 -0
  30. package/dist/components/navigator/PbNavigator.vue.d.ts +1 -1
  31. package/dist/components/part/PbAddWidgetButton.vue.d.ts +1 -1
  32. package/dist/components/part/PbBlock.vue.d.ts +7 -3
  33. package/dist/components/part/PbPage.vue.d.ts +5 -5
  34. package/dist/components/part/PbPageFrame.vue.d.ts +19 -0
  35. package/dist/components/part/PbSection.vue.d.ts +7 -3
  36. package/dist/components/part/PbWidget.vue.d.ts +5 -3
  37. package/dist/components/sidebar/PbSidebar.vue.d.ts +1 -1
  38. package/dist/components/sidebar/PbSidebarProperties.vue.d.ts +1 -1
  39. package/dist/components/sidebar/PbSidebarPropertyEditor.vue.d.ts +3 -3
  40. package/dist/components/sidebar/PbSidebarPropertyGroupEditor.vue.d.ts +3 -3
  41. package/dist/components/sidebar/property/{PbPropertyEditorProduct.vue.d.ts → PbPropertyEditorBoolean.vue.d.ts} +4 -4
  42. package/dist/components/sidebar/property/PbPropertyEditorColor.vue.d.ts +4 -4
  43. package/dist/components/sidebar/property/PbPropertyEditorCssLength.vue.d.ts +23 -0
  44. package/dist/components/sidebar/property/PbPropertyEditorHtml.vue.d.ts +4 -4
  45. package/dist/components/sidebar/property/PbPropertyEditorImage.vue.d.ts +5 -9
  46. package/dist/components/sidebar/property/PbPropertyEditorMultilineText.vue.d.ts +7 -6
  47. package/dist/components/sidebar/property/PbPropertyEditorNumber.vue.d.ts +23 -0
  48. package/dist/components/sidebar/property/PbPropertyEditorReadonlyText.vue.d.ts +3 -3
  49. package/dist/components/sidebar/property/PbPropertyEditorSelect.vue.d.ts +4 -4
  50. package/dist/components/sidebar/property/PbPropertyEditorText.vue.d.ts +9 -8
  51. package/dist/components/sidebar/property/{PbPropertyLocalMarketingPart.vue.d.ts → PbPropertyEditorYoutube.vue.d.ts} +9 -9
  52. package/dist/components/sidebar/property/PbPropertyGroupEditorBackground.vue.d.ts +3 -3
  53. package/dist/components/sidebar/property/PbPropertyGroupEditorBorder.vue.d.ts +3 -3
  54. package/dist/components/sidebar/property/PbPropertyGroupEditorMargin.vue.d.ts +3 -3
  55. package/dist/components/sidebar/property/PbPropertyGroupEditorMedia.vue.d.ts +20 -0
  56. package/dist/components/sidebar/property/PbPropertyGroupEditorPadding.vue.d.ts +3 -3
  57. package/dist/components/sidebar/property/PbPropertyGroupEditorPosition.vue.d.ts +3 -3
  58. package/dist/components/sidebar/property/PbPropertyGroupEditorSize.vue.d.ts +3 -3
  59. package/dist/components/ui/PbColorPicker.vue.d.ts +16 -7
  60. package/dist/directives/vPartHandler.d.ts +1 -0
  61. package/dist/{index-jUNIezk-.js → index-gTlPRaWE.js} +5420 -2156
  62. package/dist/index.d.ts +6 -0
  63. package/dist/model/command.d.ts +47 -34
  64. package/dist/model/context.d.ts +19 -19
  65. package/dist/model/default-part-property-group.d.ts +8 -2
  66. package/dist/model/event.d.ts +0 -56
  67. package/dist/model/model.d.ts +6 -2
  68. package/dist/model/page-builder-editor.d.ts +39 -10
  69. package/dist/model/page-builder-util.d.ts +2 -0
  70. package/dist/model/part-definintion.d.ts +2 -2
  71. package/dist/model/part-manager.d.ts +2 -1
  72. package/dist/model/part-property.d.ts +4 -3
  73. package/dist/model/plugin.d.ts +24 -0
  74. package/dist/page-builder-editor.js +20 -17
  75. package/dist/page-builder-editor.umd.cjs +6212 -2527
  76. package/dist/style.css +383 -1
  77. package/dist/text/text.d.ts +1 -0
  78. package/dist/utils/common.d.ts +1 -0
  79. package/package.json +13 -8
  80. package/scss/canvas.scss +29 -0
  81. package/{css/canvas-block.scss → scss/page-block.scss} +15 -3
  82. package/scss/page-builder-editor.scss +326 -0
  83. package/scss/page-builder-viewer.scss +1 -0
  84. package/{css/canvas-page.scss → scss/page-page.scss} +25 -16
  85. package/{css/canvas-section.scss → scss/page-section.scss} +15 -4
  86. package/scss/page-widget.scss +66 -0
  87. package/scss/page.scss +73 -0
  88. package/{css → scss}/property-editor-html.scss +4 -3
  89. package/scss/property-editor-image.scss +17 -0
  90. package/{css → scss}/property-editor-product.scss +4 -3
  91. package/scss/property-editor-text.scss +10 -0
  92. package/{css/property-editor-image.scss → scss/property-editor-youtube.scss} +4 -4
  93. package/scss/property-group-editor-background.scss +39 -0
  94. package/scss/property-group-editor-media.scss +22 -0
  95. package/{css → scss}/property-localpart.scss +2 -2
  96. package/css/bluesea.scss +0 -8244
  97. package/css/canvas-widget.scss +0 -41
  98. package/css/canvas.scss +0 -147
  99. package/css/page-builder-editor.scss +0 -265
  100. package/css/page-builder-viewer.scss +0 -1
  101. package/css/property-group-editor-background.scss +0 -28
  102. package/css/variable.scss +0 -1
  103. package/dist/HtmlEditorModal-oXFayeg-.js +0 -100
  104. package/dist/PbPartAddModal-DuLpnV4E.js +0 -50
  105. package/dist/PbPropertyEditorHtml-BVT2SwoK.js +0 -64
  106. package/dist/PbPropertyEditorImage-DLwg5dJz.js +0 -42
  107. package/dist/PbPropertyEditorProduct-6STGd-Zs.js +0 -49
  108. package/dist/PbWidgetAddModal-CQvFYzfU.js +0 -55
  109. package/dist/components/canvas/PbCanvasFrame.vue.d.ts +0 -2
  110. package/dist/components/modal/HtmlEditorModal.vue.d.ts +0 -23
  111. /package/{css → scss}/property-editor-color.scss +0 -0
  112. /package/{css → scss}/property-editor-multiline-text.scss +0 -0
  113. /package/{css/property-editor-text.scss → scss/property-editor-number.scss} +0 -0
  114. /package/{css → scss}/property-editor-readonly-text.scss +0 -0
  115. /package/{css → scss}/property-editor-select.scss +0 -0
  116. /package/{css → scss}/property-group-editor-border.scss +0 -0
  117. /package/{css → scss}/property-group-editor-margin.scss +0 -0
  118. /package/{css → scss}/property-group-editor-padding.scss +0 -0
  119. /package/{css → scss}/property-group-editor-position.scss +0 -0
  120. /package/{css → scss}/property-group-editor-size.scss +0 -0
package/dist/style.css CHANGED
@@ -1,6 +1,388 @@
1
+ @charset "UTF-8";
2
+ .pb-editor {
3
+ --color-canvas-frame-bg: #aaa;
4
+ height: 100%;
5
+ }
6
+ .pb-editor .pb-menu {
7
+ width: 100%;
8
+ }
9
+ .pb-editor .pb-menu .pb-toolbar {
10
+ margin: 0 -8px;
11
+ }
12
+ .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group::after {
13
+ content: "";
14
+ margin: 0 8px;
15
+ height: 80%;
16
+ border-right: 1px solid var(--border-light);
17
+ align-self: center;
18
+ }
19
+ .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button {
20
+ padding: 2px;
21
+ margin: 0 2px;
22
+ }
23
+ .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button {
24
+ width: 28px;
25
+ height: 28px;
26
+ display: flex;
27
+ align-items: center;
28
+ justify-content: center;
29
+ }
30
+ .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .bs-clickable, .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .pb-part-add-modal .group .part, .pb-part-add-modal .group .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .part {
31
+ user-select: none;
32
+ cursor: pointer;
33
+ }
34
+ .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .bs-clickable:hover, .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .pb-part-add-modal .group .part:hover, .pb-part-add-modal .group .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .part:hover {
35
+ filter: opacity(75%);
36
+ }
37
+ .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .bs-clickable:active, .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .pb-part-add-modal .group .part:active, .pb-part-add-modal .group .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .part:active {
38
+ filter: opacity(50%);
39
+ }
40
+ .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .bs-clickable.disabled, .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .pb-part-add-modal .group .disabled.part, .pb-part-add-modal .group .pb-editor .pb-menu .pb-toolbar .pb-tool-button-group .pb-tool-button .tool-button .disabled.part {
41
+ filter: opacity(40%);
42
+ }
1
43
  .pb-editor .pb-editor-body {
44
+ padding: 8px 0 0;
45
+ height: 1px;
46
+ }
47
+ .pb-editor .pb-editor-body .pb-canvas-wrapper {
48
+ background-color: var(--color-canvas-frame-bg);
49
+ border-top: 1px solid var(--color-canvas-frame-bg);
50
+ border-bottom: 1px solid var(--color-canvas-frame-bg);
51
+ flex-grow: 1;
52
+ min-width: 0;
53
+ width: 0;
54
+ height: 100%;
55
+ padding: 20px;
56
+ outline: none;
57
+ overflow: auto;
58
+ }
59
+ .pb-editor .pb-editor-body .pb-canvas {
60
+ display: flex;
61
+ flex-direction: row;
62
+ transform-origin: top left;
63
+ width: fit-content;
2
64
  height: 100%;
65
+ margin: 0;
66
+ }
67
+ .pb-editor .pb-editor-body .pb-page-frame iframe.page-frame {
68
+ border: 0;
69
+ }
70
+ .pb-editor .pb-editor-body .bs-tab-sheet .tab-bar .tabs {
71
+ padding-top: 0;
72
+ }
73
+ .pb-editor .pb-editor-body .bs-horizontal-layout-resizer {
74
+ transform: scaleX(6);
3
75
  }
4
- .pb-editor .pb-editor-body .tab-bar {
76
+ .pb-editor .pb-editor-body .bs-horizontal-layout-resizer .resize-line {
77
+ background-color: var(--color-canvas-frame-bg);
78
+ }
79
+ .pb-editor .pb-editor-body .pb-navigator {
80
+ position: relative;
81
+ height: 1px;
82
+ overflow-y: auto;
83
+ padding: 8px 0;
84
+ flex-grow: 1;
85
+ border: 1px solid var(--border-light);
86
+ border-right: 0 none;
87
+ }
88
+ .pb-editor .pb-editor-body .pb-navigator:focus {
89
+ outline: none;
90
+ }
91
+ .pb-editor .pb-editor-body .pb-sidebar {
92
+ width: 300px;
93
+ overflow: auto;
94
+ border: 1px solid var(--border-light);
95
+ border-left: 0 none;
96
+ }
97
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties {
5
98
  padding: 0;
99
+ }
100
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-title {
101
+ padding: 8px;
102
+ background-color: var(--blue-bg);
103
+ color: var(--blue);
104
+ font-weight: 600;
105
+ }
106
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group:not(:empty) {
107
+ padding: 8px;
108
+ border-bottom: 1px solid var(--border-light);
109
+ }
110
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-title > label {
111
+ padding: 4px 0;
112
+ font-size: 90%;
113
+ font-weight: 600;
114
+ }
115
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor {
116
+ padding: 4px 0;
117
+ font-size: 0.9em;
118
+ }
119
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor .title {
120
+ padding: 0 0 8px 0;
121
+ }
122
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor .title label {
123
+ min-width: 6em;
124
+ max-width: 6em;
125
+ padding-right: 0.5em;
126
+ font-weight: bold;
127
+ }
128
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor .sub-title label {
129
+ min-width: 6em;
130
+ max-width: 6em;
131
+ padding-right: 0.5em;
132
+ font-weight: 400;
133
+ }
134
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor {
135
+ padding: 4px 0;
136
+ font-size: 0.9em;
137
+ }
138
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor > .title {
139
+ padding: 0 0 8px 0;
140
+ }
141
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor > .title > label {
142
+ min-width: 6em;
143
+ max-width: 6em;
144
+ padding-right: 0.5em;
145
+ font-weight: 600;
146
+ }
147
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor:nth-child(n+2) {
148
+ margin-top: 4px;
149
+ }
150
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-color .color {
151
+ width: 50%;
152
+ }
153
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-image button.select-button {
154
+ color: var(--white);
155
+ border: none;
156
+ padding: 4px 12px;
157
+ cursor: pointer;
158
+ line-height: 1;
159
+ width: 120px;
160
+ height: 26px;
161
+ background-color: var(--primary);
162
+ border-radius: 2px;
163
+ }
164
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-image .input-area {
165
+ height: 24px;
166
+ }
167
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-product button {
168
+ color: var(--white);
169
+ border: none;
170
+ padding: 4px 12px;
171
+ cursor: pointer;
172
+ line-height: 1;
173
+ width: 200px;
174
+ height: 26px;
175
+ background-color: var(--primary);
176
+ border-radius: 2px;
177
+ }
178
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-product .input-area {
179
+ height: 24px;
180
+ }
181
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-select .bs-select {
182
+ display: block;
183
+ }
184
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-select .input-area {
185
+ height: 24px;
186
+ }
187
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-text .bs-text-input {
188
+ display: block;
189
+ }
190
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-text .input-area {
191
+ height: 24px;
192
+ }
193
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-text .bs-text-input {
194
+ display: block;
195
+ }
196
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-text .input-area {
197
+ height: 24px;
198
+ }
199
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-html button {
200
+ color: var(--white);
201
+ border: none;
202
+ padding: 4px 12px;
203
+ cursor: pointer;
204
+ line-height: 1;
205
+ width: 100px;
206
+ height: 26px;
207
+ background-color: var(--primary);
208
+ border-radius: 2px;
209
+ }
210
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-html .input-area {
211
+ height: 24px;
212
+ }
213
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-background .color {
214
+ flex: 1;
215
+ display: flex;
216
+ flex-direction: row;
217
+ align-items: center;
218
+ }
219
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-background .color label {
220
+ display: inline-block;
221
+ width: 80px;
222
+ }
223
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-background .color .bs-text-input {
224
+ flex-grow: 0;
225
+ width: 104px;
226
+ }
227
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-background .image label {
228
+ display: inline-block;
229
+ width: 80px;
230
+ }
231
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-background .image .bs-button.select-button {
232
+ width: 132px;
233
+ }
234
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-background .image .url {
235
+ word-break: break-word !important;
236
+ word-wrap: break-word !important;
237
+ }
238
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-border .color {
239
+ width: 50%;
240
+ flex: 1;
241
+ display: flex;
242
+ flex-direction: row;
243
+ align-items: center;
244
+ }
245
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-border .color .bs-text-input {
246
+ flex-grow: 1;
247
+ }
248
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-border .corner-icon {
249
+ width: 1.1em;
250
+ height: 1.1em;
251
+ fill: #000;
252
+ }
253
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-media button.select-button {
254
+ color: var(--white);
255
+ border: none;
256
+ padding: 4px 12px;
257
+ cursor: pointer;
258
+ line-height: 1;
259
+ width: 120px;
260
+ height: 26px;
261
+ background-color: var(--primary);
262
+ border-radius: 2px;
263
+ }
264
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-media .input-area {
265
+ height: 24px;
266
+ }
267
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .group-editor-media .url {
268
+ word-break: break-word !important;
269
+ word-wrap: break-word !important;
270
+ }
271
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-local-part .title {
272
+ font-weight: 600;
273
+ }
274
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-local-part button {
275
+ color: var(--white);
276
+ border: none;
277
+ padding: 0 4px;
278
+ cursor: pointer;
279
+ line-height: 1;
280
+ height: 24px;
281
+ background-color: var(--primary);
282
+ }
283
+ .pb-editor .pb-editor-body .pb-sidebar .pb-sidebar-properties .pb-sidebar-property-group .property-editor-local-part .input-area {
284
+ height: 24px;
285
+ }
286
+ .pb-editor .pb-editor-body .pb-color-picker {
287
+ display: inline-flex;
288
+ position: relative;
289
+ }
290
+ .pb-editor .pb-editor-body .pb-color-picker .buttons {
291
+ display: flex;
292
+ padding: 0;
293
+ }
294
+ .pb-editor .pb-editor-body .pb-color-picker .buttons button {
295
+ width: 24px;
296
+ height: 24px;
297
+ display: flex;
298
+ justify-content: center;
299
+ align-items: center;
300
+ }
301
+ .pb-editor .pb-editor-body .pb-color-picker .buttons button.none {
302
+ position: relative;
303
+ overflow: hidden;
304
+ }
305
+ .pb-editor .pb-editor-body .pb-color-picker .buttons button.none::after {
306
+ content: " ";
307
+ display: inline-block;
308
+ width: 100px;
309
+ height: 1px;
310
+ background: var(--red);
311
+ position: absolute;
312
+ top: 50%;
313
+ left: 50%;
314
+ transform: translate(-50%, -50%) rotate(45deg);
315
+ }
316
+ .pb-editor .pb-editor-body .pb-color-picker .buttons button.picker-button {
317
+ border: 1px solid var(--border);
318
+ }
319
+ .pb-editor .pb-editor-body .pb-color-picker .buttons button i {
320
+ font-size: 1.4rem;
321
+ }
322
+ .pb-editor .pb-editor-body .pb-color-picker .sketch-wrap {
323
+ width: 220px;
324
+ position: absolute;
325
+ z-index: 10;
326
+ left: -12px;
327
+ top: 24px;
328
+ white-space: break-spaces;
329
+ text-align: left;
330
+ }
331
+ .pb-part-add-modal .section-title {
332
+ font-weight: 700;
333
+ }
334
+ .pb-part-add-modal .group .part {
335
+ border: 1px solid var(--border-light);
336
+ border-radius: 4px;
337
+ padding: 8px 16px;
338
+ cursor: pointer;
339
+ }
340
+ .pb-html-editor-modal .preview {
341
+ width: 50%;
342
+ }
343
+ .pb-html-editor-modal .preview .content {
344
+ border: solid 1px var(--border);
345
+ }
346
+ .pb-html-editor-modal .preview .content iframe {
347
+ width: 100%;
348
+ height: 100%;
349
+ }
350
+ .pb-html-editor-modal .editor {
351
+ width: 50%;
352
+ }
353
+ .pb-html-editor-modal .editor .bs-tab-sheet > :nth-child(2) {
354
+ height: 0;
355
+ }
356
+ .pb-html-editor-modal .editor .tags {
357
+ height: 60%;
358
+ }
359
+ .pb-html-editor-modal .editor .style {
360
+ height: 40%;
361
+ }
362
+ .pb-html-editor-modal .editor .bs-code-editor {
363
+ height: 100%;
364
+ }
365
+ .pb-html-editor-modal .buttons {
366
+ text-align: center;
367
+ }
368
+ .pb-html-editor-modal .buttons button {
369
+ color: var(--white);
370
+ border: none;
371
+ padding: 4px 12px;
372
+ cursor: pointer;
373
+ line-height: 1;
374
+ height: 28px;
375
+ background-color: var(--primary);
376
+ }
377
+ .pb-youtube-modal .flex-grow-1.overflow-auto {
378
+ overflow: hidden !important;
379
+ }
380
+ .pb-youtube-modal button {
381
+ color: var(--white);
382
+ border: none;
383
+ padding: 4px 12px;
384
+ cursor: pointer;
385
+ line-height: 1;
386
+ height: 28px;
387
+ background-color: var(--primary);
6
388
  }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export declare function toCssLength(value: string): string;
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@g1cloud/page-builder-editor",
3
3
  "private": false,
4
- "version": "1.0.0-alpha.10",
4
+ "version": "1.0.0-alpha.100",
5
5
  "engins": {
6
6
  "node": ">= 20.0.0"
7
7
  },
8
8
  "files": [
9
9
  "dist",
10
- "css"
10
+ "css",
11
+ "scss"
11
12
  ],
12
13
  "type": "module",
13
14
  "module": "dist/page-builder-editor.js",
@@ -16,19 +17,21 @@
16
17
  "author": "zag@g1project.net",
17
18
  "license": "LicenseRef-LICENSE",
18
19
  "peerDependencies": {
19
- "@g1cloud/bluesea": "5.0.0-alpha.60"
20
+ "@g1cloud/bluesea": "5.0.0-beta.21",
21
+ "vue3-youtube": "^0.1.9"
20
22
  },
21
23
  "dependencies": {
22
24
  "@ckpack/vue-color": "^1.5.0",
25
+ "@ctrl/tinycolor": "^3.6.1",
23
26
  "dayjs": "^1.11.11",
24
27
  "mitt": "^3.0.1",
25
28
  "short-unique-id": "^5.0.3",
26
29
  "vite-svg-loader": "^5.1.0",
27
- "vue": "^3.4.26",
28
- "vue-router": "^4.3.2",
30
+ "vue": "^3.5.3",
31
+ "vue-router": "^4.4.3",
29
32
  "vue3-click-away": "^1.2.4",
30
33
  "yjs": "^13.6.14",
31
- "@g1cloud/page-builder-viewer": "1.0.0-alpha.10"
34
+ "@g1cloud/page-builder-viewer": "1.0.0-alpha.100"
32
35
  },
33
36
  "devDependencies": {
34
37
  "@types/node": "^20.12.7",
@@ -36,7 +39,7 @@
36
39
  "jsdom": "^24.0.0",
37
40
  "sass": "^1.75.0",
38
41
  "typescript": "^5.4.5",
39
- "vite": "^5.2.11",
42
+ "vite": "^5.4.3",
40
43
  "vite-plugin-dts": "^3.9.0",
41
44
  "vitest": "^1.5.0",
42
45
  "vitest-canvas-mock": "^0.3.3",
@@ -44,7 +47,9 @@
44
47
  },
45
48
  "scripts": {
46
49
  "dev": "vite",
47
- "build": "vue-tsc && vite build",
50
+ "build": "pnpm build:vue && pnpm build:scss",
51
+ "build:vue": "vue-tsc && vite build",
52
+ "build:scss": "sass scss/page-builder-editor.scss:css/page-builder-editor.css --no-source-map && sass scss/page-builder-viewer.scss:css/page-builder-viewer.css --no-source-map",
48
53
  "preview": "vite preview"
49
54
  }
50
55
  }
@@ -0,0 +1,29 @@
1
+
2
+ .pb-canvas-wrapper {
3
+ background-color: var(--color-canvas-frame-bg);
4
+ border-top: 1px solid var(--color-canvas-frame-bg);
5
+ border-bottom: 1px solid var(--color-canvas-frame-bg);
6
+ flex-grow: 1;
7
+ min-width: 0;
8
+ width: 0;
9
+ height: 100%;
10
+ padding: 20px;
11
+ outline: none;
12
+ overflow: auto;
13
+ }
14
+
15
+ .pb-canvas {
16
+ display: flex;
17
+ flex-direction: row;
18
+ transform-origin: top left;
19
+ width: fit-content;
20
+ height: 100%;
21
+ margin: 0;
22
+ }
23
+
24
+ .pb-page-frame {
25
+
26
+ iframe.page-frame {
27
+ border: 0;
28
+ }
29
+ }
@@ -12,9 +12,21 @@
12
12
  background-color: #f0f0f0;
13
13
  }
14
14
 
15
- &.selected {
16
- outline: 1px solid #8e44ad;
17
- outline-offset: 1px;
15
+ //&.selected {
16
+ // outline: 2px solid #4998f8;
17
+ // outline-offset: -2px;
18
+ // z-index: 999;
19
+ //}
20
+
21
+ &.selected::before {
22
+ content: "";
23
+ position: absolute;
24
+ top: 0;
25
+ left: 0;
26
+ right: 0;
27
+ bottom: 0;
28
+ border: 2px solid #4998f8;
18
29
  z-index: 999;
30
+ pointer-events: none;
19
31
  }
20
32
  }