@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.
- package/build/blocks/common-native-property-implementations.d.ts +118 -0
- package/build/blocks/common-native-property-implementations.js +141 -20
- package/build/blocks/common-native-property-implementations.js.map +1 -1
- package/build/blocks/index.d.ts +5 -0
- package/build/blocks/layered-styles.d.ts +31 -0
- package/build/blocks/layered-styles.js +9 -7
- package/build/blocks/layered-styles.js.map +1 -1
- package/build/blocks/simple-block.d.ts +22 -0
- package/build/blocks/simple-block.js +10 -6
- package/build/blocks/simple-block.js.map +1 -1
- package/build/blocks/simple-native-property.d.ts +30 -0
- package/build/blocks/simple-native-property.js +106 -95
- package/build/blocks/simple-native-property.js.map +1 -1
- package/build/controls/AsynchronousFormTokenField.d.ts +20 -0
- package/build/controls/AsynchronousFormTokenField.js +23 -12
- package/build/controls/AsynchronousFormTokenField.js.map +1 -1
- package/build/controls/ExtendedPostPicker.d.ts +13 -0
- package/build/controls/ExtendedPostPicker.js +5 -10
- package/build/controls/ExtendedPostPicker.js.map +1 -1
- package/build/controls/InspectorPanel.d.ts +6 -0
- package/build/controls/InspectorPanel.js +3 -2
- package/build/controls/InspectorPanel.js.map +1 -1
- package/build/controls/LazySuggestionsComboboxControl.d.ts +7 -0
- package/build/controls/LazySuggestionsComboboxControl.js +70 -0
- package/build/controls/LazySuggestionsComboboxControl.js.map +1 -0
- package/build/controls/PickOne.d.ts +19 -0
- package/build/controls/PickOne.js +8 -7
- package/build/controls/PickOne.js.map +1 -1
- package/build/controls/SimpleToggle.d.ts +3 -0
- package/build/controls/SimpleToggle.js +2 -2
- package/build/controls/SimpleToggle.js.map +1 -1
- package/build/controls/SortableItemsControl.d.ts +11 -0
- package/build/controls/SortableItemsControl.js +154 -0
- package/build/controls/SortableItemsControl.js.map +1 -0
- package/{src/controls/index.ts → build/controls/index.d.ts} +1 -0
- package/build/controls/index.js +1 -0
- package/build/controls/index.js.map +1 -1
- package/build/controls/shared.d.ts +8 -0
- package/build/controls/shared.js +7 -0
- package/build/controls/shared.js.map +1 -0
- package/build/controls/types.d.ts +12 -0
- package/build/lib/plaudit-icons/column-1.d.ts +2 -0
- package/build/lib/plaudit-icons/column-1.js +3 -2
- package/build/lib/plaudit-icons/column-1.js.map +1 -1
- package/build/lib/plaudit-icons/column-2.d.ts +2 -0
- package/build/lib/plaudit-icons/column-2.js +3 -2
- package/build/lib/plaudit-icons/column-2.js.map +1 -1
- package/build/lib/plaudit-icons/column-3.d.ts +2 -0
- package/build/lib/plaudit-icons/column-3.js +3 -2
- package/build/lib/plaudit-icons/column-3.js.map +1 -1
- package/build/lib/plaudit-icons/placement-center.d.ts +2 -0
- package/build/lib/plaudit-icons/placement-center.js +3 -2
- package/build/lib/plaudit-icons/placement-center.js.map +1 -1
- package/build/lib/plaudit-icons/placement-end.d.ts +2 -0
- package/build/lib/plaudit-icons/placement-end.js +3 -2
- package/build/lib/plaudit-icons/placement-end.js.map +1 -1
- package/build/lib/plaudit-icons/placement-start.d.ts +2 -0
- package/build/lib/plaudit-icons/placement-start.js +3 -2
- package/build/lib/plaudit-icons/placement-start.js.map +1 -1
- package/build/lib/plaudit-icons/placement-stretch.d.ts +2 -0
- package/build/lib/plaudit-icons/placement-stretch.js +3 -2
- package/build/lib/plaudit-icons/placement-stretch.js.map +1 -1
- package/build/lib/plaudit-icons/plaudit-icon.d.ts +2 -0
- package/build/lib/plaudit-icons/plaudit-icon.js +3 -2
- package/build/lib/plaudit-icons/plaudit-icon.js.map +1 -1
- package/build/lib/plaudit-icons/reusable-block-marker.d.ts +2 -0
- package/build/lib/plaudit-icons/reusable-block-marker.js +3 -2
- package/build/lib/plaudit-icons/reusable-block-marker.js.map +1 -1
- package/{src/lib/plaudit-icons.ts → build/lib/plaudit-icons.d.ts} +0 -4
- package/package.json +14 -14
- package/src/blocks/common-native-property-implementations.tsx +0 -271
- package/src/blocks/index.ts +0 -12
- package/src/blocks/layered-styles.tsx +0 -108
- package/src/blocks/simple-block.tsx +0 -72
- package/src/blocks/simple-native-property.tsx +0 -200
- package/src/controls/AsynchronousFormTokenField.tsx +0 -151
- package/src/controls/ExtendedPostPicker.tsx +0 -50
- package/src/controls/InspectorPanel.tsx +0 -16
- package/src/controls/PickOne.tsx +0 -80
- package/src/controls/SimpleToggle.tsx +0 -9
- package/src/controls/types.ts +0 -11
- package/src/lib/plaudit-icons/column-1.tsx +0 -8
- package/src/lib/plaudit-icons/column-2.tsx +0 -8
- package/src/lib/plaudit-icons/column-3.tsx +0 -8
- package/src/lib/plaudit-icons/placement-center.tsx +0 -5
- package/src/lib/plaudit-icons/placement-end.tsx +0 -5
- package/src/lib/plaudit-icons/placement-start.tsx +0 -5
- package/src/lib/plaudit-icons/placement-stretch.tsx +0 -5
- package/src/lib/plaudit-icons/plaudit-icon.tsx +0 -6
- package/src/lib/plaudit-icons/reusable-block-marker.tsx +0 -5
- /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 {
|
|
2
|
-
import {
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
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 =
|
|
122
|
-
|
|
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 =
|
|
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 =
|
|
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 =
|
|
134
|
-
|
|
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,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
|
|
45
|
+
return React.createElement(PickOneFromToggleGroup, { ...layer, ...sharedProps });
|
|
46
46
|
case 'color':
|
|
47
|
-
return
|
|
47
|
+
return React.createElement(PickOneFromColors, { ...layer, ...sharedProps });
|
|
48
48
|
case 'radio':
|
|
49
|
-
return
|
|
49
|
+
return React.createElement(PickOneFromRadios, { ...layer, ...sharedProps });
|
|
50
50
|
case 'select':
|
|
51
|
-
return
|
|
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
|
|
56
|
+
return React.createElement(BlockEdit, { ...props });
|
|
57
57
|
}
|
|
58
|
-
return
|
|
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":"
|
|
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
|
|
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, () =>
|
|
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) =>
|
|
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
|
|
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
|
|
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":"
|
|
1
|
+
{"version":3,"file":"simple-block.js","sourceRoot":"","sources":["../../src/blocks/simple-block.tsx"],"names":[],"mappings":"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"}
|