@puckeditor/plugin-heading-analyzer 0.22.0-canary.f4f83ac1 → 0.22.0-canary.f9494176

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -428,7 +428,7 @@ UserField extends BaseField = {}> = {
428
428
  metadata: ComponentMetadata;
429
429
  trigger: ResolveDataTrigger;
430
430
  parent: ComponentData | null;
431
- root: ComponentData | null;
431
+ root: RootData;
432
432
  }) => Promise<WithPartialProps<DataShape, FieldProps>> | WithPartialProps<DataShape, FieldProps>;
433
433
  resolvePermissions?: (data: DataShape, params: {
434
434
  changed: Partial<Record<keyof FieldProps, boolean> & {
package/dist/index.d.ts CHANGED
@@ -428,7 +428,7 @@ UserField extends BaseField = {}> = {
428
428
  metadata: ComponentMetadata;
429
429
  trigger: ResolveDataTrigger;
430
430
  parent: ComponentData | null;
431
- root: ComponentData | null;
431
+ root: RootData;
432
432
  }) => Promise<WithPartialProps<DataShape, FieldProps>> | WithPartialProps<DataShape, FieldProps>;
433
433
  resolvePermissions?: (data: DataShape, params: {
434
434
  changed: Partial<Record<keyof FieldProps, boolean> & {
package/dist/index.js CHANGED
@@ -550,20 +550,10 @@ var walkField = ({
550
550
  if (map && fieldType === "slot") {
551
551
  const content = value || [];
552
552
  const mappedContent = recurseSlots ? content.map((el) => {
553
- var _a2;
554
- const componentConfig = config.components[el.type];
555
- if (!componentConfig) {
553
+ if (!config.components[el.type]) {
556
554
  throw new Error(`Could not find component config for ${el.type}`);
557
555
  }
558
- const fields2 = (_a2 = componentConfig.fields) != null ? _a2 : {};
559
- return walkField({
560
- value: __spreadProps(__spreadValues({}, el), { props: defaultSlots(el.props, fields2) }),
561
- fields: fields2,
562
- mappers,
563
- id: el.props.id,
564
- config,
565
- recurseSlots
566
- });
556
+ return mapFields(el, mappers, config, recurseSlots);
567
557
  }) : content;
568
558
  if (containsPromise(mappedContent)) {
569
559
  return Promise.all(mappedContent);
@@ -877,53 +867,49 @@ var insert = (list, index, item) => {
877
867
  // ../core/lib/generate-id.ts
878
868
  init_react_import();
879
869
 
880
- // ../core/node_modules/uuid/dist/esm-node/index.js
870
+ // ../core/lib/uuid/index.ts
881
871
  init_react_import();
882
872
 
883
- // ../core/node_modules/uuid/dist/esm-node/rng.js
873
+ // ../core/lib/uuid/rng.ts
884
874
  init_react_import();
885
- var import_crypto = __toESM(require("crypto"));
886
- var rnds8Pool = new Uint8Array(256);
887
- var poolPtr = rnds8Pool.length;
875
+ var rnds8 = new Uint8Array(16);
888
876
  function rng() {
889
- if (poolPtr > rnds8Pool.length - 16) {
890
- import_crypto.default.randomFillSync(rnds8Pool);
891
- poolPtr = 0;
892
- }
893
- return rnds8Pool.slice(poolPtr, poolPtr += 16);
877
+ return crypto.getRandomValues(rnds8);
894
878
  }
895
879
 
896
- // ../core/node_modules/uuid/dist/esm-node/stringify.js
880
+ // ../core/lib/uuid/stringify.ts
897
881
  init_react_import();
898
882
  var byteToHex = [];
899
883
  for (let i = 0; i < 256; ++i) {
900
884
  byteToHex.push((i + 256).toString(16).slice(1));
901
885
  }
902
886
  function unsafeStringify(arr, offset = 0) {
903
- return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
887
+ return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
904
888
  }
905
889
 
906
- // ../core/node_modules/uuid/dist/esm-node/v4.js
907
- init_react_import();
908
-
909
- // ../core/node_modules/uuid/dist/esm-node/native.js
910
- init_react_import();
911
- var import_crypto2 = __toESM(require("crypto"));
912
- var native_default = {
913
- randomUUID: import_crypto2.default.randomUUID
914
- };
915
-
916
- // ../core/node_modules/uuid/dist/esm-node/v4.js
890
+ // ../core/lib/uuid/index.ts
917
891
  function v4(options, buf, offset) {
918
- if (native_default.randomUUID && !buf && !options) {
919
- return native_default.randomUUID();
892
+ if (!buf && !options && crypto.randomUUID) {
893
+ return crypto.randomUUID();
920
894
  }
895
+ return _v4(options, buf, offset);
896
+ }
897
+ function _v4(options, buf, offset) {
898
+ var _a, _b, _c;
921
899
  options = options || {};
922
- const rnds = options.random || (options.rng || rng)();
900
+ const rnds = (_c = (_b = options.random) != null ? _b : (_a = options.rng) == null ? void 0 : _a.call(options)) != null ? _c : rng();
901
+ if (rnds.length < 16) {
902
+ throw new Error("Random bytes length must be >= 16");
903
+ }
923
904
  rnds[6] = rnds[6] & 15 | 64;
924
905
  rnds[8] = rnds[8] & 63 | 128;
925
906
  if (buf) {
926
907
  offset = offset || 0;
908
+ if (offset < 0 || offset + 16 > buf.length) {
909
+ throw new RangeError(
910
+ `UUID byte range ${offset}:${offset + 15} is out of buffer bounds`
911
+ );
912
+ }
927
913
  for (let i = 0; i < 16; ++i) {
928
914
  buf[offset + i] = rnds[i];
929
915
  }
@@ -931,10 +917,10 @@ function v4(options, buf, offset) {
931
917
  }
932
918
  return unsafeStringify(rnds);
933
919
  }
934
- var v4_default = v4;
920
+ var uuid_default = v4;
935
921
 
936
922
  // ../core/lib/generate-id.ts
937
- var generateId = (type) => type ? `${type}-${v4_default()}` : v4_default();
923
+ var generateId = (type) => type ? `${type}-${uuid_default()}` : uuid_default();
938
924
 
939
925
  // ../core/lib/data/get-ids-for-parent.ts
940
926
  init_react_import();
@@ -2272,12 +2258,11 @@ var createFieldsSlice = (_set, _get) => {
2272
2258
  // ../core/lib/resolve-component-data.ts
2273
2259
  init_react_import();
2274
2260
  var cache = { lastChange: {} };
2275
- var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], function* (item, config, metadata = {}, onResolveStart, onResolveEnd, trigger = "replace", parent = null, root = null) {
2261
+ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], function* (item, config, metadata = {}, onResolveStart, onResolveEnd, trigger = "replace", parent = null, root = { props: {} }) {
2276
2262
  const configForItem = "type" in item && item.type !== "root" ? config.components[item.type] : config.root;
2277
2263
  const resolvedItem = __spreadValues({}, item);
2278
2264
  const shouldRunResolver = (configForItem == null ? void 0 : configForItem.resolveData) && item.props;
2279
2265
  const id = "id" in item.props ? item.props.id : "root";
2280
- const rootForItem = root != null ? root : "type" in item && item.type === "root" ? toComponent(item) : null;
2281
2266
  if (shouldRunResolver) {
2282
2267
  const {
2283
2268
  item: oldItem = null,
@@ -2301,7 +2286,7 @@ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], fun
2301
2286
  metadata: __spreadValues(__spreadValues({}, metadata), configForItem.metadata),
2302
2287
  trigger,
2303
2288
  parent,
2304
- root: rootForItem
2289
+ root
2305
2290
  });
2306
2291
  resolvedItem.props = __spreadValues(__spreadValues({}, item.props), resolvedProps);
2307
2292
  if (Object.keys(readOnly).length) {
@@ -2309,7 +2294,6 @@ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], fun
2309
2294
  }
2310
2295
  }
2311
2296
  const itemAsComponentData = toComponent(resolvedItem);
2312
- const rootForChildren = itemAsComponentData.type === "root" ? itemAsComponentData : rootForItem;
2313
2297
  let itemWithResolvedChildren = yield mapFields(
2314
2298
  resolvedItem,
2315
2299
  {
@@ -2326,7 +2310,7 @@ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], fun
2326
2310
  onResolveEnd,
2327
2311
  trigger,
2328
2312
  itemAsComponentData,
2329
- rootForChildren
2313
+ root
2330
2314
  )).node;
2331
2315
  })
2332
2316
  )
@@ -2526,7 +2510,6 @@ var createAppStore = (initialAppStore) => create()(
2526
2510
  const parentId = (_a2 = state.indexes.nodes[componentId]) == null ? void 0 : _a2.parentId;
2527
2511
  const parentNode = parentId ? state.indexes.nodes[parentId] : null;
2528
2512
  const parentData = (_b2 = parentNode == null ? void 0 : parentNode.data) != null ? _b2 : null;
2529
- const rootData = componentId === "root" ? toComponent(componentData) : toComponent(state.data.root);
2530
2513
  const timeouts = {};
2531
2514
  return yield resolveComponentData(
2532
2515
  componentData,
@@ -2547,7 +2530,7 @@ var createAppStore = (initialAppStore) => create()(
2547
2530
  }),
2548
2531
  trigger,
2549
2532
  parentData,
2550
- rootData
2533
+ state.data.root
2551
2534
  );
2552
2535
  }),
2553
2536
  resolveAndCommitData: () => __async(null, null, function* () {
package/dist/index.mjs CHANGED
@@ -538,20 +538,10 @@ var walkField = ({
538
538
  if (map && fieldType === "slot") {
539
539
  const content = value || [];
540
540
  const mappedContent = recurseSlots ? content.map((el) => {
541
- var _a2;
542
- const componentConfig = config.components[el.type];
543
- if (!componentConfig) {
541
+ if (!config.components[el.type]) {
544
542
  throw new Error(`Could not find component config for ${el.type}`);
545
543
  }
546
- const fields2 = (_a2 = componentConfig.fields) != null ? _a2 : {};
547
- return walkField({
548
- value: __spreadProps(__spreadValues({}, el), { props: defaultSlots(el.props, fields2) }),
549
- fields: fields2,
550
- mappers,
551
- id: el.props.id,
552
- config,
553
- recurseSlots
554
- });
544
+ return mapFields(el, mappers, config, recurseSlots);
555
545
  }) : content;
556
546
  if (containsPromise(mappedContent)) {
557
547
  return Promise.all(mappedContent);
@@ -865,53 +855,49 @@ var insert = (list, index, item) => {
865
855
  // ../core/lib/generate-id.ts
866
856
  init_react_import();
867
857
 
868
- // ../core/node_modules/uuid/dist/esm-node/index.js
858
+ // ../core/lib/uuid/index.ts
869
859
  init_react_import();
870
860
 
871
- // ../core/node_modules/uuid/dist/esm-node/rng.js
861
+ // ../core/lib/uuid/rng.ts
872
862
  init_react_import();
873
- import crypto from "crypto";
874
- var rnds8Pool = new Uint8Array(256);
875
- var poolPtr = rnds8Pool.length;
863
+ var rnds8 = new Uint8Array(16);
876
864
  function rng() {
877
- if (poolPtr > rnds8Pool.length - 16) {
878
- crypto.randomFillSync(rnds8Pool);
879
- poolPtr = 0;
880
- }
881
- return rnds8Pool.slice(poolPtr, poolPtr += 16);
865
+ return crypto.getRandomValues(rnds8);
882
866
  }
883
867
 
884
- // ../core/node_modules/uuid/dist/esm-node/stringify.js
868
+ // ../core/lib/uuid/stringify.ts
885
869
  init_react_import();
886
870
  var byteToHex = [];
887
871
  for (let i = 0; i < 256; ++i) {
888
872
  byteToHex.push((i + 256).toString(16).slice(1));
889
873
  }
890
874
  function unsafeStringify(arr, offset = 0) {
891
- return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
875
+ return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
892
876
  }
893
877
 
894
- // ../core/node_modules/uuid/dist/esm-node/v4.js
895
- init_react_import();
896
-
897
- // ../core/node_modules/uuid/dist/esm-node/native.js
898
- init_react_import();
899
- import crypto2 from "crypto";
900
- var native_default = {
901
- randomUUID: crypto2.randomUUID
902
- };
903
-
904
- // ../core/node_modules/uuid/dist/esm-node/v4.js
878
+ // ../core/lib/uuid/index.ts
905
879
  function v4(options, buf, offset) {
906
- if (native_default.randomUUID && !buf && !options) {
907
- return native_default.randomUUID();
880
+ if (!buf && !options && crypto.randomUUID) {
881
+ return crypto.randomUUID();
908
882
  }
883
+ return _v4(options, buf, offset);
884
+ }
885
+ function _v4(options, buf, offset) {
886
+ var _a, _b, _c;
909
887
  options = options || {};
910
- const rnds = options.random || (options.rng || rng)();
888
+ const rnds = (_c = (_b = options.random) != null ? _b : (_a = options.rng) == null ? void 0 : _a.call(options)) != null ? _c : rng();
889
+ if (rnds.length < 16) {
890
+ throw new Error("Random bytes length must be >= 16");
891
+ }
911
892
  rnds[6] = rnds[6] & 15 | 64;
912
893
  rnds[8] = rnds[8] & 63 | 128;
913
894
  if (buf) {
914
895
  offset = offset || 0;
896
+ if (offset < 0 || offset + 16 > buf.length) {
897
+ throw new RangeError(
898
+ `UUID byte range ${offset}:${offset + 15} is out of buffer bounds`
899
+ );
900
+ }
915
901
  for (let i = 0; i < 16; ++i) {
916
902
  buf[offset + i] = rnds[i];
917
903
  }
@@ -919,10 +905,10 @@ function v4(options, buf, offset) {
919
905
  }
920
906
  return unsafeStringify(rnds);
921
907
  }
922
- var v4_default = v4;
908
+ var uuid_default = v4;
923
909
 
924
910
  // ../core/lib/generate-id.ts
925
- var generateId = (type) => type ? `${type}-${v4_default()}` : v4_default();
911
+ var generateId = (type) => type ? `${type}-${uuid_default()}` : uuid_default();
926
912
 
927
913
  // ../core/lib/data/get-ids-for-parent.ts
928
914
  init_react_import();
@@ -2260,12 +2246,11 @@ var createFieldsSlice = (_set, _get) => {
2260
2246
  // ../core/lib/resolve-component-data.ts
2261
2247
  init_react_import();
2262
2248
  var cache = { lastChange: {} };
2263
- var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], function* (item, config, metadata = {}, onResolveStart, onResolveEnd, trigger = "replace", parent = null, root = null) {
2249
+ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], function* (item, config, metadata = {}, onResolveStart, onResolveEnd, trigger = "replace", parent = null, root = { props: {} }) {
2264
2250
  const configForItem = "type" in item && item.type !== "root" ? config.components[item.type] : config.root;
2265
2251
  const resolvedItem = __spreadValues({}, item);
2266
2252
  const shouldRunResolver = (configForItem == null ? void 0 : configForItem.resolveData) && item.props;
2267
2253
  const id = "id" in item.props ? item.props.id : "root";
2268
- const rootForItem = root != null ? root : "type" in item && item.type === "root" ? toComponent(item) : null;
2269
2254
  if (shouldRunResolver) {
2270
2255
  const {
2271
2256
  item: oldItem = null,
@@ -2289,7 +2274,7 @@ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], fun
2289
2274
  metadata: __spreadValues(__spreadValues({}, metadata), configForItem.metadata),
2290
2275
  trigger,
2291
2276
  parent,
2292
- root: rootForItem
2277
+ root
2293
2278
  });
2294
2279
  resolvedItem.props = __spreadValues(__spreadValues({}, item.props), resolvedProps);
2295
2280
  if (Object.keys(readOnly).length) {
@@ -2297,7 +2282,6 @@ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], fun
2297
2282
  }
2298
2283
  }
2299
2284
  const itemAsComponentData = toComponent(resolvedItem);
2300
- const rootForChildren = itemAsComponentData.type === "root" ? itemAsComponentData : rootForItem;
2301
2285
  let itemWithResolvedChildren = yield mapFields(
2302
2286
  resolvedItem,
2303
2287
  {
@@ -2314,7 +2298,7 @@ var resolveComponentData = (_0, _1, ..._2) => __async(null, [_0, _1, ..._2], fun
2314
2298
  onResolveEnd,
2315
2299
  trigger,
2316
2300
  itemAsComponentData,
2317
- rootForChildren
2301
+ root
2318
2302
  )).node;
2319
2303
  })
2320
2304
  )
@@ -2514,7 +2498,6 @@ var createAppStore = (initialAppStore) => create()(
2514
2498
  const parentId = (_a2 = state.indexes.nodes[componentId]) == null ? void 0 : _a2.parentId;
2515
2499
  const parentNode = parentId ? state.indexes.nodes[parentId] : null;
2516
2500
  const parentData = (_b2 = parentNode == null ? void 0 : parentNode.data) != null ? _b2 : null;
2517
- const rootData = componentId === "root" ? toComponent(componentData) : toComponent(state.data.root);
2518
2501
  const timeouts = {};
2519
2502
  return yield resolveComponentData(
2520
2503
  componentData,
@@ -2535,7 +2518,7 @@ var createAppStore = (initialAppStore) => create()(
2535
2518
  }),
2536
2519
  trigger,
2537
2520
  parentData,
2538
- rootData
2521
+ state.data.root
2539
2522
  );
2540
2523
  }),
2541
2524
  resolveAndCommitData: () => __async(null, null, function* () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@puckeditor/plugin-heading-analyzer",
3
- "version": "0.22.0-canary.f4f83ac1",
3
+ "version": "0.22.0-canary.f9494176",
4
4
  "author": "Chris Villa <chris@puckeditor.com>",
5
5
  "repository": "puckeditor/puck",
6
6
  "bugs": "https://github.com/puckeditor/puck/issues",
@@ -25,11 +25,11 @@
25
25
  "dist"
26
26
  ],
27
27
  "devDependencies": {
28
- "@puckeditor/core": "^0.22.0-canary.f4f83ac1",
28
+ "@puckeditor/core": "^0.22.0-canary.f9494176",
29
29
  "@types/minimatch": "3.0.5",
30
30
  "@types/react": "^19.0.1",
31
31
  "@types/react-dom": "^19.0.2",
32
- "eslint": "^7.32.0",
32
+ "eslint": "^9.0.0",
33
33
  "eslint-config-custom": "*",
34
34
  "tsconfig": "*",
35
35
  "tsup": "^8.2.4",