@elementor/editor-global-classes 4.2.0-870 → 4.2.0-871

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
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { StyleDefinitionID } from '@elementor/editor-styles';
2
+ import { StyleDefinitionID, StyleDefinition } from '@elementor/editor-styles';
3
3
 
4
4
  type ClassManagerPanelEmbeddedProps = {
5
5
  onRequestClose: () => void | Promise<void>;
@@ -20,6 +20,6 @@ type GlobalClassIndexEntry = {
20
20
 
21
21
  declare function addDocumentClasses(documentId: number): Promise<void>;
22
22
 
23
- declare function createLabelsForClasses(entries: GlobalClassIndexEntry[]): Record<StyleDefinitionID, string>;
23
+ declare function createLabelsForClasses(entries: Array<GlobalClassIndexEntry | StyleDefinition>): Record<StyleDefinitionID, string>;
24
24
 
25
25
  export { ClassManagerPanelEmbedded, type ClassManagerPanelEmbeddedProps, GLOBAL_CLASSES_URI, type GlobalClassIndexEntry, addDocumentClasses, createLabelsForClasses, init, loadExistingClasses };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { StyleDefinitionID } from '@elementor/editor-styles';
2
+ import { StyleDefinitionID, StyleDefinition } from '@elementor/editor-styles';
3
3
 
4
4
  type ClassManagerPanelEmbeddedProps = {
5
5
  onRequestClose: () => void | Promise<void>;
@@ -20,6 +20,6 @@ type GlobalClassIndexEntry = {
20
20
 
21
21
  declare function addDocumentClasses(documentId: number): Promise<void>;
22
22
 
23
- declare function createLabelsForClasses(entries: GlobalClassIndexEntry[]): Record<StyleDefinitionID, string>;
23
+ declare function createLabelsForClasses(entries: Array<GlobalClassIndexEntry | StyleDefinition>): Record<StyleDefinitionID, string>;
24
24
 
25
25
  export { ClassManagerPanelEmbedded, type ClassManagerPanelEmbeddedProps, GLOBAL_CLASSES_URI, type GlobalClassIndexEntry, addDocumentClasses, createLabelsForClasses, init, loadExistingClasses };
package/dist/index.js CHANGED
@@ -282,6 +282,20 @@ var slice = (0, import_store.__createSlice)({
282
282
  state.classLabels[id2] = previewClassData.label;
283
283
  }
284
284
  });
285
+ },
286
+ setOrderWithoutHistory(state, { payload }) {
287
+ state.data.order = payload;
288
+ },
289
+ updateAfterTemplateImport(state, {
290
+ payload
291
+ }) {
292
+ state.initialData.frontend.items = { ...state.initialData.frontend.items, ...payload.addedItems };
293
+ state.initialData.frontend.order = [...state.initialData.frontend.order, ...payload.addedIdsOrder];
294
+ state.initialData.preview.items = { ...state.initialData.preview.items, ...payload.addedItems };
295
+ state.initialData.preview.order = [...state.initialData.preview.order, ...payload.addedIdsOrder];
296
+ state.data.items = { ...state.data.items, ...payload.addedItems };
297
+ state.data.order = [...state.data.order, ...payload.addedIdsOrder];
298
+ state.classLabels = { ...state.classLabels, ...payload.addedClassLabels };
285
299
  }
286
300
  }
287
301
  });
@@ -2672,7 +2686,7 @@ var import_editor_mcp2 = require("@elementor/editor-mcp");
2672
2686
  var import_editor_panels2 = require("@elementor/editor-panels");
2673
2687
  var import_editor_styles_repository5 = require("@elementor/editor-styles-repository");
2674
2688
  var import_editor_v1_adapters8 = require("@elementor/editor-v1-adapters");
2675
- var import_store31 = require("@elementor/store");
2689
+ var import_store32 = require("@elementor/store");
2676
2690
 
2677
2691
  // src/components/class-manager/class-manager-button.tsx
2678
2692
  var React20 = __toESM(require("react"));
@@ -2820,8 +2834,20 @@ var import_store28 = require("@elementor/store");
2820
2834
  function GlobalStylesImportListener() {
2821
2835
  const dispatch7 = (0, import_store28.__useDispatch)();
2822
2836
  (0, import_react11.useEffect)(() => {
2823
- const handleGlobalStylesImported = () => {
2824
- loadCurrentDocumentClasses();
2837
+ const handleGlobalStylesImported = async (event) => {
2838
+ const customEvent = event;
2839
+ const globalClasses = customEvent.detail?.global_classes;
2840
+ if (!globalClasses?.added_items_order || !globalClasses?.added_items || globalClasses?.added_items_order?.length === 0) {
2841
+ loadCurrentDocumentClasses();
2842
+ return;
2843
+ }
2844
+ dispatch7(
2845
+ slice.actions.updateAfterTemplateImport({
2846
+ addedItems: globalClasses.added_items,
2847
+ addedIdsOrder: globalClasses.added_items_order,
2848
+ addedClassLabels: createLabelsForClasses(Object.values(globalClasses.added_items))
2849
+ })
2850
+ );
2825
2851
  };
2826
2852
  window.addEventListener(import_editor_canvas.GLOBAL_STYLES_IMPORTED_EVENT, handleGlobalStylesImported);
2827
2853
  return () => {
@@ -3307,7 +3333,7 @@ var import_editor_v1_adapters7 = require("@elementor/editor-v1-adapters");
3307
3333
  var import_editor_current_user3 = require("@elementor/editor-current-user");
3308
3334
  var import_editor_documents6 = require("@elementor/editor-documents");
3309
3335
  var import_editor_v1_adapters6 = require("@elementor/editor-v1-adapters");
3310
- var import_store29 = require("@elementor/store");
3336
+ var import_store30 = require("@elementor/store");
3311
3337
  var pendingSave = null;
3312
3338
  function syncWithDocumentSave(panelActions) {
3313
3339
  const unsubscribe = syncDirtyState();
@@ -3316,7 +3342,7 @@ function syncWithDocumentSave(panelActions) {
3316
3342
  return unsubscribe;
3317
3343
  }
3318
3344
  function syncDirtyState() {
3319
- return (0, import_store29.__subscribeWithSelector)(selectIsDirty, () => {
3345
+ return (0, import_store30.__subscribeWithSelector)(selectIsDirty, () => {
3320
3346
  if (!isDirty()) {
3321
3347
  return;
3322
3348
  }
@@ -3359,7 +3385,7 @@ function bindBeforeSaveTemplateAction() {
3359
3385
  }));
3360
3386
  }
3361
3387
  function isDirty() {
3362
- return selectIsDirty((0, import_store29.__getState)());
3388
+ return selectIsDirty((0, import_store30.__getState)());
3363
3389
  }
3364
3390
 
3365
3391
  // src/sync-with-document.tsx
@@ -3379,7 +3405,7 @@ function SyncWithDocumentSave() {
3379
3405
 
3380
3406
  // src/init.ts
3381
3407
  function init() {
3382
- (0, import_store31.__registerSlice)(slice);
3408
+ (0, import_store32.__registerSlice)(slice);
3383
3409
  if (!(0, import_editor_v1_adapters8.isExperimentActive)("e_editor_design_system_panel")) {
3384
3410
  (0, import_editor_panels2.__registerPanel)(panel);
3385
3411
  }