@elementor/editor-editing-panel 4.4.0-1087 → 4.4.0-1088

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
@@ -2548,9 +2548,27 @@ var import_react18 = require("react");
2548
2548
  var import_editor_controls3 = require("@elementor/editor-controls");
2549
2549
  var import_editor_documents2 = require("@elementor/editor-documents");
2550
2550
  var import_editor_elements6 = require("@elementor/editor-elements");
2551
+ var import_editor_props7 = require("@elementor/editor-props");
2552
+ var import_editor_responsive2 = require("@elementor/editor-responsive");
2551
2553
  var import_editor_v1_adapters4 = require("@elementor/editor-v1-adapters");
2552
2554
  var import_i18n10 = require("@wordpress/i18n");
2553
2555
 
2556
+ // src/utils/is-responsive-prop-type.ts
2557
+ function isResponsivePropType(propType) {
2558
+ if (!propType) {
2559
+ return false;
2560
+ }
2561
+ if ("key" in propType && propType.key === "responsive") {
2562
+ return true;
2563
+ }
2564
+ if (propType.kind === "union") {
2565
+ return Object.values(propType.prop_types).some(
2566
+ (inner) => isResponsivePropType(inner)
2567
+ );
2568
+ }
2569
+ return false;
2570
+ }
2571
+
2554
2572
  // src/controls-registry/create-top-level-object-type.ts
2555
2573
  var createTopLevelObjectType = ({ schema }) => {
2556
2574
  const schemaPropType = {
@@ -2566,6 +2584,7 @@ var createTopLevelObjectType = ({ schema }) => {
2566
2584
 
2567
2585
  // src/controls-registry/settings-field.tsx
2568
2586
  var HISTORY_DEBOUNCE_WAIT2 = 800;
2587
+ var DESKTOP_BREAKPOINT = "desktop";
2569
2588
  var SettingsField = ({ bind, children, propDisplayName }) => {
2570
2589
  const {
2571
2590
  element: { id: elementId },
@@ -2593,7 +2612,24 @@ var SettingsField = ({ bind, children, propDisplayName }) => {
2593
2612
  (0, import_editor_elements6.updateElementSettings)({ id: elementId, props: settings, withHistory: false });
2594
2613
  }
2595
2614
  };
2596
- return /* @__PURE__ */ React23.createElement(import_editor_controls3.PropProvider, { propType, value, setValue, isDisabled }, /* @__PURE__ */ React23.createElement(import_editor_controls3.PropKeyProvider, { bind }, children));
2615
+ return /* @__PURE__ */ React23.createElement(import_editor_controls3.PropProvider, { propType, value, setValue, isDisabled }, /* @__PURE__ */ React23.createElement(import_editor_controls3.PropKeyProvider, { bind }, isResponsivePropType(propsSchema[bind]) ? /* @__PURE__ */ React23.createElement(ResponsiveBinding, null, children) : children));
2616
+ };
2617
+ var ResponsiveBinding = ({ children }) => {
2618
+ const { value, setValue, propType, disabled } = (0, import_editor_controls3.useBoundProp)(import_editor_props7.responsivePropTypeUtil);
2619
+ const breakpoint = (0, import_editor_responsive2.useActiveBreakpoint)() ?? DESKTOP_BREAKPOINT;
2620
+ const activeBreakpoints = ((0, import_editor_responsive2.useBreakpoints)() ?? []).map(({ id }) => id);
2621
+ const inherited = (0, import_editor_props7.responsiveFallbackChain)(breakpoint).filter((key) => key !== breakpoint && activeBreakpoints.includes(key)).map((key) => value?.[key]).find((entry) => entry !== null && entry !== void 0);
2622
+ return /* @__PURE__ */ React23.createElement(
2623
+ import_editor_controls3.PropProvider,
2624
+ {
2625
+ propType,
2626
+ value,
2627
+ setValue,
2628
+ placeholder: { [breakpoint]: inherited },
2629
+ isDisabled: () => disabled
2630
+ },
2631
+ /* @__PURE__ */ React23.createElement(import_editor_controls3.PropKeyProvider, { bind: breakpoint }, children)
2632
+ );
2597
2633
  };
2598
2634
  function useUndoableUpdateElementProp({
2599
2635
  elementId,
@@ -2751,8 +2787,8 @@ function isControlHiddenByDependencies(control, propsSchema, settings) {
2751
2787
  // src/components/style-tab.tsx
2752
2788
  var React90 = __toESM(require("react"));
2753
2789
  var import_react36 = require("react");
2754
- var import_editor_props16 = require("@elementor/editor-props");
2755
- var import_editor_responsive3 = require("@elementor/editor-responsive");
2790
+ var import_editor_props17 = require("@elementor/editor-props");
2791
+ var import_editor_responsive4 = require("@elementor/editor-responsive");
2756
2792
  var import_locations4 = require("@elementor/locations");
2757
2793
  var import_session8 = require("@elementor/session");
2758
2794
  var import_ui43 = require("@elementor/ui");
@@ -2761,8 +2797,8 @@ var import_ui43 = require("@elementor/ui");
2761
2797
  var React26 = __toESM(require("react"));
2762
2798
  var import_react19 = require("react");
2763
2799
  var import_editor_elements8 = require("@elementor/editor-elements");
2764
- var import_editor_props9 = require("@elementor/editor-props");
2765
- var import_editor_responsive2 = require("@elementor/editor-responsive");
2800
+ var import_editor_props10 = require("@elementor/editor-props");
2801
+ var import_editor_responsive3 = require("@elementor/editor-responsive");
2766
2802
  var import_editor_styles5 = require("@elementor/editor-styles");
2767
2803
  var import_editor_styles_repository15 = require("@elementor/editor-styles-repository");
2768
2804
 
@@ -2782,10 +2818,10 @@ function useDefaultStyleTagFromPreview(elementId) {
2782
2818
  }
2783
2819
 
2784
2820
  // src/styles-inheritance/create-styles-inheritance.ts
2785
- var import_editor_props8 = require("@elementor/editor-props");
2821
+ var import_editor_props9 = require("@elementor/editor-props");
2786
2822
 
2787
2823
  // src/styles-inheritance/create-snapshots-manager.ts
2788
- var import_editor_props7 = require("@elementor/editor-props");
2824
+ var import_editor_props8 = require("@elementor/editor-props");
2789
2825
  var import_editor_variables = require("@elementor/editor-variables");
2790
2826
 
2791
2827
  // src/styles-inheritance/utils.ts
@@ -2886,7 +2922,7 @@ function buildInitialSnapshotFromStyles(styles) {
2886
2922
  variant: { props }
2887
2923
  } = styleData;
2888
2924
  Object.entries(props).forEach(([key, value]) => {
2889
- const filteredValue = (0, import_editor_props7.filterEmptyValues)(value);
2925
+ const filteredValue = (0, import_editor_props8.filterEmptyValues)(value);
2890
2926
  const filteredVariableValue = filteredValue?.$$type?.includes("variable") && !(0, import_editor_variables.hasVariable)(filteredValue?.value) ? null : filteredValue;
2891
2927
  if (filteredVariableValue === null) {
2892
2928
  return;
@@ -2933,7 +2969,7 @@ function createStylesInheritance(styleDefs, breakpointsRoot) {
2933
2969
  inheritanceChain = inheritanceChain.map(({ value: styleValue, ...rest }) => ({
2934
2970
  ...rest,
2935
2971
  value: getValueByPath(styleValue, nextFields, filterPropType)
2936
- })).filter(({ value: styleValue }) => !(0, import_editor_props8.isEmpty)(styleValue));
2972
+ })).filter(({ value: styleValue }) => !(0, import_editor_props9.isEmpty)(styleValue));
2937
2973
  }
2938
2974
  return inheritanceChain;
2939
2975
  }
@@ -2975,7 +3011,7 @@ function getValueByPath(value, path, filterPropType) {
2975
3011
  if (!currentScope) {
2976
3012
  return null;
2977
3013
  }
2978
- if ((0, import_editor_props8.isTransformable)(currentScope)) {
3014
+ if ((0, import_editor_props9.isTransformable)(currentScope)) {
2979
3015
  return currentScope.value?.[key] ?? null;
2980
3016
  }
2981
3017
  if (typeof currentScope === "object") {
@@ -2985,7 +3021,7 @@ function getValueByPath(value, path, filterPropType) {
2985
3021
  }, value);
2986
3022
  }
2987
3023
  function shouldUseOriginalValue(filterPropType, value) {
2988
- return !!filterPropType && (0, import_editor_props8.isTransformable)(value) && filterPropType.key !== value.$$type;
3024
+ return !!filterPropType && (0, import_editor_props9.isTransformable)(value) && filterPropType.key !== value.$$type;
2989
3025
  }
2990
3026
  var getFilterPropType = (propType, path) => {
2991
3027
  if (!propType || propType.kind !== "union") {
@@ -3009,7 +3045,7 @@ var getFilterPropType = (propType, path) => {
3009
3045
  var Context4 = (0, import_react19.createContext)(null);
3010
3046
  function StyleInheritanceProvider({ children }) {
3011
3047
  const styleDefs = useAppliedStyles();
3012
- const breakpointsTree = (0, import_editor_responsive2.getBreakpointsTree)();
3048
+ const breakpointsTree = (0, import_editor_responsive3.getBreakpointsTree)();
3013
3049
  const { getSnapshot, getInheritanceChain } = createStylesInheritance(styleDefs, breakpointsTree);
3014
3050
  return /* @__PURE__ */ React26.createElement(Context4.Provider, { value: { getSnapshot, getInheritanceChain } }, children);
3015
3051
  }
@@ -3054,7 +3090,7 @@ var useAppliedStyles = () => {
3054
3090
  const { id: activeStyleId } = useStyle();
3055
3091
  useStylesRerender();
3056
3092
  const classesProp = usePanelElementSetting(currentClassesProp);
3057
- const appliedStyles = import_editor_props9.classesPropTypeUtil.extract(classesProp) ?? [];
3093
+ const appliedStyles = import_editor_props10.classesPropTypeUtil.extract(classesProp) ?? [];
3058
3094
  const applicableIds = [
3059
3095
  ...baseStyles,
3060
3096
  ...appliedStyles,
@@ -3119,7 +3155,7 @@ var import_i18n11 = require("@wordpress/i18n");
3119
3155
  // src/controls-registry/styles-field.tsx
3120
3156
  var React27 = __toESM(require("react"));
3121
3157
  var import_editor_controls6 = require("@elementor/editor-controls");
3122
- var import_editor_props11 = require("@elementor/editor-props");
3158
+ var import_editor_props12 = require("@elementor/editor-props");
3123
3159
  var import_editor_styles6 = require("@elementor/editor-styles");
3124
3160
 
3125
3161
  // src/hooks/use-styles-field.ts
@@ -3135,14 +3171,14 @@ function useStylesField(propName, meta) {
3135
3171
  // src/controls-registry/conditional-field.tsx
3136
3172
  var import_react20 = require("react");
3137
3173
  var import_editor_controls5 = require("@elementor/editor-controls");
3138
- var import_editor_props10 = require("@elementor/editor-props");
3174
+ var import_editor_props11 = require("@elementor/editor-props");
3139
3175
  var ConditionalField = ({ children }) => {
3140
3176
  const { propType, value, resetValue } = (0, import_editor_controls5.useBoundProp)();
3141
3177
  const depList = getDependencies(propType);
3142
3178
  const { values: depValues, setValues: setDepValues } = useStylesFields(depList);
3143
3179
  const inheritedValues = useInheritedValues(depList);
3144
3180
  const resolvedValues = resolveWithInherited(depValues, inheritedValues);
3145
- const isHidden = !(0, import_editor_props10.isDependencyMet)(propType?.dependencies, resolvedValues).isMet;
3181
+ const isHidden = !(0, import_editor_props11.isDependencyMet)(propType?.dependencies, resolvedValues).isMet;
3146
3182
  useSyncDepsWithInherited({ isHidden, depValues, value, inheritedValues, setDepValues, resetValue });
3147
3183
  return isHidden ? null : children;
3148
3184
  };
@@ -3198,7 +3234,7 @@ function getDependencies(propType) {
3198
3234
  if (!propType?.dependencies?.terms.length) {
3199
3235
  return [];
3200
3236
  }
3201
- return propType.dependencies.terms.flatMap((term) => !(0, import_editor_props10.isDependency)(term) ? term.path : []);
3237
+ return propType.dependencies.terms.flatMap((term) => !(0, import_editor_props11.isDependency)(term) ? term.path : []);
3202
3238
  }
3203
3239
 
3204
3240
  // src/controls-registry/styles-field.tsx
@@ -3209,10 +3245,10 @@ function buildResolvedPlaceholder(chain, startIndex) {
3209
3245
  return void 0;
3210
3246
  }
3211
3247
  const firstValue = firstEntry.value;
3212
- if (!import_editor_props11.dimensionsPropTypeUtil.isValid(firstValue)) {
3248
+ if (!import_editor_props12.dimensionsPropTypeUtil.isValid(firstValue)) {
3213
3249
  return firstValue;
3214
3250
  }
3215
- const firstDims = import_editor_props11.dimensionsPropTypeUtil.extract(firstValue);
3251
+ const firstDims = import_editor_props12.dimensionsPropTypeUtil.extract(firstValue);
3216
3252
  if (DIMENSION_SIDES.every((side) => firstDims?.[side] !== null && firstDims?.[side] !== void 0)) {
3217
3253
  return firstValue;
3218
3254
  }
@@ -3224,15 +3260,15 @@ function buildResolvedPlaceholder(chain, startIndex) {
3224
3260
  });
3225
3261
  for (let i = startIndex + 1; i < chain.length; i++) {
3226
3262
  const val = chain[i].value;
3227
- if (import_editor_props11.sizePropTypeUtil.isValid(val)) {
3263
+ if (import_editor_props12.sizePropTypeUtil.isValid(val)) {
3228
3264
  DIMENSION_SIDES.forEach((side) => {
3229
3265
  if (merged[side] === null || merged[side] === void 0) {
3230
3266
  merged[side] = val;
3231
3267
  }
3232
3268
  });
3233
3269
  break;
3234
- } else if (import_editor_props11.dimensionsPropTypeUtil.isValid(val)) {
3235
- const dims = import_editor_props11.dimensionsPropTypeUtil.extract(val);
3270
+ } else if (import_editor_props12.dimensionsPropTypeUtil.isValid(val)) {
3271
+ const dims = import_editor_props12.dimensionsPropTypeUtil.extract(val);
3236
3272
  DIMENSION_SIDES.forEach((side) => {
3237
3273
  if ((merged[side] === null || merged[side] === void 0) && dims?.[side] !== null && dims?.[side] !== void 0) {
3238
3274
  merged[side] = dims[side];
@@ -3243,7 +3279,7 @@ function buildResolvedPlaceholder(chain, startIndex) {
3243
3279
  break;
3244
3280
  }
3245
3281
  }
3246
- return import_editor_props11.dimensionsPropTypeUtil.create({
3282
+ return import_editor_props12.dimensionsPropTypeUtil.create({
3247
3283
  "block-start": merged["block-start"] ?? null,
3248
3284
  "block-end": merged["block-end"] ?? null,
3249
3285
  "inline-start": merged["inline-start"] ?? null,
@@ -3332,7 +3368,7 @@ var BorderColorField = () => /* @__PURE__ */ React31.createElement(StylesField,
3332
3368
  // src/components/style-sections/border-section/border-radius-field.tsx
3333
3369
  var React33 = __toESM(require("react"));
3334
3370
  var import_editor_controls9 = require("@elementor/editor-controls");
3335
- var import_editor_props12 = require("@elementor/editor-props");
3371
+ var import_editor_props13 = require("@elementor/editor-props");
3336
3372
  var import_icons5 = require("@elementor/icons");
3337
3373
  var import_ui20 = require("@elementor/ui");
3338
3374
  var import_i18n13 = require("@wordpress/i18n");
@@ -3403,7 +3439,7 @@ var BorderRadiusField = () => {
3403
3439
  label: BORDER_RADIUS_LABEL,
3404
3440
  icon: /* @__PURE__ */ React33.createElement(import_icons5.BorderCornersIcon, { fontSize: "tiny" }),
3405
3441
  tooltipLabel: (0, import_i18n13.__)("Adjust corners", "elementor"),
3406
- multiSizePropTypeUtil: import_editor_props12.borderRadiusPropTypeUtil
3442
+ multiSizePropTypeUtil: import_editor_props13.borderRadiusPropTypeUtil
3407
3443
  }
3408
3444
  )));
3409
3445
  };
@@ -3429,7 +3465,7 @@ var BorderStyleField = () => /* @__PURE__ */ React34.createElement(StylesField,
3429
3465
  // src/components/style-sections/border-section/border-width-field.tsx
3430
3466
  var React35 = __toESM(require("react"));
3431
3467
  var import_editor_controls11 = require("@elementor/editor-controls");
3432
- var import_editor_props13 = require("@elementor/editor-props");
3468
+ var import_editor_props14 = require("@elementor/editor-props");
3433
3469
  var import_icons6 = require("@elementor/icons");
3434
3470
  var import_ui21 = require("@elementor/ui");
3435
3471
  var import_i18n15 = require("@wordpress/i18n");
@@ -3471,7 +3507,7 @@ var BorderWidthField = () => {
3471
3507
  label: BORDER_WIDTH_LABEL,
3472
3508
  icon: /* @__PURE__ */ React35.createElement(import_icons6.SideAllIcon, { fontSize: "tiny" }),
3473
3509
  tooltipLabel: (0, import_i18n15.__)("Adjust borders", "elementor"),
3474
- multiSizePropTypeUtil: import_editor_props13.borderWidthPropTypeUtil
3510
+ multiSizePropTypeUtil: import_editor_props14.borderWidthPropTypeUtil
3475
3511
  }
3476
3512
  ));
3477
3513
  };
@@ -4178,7 +4214,7 @@ var getGroupControlValue = (order) => {
4178
4214
  var React51 = __toESM(require("react"));
4179
4215
  var import_react24 = require("react");
4180
4216
  var import_editor_controls22 = require("@elementor/editor-controls");
4181
- var import_editor_props14 = require("@elementor/editor-props");
4217
+ var import_editor_props15 = require("@elementor/editor-props");
4182
4218
  var import_icons13 = require("@elementor/icons");
4183
4219
  var import_i18n28 = require("@wordpress/i18n");
4184
4220
  var FLEX_SIZE_LABEL = (0, import_i18n28.__)("Flex Size", "elementor");
@@ -4257,24 +4293,24 @@ var createFlexValueForGroup = (group, flexValue) => {
4257
4293
  return null;
4258
4294
  }
4259
4295
  if (group === "flex-grow") {
4260
- return import_editor_props14.flexPropTypeUtil.create({
4261
- flexGrow: import_editor_props14.numberPropTypeUtil.create(DEFAULT),
4262
- flexShrink: import_editor_props14.numberPropTypeUtil.create(0),
4263
- flexBasis: import_editor_props14.sizePropTypeUtil.create({ unit: "auto", size: "" })
4296
+ return import_editor_props15.flexPropTypeUtil.create({
4297
+ flexGrow: import_editor_props15.numberPropTypeUtil.create(DEFAULT),
4298
+ flexShrink: import_editor_props15.numberPropTypeUtil.create(0),
4299
+ flexBasis: import_editor_props15.sizePropTypeUtil.create({ unit: "auto", size: "" })
4264
4300
  });
4265
4301
  }
4266
4302
  if (group === "flex-shrink") {
4267
- return import_editor_props14.flexPropTypeUtil.create({
4268
- flexGrow: import_editor_props14.numberPropTypeUtil.create(0),
4269
- flexShrink: import_editor_props14.numberPropTypeUtil.create(DEFAULT),
4270
- flexBasis: import_editor_props14.sizePropTypeUtil.create({ unit: "auto", size: "" })
4303
+ return import_editor_props15.flexPropTypeUtil.create({
4304
+ flexGrow: import_editor_props15.numberPropTypeUtil.create(0),
4305
+ flexShrink: import_editor_props15.numberPropTypeUtil.create(DEFAULT),
4306
+ flexBasis: import_editor_props15.sizePropTypeUtil.create({ unit: "auto", size: "" })
4271
4307
  });
4272
4308
  }
4273
4309
  if (group === "custom") {
4274
4310
  if (flexValue) {
4275
4311
  return flexValue;
4276
4312
  }
4277
- return import_editor_props14.flexPropTypeUtil.create({
4313
+ return import_editor_props15.flexPropTypeUtil.create({
4278
4314
  flexGrow: null,
4279
4315
  flexShrink: null,
4280
4316
  flexBasis: null
@@ -4284,7 +4320,7 @@ var createFlexValueForGroup = (group, flexValue) => {
4284
4320
  };
4285
4321
  var FlexCustomField = () => {
4286
4322
  const flexBasisRowRef = (0, import_react24.useRef)(null);
4287
- const context = (0, import_editor_controls22.useBoundProp)(import_editor_props14.flexPropTypeUtil);
4323
+ const context = (0, import_editor_controls22.useBoundProp)(import_editor_props15.flexPropTypeUtil);
4288
4324
  return /* @__PURE__ */ React51.createElement(import_editor_controls22.PropProvider, { ...context }, /* @__PURE__ */ React51.createElement(React51.Fragment, null, /* @__PURE__ */ React51.createElement(StylesFieldLayout, { label: (0, import_i18n28.__)("Grow", "elementor") }, /* @__PURE__ */ React51.createElement(import_editor_controls22.PropKeyProvider, { bind: "flexGrow" }, /* @__PURE__ */ React51.createElement(import_editor_controls22.NumberControl, { min: 0, shouldForceInt: true }))), /* @__PURE__ */ React51.createElement(StylesFieldLayout, { label: (0, import_i18n28.__)("Shrink", "elementor") }, /* @__PURE__ */ React51.createElement(import_editor_controls22.PropKeyProvider, { bind: "flexShrink" }, /* @__PURE__ */ React51.createElement(import_editor_controls22.NumberControl, { min: 0, shouldForceInt: true }))), /* @__PURE__ */ React51.createElement(StylesFieldLayout, { label: (0, import_i18n28.__)("Basis", "elementor"), ref: flexBasisRowRef }, /* @__PURE__ */ React51.createElement(import_editor_controls22.PropKeyProvider, { bind: "flexBasis" }, /* @__PURE__ */ React51.createElement(import_editor_controls22.SizeControl, { extendedOptions: ["auto"], anchorRef: flexBasisRowRef })))));
4289
4325
  };
4290
4326
  var getActiveGroup = ({
@@ -4512,7 +4548,7 @@ var import_ui34 = require("@elementor/ui");
4512
4548
  var import_i18n34 = require("@wordpress/i18n");
4513
4549
 
4514
4550
  // src/components/style-sections/layout-section/utils/grid-track-value.ts
4515
- var import_editor_props15 = require("@elementor/editor-props");
4551
+ var import_editor_props16 = require("@elementor/editor-props");
4516
4552
  var FR = "fr";
4517
4553
  var CUSTOM2 = "custom";
4518
4554
  var UNITS = [FR, CUSTOM2];
@@ -4544,11 +4580,11 @@ var parseValue = (value) => {
4544
4580
  if (!value) {
4545
4581
  return EMPTY;
4546
4582
  }
4547
- if (import_editor_props15.gridTrackSizePropTypeUtil.isValid(value)) {
4548
- return parseGridTrackSize(import_editor_props15.gridTrackSizePropTypeUtil.extract(value));
4583
+ if (import_editor_props16.gridTrackSizePropTypeUtil.isValid(value)) {
4584
+ return parseGridTrackSize(import_editor_props16.gridTrackSizePropTypeUtil.extract(value));
4549
4585
  }
4550
- if (import_editor_props15.stringPropTypeUtil.isValid(value)) {
4551
- return parseString(import_editor_props15.stringPropTypeUtil.extract(value));
4586
+ if (import_editor_props16.stringPropTypeUtil.isValid(value)) {
4587
+ return parseString(import_editor_props16.stringPropTypeUtil.extract(value));
4552
4588
  }
4553
4589
  return EMPTY;
4554
4590
  };
@@ -4567,9 +4603,9 @@ var toPropValue = (v) => {
4567
4603
  case "empty":
4568
4604
  return null;
4569
4605
  case "fr":
4570
- return import_editor_props15.gridTrackSizePropTypeUtil.create({ size: v.count, unit: FR });
4606
+ return import_editor_props16.gridTrackSizePropTypeUtil.create({ size: v.count, unit: FR });
4571
4607
  case "custom":
4572
- return import_editor_props15.gridTrackSizePropTypeUtil.create({ size: v.raw, unit: CUSTOM2 });
4608
+ return import_editor_props16.gridTrackSizePropTypeUtil.create({ size: v.raw, unit: CUSTOM2 });
4573
4609
  }
4574
4610
  };
4575
4611
  var toSizeInput = (v, fallbackUnit = FR) => {
@@ -5611,7 +5647,7 @@ var StyleTab = () => {
5611
5647
  const currentClassesProp = useCurrentClassesProp();
5612
5648
  const [activeStyleDefId, setActiveStyleDefId] = useActiveStyleDefId(currentClassesProp ?? "");
5613
5649
  const [activeStyleState, setActiveStyleState] = (0, import_react36.useState)(null);
5614
- const breakpoint = (0, import_editor_responsive3.useActiveBreakpoint)();
5650
+ const breakpoint = (0, import_editor_responsive4.useActiveBreakpoint)();
5615
5651
  if (!currentClassesProp) {
5616
5652
  return null;
5617
5653
  }
@@ -5645,7 +5681,7 @@ function ClassesHeader({ children }) {
5645
5681
  function useCurrentClassesProp() {
5646
5682
  const { elementType } = useElement();
5647
5683
  const prop = Object.entries(elementType.propsSchema).find(
5648
- ([, propType]) => propType.kind === "plain" && propType.key === import_editor_props16.CLASSES_PROP_KEY
5684
+ ([, propType]) => propType.kind === "plain" && propType.key === import_editor_props17.CLASSES_PROP_KEY
5649
5685
  );
5650
5686
  if (!prop) {
5651
5687
  return null;
@@ -5827,13 +5863,13 @@ var init = () => {
5827
5863
  var React95 = __toESM(require("react"));
5828
5864
  var import_editor_controls58 = require("@elementor/editor-controls");
5829
5865
  var import_editor_elements19 = require("@elementor/editor-elements");
5830
- var import_editor_props19 = require("@elementor/editor-props");
5866
+ var import_editor_props20 = require("@elementor/editor-props");
5831
5867
  var import_ui47 = require("@elementor/ui");
5832
5868
  var import_i18n70 = require("@wordpress/i18n");
5833
5869
 
5834
5870
  // src/controls-registry/element-controls/accordion-items-control/use-actions.ts
5835
5871
  var import_editor_elements17 = require("@elementor/editor-elements");
5836
- var import_editor_props17 = require("@elementor/editor-props");
5872
+ var import_editor_props18 = require("@elementor/editor-props");
5837
5873
  var import_i18n68 = require("@wordpress/i18n");
5838
5874
  var ACCORDION_ELEMENT_TYPE = "e-accordion";
5839
5875
  var ACCORDION_ITEM_ELEMENT_TYPE = "e-accordion-item";
@@ -5875,7 +5911,7 @@ var buildItemModel = (position, showIcon) => {
5875
5911
  // has already turned Show Icon off, a newly added item must start with its icon hidden
5876
5912
  // too, not re-show one just because the item itself is brand new. See the comment on
5877
5913
  // the mirrored prop in `Atomic_Accordion_Item_Header` for why this duplication exists.
5878
- settings: { show_icon: import_editor_props17.booleanPropTypeUtil.create(showIcon) },
5914
+ settings: { show_icon: import_editor_props18.booleanPropTypeUtil.create(showIcon) },
5879
5915
  elements: [
5880
5916
  {
5881
5917
  elType: ACCORDION_ITEM_TITLE_ELEMENT_TYPE,
@@ -5891,7 +5927,7 @@ var buildItemModel = (position, showIcon) => {
5891
5927
  // subtree (`deselectRecursive()` on delete) calls `.forEach()` on it unguarded.
5892
5928
  elements: [],
5893
5929
  settings: {
5894
- paragraph: import_editor_props17.escapedHtmlPropTypeUtil.create(numberedTitle),
5930
+ paragraph: import_editor_props18.escapedHtmlPropTypeUtil.create(numberedTitle),
5895
5931
  tag: { $$type: "string", value: "span" }
5896
5932
  }
5897
5933
  }
@@ -5994,7 +6030,7 @@ var useActions = () => {
5994
6030
  // src/controls-registry/element-controls/accordion-items-control/use-show-icon-write-through.ts
5995
6031
  var import_react40 = require("react");
5996
6032
  var import_editor_elements18 = require("@elementor/editor-elements");
5997
- var import_editor_props18 = require("@elementor/editor-props");
6033
+ var import_editor_props19 = require("@elementor/editor-props");
5998
6034
  var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
5999
6035
  var import_i18n69 = require("@wordpress/i18n");
6000
6036
  var ACCORDION_ITEM_HEADER_ELEMENT_TYPE2 = "e-accordion-item-header";
@@ -6015,7 +6051,7 @@ var cascadeShowIconToHeaders = (0, import_editor_v1_adapters9.undoable)(
6015
6051
  headerIds.forEach((headerId) => {
6016
6052
  (0, import_editor_elements18.updateElementSettings)({
6017
6053
  id: headerId,
6018
- props: { show_icon: import_editor_props18.booleanPropTypeUtil.create(showIcon) },
6054
+ props: { show_icon: import_editor_props19.booleanPropTypeUtil.create(showIcon) },
6019
6055
  withHistory: false
6020
6056
  });
6021
6057
  });
@@ -6079,7 +6115,7 @@ var AccordionItemsControl = ({ label }) => {
6079
6115
  { [ACCORDION_ELEMENT_TYPE]: ACCORDION_ITEM_ELEMENT_TYPE },
6080
6116
  { includeSelfAsParent: true }
6081
6117
  );
6082
- const showIcon = import_editor_props19.booleanPropTypeUtil.extract(settings.show_icon) ?? true;
6118
+ const showIcon = import_editor_props20.booleanPropTypeUtil.extract(settings.show_icon) ?? true;
6083
6119
  useShowIconWriteThrough(element.id, showIcon);
6084
6120
  const repeaterValues = items3.map((item, index) => {
6085
6121
  return {
@@ -6164,13 +6200,13 @@ var ItemNameControl = ({ elementId }) => {
6164
6200
  var React96 = __toESM(require("react"));
6165
6201
  var import_editor_controls59 = require("@elementor/editor-controls");
6166
6202
  var import_editor_elements22 = require("@elementor/editor-elements");
6167
- var import_editor_props22 = require("@elementor/editor-props");
6203
+ var import_editor_props23 = require("@elementor/editor-props");
6168
6204
  var import_ui48 = require("@elementor/ui");
6169
6205
  var import_i18n73 = require("@wordpress/i18n");
6170
6206
 
6171
6207
  // src/controls-registry/element-controls/list-items-control/list-actions.ts
6172
6208
  var import_editor_elements20 = require("@elementor/editor-elements");
6173
- var import_editor_props20 = require("@elementor/editor-props");
6209
+ var import_editor_props21 = require("@elementor/editor-props");
6174
6210
  var import_i18n71 = require("@wordpress/i18n");
6175
6211
  var LIST_ITEM_ELEMENT_TYPE = "e-list-item";
6176
6212
  var LIST_ITEM_MARKER_ELEMENT_TYPE = "e-list-item-marker";
@@ -6197,7 +6233,7 @@ var buildItemModel2 = (position, showMarkers) => {
6197
6233
  elType: LIST_ITEM_ELEMENT_TYPE,
6198
6234
  id: (0, import_editor_elements20.generateElementId)(),
6199
6235
  settings: {
6200
- show_markers: import_editor_props20.booleanPropTypeUtil.create(showMarkers)
6236
+ show_markers: import_editor_props21.booleanPropTypeUtil.create(showMarkers)
6201
6237
  },
6202
6238
  editor_settings: {
6203
6239
  title: itemTitle,
@@ -6218,7 +6254,7 @@ var buildItemModel2 = (position, showMarkers) => {
6218
6254
  elements: [],
6219
6255
  settings: {
6220
6256
  tag: { $$type: "string", value: "span" },
6221
- paragraph: import_editor_props20.escapedHtmlPropTypeUtil.create("&bull;")
6257
+ paragraph: import_editor_props21.escapedHtmlPropTypeUtil.create("&bull;")
6222
6258
  }
6223
6259
  }
6224
6260
  ]
@@ -6236,7 +6272,7 @@ var buildItemModel2 = (position, showMarkers) => {
6236
6272
  id: (0, import_editor_elements20.generateElementId)(),
6237
6273
  elements: [],
6238
6274
  settings: {
6239
- paragraph: import_editor_props20.escapedHtmlPropTypeUtil.create(itemTitle)
6275
+ paragraph: import_editor_props21.escapedHtmlPropTypeUtil.create(itemTitle)
6240
6276
  }
6241
6277
  }
6242
6278
  ]
@@ -6307,7 +6343,7 @@ var addItem = ({
6307
6343
  // src/controls-registry/element-controls/list-items-control/use-show-markers-write-through.ts
6308
6344
  var import_react41 = require("react");
6309
6345
  var import_editor_elements21 = require("@elementor/editor-elements");
6310
- var import_editor_props21 = require("@elementor/editor-props");
6346
+ var import_editor_props22 = require("@elementor/editor-props");
6311
6347
  var import_editor_v1_adapters10 = require("@elementor/editor-v1-adapters");
6312
6348
  var import_i18n72 = require("@wordpress/i18n");
6313
6349
  var cascadeShowMarkersToItems = (0, import_editor_v1_adapters10.undoable)(
@@ -6327,7 +6363,7 @@ var cascadeShowMarkersToItems = (0, import_editor_v1_adapters10.undoable)(
6327
6363
  itemIds.forEach((itemId) => {
6328
6364
  (0, import_editor_elements21.updateElementSettings)({
6329
6365
  id: itemId,
6330
- props: { show_markers: import_editor_props21.booleanPropTypeUtil.create(showMarkers) },
6366
+ props: { show_markers: import_editor_props22.booleanPropTypeUtil.create(showMarkers) },
6331
6367
  withHistory: false
6332
6368
  });
6333
6369
  });
@@ -6386,7 +6422,7 @@ var ListItemsControlContent = ({ label }) => {
6386
6422
  { [LIST_ELEMENT_TYPE]: LIST_ITEM_ELEMENT_TYPE },
6387
6423
  { includeSelfAsParent: true }
6388
6424
  );
6389
- const showMarkers = import_editor_props22.booleanPropTypeUtil.extract(settings.show_markers) ?? true;
6425
+ const showMarkers = import_editor_props23.booleanPropTypeUtil.extract(settings.show_markers) ?? true;
6390
6426
  useShowMarkersWriteThrough(element.id, showMarkers);
6391
6427
  const repeaterValues = listItems.map((item, index) => ({
6392
6428
  id: item.id,
@@ -6473,7 +6509,7 @@ var ListItemLabelControl = ({ elementId, fallbackLabel }) => {
6473
6509
  var React97 = __toESM(require("react"));
6474
6510
  var import_editor_controls61 = require("@elementor/editor-controls");
6475
6511
  var import_editor_elements25 = require("@elementor/editor-elements");
6476
- var import_editor_props24 = require("@elementor/editor-props");
6512
+ var import_editor_props25 = require("@elementor/editor-props");
6477
6513
  var import_icons28 = require("@elementor/icons");
6478
6514
  var import_ui49 = require("@elementor/ui");
6479
6515
  var import_i18n75 = require("@wordpress/i18n");
@@ -6494,12 +6530,12 @@ var getElementByType = (elementId, type) => {
6494
6530
  // src/controls-registry/element-controls/tabs-control/use-actions.ts
6495
6531
  var import_editor_controls60 = require("@elementor/editor-controls");
6496
6532
  var import_editor_elements24 = require("@elementor/editor-elements");
6497
- var import_editor_props23 = require("@elementor/editor-props");
6533
+ var import_editor_props24 = require("@elementor/editor-props");
6498
6534
  var import_i18n74 = require("@wordpress/i18n");
6499
6535
  var TAB_ELEMENT_TYPE = "e-tab";
6500
6536
  var TAB_CONTENT_ELEMENT_TYPE = "e-tab-content";
6501
6537
  var useActions2 = () => {
6502
- const { value, setValue: setDefaultActiveTab } = (0, import_editor_controls60.useBoundProp)(import_editor_props23.numberPropTypeUtil);
6538
+ const { value, setValue: setDefaultActiveTab } = (0, import_editor_controls60.useBoundProp)(import_editor_props24.numberPropTypeUtil);
6503
6539
  const defaultActiveTab = value ?? 0;
6504
6540
  const duplicateItem2 = ({
6505
6541
  items: items3,
@@ -6760,7 +6796,7 @@ var ItemLabel3 = ({ value, index }) => {
6760
6796
  return /* @__PURE__ */ React97.createElement(import_ui49.Stack, { sx: { minHeight: 20 }, direction: "row", alignItems: "center", gap: 1.5 }, /* @__PURE__ */ React97.createElement("span", null, elementTitle), /* @__PURE__ */ React97.createElement(ItemDefaultTab, { index }));
6761
6797
  };
6762
6798
  var ItemDefaultTab = ({ index }) => {
6763
- const { value: defaultItem } = (0, import_editor_controls61.useBoundProp)(import_editor_props24.numberPropTypeUtil);
6799
+ const { value: defaultItem } = (0, import_editor_controls61.useBoundProp)(import_editor_props25.numberPropTypeUtil);
6764
6800
  const isDefault = defaultItem === index;
6765
6801
  if (!isDefault) {
6766
6802
  return null;
@@ -6774,7 +6810,7 @@ var ItemContent3 = ({ value, index }) => {
6774
6810
  return /* @__PURE__ */ React97.createElement(import_ui49.Stack, { p: 2, gap: 1.5 }, /* @__PURE__ */ React97.createElement(TabLabelControl, { elementId: value.id }), /* @__PURE__ */ React97.createElement(SettingsField, { bind: "default-active-tab", propDisplayName: (0, import_i18n75.__)("Tabs", "elementor") }, /* @__PURE__ */ React97.createElement(DefaultTabControl, { tabIndex: index })));
6775
6811
  };
6776
6812
  var DefaultTabControl = ({ tabIndex }) => {
6777
- const { value, setValue } = (0, import_editor_controls61.useBoundProp)(import_editor_props24.numberPropTypeUtil);
6813
+ const { value, setValue } = (0, import_editor_controls61.useBoundProp)(import_editor_props25.numberPropTypeUtil);
6778
6814
  const isDefault = value === tabIndex;
6779
6815
  return /* @__PURE__ */ React97.createElement(import_ui49.Stack, { direction: "row", alignItems: "center", justifyContent: "space-between", gap: 2 }, /* @__PURE__ */ React97.createElement(import_editor_controls61.ControlFormLabel, null, (0, import_i18n75.__)("Set as default tab", "elementor")), /* @__PURE__ */ React97.createElement(ConditionalTooltip, { showTooltip: isDefault, placement: "right" }, /* @__PURE__ */ React97.createElement(
6780
6816
  import_ui49.Switch,
@@ -6856,7 +6892,7 @@ var import_menus2 = require("@elementor/menus");
6856
6892
  // src/dynamics/components/background-control-dynamic-tag.tsx
6857
6893
  var React98 = __toESM(require("react"));
6858
6894
  var import_editor_controls63 = require("@elementor/editor-controls");
6859
- var import_editor_props26 = require("@elementor/editor-props");
6895
+ var import_editor_props27 = require("@elementor/editor-props");
6860
6896
  var import_icons29 = require("@elementor/icons");
6861
6897
 
6862
6898
  // src/dynamics/hooks/use-dynamic-tag.ts
@@ -6912,11 +6948,11 @@ var filterByLicense = (tags) => {
6912
6948
  };
6913
6949
 
6914
6950
  // src/dynamics/utils.ts
6915
- var import_editor_props25 = require("@elementor/editor-props");
6951
+ var import_editor_props26 = require("@elementor/editor-props");
6916
6952
  var import_editor_v1_adapters12 = require("@elementor/editor-v1-adapters");
6917
6953
  var import_schema = require("@elementor/schema");
6918
6954
  var DYNAMIC_PROP_TYPE_KEY = "dynamic";
6919
- var dynamicPropTypeUtil = (0, import_editor_props25.createPropUtils)(
6955
+ var dynamicPropTypeUtil = (0, import_editor_props26.createPropUtils)(
6920
6956
  DYNAMIC_PROP_TYPE_KEY,
6921
6957
  import_schema.z.strictObject({
6922
6958
  name: import_schema.z.string(),
@@ -6933,7 +6969,7 @@ var getDynamicPropType = (propType) => {
6933
6969
  return dynamicPropType && isDynamicPropType(dynamicPropType) ? dynamicPropType : null;
6934
6970
  };
6935
6971
  var isDynamicPropValue = (prop) => {
6936
- return (0, import_editor_props25.isTransformable)(prop) && prop.$$type === DYNAMIC_PROP_TYPE_KEY;
6972
+ return (0, import_editor_props26.isTransformable)(prop) && prop.$$type === DYNAMIC_PROP_TYPE_KEY;
6937
6973
  };
6938
6974
  var supportsDynamic = (propType) => {
6939
6975
  return !!getDynamicPropType(propType);
@@ -6994,7 +7030,7 @@ var useDynamicTag = (tagName) => {
6994
7030
  // src/dynamics/components/background-control-dynamic-tag.tsx
6995
7031
  var BackgroundControlDynamicTagIcon = () => /* @__PURE__ */ React98.createElement(import_icons29.DatabaseIcon, { fontSize: "tiny" });
6996
7032
  var BackgroundControlDynamicTagLabel = ({ value }) => {
6997
- const context = (0, import_editor_controls63.useBoundProp)(import_editor_props26.backgroundImageOverlayPropTypeUtil);
7033
+ const context = (0, import_editor_controls63.useBoundProp)(import_editor_props27.backgroundImageOverlayPropTypeUtil);
6998
7034
  return /* @__PURE__ */ React98.createElement(import_editor_controls63.PropProvider, { ...context, value: value.value }, /* @__PURE__ */ React98.createElement(import_editor_controls63.PropKeyProvider, { bind: "image" }, /* @__PURE__ */ React98.createElement(Wrapper2, { rawValue: value.value })));
6999
7035
  };
7000
7036
  var Wrapper2 = ({ rawValue }) => {
@@ -7031,7 +7067,7 @@ var import_editor_controls64 = require("@elementor/editor-controls");
7031
7067
  // src/dynamics/components/dynamic-conditional-control.tsx
7032
7068
  var React99 = __toESM(require("react"));
7033
7069
  var import_react45 = require("react");
7034
- var import_editor_props27 = require("@elementor/editor-props");
7070
+ var import_editor_props28 = require("@elementor/editor-props");
7035
7071
  var DynamicConditionalControl = ({
7036
7072
  children,
7037
7073
  propType,
@@ -7073,7 +7109,7 @@ var DynamicConditionalControl = ({
7073
7109
  if (!propType?.dependencies?.terms.length) {
7074
7110
  return /* @__PURE__ */ React99.createElement(React99.Fragment, null, children);
7075
7111
  }
7076
- const isHidden = !(0, import_editor_props27.isDependencyMet)(propType?.dependencies, effectiveSettings).isMet;
7112
+ const isHidden = !(0, import_editor_props28.isDependencyMet)(propType?.dependencies, effectiveSettings).isMet;
7077
7113
  return isHidden ? null : /* @__PURE__ */ React99.createElement(React99.Fragment, null, children);
7078
7114
  };
7079
7115
 
@@ -7451,7 +7487,7 @@ function ControlsItemsStack({ items: items3 }) {
7451
7487
 
7452
7488
  // src/dynamics/dynamic-transformer.ts
7453
7489
  var import_editor_canvas2 = require("@elementor/editor-canvas");
7454
- var import_editor_props28 = require("@elementor/editor-props");
7490
+ var import_editor_props29 = require("@elementor/editor-props");
7455
7491
 
7456
7492
  // src/dynamics/errors.ts
7457
7493
  var import_utils9 = require("@elementor/utils");
@@ -7470,7 +7506,7 @@ var dynamicTransformer = (0, import_editor_canvas2.createTransformer)((value, {
7470
7506
  });
7471
7507
  function simpleTransform(props) {
7472
7508
  const transformed = Object.entries(props).map(([settingKey, settingValue]) => {
7473
- const value = (0, import_editor_props28.isTransformable)(settingValue) ? settingValue.value : settingValue;
7509
+ const value = (0, import_editor_props29.isTransformable)(settingValue) ? settingValue.value : settingValue;
7474
7510
  return [settingKey, value];
7475
7511
  });
7476
7512
  return Object.fromEntries(transformed);
@@ -7633,7 +7669,7 @@ function useResetStyleValueProps() {
7633
7669
  // src/styles-inheritance/components/styles-inheritance-indicator.tsx
7634
7670
  var React109 = __toESM(require("react"));
7635
7671
  var import_editor_controls70 = require("@elementor/editor-controls");
7636
- var import_editor_props29 = require("@elementor/editor-props");
7672
+ var import_editor_props30 = require("@elementor/editor-props");
7637
7673
  var import_editor_styles_repository20 = require("@elementor/editor-styles-repository");
7638
7674
  var import_i18n83 = require("@wordpress/i18n");
7639
7675
 
@@ -7719,7 +7755,7 @@ var getTransformedValue = async (item, bind, resolve) => {
7719
7755
 
7720
7756
  // src/styles-inheritance/components/infotip/breakpoint-icon.tsx
7721
7757
  var React104 = __toESM(require("react"));
7722
- var import_editor_responsive4 = require("@elementor/editor-responsive");
7758
+ var import_editor_responsive5 = require("@elementor/editor-responsive");
7723
7759
  var import_icons34 = require("@elementor/icons");
7724
7760
  var import_ui52 = require("@elementor/ui");
7725
7761
  var SIZE4 = "tiny";
@@ -7734,7 +7770,7 @@ var breakpointIconMap = {
7734
7770
  mobile: import_icons34.MobilePortraitIcon
7735
7771
  };
7736
7772
  var BreakpointIcon = ({ breakpoint }) => {
7737
- const breakpoints = (0, import_editor_responsive4.useBreakpoints)();
7773
+ const breakpoints = (0, import_editor_responsive5.useBreakpoints)();
7738
7774
  const currentBreakpoint = breakpoint || DEFAULT_BREAKPOINT3;
7739
7775
  const IconComponent = breakpointIconMap[currentBreakpoint];
7740
7776
  if (!IconComponent) {
@@ -7985,7 +8021,7 @@ var StylesInheritanceIndicator = ({
7985
8021
  var Indicator = ({ inheritanceChain, path, propType, isDisabled }) => {
7986
8022
  const { id: currentStyleId, provider: currentStyleProvider, meta: currentStyleMeta } = useStyle();
7987
8023
  const currentItem = currentStyleId ? getValueFromInheritanceChain(inheritanceChain, currentStyleId, currentStyleMeta) : null;
7988
- const hasValue = !(0, import_editor_props29.isEmpty)(currentItem?.value);
8024
+ const hasValue = !(0, import_editor_props30.isEmpty)(currentItem?.value);
7989
8025
  const [actualStyle] = inheritanceChain;
7990
8026
  if (actualStyle.provider === import_editor_styles_repository20.ELEMENTS_BASE_STYLES_PROVIDER_KEY) {
7991
8027
  return null;