@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 CHANGED
@@ -136,7 +136,9 @@ declare const apiClient: {
136
136
  unlockComponent: (componentId: number) => Promise<{
137
137
  success: boolean;
138
138
  }>;
139
- getOverridableProps: (componentId: number) => Promise<OverridableProps>;
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: (componentId: number) => Promise<OverridableProps>;
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 (componentId) => await (0, import_http_client.httpService)().get(`${BASE_URL}/overridable-props`, {
160
- params: {
161
- componentId: componentId.toString()
159
+ getOverridableProps: async (componentIds) => await (0, import_http_client.httpService)().get(
160
+ `${BASE_URL}/overridable-props`,
161
+ {
162
+ params: { "componentIds[]": componentIds }
162
163
  }
163
- }).then((res) => res.data.data),
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)(selectStylesDefinitions, (data) => Object.values(data).flat());
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
- if (!componentIds.length) {
2435
- return;
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
- (0, import_store23.__dispatch)(
2449
- slice.actions.setOverridableProps({
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
- return selectFlatStyles((0, import_store34.__getState)());
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;