@nextsparkjs/core 0.1.0-beta.67 → 0.1.0-beta.68
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.
- package/dist/components/dashboard/block-editor/block-picker.d.ts +7 -2
- package/dist/components/dashboard/block-editor/block-picker.d.ts.map +1 -1
- package/dist/components/dashboard/block-editor/block-picker.js +27 -20
- package/dist/components/dashboard/block-editor/block-preview-canvas.d.ts.map +1 -1
- package/dist/components/dashboard/block-editor/block-preview-canvas.js +37 -37
- package/dist/components/dashboard/block-editor/block-settings-panel.js +3 -3
- package/dist/components/dashboard/block-editor/builder-editor-view.d.ts.map +1 -1
- package/dist/components/dashboard/block-editor/builder-editor-view.js +124 -82
- package/dist/components/dashboard/block-editor/config-panel.d.ts +18 -0
- package/dist/components/dashboard/block-editor/config-panel.d.ts.map +1 -0
- package/dist/components/dashboard/block-editor/config-panel.js +413 -0
- package/dist/components/dashboard/block-editor/floating-block-toolbar.js +1 -1
- package/dist/components/dashboard/block-editor/pattern-card.js +1 -1
- package/dist/components/dashboard/block-editor/pattern-reference-preview.js +1 -1
- package/dist/components/dashboard/block-editor/sortable-block.js +1 -1
- package/dist/components/dashboard/block-editor/tree-view-node.d.ts +11 -0
- package/dist/components/dashboard/block-editor/tree-view-node.d.ts.map +1 -0
- package/dist/components/dashboard/block-editor/tree-view-node.js +91 -0
- package/dist/components/dashboard/block-editor/tree-view.d.ts +17 -0
- package/dist/components/dashboard/block-editor/tree-view.d.ts.map +1 -0
- package/dist/components/dashboard/block-editor/tree-view.js +125 -0
- package/dist/components/dashboard/block-editor/viewport-toggle.d.ts +10 -0
- package/dist/components/dashboard/block-editor/viewport-toggle.d.ts.map +1 -0
- package/dist/components/dashboard/block-editor/viewport-toggle.js +55 -0
- package/dist/components/public/pageBuilder/PageRenderer.d.ts.map +1 -1
- package/dist/components/public/pageBuilder/PageRenderer.js +10 -1
- package/dist/components/ui/dynamic-icon.d.ts +12 -0
- package/dist/components/ui/dynamic-icon.d.ts.map +1 -0
- package/dist/components/ui/dynamic-icon.js +11 -0
- package/dist/lib/selectors/core-selectors.d.ts +98 -44
- package/dist/lib/selectors/core-selectors.d.ts.map +1 -1
- package/dist/lib/selectors/domains/block-editor.selectors.d.ts +136 -71
- package/dist/lib/selectors/domains/block-editor.selectors.d.ts.map +1 -1
- package/dist/lib/selectors/domains/block-editor.selectors.js +130 -60
- package/dist/lib/selectors/selectors.d.ts +196 -88
- package/dist/lib/selectors/selectors.d.ts.map +1 -1
- package/dist/messages/en/admin.json +15 -1
- package/dist/messages/en/index.d.ts +14 -0
- package/dist/messages/en/index.d.ts.map +1 -1
- package/dist/messages/es/admin.json +16 -1
- package/dist/messages/es/index.d.ts +15 -0
- package/dist/messages/es/index.d.ts.map +1 -1
- package/dist/presets/blocks/cta-section/component.tsx +4 -4
- package/dist/presets/blocks/features-grid/component.tsx +5 -5
- package/dist/presets/blocks/hero/component.tsx +2 -2
- package/dist/presets/blocks/testimonials/component.tsx +4 -4
- package/dist/presets/blocks/text-content/component.tsx +2 -2
- package/dist/presets/theme/blocks/hero/component.tsx +2 -2
- package/dist/presets/theme/tests/cypress/src/core/BlockEditorBasePOM.ts +123 -24
- package/dist/styles/classes.json +9 -2
- package/dist/styles/ui.css +1 -1
- package/dist/templates/features/blog/blocks/post-content/component.tsx +2 -2
- package/dist/templates/features/pages/blocks/hero/component.tsx +2 -2
- package/dist/templates/next.config.mjs +5 -3
- package/package.json +5 -4
- package/templates/features/blog/blocks/post-content/component.tsx +2 -2
- package/templates/features/pages/blocks/hero/component.tsx +2 -2
- package/templates/next.config.mjs +5 -3
|
@@ -71,13 +71,13 @@ export function HeroBlock({
|
|
|
71
71
|
{/* Content */}
|
|
72
72
|
<div className="container relative z-10 mx-auto max-w-4xl text-center">
|
|
73
73
|
{title && (
|
|
74
|
-
<h1 className="mb-6 text-5xl font-bold leading-tight md:text-6xl lg:text-7xl">
|
|
74
|
+
<h1 className="mb-6 text-5xl font-bold leading-tight @md:text-6xl @lg:text-7xl">
|
|
75
75
|
{title}
|
|
76
76
|
</h1>
|
|
77
77
|
)}
|
|
78
78
|
|
|
79
79
|
{displayContent && (
|
|
80
|
-
<p className="mb-8 text-xl md:text-2xl opacity-90">
|
|
80
|
+
<p className="mb-8 text-xl @md:text-2xl opacity-90">
|
|
81
81
|
{displayContent}
|
|
82
82
|
</p>
|
|
83
83
|
)}
|
|
@@ -30,13 +30,13 @@ export function TestimonialsBlock({
|
|
|
30
30
|
}: TestimonialsBlockProps) {
|
|
31
31
|
// Build column classes based on columns prop
|
|
32
32
|
const columnClasses: Record<string, string> = {
|
|
33
|
-
'2': 'md:grid-cols-2',
|
|
34
|
-
'3': 'md:grid-cols-2 lg:grid-cols-3',
|
|
33
|
+
'2': '@md:grid-cols-2',
|
|
34
|
+
'3': '@md:grid-cols-2 @lg:grid-cols-3',
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
// Build section classes with background and custom className
|
|
38
38
|
const sectionClasses = buildSectionClasses(
|
|
39
|
-
'py-16 px-4 md:py-24',
|
|
39
|
+
'py-16 px-4 @md:py-24',
|
|
40
40
|
{ backgroundColor, className }
|
|
41
41
|
)
|
|
42
42
|
|
|
@@ -50,7 +50,7 @@ export function TestimonialsBlock({
|
|
|
50
50
|
{(title || content) && (
|
|
51
51
|
<div className="mb-12 text-center">
|
|
52
52
|
{title && (
|
|
53
|
-
<h2 className="mb-4 text-4xl font-bold md:text-5xl">
|
|
53
|
+
<h2 className="mb-4 text-4xl font-bold @md:text-5xl">
|
|
54
54
|
{title}
|
|
55
55
|
</h2>
|
|
56
56
|
)}
|
|
@@ -43,7 +43,7 @@ export function TextContentBlock({
|
|
|
43
43
|
|
|
44
44
|
// Build section classes with background and custom className
|
|
45
45
|
const sectionClasses = buildSectionClasses(
|
|
46
|
-
'py-16 px-4 md:py-24',
|
|
46
|
+
'py-16 px-4 @md:py-24',
|
|
47
47
|
{ backgroundColor, className }
|
|
48
48
|
)
|
|
49
49
|
|
|
@@ -57,7 +57,7 @@ export function TextContentBlock({
|
|
|
57
57
|
maxWidthClasses[maxWidth],
|
|
58
58
|
alignmentClasses[alignment]
|
|
59
59
|
)}>
|
|
60
|
-
<h2 className="text-3xl font-bold md:text-4xl">
|
|
60
|
+
<h2 className="text-3xl font-bold @md:text-4xl">
|
|
61
61
|
{title}
|
|
62
62
|
</h2>
|
|
63
63
|
</div>
|
|
@@ -71,13 +71,13 @@ export function HeroBlock({
|
|
|
71
71
|
{/* Content */}
|
|
72
72
|
<div className="container relative z-10 mx-auto max-w-4xl text-center">
|
|
73
73
|
{title && (
|
|
74
|
-
<h1 className="mb-6 text-5xl font-bold leading-tight md:text-6xl lg:text-7xl">
|
|
74
|
+
<h1 className="mb-6 text-5xl font-bold leading-tight @md:text-6xl @lg:text-7xl">
|
|
75
75
|
{title}
|
|
76
76
|
</h1>
|
|
77
77
|
)}
|
|
78
78
|
|
|
79
79
|
{displayContent && (
|
|
80
|
-
<p className="mb-8 text-xl md:text-2xl opacity-90">
|
|
80
|
+
<p className="mb-8 text-xl @md:text-2xl opacity-90">
|
|
81
81
|
{displayContent}
|
|
82
82
|
</p>
|
|
83
83
|
)}
|
|
@@ -65,8 +65,10 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
65
65
|
slugInput: cySelector('blockEditor.header.slugInput'),
|
|
66
66
|
externalLink: cySelector('blockEditor.header.externalLink'),
|
|
67
67
|
viewModeToggle: cySelector('blockEditor.header.viewToggle'),
|
|
68
|
-
viewEditor: cySelector('blockEditor.header.viewEditor'),
|
|
69
68
|
viewPreview: cySelector('blockEditor.header.viewPreview'),
|
|
69
|
+
viewSettings: cySelector('blockEditor.header.viewSettings'),
|
|
70
|
+
/** @deprecated Use viewSettings instead - v2.0 renamed viewEditor to viewSettings */
|
|
71
|
+
viewEditor: cySelector('blockEditor.header.viewSettings'),
|
|
70
72
|
saveButton: cySelector('blockEditor.header.saveButton'),
|
|
71
73
|
publishButton: cySelector('blockEditor.header.publishButton'),
|
|
72
74
|
settingsButton: cySelector('blockEditor.header.settingsButton'),
|
|
@@ -85,10 +87,15 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
85
87
|
// BLOCK PICKER - Left column "Bloques" tab
|
|
86
88
|
// =========================================================================
|
|
87
89
|
blockPicker: cySelector('blockEditor.blockPicker.container'),
|
|
88
|
-
// Tabs
|
|
90
|
+
// Tabs (v2.0: Blocks | Patterns | Layout)
|
|
89
91
|
tabBlocks: cySelector('blockEditor.blockPicker.tabBlocks'),
|
|
90
|
-
tabConfig: cySelector('blockEditor.blockPicker.tabConfig'),
|
|
91
92
|
tabIndicator: cySelector('blockEditor.blockPicker.tabIndicator'),
|
|
93
|
+
/**
|
|
94
|
+
* @deprecated tabConfig no longer exists in v2.0.
|
|
95
|
+
* Entity fields moved to Settings mode (viewSettings) in center column.
|
|
96
|
+
* Use tabLayout for tree view, or viewSettings for entity config.
|
|
97
|
+
*/
|
|
98
|
+
tabConfig: cySelector('blockEditor.blockPicker.tabLayout'),
|
|
92
99
|
// Search
|
|
93
100
|
searchWrapper: cySelector('blockEditor.blockPicker.searchWrapper'),
|
|
94
101
|
searchIcon: cySelector('blockEditor.blockPicker.searchIcon'),
|
|
@@ -104,13 +111,68 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
104
111
|
blockName: (slug: string) => cySelector('blockEditor.blockPicker.blockName', { slug }),
|
|
105
112
|
addBlock: (slug: string) => cySelector('blockEditor.blockPicker.addButton', { slug }),
|
|
106
113
|
blockPickerEmpty: cySelector('blockEditor.blockPicker.empty'),
|
|
114
|
+
// Generic selector for counting all categories
|
|
115
|
+
categoryGeneric: '[data-cy^="block-picker-category-"]',
|
|
107
116
|
|
|
108
117
|
// =========================================================================
|
|
109
|
-
//
|
|
118
|
+
// PATTERNS TAB (in block picker)
|
|
110
119
|
// =========================================================================
|
|
111
|
-
|
|
120
|
+
tabPatterns: cySelector('blockEditor.blockPicker.tabPatterns'),
|
|
121
|
+
patternsSearch: cySelector('blockEditor.blockPicker.patternsSearch'),
|
|
122
|
+
patternsList: cySelector('blockEditor.blockPicker.patternsList'),
|
|
123
|
+
patternsEmpty: cySelector('blockEditor.blockPicker.patternsEmpty'),
|
|
124
|
+
// Pattern cards (dynamic)
|
|
125
|
+
patternCard: (id: string) =>
|
|
126
|
+
cySelector('blockEditor.blockPicker.patternCard', { id }),
|
|
127
|
+
patternCardIcon: (id: string) =>
|
|
128
|
+
cySelector('blockEditor.blockPicker.patternCardIcon', { id }),
|
|
129
|
+
patternCardTitle: (id: string) =>
|
|
130
|
+
cySelector('blockEditor.blockPicker.patternCardTitle', { id }),
|
|
131
|
+
patternCardDescription: (id: string) =>
|
|
132
|
+
cySelector('blockEditor.blockPicker.patternCardDescription', { id }),
|
|
133
|
+
patternCardInsertButton: (id: string) =>
|
|
134
|
+
cySelector('blockEditor.blockPicker.patternCardInsertButton', { id }),
|
|
135
|
+
// Generic selector for counting patterns
|
|
136
|
+
patternCardGeneric: '[data-cy^="block-picker-pattern-card-"]',
|
|
137
|
+
|
|
138
|
+
// =========================================================================
|
|
139
|
+
// TREE VIEW (Layout tab)
|
|
140
|
+
// =========================================================================
|
|
141
|
+
tabLayout: cySelector('blockEditor.blockPicker.tabLayout'),
|
|
142
|
+
treeView: cySelector('blockEditor.treeView.container'),
|
|
143
|
+
treeViewEmpty: cySelector('blockEditor.treeView.empty'),
|
|
144
|
+
treeNode: (id: string) => cySelector('blockEditor.treeView.node', { id }),
|
|
145
|
+
treeNodeIcon: (id: string) =>
|
|
146
|
+
cySelector('blockEditor.treeView.nodeIcon', { id }),
|
|
147
|
+
treeNodeName: (id: string) =>
|
|
148
|
+
cySelector('blockEditor.treeView.nodeName', { id }),
|
|
149
|
+
|
|
150
|
+
// =========================================================================
|
|
151
|
+
// CONFIG PANEL - Center column - Settings mode (v2.0)
|
|
152
|
+
// =========================================================================
|
|
153
|
+
configPanel: cySelector('blockEditor.configPanel.container'),
|
|
154
|
+
configPanelScroll: cySelector('blockEditor.configPanel.scroll'),
|
|
155
|
+
// Entity Fields Section (collapsible)
|
|
156
|
+
configEntitySection: cySelector('blockEditor.configPanel.entityFieldsSection.container'),
|
|
157
|
+
configEntityTrigger: cySelector('blockEditor.configPanel.entityFieldsSection.trigger'),
|
|
158
|
+
configEntityContent: cySelector('blockEditor.configPanel.entityFieldsSection.content'),
|
|
159
|
+
configEntityField: (name: string) =>
|
|
160
|
+
cySelector('blockEditor.configPanel.entityFieldsSection.field', { name }),
|
|
161
|
+
// SEO Section (collapsible) - v2.0 moved from entityMetaPanel
|
|
162
|
+
configSeoSection: cySelector('blockEditor.configPanel.seoMetaSection.container'),
|
|
163
|
+
configSeoTrigger: cySelector('blockEditor.configPanel.seoMetaSection.trigger'),
|
|
164
|
+
configSeoContent: cySelector('blockEditor.configPanel.seoMetaSection.content'),
|
|
165
|
+
configMetaTitle: cySelector('blockEditor.configPanel.seoMetaSection.metaTitle'),
|
|
166
|
+
configMetaDescription: cySelector('blockEditor.configPanel.seoMetaSection.metaDescription'),
|
|
167
|
+
|
|
168
|
+
// =========================================================================
|
|
169
|
+
// ENTITY FIELDS PANEL - DEPRECATED (moved to configPanel in v2.0)
|
|
170
|
+
// =========================================================================
|
|
171
|
+
/** @deprecated Use configEntitySection in Settings mode instead */
|
|
172
|
+
entityFieldsPanel: cySelector('blockEditor.configPanel.entityFieldsSection.container'),
|
|
173
|
+
/** @deprecated Use configEntityField instead */
|
|
112
174
|
entityField: (name: string) =>
|
|
113
|
-
cySelector('blockEditor.
|
|
175
|
+
cySelector('blockEditor.configPanel.entityFieldsSection.field', { name }),
|
|
114
176
|
entityCategoryList: cySelector('blockEditor.entityFieldsPanel.categoryList'),
|
|
115
177
|
entityCategory: (slug: string) =>
|
|
116
178
|
cySelector('blockEditor.entityFieldsPanel.categoryItem', { slug }),
|
|
@@ -154,9 +216,9 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
154
216
|
cySelector('blockEditor.previewCanvas.blockSelected', { id }),
|
|
155
217
|
// Generic selector for counting all preview blocks
|
|
156
218
|
previewBlockGeneric: '[data-cy^="preview-block-"]',
|
|
157
|
-
// Move buttons
|
|
158
|
-
moveUpBtn: (id: string) =>
|
|
159
|
-
moveDownBtn: (id: string) =>
|
|
219
|
+
// Move buttons
|
|
220
|
+
moveUpBtn: (id: string) => cySelector('blockEditor.previewCanvas.moveUp', { id }),
|
|
221
|
+
moveDownBtn: (id: string) => cySelector('blockEditor.previewCanvas.moveDown', { id }),
|
|
160
222
|
// Floating toolbar
|
|
161
223
|
floatingToolbar: (id: string) =>
|
|
162
224
|
cySelector('blockEditor.previewCanvas.floatingToolbar.container', { id }),
|
|
@@ -169,6 +231,22 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
169
231
|
floatingToolbarDelete: (id: string) =>
|
|
170
232
|
cySelector('blockEditor.previewCanvas.floatingToolbar.deleteBtn', { id }),
|
|
171
233
|
|
|
234
|
+
// =========================================================================
|
|
235
|
+
// PATTERN REFERENCE (in canvas)
|
|
236
|
+
// =========================================================================
|
|
237
|
+
patternReference: (ref: string) =>
|
|
238
|
+
cySelector('blockEditor.patternReference.container', { ref }),
|
|
239
|
+
patternReferenceBadge: (ref: string) =>
|
|
240
|
+
cySelector('blockEditor.patternReference.badge', { ref }),
|
|
241
|
+
patternReferenceRemove: (ref: string) =>
|
|
242
|
+
cySelector('blockEditor.patternReference.remove', { ref }),
|
|
243
|
+
patternReferenceLocked: (ref: string) =>
|
|
244
|
+
cySelector('blockEditor.patternReference.locked', { ref }),
|
|
245
|
+
patternReferenceEditLink: (ref: string) =>
|
|
246
|
+
cySelector('blockEditor.patternReference.editLink', { ref }),
|
|
247
|
+
// Generic selector for counting pattern references
|
|
248
|
+
patternReferenceGeneric: '[data-cy^="pattern-reference-"]',
|
|
249
|
+
|
|
172
250
|
// =========================================================================
|
|
173
251
|
// ENTITY META PANEL - SEO and custom fields
|
|
174
252
|
// =========================================================================
|
|
@@ -214,8 +292,8 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
214
292
|
cySelector('blockEditor.blockPropertiesPanel.form.field', { name }),
|
|
215
293
|
fieldGroup: (id: string) =>
|
|
216
294
|
cySelector('blockEditor.blockPropertiesPanel.form.fieldGroup', { id }),
|
|
217
|
-
// Reset props button
|
|
218
|
-
resetPropsBtn: '
|
|
295
|
+
// Reset props button
|
|
296
|
+
resetPropsBtn: cySelector('blockEditor.blockPropertiesPanel.resetPropsBtn'),
|
|
219
297
|
// Array field
|
|
220
298
|
arrayFieldContainer: (name: string) =>
|
|
221
299
|
cySelector('blockEditor.blockPropertiesPanel.form.arrayField.container', { name }),
|
|
@@ -231,6 +309,12 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
231
309
|
cySelector('blockEditor.blockPropertiesPanel.form.arrayField.itemRemove', { name, index }),
|
|
232
310
|
arrayFieldAdd: (name: string) =>
|
|
233
311
|
cySelector('blockEditor.blockPropertiesPanel.form.arrayField.addButton', { name }),
|
|
312
|
+
// Generic selectors for array fields (for counting/prefix matching)
|
|
313
|
+
arrayFieldGeneric: '[data-cy^="block-array-"]',
|
|
314
|
+
arrayFieldAddGeneric: '[data-cy$="-add"][data-cy^="block-array-"]',
|
|
315
|
+
arrayFieldRemoveGeneric: '[data-cy$="-remove"][data-cy^="block-array-"]',
|
|
316
|
+
arrayFieldUpGeneric: '[data-cy$="-up"][data-cy^="block-array-"]',
|
|
317
|
+
arrayFieldDownGeneric: '[data-cy$="-down"][data-cy^="block-array-"]',
|
|
234
318
|
|
|
235
319
|
// =========================================================================
|
|
236
320
|
// LEGACY ALIASES (for backward compatibility - will be removed)
|
|
@@ -347,20 +431,24 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
347
431
|
return this
|
|
348
432
|
}
|
|
349
433
|
|
|
434
|
+
/**
|
|
435
|
+
* Switch to Settings mode (v2.0 - entity fields, SEO, etc.)
|
|
436
|
+
* In v2.0, this shows the configPanel in the center column.
|
|
437
|
+
*/
|
|
438
|
+
switchToSettingsMode() {
|
|
439
|
+
cy.get(this.editorSelectors.viewSettings).click()
|
|
440
|
+
return this
|
|
441
|
+
}
|
|
442
|
+
|
|
350
443
|
/**
|
|
351
444
|
* Switch to Layout/Editor mode
|
|
445
|
+
* @deprecated In v2.0, Layout is now a tab in BlockPicker (tabLayout), not a view mode.
|
|
446
|
+
* Use selectLayoutTab() for tree view, or switchToSettingsMode() for entity config.
|
|
352
447
|
*/
|
|
353
448
|
switchToLayoutMode() {
|
|
354
|
-
|
|
355
|
-
//
|
|
356
|
-
cy.get(
|
|
357
|
-
// Either the canvas with blocks or the empty state should exist
|
|
358
|
-
if ($body.find(this.editorSelectors.layoutCanvas).length > 0) {
|
|
359
|
-
cy.get(this.editorSelectors.layoutCanvas, { timeout: 5000 }).should('exist')
|
|
360
|
-
} else {
|
|
361
|
-
cy.get(this.editorSelectors.layoutCanvasEmpty, { timeout: 5000 }).should('exist')
|
|
362
|
-
}
|
|
363
|
-
})
|
|
449
|
+
// v2.0: "Layout" mode is now accessed via the Layout tab in left sidebar
|
|
450
|
+
// This method now clicks the Layout tab for backward compatibility
|
|
451
|
+
cy.get(this.editorSelectors.tabLayout).click()
|
|
364
452
|
return this
|
|
365
453
|
}
|
|
366
454
|
|
|
@@ -382,9 +470,20 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
382
470
|
|
|
383
471
|
/**
|
|
384
472
|
* Select Config/Fields tab in left sidebar
|
|
473
|
+
* @deprecated In v2.0, entity fields moved to Settings mode (center column).
|
|
474
|
+
* Use switchToSettingsMode() for entity config/fields.
|
|
385
475
|
*/
|
|
386
476
|
selectConfigTab() {
|
|
387
|
-
|
|
477
|
+
// v2.0: Config is now accessed via Settings mode, not a tab
|
|
478
|
+
cy.get(this.editorSelectors.viewSettings).click()
|
|
479
|
+
return this
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
/**
|
|
483
|
+
* Select Layout tab in left sidebar (tree view)
|
|
484
|
+
*/
|
|
485
|
+
selectLayoutTab() {
|
|
486
|
+
cy.get(this.editorSelectors.tabLayout).click()
|
|
388
487
|
return this
|
|
389
488
|
}
|
|
390
489
|
|
|
@@ -712,7 +811,7 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
712
811
|
* Assert block count in canvas
|
|
713
812
|
*/
|
|
714
813
|
assertBlockCount(count: number) {
|
|
715
|
-
cy.get(
|
|
814
|
+
cy.get(this.editorSelectors.sortableBlockGeneric).should('have.length', count)
|
|
716
815
|
return this
|
|
717
816
|
}
|
|
718
817
|
|
|
@@ -720,7 +819,7 @@ export abstract class BlockEditorBasePOM extends BasePOM {
|
|
|
720
819
|
* Assert preview block count
|
|
721
820
|
*/
|
|
722
821
|
assertPreviewBlockCount(count: number) {
|
|
723
|
-
cy.get(
|
|
822
|
+
cy.get(this.editorSelectors.previewBlockGeneric).should('have.length', count)
|
|
724
823
|
return this
|
|
725
824
|
}
|
|
726
825
|
|
package/dist/styles/classes.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generated": "2026-01-
|
|
3
|
-
"totalClasses":
|
|
2
|
+
"generated": "2026-01-24T00:12:50.267Z",
|
|
3
|
+
"totalClasses": 1054,
|
|
4
4
|
"classes": [
|
|
5
5
|
"!text-2xl",
|
|
6
6
|
"''",
|
|
@@ -56,6 +56,7 @@
|
|
|
56
56
|
":",
|
|
57
57
|
"===",
|
|
58
58
|
"?",
|
|
59
|
+
"@container",
|
|
59
60
|
"Fifth",
|
|
60
61
|
"First",
|
|
61
62
|
"Fourth",
|
|
@@ -480,6 +481,7 @@
|
|
|
480
481
|
"hover:bg-muted/30",
|
|
481
482
|
"hover:bg-muted/50",
|
|
482
483
|
"hover:bg-muted/70",
|
|
484
|
+
"hover:bg-muted/80",
|
|
483
485
|
"hover:bg-primary",
|
|
484
486
|
"hover:bg-primary-foreground/20",
|
|
485
487
|
"hover:bg-primary/20",
|
|
@@ -918,6 +920,7 @@
|
|
|
918
920
|
"text-left",
|
|
919
921
|
"text-lg",
|
|
920
922
|
"text-muted-foreground",
|
|
923
|
+
"text-muted-foreground/30",
|
|
921
924
|
"text-muted-foreground/50",
|
|
922
925
|
"text-muted-foreground/70",
|
|
923
926
|
"text-orange-600",
|
|
@@ -967,6 +970,10 @@
|
|
|
967
970
|
"tracking-widest",
|
|
968
971
|
"transform",
|
|
969
972
|
"transition",
|
|
973
|
+
"transition-[border-color,box-shadow]",
|
|
974
|
+
"transition-[border-color]",
|
|
975
|
+
"transition-[width,padding]",
|
|
976
|
+
"transition-[width]",
|
|
970
977
|
"transition-all",
|
|
971
978
|
"transition-colors",
|
|
972
979
|
"transition-opacity",
|