@elementor/editor-components 3.35.0-454 → 3.35.0-455

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.js CHANGED
@@ -3703,6 +3703,13 @@ var ControlLabel = ({ children, ...props }) => {
3703
3703
  return /* @__PURE__ */ React25.createElement(import_ui19.Stack, { direction: "row", alignItems: "center", justifyItems: "start", gap: 0.25 }, /* @__PURE__ */ React25.createElement(import_editor_controls2.ControlFormLabel, { ...props }, children), /* @__PURE__ */ React25.createElement(import_editor_controls2.ControlAdornments, null));
3704
3704
  };
3705
3705
 
3706
+ // src/components/errors.ts
3707
+ var import_utils7 = require("@elementor/utils");
3708
+ var OverrideControlInnerElementNotFoundError = (0, import_utils7.createError)({
3709
+ code: "override_control_inner_element_not_found",
3710
+ message: `Component inner element not found for override control. The element may have been deleted without updating the overridable props, or the component has not finished rendering yet.`
3711
+ });
3712
+
3706
3713
  // src/components/instance-editing-panel/override-prop-control.tsx
3707
3714
  function OverridePropControl({ overridableProp, overrides }) {
3708
3715
  return /* @__PURE__ */ React26.createElement(import_editor_editing_panel3.SettingsField, { bind: "component_instance", propDisplayName: overridableProp.label }, /* @__PURE__ */ React26.createElement(OverrideControl, { overridableProp, overrides }));
@@ -3765,6 +3772,12 @@ function OverrideControl({ overridableProp, overrides }) {
3765
3772
  overridableProp.label
3766
3773
  );
3767
3774
  const { elementId, widgetType, elType, propKey } = overridableProp.originPropFields ?? overridableProp;
3775
+ const elementContainer = (0, import_editor_elements14.getContainer)(elementId);
3776
+ if (!elementContainer) {
3777
+ throw new OverrideControlInnerElementNotFoundError({
3778
+ context: { componentId: componentInstanceId, elementId }
3779
+ });
3780
+ }
3768
3781
  const type = elType === "widget" ? widgetType : elType;
3769
3782
  const elementType = (0, import_editor_elements14.getElementType)(type);
3770
3783
  if (!elementType) {
@@ -4008,7 +4021,7 @@ var import_i18n28 = require("@wordpress/i18n");
4008
4021
 
4009
4022
  // src/store/actions/set-overridable-prop.ts
4010
4023
  var import_store58 = require("@elementor/store");
4011
- var import_utils7 = require("@elementor/utils");
4024
+ var import_utils8 = require("@elementor/utils");
4012
4025
  function setOverridableProp({
4013
4026
  componentId,
4014
4027
  overrideKey,
@@ -4034,7 +4047,7 @@ function setOverridableProp({
4034
4047
  groupId || existingOverridableProp?.groupId || void 0
4035
4048
  );
4036
4049
  const overridableProp = {
4037
- overrideKey: existingOverridableProp?.overrideKey || (0, import_utils7.generateUniqueId)("prop"),
4050
+ overrideKey: existingOverridableProp?.overrideKey || (0, import_utils8.generateUniqueId)("prop"),
4038
4051
  label,
4039
4052
  elementId,
4040
4053
  propKey,
@@ -4300,7 +4313,7 @@ function collectDeletedElementIds(containers) {
4300
4313
  // src/hooks/regenerate-override-keys.ts
4301
4314
  var import_editor_elements18 = require("@elementor/editor-elements");
4302
4315
  var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
4303
- var import_utils8 = require("@elementor/utils");
4316
+ var import_utils9 = require("@elementor/utils");
4304
4317
  function initRegenerateOverrideKeys() {
4305
4318
  (0, import_editor_v1_adapters9.registerDataHook)("after", "document/elements/duplicate", (_args, result) => {
4306
4319
  regenerateOverrideKeysForContainers(result);
@@ -4343,7 +4356,7 @@ function regenerateOverrideKeys(element) {
4343
4356
  ...override,
4344
4357
  value: {
4345
4358
  ...override.value,
4346
- override_key: (0, import_utils8.generateUniqueId)("prop")
4359
+ override_key: (0, import_utils9.generateUniqueId)("prop")
4347
4360
  }
4348
4361
  };
4349
4362
  });
@@ -4385,7 +4398,7 @@ var import_editor_elements19 = require("@elementor/editor-elements");
4385
4398
  var import_editor_mcp2 = require("@elementor/editor-mcp");
4386
4399
  var import_http_client2 = require("@elementor/http-client");
4387
4400
  var import_schema6 = require("@elementor/schema");
4388
- var import_utils9 = require("@elementor/utils");
4401
+ var import_utils10 = require("@elementor/utils");
4389
4402
  var InputSchema = {
4390
4403
  element_id: import_schema6.z.string().describe(
4391
4404
  'The unique identifier of the element to save as a component. Use the "list-elements" tool to find available element IDs in the current document.'
@@ -4435,7 +4448,7 @@ var handleSaveAsComponent = async (params) => {
4435
4448
  if (overridableProps) {
4436
4449
  updateElementDataWithOverridableProps(element, overridableProps);
4437
4450
  }
4438
- const uid = (0, import_utils9.generateUniqueId)("component");
4451
+ const uid = (0, import_utils10.generateUniqueId)("component");
4439
4452
  try {
4440
4453
  await apiClient.validate({
4441
4454
  items: [
@@ -4457,7 +4470,7 @@ var handleSaveAsComponent = async (params) => {
4457
4470
  };
4458
4471
  function enrichOverridableProps(input, rootElement) {
4459
4472
  const enrichedProps = {};
4460
- const defaultGroupId = (0, import_utils9.generateUniqueId)("group");
4473
+ const defaultGroupId = (0, import_utils10.generateUniqueId)("group");
4461
4474
  Object.entries(input.props).forEach(([, prop]) => {
4462
4475
  const { elementId, propKey, label } = prop;
4463
4476
  const element = findElementById(rootElement, elementId);
@@ -4478,7 +4491,7 @@ function enrichOverridableProps(input, rootElement) {
4478
4491
  `Property "${propKey}" does not exist in element "${elementId}" (type: ${widgetType}). Available properties: ${availableProps}`
4479
4492
  );
4480
4493
  }
4481
- const overrideKey = (0, import_utils9.generateUniqueId)("prop");
4494
+ const overrideKey = (0, import_utils10.generateUniqueId)("prop");
4482
4495
  const originValue = element.settings?.[propKey] ? element.settings[propKey] : elementType.propsSchema[propKey].default ?? null;
4483
4496
  enrichedProps[overrideKey] = {
4484
4497
  overrideKey,