@elementor/editor-controls 4.0.0-510 → 4.0.0-512

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
@@ -645,6 +645,8 @@ declare const createControlReplacementsRegistry: () => {
645
645
  registerControlReplacement: (replacement: ControlReplacement) => void;
646
646
  getControlReplacements: () => ControlReplacement[];
647
647
  };
648
+ declare const registerControlReplacement: (replacement: ControlReplacement) => void;
649
+ declare const getControlReplacements: () => ControlReplacement[];
648
650
 
649
651
  declare function ControlAdornments({ customContext, }: {
650
652
  customContext?: {
@@ -673,4 +675,6 @@ declare const useSyncExternalState: <TValue>({ external, setExternal, persistWhe
673
675
 
674
676
  declare const useElementCanHaveChildren: () => boolean;
675
677
 
676
- export { type AdornmentComponent, type AngleUnit, AspectRatioControl, BackgroundControl, BoxShadowRepeaterControl, ClearIconButton, ColorControl, type ControlActionsItems, ControlActionsProvider, ControlAdornments, ControlAdornmentsProvider, type ControlComponent$1 as ControlComponent, ControlFormLabel, type ControlReplacement, ControlReplacementsProvider, ControlToggleButtonGroup, DateTimeControl, type EqualUnequalItems, EqualUnequalSizesControl, type ExtendedOption, FilterRepeaterControl, type FontCategory, FontFamilyControl, GapControl, HtmlTagControl, ImageControl, InlineEditingControl, InlineEditor, InlineEditorToolbar, ItemSelector, type ItemsActionPayload, KeyValueControl, type LengthUnit, LinkControl, LinkedDimensionsControl, NumberControl, PopoverContent, PopoverGridContainer, PositionControl, PropKeyProvider, PropProvider, type PropProviderProps, QueryControl, RepeatableControl, Repeater, type RepeaterItem, SelectControl, SelectControlWrapper, type SetRepeaterValuesMeta, type SetValue, type SetValueMeta, SizeControl, StrokeControl, SvgMediaControl, SwitchControl, TextAreaControl, TextControl, type TimeUnit, type ToggleButtonGroupItem, ToggleButtonGroupUi, ToggleControl, type ToggleControlProps, TransformRepeaterControl, TransformSettingsControl, TransitionRepeaterControl, type Unit, UnstableSizeField, UrlControl, createControl, createControlReplacementsRegistry, enqueueFont, injectIntoRepeaterItemActions, injectIntoRepeaterItemIcon, injectIntoRepeaterItemLabel, transitionProperties, transitionsItemsList, useBoundProp, useControlActions, useControlReplacement, useElementCanHaveChildren, useSyncExternalState };
678
+ declare const useFontFamilies: () => FontCategory[];
679
+
680
+ export { type AdornmentComponent, type AngleUnit, AspectRatioControl, BackgroundControl, BoxShadowRepeaterControl, ClearIconButton, ColorControl, type ControlActionsItems, ControlActionsProvider, ControlAdornments, ControlAdornmentsProvider, type ControlComponent$1 as ControlComponent, ControlFormLabel, type ControlReplacement, ControlReplacementsProvider, ControlToggleButtonGroup, DateTimeControl, type EqualUnequalItems, EqualUnequalSizesControl, type ExtendedOption, FilterRepeaterControl, type FontCategory, FontFamilyControl, GapControl, HtmlTagControl, ImageControl, InlineEditingControl, InlineEditor, InlineEditorToolbar, ItemSelector, type ItemsActionPayload, KeyValueControl, type LengthUnit, LinkControl, LinkedDimensionsControl, NumberControl, PopoverContent, PopoverGridContainer, PositionControl, PropKeyProvider, PropProvider, type PropProviderProps, QueryControl, RepeatableControl, Repeater, type RepeaterItem, SelectControl, SelectControlWrapper, type SetRepeaterValuesMeta, type SetValue, type SetValueMeta, SizeControl, StrokeControl, SvgMediaControl, SwitchControl, TextAreaControl, TextControl, type TimeUnit, type ToggleButtonGroupItem, ToggleButtonGroupUi, ToggleControl, type ToggleControlProps, TransformRepeaterControl, TransformSettingsControl, TransitionRepeaterControl, type Unit, UnstableSizeField, UrlControl, createControl, createControlReplacementsRegistry, enqueueFont, getControlReplacements, injectIntoRepeaterItemActions, injectIntoRepeaterItemIcon, injectIntoRepeaterItemLabel, registerControlReplacement, transitionProperties, transitionsItemsList, useBoundProp, useControlActions, useControlReplacement, useElementCanHaveChildren, useFontFamilies, useSyncExternalState };
package/dist/index.d.ts CHANGED
@@ -645,6 +645,8 @@ declare const createControlReplacementsRegistry: () => {
645
645
  registerControlReplacement: (replacement: ControlReplacement) => void;
646
646
  getControlReplacements: () => ControlReplacement[];
647
647
  };
648
+ declare const registerControlReplacement: (replacement: ControlReplacement) => void;
649
+ declare const getControlReplacements: () => ControlReplacement[];
648
650
 
649
651
  declare function ControlAdornments({ customContext, }: {
650
652
  customContext?: {
@@ -673,4 +675,6 @@ declare const useSyncExternalState: <TValue>({ external, setExternal, persistWhe
673
675
 
674
676
  declare const useElementCanHaveChildren: () => boolean;
675
677
 
676
- export { type AdornmentComponent, type AngleUnit, AspectRatioControl, BackgroundControl, BoxShadowRepeaterControl, ClearIconButton, ColorControl, type ControlActionsItems, ControlActionsProvider, ControlAdornments, ControlAdornmentsProvider, type ControlComponent$1 as ControlComponent, ControlFormLabel, type ControlReplacement, ControlReplacementsProvider, ControlToggleButtonGroup, DateTimeControl, type EqualUnequalItems, EqualUnequalSizesControl, type ExtendedOption, FilterRepeaterControl, type FontCategory, FontFamilyControl, GapControl, HtmlTagControl, ImageControl, InlineEditingControl, InlineEditor, InlineEditorToolbar, ItemSelector, type ItemsActionPayload, KeyValueControl, type LengthUnit, LinkControl, LinkedDimensionsControl, NumberControl, PopoverContent, PopoverGridContainer, PositionControl, PropKeyProvider, PropProvider, type PropProviderProps, QueryControl, RepeatableControl, Repeater, type RepeaterItem, SelectControl, SelectControlWrapper, type SetRepeaterValuesMeta, type SetValue, type SetValueMeta, SizeControl, StrokeControl, SvgMediaControl, SwitchControl, TextAreaControl, TextControl, type TimeUnit, type ToggleButtonGroupItem, ToggleButtonGroupUi, ToggleControl, type ToggleControlProps, TransformRepeaterControl, TransformSettingsControl, TransitionRepeaterControl, type Unit, UnstableSizeField, UrlControl, createControl, createControlReplacementsRegistry, enqueueFont, injectIntoRepeaterItemActions, injectIntoRepeaterItemIcon, injectIntoRepeaterItemLabel, transitionProperties, transitionsItemsList, useBoundProp, useControlActions, useControlReplacement, useElementCanHaveChildren, useSyncExternalState };
678
+ declare const useFontFamilies: () => FontCategory[];
679
+
680
+ export { type AdornmentComponent, type AngleUnit, AspectRatioControl, BackgroundControl, BoxShadowRepeaterControl, ClearIconButton, ColorControl, type ControlActionsItems, ControlActionsProvider, ControlAdornments, ControlAdornmentsProvider, type ControlComponent$1 as ControlComponent, ControlFormLabel, type ControlReplacement, ControlReplacementsProvider, ControlToggleButtonGroup, DateTimeControl, type EqualUnequalItems, EqualUnequalSizesControl, type ExtendedOption, FilterRepeaterControl, type FontCategory, FontFamilyControl, GapControl, HtmlTagControl, ImageControl, InlineEditingControl, InlineEditor, InlineEditorToolbar, ItemSelector, type ItemsActionPayload, KeyValueControl, type LengthUnit, LinkControl, LinkedDimensionsControl, NumberControl, PopoverContent, PopoverGridContainer, PositionControl, PropKeyProvider, PropProvider, type PropProviderProps, QueryControl, RepeatableControl, Repeater, type RepeaterItem, SelectControl, SelectControlWrapper, type SetRepeaterValuesMeta, type SetValue, type SetValueMeta, SizeControl, StrokeControl, SvgMediaControl, SwitchControl, TextAreaControl, TextControl, type TimeUnit, type ToggleButtonGroupItem, ToggleButtonGroupUi, ToggleControl, type ToggleControlProps, TransformRepeaterControl, TransformSettingsControl, TransitionRepeaterControl, type Unit, UnstableSizeField, UrlControl, createControl, createControlReplacementsRegistry, enqueueFont, getControlReplacements, injectIntoRepeaterItemActions, injectIntoRepeaterItemIcon, injectIntoRepeaterItemLabel, registerControlReplacement, transitionProperties, transitionsItemsList, useBoundProp, useControlActions, useControlReplacement, useElementCanHaveChildren, useFontFamilies, useSyncExternalState };
package/dist/index.js CHANGED
@@ -82,15 +82,18 @@ __export(index_exports, {
82
82
  createControl: () => createControl,
83
83
  createControlReplacementsRegistry: () => createControlReplacementsRegistry,
84
84
  enqueueFont: () => enqueueFont,
85
+ getControlReplacements: () => getControlReplacements,
85
86
  injectIntoRepeaterItemActions: () => injectIntoRepeaterItemActions,
86
87
  injectIntoRepeaterItemIcon: () => injectIntoRepeaterItemIcon,
87
88
  injectIntoRepeaterItemLabel: () => injectIntoRepeaterItemLabel,
89
+ registerControlReplacement: () => registerControlReplacement,
88
90
  transitionProperties: () => transitionProperties,
89
91
  transitionsItemsList: () => transitionsItemsList,
90
92
  useBoundProp: () => useBoundProp,
91
93
  useControlActions: () => useControlActions,
92
94
  useControlReplacement: () => useControlReplacement,
93
95
  useElementCanHaveChildren: () => useElementCanHaveChildren,
96
+ useFontFamilies: () => useFontFamilies,
94
97
  useSyncExternalState: () => useSyncExternalState
95
98
  });
96
99
  module.exports = __toCommonJS(index_exports);
@@ -361,14 +364,15 @@ var useControlReplacement = (OriginalComponent) => {
361
364
  };
362
365
  var createControlReplacementsRegistry = () => {
363
366
  const controlReplacements = [];
364
- function registerControlReplacement(replacement) {
367
+ function registerControlReplacement2(replacement) {
365
368
  controlReplacements.push(replacement);
366
369
  }
367
- function getControlReplacements() {
370
+ function getControlReplacements2() {
368
371
  return controlReplacements;
369
372
  }
370
- return { registerControlReplacement, getControlReplacements };
373
+ return { registerControlReplacement: registerControlReplacement2, getControlReplacements: getControlReplacements2 };
371
374
  };
375
+ var { registerControlReplacement, getControlReplacements } = createControlReplacementsRegistry();
372
376
 
373
377
  // src/create-control.tsx
374
378
  var brandSymbol = Symbol("control");
@@ -7111,6 +7115,44 @@ var UnstableSizeField = ({
7111
7115
  var hasValue = (value) => {
7112
7116
  return value !== null && value !== "";
7113
7117
  };
7118
+
7119
+ // src/hooks/use-font-families.ts
7120
+ var import_react60 = require("react");
7121
+ var import_editor_v1_adapters = require("@elementor/editor-v1-adapters");
7122
+ var import_i18n53 = require("@wordpress/i18n");
7123
+ var supportedCategories = {
7124
+ system: (0, import_i18n53.__)("System", "elementor"),
7125
+ custom: (0, import_i18n53.__)("Custom Fonts", "elementor"),
7126
+ googlefonts: (0, import_i18n53.__)("Google Fonts", "elementor")
7127
+ };
7128
+ var getFontFamilies = () => {
7129
+ const { controls } = (0, import_editor_v1_adapters.getElementorConfig)();
7130
+ const options = controls?.font?.options;
7131
+ if (!options) {
7132
+ return null;
7133
+ }
7134
+ return options;
7135
+ };
7136
+ var useFontFamilies = () => {
7137
+ const fontFamilies = getFontFamilies();
7138
+ return (0, import_react60.useMemo)(() => {
7139
+ const categoriesOrder = ["system", "custom", "googlefonts"];
7140
+ return Object.entries(fontFamilies || {}).reduce((acc, [font, category]) => {
7141
+ if (!supportedCategories[category]) {
7142
+ return acc;
7143
+ }
7144
+ const categoryIndex = categoriesOrder.indexOf(category);
7145
+ if (!acc[categoryIndex]) {
7146
+ acc[categoryIndex] = {
7147
+ label: supportedCategories[category],
7148
+ fonts: []
7149
+ };
7150
+ }
7151
+ acc[categoryIndex].fonts.push(font);
7152
+ return acc;
7153
+ }, []).filter(Boolean);
7154
+ }, [fontFamilies]);
7155
+ };
7114
7156
  // Annotate the CommonJS export names for ESM import in node:
7115
7157
  0 && (module.exports = {
7116
7158
  AspectRatioControl,
@@ -7165,15 +7207,18 @@ var hasValue = (value) => {
7165
7207
  createControl,
7166
7208
  createControlReplacementsRegistry,
7167
7209
  enqueueFont,
7210
+ getControlReplacements,
7168
7211
  injectIntoRepeaterItemActions,
7169
7212
  injectIntoRepeaterItemIcon,
7170
7213
  injectIntoRepeaterItemLabel,
7214
+ registerControlReplacement,
7171
7215
  transitionProperties,
7172
7216
  transitionsItemsList,
7173
7217
  useBoundProp,
7174
7218
  useControlActions,
7175
7219
  useControlReplacement,
7176
7220
  useElementCanHaveChildren,
7221
+ useFontFamilies,
7177
7222
  useSyncExternalState
7178
7223
  });
7179
7224
  //# sourceMappingURL=index.js.map