@plaudit/gutenberg-api-extensions 2.8.0 → 2.10.0

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.
Files changed (91) hide show
  1. package/build/blocks/common-native-property-implementations.d.ts +118 -0
  2. package/build/blocks/common-native-property-implementations.js +141 -20
  3. package/build/blocks/common-native-property-implementations.js.map +1 -1
  4. package/build/blocks/index.d.ts +5 -0
  5. package/build/blocks/layered-styles.d.ts +31 -0
  6. package/build/blocks/layered-styles.js +9 -7
  7. package/build/blocks/layered-styles.js.map +1 -1
  8. package/build/blocks/simple-block.d.ts +22 -0
  9. package/build/blocks/simple-block.js +10 -6
  10. package/build/blocks/simple-block.js.map +1 -1
  11. package/build/blocks/simple-native-property.d.ts +30 -0
  12. package/build/blocks/simple-native-property.js +106 -95
  13. package/build/blocks/simple-native-property.js.map +1 -1
  14. package/build/controls/AsynchronousFormTokenField.d.ts +20 -0
  15. package/build/controls/AsynchronousFormTokenField.js +23 -12
  16. package/build/controls/AsynchronousFormTokenField.js.map +1 -1
  17. package/build/controls/ExtendedPostPicker.d.ts +13 -0
  18. package/build/controls/ExtendedPostPicker.js +5 -10
  19. package/build/controls/ExtendedPostPicker.js.map +1 -1
  20. package/build/controls/InspectorPanel.d.ts +6 -0
  21. package/build/controls/InspectorPanel.js +3 -2
  22. package/build/controls/InspectorPanel.js.map +1 -1
  23. package/build/controls/LazySuggestionsComboboxControl.d.ts +7 -0
  24. package/build/controls/LazySuggestionsComboboxControl.js +70 -0
  25. package/build/controls/LazySuggestionsComboboxControl.js.map +1 -0
  26. package/build/controls/PickOne.d.ts +19 -0
  27. package/build/controls/PickOne.js +8 -7
  28. package/build/controls/PickOne.js.map +1 -1
  29. package/build/controls/SimpleToggle.d.ts +3 -0
  30. package/build/controls/SimpleToggle.js +2 -2
  31. package/build/controls/SimpleToggle.js.map +1 -1
  32. package/build/controls/SortableItemsControl.d.ts +11 -0
  33. package/build/controls/SortableItemsControl.js +154 -0
  34. package/build/controls/SortableItemsControl.js.map +1 -0
  35. package/{src/controls/index.ts → build/controls/index.d.ts} +1 -0
  36. package/build/controls/index.js +1 -0
  37. package/build/controls/index.js.map +1 -1
  38. package/build/controls/shared.d.ts +8 -0
  39. package/build/controls/shared.js +7 -0
  40. package/build/controls/shared.js.map +1 -0
  41. package/build/controls/types.d.ts +12 -0
  42. package/build/lib/plaudit-icons/column-1.d.ts +2 -0
  43. package/build/lib/plaudit-icons/column-1.js +3 -2
  44. package/build/lib/plaudit-icons/column-1.js.map +1 -1
  45. package/build/lib/plaudit-icons/column-2.d.ts +2 -0
  46. package/build/lib/plaudit-icons/column-2.js +3 -2
  47. package/build/lib/plaudit-icons/column-2.js.map +1 -1
  48. package/build/lib/plaudit-icons/column-3.d.ts +2 -0
  49. package/build/lib/plaudit-icons/column-3.js +3 -2
  50. package/build/lib/plaudit-icons/column-3.js.map +1 -1
  51. package/build/lib/plaudit-icons/placement-center.d.ts +2 -0
  52. package/build/lib/plaudit-icons/placement-center.js +3 -2
  53. package/build/lib/plaudit-icons/placement-center.js.map +1 -1
  54. package/build/lib/plaudit-icons/placement-end.d.ts +2 -0
  55. package/build/lib/plaudit-icons/placement-end.js +3 -2
  56. package/build/lib/plaudit-icons/placement-end.js.map +1 -1
  57. package/build/lib/plaudit-icons/placement-start.d.ts +2 -0
  58. package/build/lib/plaudit-icons/placement-start.js +3 -2
  59. package/build/lib/plaudit-icons/placement-start.js.map +1 -1
  60. package/build/lib/plaudit-icons/placement-stretch.d.ts +2 -0
  61. package/build/lib/plaudit-icons/placement-stretch.js +3 -2
  62. package/build/lib/plaudit-icons/placement-stretch.js.map +1 -1
  63. package/build/lib/plaudit-icons/plaudit-icon.d.ts +2 -0
  64. package/build/lib/plaudit-icons/plaudit-icon.js +3 -2
  65. package/build/lib/plaudit-icons/plaudit-icon.js.map +1 -1
  66. package/build/lib/plaudit-icons/reusable-block-marker.d.ts +2 -0
  67. package/build/lib/plaudit-icons/reusable-block-marker.js +3 -2
  68. package/build/lib/plaudit-icons/reusable-block-marker.js.map +1 -1
  69. package/{src/lib/plaudit-icons.ts → build/lib/plaudit-icons.d.ts} +0 -4
  70. package/package.json +14 -14
  71. package/src/blocks/common-native-property-implementations.tsx +0 -271
  72. package/src/blocks/index.ts +0 -12
  73. package/src/blocks/layered-styles.tsx +0 -108
  74. package/src/blocks/simple-block.tsx +0 -72
  75. package/src/blocks/simple-native-property.tsx +0 -200
  76. package/src/controls/AsynchronousFormTokenField.tsx +0 -151
  77. package/src/controls/ExtendedPostPicker.tsx +0 -50
  78. package/src/controls/InspectorPanel.tsx +0 -16
  79. package/src/controls/PickOne.tsx +0 -80
  80. package/src/controls/SimpleToggle.tsx +0 -9
  81. package/src/controls/types.ts +0 -11
  82. package/src/lib/plaudit-icons/column-1.tsx +0 -8
  83. package/src/lib/plaudit-icons/column-2.tsx +0 -8
  84. package/src/lib/plaudit-icons/column-3.tsx +0 -8
  85. package/src/lib/plaudit-icons/placement-center.tsx +0 -5
  86. package/src/lib/plaudit-icons/placement-end.tsx +0 -5
  87. package/src/lib/plaudit-icons/placement-start.tsx +0 -5
  88. package/src/lib/plaudit-icons/placement-stretch.tsx +0 -5
  89. package/src/lib/plaudit-icons/plaudit-icon.tsx +0 -6
  90. package/src/lib/plaudit-icons/reusable-block-marker.tsx +0 -5
  91. /package/{src/index.ts → build/index.d.ts} +0 -0
@@ -0,0 +1,118 @@
1
+ import { type LinkControlProps } from "@wordpress/block-editor";
2
+ import type { RadioControlProps } from "@wordpress/components/build-types/radio-control/types";
3
+ import type { RangeControlProps } from "@wordpress/components/build-types/range-control/types";
4
+ import type { TextControlProps } from "@wordpress/components/build-types/text-control/types";
5
+ import type { TextareaControlProps } from "@wordpress/components/build-types/textarea-control/types";
6
+ import type { ToggleControlProps } from "@wordpress/components/build-types/toggle-control/types";
7
+ import type { ToggleGroupControlProps } from "@wordpress/components/build-types/toggle-group-control/types";
8
+ import { type ExtendedPostPickerConstructorProps, type LazySuggestionsComboboxControlProps } from "../controls";
9
+ import { type SortableItemsControlProps } from "../controls/SortableItemsControl";
10
+ import type { PickableOptions } from "../controls/types";
11
+ import type { SimpleNativeProperty } from "./simple-native-property";
12
+ import { type ReactElement } from "react";
13
+ export type ActualBlockEditProps = {
14
+ attributes: Record<string, any>;
15
+ setAttributes: (attributes: Record<string, any>) => void;
16
+ name: string;
17
+ };
18
+ type CommonPropertyConfig<T, V> = {
19
+ name: string;
20
+ label: string;
21
+ default?: T;
22
+ component?: Partial<V>;
23
+ help?: string;
24
+ alwaysStore?: boolean;
25
+ condition?(blockEditProps: ActualBlockEditProps): boolean;
26
+ };
27
+ type CommonPropertyConfigWithEnum<T, V> = CommonPropertyConfig<T, V> & {
28
+ enum?: T[];
29
+ };
30
+ export declare function rangeProperty(config: CommonPropertyConfigWithEnum<number, RangeControlProps> & {
31
+ min: number;
32
+ max: number;
33
+ step?: number;
34
+ }): SimpleNativeProperty;
35
+ export declare function radioProperty(config: CommonPropertyConfigWithEnum<string, RadioControlProps> & {
36
+ options: PickableOptions<string>;
37
+ }): SimpleNativeProperty;
38
+ export declare function selectProperty(config: CommonPropertyConfigWithEnum<string, never> & {
39
+ options: PickableOptions<string>;
40
+ }): SimpleNativeProperty;
41
+ export declare function linkProperty(config: CommonPropertyConfig<Record<string, unknown>, LinkControlProps>): SimpleNativeProperty;
42
+ type SharedPostPropertyType = {
43
+ postTypes?: string[];
44
+ };
45
+ type PostPropertyType = (CommonPropertyConfig<number, LazySuggestionsComboboxControlProps> & SharedPostPropertyType & {
46
+ multiple?: false;
47
+ }) | (CommonPropertyConfig<number[], ExtendedPostPickerConstructorProps> & SharedPostPropertyType & {
48
+ multiple: true;
49
+ });
50
+ export declare function postProperty(config: PostPropertyType): SimpleNativeProperty;
51
+ type OptionalLabel = string | {
52
+ text: string;
53
+ icon: ReactElement;
54
+ } | undefined;
55
+ type BaseSwitch = {
56
+ onLabel?: OptionalLabel;
57
+ offLabel?: OptionalLabel;
58
+ };
59
+ type SmallSwitch = {
60
+ small: true;
61
+ } & BaseSwitch;
62
+ type NormalSwitch = {
63
+ small?: false | undefined;
64
+ } & BaseSwitch;
65
+ export type TogglePropertyConfig = (CommonPropertyConfig<boolean, ToggleControlProps> & {
66
+ switch: SmallSwitch;
67
+ }) | (CommonPropertyConfig<boolean, ToggleGroupControlProps> & {
68
+ switch?: NormalSwitch;
69
+ });
70
+ export declare function toggleProperty(config: TogglePropertyConfig): SimpleNativeProperty;
71
+ type ToggleGroupPropertyConfigBase<T extends string | number> = CommonPropertyConfig<T, ToggleGroupControlProps> & {
72
+ options: PickableOptions<T, {
73
+ icon: ReactElement;
74
+ }>;
75
+ };
76
+ export type ToggleGroupPropertyConfig = ToggleGroupPropertyConfigBase<string> | ToggleGroupPropertyConfigBase<number>;
77
+ export declare function toggleGroupProperty(config: ToggleGroupPropertyConfig): SimpleNativeProperty;
78
+ export declare function textProperty(config: CommonPropertyConfig<string, TextControlProps> & {
79
+ placeholder?: string | undefined;
80
+ }): SimpleNativeProperty;
81
+ export declare function numberProperty(config: CommonPropertyConfig<number, Omit<TextControlProps, 'type'>> & {
82
+ placeholder?: string | undefined;
83
+ float?: boolean;
84
+ }): SimpleNativeProperty;
85
+ export declare function textareaProperty(config: CommonPropertyConfig<string, TextareaControlProps> & {
86
+ placeholder?: string | undefined;
87
+ newline?: undefined | "\n" | "br" | "p";
88
+ }): SimpleNativeProperty;
89
+ export type ImagePropertyData = {
90
+ media?: {
91
+ id?: number;
92
+ url?: string;
93
+ };
94
+ pos?: {
95
+ x?: number;
96
+ y?: number;
97
+ };
98
+ };
99
+ export declare function imageProperty(config: Omit<CommonPropertyConfig<ImagePropertyData, {}>, 'default'> & Partial<Pick<CommonPropertyConfig<ImagePropertyData, {}>, 'default'>> & {
100
+ enableFocalPointPicker?: boolean;
101
+ }): SimpleNativeProperty;
102
+ type ListPropertyConfigBase<T extends string | number> = CommonPropertyConfig<T[], SortableItemsControlProps<T>> & {
103
+ emptyValue?: T;
104
+ min?: number;
105
+ max?: number;
106
+ listComponent?: TextControlProps;
107
+ };
108
+ type NumberListPropertyConfig = (ListPropertyConfigBase<number> & {
109
+ itemType: 'integer' | 'int';
110
+ }) | (ListPropertyConfigBase<number> & {
111
+ itemType: 'float';
112
+ });
113
+ type StringListPropertyConfig = ListPropertyConfigBase<string> & {
114
+ itemType?: 'string';
115
+ };
116
+ export type ListPropertyConfig = StringListPropertyConfig | NumberListPropertyConfig;
117
+ export declare function listProperty(config: ListPropertyConfig): SimpleNativeProperty;
118
+ export {};
@@ -1,8 +1,11 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { MediaUpload, MediaUploadCheck } from "@wordpress/block-editor";
3
- import { Button, Card, CardBody, CardHeader, FocalPointPicker, RadioControl, RangeControl, SelectControl, ResponsiveWrapper, TextareaControl, TextControl, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalHeading as Heading, __experimentalToggleGroupControlOption as ToggleGroupControlOption, __experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon } from "@wordpress/components";
1
+ import { MediaUpload, MediaUploadCheck, __experimentalLinkControl as LinkControl } from "@wordpress/block-editor";
2
+ import { BaseControl, Button, FocalPointPicker, RadioControl, RangeControl, SelectControl, ResponsiveWrapper, TextareaControl, TextControl, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, __experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon } from "@wordpress/components";
4
3
  import { useSelect } from "@wordpress/data";
5
4
  import { __ } from "@wordpress/i18n";
5
+ import { ExtendedPostPicker, LazySuggestionsComboboxControl } from "../controls";
6
+ import { requestPostsFromAPI } from "../controls/shared";
7
+ import { SortableItemsControl } from "../controls/SortableItemsControl";
8
+ import React, { useId } from "react";
6
9
  export function rangeProperty(config) {
7
10
  return {
8
11
  name: config.name,
@@ -12,7 +15,7 @@ export function rangeProperty(config) {
12
15
  condition: config.condition,
13
16
  alwaysStore: config.alwaysStore,
14
17
  renderer(value, onChange) {
15
- return _jsx(RangeControl, { value: value, onChange: onChange, min: config.min, max: config.max, label: config.label, step: config.step, help: config.help, ...config.component });
18
+ return React.createElement(RangeControl, { value: value, onChange: onChange, min: config.min, max: config.max, label: config.label, step: config.step, help: config.help, ...config.component });
16
19
  }
17
20
  };
18
21
  }
@@ -25,7 +28,7 @@ export function radioProperty(config) {
25
28
  condition: config.condition,
26
29
  alwaysStore: config.alwaysStore,
27
30
  renderer(value, onChange) {
28
- return _jsx(RadioControl, { selected: value, onChange: onChange, options: asOptions(config.options), label: config.label, help: config.help, ...config.component });
31
+ return React.createElement(RadioControl, { selected: value, onChange: onChange, options: asOptions(config.options), label: config.label, help: config.help, ...config.component });
29
32
  }
30
33
  };
31
34
  }
@@ -38,10 +41,53 @@ export function selectProperty(config) {
38
41
  condition: config.condition,
39
42
  alwaysStore: config.alwaysStore,
40
43
  renderer(value, onChange) {
41
- return _jsx(SelectControl, { value: value ?? '', onChange: onChange, options: asOptions(config.options, ''), label: config.label, help: config.help });
44
+ return React.createElement(SelectControl, { value: value ?? '', onChange: onChange, options: asOptions(config.options, ''), label: config.label, help: config.help });
42
45
  }
43
46
  };
44
47
  }
48
+ export function linkProperty(config) {
49
+ return {
50
+ name: config.name,
51
+ type: 'object',
52
+ default: config.default,
53
+ condition: config.condition,
54
+ alwaysStore: config.alwaysStore,
55
+ renderer(value, onChange) {
56
+ return React.createElement(BaseControl, { id: `plaudit-gutenberg-extensions-link-property-wrapper-${Math.round(Math.random() * 10000 + 1)}`, label: config.label, help: config.help },
57
+ React.createElement(LinkControl, { value: value, onChange: onChange, ...config.component }));
58
+ }
59
+ };
60
+ }
61
+ function comboboxControlOptionFromAPIResponse(response) {
62
+ return response.map(({ id, title }) => ({ value: id, label: `${title} (#${id})` }));
63
+ }
64
+ export function postProperty(config) {
65
+ if (config.multiple) {
66
+ return {
67
+ name: config.name,
68
+ type: 'array',
69
+ default: config.default,
70
+ condition: config.condition,
71
+ alwaysStore: config.alwaysStore,
72
+ renderer(value, onChange) {
73
+ return React.createElement(ExtendedPostPicker, { label: config.label, help: config.help, value: value?.map(v => v.toString()), onChange: (v) => onChange(v.map(v => parseInt(v))), postTypes: config.postTypes, ...config.component });
74
+ }
75
+ };
76
+ }
77
+ else {
78
+ const makeRequest = (v) => requestPostsFromAPI({ search: v, postTypes: config.postTypes?.join(',') });
79
+ return {
80
+ name: config.name,
81
+ type: 'number',
82
+ default: config.default,
83
+ condition: config.condition,
84
+ alwaysStore: config.alwaysStore,
85
+ renderer(value, onChange) {
86
+ return React.createElement(LazySuggestionsComboboxControl, { value: value?.toString(), onChange: v => onChange(v ? parseInt(v) : undefined), getOption: v => makeRequest(v).then(comboboxControlOptionFromAPIResponse).then(res => res[0]), getSuggestions: v => makeRequest(v).then(comboboxControlOptionFromAPIResponse), ...config.component });
87
+ }
88
+ };
89
+ }
90
+ }
45
91
  export function toggleProperty(config) {
46
92
  return {
47
93
  name: config.name,
@@ -50,14 +96,27 @@ export function toggleProperty(config) {
50
96
  condition: config.condition,
51
97
  alwaysStore: config.alwaysStore,
52
98
  renderer(value, onChange) {
53
- return _jsx(ToggleControl, { checked: value, onChange: onChange, label: config.label, help: config.help, ...config.component });
99
+ if (config.switch?.small) {
100
+ return React.createElement(ToggleControl, { ...config.component, checked: value, onChange: onChange, label: config.label, help: config.help });
101
+ }
102
+ else {
103
+ //TODO: Make this match the width of the label where possible
104
+ return React.createElement(ToggleGroupControl, { ...config.component, value: value ? "true" : "false", label: config.label, help: config.help, isBlock: true, onChange: v => onChange(v === "true") },
105
+ React.createElement(ToggleGroupControlOptionWithOptionalIcon, { value: "true", label: config.switch?.onLabel ?? __("On") }),
106
+ React.createElement(ToggleGroupControlOptionWithOptionalIcon, { value: "false", label: config.switch?.offLabel ?? __("Off") }));
107
+ }
54
108
  }
55
109
  };
56
110
  }
111
+ function ToggleGroupControlOptionWithOptionalIcon({ value, label }) {
112
+ if (typeof label === 'string') {
113
+ return React.createElement(ToggleGroupControlOption, { key: value, value: value, label: label });
114
+ }
115
+ else {
116
+ return React.createElement(ToggleGroupControlOptionIcon, { key: value, value: value, label: label.text, icon: label.icon });
117
+ }
118
+ }
57
119
  export function toggleGroupProperty(config) {
58
- const children = config.options.map(([value, label]) => typeof label === 'string'
59
- ? _jsx(ToggleGroupControlOption, { value: value, label: label }, value)
60
- : _jsx(ToggleGroupControlOptionIcon, { value: value, label: label.text, icon: label.icon }, value));
61
120
  if (typeof config.default === 'string') {
62
121
  return {
63
122
  name: config.name,
@@ -66,7 +125,7 @@ export function toggleGroupProperty(config) {
66
125
  condition: config.condition,
67
126
  alwaysStore: config.alwaysStore,
68
127
  renderer(value, onChange) {
69
- return _jsx(ToggleGroupControl, { value: value, onChange: v => onChange(v?.toString()), label: config.label, help: config.help, isBlock: true, ...config.component, children: children });
128
+ return React.createElement(ToggleGroupControl, { value: value, onChange: v => onChange(v?.toString()), label: config.label, help: config.help, isBlock: true, ...config.component }, ...config.options.map(([value, label]) => React.createElement(ToggleGroupControlOptionWithOptionalIcon, { value: value, label: label })));
70
129
  }
71
130
  };
72
131
  }
@@ -78,7 +137,7 @@ export function toggleGroupProperty(config) {
78
137
  condition: config.condition,
79
138
  alwaysStore: config.alwaysStore,
80
139
  renderer(value, onChange) {
81
- return _jsx(ToggleGroupControl, { value: value, label: config.label, help: config.help, isBlock: true, ...config.component, onChange: v => onChange(v === undefined || typeof v === 'number' ? v : (v.includes('.') ? parseFloat(v) : parseInt(v))), children: children });
140
+ return React.createElement(ToggleGroupControl, { value: value, onChange: v => onChange(v === undefined || typeof v === 'number' ? v : (v.includes('.') ? parseFloat(v) : parseInt(v))), label: config.label, help: config.help, isBlock: true, ...config.component }, ...config.options.map(([value, label]) => React.createElement(ToggleGroupControlOptionWithOptionalIcon, { value: value, label: label })));
82
141
  }
83
142
  };
84
143
  }
@@ -91,7 +150,19 @@ export function textProperty(config) {
91
150
  condition: config.condition,
92
151
  alwaysStore: config.alwaysStore,
93
152
  renderer(value, onChange) {
94
- return _jsx(TextControl, { value: value, onChange: onChange, label: config.label, help: config.help, ...config.component });
153
+ return React.createElement(TextControl, { value: value ?? '', onChange: onChange, label: config.label, help: config.help, placeholder: config.placeholder, ...config.component });
154
+ }
155
+ };
156
+ }
157
+ export function numberProperty(config) {
158
+ return {
159
+ name: config.name,
160
+ type: 'number',
161
+ default: config.default,
162
+ condition: config.condition,
163
+ alwaysStore: config.alwaysStore,
164
+ renderer(value, onChange) {
165
+ return React.createElement(TextControl, { type: "number", value: value ?? '', onChange: v => onChange(config.float ? parseFloat(v) : parseInt(v)), label: config.label, help: config.help, placeholder: config.placeholder, ...config.component });
95
166
  }
96
167
  };
97
168
  }
@@ -103,7 +174,24 @@ export function textareaProperty(config) {
103
174
  condition: config.condition,
104
175
  alwaysStore: config.alwaysStore,
105
176
  renderer(value, onChange) {
106
- return _jsx(TextareaControl, { value: value, onChange: onChange, label: config.label, help: config.help, ...config.component });
177
+ let v = value ?? '';
178
+ if (config.newline === "br") {
179
+ v = v.replaceAll("<br/>", "\n");
180
+ }
181
+ else if (config.newline === "p") {
182
+ v = v.replaceAll(/<p>(.*?)<\/p>/gi, "$1\n");
183
+ }
184
+ return React.createElement(TextareaControl, { value: v, onChange: v => {
185
+ if (config.newline === "br") {
186
+ onChange(v.replaceAll(/\r?\n/g, "<br/>"));
187
+ }
188
+ else if (config.newline === "p") {
189
+ onChange(v.split(/\r?\n/g).map(v => "<p>" + v + "</p>").join(""));
190
+ }
191
+ else {
192
+ onChange(v);
193
+ }
194
+ }, label: config.label, help: config.help, placeholder: config.placeholder, ...config.component });
107
195
  }
108
196
  };
109
197
  }
@@ -115,26 +203,59 @@ export function imageProperty(config) {
115
203
  alwaysStore: config.alwaysStore,
116
204
  default: { media: { id: config.default?.media?.id ?? 0, url: config.default?.media?.url ?? '' }, pos: { x: config.default?.pos?.x ?? 50, y: config.default?.pos?.y ?? 50 } },
117
205
  renderer(value, onChange) {
206
+ const id = useId();
118
207
  const { media } = useSelect(select => {
119
208
  return { media: value.media?.id ? select('core').getMedia(value.media.id) : undefined };
120
209
  }, [value]);
121
- const noImageUploadedVersion = _jsx(MediaUploadCheck, { children: _jsx(MediaUpload, { onSelect: media => onChange({ ...value, media: { id: media.id, url: media['url'] } }), value: value.media?.id ?? 0, allowedTypes: ['image'], render: ({ open }) => (_jsxs(Button, { className: !value.media?.id ? 'editor-post-featured-image__toggle' : 'editor-post-featured-image__preview', onClick: open, children: [!value.media?.id && __('Choose an image', 'plaudit'), media &&
122
- _jsx(ResponsiveWrapper, { naturalWidth: media.media_details.width, naturalHeight: media.media_details.height, children: _jsx("img", { src: media.source_url, alt: "The currently-selected image." }) })] })) }) });
210
+ const noImageUploadedVersion = React.createElement(MediaUploadCheck, null,
211
+ React.createElement(MediaUpload, { onSelect: media => onChange({ ...value, media: { id: media.id, url: media['url'] } }), value: value.media?.id ?? 0, allowedTypes: ['image'], render: ({ open }) => (React.createElement(Button, { className: !value.media?.id ? 'editor-post-featured-image__toggle' : 'editor-post-featured-image__preview', onClick: open },
212
+ !value.media?.id && __('Choose an image', 'plaudit'),
213
+ media &&
214
+ React.createElement(ResponsiveWrapper, { naturalWidth: media.media_details.width, naturalHeight: media.media_details.height },
215
+ React.createElement("img", { src: media.source_url, alt: "The currently-selected image." })))) }));
123
216
  let fppOrMedia;
124
217
  if (config.enableFocalPointPicker !== false) {
125
- fppOrMedia = _jsx(FocalPointPicker, { onChange: pos => onChange({ ...value, pos: { x: pos.x * 100, y: pos.y * 100 } }), url: value.media?.url ?? '', value: {
218
+ fppOrMedia = React.createElement(FocalPointPicker, { onChange: pos => onChange({ ...value, pos: { x: pos.x * 100, y: pos.y * 100 } }), url: value.media?.url ?? '', value: {
126
219
  x: (value.pos?.x ?? 50) / 100,
127
220
  y: (value.pos?.y ?? 50) / 100
128
221
  } });
129
222
  }
130
223
  else {
131
- fppOrMedia = _jsx(ResponsiveWrapper, { naturalWidth: media?.media_details.width, naturalHeight: media?.media_details.height, children: _jsx("img", { src: value.media?.url ?? '', alt: "The currently-selected image." }) });
224
+ fppOrMedia = React.createElement(ResponsiveWrapper, { naturalWidth: media?.media_details.width, naturalHeight: media?.media_details.height },
225
+ React.createElement("img", { src: value.media?.url ?? '', alt: "The currently-selected image." }));
132
226
  }
133
- const imageUploadedVersion = _jsxs(_Fragment, { children: [value.media?.url && fppOrMedia, _jsx(MediaUploadCheck, { children: _jsx(MediaUpload, { title: __('Replace image', 'plaudit'), value: value.media?.id ?? 0, onSelect: media => onChange({ ...value, media: { id: media.id, url: media['url'] } }), allowedTypes: ['image'], render: ({ open }) => (_jsx(Button, { onClick: open, variant: "secondary", children: __('Replace image', 'plaudit') })) }) }), _jsx(MediaUploadCheck, { children: _jsx(Button, { onClick: () => onChange({ ...value, media: { id: 0, url: '' } }), isDestructive: true, children: __('Remove image', 'plaudit') }) })] });
134
- return _jsxs(Card, { children: [_jsx(CardHeader, { children: _jsx(Heading, { children: config.label }) }), _jsx(CardBody, { children: _jsx("div", { className: "editor-post-featured-image", children: value.media?.id ? imageUploadedVersion : noImageUploadedVersion }) })] });
227
+ const imageUploadedVersion = React.createElement(React.Fragment, null,
228
+ value.media?.url && fppOrMedia,
229
+ React.createElement(MediaUploadCheck, null,
230
+ React.createElement(MediaUpload, { title: __('Replace image', 'plaudit'), value: value.media?.id ?? 0, onSelect: media => onChange({ ...value, media: { id: media.id, url: media['url'] } }), allowedTypes: ['image'], render: ({ open }) => (React.createElement(Button, { onClick: open, variant: "secondary" }, __('Replace image', 'plaudit'))) })),
231
+ React.createElement(MediaUploadCheck, null,
232
+ React.createElement(Button, { onClick: () => onChange({ ...value, media: { id: 0, url: '' } }), isDestructive: true }, __('Remove image', 'plaudit'))));
233
+ return React.createElement(BaseControl, { id: id, label: config.label, help: config.help },
234
+ React.createElement("div", { className: "editor-post-featured-image" }, value.media?.id ? imageUploadedVersion : noImageUploadedVersion));
135
235
  }
136
236
  };
137
237
  }
238
+ export function listProperty(config) {
239
+ const sharedProps = { name: config.name, type: 'array', condition: config.condition, alwaysStore: config.alwaysStore };
240
+ if (config.itemType === undefined || config.itemType === 'string') {
241
+ return {
242
+ ...sharedProps,
243
+ default: config.default,
244
+ renderer(value, onChange) {
245
+ return React.createElement(SortableItemsControl, { value: value, onChange: onChange, min: config.min, max: config.max, label: config.label, help: config.help, emptyValue: config.emptyValue ?? '', ...config.component }, (datum, onDatumChange) => React.createElement(TextControl, { ...config.listComponent, value: datum, onChange: onDatumChange }));
246
+ }
247
+ };
248
+ }
249
+ else {
250
+ return {
251
+ ...sharedProps,
252
+ default: config.default,
253
+ renderer(value, onChange) {
254
+ return React.createElement(SortableItemsControl, { value: value, onChange: onChange, min: config.min, max: config.max, label: config.label, help: config.help, emptyValue: config.emptyValue ?? 0, ...config.component }, (datum, onDatumChange) => React.createElement(TextControl, { ...config.listComponent, type: "number", value: datum, onChange: v => onDatumChange(config.itemType !== 'float' ? parseInt(v) : parseFloat(v)) }));
255
+ }
256
+ };
257
+ }
258
+ }
138
259
  function asOptions(options, noSelectionValue) {
139
260
  const res = options.map(opt => ({ value: opt[0], label: typeof opt[1] === 'string' ? opt[1] : opt[1].text }));
140
261
  if (noSelectionValue !== undefined && !res.some(opt => !opt.value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"common-native-property-implementations.js","sourceRoot":"","sources":["../../src/blocks/common-native-property-implementations.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-native-property-implementations.js","sourceRoot":"","sources":["../../src/blocks/common-native-property-implementations.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export * from "./simple-block";
2
+ export * from "./layered-styles";
3
+ export * from "./simple-native-property";
4
+ export * from './common-native-property-implementations';
5
+ export declare function installGutenbergBlockExtensions(): void;
@@ -0,0 +1,31 @@
1
+ import { type ReactElement } from "react";
2
+ import type { PickableOptions } from "../controls/types";
3
+ type BaseLayeredBlockStyleLayer = {
4
+ name: string;
5
+ title: string;
6
+ default?: string | undefined;
7
+ };
8
+ type LayeredBlockStyleColorLayer = BaseLayeredBlockStyleLayer & {
9
+ picker: 'color';
10
+ options: PickableOptions<string, {
11
+ color?: string;
12
+ }>;
13
+ };
14
+ type LayeredBlockStyleToggleLayer = BaseLayeredBlockStyleLayer & {
15
+ picker?: 'toggle-control';
16
+ options: PickableOptions<string, {
17
+ icon: ReactElement;
18
+ }>;
19
+ };
20
+ type LayeredBlockStyleSelectOrRadioLayer = BaseLayeredBlockStyleLayer & {
21
+ picker: 'select' | 'radio';
22
+ options: PickableOptions<string>;
23
+ };
24
+ export type LayeredBlockStyleLayer = LayeredBlockStyleColorLayer | LayeredBlockStyleToggleLayer | LayeredBlockStyleSelectOrRadioLayer;
25
+ export interface LayeredBlockStylesConfig {
26
+ block: `${string}/${string}`;
27
+ layers: LayeredBlockStyleLayer[];
28
+ }
29
+ export declare function registerLayeredBlockStyles(config: LayeredBlockStylesConfig): void;
30
+ export declare function installLayeredBlockStylesSupport(): void;
31
+ export {};
@@ -1,6 +1,6 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
1
  import { createHigherOrderComponent } from "@wordpress/compose";
3
2
  import { addFilter } from "@wordpress/hooks";
3
+ import React from "react";
4
4
  import { InspectorPanel, PickOneFromColors, PickOneFromRadios, PickOneFromSelect, PickOneFromToggleGroup } from "../controls";
5
5
  export function registerLayeredBlockStyles(config) {
6
6
  const layeredBlockStyles = window.plauditLayeredBlockStyles ?? (window.plauditLayeredBlockStyles = new Map());
@@ -42,20 +42,22 @@ export function installLayeredBlockStylesSupport() {
42
42
  switch (layer.picker) {
43
43
  case undefined:
44
44
  case 'toggle-control':
45
- return _jsx(PickOneFromToggleGroup, { ...layer, ...sharedProps });
45
+ return React.createElement(PickOneFromToggleGroup, { ...layer, ...sharedProps });
46
46
  case 'color':
47
- return _jsx(PickOneFromColors, { ...layer, ...sharedProps });
47
+ return React.createElement(PickOneFromColors, { ...layer, ...sharedProps });
48
48
  case 'radio':
49
- return _jsx(PickOneFromRadios, { ...layer, ...sharedProps });
49
+ return React.createElement(PickOneFromRadios, { ...layer, ...sharedProps });
50
50
  case 'select':
51
- return _jsx(PickOneFromSelect, { ...layer, ...sharedProps });
51
+ return React.createElement(PickOneFromSelect, { ...layer, ...sharedProps });
52
52
  }
53
53
  }
54
54
  addFilter('editor.BlockEdit', 'plaudit/gutenberg-api-extensions/layered-styles', createHigherOrderComponent(BlockEdit => (props) => {
55
55
  if (!layeredBlockStyles.has(props['name'])) {
56
- return _jsx(BlockEdit, { ...props });
56
+ return React.createElement(BlockEdit, { ...props });
57
57
  }
58
- return _jsxs(_Fragment, { children: [_jsx(BlockEdit, { ...props }), _jsxs(InspectorPanel, { title: "Layered Styles", initialOpen: true, group: "styles", children: [...layeredBlockStyles.get(props['name']).layers.map(layer => convertLayersToRadios(layer, layeredBlockStyles.get(props['name']).layers, props))] })] });
58
+ return React.createElement(React.Fragment, null,
59
+ React.createElement(BlockEdit, { ...props }),
60
+ React.createElement(InspectorPanel, { title: "Layered Styles", initialOpen: true, group: "styles" }, ...layeredBlockStyles.get(props['name']).layers.map(layer => convertLayersToRadios(layer, layeredBlockStyles.get(props['name']).layers, props))));
59
61
  }, 'plauditGutenbergApiExtensionsLayeredStyles'));
60
62
  }
61
63
  //# sourceMappingURL=layered-styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"layered-styles.js","sourceRoot":"","sources":["../../src/blocks/layered-styles.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layered-styles.js","sourceRoot":"","sources":["../../src/blocks/layered-styles.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { type Block, type BlockConfiguration, type BlockSaveProps } from "@wordpress/blocks";
2
+ import { InnerBlocks } from "@wordpress/block-editor";
3
+ import type { UseBlockProps } from "@wordpress/block-editor/components/use-block-props";
4
+ import React, { type ComponentType, type ReactNode } from "react";
5
+ export type SimpleBlockTypeConfig<TAttributes extends Record<string, any>> = {
6
+ icon?: BlockConfiguration<TAttributes>['icon'] | undefined;
7
+ defaults?: Required<TAttributes>;
8
+ controls?: NonNullable<Block<TAttributes>['edit']>;
9
+ renderer: (attributes: BlockSaveProps<TAttributes>, wrapperProps: UseBlockProps | UseBlockProps['save'], InnerBlocks: () => React.ReactElement, mode: "edit" | "save") => ReactNode;
10
+ innerBlocksProps?: InnerBlocks.Props;
11
+ settings?: Partial<BlockConfiguration<TAttributes>>;
12
+ };
13
+ declare function applyDefaults<TAttributes extends Record<string, any>, K extends BlockSaveProps<TAttributes>>(config: Omit<SimpleBlockTypeConfig<TAttributes>, 'renderer'>, props: K): Omit<K, "attributes"> & {
14
+ attributes: { [P in keyof K["attributes"]]: K["attributes"][P]; };
15
+ };
16
+ export declare function registerSimpleBlockType<TAttributes extends Record<string, any> = {}>(metadata: BlockConfiguration<TAttributes>, config: SimpleBlockTypeConfig<TAttributes>): Block<TAttributes> | undefined;
17
+ type SimpleContainerTypeConfig<TAttributes extends Record<string, any>> = Omit<SimpleBlockTypeConfig<TAttributes>, 'renderer'> & {
18
+ tag?: ComponentType;
19
+ attributesFromProps?: (arg: ReturnType<typeof applyDefaults<TAttributes, BlockSaveProps<TAttributes>>>, mode: "edit" | "save") => Parameters<UseBlockProps | UseBlockProps['save']>[0];
20
+ };
21
+ export declare function registerSimpleContainerBlock<TAttributes extends Record<string, any> = {}>(metadata: BlockConfiguration<TAttributes>, config: SimpleContainerTypeConfig<TAttributes>): Block<TAttributes> | undefined;
22
+ export {};
@@ -1,7 +1,7 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
1
  import { registerBlockType } from "@wordpress/blocks";
3
2
  import { InnerBlocks, useBlockProps, useInnerBlocksProps } from "@wordpress/block-editor";
4
3
  import { plauditIcon } from "../lib/plaudit-icons";
4
+ import React from "react";
5
5
  function applyDefaults(config, props) {
6
6
  const mutableProps = { ...props, attributes: { ...props.attributes } };
7
7
  for (const [k, v] of Object.entries(config.defaults ?? {})) {
@@ -17,24 +17,28 @@ export function registerSimpleBlockType(metadata, config) {
17
17
  icon: config.icon ?? plauditIcon,
18
18
  edit(props) {
19
19
  const populatedProps = applyDefaults(config, props);
20
- return _jsxs(_Fragment, { children: [config.controls && _jsx(config.controls, { ...populatedProps }), config.renderer(populatedProps, useBlockProps, () => _jsx(InnerBlocks, { ...config.innerBlocksProps }), "edit")] });
20
+ return React.createElement(React.Fragment, null,
21
+ config.controls && React.createElement(config.controls, { ...populatedProps }),
22
+ config.renderer(populatedProps, useBlockProps, () => React.createElement(InnerBlocks, { ...config.innerBlocksProps }), "edit"));
21
23
  },
22
24
  save(props) {
23
- return config.renderer(applyDefaults(config, props), useBlockProps.save, () => _jsx(InnerBlocks.Content, {}), "save");
25
+ return config.renderer(applyDefaults(config, props), useBlockProps.save, () => React.createElement(InnerBlocks.Content, null), "save");
24
26
  }
25
27
  });
26
28
  }
27
29
  export function registerSimpleContainerBlock(metadata, config) {
28
- const Tag = config.tag ?? ((props) => _jsx("div", { ...props }));
30
+ const Tag = config.tag ?? ((props) => React.createElement("div", { ...props }));
29
31
  return registerBlockType(metadata, {
30
32
  ...config.settings,
31
33
  icon: config.icon ?? plauditIcon,
32
34
  edit(props) {
33
35
  const populatedProps = applyDefaults(config, props);
34
- return _jsxs(_Fragment, { children: [config.controls && _jsx(config.controls, { ...populatedProps }), _jsx(Tag, { ...useInnerBlocksProps(useBlockProps((config.attributesFromProps ?? (() => ({})))(populatedProps, "edit")), config.innerBlocksProps) })] });
36
+ return React.createElement(React.Fragment, null,
37
+ config.controls && React.createElement(config.controls, { ...populatedProps }),
38
+ React.createElement(Tag, { ...useInnerBlocksProps(useBlockProps((config.attributesFromProps ?? (() => ({})))(populatedProps, "edit")), config.innerBlocksProps) }));
35
39
  },
36
40
  save(props) {
37
- return _jsx(Tag, { ...useInnerBlocksProps.save(useBlockProps.save((config.attributesFromProps ?? (() => ({})))(applyDefaults(config, props), "edit"))) });
41
+ return React.createElement(Tag, { ...useInnerBlocksProps.save(useBlockProps.save((config.attributesFromProps ?? (() => ({})))(applyDefaults(config, props), "edit"))) });
38
42
  }
39
43
  });
40
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simple-block.js","sourceRoot":"","sources":["../../src/blocks/simple-block.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simple-block.js","sourceRoot":"","sources":["../../src/blocks/simple-block.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2D,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAC9G,OAAO,EAAC,WAAW,EAAE,aAAa,EAAE,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;AAGxF,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAEjD,OAAO,KAA2C,MAAM,OAAO,CAAC;AAUhE,SAAS,aAAa,CAAiF,MAA4D,EAAE,KAAQ;IAE5K,MAAM,YAAY,GAAG,EAAC,GAAG,KAAK,EAAE,UAAU,EAAE,EAAC,GAAG,KAAK,CAAC,UAAU,EAAC,EAAyD,CAAC;IAC3H,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAuD,EAAE,CAAC;QAClH,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9C,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IACD,OAAO,YAAY,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACtC,QAAyC,EAAE,MAA0C;IAErF,OAAO,iBAAiB,CAAc,QAAQ,EAAE;QAC/C,GAAG,MAAM,CAAC,QAAQ;QAClB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,WAAW;QAChC,IAAI,CAAC,KAAK;YACT,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO;gBACL,MAAM,CAAC,QAAQ,IAAI,oBAAC,MAAM,CAAC,QAAQ,OAAK,cAAc,GAAI;gBAC1D,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,oBAAC,WAAW,OAAK,MAAM,CAAC,gBAAgB,GAAI,EAAE,MAAM,CAAC,CACzG,CAAC;QACL,CAAC;QACD,IAAI,CAAC,KAAK;YACT,OAAO,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,oBAAC,WAAW,CAAC,OAAO,OAAG,EAAE,MAAM,CAAC,CAAC;QACjH,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAOD,MAAM,UAAU,4BAA4B,CAC3C,QAAyC,EAAE,MAA8C;IAEzF,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,gCAAS,KAAK,GAAI,CAAC,CAAC;IAC/D,OAAO,iBAAiB,CAAc,QAAQ,EAAE;QAC/C,GAAG,MAAM,CAAC,QAAQ;QAClB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,WAAW;QAChC,IAAI,CAAC,KAAK;YACT,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO;gBACL,MAAM,CAAC,QAAQ,IAAI,oBAAC,MAAM,CAAC,QAAQ,OAAK,cAAc,GAAI;gBAC3D,oBAAC,GAAG,OAAK,mBAAmB,CAAC,aAAa,CACzC,CAAC,MAAM,CAAC,mBAAmB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAmC,CAAA,CAAC,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,GAAI,CAClI,CAAC;QACL,CAAC;QACD,IAAI,CAAC,KAAK;YACT,OAAO,oBAAC,GAAG,OAAK,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAC1D,CAAC,MAAM,CAAC,mBAAmB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAA2C,CAAA,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAAI,CAAC;QACnI,CAAC;KACD,CAAC,CAAA;AACH,CAAC"}