@nextsparkjs/core 0.1.0-beta.67 → 0.1.0-beta.69
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/settings/layouts/SettingsSidebar.d.ts.map +1 -1
- package/dist/components/settings/layouts/SettingsSidebar.js +14 -0
- 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/components/ui/index.d.ts +7 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +7 -0
- package/dist/components/ui/skeleton-dashboard.d.ts +32 -0
- package/dist/components/ui/skeleton-dashboard.d.ts.map +1 -0
- package/dist/components/ui/skeleton-dashboard.js +69 -0
- package/dist/components/ui/skeleton-detail.d.ts.map +1 -1
- package/dist/components/ui/skeleton-detail.js +0 -1
- package/dist/components/ui/skeleton-features.d.ts +27 -0
- package/dist/components/ui/skeleton-features.d.ts.map +1 -0
- package/dist/components/ui/skeleton-features.js +90 -0
- package/dist/components/ui/skeleton-form.d.ts.map +1 -1
- package/dist/components/ui/skeleton-form.js +0 -1
- package/dist/components/ui/skeleton-list.d.ts.map +1 -1
- package/dist/components/ui/skeleton-list.js +0 -1
- package/dist/components/ui/skeleton-public.d.ts +26 -0
- package/dist/components/ui/skeleton-public.d.ts.map +1 -0
- package/dist/components/ui/skeleton-public.js +61 -0
- package/dist/components/ui/skeleton-settings.d.ts +54 -0
- package/dist/components/ui/skeleton-settings.d.ts.map +1 -0
- package/dist/components/ui/skeleton-settings.js +332 -0
- package/dist/components/ui/skeleton.d.ts +23 -1
- package/dist/components/ui/skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeleton.js +46 -2
- package/dist/contexts/TeamContext.d.ts +2 -0
- package/dist/contexts/TeamContext.d.ts.map +1 -1
- package/dist/contexts/TeamContext.js +78 -68
- package/dist/hooks/usePrefetch.d.ts +43 -0
- package/dist/hooks/usePrefetch.d.ts.map +1 -0
- package/dist/hooks/usePrefetch.js +56 -0
- package/dist/lib/actions/index.d.ts +27 -14
- package/dist/lib/actions/index.d.ts.map +1 -1
- package/dist/lib/actions/index.js +19 -1
- package/dist/lib/actions/team.actions.d.ts +107 -0
- package/dist/lib/actions/team.actions.d.ts.map +1 -0
- package/dist/lib/actions/team.actions.js +220 -0
- package/dist/lib/actions/user.actions.d.ts +99 -0
- package/dist/lib/actions/user.actions.d.ts.map +1 -0
- package/dist/lib/actions/user.actions.js +149 -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/de/devtools.json +4 -0
- package/dist/messages/de/index.d.ts +4 -0
- package/dist/messages/de/index.d.ts.map +1 -1
- package/dist/messages/en/admin.json +15 -1
- package/dist/messages/en/devtools.json +16 -0
- package/dist/messages/en/index.d.ts +30 -0
- package/dist/messages/en/index.d.ts.map +1 -1
- package/dist/messages/es/admin.json +16 -1
- package/dist/messages/es/devtools.json +4 -0
- package/dist/messages/es/index.d.ts +19 -0
- package/dist/messages/es/index.d.ts.map +1 -1
- package/dist/messages/fr/devtools.json +4 -0
- package/dist/messages/fr/index.d.ts +4 -0
- package/dist/messages/fr/index.d.ts.map +1 -1
- package/dist/messages/it/devtools.json +4 -0
- package/dist/messages/it/index.d.ts +4 -0
- package/dist/messages/it/index.d.ts.map +1 -1
- package/dist/messages/pt/devtools.json +4 -0
- package/dist/messages/pt/index.d.ts +4 -0
- package/dist/messages/pt/index.d.ts.map +1 -1
- package/dist/nextspark-entities.d.ts +59 -0
- 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 +22 -2
- package/dist/styles/ui.css +1 -1
- package/dist/templates/app/(public)/[...slug]/page.tsx +2 -1
- package/dist/templates/app/(public)/docs/[section]/[page]/page.tsx +1 -1
- package/dist/templates/app/api/devtools/config/entities/route.ts +2 -1
- package/dist/templates/app/api/user/plan-flags/route.ts +1 -1
- package/dist/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +4 -2
- package/dist/templates/app/dashboard/(main)/layout.tsx +2 -1
- package/dist/templates/app/dashboard/(main)/loading.tsx +5 -0
- package/dist/templates/app/dashboard/features/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/api-keys/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/billing/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/invoices/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/notifications/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/password/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/plans/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/profile/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/security/loading.tsx +5 -0
- package/dist/templates/app/dashboard/settings/teams/loading.tsx +5 -0
- package/dist/templates/app/devtools/config/page.tsx +1 -1
- package/dist/templates/app/devtools/page.tsx +1 -1
- package/dist/templates/app/devtools/tests/[[...path]]/page.tsx +1 -1
- package/dist/templates/contents/themes/starter/messages/de/common.json +4 -1
- package/dist/templates/contents/themes/starter/messages/de/index.ts +15 -0
- package/dist/templates/contents/themes/starter/messages/en/common.json +4 -1
- package/dist/templates/contents/themes/starter/messages/en/index.ts +15 -0
- package/dist/templates/contents/themes/starter/messages/es/common.json +4 -1
- package/dist/templates/contents/themes/starter/messages/es/index.ts +15 -0
- package/dist/templates/contents/themes/starter/messages/fr/common.json +4 -1
- package/dist/templates/contents/themes/starter/messages/fr/index.ts +15 -0
- package/dist/templates/contents/themes/starter/messages/it/common.json +4 -1
- package/dist/templates/contents/themes/starter/messages/it/index.ts +13 -0
- package/dist/templates/contents/themes/starter/messages/pt/common.json +4 -1
- package/dist/templates/contents/themes/starter/messages/pt/index.ts +13 -0
- package/dist/templates/contents/themes/starter/styles/globals.css +3 -1
- package/dist/templates/contents/themes/starter/templates/(dashboard)/analytics/loading.tsx +5 -0
- package/dist/templates/contents/themes/starter/templates/(public)/loading.tsx +5 -0
- 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 +10 -3
- package/dist/templates/{middleware.ts → proxy.ts} +5 -6
- package/globals.css +54 -0
- package/nextspark-entities.d.ts +59 -0
- package/package.json +18 -16
- package/scripts/build/registry/discovery/api-presets.mjs +20 -12
- package/scripts/build/registry/generators/api-presets-registry.mjs +18 -5
- package/scripts/build/registry/generators/block-registry.mjs +14 -3
- package/scripts/build/registry/generators/docs-registry.mjs +21 -3
- package/scripts/build/registry/generators/translation-registry.mjs +16 -7
- package/scripts/build/theme.mjs +2 -1
- package/templates/app/(public)/[...slug]/page.tsx +2 -1
- package/templates/app/(public)/docs/[section]/[page]/page.tsx +1 -1
- package/templates/app/api/auth/[...all]/route.ts +13 -5
- package/templates/app/api/devtools/config/entities/route.ts +2 -1
- package/templates/app/api/user/plan-flags/route.ts +1 -1
- package/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +4 -2
- package/templates/app/dashboard/(main)/layout.tsx +2 -1
- package/templates/app/dashboard/(main)/loading.tsx +5 -0
- package/templates/app/dashboard/features/loading.tsx +5 -0
- package/templates/app/dashboard/settings/api-keys/loading.tsx +5 -0
- package/templates/app/dashboard/settings/billing/loading.tsx +5 -0
- package/templates/app/dashboard/settings/invoices/loading.tsx +5 -0
- package/templates/app/dashboard/settings/loading.tsx +5 -0
- package/templates/app/dashboard/settings/notifications/loading.tsx +5 -0
- package/templates/app/dashboard/settings/password/loading.tsx +5 -0
- package/templates/app/dashboard/settings/plans/loading.tsx +5 -0
- package/templates/app/dashboard/settings/profile/loading.tsx +5 -0
- package/templates/app/dashboard/settings/security/loading.tsx +5 -0
- package/templates/app/dashboard/settings/teams/loading.tsx +5 -0
- package/templates/app/devtools/config/page.tsx +1 -1
- package/templates/app/devtools/page.tsx +1 -1
- package/templates/app/devtools/tests/[[...path]]/page.tsx +1 -1
- package/templates/contents/themes/starter/config/app.config.ts +8 -7
- package/templates/contents/themes/starter/messages/de/common.json +4 -1
- package/templates/contents/themes/starter/messages/de/index.ts +15 -0
- package/templates/contents/themes/starter/messages/en/common.json +4 -1
- package/templates/contents/themes/starter/messages/en/index.ts +15 -0
- package/templates/contents/themes/starter/messages/es/common.json +4 -1
- package/templates/contents/themes/starter/messages/es/index.ts +15 -0
- package/templates/contents/themes/starter/messages/fr/common.json +4 -1
- package/templates/contents/themes/starter/messages/fr/index.ts +15 -0
- package/templates/contents/themes/starter/messages/it/common.json +4 -1
- package/templates/contents/themes/starter/messages/it/index.ts +13 -0
- package/templates/contents/themes/starter/messages/pt/common.json +4 -1
- package/templates/contents/themes/starter/messages/pt/index.ts +13 -0
- package/templates/contents/themes/starter/styles/globals.css +3 -1
- package/templates/contents/themes/starter/templates/(dashboard)/analytics/loading.tsx +5 -0
- package/templates/contents/themes/starter/templates/(public)/loading.tsx +5 -0
- 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 +10 -3
- package/templates/pnpm-workspace.yaml +5 -0
- package/templates/{middleware.ts → proxy.ts} +5 -6
- package/tests/jest/setup.ts +5 -0
- package/dist/presets/plugin/.env.example.template +0 -19
|
@@ -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-25T21:32:53.384Z",
|
|
3
|
+
"totalClasses": 1067,
|
|
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",
|
|
@@ -521,6 +523,7 @@
|
|
|
521
523
|
"invisible",
|
|
522
524
|
"isRecentlyModified",
|
|
523
525
|
"italic",
|
|
526
|
+
"items-baseline",
|
|
524
527
|
"items-center",
|
|
525
528
|
"items-end",
|
|
526
529
|
"items-start",
|
|
@@ -599,6 +602,7 @@
|
|
|
599
602
|
"max-w-3xl",
|
|
600
603
|
"max-w-4xl",
|
|
601
604
|
"max-w-5xl",
|
|
605
|
+
"max-w-6xl",
|
|
602
606
|
"max-w-7xl",
|
|
603
607
|
"max-w-[100px]",
|
|
604
608
|
"max-w-[120px]",
|
|
@@ -606,10 +610,12 @@
|
|
|
606
610
|
"max-w-[200px]",
|
|
607
611
|
"max-w-[80px]",
|
|
608
612
|
"max-w-[calc(100%-2rem)]",
|
|
613
|
+
"max-w-full",
|
|
609
614
|
"max-w-lg",
|
|
610
615
|
"max-w-md",
|
|
611
616
|
"max-w-none",
|
|
612
617
|
"max-w-sm",
|
|
618
|
+
"max-w-xl",
|
|
613
619
|
"max-w-xs",
|
|
614
620
|
"mb-1",
|
|
615
621
|
"mb-2",
|
|
@@ -618,9 +624,12 @@
|
|
|
618
624
|
"mb-6",
|
|
619
625
|
"mb-8",
|
|
620
626
|
"md:col-span-2",
|
|
627
|
+
"md:col-span-3",
|
|
628
|
+
"md:col-span-5",
|
|
621
629
|
"md:flex",
|
|
622
630
|
"md:flex-none",
|
|
623
631
|
"md:flex-row",
|
|
632
|
+
"md:grid-cols-10",
|
|
624
633
|
"md:grid-cols-12",
|
|
625
634
|
"md:grid-cols-2",
|
|
626
635
|
"md:grid-cols-3",
|
|
@@ -666,6 +675,8 @@
|
|
|
666
675
|
"mr-6",
|
|
667
676
|
"mt-0.5",
|
|
668
677
|
"mt-1",
|
|
678
|
+
"mt-10",
|
|
679
|
+
"mt-12",
|
|
669
680
|
"mt-16",
|
|
670
681
|
"mt-2",
|
|
671
682
|
"mt-3",
|
|
@@ -775,6 +786,7 @@
|
|
|
775
786
|
"py-12",
|
|
776
787
|
"py-2",
|
|
777
788
|
"py-20",
|
|
789
|
+
"py-24",
|
|
778
790
|
"py-3",
|
|
779
791
|
"py-4",
|
|
780
792
|
"py-6",
|
|
@@ -833,6 +845,7 @@
|
|
|
833
845
|
"size-8",
|
|
834
846
|
"size-[--cell-size]",
|
|
835
847
|
"size:",
|
|
848
|
+
"skeleton-container",
|
|
836
849
|
"slide-in-from-bottom",
|
|
837
850
|
"slide-in-from-bottom-2",
|
|
838
851
|
"slide-in-from-left",
|
|
@@ -843,6 +856,7 @@
|
|
|
843
856
|
"sm:flex-row",
|
|
844
857
|
"sm:gap-2.5",
|
|
845
858
|
"sm:grid-cols-2",
|
|
859
|
+
"sm:h-16",
|
|
846
860
|
"sm:inline",
|
|
847
861
|
"sm:inline-block",
|
|
848
862
|
"sm:items-center",
|
|
@@ -918,6 +932,7 @@
|
|
|
918
932
|
"text-left",
|
|
919
933
|
"text-lg",
|
|
920
934
|
"text-muted-foreground",
|
|
935
|
+
"text-muted-foreground/30",
|
|
921
936
|
"text-muted-foreground/50",
|
|
922
937
|
"text-muted-foreground/70",
|
|
923
938
|
"text-orange-600",
|
|
@@ -967,6 +982,10 @@
|
|
|
967
982
|
"tracking-widest",
|
|
968
983
|
"transform",
|
|
969
984
|
"transition",
|
|
985
|
+
"transition-[border-color,box-shadow]",
|
|
986
|
+
"transition-[border-color]",
|
|
987
|
+
"transition-[width,padding]",
|
|
988
|
+
"transition-[width]",
|
|
970
989
|
"transition-all",
|
|
971
990
|
"transition-colors",
|
|
972
991
|
"transition-opacity",
|
|
@@ -1023,6 +1042,7 @@
|
|
|
1023
1042
|
"w-[240px]",
|
|
1024
1043
|
"w-[280px]",
|
|
1025
1044
|
"w-[300px]",
|
|
1045
|
+
"w-[32rem]",
|
|
1026
1046
|
"w-[400px]",
|
|
1027
1047
|
"w-[40px]",
|
|
1028
1048
|
"w-[50px]",
|