@plaudit/gutenberg-api-extensions 2.62.0 → 2.64.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 (71) hide show
  1. package/build/blocks/SNPGroupComponent.js +13 -2
  2. package/build/blocks/SNPGroupComponent.js.map +1 -1
  3. package/build/blocks/basic-custom-block-bindings-support.d.ts +1 -10
  4. package/build/blocks/basic-custom-block-bindings-support.js +8 -12
  5. package/build/blocks/basic-custom-block-bindings-support.js.map +1 -1
  6. package/build/blocks/common-native-property-constructors.d.ts +17 -6
  7. package/build/blocks/common-native-property-constructors.js +128 -29
  8. package/build/blocks/common-native-property-constructors.js.map +1 -1
  9. package/build/blocks/data-controller.d.ts +1 -1
  10. package/build/blocks/data-controller.js +4 -1
  11. package/build/blocks/data-controller.js.map +1 -1
  12. package/build/blocks/layered-styles-impl.js +6 -5
  13. package/build/blocks/layered-styles-impl.js.map +1 -1
  14. package/build/blocks/layout/LaidOutProperty.d.ts +1 -0
  15. package/build/blocks/layout/LaidOutProperty.js +16 -5
  16. package/build/blocks/layout/LaidOutProperty.js.map +1 -1
  17. package/build/blocks/layout/LaidOutPropertyRow.d.ts +2 -1
  18. package/build/blocks/layout/LaidOutPropertyRow.js +3 -3
  19. package/build/blocks/layout/LaidOutPropertyRow.js.map +1 -1
  20. package/build/blocks/layout/ToolsPanelContext.d.ts +9 -0
  21. package/build/blocks/layout/ToolsPanelContext.js +18 -0
  22. package/build/blocks/layout/ToolsPanelContext.js.map +1 -0
  23. package/build/blocks/simple-native-property-api.js +4 -40
  24. package/build/blocks/simple-native-property-api.js.map +1 -1
  25. package/build/blocks/simple-native-property-impl.js +33 -133
  26. package/build/blocks/simple-native-property-impl.js.map +1 -1
  27. package/build/blocks/simple-native-property-internal-shared.d.ts +12 -17
  28. package/build/blocks/simple-native-property-internal-shared.js +0 -18
  29. package/build/blocks/simple-native-property-internal-shared.js.map +1 -1
  30. package/build/controls/PromisableComponent.d.ts +3 -6
  31. package/build/controls/PromisableComponent.js +17 -39
  32. package/build/controls/PromisableComponent.js.map +1 -1
  33. package/build/controls/hooks/useSortableItemsModel.js +59 -56
  34. package/build/controls/hooks/useSortableItemsModel.js.map +1 -1
  35. package/build/editor/post-featured-image.js +3 -2
  36. package/build/editor/post-featured-image.js.map +1 -1
  37. package/build/editor/simple-gutenberg-endpoints-api.d.ts +6 -0
  38. package/build/editor/simple-gutenberg-endpoints-api.js +15 -0
  39. package/build/editor/simple-gutenberg-endpoints-api.js.map +1 -0
  40. package/build/editor/simple-gutenberg-endpoints-impl.d.ts +23 -0
  41. package/build/editor/simple-gutenberg-endpoints-impl.js +47 -0
  42. package/build/editor/simple-gutenberg-endpoints-impl.js.map +1 -0
  43. package/build/index.d.ts +3 -11
  44. package/build/index.js +10 -4
  45. package/build/index.js.map +1 -1
  46. package/build/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.d.ts +26 -0
  47. package/build/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js +14 -0
  48. package/build/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js.map +1 -0
  49. package/build/lib/gutenberg-api-extensions-state/layered-block-styles-logic.d.ts +22 -0
  50. package/build/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js +14 -0
  51. package/build/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js.map +1 -0
  52. package/build/lib/gutenberg-api-extensions-state/snp-logic.d.ts +44 -0
  53. package/build/lib/gutenberg-api-extensions-state/snp-logic.js +177 -0
  54. package/build/lib/gutenberg-api-extensions-state/snp-logic.js.map +1 -0
  55. package/build/lib/gutenberg-api-extensions-state.d.ts +106 -0
  56. package/build/lib/gutenberg-api-extensions-state.js +107 -0
  57. package/build/lib/gutenberg-api-extensions-state.js.map +1 -0
  58. package/build/lib/helpers.d.ts +1 -0
  59. package/build/lib/helpers.js +10 -0
  60. package/build/lib/helpers.js.map +1 -0
  61. package/build/lib/suspense/promise-handlers.d.ts +18 -0
  62. package/build/lib/suspense/promise-handlers.js +34 -0
  63. package/build/lib/suspense/promise-handlers.js.map +1 -0
  64. package/build/lib/suspense.d.ts +7 -0
  65. package/build/lib/suspense.js +14 -0
  66. package/build/lib/suspense.js.map +1 -0
  67. package/build/lib/useful-types.d.ts +9 -0
  68. package/build/lib/useful-types.js +2 -0
  69. package/build/lib/useful-types.js.map +1 -0
  70. package/package.json +1 -1
  71. package/styles/editor.pcss +4 -0
@@ -1,19 +1,16 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { getBlockType } from "@wordpress/blocks";
3
2
  import { createHigherOrderComponent } from "@wordpress/compose";
4
- import { select } from "@wordpress/data";
3
+ import { dispatch, select } from "@wordpress/data";
5
4
  import { useEffect, useMemo } from "@wordpress/element";
6
5
  import { addAction, addFilter } from "@wordpress/hooks";
7
6
  import { produce } from "immer";
8
- import { hydrateSimpleNativeProperty } from "./common-native-property-constructors";
7
+ import { store as apiStore } from "../lib/gutenberg-api-extensions-state";
9
8
  import { useDataController, walkToNodeInValue } from "./data-controller";
10
9
  import { useDataControllerManager } from "./data-controller-manager";
11
10
  import { extractStyleLayerValueFromAttributes, LayeredStylesDataStore } from "./layered-styles-impl";
12
11
  import { TabsRoot } from "./layout/TabsRoot";
13
12
  import { PanelRoot } from "./layout/PanelRoot";
14
13
  import { PathError } from "./PathError";
15
- import { registerSimpleNativeProperties } from "./simple-native-property-api";
16
- import { getLayeredBlockStylesRegistry, getSimpleNativePanelsAndTabsForBlock } from "./simple-native-property-internal-shared";
17
14
  import { isBlockJsonNativePropsConfig } from "./snp-api";
18
15
  import { SNPDataStore } from "./snp-data-store";
19
16
  import { SNPTreeContextRoot } from "./SNPTreeContext";
@@ -25,132 +22,49 @@ class AttributeDataStore extends SNPDataStore {
25
22
  this.blockEditProps.setAttributes(name === 'className' ? { className: value?.toString() } : { [name]: value });
26
23
  }
27
24
  }
28
- function normalizeTabItems(items, extraPropTransforms, forLayeredStyles) {
29
- let bareProperties = [];
30
- const normalizedItems = [];
31
- for (const item of items) {
32
- if (Array.isArray(item)) {
33
- bareProperties.push(item.map(prp => hydrateSimpleNativeProperty(prp, "", extraPropTransforms, [], forLayeredStyles)));
34
- }
35
- else if ('title' in item && 'properties' in item) {
36
- if (bareProperties.length) {
37
- normalizedItems.push({ title: "", properties: bareProperties, initialOpen: true });
38
- bareProperties = [];
39
- }
40
- normalizedItems.push(hydrateSimpleNativePanel(item, extraPropTransforms, forLayeredStyles));
41
- }
42
- else {
43
- bareProperties.push(hydrateSimpleNativeProperty(item, "", extraPropTransforms, [], forLayeredStyles));
44
- }
45
- }
46
- if (bareProperties.length) {
47
- normalizedItems.push({ title: "", properties: bareProperties, initialOpen: true });
48
- }
49
- return normalizedItems;
50
- }
51
- function hydrateSimpleNativePanel(panel, extraPropTransforms, forLayeredStyles) {
52
- return {
53
- ...panel, properties: panel.properties.map(prop => Array.isArray(prop)
54
- ? prop.map(prp => hydrateSimpleNativeProperty(prp, "", extraPropTransforms, [], forLayeredStyles))
55
- : hydrateSimpleNativeProperty(prop, "", extraPropTransforms, [], forLayeredStyles))
56
- };
57
- }
58
- /**
59
- * This performs the one-time prep for rendering the registered SNP panels and tabs for a Block.
60
- *
61
- * @param block the name of the block to prep
62
- * @param extraPropTransforms this is used to make the transform information quickly available
63
- * @returns either false or an object with at least one declared panel or tab.
64
- * This guarantee is made in order to avoid having to perform more convoluted checks in the render methods
65
- */
66
- function prepSimpleNativePanelsAndTabs(block, extraPropTransforms) {
67
- const items = getSimpleNativePanelsAndTabsForBlock(block);
68
- if (items === undefined) {
69
- return false;
70
- }
71
- const ungroupedTabs = [];
72
- const panels = [];
73
- for (const item of items) {
74
- const isTab = 'items' in item;
75
- if (item.group === 'layered-styles') {
76
- const props = (isTab
77
- ? item.items.flatMap(propsOrPanel => 'title' in propsOrPanel ? propsOrPanel.properties : propsOrPanel)
78
- : item.properties).flat();
79
- const layeredBlockStyles = getLayeredBlockStylesRegistry(true);
80
- const existing = layeredBlockStyles.get(block);
81
- layeredBlockStyles.set(block, existing ? [...existing, ...props] : props);
82
- }
83
- if (isTab) {
84
- ungroupedTabs.push(item);
85
- }
86
- else {
87
- panels.push(item);
88
- }
89
- }
90
- if (!panels.length && !ungroupedTabs.length) {
91
- return false;
92
- }
93
- const groupedTabs = {};
94
- for (const tab of ungroupedTabs) {
95
- const tabGroupName = tab.group ?? 'default';
96
- const groupedTabsForName = groupedTabs[tabGroupName] ?? (groupedTabs[tabGroupName] = {});
97
- // If a tab with that title already exists, we append its properties to the existing ones
98
- const existingGroupedTabsForName = groupedTabsForName[tab.title];
99
- groupedTabsForName[tab.title] = {
100
- title: tab.title, group: tabGroupName,
101
- items: existingGroupedTabsForName
102
- ? [...existingGroupedTabsForName.items, ...normalizeTabItems(tab.items, extraPropTransforms, tab.group === "layered-styles")]
103
- : normalizeTabItems(tab.items, extraPropTransforms, tab.group === "layered-styles")
104
- };
105
- }
106
- return {
107
- // Because JavaScript's Array sorting methods are stable, we can just sort once at the end
108
- panels: panels.map(panel => hydrateSimpleNativePanel(panel, extraPropTransforms, panel.group === "layered-styles"))
109
- .sort(({ position: aPosition = 10 }, { position: bPosition = 10 }) => aPosition - bPosition),
110
- // We sort tab groups by name in order to force SNP styles to be added after layered-styles
111
- // We don't need to check for equality in the group comparator because Object-keys are guaranteed to be distinct
112
- tabs: Object.fromEntries(Object.entries(groupedTabs)
113
- .sort(([aName], [bName]) => aName > bName ? 1 : -1))
114
- };
115
- }
116
25
  export function installSimpleNativePropertiesSupport() {
117
- if (window.plauditSimpleNativePropertiesSupportInstalled) {
26
+ if (select(apiStore).featureProp("snp-support", "installed")) {
118
27
  return;
119
28
  }
120
- window.plauditSimpleNativePropertiesSupportInstalled = true;
121
- const simpleNativePanelsAndTabs = {};
29
+ dispatch(apiStore).setFeatureProp("snp-support", "installed", true);
122
30
  const dataControllerManager = useDataControllerManager();
123
- const perBlockRawExtraPropTransforms = {};
124
- const perBlockExtraPropTransformsCache = {};
31
+ const registeredBlocks = new Map();
125
32
  addFilter('blocks.registerBlockType', 'plaudit/gutenberg-api-extensions/attach-simple-native-properties', (atts) => {
126
33
  let isPlauditNative;
127
- if ((isPlauditNative = isBlockJsonNativePropsConfig(atts.plaudit)) && atts.plaudit.properties !== undefined
128
- && (Array.isArray(atts.plaudit.properties) ? atts.plaudit.properties.length : atts.plaudit.properties)) {
129
- registerSimpleNativeProperties({ block: atts.name, properties: atts.plaudit.properties });
34
+ if (registeredBlocks.has(atts.name)) {
35
+ isPlauditNative = registeredBlocks.get(atts.name);
36
+ }
37
+ else {
38
+ dispatch(apiStore).recordBaselineBlockAttrs(atts);
39
+ if ((isPlauditNative = isBlockJsonNativePropsConfig(atts.plaudit)) && atts.plaudit.properties !== undefined
40
+ && (Array.isArray(atts.plaudit.properties) ? atts.plaudit.properties.length : atts.plaudit.properties)) {
41
+ dispatch(apiStore).addProperties(atts.name, atts.plaudit.properties);
42
+ }
43
+ registeredBlocks.set(atts.name, isPlauditNative);
130
44
  }
131
- const rawExtraPropTransforms = perBlockRawExtraPropTransforms[atts.name] ?? (perBlockRawExtraPropTransforms[atts.name] = {});
132
- const blockSimpleNativePanelsAndTabs = simpleNativePanelsAndTabs[atts.name]
133
- ?? (simpleNativePanelsAndTabs[atts.name] = prepSimpleNativePanelsAndTabs(atts.name, rawExtraPropTransforms));
45
+ //TODO: Figure out some way to re-register a block when its attributes are changed
46
+ const blockSimpleNativePanelsAndTabs = select(apiStore).preppedProperties(atts.name);
134
47
  if (blockSimpleNativePanelsAndTabs) {
48
+ const extraPropTransforms = select(apiStore).extraPropTransforms(atts.name) ?? {};
135
49
  const attsAttributes = { ...atts.attributes };
136
- if (isPlauditNative && Object.values(rawExtraPropTransforms).some(cfg => cfg.styleProperty)) {
50
+ if (isPlauditNative && Object.values(extraPropTransforms).some(cfg => cfg.styleProperty)) {
137
51
  attsAttributes['__plaudit/computed-style-attr'] = { type: "object" };
138
52
  }
139
53
  const injectableProperties = {};
140
54
  for (const panel of blockSimpleNativePanelsAndTabs.panels) {
141
- attachSNPsInPanel(panel.properties, injectableProperties, rawExtraPropTransforms, panel.group === "layered-styles");
55
+ attachSNPsInPanel(panel.properties, injectableProperties);
142
56
  }
143
57
  for (const tabGroup of Object.values(blockSimpleNativePanelsAndTabs.tabs)) {
144
58
  for (const tab of Object.values(tabGroup)) {
145
59
  for (const item of tab.items) {
146
60
  if ('properties' in item) {
147
- attachSNPsInPanel(item.properties, injectableProperties, rawExtraPropTransforms, tab.group === "layered-styles");
61
+ attachSNPsInPanel(item.properties, injectableProperties);
148
62
  }
149
63
  else if (Array.isArray(item)) {
150
- attachSNPsInPanel(item, injectableProperties, rawExtraPropTransforms, tab.group === "layered-styles");
64
+ attachSNPsInPanel(item, injectableProperties);
151
65
  }
152
66
  else {
153
- attachSNP(item, injectableProperties, rawExtraPropTransforms, tab.group === "layered-styles");
67
+ attachSNP(item, injectableProperties);
154
68
  }
155
69
  }
156
70
  }
@@ -163,9 +77,7 @@ export function installSimpleNativePropertiesSupport() {
163
77
  return atts;
164
78
  });
165
79
  addFilter('editor.BlockEdit', 'plaudit/gutenberg-api-extensions/simple-native-properties', createHigherOrderComponent(BlockEdit => (blockEditProps) => {
166
- const rawExtraPropTransforms = perBlockRawExtraPropTransforms[blockEditProps.name] ?? (perBlockRawExtraPropTransforms[blockEditProps.name] = {});
167
- const blockSimpleNativePanelsAndTabs = simpleNativePanelsAndTabs[blockEditProps.name]
168
- ?? (simpleNativePanelsAndTabs[blockEditProps.name] = prepSimpleNativePanelsAndTabs(blockEditProps.name, rawExtraPropTransforms));
80
+ const blockSimpleNativePanelsAndTabs = select(apiStore).preppedProperties(blockEditProps.name);
169
81
  if (!blockSimpleNativePanelsAndTabs) {
170
82
  return _jsx(BlockEdit, { ...blockEditProps });
171
83
  }
@@ -201,10 +113,9 @@ export function installSimpleNativePropertiesSupport() {
201
113
  }
202
114
  });
203
115
  addFilter('editor.BlockListBlock', 'plaudit/gutenberg-api-extensions/simple-native-properties', createHigherOrderComponent(BlockListBlock => (props) => {
204
- const dataController = dataControllerManager.getDataController(props.clientId);
205
- const extraPropTransforms = perBlockExtraPropTransformsCache[props.name]
206
- ?? (perBlockExtraPropTransformsCache[props.name] = computeExtraPropTransforms(getBlockType(props.name), perBlockRawExtraPropTransforms[props.name]));
116
+ const extraPropTransforms = select(apiStore).computedExtraPropTransforms(props.name);
207
117
  if (!extraPropTransforms || !extraPropTransforms.appliesInEditor) {
118
+ const dataController = dataControllerManager.getDataController(props.clientId);
208
119
  if (!dataController) {
209
120
  return _jsx(BlockListBlock, { ...props });
210
121
  }
@@ -214,6 +125,7 @@ export function installSimpleNativePropertiesSupport() {
214
125
  const className = hasValidationError ? "has-validation-error" : undefined;
215
126
  return (_jsx(BlockListBlock, { ...props, wrapperProps: { className }, className: className }));
216
127
  }
128
+ const dataController = dataControllerManager.getDataController(props.clientId);
217
129
  if (!dataController) {
218
130
  const wrapperProps = {};
219
131
  return _jsx(BlockListBlock, { ...props, wrapperProps: applyExtraPropTransforms(extraPropTransforms.transforms, props.attributes, wrapperProps), className: wrapperProps.className });
@@ -228,9 +140,8 @@ export function installSimpleNativePropertiesSupport() {
228
140
  if (isBlockJsonNativePropsConfig(blockType.plaudit)) {
229
141
  return props;
230
142
  }
231
- const extraPropTransforms = perBlockExtraPropTransformsCache[blockType.name]
232
- ?? (perBlockExtraPropTransformsCache[blockType.name] = computeExtraPropTransforms(blockType, perBlockRawExtraPropTransforms[blockType.name]));
233
- return extraPropTransforms !== false && extraPropTransforms.appliesInEditor ? produce(props, draft => {
143
+ const extraPropTransforms = select(apiStore).computedExtraPropTransforms(blockType.name);
144
+ return extraPropTransforms && extraPropTransforms.appliesInEditor ? produce(props, draft => {
234
145
  applyExtraPropTransforms(extraPropTransforms.transforms, attributes, draft);
235
146
  }) : props;
236
147
  });
@@ -292,16 +203,6 @@ function applyExtraPropTransforms(extraPropTransforms, attributes, draft) {
292
203
  }
293
204
  return draft;
294
205
  }
295
- function computeExtraPropTransforms(blockType, extraPropTransforms) {
296
- if (extraPropTransforms === undefined) {
297
- return false;
298
- }
299
- const rawTransforms = Object.entries(extraPropTransforms);
300
- const transforms = rawTransforms.length
301
- ? rawTransforms.map(transform => [transform[0].split("."), transform[1]])
302
- : false;
303
- return transforms ? { transforms, appliesInEditor: !isBlockJsonNativePropsConfig(blockType.plaudit) } : false;
304
- }
305
206
  function makeDataStoreForPanelOrTab(blockEditProps, group, attributeCache) {
306
207
  return group === 'layered-styles' ? new LayeredStylesDataStore(blockEditProps, attributeCache) : new AttributeDataStore(blockEditProps, attributeCache);
307
208
  }
@@ -332,22 +233,21 @@ function SNPPropsWrapper({ blockSimpleNativePanelsAndTabs, blockEditProps, dataC
332
233
  //TODO: Hook into block-focus change listener and run validation on focus change
333
234
  return _jsxs(SNPTreeContextRoot, { dataController: dataController, children: [...blockSimpleNativePanelsAndTabs.panels.map(panel => _jsx(PanelRoot, { panel: panel })), ...Object.entries(blockSimpleNativePanelsAndTabs.tabs).map(([group, tabs]) => _jsx(TabsRoot, { tabs: tabs, tabGroupName: group }))] });
334
235
  }
335
- function attachSNP(property, injectableProperties, extraPropTransforms, forLayeredStyles) {
336
- property = hydrateSimpleNativeProperty(property, "", extraPropTransforms, [], forLayeredStyles);
236
+ function attachSNP(property, injectableProperties) {
337
237
  injectableProperties[property.name] = { type: property.type, default: property.alwaysStore !== false ? undefined : property.default };
338
238
  if ('enum' in property) {
339
239
  injectableProperties[property.name].enum = property.enum;
340
240
  }
341
241
  }
342
- function attachSNPsInPanel(properties, injectableProperties, extraPropTransforms, forLayeredStyles) {
242
+ function attachSNPsInPanel(properties, injectableProperties) {
343
243
  for (const property of properties) {
344
244
  if (Array.isArray(property)) {
345
245
  for (const prop of property) {
346
- attachSNP(prop, injectableProperties, extraPropTransforms, forLayeredStyles);
246
+ attachSNP(prop, injectableProperties);
347
247
  }
348
248
  }
349
249
  else {
350
- attachSNP(property, injectableProperties, extraPropTransforms, forLayeredStyles);
250
+ attachSNP(property, injectableProperties);
351
251
  }
352
252
  }
353
253
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simple-native-property-impl.js","sourceRoot":"","sources":["../../src/blocks/simple-native-property-impl.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simple-native-property-impl.js","sourceRoot":"","sources":["../../src/blocks/simple-native-property-impl.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,4 @@
1
- import type { BlockName, HydratedSimpleNativeProperty, PDSimpleNativeProperty, SimpleNativePanel, SimpleNativeTab } from "./simple-native-property-api";
2
- declare global {
3
- interface Window {
4
- plauditSimpleNativePanelsAndTabs?: PlauditSimpleNativePanelsAndTabsRegistry;
5
- plauditLayeredBlockStyles?: PlauditLayeredBlockStylesRegistry;
6
- }
7
- }
1
+ import type { HydratedSimpleNativeProperty, InspectorPanelGroup, SimpleNativePanel, SimpleNativeTab } from "./simple-native-property-api";
8
2
  export type ExtraPropTransformConfig = {
9
3
  propName: string;
10
4
  forLayeredStyles: boolean;
@@ -13,6 +7,10 @@ export type ExtraPropTransformConfig = {
13
7
  export type ExtraPropTransformsConfig = {
14
8
  [key: string]: ExtraPropTransformConfig;
15
9
  };
10
+ export type PerBlockExtraPropTransforms = {
11
+ transforms: [[string, ...string[]], ExtraPropTransformConfig][];
12
+ appliesInEditor: boolean;
13
+ };
16
14
  export type HydratedSimpleNativeTabItem = Omit<HydratedSimpleNativePanel, 'group'>;
17
15
  export type HydratedSimpleNativeTab = Omit<SimpleNativeTab, 'items'> & {
18
16
  items: HydratedSimpleNativeTabItem[];
@@ -24,15 +22,12 @@ export type HydratedSimpleNativePanel = Omit<SimpleNativePanel, 'properties'> &
24
22
  properties: HydratedLaidOutProperties;
25
23
  };
26
24
  export type HydratedLaidOutProperties = (HydratedSimpleNativeProperty | HydratedSimpleNativeProperty[])[];
27
- export type PlauditSimpleNativePanelsAndTabsRegistry = {
28
- [blockName in BlockName]: Array<SimpleNativePanel | SimpleNativeTab>;
29
- };
30
- export declare function getSimpleNativePanelsAndTabsRegistry(create: false): PlauditSimpleNativePanelsAndTabsRegistry | undefined;
31
- export declare function getSimpleNativePanelsAndTabsRegistry(create?: true): PlauditSimpleNativePanelsAndTabsRegistry;
32
- export declare function getSimpleNativePanelsAndTabsForBlock(blockName: BlockName): (SimpleNativePanel | SimpleNativeTab)[] | undefined;
33
- export type PlauditLayeredBlockStylesRegistry = Map<BlockName, PDSimpleNativeProperty[]>;
34
- export declare function getLayeredBlockStylesRegistry(create: false): PlauditLayeredBlockStylesRegistry | undefined;
35
- export declare function getLayeredBlockStylesRegistry(create?: true): PlauditLayeredBlockStylesRegistry;
36
- export declare function getLayeredStylesForBlock(blockName: BlockName): PDSimpleNativeProperty[] | undefined;
25
+ export type HydratedInspectorPanelGroupedTabs = {
26
+ [key in InspectorPanelGroup]?: HydratedSimpleNativeTabGroup;
27
+ };
28
+ export type PreppedSimpleNativePanelsAndTabs = {
29
+ panels: HydratedSimpleNativePanel[];
30
+ tabs: HydratedInspectorPanelGroupedTabs;
31
+ };
37
32
  export declare function isRootLevelPanelGroup(panelGroup: string | undefined): panelGroup is "default" | "settings" | "advanced" | "styles" | undefined;
38
33
  export declare function buildDefaultValueFromDefinition(definition: HydratedSimpleNativeProperty | undefined): any;
@@ -1,21 +1,3 @@
1
- export function getSimpleNativePanelsAndTabsRegistry(create) {
2
- if (create !== false && window.plauditSimpleNativePanelsAndTabs === undefined) {
3
- return window.plauditSimpleNativePanelsAndTabs = {};
4
- }
5
- return window.plauditSimpleNativePanelsAndTabs;
6
- }
7
- export function getSimpleNativePanelsAndTabsForBlock(blockName) {
8
- return window.plauditSimpleNativePanelsAndTabs?.[blockName];
9
- }
10
- export function getLayeredBlockStylesRegistry(create) {
11
- if (create !== false && window.plauditLayeredBlockStyles === undefined) {
12
- return window.plauditLayeredBlockStyles = new Map();
13
- }
14
- return window.plauditLayeredBlockStyles;
15
- }
16
- export function getLayeredStylesForBlock(blockName) {
17
- return window.plauditLayeredBlockStyles?.get(blockName);
18
- }
19
1
  export function isRootLevelPanelGroup(panelGroup) {
20
2
  return panelGroup === undefined || panelGroup === "default" || panelGroup === "advanced" || panelGroup === "settings" || panelGroup === "styles";
21
3
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simple-native-property-internal-shared.js","sourceRoot":"","sources":["../../src/blocks/simple-native-property-internal-shared.ts"],"names":[],"mappings":"AAsBA,MAAM,UAAU,oCAAoC,CAAC,MAAgB;IACpE,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,CAAC,gCAAgC,KAAK,SAAS,EAAE,CAAC;QAC/E,OAAO,MAAM,CAAC,gCAAgC,GAAG,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,MAAM,CAAC,gCAAgC,CAAC;AAChD,CAAC;AACD,MAAM,UAAU,oCAAoC,CAAC,SAAoB;IACxE,OAAO,MAAM,CAAC,gCAAgC,EAAE,CAAC,SAAS,CAAC,CAAC;AAC7D,CAAC;AAKD,MAAM,UAAU,6BAA6B,CAAC,MAAgB;IAC7D,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;QACxE,OAAO,MAAM,CAAC,yBAAyB,GAAG,IAAI,GAAG,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,MAAM,CAAC,yBAAyB,CAAC;AACzC,CAAC;AACD,MAAM,UAAU,wBAAwB,CAAC,SAAoB;IAC5D,OAAO,MAAM,CAAC,yBAAyB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,UAA4B;IACjE,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,CAAC;AAClJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,UAAkD;IACjG,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IAClB,CAAC;SAAM,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC7C,OAAO,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3F,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;QAC5B,OAAO,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;SAAM,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACxC,OAAO,EAAE,CAAC;IACX,CAAC;SAAM,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,OAAO,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,+BAA+B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACvG,CAAC"}
1
+ {"version":3,"file":"simple-native-property-internal-shared.js","sourceRoot":"","sources":["../../src/blocks/simple-native-property-internal-shared.ts"],"names":[],"mappings":"AAgBA,MAAM,UAAU,qBAAqB,CAAC,UAA4B;IACjE,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,CAAC;AAClJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,UAAkD;IACjG,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IAClB,CAAC;SAAM,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC7C,OAAO,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3F,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;QAC5B,OAAO,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;SAAM,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACxC,OAAO,EAAE,CAAC;IACX,CAAC;SAAM,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,OAAO,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,+BAA+B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACvG,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type ReactNode } from "react";
1
+ import React, { type ReactNode } from "react";
2
2
  export type AwaitedProps<T extends object> = {
3
3
  [K in keyof T]: Awaited<T[K]>;
4
4
  };
@@ -6,9 +6,6 @@ export type PromisableComponentProps<T extends Awaited<object>> = {
6
6
  promisedProps: T | Promise<T>;
7
7
  initializing?: (() => ReactNode) | ReactNode;
8
8
  renderer(props: AwaitedProps<T>): ReactNode;
9
+ forceSuspend?: boolean;
9
10
  };
10
- export declare function PromisableComponent<T extends Awaited<object>>(props: PromisableComponentProps<T>): import("react/jsx-runtime").JSX.Element;
11
- export type SuspendingResource<T> = {
12
- read(): T;
13
- promise: Promise<T>;
14
- };
11
+ export declare function PromisableComponent<T extends Awaited<object>>(props: PromisableComponentProps<T>): string | number | boolean | import("react/jsx-runtime").JSX.Element | Iterable<React.ReactNode> | null | undefined;
@@ -1,48 +1,26 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Spinner } from '@wordpress/components';
3
3
  import { useMemo } from "@wordpress/element";
4
+ import { use, wrapPromise } from "../lib/suspense";
4
5
  import { Suspense } from "react";
5
6
  export function PromisableComponent(props) {
6
- const promisedPropsResource = useWrappedArgsParameter(props.promisedProps);
7
- return _jsx(Suspense, { fallback: typeof props.initializing === 'function' ? props.initializing() : _jsxs(_Fragment, { children: [_jsx(Spinner, {}), " ", props.initializing] }), children: _jsx(PromisableComponentDelegator, { promisedPropsResource: promisedPropsResource, children: props.renderer }) });
7
+ const wrappedPromise = useWrappedArgsParameter(props.promisedProps, props.forceSuspend);
8
+ if (!(wrappedPromise instanceof Promise)) {
9
+ return props.renderer(wrappedPromise);
10
+ }
11
+ return _jsx(Suspense, { fallback: typeof props.initializing === 'function' ? props.initializing() : _jsxs(_Fragment, { children: [_jsx(Spinner, {}), " ", props.initializing] }), children: _jsx(PromisableComponentDelegator, { promise: wrappedPromise, children: props.renderer }) });
8
12
  }
9
- function PromisableComponentDelegator({ promisedPropsResource, children }) {
10
- return children(promisedPropsResource.read());
13
+ function PromisableComponentDelegator({ promise, children }) {
14
+ return children(use(promise));
11
15
  }
12
- function useWrappedArgsParameter(args) {
13
- return useMemo(() => wrapPromise(Promise
14
- .all(Object.entries(args)
15
- .filter(([_, value]) => value instanceof Promise)
16
- .map(async ([key, value]) => [key, await value]))
17
- .then(entries => Object.fromEntries(entries))), Object.values(args));
18
- }
19
- function wrapPromise(promise, name) {
20
- let status = 'pending';
21
- let response = undefined;
22
- let error = undefined;
23
- const suspender = promise.then(res => {
24
- status = 'success';
25
- response = res;
26
- }, err => {
27
- status = 'error';
28
- response = err;
29
- });
30
- return {
31
- read: () => {
32
- switch (status) {
33
- case "success":
34
- if (response === undefined) {
35
- status = 'error';
36
- throw error ?? (error = new Error(`Encountered a supposedly-fetched response${name ? ` for ${name}` : ''} that is still undefined`));
37
- }
38
- return response;
39
- case "error":
40
- throw error;
41
- case "pending":
42
- throw suspender;
43
- }
44
- },
45
- promise
46
- };
16
+ function useWrappedArgsParameter(args, forcePromise) {
17
+ return useMemo(() => {
18
+ if (!Object.values(args).some(v => v instanceof Promise)) {
19
+ return forcePromise ? wrapPromise(Promise.resolve(args)) : args;
20
+ }
21
+ return wrapPromise(Promise
22
+ .all(Object.entries(args).map(async ([key, value]) => [key, await value]))
23
+ .then(entries => Object.fromEntries(entries)));
24
+ }, [...Object.values(args), forcePromise]);
47
25
  }
48
26
  //# sourceMappingURL=PromisableComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PromisableComponent.js","sourceRoot":"","sources":["../../src/controls/PromisableComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAE3C,OAAc,EAAC,QAAQ,EAAiB,MAAM,OAAO,CAAC;AAKtD,MAAM,UAAU,mBAAmB,CAA4B,KAAkC;IAChG,MAAM,qBAAqB,GAAG,uBAAuB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3E,OAAO,KAAC,QAAQ,IAAC,QAAQ,EAAE,OAAO,KAAK,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,8BAAE,KAAC,OAAO,KAAG,OAAE,KAAK,CAAC,YAAY,IAAI,YACjI,KAAC,4BAA4B,IAAC,qBAAqB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAI,GAC9F,CAAC;AACb,CAAC;AACD,SAAS,4BAA4B,CACpC,EAAC,qBAAqB,EAAE,QAAQ,EAAgF;IAEhH,OAAO,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,CAAC;AAGD,SAAS,uBAAuB,CAAe,IAAO;IACrD,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO;SACtC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,YAAY,OAAO,CAAC;SAChD,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAgD,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC;SAC/F,IAAI,CAAkB,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/F,CAAC;AACD,SAAS,WAAW,CAAI,OAAmB,EAAE,IAAa;IACzD,IAAI,MAAM,GAAgC,SAAS,CAAC;IACpD,IAAI,QAAQ,GAAgB,SAAS,CAAC;IACtC,IAAI,KAAK,GAAQ,SAAS,CAAC;IAE3B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAC7B,GAAG,CAAC,EAAE;QACL,MAAM,GAAG,SAAS,CAAC;QACnB,QAAQ,GAAG,GAAG,CAAC;IAChB,CAAC,EACD,GAAG,CAAC,EAAE;QACL,MAAM,GAAG,OAAO,CAAC;QACjB,QAAQ,GAAG,GAAG,CAAC;IAChB,CAAC,CACD,CAAC;IAEF,OAAO;QACN,IAAI,EAAE,GAAG,EAAE;YACV,QAAQ,MAAM,EAAE,CAAC;gBAChB,KAAK,SAAS;oBACb,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC5B,MAAM,GAAG,OAAO,CAAC;wBACjB,MAAM,KAAK,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,CAAC;oBACtI,CAAC;oBACD,OAAO,QAAQ,CAAC;gBACjB,KAAK,OAAO;oBACX,MAAM,KAAK,CAAC;gBACb,KAAK,SAAS;oBACb,MAAM,SAAS,CAAC;YAClB,CAAC;QACF,CAAC;QACD,OAAO;KACP,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"PromisableComponent.js","sourceRoot":"","sources":["../../src/controls/PromisableComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAC,GAAG,EAAuB,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAEtE,OAAc,EAAC,QAAQ,EAAiB,MAAM,OAAO,CAAC;AAQtD,MAAM,UAAU,mBAAmB,CAA4B,KAAkC;IAChG,MAAM,cAAc,GAAG,uBAAuB,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IACxF,IAAI,CAAC,CAAC,cAAc,YAAY,OAAO,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,KAAC,QAAQ,IAAC,QAAQ,EAAE,OAAO,KAAK,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,8BAAE,KAAC,OAAO,KAAG,OAAE,KAAK,CAAC,YAAY,IAAI,YACjI,KAAC,4BAA4B,IAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAI,GACzE,CAAC;AACb,CAAC;AACD,SAAS,4BAA4B,CACpC,EAAC,OAAO,EAAE,QAAQ,EAA8D;IAEhF,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,uBAAuB,CAAe,IAAO,EAAE,YAAsB;IAC7E,OAAO,OAAO,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,OAAO,CAAC,EAAE,CAAC;YAC1D,OAAO,YAAY,CAAC,CAAC,CAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAA8C,CAAC,CAAC,CAAE,IAAiC,CAAC;QAC7I,CAAC;QACD,OAAO,WAAW,CAAC,OAAO;aACxB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAgD,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC;aACvH,IAAI,CAAkB,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAQ,CAAC,CAAC,CAAC;IACzE,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;AAC5C,CAAC"}