@elementor/editor-components 4.0.1 → 4.0.3
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/index.d.mts +4 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +35 -25
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +35 -25
- package/dist/index.mjs.map +1 -1
- package/package.json +23 -23
- package/src/api.ts +8 -7
- package/src/store/actions/load-components-overridable-props.ts +5 -22
- package/src/store/components-styles-provider.ts +3 -1
- package/src/store/extensible-slice.ts +19 -0
- package/src/store/store.ts +14 -1
package/dist/index.d.mts
CHANGED
|
@@ -136,7 +136,9 @@ declare const apiClient: {
|
|
|
136
136
|
unlockComponent: (componentId: number) => Promise<{
|
|
137
137
|
success: boolean;
|
|
138
138
|
}>;
|
|
139
|
-
getOverridableProps: (
|
|
139
|
+
getOverridableProps: (componentIds: number[]) => Promise<HttpResponse<Record<number, OverridableProps | null>, {
|
|
140
|
+
errors: Record<number, string>;
|
|
141
|
+
}>>;
|
|
140
142
|
updateArchivedComponents: (componentIds: number[], status: DocumentSaveStatus) => Promise<{
|
|
141
143
|
failedIds: number[];
|
|
142
144
|
successIds: number[];
|
|
@@ -1298,6 +1300,7 @@ declare const baseSlice: _reduxjs_toolkit.Slice<ComponentsState, {
|
|
|
1298
1300
|
componentId: ComponentId;
|
|
1299
1301
|
overridableProps: OverridableProps;
|
|
1300
1302
|
}>) => void;
|
|
1303
|
+
loadOverridableProps: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<Record<ComponentId, OverridableProps | null>>) => void;
|
|
1301
1304
|
rename: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<{
|
|
1302
1305
|
componentUid: string;
|
|
1303
1306
|
name: string;
|
package/dist/index.d.ts
CHANGED
|
@@ -136,7 +136,9 @@ declare const apiClient: {
|
|
|
136
136
|
unlockComponent: (componentId: number) => Promise<{
|
|
137
137
|
success: boolean;
|
|
138
138
|
}>;
|
|
139
|
-
getOverridableProps: (
|
|
139
|
+
getOverridableProps: (componentIds: number[]) => Promise<HttpResponse<Record<number, OverridableProps | null>, {
|
|
140
|
+
errors: Record<number, string>;
|
|
141
|
+
}>>;
|
|
140
142
|
updateArchivedComponents: (componentIds: number[], status: DocumentSaveStatus) => Promise<{
|
|
141
143
|
failedIds: number[];
|
|
142
144
|
successIds: number[];
|
|
@@ -1298,6 +1300,7 @@ declare const baseSlice: _reduxjs_toolkit.Slice<ComponentsState, {
|
|
|
1298
1300
|
componentId: ComponentId;
|
|
1299
1301
|
overridableProps: OverridableProps;
|
|
1300
1302
|
}>) => void;
|
|
1303
|
+
loadOverridableProps: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<Record<ComponentId, OverridableProps | null>>) => void;
|
|
1301
1304
|
rename: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<{
|
|
1302
1305
|
componentUid: string;
|
|
1303
1306
|
name: string;
|
package/dist/index.js
CHANGED
|
@@ -156,11 +156,12 @@ var apiClient = {
|
|
|
156
156
|
unlockComponent: async (componentId) => await (0, import_http_client.httpService)().post(`${BASE_URL}/unlock`, {
|
|
157
157
|
componentId
|
|
158
158
|
}).then((res) => res.data),
|
|
159
|
-
getOverridableProps: async (
|
|
160
|
-
|
|
161
|
-
|
|
159
|
+
getOverridableProps: async (componentIds) => await (0, import_http_client.httpService)().get(
|
|
160
|
+
`${BASE_URL}/overridable-props`,
|
|
161
|
+
{
|
|
162
|
+
params: { "componentIds[]": componentIds }
|
|
162
163
|
}
|
|
163
|
-
|
|
164
|
+
).then((res) => res.data),
|
|
164
165
|
updateArchivedComponents: async (componentIds, status) => await (0, import_http_client.httpService)().post(
|
|
165
166
|
`${BASE_URL}/archive`,
|
|
166
167
|
{
|
|
@@ -260,6 +261,18 @@ var baseSlice = (0, import_store2.__createSlice)({
|
|
|
260
261
|
}
|
|
261
262
|
component.overridableProps = payload.overridableProps;
|
|
262
263
|
},
|
|
264
|
+
loadOverridableProps: (state, { payload }) => {
|
|
265
|
+
const componentIds = Object.keys(payload);
|
|
266
|
+
componentIds.forEach((id) => {
|
|
267
|
+
const componentId = Number(id);
|
|
268
|
+
const overridableProps = payload[componentId];
|
|
269
|
+
const component = state.data.find((comp) => comp.id === componentId);
|
|
270
|
+
if (!component || !overridableProps) {
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
component.overridableProps = overridableProps;
|
|
274
|
+
});
|
|
275
|
+
},
|
|
263
276
|
rename: (state, { payload }) => {
|
|
264
277
|
const component = state.data.find((comp) => comp.uid === payload.componentUid);
|
|
265
278
|
if (!component) {
|
|
@@ -345,7 +358,16 @@ var selectUnpublishedComponents = (0, import_store3.__createSelector)(
|
|
|
345
358
|
var selectLoadIsPending = (0, import_store3.__createSelector)(selectLoadStatus, (status) => status === "pending");
|
|
346
359
|
var selectLoadIsError = (0, import_store3.__createSelector)(selectLoadStatus, (status) => status === "error");
|
|
347
360
|
var selectStyles = (state) => state[SLICE_NAME].styles ?? {};
|
|
348
|
-
var selectFlatStyles = (0, import_store3.__createSelector)(
|
|
361
|
+
var selectFlatStyles = (0, import_store3.__createSelector)(
|
|
362
|
+
selectStylesDefinitions,
|
|
363
|
+
(_state, excludeComponentId = null) => excludeComponentId,
|
|
364
|
+
(data, excludeComponentId) => {
|
|
365
|
+
if (excludeComponentId === null) {
|
|
366
|
+
return Object.values(data).flat();
|
|
367
|
+
}
|
|
368
|
+
return Object.entries(data).filter(([id]) => id !== String(excludeComponentId)).map(([, styles]) => styles).flat();
|
|
369
|
+
}
|
|
370
|
+
);
|
|
349
371
|
var selectCreatedThisSession = (0, import_store3.__createSelector)(
|
|
350
372
|
getCreatedThisSession,
|
|
351
373
|
(createdThisSession) => createdThisSession
|
|
@@ -2430,27 +2452,13 @@ async function getDocumentsMap(ids, cache) {
|
|
|
2430
2452
|
|
|
2431
2453
|
// src/store/actions/load-components-overridable-props.ts
|
|
2432
2454
|
var import_store23 = require("@elementor/store");
|
|
2433
|
-
function loadComponentsOverridableProps(componentIds) {
|
|
2434
|
-
|
|
2435
|
-
|
|
2436
|
-
}
|
|
2437
|
-
return Promise.all(componentIds.map(loadComponentOverrides));
|
|
2438
|
-
}
|
|
2439
|
-
async function loadComponentOverrides(componentId) {
|
|
2440
|
-
const isOverridablePropsLoaded = selectIsOverridablePropsLoaded((0, import_store23.__getState)(), componentId);
|
|
2441
|
-
if (isOverridablePropsLoaded) {
|
|
2442
|
-
return;
|
|
2443
|
-
}
|
|
2444
|
-
const overridableProps = await apiClient.getOverridableProps(componentId);
|
|
2445
|
-
if (!overridableProps) {
|
|
2455
|
+
async function loadComponentsOverridableProps(componentIds) {
|
|
2456
|
+
const unloadedIds = componentIds.filter((id) => !selectIsOverridablePropsLoaded((0, import_store23.__getState)(), id));
|
|
2457
|
+
if (!unloadedIds.length) {
|
|
2446
2458
|
return;
|
|
2447
2459
|
}
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
|
-
componentId,
|
|
2451
|
-
overridableProps
|
|
2452
|
-
})
|
|
2453
|
-
);
|
|
2460
|
+
const { data } = await apiClient.getOverridableProps(unloadedIds);
|
|
2461
|
+
(0, import_store23.__dispatch)(slice.actions.loadOverridableProps(data));
|
|
2454
2462
|
}
|
|
2455
2463
|
|
|
2456
2464
|
// src/store/actions/load-components-styles.ts
|
|
@@ -3060,6 +3068,7 @@ function removeComponentStyles(id) {
|
|
|
3060
3068
|
}
|
|
3061
3069
|
|
|
3062
3070
|
// src/store/components-styles-provider.ts
|
|
3071
|
+
var import_editor_elements10 = require("@elementor/editor-elements");
|
|
3063
3072
|
var import_editor_styles_repository = require("@elementor/editor-styles-repository");
|
|
3064
3073
|
var import_store34 = require("@elementor/store");
|
|
3065
3074
|
var componentsStylesProvider = (0, import_editor_styles_repository.createStylesProvider)({
|
|
@@ -3073,7 +3082,8 @@ var componentsStylesProvider = (0, import_editor_styles_repository.createStylesP
|
|
|
3073
3082
|
),
|
|
3074
3083
|
actions: {
|
|
3075
3084
|
all: () => {
|
|
3076
|
-
|
|
3085
|
+
const currentDocumentId = (0, import_editor_elements10.getCurrentDocumentId)();
|
|
3086
|
+
return selectFlatStyles((0, import_store34.__getState)(), currentDocumentId);
|
|
3077
3087
|
},
|
|
3078
3088
|
get: (id) => {
|
|
3079
3089
|
return selectFlatStyles((0, import_store34.__getState)()).find((style) => style.id === id) ?? null;
|