@kywi-software/core 0.12.0 → 0.13.0
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/AGENT-PATTERNS.md +54 -39
- package/dist/admin/layout-editor/component-actions.d.ts +21 -1
- package/dist/admin/layout-editor/component-actions.d.ts.map +1 -1
- package/dist/admin/layout-editor/component-actions.js +41 -1
- package/dist/admin/layout-editor/component-actions.js.map +1 -1
- package/dist/admin/layout-editor/component-fork.d.ts.map +1 -1
- package/dist/admin/layout-editor/component-fork.js +23 -1
- package/dist/admin/layout-editor/component-fork.js.map +1 -1
- package/dist/admin/layout-editor/editor-canvas.d.ts +25 -4
- package/dist/admin/layout-editor/editor-canvas.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-canvas.js +186 -90
- package/dist/admin/layout-editor/editor-canvas.js.map +1 -1
- package/dist/admin/layout-editor/editor-state.d.ts +62 -2
- package/dist/admin/layout-editor/editor-state.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-state.js +181 -11
- package/dist/admin/layout-editor/editor-state.js.map +1 -1
- package/dist/admin/layout-editor/editor.css +59 -0
- package/dist/admin/layout-editor/layout-editor.d.ts.map +1 -1
- package/dist/admin/layout-editor/layout-editor.js +74 -9
- package/dist/admin/layout-editor/layout-editor.js.map +1 -1
- package/dist/admin/layout-editor/linked-component.d.ts +11 -12
- package/dist/admin/layout-editor/linked-component.d.ts.map +1 -1
- package/dist/admin/layout-editor/linked-component.js.map +1 -1
- package/dist/admin/layout-editor/module-overlay.d.ts +21 -1
- package/dist/admin/layout-editor/module-overlay.d.ts.map +1 -1
- package/dist/admin/layout-editor/module-overlay.js +4 -4
- package/dist/admin/layout-editor/module-overlay.js.map +1 -1
- package/dist/admin/layout-editor/module-palette.d.ts +1 -0
- package/dist/admin/layout-editor/module-palette.d.ts.map +1 -1
- package/dist/admin/layout-editor/module-palette.js +6 -3
- package/dist/admin/layout-editor/module-palette.js.map +1 -1
- package/dist/admin/layout-editor/module-variant-container-config.d.ts +51 -0
- package/dist/admin/layout-editor/module-variant-container-config.d.ts.map +1 -0
- package/dist/admin/layout-editor/module-variant-container-config.js +51 -0
- package/dist/admin/layout-editor/module-variant-container-config.js.map +1 -0
- package/dist/admin/layout-editor/node-lookup.d.ts +40 -4
- package/dist/admin/layout-editor/node-lookup.d.ts.map +1 -1
- package/dist/admin/layout-editor/node-lookup.js +64 -8
- package/dist/admin/layout-editor/node-lookup.js.map +1 -1
- package/dist/admin/layout-editor/overlay-shell.d.ts.map +1 -1
- package/dist/admin/layout-editor/overlay-shell.js +47 -4
- package/dist/admin/layout-editor/overlay-shell.js.map +1 -1
- package/dist/admin/layout-editor/props-panel.d.ts +54 -6
- package/dist/admin/layout-editor/props-panel.d.ts.map +1 -1
- package/dist/admin/layout-editor/props-panel.js +93 -8
- package/dist/admin/layout-editor/props-panel.js.map +1 -1
- package/dist/admin/layout-editor/section-overlay.d.ts +5 -0
- package/dist/admin/layout-editor/section-overlay.d.ts.map +1 -1
- package/dist/admin/layout-editor/section-overlay.js +1 -1
- package/dist/admin/layout-editor/section-overlay.js.map +1 -1
- package/dist/admin/layout-editor/section-variant-container-config.d.ts +9 -0
- package/dist/admin/layout-editor/section-variant-container-config.d.ts.map +1 -1
- package/dist/admin/layout-editor/section-variant-container-config.js +9 -2
- package/dist/admin/layout-editor/section-variant-container-config.js.map +1 -1
- package/dist/admin/layout-editor/use-component-connect.d.ts +5 -1
- package/dist/admin/layout-editor/use-component-connect.d.ts.map +1 -1
- package/dist/admin/layout-editor/use-component-connect.js +61 -5
- package/dist/admin/layout-editor/use-component-connect.js.map +1 -1
- package/dist/admin/surfaces/components/definition-canvas.d.ts.map +1 -1
- package/dist/admin/surfaces/components/definition-canvas.js +30 -0
- package/dist/admin/surfaces/components/definition-canvas.js.map +1 -1
- package/dist/audiences/deletion-guard.js +2 -2
- package/dist/audiences/deletion-guard.js.map +1 -1
- package/dist/config/types.d.ts +7 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/layout/component-refs.d.ts.map +1 -1
- package/dist/layout/component-refs.js +10 -18
- package/dist/layout/component-refs.js.map +1 -1
- package/dist/layout/feed-hydration.js +2 -3
- package/dist/layout/feed-hydration.js.map +1 -1
- package/dist/layout/index.d.ts +2 -1
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +4 -1
- package/dist/layout/index.js.map +1 -1
- package/dist/layout/module-permissions.js +2 -2
- package/dist/layout/module-permissions.js.map +1 -1
- package/dist/layout/nav-hydration.js +2 -3
- package/dist/layout/nav-hydration.js.map +1 -1
- package/dist/layout/personalization.d.ts +29 -0
- package/dist/layout/personalization.d.ts.map +1 -1
- package/dist/layout/personalization.js +78 -0
- package/dist/layout/personalization.js.map +1 -1
- package/dist/layout/registry.d.ts.map +1 -1
- package/dist/layout/registry.js +15 -1
- package/dist/layout/registry.js.map +1 -1
- package/dist/layout/renderer.d.ts +2 -12
- package/dist/layout/renderer.d.ts.map +1 -1
- package/dist/layout/renderer.js +29 -25
- package/dist/layout/renderer.js.map +1 -1
- package/dist/layout/types.d.ts +91 -1
- package/dist/layout/types.d.ts.map +1 -1
- package/dist/layout/types.js +160 -1
- package/dist/layout/types.js.map +1 -1
- package/dist/layout/variant-selection.d.ts +43 -0
- package/dist/layout/variant-selection.d.ts.map +1 -0
- package/dist/layout/variant-selection.js +41 -0
- package/dist/layout/variant-selection.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-state.d.ts","sourceRoot":"","sources":["../../../src/admin/layout-editor/editor-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"editor-state.d.ts","sourceRoot":"","sources":["../../../src/admin/layout-editor/editor-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* Core reducer for the Kywi layout overlay editor.
|
|
4
4
|
* All editor components dispatch actions through this reducer.
|
|
5
5
|
*/
|
|
6
|
-
import { isLayoutSection } from '../../layout/types.js';
|
|
6
|
+
import { isLayoutSection, isModuleNode, mapColumnNode } from '../../layout/types.js';
|
|
7
7
|
import { generateId } from './generate-id.js';
|
|
8
|
-
import { cloneSection, cloneVariantContainer } from './component-actions.js';
|
|
9
|
-
import { armSections, findColumnIn, findModuleIn, findSectionIn, findVariantContainerIn, } from './node-lookup.js';
|
|
8
|
+
import { cloneModuleDetached, cloneSection, cloneVariantContainer } from './component-actions.js';
|
|
9
|
+
import { DEFAULT_ARM_ID, armSections, findColumnIn, findModuleIn, findModuleVariantContainerIn, findSectionIn, findVariantContainerIn, } from './node-lookup.js';
|
|
10
10
|
// ── Helpers (internal) ───────────────────────────────────────────
|
|
11
11
|
/**
|
|
12
12
|
* If activeVariant is set, find the matching pageVariant or abExperiment
|
|
@@ -84,13 +84,16 @@ function commitToHistory(state, newLayout) {
|
|
|
84
84
|
const findColumn = findColumnIn;
|
|
85
85
|
const findModule = findModuleIn;
|
|
86
86
|
const findSection = findSectionIn;
|
|
87
|
+
function cloneHistoryModule(n) {
|
|
88
|
+
return { ...n, props: { ...n.props }, style: { ...n.style } };
|
|
89
|
+
}
|
|
87
90
|
/** Deep-clone one section (columns, modules, module props/style). */
|
|
88
91
|
function cloneLayoutSection(section) {
|
|
89
92
|
return {
|
|
90
93
|
...section,
|
|
91
94
|
columns: section.columns.map(col => ({
|
|
92
95
|
...col,
|
|
93
|
-
nodes: col.nodes.map(
|
|
96
|
+
nodes: col.nodes.map(node => mapColumnNode(node, cloneHistoryModule)),
|
|
94
97
|
})),
|
|
95
98
|
};
|
|
96
99
|
}
|
|
@@ -118,6 +121,34 @@ function cloneRegions(regions) {
|
|
|
118
121
|
}
|
|
119
122
|
return result;
|
|
120
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Write `next` wherever `found` really lives: directly in a column, or inside a
|
|
126
|
+
* module-level variant container's Default or variant arm.
|
|
127
|
+
*
|
|
128
|
+
* The module actions used to be `col.nodes = col.nodes.map(...)`, which silently
|
|
129
|
+
* did nothing for an arm module — i.e. every edit to a promoted module's
|
|
130
|
+
* challenger would have been swallowed. One writer, so UPDATE_PROPS,
|
|
131
|
+
* UPDATE_STYLE and REPLACE_MODULE cannot disagree about where a module is.
|
|
132
|
+
*
|
|
133
|
+
* The column predicate is module-only (`isModuleNode`) rather than a bare id
|
|
134
|
+
* test, matching UPDATE_PROPS/UPDATE_STYLE's long-standing shape: a module
|
|
135
|
+
* writer must be structurally incapable of landing a bare `ModuleNode` on top of
|
|
136
|
+
* a container node, whatever ids a stored document turns out to carry.
|
|
137
|
+
*/
|
|
138
|
+
function writeModuleAt(found, next) {
|
|
139
|
+
const container = found.moduleContainer;
|
|
140
|
+
if (!container) {
|
|
141
|
+
found.column.nodes = found.column.nodes.map(n => isModuleNode(n) && n.id === found.module.id ? next : n);
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
if (found.moduleArmId === DEFAULT_ARM_ID) {
|
|
145
|
+
container.defaultModule = next;
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
const arm = container.variants.find(v => v.id === found.moduleArmId);
|
|
149
|
+
if (arm)
|
|
150
|
+
arm.module = next;
|
|
151
|
+
}
|
|
121
152
|
// ── Public API ───────────────────────────────────────────────────
|
|
122
153
|
export function createInitialState(layout) {
|
|
123
154
|
return {
|
|
@@ -464,8 +495,18 @@ export function editorReducer(state, action) {
|
|
|
464
495
|
const hist = commitToHistory(state, layout);
|
|
465
496
|
return { ...state, layout, ...hist, isDirty: true };
|
|
466
497
|
}
|
|
498
|
+
// A module inside a module-level container is not independently
|
|
499
|
+
// removable: the ARM is the unit (remove it from the container's rail),
|
|
500
|
+
// and the Default arm cannot go at all without the container going with
|
|
501
|
+
// it. A silent filter-by-id would simply do nothing, so refuse loudly-in-
|
|
502
|
+
// code and let the rail withhold the button.
|
|
503
|
+
if (found.moduleContainer)
|
|
504
|
+
return state;
|
|
467
505
|
const col = found.column;
|
|
468
|
-
|
|
506
|
+
// Module-only for the same reason as `writeModuleAt`: an action that only
|
|
507
|
+
// knows how to remove a plain module must not be able to take a container
|
|
508
|
+
// out of a column on an id match alone.
|
|
509
|
+
col.nodes = col.nodes.filter(n => !(isModuleNode(n) && n.id === action.moduleId));
|
|
469
510
|
const layout = setActiveRegions(state, regions);
|
|
470
511
|
const hist = commitToHistory(state, layout);
|
|
471
512
|
return { ...state, layout, ...hist, isDirty: true };
|
|
@@ -482,8 +523,7 @@ export function editorReducer(state, action) {
|
|
|
482
523
|
const hist = commitToHistory(state, layout);
|
|
483
524
|
return { ...state, layout, ...hist, isDirty: true };
|
|
484
525
|
}
|
|
485
|
-
|
|
486
|
-
col.nodes = col.nodes.map(n => (n.id === action.moduleId ? action.node : n));
|
|
526
|
+
writeModuleAt(found, action.node);
|
|
487
527
|
const layout = setActiveRegions(state, regions);
|
|
488
528
|
const hist = commitToHistory(state, layout);
|
|
489
529
|
return { ...state, layout, ...hist, isDirty: true };
|
|
@@ -496,8 +536,7 @@ export function editorReducer(state, action) {
|
|
|
496
536
|
const hist = commitToHistory(state, layout);
|
|
497
537
|
return { ...state, layout, ...hist, isDirty: true };
|
|
498
538
|
}
|
|
499
|
-
|
|
500
|
-
col.nodes = col.nodes.map(n => n.id === action.moduleId ? { ...n, props: { ...n.props, ...action.props } } : n);
|
|
539
|
+
writeModuleAt(found, { ...found.module, props: { ...found.module.props, ...action.props } });
|
|
501
540
|
const layout = setActiveRegions(state, regions);
|
|
502
541
|
const hist = commitToHistory(state, layout);
|
|
503
542
|
return { ...state, layout, ...hist, isDirty: true };
|
|
@@ -510,8 +549,7 @@ export function editorReducer(state, action) {
|
|
|
510
549
|
const hist = commitToHistory(state, layout);
|
|
511
550
|
return { ...state, layout, ...hist, isDirty: true };
|
|
512
551
|
}
|
|
513
|
-
|
|
514
|
-
col.nodes = col.nodes.map(n => n.id === action.moduleId ? { ...n, style: { ...n.style, ...action.style } } : n);
|
|
552
|
+
writeModuleAt(found, { ...found.module, style: { ...found.module.style, ...action.style } });
|
|
515
553
|
const layout = setActiveRegions(state, regions);
|
|
516
554
|
const hist = commitToHistory(state, layout);
|
|
517
555
|
return { ...state, layout, ...hist, isDirty: true };
|
|
@@ -629,6 +667,138 @@ export function editorReducer(state, action) {
|
|
|
629
667
|
const hist = commitToHistory(state, layout);
|
|
630
668
|
return { ...state, layout, ...hist, isDirty: true };
|
|
631
669
|
}
|
|
670
|
+
// ── Module-level variant containers (kywi-cms#161) ────────────
|
|
671
|
+
//
|
|
672
|
+
// Same division of labour as the section-level cases above: only the
|
|
673
|
+
// container node itself needs bespoke actions, because the lookups are
|
|
674
|
+
// arm-aware and `writeModuleAt` routes every module edit into the arm it
|
|
675
|
+
// really lives in.
|
|
676
|
+
case 'WRAP_MODULE_IN_VARIANT_CONTAINER': {
|
|
677
|
+
const regions = cloneRegions(getActiveRegions(state));
|
|
678
|
+
const found = findModule(regions, action.moduleId);
|
|
679
|
+
if (!found)
|
|
680
|
+
return state;
|
|
681
|
+
// No nesting, twice over: not inside a SECTION-level container's arm
|
|
682
|
+
// (`holder.container`), and not already inside a module-level one.
|
|
683
|
+
if (found.holder.container !== null)
|
|
684
|
+
return state;
|
|
685
|
+
if (found.moduleContainer !== null)
|
|
686
|
+
return state;
|
|
687
|
+
const container = {
|
|
688
|
+
id: action.containerId,
|
|
689
|
+
type: 'moduleVariantContainer',
|
|
690
|
+
mode: action.mode,
|
|
691
|
+
defaultModule: found.module,
|
|
692
|
+
variants: [],
|
|
693
|
+
// A promotion to A/B mints its OWN experiment and never inherits a
|
|
694
|
+
// decision — mirroring WRAP_SECTION_IN_VARIANT_CONTAINER.
|
|
695
|
+
...(action.mode === 'ab_test' ? { experimentId: generateId() } : {}),
|
|
696
|
+
};
|
|
697
|
+
found.column.nodes = found.column.nodes.map(n => isModuleNode(n) && n.id === action.moduleId ? container : n);
|
|
698
|
+
const layout = setActiveRegions(state, regions);
|
|
699
|
+
const hist = commitToHistory(state, layout);
|
|
700
|
+
return { ...state, layout, ...hist, isDirty: true };
|
|
701
|
+
}
|
|
702
|
+
case 'UNWRAP_MODULE_VARIANT_CONTAINER': {
|
|
703
|
+
const regions = cloneRegions(getActiveRegions(state));
|
|
704
|
+
const found = findModuleVariantContainerIn(regions, action.containerId);
|
|
705
|
+
if (!found)
|
|
706
|
+
return state;
|
|
707
|
+
// The Default arm goes back exactly where the container stood, with
|
|
708
|
+
// whatever it has been edited into — unwrapping discards the challengers
|
|
709
|
+
// (that is the point; undo restores them), never the live content.
|
|
710
|
+
// Positional, like UNWRAP_VARIANT_CONTAINER: the location already resolved
|
|
711
|
+
// which node this is, so no id predicate can mistake a sibling for it.
|
|
712
|
+
const restored = found.container.defaultModule;
|
|
713
|
+
found.column.nodes[found.index] = restored;
|
|
714
|
+
const layout = setActiveRegions(state, regions);
|
|
715
|
+
const hist = commitToHistory(state, layout);
|
|
716
|
+
return { ...state, layout, ...hist, isDirty: true };
|
|
717
|
+
}
|
|
718
|
+
case 'ADD_MODULE_VARIANT_ARM': {
|
|
719
|
+
const regions = cloneRegions(getActiveRegions(state));
|
|
720
|
+
const found = findModuleVariantContainerIn(regions, action.containerId);
|
|
721
|
+
if (!found)
|
|
722
|
+
return state;
|
|
723
|
+
// Duplicate arm ids are a validation failure, and re-adding one would
|
|
724
|
+
// silently replace the arm the author is editing.
|
|
725
|
+
if (found.container.variants.some(v => v.id === action.armId))
|
|
726
|
+
return state;
|
|
727
|
+
found.container.variants = [
|
|
728
|
+
...found.container.variants,
|
|
729
|
+
{
|
|
730
|
+
id: action.armId,
|
|
731
|
+
label: '',
|
|
732
|
+
// An UNBOUND draft arm: `''` matches no audience, no winner and no
|
|
733
|
+
// assignment key, so the arm serves nobody until the author binds it
|
|
734
|
+
// — but it is still real content every walker sees.
|
|
735
|
+
audienceId: '',
|
|
736
|
+
module: cloneModuleDetached(found.container.defaultModule),
|
|
737
|
+
},
|
|
738
|
+
];
|
|
739
|
+
const layout = setActiveRegions(state, regions);
|
|
740
|
+
const hist = commitToHistory(state, layout);
|
|
741
|
+
return { ...state, layout, ...hist, isDirty: true };
|
|
742
|
+
}
|
|
743
|
+
case 'REMOVE_MODULE_VARIANT_ARM': {
|
|
744
|
+
const regions = cloneRegions(getActiveRegions(state));
|
|
745
|
+
const found = findModuleVariantContainerIn(regions, action.containerId);
|
|
746
|
+
if (!found)
|
|
747
|
+
return state;
|
|
748
|
+
if (!found.container.variants.some(v => v.id === action.armId))
|
|
749
|
+
return state;
|
|
750
|
+
found.container.variants = found.container.variants.filter(v => v.id !== action.armId);
|
|
751
|
+
const layout = setActiveRegions(state, regions);
|
|
752
|
+
const hist = commitToHistory(state, layout);
|
|
753
|
+
return { ...state, layout, ...hist, isDirty: true };
|
|
754
|
+
}
|
|
755
|
+
case 'UPDATE_MODULE_VARIANT_CONTAINER': {
|
|
756
|
+
const regions = cloneRegions(getActiveRegions(state));
|
|
757
|
+
const found = findModuleVariantContainerIn(regions, action.containerId);
|
|
758
|
+
if (!found)
|
|
759
|
+
return state;
|
|
760
|
+
const mvc = found.container;
|
|
761
|
+
const { patch } = action;
|
|
762
|
+
if (patch.mode !== undefined)
|
|
763
|
+
mvc.mode = patch.mode;
|
|
764
|
+
if (patch.experimentId !== undefined) {
|
|
765
|
+
if (patch.experimentId === '')
|
|
766
|
+
delete mvc.experimentId;
|
|
767
|
+
else
|
|
768
|
+
mvc.experimentId = patch.experimentId;
|
|
769
|
+
}
|
|
770
|
+
if (patch.winnerId !== undefined) {
|
|
771
|
+
if (patch.winnerId === '')
|
|
772
|
+
delete mvc.winnerId;
|
|
773
|
+
else
|
|
774
|
+
mvc.winnerId = patch.winnerId;
|
|
775
|
+
}
|
|
776
|
+
if (patch.arms !== undefined) {
|
|
777
|
+
const before = mvc.variants;
|
|
778
|
+
mvc.variants = patch.arms.map((arm) => {
|
|
779
|
+
const existing = before.find(v => v.id === arm.id);
|
|
780
|
+
return {
|
|
781
|
+
id: arm.id,
|
|
782
|
+
audienceId: arm.audienceId,
|
|
783
|
+
label: arm.label,
|
|
784
|
+
weight: arm.weight,
|
|
785
|
+
// A brand-new arm starts as a DETACHED copy of the Default arm —
|
|
786
|
+
// never empty, which would ship a blank slot to live traffic the
|
|
787
|
+
// moment it is saved, and never linked, which would make editing the
|
|
788
|
+
// challenger rewrite the shared component.
|
|
789
|
+
module: existing ? existing.module : cloneModuleDetached(mvc.defaultModule),
|
|
790
|
+
};
|
|
791
|
+
});
|
|
792
|
+
}
|
|
793
|
+
// `validateLayoutDocument` rejects an ab_test container with no
|
|
794
|
+
// experimentId, so switching mode seeds one rather than leaving the page
|
|
795
|
+
// silently unsaveable. The field stays editable in the props rail.
|
|
796
|
+
if (mvc.mode === 'ab_test' && !mvc.experimentId)
|
|
797
|
+
mvc.experimentId = generateId();
|
|
798
|
+
const layout = setActiveRegions(state, regions);
|
|
799
|
+
const hist = commitToHistory(state, layout);
|
|
800
|
+
return { ...state, layout, ...hist, isDirty: true };
|
|
801
|
+
}
|
|
632
802
|
default:
|
|
633
803
|
return state;
|
|
634
804
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-state.js","sourceRoot":"","sources":["../../../src/admin/layout-editor/editor-state.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"editor-state.js","sourceRoot":"","sources":["../../../src/admin/layout-editor/editor-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -817,6 +817,33 @@
|
|
|
817
817
|
}
|
|
818
818
|
.kywi-editor-vc-add-section:hover { background: var(--kywi-editor-accent-light); }
|
|
819
819
|
|
|
820
|
+
/* ── Module-level variant container (kywi-cms#161) ─────────────────────────── */
|
|
821
|
+
/* Deliberately the section container's colours at module scale: one visual
|
|
822
|
+
language for "this content varies", whatever granularity it varies at. The
|
|
823
|
+
badge and arm switcher are literally the same classes. */
|
|
824
|
+
.kywi-editor-mvc {
|
|
825
|
+
position: relative;
|
|
826
|
+
border: 1px solid var(--kywi-editor-region-border);
|
|
827
|
+
border-radius: var(--kywi-editor-radius);
|
|
828
|
+
background: var(--kywi-editor-accent-light);
|
|
829
|
+
margin-bottom: var(--kywi-editor-sp-2);
|
|
830
|
+
}
|
|
831
|
+
.kywi-editor-mvc--selected {
|
|
832
|
+
border-color: var(--kywi-editor-selected-border);
|
|
833
|
+
box-shadow: 0 0 0 2px var(--kywi-editor-accent-ring);
|
|
834
|
+
}
|
|
835
|
+
.kywi-editor-mvc-chrome {
|
|
836
|
+
display: flex;
|
|
837
|
+
align-items: center;
|
|
838
|
+
gap: var(--kywi-editor-sp-2);
|
|
839
|
+
min-height: 28px;
|
|
840
|
+
padding: 2px var(--kywi-editor-sp-2);
|
|
841
|
+
border-bottom: 1px solid var(--kywi-editor-region-border);
|
|
842
|
+
border-radius: var(--kywi-editor-radius) var(--kywi-editor-radius) 0 0;
|
|
843
|
+
cursor: pointer;
|
|
844
|
+
}
|
|
845
|
+
.kywi-editor-mvc-drag-handle { margin-left: auto; cursor: grab; }
|
|
846
|
+
|
|
820
847
|
/* ── Section insert line ───────────────────────────────────────────────────── */
|
|
821
848
|
.kywi-editor-section-insert {
|
|
822
849
|
position: relative;
|
|
@@ -1998,6 +2025,7 @@ input[type="color"].kywi-token-raw-input { height: 34px; padding: 3px; cursor: p
|
|
|
1998
2025
|
pixel. Section → container → module reads as progressively stronger. */
|
|
1999
2026
|
.kywi-ip-section,
|
|
2000
2027
|
.kywi-ip-vc,
|
|
2028
|
+
.kywi-ip-mvc,
|
|
2001
2029
|
.kywi-ip-module { position: relative; }
|
|
2002
2030
|
|
|
2003
2031
|
.kywi-ip-section:hover {
|
|
@@ -2020,6 +2048,19 @@ input[type="color"].kywi-token-raw-input { height: 34px; padding: 3px; cursor: p
|
|
|
2020
2048
|
outline-offset: 2px;
|
|
2021
2049
|
}
|
|
2022
2050
|
|
|
2051
|
+
/* A personalized MODULE reads like a personalized band, one scale down
|
|
2052
|
+
(kywi-cms#161): the same accent outline, offset further out than the module's
|
|
2053
|
+
own so the two are distinguishable when both are showing. */
|
|
2054
|
+
.kywi-ip-mvc:hover {
|
|
2055
|
+
outline: 1px dashed var(--kywi-editor-accent);
|
|
2056
|
+
outline-offset: 5px;
|
|
2057
|
+
}
|
|
2058
|
+
.kywi-ip-mvc--selected,
|
|
2059
|
+
.kywi-ip-mvc--selected:hover {
|
|
2060
|
+
outline: 2px solid var(--kywi-editor-accent);
|
|
2061
|
+
outline-offset: 5px;
|
|
2062
|
+
}
|
|
2063
|
+
|
|
2023
2064
|
.kywi-ip-module:hover {
|
|
2024
2065
|
outline: 1.5px solid var(--kywi-editor-region-border);
|
|
2025
2066
|
outline-offset: 2px;
|
|
@@ -2094,6 +2135,8 @@ input[type="color"].kywi-token-raw-input { height: 34px; padding: 3px; cursor: p
|
|
|
2094
2135
|
.kywi-ip-section--selected > .kywi-ip-section-chrome,
|
|
2095
2136
|
.kywi-ip-vc:hover > .kywi-ip-vc-chrome,
|
|
2096
2137
|
.kywi-ip-vc--selected > .kywi-ip-vc-chrome,
|
|
2138
|
+
.kywi-ip-mvc:hover > .kywi-editor-mvc-chrome,
|
|
2139
|
+
.kywi-ip-mvc--selected > .kywi-editor-mvc-chrome,
|
|
2097
2140
|
.kywi-ip-module:hover > .kywi-ip-chip,
|
|
2098
2141
|
.kywi-ip-module--selected > .kywi-ip-chip,
|
|
2099
2142
|
.kywi-ip-module:hover > .kywi-ip-module-actions,
|
|
@@ -2122,6 +2165,22 @@ input[type="color"].kywi-token-raw-input { height: 34px; padding: 3px; cursor: p
|
|
|
2122
2165
|
}
|
|
2123
2166
|
.kywi-ip-vc-chrome { flex-wrap: wrap; max-width: 100%; white-space: normal; }
|
|
2124
2167
|
|
|
2168
|
+
/* The module-level container's bar floats above the module, like every other
|
|
2169
|
+
in-place chrome — but anchored RIGHT rather than left (kywi-cms#161): the arm
|
|
2170
|
+
module's own `.kywi-ip-chip` occupies the above-left corner and both are
|
|
2171
|
+
revealed by the same hover, since hovering the module also hovers the
|
|
2172
|
+
container that holds it. */
|
|
2173
|
+
.kywi-ip-mvc > .kywi-editor-mvc-chrome {
|
|
2174
|
+
top: 0;
|
|
2175
|
+
right: 0;
|
|
2176
|
+
transform: translateY(-100%);
|
|
2177
|
+
border-bottom: none;
|
|
2178
|
+
border-radius: var(--kywi-editor-radius-sm) var(--kywi-editor-radius-sm) 0 0;
|
|
2179
|
+
background: var(--kywi-editor-accent);
|
|
2180
|
+
color: #fff;
|
|
2181
|
+
box-shadow: var(--kywi-editor-shadow-1);
|
|
2182
|
+
}
|
|
2183
|
+
|
|
2125
2184
|
/* Chrome CLAMPED inside its owner, just under the editor's fixed top bar
|
|
2126
2185
|
(kywi-cms#122). The stacking contract above settles the contest with the
|
|
2127
2186
|
SITE's header; it deliberately does NOT settle the one with the EDITOR'S OWN
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-editor.d.ts","sourceRoot":"","sources":["../../../src/admin/layout-editor/layout-editor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAwE,MAAM,OAAO,CAAA;AAE5F,OAAO,KAAK,EAAE,cAAc,EAAmC,MAAM,uBAAuB,CAAA;AAC5F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"layout-editor.d.ts","sourceRoot":"","sources":["../../../src/admin/layout-editor/layout-editor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAwE,MAAM,OAAO,CAAA;AAE5F,OAAO,KAAK,EAAE,cAAc,EAAmC,MAAM,uBAAuB,CAAA;AAC5F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAuB9D,OAAO,cAAc,CAAA;AAIrB,UAAU,iBAAiB;IACzB,aAAa,EAAE,cAAc,CAAA;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,cAAc,CAAA;IAC9B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC,CAAC,CAAA;IACzH;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;IAC7E,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB;0EACsE;IACtE,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC/C;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAA;IAC3C,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAAA;CACjD;AAYD,wBAAgB,YAAY,CAAC,EAC3B,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,UAAmB,GACpB,EAAE,iBAAiB,2CA+dnB"}
|
|
@@ -3,7 +3,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
import { useReducer, useState, useCallback, useEffect, useMemo, useRef } from 'react';
|
|
4
4
|
import { DndContext } from '@dnd-kit/core';
|
|
5
5
|
import { editorReducer, createInitialState } from './editor-state.js';
|
|
6
|
-
import { findModuleInDocument, findSectionInDocument, findVariantContainerInDocument, } from './node-lookup.js';
|
|
6
|
+
import { findModuleInDocument, findSectionInDocument, findVariantContainerInDocument, findModuleVariantContainerInDocument, findModuleIn, canPromoteModule, } from './node-lookup.js';
|
|
7
|
+
import { generateId } from './generate-id.js';
|
|
7
8
|
import { useEditorDnd } from './use-editor-dnd.js';
|
|
8
9
|
import { DropTargetContext, PaletteDragGhost } from './drag-feedback.js';
|
|
9
10
|
import { EditorToolbar } from './editor-toolbar.js';
|
|
@@ -171,12 +172,13 @@ export function LayoutEditor({ initialLayout, moduleRegistry, moduleComponents,
|
|
|
171
172
|
// live in one hook shared with the overlay shell, so the two editors cannot
|
|
172
173
|
// drift apart on what saving or detaching means.
|
|
173
174
|
const connect = useComponentConnect({ layout: state.layout, dispatch, library });
|
|
174
|
-
//
|
|
175
|
-
// (`nameOf`)
|
|
176
|
-
//
|
|
177
|
-
//
|
|
178
|
-
//
|
|
179
|
-
|
|
175
|
+
// The canvas chrome only ever needed the linked pill's name lookup
|
|
176
|
+
// (`nameOf`) — its "Save as component" buttons are gone at every granularity
|
|
177
|
+
// (kywi-cms#159), so there is nothing left here for a definition/blueprint
|
|
178
|
+
// canvas to withhold. `connect.affordances` is exactly `{ nameOf }` in every
|
|
179
|
+
// case now; `componentActionsWithheld` still gates the props rail's own
|
|
180
|
+
// buttons (via `canvasKind` below) and the palette filter just below.
|
|
181
|
+
const componentAffordances = connect.affordances;
|
|
180
182
|
// The `component` placeholder is the one palette entry these canvases cannot
|
|
181
183
|
// use: its only purpose is to be pointed at a saved component — the nested link
|
|
182
184
|
// a definition may not hold, and the untracked link a blueprint must not mint.
|
|
@@ -238,10 +240,34 @@ export function LayoutEditor({ initialLayout, moduleRegistry, moduleComponents,
|
|
|
238
240
|
const selectedVariantContainer = state.selectedType === 'variantContainer' && state.selectedId
|
|
239
241
|
? findVariantContainerInDocument(state.layout, state.selectedId)
|
|
240
242
|
: null;
|
|
243
|
+
// The module-level one, selected via its own block's chrome (kywi-cms#161).
|
|
244
|
+
const selectedModuleVariantContainer = state.selectedType === 'moduleVariantContainer' && state.selectedId
|
|
245
|
+
? findModuleVariantContainerInDocument(state.layout, state.selectedId)
|
|
246
|
+
: null;
|
|
247
|
+
// What the rail may offer for a selected MODULE. Both answers come from
|
|
248
|
+
// `node-lookup` rather than from anything the canvas threaded down, because
|
|
249
|
+
// the rail addresses the current selection with no idea where it is rendered:
|
|
250
|
+
// `moduleContainer` is non-null for every arm INCLUDING Default (the whole
|
|
251
|
+
// container is the shared unit that must not be linked or singly deleted), and
|
|
252
|
+
// `canPromoteModule` is the same eligibility the reducer enforces — the canvas
|
|
253
|
+
// chrome's structural gate is its twin, not a second opinion.
|
|
254
|
+
const selectedModuleLocation = state.selectedId
|
|
255
|
+
? findModuleIn(state.layout.regions, state.selectedId)
|
|
256
|
+
: null;
|
|
257
|
+
const selectedModuleInArm = selectedModuleLocation?.moduleContainer != null;
|
|
258
|
+
// Only a PAGE canvas promotes: a definition or blueprint has no placement to
|
|
259
|
+
// personalize, and a container stored in one would carry a single experiment
|
|
260
|
+
// binding shared by every page that places it (`extractDefinition` refuses the
|
|
261
|
+
// shape). The canvas chrome's `canPromoteModules` is the same gate on the
|
|
262
|
+
// other surface, and `props-panel.tsx` re-derives it from `canvasKind` for the
|
|
263
|
+
// shell that has no canvasKind of its own.
|
|
264
|
+
const selectedModuleCanPromote = canvasKind === 'page' && state.selectedId
|
|
265
|
+
? canPromoteModule(state.layout.regions, state.selectedId)
|
|
266
|
+
: false;
|
|
241
267
|
return (_jsxs(DndContext, { sensors: dnd.sensors, collisionDetection: dnd.collisionDetection, onDragStart: dnd.handleDragStart, onDragMove: dnd.handleDragMove, onDragEnd: dnd.handleDragEnd, onDragCancel: dnd.handleDragCancel, accessibility: dnd.accessibility, children: [_jsx(PaletteDragGhost, { activeDrag: dnd.activeDrag }), _jsxs("div", { className: "kywi-editor-root", children: [_jsx(EditorToolbar, { state: state, dispatch: dispatch, ...(audiences ? { audiences } : {}), onSave: handleSave, onCancel: handleCancel, onAddSection: () => {
|
|
242
268
|
setTemplateRegion(Object.keys(state.layout.regions)[0] ?? 'main');
|
|
243
269
|
setShowTemplatePicker(true);
|
|
244
|
-
} }), _jsxs("div", { className: "kywi-editor-body", children: [_jsx(ModulePalette, { modules: paletteModules, ...(userRole ? { userRole } : {}) }), _jsx("div", { className: "kywi-editor-canvas", children: _jsx(DropTargetContext.Provider, { value: dnd.dropTarget, children: _jsx(EditorCanvas, { state: state, dispatch: dispatch, moduleComponents: moduleComponents, onInsertSection: handleInsertSection, resolveComponent: library.resolveModule, componentAffordances: componentAffordances }) }) }), _jsx(PropsPanel, { module: selectedModule, moduleConfig: selectedConfig, ...(audiences ? { audiences } : {}), components: componentOptions,
|
|
270
|
+
} }), _jsxs("div", { className: "kywi-editor-body", children: [_jsx(ModulePalette, { modules: paletteModules, ...(userRole ? { userRole } : {}) }), _jsx("div", { className: "kywi-editor-canvas", children: _jsx(DropTargetContext.Provider, { value: dnd.dropTarget, children: _jsx(EditorCanvas, { state: state, dispatch: dispatch, moduleComponents: moduleComponents, onInsertSection: handleInsertSection, resolveComponent: library.resolveModule, componentAffordances: componentAffordances, canPromoteModules: canvasKind === 'page' }) }) }), _jsx(PropsPanel, { module: selectedModule, moduleConfig: selectedConfig, ...(audiences ? { audiences } : {}), components: componentOptions,
|
|
245
271
|
// What a linked module renders, so its fields show the component's
|
|
246
272
|
// content rather than an empty form (kywi-cms#147 T4).
|
|
247
273
|
linkedModuleRender: selectedModule ? library.renderedModule(selectedModule) : null, onUpdateProps: (props) => dispatch({ type: 'UPDATE_PROPS', moduleId: state.selectedId, props }), onUpdateStyle: (style) => dispatch({ type: 'UPDATE_STYLE', moduleId: state.selectedId, style }), onDelete: () => dispatch({ type: 'REMOVE_MODULE', moduleId: state.selectedId }), onSaveAsComponent: () => {
|
|
@@ -265,7 +291,46 @@ export function LayoutEditor({ initialLayout, moduleRegistry, moduleComponents,
|
|
|
265
291
|
}, onDetachVariantContainer: () => {
|
|
266
292
|
if (state.selectedId)
|
|
267
293
|
connect.detachVariantContainer(state.selectedId);
|
|
268
|
-
}, onUpdateVariantContainer: handleUpdateVariantContainer, onDeleteVariantContainer: handleDeleteVariantContainer, onUnwrapVariantContainer: handleUnwrapVariantContainer,
|
|
294
|
+
}, onUpdateVariantContainer: handleUpdateVariantContainer, onDeleteVariantContainer: handleDeleteVariantContainer, onUnwrapVariantContainer: handleUnwrapVariantContainer,
|
|
295
|
+
// ── Module-level variant containers (kywi-cms#161) ─────────────
|
|
296
|
+
// Written identically in `overlay-shell.tsx`, so the two shells
|
|
297
|
+
// cannot drift on what these actions mean.
|
|
298
|
+
moduleVariantContainer: selectedModuleVariantContainer, onUpdateModuleVariantContainer: (patch) => dispatch({ type: 'UPDATE_MODULE_VARIANT_CONTAINER', containerId: state.selectedId, patch }),
|
|
299
|
+
// Adding and removing an arm are their OWN actions, not an arms
|
|
300
|
+
// patch: only they carry the duplicate-id guard, and only they leave
|
|
301
|
+
// the arms the author is not touching structurally alone.
|
|
302
|
+
onAddModuleVariantArm: (armId) => dispatch({ type: 'ADD_MODULE_VARIANT_ARM', containerId: state.selectedId, armId }), onRemoveModuleVariantArm: (armId) => dispatch({ type: 'REMOVE_MODULE_VARIANT_ARM', containerId: state.selectedId, armId }), onUnwrapModuleVariantContainer: (containerId) => {
|
|
303
|
+
dispatch({ type: 'UNWRAP_MODULE_VARIANT_CONTAINER', containerId });
|
|
304
|
+
dispatch({ type: 'DESELECT' });
|
|
305
|
+
},
|
|
306
|
+
// Delete is UNWRAP followed by removing the Default arm's module:
|
|
307
|
+
// unwrap puts that module back exactly where the container stood, and
|
|
308
|
+
// removing it is what actually takes the content off the page. Two
|
|
309
|
+
// history entries, so Undo walks back through both.
|
|
310
|
+
//
|
|
311
|
+
// NOT `REMOVE_MODULE` on the container's own id: that action matches
|
|
312
|
+
// plain module nodes only (`isModuleNode`), so a container id lands in
|
|
313
|
+
// its not-found branch — which still pushes history and sets `isDirty`
|
|
314
|
+
// for a document it did not change.
|
|
315
|
+
onDeleteModuleVariantContainer: () => {
|
|
316
|
+
const containerId = state.selectedId;
|
|
317
|
+
if (!containerId)
|
|
318
|
+
return;
|
|
319
|
+
const defaultModuleId = selectedModuleVariantContainer?.defaultModule.id;
|
|
320
|
+
dispatch({ type: 'UNWRAP_MODULE_VARIANT_CONTAINER', containerId });
|
|
321
|
+
if (defaultModuleId)
|
|
322
|
+
dispatch({ type: 'REMOVE_MODULE', moduleId: defaultModuleId });
|
|
323
|
+
dispatch({ type: 'DESELECT' });
|
|
324
|
+
}, moduleInVariantArm: selectedModuleInArm, canPromoteSelectedModule: selectedModuleCanPromote, onPromoteModule: (mode) => {
|
|
325
|
+
if (!state.selectedId)
|
|
326
|
+
return;
|
|
327
|
+
// The id is minted here so the SELECT that follows can name the
|
|
328
|
+
// container that does not exist yet — same pattern as the canvas
|
|
329
|
+
// chrome's own promote actions.
|
|
330
|
+
const containerId = generateId();
|
|
331
|
+
dispatch({ type: 'WRAP_MODULE_IN_VARIANT_CONTAINER', moduleId: state.selectedId, containerId, mode });
|
|
332
|
+
dispatch({ type: 'SELECT', id: containerId, selectionType: 'moduleVariantContainer' });
|
|
333
|
+
}, onClose: () => dispatch({ type: 'DESELECT' }) })] })] }), showTemplatePicker && (_jsx(SectionTemplatePicker
|
|
269
334
|
// The library this shell already loaded — the picker must not fetch its
|
|
270
335
|
// own copy of rows we are holding (kywi-cms#147 T3 review, I3).
|
|
271
336
|
, {
|