@elementor/editor-components 4.0.0-666 → 4.0.0-668

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 (72) hide show
  1. package/dist/index.js +191 -3870
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.mjs +184 -3904
  4. package/dist/index.mjs.map +1 -1
  5. package/package.json +23 -23
  6. package/src/init.ts +0 -13
  7. package/src/extended/components/component-introduction.tsx +0 -77
  8. package/src/extended/components/component-panel-header/component-badge.tsx +0 -73
  9. package/src/extended/components/component-panel-header/component-panel-header.tsx +0 -98
  10. package/src/extended/components/component-properties-panel/component-properties-panel-content.tsx +0 -176
  11. package/src/extended/components/component-properties-panel/component-properties-panel.tsx +0 -43
  12. package/src/extended/components/component-properties-panel/properties-empty-state.tsx +0 -51
  13. package/src/extended/components/component-properties-panel/properties-group.tsx +0 -196
  14. package/src/extended/components/component-properties-panel/property-item.tsx +0 -124
  15. package/src/extended/components/component-properties-panel/sortable.tsx +0 -92
  16. package/src/extended/components/component-properties-panel/use-current-editable-item.ts +0 -73
  17. package/src/extended/components/component-properties-panel/utils/generate-unique-label.ts +0 -21
  18. package/src/extended/components/component-properties-panel/utils/validate-group-label.ts +0 -24
  19. package/src/extended/components/components-tab/component-item.tsx +0 -180
  20. package/src/extended/components/components-tab/components.tsx +0 -58
  21. package/src/extended/components/components-tab/delete-confirmation-dialog.tsx +0 -26
  22. package/src/extended/components/create-component-form/create-component-form.tsx +0 -281
  23. package/src/extended/components/create-component-form/hooks/use-form.ts +0 -72
  24. package/src/extended/components/create-component-form/utils/get-component-event-data.ts +0 -54
  25. package/src/extended/components/edit-component/component-modal.tsx +0 -133
  26. package/src/extended/components/edit-component/edit-component.tsx +0 -166
  27. package/src/extended/components/edit-component/use-canvas-document.ts +0 -9
  28. package/src/extended/components/edit-component/use-element-rect.ts +0 -81
  29. package/src/extended/components/instance-editing-panel/instance-editing-panel.tsx +0 -60
  30. package/src/extended/components/overridable-props/indicator.tsx +0 -83
  31. package/src/extended/components/overridable-props/overridable-prop-control.tsx +0 -127
  32. package/src/extended/components/overridable-props/overridable-prop-form.tsx +0 -135
  33. package/src/extended/components/overridable-props/overridable-prop-indicator.tsx +0 -138
  34. package/src/extended/components/overridable-props/utils/validate-prop-label.ts +0 -38
  35. package/src/extended/consts.ts +0 -3
  36. package/src/extended/hooks/use-navigate-back.ts +0 -24
  37. package/src/extended/init.ts +0 -108
  38. package/src/extended/mcp/index.ts +0 -14
  39. package/src/extended/mcp/save-as-component-tool.ts +0 -436
  40. package/src/extended/shortcuts/create-component-shortcut.ts +0 -121
  41. package/src/extended/store/actions/add-overridable-group.ts +0 -53
  42. package/src/extended/store/actions/archive-component.ts +0 -18
  43. package/src/extended/store/actions/create-unpublished-component.ts +0 -99
  44. package/src/extended/store/actions/delete-overridable-group.ts +0 -32
  45. package/src/extended/store/actions/delete-overridable-prop.ts +0 -64
  46. package/src/extended/store/actions/rename-component.ts +0 -48
  47. package/src/extended/store/actions/rename-overridable-group.ts +0 -33
  48. package/src/extended/store/actions/reorder-group-props.ts +0 -37
  49. package/src/extended/store/actions/reorder-overridable-groups.ts +0 -24
  50. package/src/extended/store/actions/reset-sanitized-components.ts +0 -5
  51. package/src/extended/store/actions/set-overridable-prop.ts +0 -109
  52. package/src/extended/store/actions/update-component-sanitized-attribute.ts +0 -7
  53. package/src/extended/store/actions/update-current-component.ts +0 -12
  54. package/src/extended/store/actions/update-overridable-prop-params.ts +0 -52
  55. package/src/extended/store/utils/groups-transformers.ts +0 -187
  56. package/src/extended/sync/before-save.ts +0 -52
  57. package/src/extended/sync/cleanup-overridable-props-on-delete.ts +0 -78
  58. package/src/extended/sync/create-components-before-save.ts +0 -111
  59. package/src/extended/sync/handle-component-edit-mode-container.ts +0 -114
  60. package/src/extended/sync/prevent-non-atomic-nesting.ts +0 -198
  61. package/src/extended/sync/revert-overridables-on-copy-or-duplicate.ts +0 -66
  62. package/src/extended/sync/sanitize-overridable-props.ts +0 -32
  63. package/src/extended/sync/set-component-overridable-props-settings-before-save.ts +0 -22
  64. package/src/extended/sync/update-archived-component-before-save.ts +0 -31
  65. package/src/extended/sync/update-component-title-before-save.ts +0 -18
  66. package/src/extended/utils/component-form-schema.ts +0 -32
  67. package/src/extended/utils/component-name-validation.ts +0 -25
  68. package/src/extended/utils/create-component-model.ts +0 -28
  69. package/src/extended/utils/get-container-for-new-element.ts +0 -49
  70. package/src/extended/utils/is-editing-component.ts +0 -5
  71. package/src/extended/utils/replace-element-with-component.ts +0 -11
  72. package/src/extended/utils/revert-overridable-settings.ts +0 -207
@@ -1,207 +0,0 @@
1
- import {
2
- getAllDescendants,
3
- getContainer,
4
- getElementSetting,
5
- updateElementSettings,
6
- type V1Element,
7
- type V1ElementData,
8
- type V1ElementSettingsProps,
9
- } from '@elementor/editor-elements';
10
-
11
- import { COMPONENT_WIDGET_TYPE } from '../../create-component-type';
12
- import {
13
- type ComponentInstanceOverrideProp,
14
- componentInstanceOverridePropTypeUtil,
15
- } from '../../prop-types/component-instance-override-prop-type';
16
- import {
17
- componentInstanceOverridesPropTypeUtil,
18
- type ComponentInstanceOverridesPropValue,
19
- } from '../../prop-types/component-instance-overrides-prop-type';
20
- import {
21
- type ComponentInstanceProp,
22
- componentInstancePropTypeUtil,
23
- type ComponentInstancePropValue,
24
- } from '../../prop-types/component-instance-prop-type';
25
- import { componentOverridablePropTypeUtil } from '../../prop-types/component-overridable-prop-type';
26
- import { isComponentInstance } from '../../utils/is-component-instance';
27
-
28
- type RevertSettingsResult = {
29
- hasChanges: boolean;
30
- settings: V1ElementSettingsProps;
31
- };
32
-
33
- export function revertElementOverridableSetting(
34
- elementId: string,
35
- settingKey: string,
36
- originValue: unknown,
37
- overrideKey: string
38
- ): void {
39
- const container = getContainer( elementId );
40
-
41
- if ( ! container ) {
42
- return;
43
- }
44
-
45
- if ( isComponentInstance( container.model.toJSON() ) ) {
46
- revertComponentInstanceOverridableSetting( elementId, overrideKey );
47
-
48
- return;
49
- }
50
-
51
- updateElementSettings( {
52
- id: elementId,
53
- props: { [ settingKey ]: originValue ?? null },
54
- withHistory: false,
55
- } );
56
- }
57
-
58
- function revertComponentInstanceOverridableSetting( elementId: string, overrideKey: string ): void {
59
- const setting = getElementSetting< ComponentInstanceProp >( elementId, 'component_instance' );
60
-
61
- const componentInstance = componentInstancePropTypeUtil.extract( setting );
62
- const overrides = componentInstanceOverridesPropTypeUtil.extract( componentInstance?.overrides );
63
-
64
- if ( ! overrides?.length ) {
65
- return;
66
- }
67
-
68
- const revertedOverrides = revertComponentInstanceOverrides( overrides, overrideKey );
69
-
70
- const updatedSetting = componentInstancePropTypeUtil.create( {
71
- ...componentInstance,
72
- overrides: componentInstanceOverridesPropTypeUtil.create( revertedOverrides ),
73
- } as ComponentInstancePropValue );
74
-
75
- updateElementSettings( {
76
- id: elementId,
77
- props: { component_instance: updatedSetting },
78
- withHistory: false,
79
- } );
80
- }
81
-
82
- function revertComponentInstanceOverrides(
83
- overrides: NonNullable< ComponentInstanceOverridesPropValue >,
84
- filterByKey?: string
85
- ): ComponentInstanceOverridesPropValue {
86
- return overrides
87
- .map( ( item ) => {
88
- if ( ! componentOverridablePropTypeUtil.isValid( item ) ) {
89
- return item;
90
- }
91
-
92
- if ( ! componentInstanceOverridePropTypeUtil.isValid( item.value.origin_value ) ) {
93
- return null;
94
- }
95
-
96
- if ( filterByKey && item.value.override_key !== filterByKey ) {
97
- return item;
98
- }
99
-
100
- return item.value.origin_value as ComponentInstanceOverrideProp;
101
- } )
102
- .filter( ( item ): item is NonNullable< typeof item > => item !== null );
103
- }
104
-
105
- function revertOverridablePropsFromSettings( settings: V1ElementSettingsProps ): RevertSettingsResult {
106
- let hasChanges = false;
107
- const revertedSettings: V1ElementSettingsProps = {};
108
-
109
- for ( const [ key, value ] of Object.entries( settings ) ) {
110
- if ( componentOverridablePropTypeUtil.isValid( value ) ) {
111
- revertedSettings[ key ] = value.value.origin_value;
112
- hasChanges = true;
113
- } else {
114
- revertedSettings[ key ] = value;
115
- }
116
- }
117
-
118
- return { hasChanges, settings: revertedSettings };
119
- }
120
-
121
- export function revertAllOverridablesInElementData( elementData: V1ElementData ): V1ElementData {
122
- const revertedElement = { ...elementData };
123
-
124
- if ( isComponentInstance( { widgetType: elementData.widgetType, elType: elementData.elType } ) ) {
125
- revertedElement.settings = revertComponentInstanceSettings( elementData.settings );
126
- } else if ( revertedElement.settings ) {
127
- const { settings } = revertOverridablePropsFromSettings( revertedElement.settings );
128
- revertedElement.settings = settings;
129
- }
130
-
131
- if ( revertedElement.elements ) {
132
- revertedElement.elements = revertedElement.elements.map( revertAllOverridablesInElementData );
133
- }
134
-
135
- return revertedElement;
136
- }
137
-
138
- function revertComponentInstanceSettings( settings: V1ElementData[ 'settings' ] ): V1ElementData[ 'settings' ] {
139
- if ( ! settings?.component_instance ) {
140
- return settings;
141
- }
142
-
143
- const componentInstance = componentInstancePropTypeUtil.extract( settings.component_instance );
144
- const overrides = componentInstanceOverridesPropTypeUtil.extract( componentInstance?.overrides );
145
-
146
- if ( ! overrides?.length ) {
147
- return settings;
148
- }
149
-
150
- const revertedOverrides = revertComponentInstanceOverrides( overrides );
151
-
152
- return {
153
- ...settings,
154
- component_instance: componentInstancePropTypeUtil.create( {
155
- ...componentInstance,
156
- overrides: componentInstanceOverridesPropTypeUtil.create( revertedOverrides ),
157
- } as ComponentInstancePropValue ),
158
- };
159
- }
160
-
161
- export function revertAllOverridablesInContainer( container: V1Element ): void {
162
- getAllDescendants( container ).forEach( ( element ) => {
163
- if ( element.model.get( 'widgetType' ) === COMPONENT_WIDGET_TYPE ) {
164
- revertComponentInstanceOverridesInElement( element );
165
- } else {
166
- revertElementSettings( element );
167
- }
168
- } );
169
- }
170
-
171
- function revertComponentInstanceOverridesInElement( element: V1Element ): void {
172
- const settings = element.settings?.toJSON() ?? {};
173
- const componentInstance = componentInstancePropTypeUtil.extract( settings.component_instance );
174
- const overrides = componentInstanceOverridesPropTypeUtil.extract( componentInstance?.overrides );
175
-
176
- if ( ! overrides?.length ) {
177
- return;
178
- }
179
-
180
- const revertedOverrides = revertComponentInstanceOverrides( overrides );
181
-
182
- const updatedSetting = componentInstancePropTypeUtil.create( {
183
- ...componentInstance,
184
- overrides: componentInstanceOverridesPropTypeUtil.create( revertedOverrides ),
185
- } as ComponentInstancePropValue );
186
-
187
- updateElementSettings( {
188
- id: element.id,
189
- props: { component_instance: updatedSetting },
190
- withHistory: false,
191
- } );
192
- }
193
-
194
- function revertElementSettings( element: V1Element ): void {
195
- const settings = element.settings?.toJSON() ?? {};
196
- const { hasChanges, settings: revertedSettings } = revertOverridablePropsFromSettings( settings );
197
-
198
- if ( ! hasChanges ) {
199
- return;
200
- }
201
-
202
- updateElementSettings( {
203
- id: element.id,
204
- props: revertedSettings,
205
- withHistory: false,
206
- } );
207
- }