@syncfusion/ej2-react-form-builder 0.1.0-beta

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 (145) hide show
  1. package/Common/CheckboxGroup.d.ts +13 -0
  2. package/Common/CheckboxGroup.js +50 -0
  3. package/Common/ConditionalRuleEngine.d.ts +296 -0
  4. package/Common/ConditionalRuleEngine.js +566 -0
  5. package/Common/CustomTabComponent.d.ts +17 -0
  6. package/Common/CustomTabComponent.js +30 -0
  7. package/Common/CustomValidationEngine.d.ts +58 -0
  8. package/Common/CustomValidationEngine.js +146 -0
  9. package/Common/DataGridComponent.d.ts +20 -0
  10. package/Common/DataGridComponent.js +273 -0
  11. package/Common/FormValidator.d.ts +485 -0
  12. package/Common/FormValidator.js +575 -0
  13. package/Common/MinMaxRuleEngine.d.ts +105 -0
  14. package/Common/MinMaxRuleEngine.js +365 -0
  15. package/Common/StaticHtmlRenderer.d.ts +14 -0
  16. package/Common/StaticHtmlRenderer.js +24 -0
  17. package/Common/expressions/DependencyTracker.d.ts +30 -0
  18. package/Common/expressions/DependencyTracker.js +128 -0
  19. package/Common/expressions/ExpressionEngine.d.ts +95 -0
  20. package/Common/expressions/ExpressionEngine.js +506 -0
  21. package/Common/expressions/ExpressionParser.d.ts +41 -0
  22. package/Common/expressions/ExpressionParser.js +269 -0
  23. package/Common/expressions/useGridExpressions.d.ts +12 -0
  24. package/Common/expressions/useGridExpressions.js +71 -0
  25. package/Common/globalFormId.d.ts +26 -0
  26. package/Common/globalFormId.js +45 -0
  27. package/Common/json-converter.d.ts +444 -0
  28. package/Common/json-converter.js +1184 -0
  29. package/Common/parser.d.ts +98 -0
  30. package/Common/parser.js +753 -0
  31. package/Common/utils.d.ts +130 -0
  32. package/Common/utils.js +574 -0
  33. package/README.md +53 -0
  34. package/index.d.ts +6 -0
  35. package/index.js +6 -0
  36. package/license +13 -0
  37. package/package.json +54 -0
  38. package/src/FormBuilder.d.ts +211 -0
  39. package/src/FormBuilder.js +1299 -0
  40. package/src/components/Database/ConnectionForm.d.ts +8 -0
  41. package/src/components/Database/ConnectionForm.js +28 -0
  42. package/src/components/TopBar.d.ts +10 -0
  43. package/src/components/TopBar.js +7 -0
  44. package/src/components/icons/ComponentIcons.d.ts +44 -0
  45. package/src/components/icons/ComponentIcons.js +40 -0
  46. package/src/components/layout/FormFieldWrapper.d.ts +41 -0
  47. package/src/components/layout/FormFieldWrapper.js +112 -0
  48. package/src/components/layout/LeftPane.d.ts +23 -0
  49. package/src/components/layout/LeftPane.js +310 -0
  50. package/src/components/layout/ListBoxPane.d.ts +24 -0
  51. package/src/components/layout/ListBoxPane.js +94 -0
  52. package/src/components/layout/MainSection.d.ts +39 -0
  53. package/src/components/layout/MainSection.js +1766 -0
  54. package/src/components/layout/Preview.d.ts +12 -0
  55. package/src/components/layout/Preview.js +337 -0
  56. package/src/components/layout/RightPane.d.ts +22 -0
  57. package/src/components/layout/RightPane.js +370 -0
  58. package/src/components/theme/ThemeSwitcher.d.ts +14 -0
  59. package/src/components/theme/ThemeSwitcher.js +24 -0
  60. package/src/components/theme/theme-constant.d.ts +37 -0
  61. package/src/components/theme/theme-constant.js +23 -0
  62. package/src/config/component-properties.json +4929 -0
  63. package/src/config/form-setting.json +56 -0
  64. package/src/config/locale.d.ts +449 -0
  65. package/src/config/locale.js +449 -0
  66. package/src/context/FormSchemaContext.d.ts +32 -0
  67. package/src/context/FormSchemaContext.js +155 -0
  68. package/src/context/LocalizationContext.d.ts +27 -0
  69. package/src/context/LocalizationContext.js +43 -0
  70. package/src/context/ThemeContext.d.ts +23 -0
  71. package/src/context/ThemeContext.js +161 -0
  72. package/src/context/contexts.d.ts +6 -0
  73. package/src/context/contexts.js +6 -0
  74. package/src/context/defaultFormSchema.d.ts +6 -0
  75. package/src/context/defaultFormSchema.js +20 -0
  76. package/src/defaultPalette.d.ts +9 -0
  77. package/src/defaultPalette.js +45 -0
  78. package/src/defaultTemplate.d.ts +3 -0
  79. package/src/defaultTemplate.js +185 -0
  80. package/src/import/schemaImportUtils.d.ts +24 -0
  81. package/src/import/schemaImportUtils.js +121 -0
  82. package/src/index.d.ts +16 -0
  83. package/src/index.js +6 -0
  84. package/src/types/ActionButtons.d.ts +44 -0
  85. package/src/types/ActionButtons.js +27 -0
  86. package/src/types/ComponentProperties.d.ts +33 -0
  87. package/src/types/ComponentProperties.js +2 -0
  88. package/src/types/FormSchema.d.ts +585 -0
  89. package/src/types/FormSchema.js +147 -0
  90. package/src/types/connection.d.ts +19 -0
  91. package/src/types/connection.js +9 -0
  92. package/src/utils/AttributesEditor.d.ts +13 -0
  93. package/src/utils/AttributesEditor.js +117 -0
  94. package/src/utils/ButtonGroupEditor.d.ts +15 -0
  95. package/src/utils/ButtonGroupEditor.js +141 -0
  96. package/src/utils/ChoiceBasedFieldEditor.d.ts +16 -0
  97. package/src/utils/ChoiceBasedFieldEditor.js +87 -0
  98. package/src/utils/ClipboardHelper.d.ts +26 -0
  99. package/src/utils/ClipboardHelper.js +83 -0
  100. package/src/utils/ColumnBuilder.d.ts +11 -0
  101. package/src/utils/ColumnBuilder.js +153 -0
  102. package/src/utils/ColumnSpanEditor.d.ts +8 -0
  103. package/src/utils/ColumnSpanEditor.js +98 -0
  104. package/src/utils/ConditionDataEditor.d.ts +29 -0
  105. package/src/utils/ConditionDataEditor.js +177 -0
  106. package/src/utils/ConditionalEditorUtils.d.ts +27 -0
  107. package/src/utils/ConditionalEditorUtils.js +310 -0
  108. package/src/utils/ConditionsEditor.d.ts +20 -0
  109. package/src/utils/ConditionsEditor.js +571 -0
  110. package/src/utils/CustomAccordion.d.ts +13 -0
  111. package/src/utils/CustomAccordion.js +38 -0
  112. package/src/utils/CustomValidationEditor.d.ts +11 -0
  113. package/src/utils/CustomValidationEditor.js +208 -0
  114. package/src/utils/DataSourceCollector.d.ts +3 -0
  115. package/src/utils/DataSourceCollector.js +252 -0
  116. package/src/utils/ExpressionEditor.d.ts +13 -0
  117. package/src/utils/ExpressionEditor.js +99 -0
  118. package/src/utils/FormSettingsPanel.d.ts +9 -0
  119. package/src/utils/FormSettingsPanel.js +60 -0
  120. package/src/utils/LookupConfig.d.ts +11 -0
  121. package/src/utils/LookupConfig.js +159 -0
  122. package/src/utils/MinMaxValueEditor.d.ts +25 -0
  123. package/src/utils/MinMaxValueEditor.js +188 -0
  124. package/src/utils/OptionsEditor.d.ts +8 -0
  125. package/src/utils/OptionsEditor.js +79 -0
  126. package/src/utils/PropertyRenderer.d.ts +22 -0
  127. package/src/utils/PropertyRenderer.js +210 -0
  128. package/src/utils/ValueRenderer.d.ts +2 -0
  129. package/src/utils/ValueRenderer.js +91 -0
  130. package/src/utils/ej2DbAdaptor.d.ts +6 -0
  131. package/src/utils/ej2DbAdaptor.js +38 -0
  132. package/src/utils/mappingHeuristics.d.ts +10 -0
  133. package/src/utils/mappingHeuristics.js +33 -0
  134. package/src/utils/renderComponent.d.ts +18 -0
  135. package/src/utils/renderComponent.js +300 -0
  136. package/styles/tailwind3.css +67 -0
  137. package/styles/themes/action-buttons.css +110 -0
  138. package/styles/themes/datagrid.css +380 -0
  139. package/styles/themes/drag-reorder.css +248 -0
  140. package/styles/themes/import-dialog.css +292 -0
  141. package/styles/themes/index.css +658 -0
  142. package/styles/themes/left-pane.css +253 -0
  143. package/styles/themes/options-editor.css +63 -0
  144. package/styles/themes/preview.css +702 -0
  145. package/styles/themes/property-dialog.css +371 -0
@@ -0,0 +1,658 @@
1
+ @import "./left-pane.css";
2
+ @import "./preview.css";
3
+ @import "./action-buttons.css";
4
+ @import "./datagrid.css";
5
+ @import "./drag-reorder.css";
6
+ @import "./import-dialog.css";
7
+ @import "./options-editor.css";
8
+ @import './property-dialog.css';
9
+
10
+ :root {
11
+ /* Color variables */
12
+ --sf-drag-clone: 255, 255, 255;
13
+ --sf-color-background: 255, 255, 255;
14
+ --sf-color-on-background: 28, 27, 31;
15
+ --sf-color-line-color: 231, 224, 236;
16
+ --sf-color-surface: 255, 255, 255;
17
+ --sf-color-on-surface: 55, 65, 81;
18
+ --sf-color-surface-variant: 231, 224, 236;
19
+ --sf-color-on-surface-variant: 73, 69, 78;
20
+ --sf-color-scrim: 0, 0, 0;
21
+ --sf-bg-color: #ffff;
22
+
23
+ /* Layout variables */
24
+ --topbar-height: 3.1rem;
25
+ --sidebar-width: 18rem;
26
+ --footer-height: 57px;
27
+ --ridesidebar-width: 18rem;
28
+ --form-width: 500px;
29
+
30
+ /* Spacing */
31
+ --sf-spacing: 1rem;
32
+ --sf-spacing-sm: 0.5rem;
33
+ --sf-spacing-lg: 1.5rem;
34
+
35
+ /* Typography */
36
+ --sf-font-family: Inter, -apple-system, Roboto, Helvetica, sans-serif;
37
+ --sf-font-size: 0.875rem;
38
+ --sf-font-size-sm: 0.75rem;
39
+ --sf-font-size-xs: 0.625rem;
40
+ --sf-font-size-lg: 1rem;
41
+ --sf-letter-spacing: 0.0071428571em;
42
+ --border-radius: 0.25rem;
43
+
44
+
45
+ /* Other */
46
+ --anchor-highlight-color: #004AB3;
47
+ --button-primary-bg: #6750A4;
48
+ --form-container-bg: #FFFFFF;
49
+ --preview-area-color: #E5E7EB;
50
+ --dragover-border-color: #4F46E5;
51
+ --scrollbar-thumb-hover: #a0a0a0;
52
+ --dragover-background-color: #E0E7FF;
53
+ --jsonview-header-color: #F3F4F6;
54
+ --jsonview-border-color: #D1D5DB;
55
+ --jsonview-text-color: #111827;
56
+ --topbar-icon-pressed: #3730A3;
57
+ --hint-text-color: #6b7280;
58
+ --dashboard-heading-color: #374151;
59
+ --dashboard-subtitle-color: #4B5563;
60
+ --panel-background: rgb(var(--sf-color-background));
61
+ }
62
+
63
+ [data-theme="dark"] {
64
+ /* Dark mode colors */
65
+ --sf-drag-clone: 255, 255, 255, .1;
66
+ --sf-color-background: 28, 27, 31;
67
+ --form-container-bg: rgb(25, 25, 25);
68
+ --preview-area-color: rgb(14, 14, 14);
69
+ --dragover-border-color: rgba(99, 102, 241);
70
+ --sf-bg-color: #1e1e1e;;
71
+ --dragover-background-color: #3b466a;
72
+ --sf-color-on-background: 230, 225, 229;
73
+ --jsonview-header-color: rgb(25, 25, 25);
74
+ --jsonview-text-color: #E6E1E5;
75
+ --jsonview-border-color: rgb(var(--sf-color-line-color));
76
+ --sf-color-line-color: 73, 69, 78;
77
+ --scrollbar-thumb-hover: #6b7280;
78
+ --sf-color-surface: 28, 27, 31;
79
+ --sf-color-on-surface: 230, 225, 229;
80
+ --sf-color-surface-variant: 73, 69, 78;
81
+ --sf-color-on-surface-variant: 202, 196, 208;
82
+ --anchor-highlight-color: #AAAAFC;
83
+ --panel-background: #1d2432;
84
+ --dashboard-heading-color: #bcbdc1;
85
+ --button-primary-bg: #ece8f7;
86
+ }
87
+
88
+ .contentSection {
89
+ margin-top: var(--topbar-height);
90
+ display: flex;
91
+ flex: 1;
92
+ overflow: hidden;
93
+ transition: all 0.3s ease-in-out;
94
+ }
95
+
96
+ .brand-icon>svg {
97
+ vertical-align: middle;
98
+ }
99
+
100
+ #layoutroot .topbar {
101
+ display: flex;
102
+ height: var(--topbar-height);
103
+ border-bottom: 1px solid rgb(var(--sf-color-line-color));
104
+ position: fixed;
105
+ width: 100%;
106
+ z-index: 100002;
107
+ }
108
+
109
+ #layoutroot .brand-section {
110
+ display: flex;
111
+ align-items: center;
112
+ }
113
+
114
+ #layoutroot .brand-section>* {
115
+ margin-right: 0.5rem;
116
+ }
117
+
118
+ #layoutroot .brand-info {
119
+ display: flex;
120
+ flex-direction: row;
121
+ align-items: center;
122
+ }
123
+
124
+ #layoutroot .brand-info-mb {
125
+ display: flex;
126
+ flex-direction: column;
127
+ padding-left: 4px;
128
+ }
129
+
130
+ #layoutroot .brand-icon {
131
+ margin-top: -2px;
132
+ fill: rgb(var(--sf-color-on-background));
133
+ }
134
+
135
+ #layoutroot .brand-name {
136
+ font-size: 17px;
137
+ font-weight: 500;
138
+ line-height: 20px;
139
+ color: rgb(var(--sf-color-on-background));
140
+ padding-left: 5px;
141
+ }
142
+
143
+ #layoutroot .brand-subtitle {
144
+ font-weight: 400;
145
+ font-size: 0.6875rem;
146
+ line-height: 16px;
147
+ letter-spacing: 0.2px;
148
+ padding-left: 5px;
149
+ color: rgb(var(--sf-color-on-background));
150
+ }
151
+
152
+ #layoutroot .right-section {
153
+ display: flex;
154
+ align-items: center;
155
+ }
156
+
157
+ #layoutroot .nav-links {
158
+ display: flex;
159
+ }
160
+
161
+ #layoutroot .action-button {
162
+ display: flex;
163
+ align-items: center;
164
+ }
165
+
166
+ #layoutroot .icon-button {
167
+ height: 2rem;
168
+ width: 2rem;
169
+ border-radius: 50px;
170
+ padding: 0.375rem;
171
+ margin-left: 0.5rem;
172
+ cursor: pointer;
173
+ transition: background-color 0.2s, color 0.2s;
174
+ display: flex;
175
+ align-items: center;
176
+ justify-content: center;
177
+ }
178
+
179
+ #layoutroot .e-btn.active {
180
+ background-color: var(--topbar-icon-pressed);
181
+ }
182
+
183
+ /* Theme toggle button styles */
184
+ #layoutroot .theme-toggle {
185
+ display: flex;
186
+ align-items: center;
187
+ gap: 0.375rem;
188
+ border-radius: 4px;
189
+ }
190
+
191
+ #layoutroot .theme-toggle:hover {
192
+ border-color: var(--button-primary-bg);
193
+ opacity: 0.9;
194
+ }
195
+
196
+ #layoutroot .component-searcher {
197
+ margin: 0;
198
+ border-color: rgb(var(--sf-color-line-color));
199
+ }
200
+
201
+ .left-pane-toggle.e-btn {
202
+ position: absolute;
203
+ background: var(--form-container-bg) !important;
204
+ top: calc(2.6 * var(--topbar-height));
205
+ z-index: 999;
206
+ }
207
+
208
+ .left-pane-toggle.e-btn.expanded {
209
+ border-radius: 50%;
210
+ left: calc(var(--sidebar-width) - 18px);
211
+ transition: left .5s ease-in-out;
212
+ }
213
+
214
+ .e-rtl .left-pane-toggle.e-btn.expanded {
215
+ right: calc(var(--sidebar-width) - 18px);
216
+ left: unset;
217
+ }
218
+
219
+ .left-pane-toggle.e-btn.collapsed {
220
+ border-top-right-radius: 32px;
221
+ border-bottom-right-radius: 32px;
222
+ left: 1px;
223
+ transition: left .5s ease-in-out;
224
+ }
225
+
226
+ .e-rtl .left-pane-toggle.e-btn.collapsed {
227
+ border-top-left-radius: 32px;
228
+ border-bottom-left-radius: 32px;
229
+ border-top-right-radius: unset;
230
+ border-bottom-right-radius: unset;
231
+ right: 1px;
232
+ left: unset;
233
+ }
234
+
235
+ .right-pane-toggle.e-btn {
236
+ position: absolute;
237
+ background: var(--form-container-bg) !important;
238
+ top: calc(2.6 * var(--topbar-height));
239
+ z-index: 1001;
240
+ }
241
+
242
+ .builder-container {
243
+ container-type: inline-size;
244
+ }
245
+
246
+ .builder-container:has(.conditions-editor-dialog.e-popup-open) .right-pane-toggle {
247
+ display: none;
248
+ }
249
+
250
+
251
+ .small-screen .conditions-editor-dialog.e-popup-open .e-dlg-content {
252
+ width: 990px !important;
253
+ overflow-x: auto !important;
254
+ }
255
+
256
+ .small-screen .conditions-editor-dialog.e-popup-open .e-dlg-header-content {
257
+ width: 990px !important;
258
+ }
259
+
260
+ .small-screen .conditions-editor-dialog.e-popup-open .e-footer-content {
261
+ width: 990px !important;
262
+ }
263
+
264
+ .right-pane-toggle.e-btn.expanded {
265
+ right: calc(var(--ridesidebar-width) - 18px);
266
+ border-radius: 50%;
267
+ transition: right .38s ease-in-out;
268
+ }
269
+
270
+ .e-rtl .right-pane-toggle.e-btn.expanded {
271
+ left: calc(var(--ridesidebar-width) - 18px);
272
+ right: unset;
273
+ }
274
+
275
+ .right-pane-toggle.e-btn.collapsed {
276
+ border-top-left-radius: 32px;
277
+ border-bottom-left-radius: 32px;
278
+ right: 1px;
279
+ transition: right .5s ease-in-out;
280
+ }
281
+
282
+ .e-rtl .right-pane-toggle.e-btn.collapsed {
283
+ border-top-right-radius: 32px;
284
+ border-bottom-right-radius: 32px;
285
+ border-top-left-radius: unset;
286
+ border-bottom-left-radius: unset;
287
+ left: 1px;
288
+ right: unset;
289
+ }
290
+
291
+ .right-sidebar {
292
+ margin-top: 48px;
293
+ transition: transform .5s;
294
+ z-index: 999;
295
+ position: absolute;
296
+ overflow: hidden;
297
+ width: var(--ridesidebar-width);
298
+ min-width: var(--ridesidebar-width);
299
+ border-left: 1px solid rgb(var(--sf-color-line-color));
300
+ height: calc(100dvh - var(--topbar-height) - 3rem);
301
+ padding: 0;
302
+ right: 0;
303
+ background-color: rgb(var(--sf-color-background));
304
+ }
305
+
306
+ .e-rtl .right-sidebar {
307
+ left: 0;
308
+ border-right: 1px solid rgb(var(--sf-color-line-color));
309
+ border-left: none;
310
+ right: unset;
311
+ }
312
+
313
+ .small-screen .right-sidebar {
314
+ z-index: 1000;
315
+ }
316
+
317
+ /* Hide sidebar when closed (no pending component) */
318
+ .right-sidebar.sidebar-closed {
319
+ transform: translateX(100%);
320
+ border-left: none;
321
+ width: 0;
322
+ }
323
+
324
+ .e-rtl .right-sidebar.sidebar-closed {
325
+ transform: translateX(-100%);
326
+ border-right: none;
327
+ border-left: initial;
328
+ width: 0;
329
+ }
330
+
331
+
332
+ .small-screen .right-sidebar.sidebar-closed {
333
+ display: none;
334
+ }
335
+
336
+ .builder-container.e-component {
337
+ border: 1px solid rgb(var(--sf-color-line-color));
338
+ }
339
+
340
+ .builder-container.e-component .right-sidebar{
341
+ height: 100%;
342
+ }
343
+
344
+
345
+ .builder-container.e-component .contentSection {
346
+ margin-top: unset;
347
+ }
348
+
349
+ .builder-container.e-component .main-header {
350
+ box-shadow: unset;
351
+ border-bottom: 1px solid rgb(var(--sf-color-line-color));
352
+ }
353
+
354
+ .builder-container.e-component .main-section {
355
+ height: 100%;
356
+ }
357
+
358
+ .builder-container.e-component .preview-main-section {
359
+ top: unset !important;
360
+ }
361
+
362
+ .builder-container.e-component .left-pane-toggle.e-btn {
363
+ top: calc(1.6 * var(--topbar-height));
364
+ }
365
+
366
+ .builder-container.e-component .right-pane-toggle.e-btn {
367
+ top: calc(1.6 * var(--topbar-height));
368
+ }
369
+
370
+ .main-section {
371
+ padding-right: calc(var(--ridesidebar-width));
372
+ flex: 1;
373
+ transition: padding-right 0.5s ease-in-out;
374
+ }
375
+
376
+ .e-rtl .main-section {
377
+ padding-left: calc(var(--ridesidebar-width));
378
+ padding-right: unset;
379
+ }
380
+
381
+ .small-screen .main-section {
382
+ padding-right: 0;
383
+ }
384
+
385
+ .e-rtl.small-screen .main-section {
386
+ padding-left: 0;
387
+ }
388
+
389
+ .main-section.right-collapsed {
390
+ padding-right: 0;
391
+ transition: padding-right 0.5s ease-in-out;
392
+ }
393
+
394
+ .e-rtl .main-section.right-collapsed {
395
+ padding-left: 0;
396
+ transition: padding-left 0.5s ease-in-out;
397
+ }
398
+
399
+ .form-dropzone {
400
+ width: 100%;
401
+ height: calc(90dvh - var(--topbar-height) - 6.7rem);
402
+ border-radius: 12px;
403
+ border: 1px dashed rgb(var(--sf-color-line-color));
404
+ display: flex;
405
+ justify-content: center;
406
+ align-items: center;
407
+ }
408
+
409
+ .builder-container.e-component .form-dropzone {
410
+ height: 100%;
411
+ }
412
+
413
+ .form-dropzone-content {
414
+ display: flex;
415
+ flex-direction: column;
416
+ align-items: center;
417
+ gap: 8px;
418
+ max-width: 274px;
419
+ text-align: center;
420
+ }
421
+
422
+ .dropzone-title {
423
+ font-size: 14px;
424
+ font-weight: 500;
425
+ line-height: 20px;
426
+ }
427
+
428
+ .dropzone-hint {
429
+ color: var(--hint-text-color);
430
+ font-size: 14px;
431
+ font-weight: 400;
432
+ line-height: 20px;
433
+ margin: 0;
434
+ }
435
+
436
+ .main-header {
437
+ position: absolute;
438
+ z-index: 1000;
439
+ left: 0;
440
+ width: 100%;
441
+ display: flex;
442
+ padding: 0rem 1.5rem;
443
+ min-height: 48px;
444
+ box-shadow: 0 8px 11px -6px rgba(0, 0, 0, 0.12);
445
+ background-color: var(--panel-background);
446
+ }
447
+
448
+ .builder-container:not(.e-component):not(:has(.preview-main-section)) .main-header {
449
+ margin-top: var(--topbar-height);
450
+ }
451
+
452
+ .small-screen .main-header {
453
+ padding: 0rem 0.5rem;
454
+ }
455
+
456
+ /* Left */
457
+ .main-header .left-section {
458
+ flex: 1;
459
+ display: flex;
460
+ align-items: center;
461
+ }
462
+
463
+ .small-screen .main-header .left-section {
464
+ flex: 0;
465
+ }
466
+
467
+ .small-screen .preview-main-section .main-header .left-section {
468
+ flex: 1;
469
+ }
470
+
471
+ .sidebar-header .tab.active {
472
+ border-bottom: 2px solid var(--color-sf-primary-bg-color);
473
+ color: var(--color-sf-primary-bg-color);
474
+ }
475
+
476
+ .editor-handle {
477
+ position: absolute;
478
+ display: flex;
479
+ justify-content: center;
480
+ align-items: center;
481
+ width: 100%;
482
+ height: 48px;
483
+ opacity: 1;
484
+ bottom: 10px;
485
+ padding-right: calc(var(--ridesidebar-width) + var(--ridesidebar-width));
486
+ border-radius: 6px;
487
+ transition: padding-right 0.5s ease-in-out;
488
+ }
489
+
490
+ .e-rtl .editor-handle {
491
+ padding-left: calc(var(--ridesidebar-width) + var(--ridesidebar-width));
492
+ padding-right: unset;
493
+ }
494
+
495
+ .e-rtl .conditions-editor-dialog.e-control {
496
+ top: unset !important;
497
+ left: unset !important;
498
+ }
499
+
500
+ .editor-handle.right-collapsed,
501
+ .editor-handle.left-collapsed {
502
+ padding-right: calc(var(--ridesidebar-width));
503
+ transition: padding-right 0.5s ease-in-out;
504
+ }
505
+
506
+ .e-rtl .editor-handle.right-collapsed,
507
+ .e-rtl .editor-handle.left-collapsed {
508
+ padding-left: calc(var(--ridesidebar-width));
509
+ padding-right: unset;
510
+ transition: padding-left 0.5s ease-in-out;
511
+ }
512
+
513
+ .main-section:has(.preview-main-section) .editor-handle.right-collapsed:not(.left-collapsed),
514
+ .main-section:has(.preview-main-section) .editor-handle.left-collapsed:not(.right-collapsed) {
515
+ padding-right: calc(var(--ridesidebar-width) + var(--ridesidebar-width));
516
+ transition: padding-right 0.5s ease-in-out;
517
+ }
518
+
519
+ .e-rtl .main-section:has(.preview-main-section) .editor-handle.right-collapsed:not(.left-collapsed),
520
+ .e-rtl .main-section:has(.preview-main-section) .editor-handle.left-collapsed:not(.right-collapsed) {
521
+ padding-left: calc(var(--ridesidebar-width) + var(--ridesidebar-width));
522
+ transition: padding-left 0.5s ease-in-out;
523
+ }
524
+
525
+ .e-rtl .main-section:has(.preview-main-section) .editor-handle.right-collapsed:not(.left-collapsed) {
526
+ padding-right: unset;
527
+ }
528
+
529
+ .editor-handle.left-collapsed.right-collapsed {
530
+ padding-right: calc(var(--ridesidebar-width) - var(--ridesidebar-width));
531
+ transition: padding-right 0.5s ease-in-out;
532
+ }
533
+
534
+ .e-rtl .editor-handle.left-collapsed.right-collapsed {
535
+ padding-left: calc(var(--ridesidebar-width) - var(--ridesidebar-width));
536
+ transition: padding-left 0.5s ease-in-out;
537
+ }
538
+
539
+ .small-screen .editor-handle {
540
+ padding-right: unset;
541
+ transition: padding-right 0.5s ease-in-out;
542
+ }
543
+
544
+ .add-field-message .e-msg-content {
545
+ font-size: 12px !important;
546
+ line-height: 16px !important;
547
+ }
548
+
549
+ .e-toolbar-active .e-btn {
550
+ background: var(--color-sf-primary-bg-color) !important;
551
+ border-color: var(--color-sf-primary-border-color) !important;
552
+ color: var(--color-sf-primary-text-color) !important;
553
+ }
554
+
555
+ .e-toolbar-active .e-btn-icon.e-icons,
556
+ .e-toolbar-active .e-tbar-btn-text {
557
+ color: var(--color-sf-primary-text-color) !important;
558
+ }
559
+
560
+ /* Right */
561
+ .main-header .right-section {
562
+ flex: 1;
563
+ display: flex;
564
+ align-items: center;
565
+ justify-content: flex-end;
566
+ gap: 6px;
567
+ }
568
+
569
+ .main-header .separator {
570
+ width: 1px;
571
+ height: 22px;
572
+ background: var(--jsonview-border-color);
573
+ margin: 0 4px;
574
+ }
575
+
576
+ .builder-container {
577
+ display: flex;
578
+ flex-direction: column;
579
+ width: 100%;
580
+ height: 100%;
581
+ overflow: hidden;
582
+ }
583
+
584
+ .theme-switcher .e-dropdown-btn {
585
+ height: 38px !important;
586
+ padding-left: 10px !important;
587
+ padding-right: 10px !important;
588
+ }
589
+
590
+ *,
591
+ ::after,
592
+ ::before {
593
+ box-sizing: border-box;
594
+ }
595
+
596
+ label {
597
+ font-size: var(--sf-font-size-sm);
598
+ }
599
+
600
+ .builder-container {
601
+ position: relative;
602
+ font-family: var(--sf-font-family);
603
+ letter-spacing: var(--sf-letter-spacing);
604
+ font-size: var(--sf-font-size);
605
+ /* Base font size */
606
+ margin: 0;
607
+ padding: 0;
608
+ font-weight: 400;
609
+ line-height: 1.5;
610
+ color: var(--jsonview-text-color);
611
+ background-color: rgb(var(--sf-color-background));
612
+ -webkit-text-size-adjust: 100%;
613
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
614
+ }
615
+
616
+ .builder-container a {
617
+ color: inherit;
618
+ }
619
+
620
+ .builder-container hr {
621
+ border: none;
622
+ height: 0.5px;
623
+ background-color: rgb(var(--sf-color-line-color));
624
+ margin: 0;
625
+ }
626
+
627
+ .form-title h1{
628
+ margin-top: 0;
629
+ }
630
+
631
+ .form-title {
632
+ text-align: center;
633
+ }
634
+
635
+ .fb-scrollbar {
636
+ scrollbar-color: var(--scrollbar-thumb-hover) rgb(var(--sf-color-background));
637
+ }
638
+
639
+ .small-screen * {
640
+ transition: none !important;
641
+ }
642
+
643
+ @container (max-width: 820px) {
644
+ .sidebar-overlay {
645
+ top: calc(var(--topbar-height) + var(--topbar-height));
646
+ background-color: rgba(var(--sf-color-scrim), .5);
647
+ z-index: 1000;
648
+ position: fixed;
649
+ bottom: 0;
650
+ left: 0;
651
+ right: 0;
652
+ }
653
+
654
+ .builder-container.e-component .sidebar-overlay {
655
+ top: var(--topbar-height);
656
+ position: absolute;
657
+ }
658
+ }