@plaudit/gutenberg-api-extensions 2.33.0 → 2.35.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.
@@ -16,9 +16,6 @@ class AttributeDataStore extends SNPDataStore {
16
16
  this.blockEditProps.setAttributes(name === 'className' ? { className: value?.toString() } : { [name]: value });
17
17
  }
18
18
  }
19
- function isCombinerCondition(condition) {
20
- return condition.op === "and" || condition.op === "or" || condition.op === "not" || condition.op === "nand" || condition.op === "nor";
21
- }
22
19
  export function installSimpleNativePropertiesSupport() {
23
20
  if (window.plauditSimpleNativePropertiesSupportInstalled) {
24
21
  return;
@@ -26,116 +23,6 @@ export function installSimpleNativePropertiesSupport() {
26
23
  window.plauditSimpleNativePropertiesSupportInstalled = true;
27
24
  const ROOT_LEVEL_PANELS = [undefined, "default", "advanced", "settings", "styles"];
28
25
  const simpleNativePanelsAndTabs = window.plauditSimpleNativePanelsAndTabs ?? (window.plauditSimpleNativePanelsAndTabs = {});
29
- function performConditionTest(dataStore, blockEditProps, condition) {
30
- if (isCombinerCondition(condition)) {
31
- return testConditionStruct(dataStore, blockEditProps, condition.conditions, condition.op);
32
- }
33
- const attrValue = dataStore.getValue({ name: condition.property });
34
- if (!('value' in condition)) { // We negate this in order to ensure that unchecked values in the switch will throw a compile-time error
35
- return condition.op === "empty" ? !attrValue : !!attrValue;
36
- }
37
- switch (condition.op) {
38
- case "==":
39
- return attrValue == condition.value;
40
- case "!=":
41
- return attrValue != condition.value;
42
- case ">":
43
- return attrValue > condition.value;
44
- case "<":
45
- return attrValue < condition.value;
46
- case ">=":
47
- return attrValue >= condition.value;
48
- case "<=":
49
- return attrValue <= condition.value;
50
- }
51
- throw new Error(`Unsupported operator in condition: ${condition}`);
52
- }
53
- function testConditionStruct(dataStore, blockEditProps, conditions, combiner = "and") {
54
- switch (combiner) {
55
- case "and":
56
- for (const condition of conditions) {
57
- if (!(Array.isArray(condition) ? testConditionStruct(dataStore, blockEditProps, conditions, "and") : performConditionTest(dataStore, blockEditProps, condition))) {
58
- return false;
59
- }
60
- }
61
- return true;
62
- case "or":
63
- for (const condition of conditions) {
64
- if ((Array.isArray(condition) ? testConditionStruct(dataStore, blockEditProps, conditions, "and") : performConditionTest(dataStore, blockEditProps, condition))) {
65
- return true;
66
- }
67
- }
68
- return false;
69
- case "not":
70
- case "nand":
71
- for (const condition of conditions) {
72
- if (!(Array.isArray(condition) ? testConditionStruct(dataStore, blockEditProps, conditions, "and") : performConditionTest(dataStore, blockEditProps, condition))) {
73
- return true;
74
- }
75
- }
76
- return false;
77
- case "nor":
78
- for (const condition of conditions) {
79
- if ((Array.isArray(condition) ? testConditionStruct(dataStore, blockEditProps, conditions, "and") : performConditionTest(dataStore, blockEditProps, condition))) {
80
- return false;
81
- }
82
- }
83
- return true;
84
- }
85
- }
86
- function testCondition(dataStore, blockEditProps, condition) {
87
- if (condition === undefined) {
88
- return true;
89
- }
90
- if (Array.isArray(condition)) {
91
- return condition.length === 0 || testConditionStruct(dataStore, blockEditProps, condition, "or");
92
- }
93
- return condition(dataStore, blockEditProps);
94
- }
95
- function attachSNP(property, injectableProperties) {
96
- property = hydrateSimpleNativeProperty(property);
97
- const attrPath = property.name.split('.');
98
- if (attrPath.length === 1) {
99
- injectableProperties[property.name] = { type: property.type, default: property.alwaysStore !== false ? undefined : property.default };
100
- if ('enum' in property) {
101
- injectableProperties[property.name].enum = property.enum;
102
- }
103
- }
104
- else {
105
- let actualProp = injectableProperties[attrPath[0]];
106
- if (actualProp === undefined) {
107
- injectableProperties[attrPath[0]] = actualProp = { type: "object" };
108
- }
109
- else if (actualProp.type !== "object") {
110
- throw new Error(`Property type collision on ${property.name}. Attempted treat the property as an object when it was already a ${actualProp.type}`);
111
- }
112
- if (property.default !== undefined) {
113
- if (actualProp.default === undefined) {
114
- actualProp.default = {};
115
- }
116
- let target = actualProp.default;
117
- for (let i = 1; i < attrPath.length - 1; i++) {
118
- target = target[attrPath[i]] = {};
119
- }
120
- target[attrPath[attrPath.length - 1]] = property.default;
121
- }
122
- }
123
- }
124
- function attachSNPsInPanel(properties, injectableProperties) {
125
- for (const property of properties) {
126
- if (Array.isArray(property)) {
127
- for (const prop of property) {
128
- attachSNP(prop, injectableProperties);
129
- }
130
- }
131
- else {
132
- attachSNP(property, injectableProperties);
133
- }
134
- }
135
- }
136
- function isBlockJsonNativePropsConfig(thing) {
137
- return typeof thing === 'object' && thing !== null && 'type' in thing && thing.type === "native";
138
- }
139
26
  addFilter('blocks.registerBlockType', 'plaudit/gutenberg-api-extensions/attach-simple-native-properties', (atts) => {
140
27
  if (isBlockJsonNativePropsConfig(atts.plaudit) && atts.plaudit.panel !== undefined && (Array.isArray(atts.plaudit.panel) ? atts.plaudit.panel.length : atts.plaudit.panel)) {
141
28
  registerSimpleNativeProperties({ block: atts.name, properties: atts.plaudit.panel });
@@ -167,93 +54,6 @@ export function installSimpleNativePropertiesSupport() {
167
54
  }
168
55
  return atts;
169
56
  });
170
- function renderPropertyComponent(dataStore, blockEditProps, prop) {
171
- if (Array.isArray(prop)) {
172
- return prop.map(p => renderPropertyComponent(dataStore, blockEditProps, p))
173
- .filter((ele) => ele !== undefined);
174
- }
175
- const prp = hydrateSimpleNativeProperty(prop);
176
- let existingValue = dataStore.getBackedUpAttribute(prp.name, dataStore.getValue(prp));
177
- let ele;
178
- if (prp.type === "array") { // If the value is not an array or is a sparse array, then it will cause unrecoverable errors upon conversion to PHP
179
- if (existingValue !== undefined && (!Array.isArray(existingValue) || existingValue.length > existingValue.filter(() => true).length)) {
180
- throw new Error(`Invalid value passed to an array-type property: ${existingValue}`);
181
- }
182
- ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value));
183
- }
184
- else if (prp.type === "object") {
185
- if (existingValue !== undefined && (Array.isArray(existingValue) || typeof existingValue !== 'object')) {
186
- throw new Error(`Invalid value passed to an object-type property: ${existingValue}`);
187
- }
188
- ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value));
189
- }
190
- else if (prp.type === "boolean") {
191
- if (typeof existingValue !== 'boolean' && existingValue !== undefined) {
192
- existingValue = !!existingValue;
193
- }
194
- ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value));
195
- }
196
- else if (prp.type === "string") {
197
- if (typeof existingValue !== 'string' && existingValue !== undefined) {
198
- existingValue = existingValue.toString();
199
- }
200
- ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value));
201
- }
202
- else {
203
- if (typeof existingValue !== 'number' && existingValue !== undefined) {
204
- existingValue = parseFloat(existingValue);
205
- }
206
- ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value));
207
- }
208
- if (testCondition(dataStore, blockEditProps, prp.condition)) {
209
- if (dataStore.removeBackedUpAttribute(prp.name)) {
210
- dataStore.setValue(prp.name, existingValue);
211
- }
212
- return [`plaudit-snp-${prp.name}`, ele];
213
- }
214
- if (!dataStore.hasBackedUpAttribute(prp.name) && existingValue !== prp.default) {
215
- dataStore.setBackedUpAttribute(prp.name, existingValue);
216
- dataStore.setValue(prp.name, prp.default);
217
- }
218
- return undefined;
219
- }
220
- function isElementAndKey(thing) {
221
- return typeof thing[0] === 'string';
222
- }
223
- function buildGridTemplateAreas(fieldAndRows) {
224
- const cellsPerRow = fieldAndRows.map(prop => Array.isArray(prop) ? prop.length : 1)
225
- .reduce((a, b) => b !== 0 && (b > a || a % b !== 0) ? a * b : a, 1);
226
- let grid = "";
227
- let field = 0;
228
- const wrappedItems = [];
229
- for (const fieldOrRow of fieldAndRows) {
230
- let gridRow = "";
231
- if (isElementAndKey(fieldOrRow)) {
232
- gridRow += ` F${field}`.repeat(cellsPerRow);
233
- wrappedItems.push(React.createElement("div", { key: fieldOrRow[0], style: { gridArea: `F${field}` } }, fieldOrRow[1]));
234
- field++;
235
- }
236
- else {
237
- if (fieldOrRow.length === 0) {
238
- continue;
239
- }
240
- gridRow += ` F${field}`.repeat(cellsPerRow);
241
- wrappedItems.push(React.createElement("div", { key: fieldOrRow.map(fr => fr[0]).join("-"), style: { gridArea: `F${field}`, display: "flex", flexWrap: "wrap", columnGap: "inherit" } }, ...fieldOrRow.map(fr => React.createElement("div", { key: fr[0], style: { flex: "1" } }, fr[1]))));
242
- field += fieldOrRow.length;
243
- }
244
- grid += ` "${gridRow.substring(1)}"`;
245
- }
246
- return [grid, wrappedItems];
247
- }
248
- function makeDivForLaidOutProperties(properties, dataStore, blockEditProps) {
249
- const fieldAndRows = properties.map(prop => renderPropertyComponent(dataStore, blockEditProps, prop))
250
- .filter((ele) => ele !== undefined);
251
- const [gridTemplateAreas, items] = buildGridTemplateAreas(fieldAndRows);
252
- return {
253
- div: React.createElement("div", { style: { display: "grid", gridTemplateAreas: gridTemplateAreas.substring(1), columnGap: "8px" } }, ...items),
254
- items
255
- };
256
- }
257
57
  addFilter('editor.BlockEdit', 'plaudit/gutenberg-api-extensions/simple-native-properties', createHigherOrderComponent(BlockEdit => (blockEditProps) => {
258
58
  const blockSimpleNativePanelsAndTabs = simpleNativePanelsAndTabs[blockEditProps.name];
259
59
  if (!blockSimpleNativePanelsAndTabs) {
@@ -264,14 +64,14 @@ export function installSimpleNativePropertiesSupport() {
264
64
  const normalPanels = [];
265
65
  let keyIndex = 0;
266
66
  for (const panelOrTab of blockSimpleNativePanelsAndTabs) {
267
- const dataStore = dataStores[keyIndex]?.reattach(blockEditProps)
67
+ const dataStore = dataStores[keyIndex]?.reattach(blockEditProps, undefined)
268
68
  ?? (dataStores[keyIndex] = (panelOrTab.group === 'layered-styles'
269
69
  ? new LayeredStylesDataStore(blockEditProps, panelOrTab) : new AttributeDataStore(blockEditProps, panelOrTab)));
270
70
  const panelOrTabGroup = panelOrTab.group === 'layered-styles' ? 'styles' : panelOrTab.group;
271
71
  if ('properties' in panelOrTab) {
272
- const { div, items } = makeDivForLaidOutProperties(panelOrTab.properties, dataStore, blockEditProps);
72
+ const { div, items } = makeDivForLaidOutProperties(panelOrTab.properties, dataStore);
273
73
  normalPanels.push(React.createElement(React.Fragment, null,
274
- React.createElement(InspectorPanel, { opened: items.length === 0 ? false : undefined, ...panelOrTab, group: panelOrTabGroup, condition: () => items.length > 0 && testCondition(dataStore, blockEditProps, panelOrTab.condition), raw: ('raw' in panelOrTab && !!panelOrTab.raw) || !ROOT_LEVEL_PANELS.includes(panelOrTabGroup), key: `plaudit-simple-native-property-${keyIndex}` }, div)));
74
+ React.createElement(InspectorPanel, { opened: items.length === 0 ? false : undefined, ...panelOrTab, group: panelOrTabGroup, condition: () => items.length > 0 && dataStore.testCondition(panelOrTab.condition), raw: ('raw' in panelOrTab && !!panelOrTab.raw) || !ROOT_LEVEL_PANELS.includes(panelOrTabGroup), key: `plaudit-simple-native-property-${keyIndex}` }, div)));
275
75
  keyIndex++;
276
76
  }
277
77
  else {
@@ -281,14 +81,14 @@ export function installSimpleNativePropertiesSupport() {
281
81
  for (const panelOrProperty of panelOrTab.items) {
282
82
  if ('properties' in panelOrProperty) {
283
83
  if (unwrappedProperties.length) {
284
- const { div, items } = makeDivForLaidOutProperties(unwrappedProperties, dataStore, blockEditProps);
84
+ const { div, items } = makeDivForLaidOutProperties(unwrappedProperties, dataStore);
285
85
  if (items.length) {
286
86
  tabItems.push(React.createElement(PanelBody, { initialOpen: true, key: `plaudit-simple-native-property-${keyIndex}` }, div));
287
87
  }
288
88
  unwrappedProperties = [];
289
89
  }
290
- const { div, items } = makeDivForLaidOutProperties(unwrappedProperties, dataStore, blockEditProps);
291
- tabItems.push(React.createElement(PanelBody, { ...panelOrProperty, key: `plaudit-simple-native-property-${keyIndex + 1}` }, (items.length > 0 && testCondition(dataStore, blockEditProps, panelOrProperty.condition)) && div));
90
+ const { div, items } = makeDivForLaidOutProperties(unwrappedProperties, dataStore);
91
+ tabItems.push(React.createElement(PanelBody, { ...panelOrProperty, key: `plaudit-simple-native-property-${keyIndex + 1}` }, (items.length > 0 && dataStore.testCondition(panelOrProperty.condition)) && div));
292
92
  }
293
93
  else {
294
94
  unwrappedProperties.push(panelOrProperty);
@@ -296,7 +96,7 @@ export function installSimpleNativePropertiesSupport() {
296
96
  keyIndex += 2;
297
97
  }
298
98
  if (unwrappedProperties.length) {
299
- const { div, items } = makeDivForLaidOutProperties(unwrappedProperties, dataStore, blockEditProps);
99
+ const { div, items } = makeDivForLaidOutProperties(unwrappedProperties, dataStore);
300
100
  if (items.length) {
301
101
  tabItems.push(React.createElement(PanelBody, { initialOpen: true, key: `plaudit-simple-native-property-${keyIndex}` }, div));
302
102
  }
@@ -313,4 +113,135 @@ export function installSimpleNativePropertiesSupport() {
313
113
  }));
314
114
  }, 'plauditGutenbergApiExtensionsSimpleNativeProperties'));
315
115
  }
116
+ function attachSNP(property, injectableProperties) {
117
+ property = hydrateSimpleNativeProperty(property);
118
+ const attrPath = property.name.split('.');
119
+ if (attrPath.length === 1) {
120
+ injectableProperties[property.name] = { type: property.type, default: property.alwaysStore !== false ? undefined : property.default };
121
+ if ('enum' in property) {
122
+ injectableProperties[property.name].enum = property.enum;
123
+ }
124
+ }
125
+ else {
126
+ let actualProp = injectableProperties[attrPath[0]];
127
+ if (actualProp === undefined) {
128
+ injectableProperties[attrPath[0]] = actualProp = { type: "object" };
129
+ }
130
+ else if (actualProp.type !== "object") {
131
+ throw new Error(`Property type collision on ${property.name}. Attempted treat the property as an object when it was already a ${actualProp.type}`);
132
+ }
133
+ if (property.default !== undefined) {
134
+ if (actualProp.default === undefined) {
135
+ actualProp.default = {};
136
+ }
137
+ let target = actualProp.default;
138
+ for (let i = 1; i < attrPath.length - 1; i++) {
139
+ target = target[attrPath[i]] = {};
140
+ }
141
+ target[attrPath[attrPath.length - 1]] = property.default;
142
+ }
143
+ }
144
+ }
145
+ function attachSNPsInPanel(properties, injectableProperties) {
146
+ for (const property of properties) {
147
+ if (Array.isArray(property)) {
148
+ for (const prop of property) {
149
+ attachSNP(prop, injectableProperties);
150
+ }
151
+ }
152
+ else {
153
+ attachSNP(property, injectableProperties);
154
+ }
155
+ }
156
+ }
157
+ function isBlockJsonNativePropsConfig(thing) {
158
+ return typeof thing === 'object' && thing !== null && 'type' in thing && thing.type === "native";
159
+ }
160
+ function renderPropertyComponent(dataStore, prop) {
161
+ if (Array.isArray(prop)) {
162
+ return prop.map(p => renderPropertyComponent(dataStore, p))
163
+ .filter((ele) => ele !== undefined);
164
+ }
165
+ const prp = hydrateSimpleNativeProperty(prop);
166
+ let existingValue = dataStore.getBackedUpAttribute(prp.name, dataStore.getValue(prp));
167
+ let ele;
168
+ if (prp.type === "array") { // If the value is not an array or is a sparse array, then it will cause unrecoverable errors upon conversion to PHP
169
+ if (existingValue !== undefined && (!Array.isArray(existingValue) || existingValue.length > existingValue.filter(() => true).length)) {
170
+ throw new Error(`Invalid value passed to an array-type property: ${existingValue}`);
171
+ }
172
+ ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value), dataStore);
173
+ }
174
+ else if (prp.type === "object") {
175
+ if (existingValue !== undefined && (Array.isArray(existingValue) || typeof existingValue !== 'object')) {
176
+ throw new Error(`Invalid value passed to an object-type property: ${existingValue}`);
177
+ }
178
+ ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value), dataStore);
179
+ }
180
+ else if (prp.type === "boolean") {
181
+ if (typeof existingValue !== 'boolean' && existingValue !== undefined) {
182
+ existingValue = !!existingValue;
183
+ }
184
+ ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value), dataStore);
185
+ }
186
+ else if (prp.type === "string") {
187
+ if (typeof existingValue !== 'string' && existingValue !== undefined) {
188
+ existingValue = existingValue.toString();
189
+ }
190
+ ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value), dataStore);
191
+ }
192
+ else {
193
+ if (typeof existingValue !== 'number' && existingValue !== undefined) {
194
+ existingValue = parseFloat(existingValue);
195
+ }
196
+ ele = prp.control(existingValue, value => dataStore.setValue(prp.name, value), dataStore);
197
+ }
198
+ if (dataStore.testCondition(prp.condition)) {
199
+ if (dataStore.removeBackedUpAttribute(prp.name)) {
200
+ dataStore.setValue(prp.name, existingValue);
201
+ }
202
+ return [`plaudit-snp-${prp.name}`, ele];
203
+ }
204
+ if (!dataStore.hasBackedUpAttribute(prp.name) && existingValue !== prp.default) {
205
+ dataStore.setBackedUpAttribute(prp.name, existingValue);
206
+ dataStore.setValue(prp.name, prp.default);
207
+ }
208
+ return undefined;
209
+ }
210
+ function isElementAndKey(thing) {
211
+ return typeof thing[0] === 'string';
212
+ }
213
+ function buildGridTemplateAreas(fieldAndRows) {
214
+ const cellsPerRow = fieldAndRows.map(prop => Array.isArray(prop) ? prop.length : 1)
215
+ .reduce((a, b) => b !== 0 && (b > a || a % b !== 0) ? a * b : a, 1);
216
+ let grid = "";
217
+ let field = 0;
218
+ const wrappedItems = [];
219
+ for (const fieldOrRow of fieldAndRows) {
220
+ let gridRow = "";
221
+ if (isElementAndKey(fieldOrRow)) {
222
+ gridRow += ` F${field}`.repeat(cellsPerRow);
223
+ wrappedItems.push(React.createElement("div", { key: fieldOrRow[0], style: { gridArea: `F${field}` } }, fieldOrRow[1]));
224
+ field++;
225
+ }
226
+ else {
227
+ if (fieldOrRow.length === 0) {
228
+ continue;
229
+ }
230
+ gridRow += ` F${field}`.repeat(cellsPerRow);
231
+ wrappedItems.push(React.createElement("div", { key: fieldOrRow.map(fr => fr[0]).join("-"), style: { gridArea: `F${field}`, display: "flex", flexWrap: "wrap", columnGap: "inherit" } }, ...fieldOrRow.map(fr => React.createElement("div", { key: fr[0], style: { flex: "1" } }, fr[1]))));
232
+ field += fieldOrRow.length;
233
+ }
234
+ grid += ` "${gridRow.substring(1)}"`;
235
+ }
236
+ return [grid, wrappedItems];
237
+ }
238
+ export function makeDivForLaidOutProperties(properties, dataStore) {
239
+ const fieldAndRows = properties.map(prop => renderPropertyComponent(dataStore, prop))
240
+ .filter((ele) => ele !== undefined);
241
+ const [gridTemplateAreas, items] = buildGridTemplateAreas(fieldAndRows);
242
+ return {
243
+ div: React.createElement("div", { className: "plaudit-snp-laid-out-properties-wrapper", style: { display: "grid", gridTemplateAreas: gridTemplateAreas.substring(1), columnGap: "8px" } }, ...items),
244
+ items
245
+ };
246
+ }
316
247
  //# sourceMappingURL=simple-native-property-impl.js.map
@@ -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,17 +1,16 @@
1
+ import { BaseDataStore } from "./base-data-store";
1
2
  import type { ActualBlockEditProps } from "./common-native-property-constructors";
2
3
  import type { DataStore, LaidOutProperties, SimpleNativePanel, SimpleNativeProperty, SimpleNativeTab } from "./simple-native-property-api";
3
- export declare abstract class SNPDataStore implements DataStore {
4
- protected blockEditProps: ActualBlockEditProps;
5
- private readonly backedUpAttributes;
4
+ export declare abstract class SNPDataStore extends BaseDataStore<ActualBlockEditProps> {
5
+ protected explicitBlockEditProps: ActualBlockEditProps;
6
+ private explicitParent?;
6
7
  private attributeCache;
7
- constructor(blockEditProps: ActualBlockEditProps, panelOrTab: SimpleNativePanel | SimpleNativeTab);
8
- getBackedUpAttribute(name: string, def?: any): any;
9
- setBackedUpAttribute(name: string, value: any): void;
10
- removeBackedUpAttribute(name: string): boolean;
11
- hasBackedUpAttribute(name: string): boolean;
8
+ constructor(explicitBlockEditProps: ActualBlockEditProps, panelOrTab: SimpleNativePanel | SimpleNativeTab, explicitParent?: DataStore<unknown> | undefined);
9
+ get blockEditProps(): ActualBlockEditProps;
10
+ get parent(): DataStore<unknown> | undefined;
12
11
  getValue(prop: Pick<SimpleNativeProperty, 'name' | 'default'>): any;
13
12
  setValue(attr: string, value: any): void;
14
- reattach(blockEditProps: ActualBlockEditProps): this;
13
+ reattach(explicitBlockEditProps: ActualBlockEditProps, parent: DataStore | undefined): this;
15
14
  protected abstract getAttribute(name: string): any;
16
15
  protected abstract setAttribute(name: string, value: any): void;
17
16
  injectDefaultsFromProperties(properties: LaidOutProperties): void;
@@ -1,8 +1,10 @@
1
- export class SNPDataStore {
2
- constructor(blockEditProps, panelOrTab) {
3
- this.blockEditProps = blockEditProps;
4
- this.backedUpAttributes = new Map();
5
- this.attributeCache = {};
1
+ import { BaseDataStore } from "./base-data-store";
2
+ export class SNPDataStore extends BaseDataStore {
3
+ constructor(explicitBlockEditProps, panelOrTab, explicitParent) {
4
+ super();
5
+ this.explicitBlockEditProps = explicitBlockEditProps;
6
+ this.explicitParent = explicitParent;
7
+ this.attributeCache = Object.create(null);
6
8
  if ('properties' in panelOrTab) {
7
9
  this.injectDefaultsFromProperties(panelOrTab.properties);
8
10
  }
@@ -20,61 +22,27 @@ export class SNPDataStore {
20
22
  }
21
23
  }
22
24
  }
23
- getBackedUpAttribute(name, def) {
24
- return def !== undefined ? (this.hasBackedUpAttribute(name) ? this.backedUpAttributes.get(name) : def) : this.backedUpAttributes.get(name);
25
+ get blockEditProps() {
26
+ return this.explicitBlockEditProps;
25
27
  }
26
- setBackedUpAttribute(name, value) {
27
- this.backedUpAttributes.set(name, value);
28
- }
29
- removeBackedUpAttribute(name) {
30
- return this.backedUpAttributes.delete(name);
31
- }
32
- hasBackedUpAttribute(name) {
33
- return this.backedUpAttributes.has(name);
28
+ get parent() {
29
+ return this.explicitParent;
34
30
  }
35
31
  getValue(prop) {
36
- if (this.attributeCache.hasOwnProperty(prop.name)) {
32
+ if (prop.name in this.attributeCache) {
37
33
  return this.attributeCache[prop.name];
38
34
  }
39
- const propPath = prop.name.split('.');
40
- if (propPath.length === 1) {
41
- let existingValue = this.getAttribute(prop.name);
42
- return this.attributeCache[prop.name] = (existingValue === undefined && prop.default !== undefined ? prop.default : existingValue);
43
- }
44
- else {
45
- let graphExistingValue = this.getAttribute(propPath[0]);
46
- if (graphExistingValue === undefined) {
47
- return this.attributeCache[prop.name] = prop.default;
48
- }
49
- for (let i = 1; i < propPath.length; i++) {
50
- graphExistingValue = graphExistingValue[propPath[i]];
51
- if (graphExistingValue === undefined) {
52
- return this.attributeCache[prop.name] = prop.default;
53
- }
54
- }
55
- return this.attributeCache[prop.name] = graphExistingValue;
56
- }
35
+ const existingValue = this.getAttribute(prop.name);
36
+ return this.attributeCache[prop.name] = (existingValue === undefined && prop.default !== undefined ? prop.default : existingValue);
57
37
  }
58
38
  setValue(attr, value) {
59
- const attrPath = attr.split('.');
60
- if (attrPath.length === 1) {
61
- this.attributeCache[attr] = value;
62
- return this.setAttribute(attr, value);
63
- }
64
- const payload = { ...this.getAttribute(attrPath[0]) };
65
- let currentLayer = payload;
66
- for (let i = 1; i < attrPath.length - 1; i++) {
67
- const attrPathNode = attrPath[i];
68
- //TODO: This is almost certainly broken for depths greater than 2, but working out the reverse stack walk isn't worth it rn
69
- currentLayer = currentLayer[attrPathNode] = {};
70
- }
71
- currentLayer[attrPath[attrPath.length - 1]] = value;
72
- this.setAttribute(attrPath[0], payload);
73
39
  this.attributeCache[attr] = value;
40
+ return this.setAttribute(attr, value);
74
41
  }
75
- reattach(blockEditProps) {
76
- this.blockEditProps = blockEditProps;
77
- this.attributeCache = {};
42
+ reattach(explicitBlockEditProps, parent) {
43
+ this.explicitBlockEditProps = explicitBlockEditProps;
44
+ this.explicitParent = parent;
45
+ this.attributeCache = Object.create(null);
78
46
  return this;
79
47
  }
80
48
  injectDefaultsFromProperties(properties) {
@@ -1 +1 @@
1
- {"version":3,"file":"snp-data-store.js","sourceRoot":"","sources":["../../src/blocks/snp-data-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snp-data-store.js","sourceRoot":"","sources":["../../src/blocks/snp-data-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAIhD,MAAM,OAAgB,YAAa,SAAQ,aAAmC;IAG7E,YACW,sBAA4C,EACtD,UAA6C,EACrC,cAA0B;QAElC,KAAK,EAAE,CAAC;QAJE,2BAAsB,GAAtB,sBAAsB,CAAsB;QAE9C,mBAAc,GAAd,cAAc,CAAY;QAL3B,mBAAc,GAAwB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAQjE,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACP,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrC,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;oBAC1B,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACpD,CAAC;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChC,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACzC,CAAC;qBAAM,CAAC;oBACP,IAAI,CAAC,4BAA4B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3C,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACpC,CAAC;IACD,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,QAAQ,CAAC,IAAkD;QAC1D,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IACpI,CAAC;IACD,QAAQ,CAAC,IAAY,EAAE,KAAU;QAChC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAClC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,CAAC,sBAA4C,EAAE,MAA2B;QACjF,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACb,CAAC;IAKD,4BAA4B,CAAC,UAA6B;QACzD,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC7F,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpD,CAAC;QACF,CAAC;IACF,CAAC;CACD"}
@@ -9,7 +9,7 @@ export function ExtendedRadioControl(props) {
9
9
  const { label, className, selected, help, onChange, hideLabelFromVision, options = [], allowCustom, ...additionalProps } = props;
10
10
  const instanceId = useInstanceId(ExtendedRadioControl);
11
11
  const id = `inspector-radio-control-${instanceId}`;
12
- const [valueIsCustom, setValueIsCustom] = useState(options.find(option => option.value === selected) === undefined);
12
+ const [valueIsCustom, setValueIsCustom] = useState(() => options.find(option => option.value === selected) === undefined);
13
13
  const onChangeValue = (event) => {
14
14
  setValueIsCustom(options.find(option => option.value === event.target.value) === undefined);
15
15
  onChange(event.target.value);
@@ -1 +1 @@
1
- {"version":3,"file":"ExtendedRadioControl.js","sourceRoot":"","sources":["../../src/controls/ExtendedRadioControl.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtendedRadioControl.js","sourceRoot":"","sources":["../../src/controls/ExtendedRadioControl.tsx"],"names":[],"mappings":"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"}
@@ -3,10 +3,13 @@ import React, { type ReactNode } from "react";
3
3
  export type SortableItemsControlProps<D> = Omit<BaseControlProps, 'children' | 'id'> & {
4
4
  id?: string;
5
5
  value: D[] | undefined;
6
+ onAdd?: (index: number) => void;
6
7
  onChange: (value: D[]) => void;
7
- children: (datum: D, onDatumChange: (datum: D) => void) => ReactNode;
8
+ onRemove?: (index: number) => void;
9
+ onReorder?: (oldIndex: number, newIndex: number) => void;
10
+ children: (datum: D, onDatumChange: (datum: D) => void, index: number) => ReactNode;
8
11
  emptyValue: D;
9
12
  min?: number;
10
13
  max?: number;
11
14
  };
12
- export declare function SortableItemsControl<D>({ value: propValue, onChange, children: makeChild, emptyValue, min, max, ...wrapperProps }: SortableItemsControlProps<D>): React.JSX.Element;
15
+ export declare function SortableItemsControl<D>({ value, onChange, onRemove, onReorder, onAdd, children: makeChild, emptyValue, min, max, ...wrapperProps }: SortableItemsControlProps<D>): React.JSX.Element;