@prismicio/mock 0.0.6 → 0.0.9

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 (99) hide show
  1. package/README.md +4 -1
  2. package/dist/api/index.cjs +242 -122
  3. package/dist/api/index.cjs.map +1 -0
  4. package/dist/api/index.d.ts +3 -2
  5. package/dist/api/index.d.ts.map +1 -0
  6. package/dist/api/index.js +669 -0
  7. package/dist/api/index.js.map +1 -0
  8. package/dist/index.cjs +581 -571
  9. package/dist/index.cjs.map +1 -0
  10. package/dist/index.d.ts +155 -247
  11. package/dist/{index.mjs → index.js} +574 -561
  12. package/dist/index.js.map +1 -0
  13. package/dist/model/index.cjs +294 -257
  14. package/dist/model/index.cjs.map +1 -0
  15. package/dist/model/index.d.ts +72 -106
  16. package/dist/model/index.d.ts.map +1 -0
  17. package/dist/model/index.js +556 -0
  18. package/dist/model/index.js.map +1 -0
  19. package/dist/value/index.cjs +500 -647
  20. package/dist/value/index.cjs.map +1 -0
  21. package/dist/value/index.d.ts +71 -129
  22. package/dist/value/index.d.ts.map +1 -0
  23. package/dist/value/index.js +1461 -0
  24. package/dist/value/index.js.map +1 -0
  25. package/package.json +30 -27
  26. package/src/api/query.ts +2 -2
  27. package/src/api/ref.ts +3 -3
  28. package/src/api/repository.ts +5 -5
  29. package/src/lib/buildContentRelationshipField.ts +6 -1
  30. package/src/lib/buildEmbedField.ts +16 -27
  31. package/src/lib/buildImageFieldImage.ts +49 -0
  32. package/src/lib/createFaker.ts +98 -20
  33. package/src/lib/generateCustomTypeId.ts +1 -1
  34. package/src/lib/generateFieldId.ts +1 -3
  35. package/src/lib/generateTags.ts +4 -12
  36. package/src/lib/getMockEmbedData.ts +33 -12
  37. package/src/lib/getMockImageData.ts +1 -1
  38. package/src/lib/lorem.ts +112 -0
  39. package/src/model/boolean.ts +1 -1
  40. package/src/model/buildMockGroupFieldMap.ts +65 -0
  41. package/src/model/color.ts +2 -2
  42. package/src/model/contentRelationship.ts +16 -23
  43. package/src/model/customType.ts +49 -48
  44. package/src/model/date.ts +2 -2
  45. package/src/model/embed.ts +2 -2
  46. package/src/model/geoPoint.ts +1 -1
  47. package/src/model/group.ts +9 -16
  48. package/src/model/image.ts +16 -20
  49. package/src/model/index.ts +2 -0
  50. package/src/model/integrationFields.ts +5 -3
  51. package/src/model/keyText.ts +2 -2
  52. package/src/model/link.ts +3 -3
  53. package/src/model/linkToMedia.ts +2 -2
  54. package/src/model/number.ts +2 -2
  55. package/src/model/richText.ts +6 -6
  56. package/src/model/select.ts +13 -18
  57. package/src/model/sharedSlice.ts +15 -42
  58. package/src/model/sharedSliceVariation.ts +36 -24
  59. package/src/model/slice.ts +19 -23
  60. package/src/model/sliceZone.ts +23 -59
  61. package/src/model/timestamp.ts +2 -2
  62. package/src/model/title.ts +5 -5
  63. package/src/model/uid.ts +2 -2
  64. package/src/types.ts +130 -88
  65. package/src/value/boolean.ts +1 -1
  66. package/src/value/color.ts +16 -6
  67. package/src/value/contentRelationship.ts +54 -39
  68. package/src/value/customType.ts +5 -5
  69. package/src/value/date.ts +25 -9
  70. package/src/value/embed.ts +32 -7
  71. package/src/value/geoPoint.ts +21 -11
  72. package/src/value/group.ts +31 -45
  73. package/src/value/image.ts +22 -9
  74. package/src/value/integrationFields.ts +26 -14
  75. package/src/value/keyText.ts +16 -6
  76. package/src/value/link.ts +36 -37
  77. package/src/value/linkToMedia.ts +19 -23
  78. package/src/value/number.ts +16 -6
  79. package/src/value/richText/embed.ts +2 -2
  80. package/src/value/richText/heading.ts +10 -17
  81. package/src/value/richText/image.ts +8 -6
  82. package/src/value/richText/index.ts +4 -9
  83. package/src/value/richText/list.ts +4 -8
  84. package/src/value/richText/oList.ts +4 -8
  85. package/src/value/richText/paragraph.ts +8 -4
  86. package/src/value/richText/preformatted.ts +9 -5
  87. package/src/value/select.ts +23 -8
  88. package/src/value/sharedSlice.ts +3 -3
  89. package/src/value/sharedSliceVariation.ts +4 -36
  90. package/src/value/slice.ts +3 -32
  91. package/src/value/sliceZone.ts +54 -69
  92. package/src/value/timestamp.ts +42 -16
  93. package/src/value/title.ts +26 -13
  94. package/src/value/uid.ts +2 -2
  95. package/dist/api/index.mjs +0 -515
  96. package/dist/model/index.mjs +0 -465
  97. package/dist/value/index.mjs +0 -1554
  98. package/src/lib/buildImageField.ts +0 -34
  99. package/src/lib/buildMockGroupFieldMap.ts +0 -84
@@ -1,34 +0,0 @@
1
- import * as prismicT from "@prismicio/types";
2
-
3
- import { createFaker } from "../lib/createFaker";
4
-
5
- import { MockImageData, MockValueConfig } from "../types";
6
-
7
- type BuildImageFieldConfig = {
8
- imageData: MockImageData;
9
- constraint?: prismicT.CustomTypeModelImageField["config"]["constraint"];
10
- } & Pick<MockValueConfig, "seed">;
11
-
12
- export const buildImageField = (
13
- config: BuildImageFieldConfig,
14
- ): prismicT.ImageField => {
15
- const faker = createFaker(config.seed);
16
-
17
- const url = new URL(config.imageData.url);
18
-
19
- const dimensions = {
20
- width: config.constraint?.width ?? config.imageData.width,
21
- height: config.constraint?.height ?? config.imageData.height,
22
- };
23
-
24
- url.searchParams.set("w", dimensions.width.toString());
25
- url.searchParams.set("h", dimensions.height.toString());
26
- url.searchParams.set("fit", "crop");
27
-
28
- return {
29
- url: url.toString(),
30
- dimensions,
31
- alt: faker.lorem.sentence(),
32
- copyright: faker.lorem.sentence(),
33
- };
34
- };
@@ -1,84 +0,0 @@
1
- import * as prismicT from "@prismicio/types";
2
-
3
- import { MockModelConfig } from "../types";
4
-
5
- import { boolean } from "../model/boolean";
6
- import { color } from "../model/color";
7
- import { contentRelationship } from "../model/contentRelationship";
8
- import { date } from "../model/date";
9
- import { embed } from "../model/embed";
10
- import { geoPoint } from "../model/geoPoint";
11
- import { image } from "../model/image";
12
- import { integrationFields } from "../model/integrationFields";
13
- import { keyText } from "../model/keyText";
14
- import { link } from "../model/link";
15
- import { linkToMedia } from "../model/linkToMedia";
16
- import { number } from "../model/number";
17
- import { richText } from "../model/richText";
18
- import { select } from "../model/select";
19
- import { timestamp } from "../model/timestamp";
20
- import { title } from "../model/title";
21
-
22
- import { createFaker } from "./createFaker";
23
- import { generateFieldId } from "./generateFieldId";
24
-
25
- const mockModelFns = {
26
- boolean,
27
- color,
28
- contentRelationship,
29
- date,
30
- embed,
31
- geoPoint,
32
- image,
33
- integrationFields,
34
- keyText,
35
- link,
36
- linkToMedia,
37
- number,
38
- richText,
39
- select,
40
- timestamp,
41
- title,
42
- } as const;
43
-
44
- type MockModelFns = typeof mockModelFns;
45
- type MockModelTypes = keyof MockModelFns;
46
-
47
- export type BuildMockGroupFieldMapConfig = {
48
- configs?: {
49
- [P in keyof MockModelFns]?: {
50
- count?: number;
51
- config?: Parameters<MockModelFns[P]>[0];
52
- };
53
- };
54
- } & MockModelConfig;
55
-
56
- export const buildMockGroupFieldMap = (
57
- config: BuildMockGroupFieldMapConfig = {},
58
- ): Record<string, prismicT.CustomTypeModelFieldForGroup> => {
59
- const faker = createFaker(config.seed);
60
-
61
- const configs =
62
- config.configs ||
63
- ({} as NonNullable<BuildMockGroupFieldMapConfig["configs"]>);
64
-
65
- const fields: Record<string, prismicT.CustomTypeModelFieldForGroup> = {};
66
-
67
- for (const mockModelType in mockModelFns) {
68
- const mockModelFn = mockModelFns[mockModelType as MockModelTypes];
69
- const mockModelMapConfig = configs[mockModelType as MockModelTypes] || {};
70
- const count =
71
- mockModelMapConfig.count ?? faker.random.arrayElement([0, 0, 0, 1]);
72
-
73
- for (let i = 0; i < count; i++) {
74
- const fieldId = generateFieldId({ seed: config.seed });
75
-
76
- fields[fieldId] = mockModelFn({
77
- seed: config.seed,
78
- ...mockModelMapConfig.config,
79
- });
80
- }
81
- }
82
-
83
- return fields;
84
- };