@prismicio/react 2.6.1 → 2.6.2

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 (55) hide show
  1. package/dist/PrismicImage.cjs +1 -1
  2. package/dist/PrismicImage.cjs.map +1 -1
  3. package/dist/PrismicImage.js +1 -1
  4. package/dist/PrismicImage.js.map +1 -1
  5. package/dist/PrismicText.cjs +1 -1
  6. package/dist/PrismicText.cjs.map +1 -1
  7. package/dist/PrismicText.js +1 -1
  8. package/dist/PrismicText.js.map +1 -1
  9. package/dist/PrismicToolbar.cjs +1 -1
  10. package/dist/PrismicToolbar.cjs.map +1 -1
  11. package/dist/PrismicToolbar.js +1 -1
  12. package/dist/PrismicToolbar.js.map +1 -1
  13. package/dist/SliceZone.cjs +1 -1
  14. package/dist/SliceZone.cjs.map +1 -1
  15. package/dist/SliceZone.js +1 -1
  16. package/dist/SliceZone.js.map +1 -1
  17. package/dist/_node_modules/@prismicio/client/dist/helpers/asImagePixelDensitySrcSet.cjs +2 -2
  18. package/dist/_node_modules/@prismicio/client/dist/helpers/asImagePixelDensitySrcSet.cjs.map +1 -1
  19. package/dist/_node_modules/@prismicio/client/dist/helpers/asImagePixelDensitySrcSet.js +2 -2
  20. package/dist/_node_modules/@prismicio/client/dist/helpers/asImagePixelDensitySrcSet.js.map +1 -1
  21. package/dist/_node_modules/@prismicio/client/dist/helpers/asImageWidthSrcSet.cjs +2 -2
  22. package/dist/_node_modules/@prismicio/client/dist/helpers/asImageWidthSrcSet.cjs.map +1 -1
  23. package/dist/_node_modules/@prismicio/client/dist/helpers/asImageWidthSrcSet.js +2 -2
  24. package/dist/_node_modules/@prismicio/client/dist/helpers/asImageWidthSrcSet.js.map +1 -1
  25. package/dist/_node_modules/@prismicio/client/dist/helpers/asLink.cjs +12 -3
  26. package/dist/_node_modules/@prismicio/client/dist/helpers/asLink.cjs.map +1 -1
  27. package/dist/_node_modules/@prismicio/client/dist/helpers/asLink.js +12 -3
  28. package/dist/_node_modules/@prismicio/client/dist/helpers/asLink.js.map +1 -1
  29. package/dist/_node_modules/@prismicio/client/dist/helpers/asText.cjs +11 -2
  30. package/dist/_node_modules/@prismicio/client/dist/helpers/asText.cjs.map +1 -1
  31. package/dist/_node_modules/@prismicio/client/dist/helpers/asText.js +11 -2
  32. package/dist/_node_modules/@prismicio/client/dist/helpers/asText.js.map +1 -1
  33. package/dist/_node_modules/@prismicio/client/dist/helpers/isFilled.cjs.map +1 -1
  34. package/dist/_node_modules/@prismicio/client/dist/helpers/isFilled.js.map +1 -1
  35. package/dist/clientHooks.d.ts +18 -90
  36. package/dist/index.d.ts +0 -1
  37. package/dist/package.json.cjs +1 -1
  38. package/dist/package.json.js +1 -1
  39. package/dist/react-server/PrismicLink.cjs +1 -1
  40. package/dist/react-server/PrismicLink.cjs.map +1 -1
  41. package/dist/react-server/PrismicLink.js +1 -1
  42. package/dist/react-server/PrismicLink.js.map +1 -1
  43. package/dist/react-server/PrismicRichText.cjs +1 -1
  44. package/dist/react-server/PrismicRichText.cjs.map +1 -1
  45. package/dist/react-server/PrismicRichText.js +1 -1
  46. package/dist/react-server/PrismicRichText.js.map +1 -1
  47. package/package.json +19 -7
  48. package/src/PrismicImage.tsx +4 -1
  49. package/src/PrismicText.tsx +4 -1
  50. package/src/PrismicToolbar.tsx +1 -1
  51. package/src/SliceZone.tsx +4 -1
  52. package/src/index.ts +0 -2
  53. package/src/react-server/PrismicLink.tsx +4 -1
  54. package/src/react-server/PrismicRichText.tsx +4 -1
  55. package/src/lib/processPolyfill.ts +0 -4
@@ -1 +1 @@
1
- {"version":3,"file":"asText.cjs","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/asText.js"],"sourcesContent":["import { asText as asText$1 } from \"@prismicio/richtext\";\nconst asText = (richTextField, separator) => {\n if (richTextField) {\n return asText$1(richTextField, separator);\n } else {\n return null;\n }\n};\nexport {\n asText\n};\n//# sourceMappingURL=asText.js.map\n"],"names":["asText$1"],"mappings":";;;AACK,MAAC,SAAS,CAAC,eAAe,cAAc;AAC3C,MAAI,eAAe;AACjB,WAAOA,SAAQ,OAAC,eAAe,SAAS;AAAA,EAC5C,OAAS;AACL,WAAO;AAAA,EACR;AACH;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"asText.cjs","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/asText.js"],"sourcesContent":["import { asText as asText$1 } from \"@prismicio/richtext\";\nconst asText = (richTextField, ...configObjectOrTuple) => {\n if (richTextField) {\n const [configObjectOrSeparator] = configObjectOrTuple;\n let config;\n if (typeof configObjectOrSeparator === \"string\") {\n config = {\n separator: configObjectOrSeparator\n };\n } else {\n config = { ...configObjectOrSeparator };\n }\n return asText$1(richTextField, config.separator);\n } else {\n return null;\n }\n};\nexport {\n asText\n};\n//# sourceMappingURL=asText.js.map\n"],"names":["asText$1"],"mappings":";;;AACK,MAAC,SAAS,CAAC,kBAAkB,wBAAwB;AACxD,MAAI,eAAe;AACjB,UAAM,CAAC,uBAAuB,IAAI;AAClC,QAAI;AACJ,QAAI,OAAO,4BAA4B,UAAU;AAC/C,eAAS;AAAA,QACP,WAAW;AAAA,MACnB;AAAA,IACA,OAAW;AACL,eAAS,EAAE,GAAG;IACf;AACD,WAAOA,gBAAS,eAAe,OAAO,SAAS;AAAA,EACnD,OAAS;AACL,WAAO;AAAA,EACR;AACH;;","x_google_ignoreList":[0]}
@@ -1,7 +1,16 @@
1
1
  import { asText as asText$1 } from "@prismicio/richtext";
2
- const asText = (richTextField, separator) => {
2
+ const asText = (richTextField, ...configObjectOrTuple) => {
3
3
  if (richTextField) {
4
- return asText$1(richTextField, separator);
4
+ const [configObjectOrSeparator] = configObjectOrTuple;
5
+ let config;
6
+ if (typeof configObjectOrSeparator === "string") {
7
+ config = {
8
+ separator: configObjectOrSeparator
9
+ };
10
+ } else {
11
+ config = { ...configObjectOrSeparator };
12
+ }
13
+ return asText$1(richTextField, config.separator);
5
14
  } else {
6
15
  return null;
7
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"asText.js","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/asText.js"],"sourcesContent":["import { asText as asText$1 } from \"@prismicio/richtext\";\nconst asText = (richTextField, separator) => {\n if (richTextField) {\n return asText$1(richTextField, separator);\n } else {\n return null;\n }\n};\nexport {\n asText\n};\n//# sourceMappingURL=asText.js.map\n"],"names":[],"mappings":";AACK,MAAC,SAAS,CAAC,eAAe,cAAc;AAC3C,MAAI,eAAe;AACjB,WAAO,SAAS,eAAe,SAAS;AAAA,EAC5C,OAAS;AACL,WAAO;AAAA,EACR;AACH;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"asText.js","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/asText.js"],"sourcesContent":["import { asText as asText$1 } from \"@prismicio/richtext\";\nconst asText = (richTextField, ...configObjectOrTuple) => {\n if (richTextField) {\n const [configObjectOrSeparator] = configObjectOrTuple;\n let config;\n if (typeof configObjectOrSeparator === \"string\") {\n config = {\n separator: configObjectOrSeparator\n };\n } else {\n config = { ...configObjectOrSeparator };\n }\n return asText$1(richTextField, config.separator);\n } else {\n return null;\n }\n};\nexport {\n asText\n};\n//# sourceMappingURL=asText.js.map\n"],"names":[],"mappings":";AACK,MAAC,SAAS,CAAC,kBAAkB,wBAAwB;AACxD,MAAI,eAAe;AACjB,UAAM,CAAC,uBAAuB,IAAI;AAClC,QAAI;AACJ,QAAI,OAAO,4BAA4B,UAAU;AAC/C,eAAS;AAAA,QACP,WAAW;AAAA,MACnB;AAAA,IACA,OAAW;AACL,eAAS,EAAE,GAAG;IACf;AACD,WAAO,SAAS,eAAe,OAAO,SAAS;AAAA,EACnD,OAAS;AACL,WAAO;AAAA,EACR;AACH;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"isFilled.cjs","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/isFilled.js"],"sourcesContent":["const isNonNullish = (input) => {\n return input != null;\n};\nconst isNonEmptyArray = (input) => {\n return !!input.length;\n};\nconst richText = (field) => {\n if (!isNonNullish(field)) {\n return false;\n } else if (field.length === 1 && \"text\" in field[0]) {\n return !!field[0].text;\n } else {\n return !!field.length;\n }\n};\nconst title = richText;\nconst imageThumbnail = (thumbnail) => {\n return isNonNullish(thumbnail) && !!thumbnail.url;\n};\nconst image = imageThumbnail;\nconst link = (field) => {\n return isNonNullish(field) && (\"id\" in field || \"url\" in field);\n};\nconst linkToMedia = link;\nconst contentRelationship = link;\nconst date = isNonNullish;\nconst timestamp = isNonNullish;\nconst color = isNonNullish;\nconst number = isNonNullish;\nconst keyText = (field) => {\n return isNonNullish(keyText) && !!field;\n};\nconst select = isNonNullish;\nconst embed = (field) => {\n return isNonNullish(field) && !!field.embed_url;\n};\nconst geoPoint = (field) => {\n return isNonNullish(field) && \"longitude\" in field;\n};\nconst integrationFields = isNonNullish;\nconst group = (group2) => {\n return isNonNullish(group2) && isNonEmptyArray(group2);\n};\nconst sliceZone = (slices) => {\n return isNonNullish(slices) && isNonEmptyArray(slices);\n};\nexport {\n color,\n contentRelationship,\n date,\n embed,\n geoPoint,\n group,\n image,\n imageThumbnail,\n integrationFields,\n keyText,\n link,\n linkToMedia,\n number,\n richText,\n select,\n sliceZone,\n timestamp,\n title\n};\n//# sourceMappingURL=isFilled.js.map\n"],"names":[],"mappings":";;AAAA,MAAM,eAAe,CAAC,UAAU;AAC9B,SAAO,SAAS;AAClB;AAIK,MAAC,WAAW,CAAC,UAAU;AAC1B,MAAI,CAAC,aAAa,KAAK,GAAG;AACxB,WAAO;AAAA,EACX,WAAa,MAAM,WAAW,KAAK,UAAU,MAAM,CAAC,GAAG;AACnD,WAAO,CAAC,CAAC,MAAM,CAAC,EAAE;AAAA,EACtB,OAAS;AACL,WAAO,CAAC,CAAC,MAAM;AAAA,EAChB;AACH;AAEK,MAAC,iBAAiB,CAAC,cAAc;AACpC,SAAO,aAAa,SAAS,KAAK,CAAC,CAAC,UAAU;AAChD;AAEK,MAAC,OAAO,CAAC,UAAU;AACtB,SAAO,aAAa,KAAK,MAAM,QAAQ,SAAS,SAAS;AAC3D;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"isFilled.cjs","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/isFilled.js"],"sourcesContent":["const isNonNullish = (input) => {\n return input != null;\n};\nconst isNonEmptyArray = (input) => {\n return !!input.length;\n};\nconst richText = (field) => {\n if (!isNonNullish(field)) {\n return false;\n } else if (field.length === 1 && \"text\" in field[0]) {\n return !!field[0].text;\n } else {\n return !!field.length;\n }\n};\nconst title = richText;\nconst imageThumbnail = (thumbnail) => {\n return isNonNullish(thumbnail) && !!thumbnail.url;\n};\nconst image = imageThumbnail;\nconst link = (field) => {\n return isNonNullish(field) && (\"id\" in field || \"url\" in field);\n};\nconst linkToMedia = link;\nconst contentRelationship = link;\nconst date = isNonNullish;\nconst timestamp = isNonNullish;\nconst color = isNonNullish;\nconst number = isNonNullish;\nconst keyText = (field) => {\n return isNonNullish(keyText) && !!field;\n};\nconst select = isNonNullish;\nconst embed = (field) => {\n return isNonNullish(field) && !!field.embed_url;\n};\nconst geoPoint = (field) => {\n return isNonNullish(field) && \"longitude\" in field;\n};\nconst integrationField = isNonNullish;\nconst integrationFields = integrationField;\nconst group = (group2) => {\n return isNonNullish(group2) && isNonEmptyArray(group2);\n};\nconst sliceZone = (slices) => {\n return isNonNullish(slices) && isNonEmptyArray(slices);\n};\nexport {\n color,\n contentRelationship,\n date,\n embed,\n geoPoint,\n group,\n image,\n imageThumbnail,\n integrationField,\n integrationFields,\n keyText,\n link,\n linkToMedia,\n number,\n richText,\n select,\n sliceZone,\n timestamp,\n title\n};\n//# sourceMappingURL=isFilled.js.map\n"],"names":[],"mappings":";;AAAA,MAAM,eAAe,CAAC,UAAU;AAC9B,SAAO,SAAS;AAClB;AAIK,MAAC,WAAW,CAAC,UAAU;AAC1B,MAAI,CAAC,aAAa,KAAK,GAAG;AACxB,WAAO;AAAA,EACX,WAAa,MAAM,WAAW,KAAK,UAAU,MAAM,CAAC,GAAG;AACnD,WAAO,CAAC,CAAC,MAAM,CAAC,EAAE;AAAA,EACtB,OAAS;AACL,WAAO,CAAC,CAAC,MAAM;AAAA,EAChB;AACH;AAEK,MAAC,iBAAiB,CAAC,cAAc;AACpC,SAAO,aAAa,SAAS,KAAK,CAAC,CAAC,UAAU;AAChD;AAEK,MAAC,OAAO,CAAC,UAAU;AACtB,SAAO,aAAa,KAAK,MAAM,QAAQ,SAAS,SAAS;AAC3D;;;;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"isFilled.js","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/isFilled.js"],"sourcesContent":["const isNonNullish = (input) => {\n return input != null;\n};\nconst isNonEmptyArray = (input) => {\n return !!input.length;\n};\nconst richText = (field) => {\n if (!isNonNullish(field)) {\n return false;\n } else if (field.length === 1 && \"text\" in field[0]) {\n return !!field[0].text;\n } else {\n return !!field.length;\n }\n};\nconst title = richText;\nconst imageThumbnail = (thumbnail) => {\n return isNonNullish(thumbnail) && !!thumbnail.url;\n};\nconst image = imageThumbnail;\nconst link = (field) => {\n return isNonNullish(field) && (\"id\" in field || \"url\" in field);\n};\nconst linkToMedia = link;\nconst contentRelationship = link;\nconst date = isNonNullish;\nconst timestamp = isNonNullish;\nconst color = isNonNullish;\nconst number = isNonNullish;\nconst keyText = (field) => {\n return isNonNullish(keyText) && !!field;\n};\nconst select = isNonNullish;\nconst embed = (field) => {\n return isNonNullish(field) && !!field.embed_url;\n};\nconst geoPoint = (field) => {\n return isNonNullish(field) && \"longitude\" in field;\n};\nconst integrationFields = isNonNullish;\nconst group = (group2) => {\n return isNonNullish(group2) && isNonEmptyArray(group2);\n};\nconst sliceZone = (slices) => {\n return isNonNullish(slices) && isNonEmptyArray(slices);\n};\nexport {\n color,\n contentRelationship,\n date,\n embed,\n geoPoint,\n group,\n image,\n imageThumbnail,\n integrationFields,\n keyText,\n link,\n linkToMedia,\n number,\n richText,\n select,\n sliceZone,\n timestamp,\n title\n};\n//# sourceMappingURL=isFilled.js.map\n"],"names":[],"mappings":"AAAA,MAAM,eAAe,CAAC,UAAU;AAC9B,SAAO,SAAS;AAClB;AAIK,MAAC,WAAW,CAAC,UAAU;AAC1B,MAAI,CAAC,aAAa,KAAK,GAAG;AACxB,WAAO;AAAA,EACX,WAAa,MAAM,WAAW,KAAK,UAAU,MAAM,CAAC,GAAG;AACnD,WAAO,CAAC,CAAC,MAAM,CAAC,EAAE;AAAA,EACtB,OAAS;AACL,WAAO,CAAC,CAAC,MAAM;AAAA,EAChB;AACH;AAEK,MAAC,iBAAiB,CAAC,cAAc;AACpC,SAAO,aAAa,SAAS,KAAK,CAAC,CAAC,UAAU;AAChD;AAEK,MAAC,OAAO,CAAC,UAAU;AACtB,SAAO,aAAa,KAAK,MAAM,QAAQ,SAAS,SAAS;AAC3D;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"isFilled.js","sources":["../../../../../../node_modules/@prismicio/client/dist/helpers/isFilled.js"],"sourcesContent":["const isNonNullish = (input) => {\n return input != null;\n};\nconst isNonEmptyArray = (input) => {\n return !!input.length;\n};\nconst richText = (field) => {\n if (!isNonNullish(field)) {\n return false;\n } else if (field.length === 1 && \"text\" in field[0]) {\n return !!field[0].text;\n } else {\n return !!field.length;\n }\n};\nconst title = richText;\nconst imageThumbnail = (thumbnail) => {\n return isNonNullish(thumbnail) && !!thumbnail.url;\n};\nconst image = imageThumbnail;\nconst link = (field) => {\n return isNonNullish(field) && (\"id\" in field || \"url\" in field);\n};\nconst linkToMedia = link;\nconst contentRelationship = link;\nconst date = isNonNullish;\nconst timestamp = isNonNullish;\nconst color = isNonNullish;\nconst number = isNonNullish;\nconst keyText = (field) => {\n return isNonNullish(keyText) && !!field;\n};\nconst select = isNonNullish;\nconst embed = (field) => {\n return isNonNullish(field) && !!field.embed_url;\n};\nconst geoPoint = (field) => {\n return isNonNullish(field) && \"longitude\" in field;\n};\nconst integrationField = isNonNullish;\nconst integrationFields = integrationField;\nconst group = (group2) => {\n return isNonNullish(group2) && isNonEmptyArray(group2);\n};\nconst sliceZone = (slices) => {\n return isNonNullish(slices) && isNonEmptyArray(slices);\n};\nexport {\n color,\n contentRelationship,\n date,\n embed,\n geoPoint,\n group,\n image,\n imageThumbnail,\n integrationField,\n integrationFields,\n keyText,\n link,\n linkToMedia,\n number,\n richText,\n select,\n sliceZone,\n timestamp,\n title\n};\n//# sourceMappingURL=isFilled.js.map\n"],"names":[],"mappings":"AAAA,MAAM,eAAe,CAAC,UAAU;AAC9B,SAAO,SAAS;AAClB;AAIK,MAAC,WAAW,CAAC,UAAU;AAC1B,MAAI,CAAC,aAAa,KAAK,GAAG;AACxB,WAAO;AAAA,EACX,WAAa,MAAM,WAAW,KAAK,UAAU,MAAM,CAAC,GAAG;AACnD,WAAO,CAAC,CAAC,MAAM,CAAC,EAAE;AAAA,EACtB,OAAS;AACL,WAAO,CAAC,CAAC,MAAM;AAAA,EAChB;AACH;AAEK,MAAC,iBAAiB,CAAC,cAAc;AACpC,SAAO,aAAa,SAAS,KAAK,CAAC,CAAC,UAAU;AAChD;AAEK,MAAC,OAAO,CAAC,UAAU;AACtB,SAAO,aAAa,KAAK,MAAM,QAAQ,SAAS,SAAS;AAC3D;","x_google_ignoreList":[0]}
@@ -15,12 +15,8 @@ import { ClientHookReturnType, HookOnlyParameters } from "./useStatefulPrismicCl
15
15
  * @see Underlying `@prismicio/client` method {@link proto.get}
16
16
  */
17
17
  export declare const usePrismicDocuments: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
18
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
18
19
  signal?: any;
19
- } & {
20
- optimize?: {
21
- repositoryRequests?: boolean | undefined;
22
- concurrentRequests?: boolean | undefined;
23
- } | undefined;
24
20
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
25
21
  /**
26
22
  * A hook that queries content from the Prismic repository and returns only the
@@ -38,12 +34,8 @@ export declare const usePrismicDocuments: <TDocument extends prismicT.PrismicDoc
38
34
  * @see Underlying `@prismicio/client` method {@link proto.getFirst}
39
35
  */
40
36
  export declare const useFirstPrismicDocument: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
37
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
41
38
  signal?: any;
42
- } & {
43
- optimize?: {
44
- repositoryRequests?: boolean | undefined;
45
- concurrentRequests?: boolean | undefined;
46
- } | undefined;
47
39
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
48
40
  /**
49
41
  * A hook that queries content from the Prismic repository and returns all
@@ -64,12 +56,8 @@ export declare const useFirstPrismicDocument: <TDocument extends prismicT.Prismi
64
56
  export declare const useAllPrismicDocumentsDangerously: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(params?: (Partial<Omit<import("@prismicio/client").BuildQueryURLArgs, "page">> & {
65
57
  limit?: number | undefined;
66
58
  } & {
59
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
67
60
  signal?: any;
68
- } & {
69
- optimize?: {
70
- repositoryRequests?: boolean | undefined;
71
- concurrentRequests?: boolean | undefined;
72
- } | undefined;
73
61
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
74
62
  /**
75
63
  * A hook that queries a document from the Prismic repository with a specific
@@ -88,12 +76,8 @@ export declare const useAllPrismicDocumentsDangerously: <TDocument extends prism
88
76
  * @see Underlying `@prismicio/client` method {@link proto.getByID}
89
77
  */
90
78
  export declare const usePrismicDocumentByID: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(id: string, params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
79
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
91
80
  signal?: any;
92
- } & {
93
- optimize?: {
94
- repositoryRequests?: boolean | undefined;
95
- concurrentRequests?: boolean | undefined;
96
- } | undefined;
97
81
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
98
82
  /**
99
83
  * A hook that queries documents from the Prismic repository with specific IDs.
@@ -111,12 +95,8 @@ export declare const usePrismicDocumentByID: <TDocument extends prismicT.Prismic
111
95
  * @see Underlying `@prismicio/client` method {@link proto.getByIDs}
112
96
  */
113
97
  export declare const usePrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(id: string[], params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
98
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
114
99
  signal?: any;
115
- } & {
116
- optimize?: {
117
- repositoryRequests?: boolean | undefined;
118
- concurrentRequests?: boolean | undefined;
119
- } | undefined;
120
100
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
121
101
  /**
122
102
  * A hook that queries all documents from the Prismic repository with specific
@@ -137,12 +117,8 @@ export declare const usePrismicDocumentsByIDs: <TDocument extends prismicT.Prism
137
117
  export declare const useAllPrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(id: string[], params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
138
118
  limit?: number | undefined;
139
119
  } & {
120
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
140
121
  signal?: any;
141
- } & {
142
- optimize?: {
143
- repositoryRequests?: boolean | undefined;
144
- concurrentRequests?: boolean | undefined;
145
- } | undefined;
146
122
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
147
123
  /**
148
124
  * A hook that queries a document from the Prismic repository with a specific
@@ -162,12 +138,8 @@ export declare const useAllPrismicDocumentsByIDs: <TDocument extends prismicT.Pr
162
138
  * @see Underlying `@prismicio/client` method {@link proto.getByUID}
163
139
  */
164
140
  export declare const usePrismicDocumentByUID: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(documentType: any, uid: string, params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
141
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
165
142
  signal?: any;
166
- } & {
167
- optimize?: {
168
- repositoryRequests?: boolean | undefined;
169
- concurrentRequests?: boolean | undefined;
170
- } | undefined;
171
143
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
172
144
  /**
173
145
  * A hook that queries documents from the Prismic repository with specific UIDs
@@ -187,12 +159,8 @@ export declare const usePrismicDocumentByUID: <TDocument extends prismicT.Prismi
187
159
  * @see Underlying `@prismicio/client` method {@link proto.getByUID}
188
160
  */
189
161
  export declare const usePrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(documentType: any, uids: string[], params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
162
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
190
163
  signal?: any;
191
- } & {
192
- optimize?: {
193
- repositoryRequests?: boolean | undefined;
194
- concurrentRequests?: boolean | undefined;
195
- } | undefined;
196
164
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
197
165
  /**
198
166
  * A hook that queries all documents from the Prismic repository with specific
@@ -212,12 +180,8 @@ export declare const usePrismicDocumentsByUIDs: <TDocument extends prismicT.Pris
212
180
  * @see Underlying `@prismicio/client` method {@link proto.getByUID}
213
181
  */
214
182
  export declare const useAllPrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(documentType: any, uids: string[], params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
183
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
215
184
  signal?: any;
216
- } & {
217
- optimize?: {
218
- repositoryRequests?: boolean | undefined;
219
- concurrentRequests?: boolean | undefined;
220
- } | undefined;
221
185
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
222
186
  /**
223
187
  * A hook that queries a singleton document from the Prismic repository for a
@@ -236,12 +200,8 @@ export declare const useAllPrismicDocumentsByUIDs: <TDocument extends prismicT.P
236
200
  * @see Underlying `@prismicio/client` method {@link proto.getSingle}
237
201
  */
238
202
  export declare const useSinglePrismicDocument: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(documentType: any, params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
203
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
239
204
  signal?: any;
240
- } & {
241
- optimize?: {
242
- repositoryRequests?: boolean | undefined;
243
- concurrentRequests?: boolean | undefined;
244
- } | undefined;
245
205
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
246
206
  /**
247
207
  * A hook that queries documents from the Prismic repository for a specific
@@ -260,12 +220,8 @@ export declare const useSinglePrismicDocument: <TDocument extends prismicT.Prism
260
220
  * @see Underlying `@prismicio/client` method {@link proto.getByType}
261
221
  */
262
222
  export declare const usePrismicDocumentsByType: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(documentType: any, params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
223
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
263
224
  signal?: any;
264
- } & {
265
- optimize?: {
266
- repositoryRequests?: boolean | undefined;
267
- concurrentRequests?: boolean | undefined;
268
- } | undefined;
269
225
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
270
226
  /**
271
227
  * A hook that queries all documents from the Prismic repository for a specific
@@ -286,12 +242,8 @@ export declare const usePrismicDocumentsByType: <TDocument extends prismicT.Pris
286
242
  export declare const useAllPrismicDocumentsByType: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(documentType: any, params?: (Partial<Omit<import("@prismicio/client").BuildQueryURLArgs, "page">> & {
287
243
  limit?: number | undefined;
288
244
  } & {
245
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
289
246
  signal?: any;
290
- } & {
291
- optimize?: {
292
- repositoryRequests?: boolean | undefined;
293
- concurrentRequests?: boolean | undefined;
294
- } | undefined;
295
247
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
296
248
  /**
297
249
  * A hook that queries documents from the Prismic repository with a specific
@@ -310,12 +262,8 @@ export declare const useAllPrismicDocumentsByType: <TDocument extends prismicT.P
310
262
  * @see Underlying `@prismicio/client` method {@link proto.getByTag}
311
263
  */
312
264
  export declare const usePrismicDocumentsByTag: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(tag: string, params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
265
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
313
266
  signal?: any;
314
- } & {
315
- optimize?: {
316
- repositoryRequests?: boolean | undefined;
317
- concurrentRequests?: boolean | undefined;
318
- } | undefined;
319
267
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
320
268
  /**
321
269
  * A hook that queries all documents from the Prismic repository with a specific
@@ -336,12 +284,8 @@ export declare const usePrismicDocumentsByTag: <TDocument extends prismicT.Prism
336
284
  export declare const useAllPrismicDocumentsByTag: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(tag: string, params?: (Partial<Omit<import("@prismicio/client").BuildQueryURLArgs, "page">> & {
337
285
  limit?: number | undefined;
338
286
  } & {
287
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
339
288
  signal?: any;
340
- } & {
341
- optimize?: {
342
- repositoryRequests?: boolean | undefined;
343
- concurrentRequests?: boolean | undefined;
344
- } | undefined;
345
289
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
346
290
  /**
347
291
  * A hook that queries documents from the Prismic repository with specific tags.
@@ -361,12 +305,8 @@ export declare const useAllPrismicDocumentsByTag: <TDocument extends prismicT.Pr
361
305
  * @see Underlying `@prismicio/client` method {@link proto.getByTags}
362
306
  */
363
307
  export declare const usePrismicDocumentsBySomeTags: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(tag: string[], params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
308
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
364
309
  signal?: any;
365
- } & {
366
- optimize?: {
367
- repositoryRequests?: boolean | undefined;
368
- concurrentRequests?: boolean | undefined;
369
- } | undefined;
370
310
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
371
311
  /**
372
312
  * A hook that queries all documents from the Prismic repository with specific
@@ -388,12 +328,8 @@ export declare const usePrismicDocumentsBySomeTags: <TDocument extends prismicT.
388
328
  export declare const useAllPrismicDocumentsBySomeTags: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(tag: string[], params?: (Partial<Omit<import("@prismicio/client").BuildQueryURLArgs, "page">> & {
389
329
  limit?: number | undefined;
390
330
  } & {
331
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
391
332
  signal?: any;
392
- } & {
393
- optimize?: {
394
- repositoryRequests?: boolean | undefined;
395
- concurrentRequests?: boolean | undefined;
396
- } | undefined;
397
333
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
398
334
  /**
399
335
  * A hook that queries documents from the Prismic repository with specific tags.
@@ -412,12 +348,8 @@ export declare const useAllPrismicDocumentsBySomeTags: <TDocument extends prismi
412
348
  * @see Underlying `@prismicio/client` method {@link proto.getByTags}
413
349
  */
414
350
  export declare const usePrismicDocumentsByEveryTag: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(tag: string[], params?: (Partial<import("@prismicio/client").BuildQueryURLArgs> & {
351
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
415
352
  signal?: any;
416
- } & {
417
- optimize?: {
418
- repositoryRequests?: boolean | undefined;
419
- concurrentRequests?: boolean | undefined;
420
- } | undefined;
421
353
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
422
354
  /**
423
355
  * A hook that queries all documents from the Prismic repository with specific
@@ -438,10 +370,6 @@ export declare const usePrismicDocumentsByEveryTag: <TDocument extends prismicT.
438
370
  export declare const useAllPrismicDocumentsByEveryTag: <TDocument extends prismicT.PrismicDocument<Record<string, any>, string, string>>(tag: string[], params?: (Partial<Omit<import("@prismicio/client").BuildQueryURLArgs, "page">> & {
439
371
  limit?: number | undefined;
440
372
  } & {
373
+ fetchOptions?: import("@prismicio/client").RequestInitLike | undefined;
441
374
  signal?: any;
442
- } & {
443
- optimize?: {
444
- repositoryRequests?: boolean | undefined;
445
- concurrentRequests?: boolean | undefined;
446
- } | undefined;
447
375
  } & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import "./lib/processPolyfill";
2
1
  export { PrismicProvider } from "./PrismicProvider";
3
2
  export type { PrismicProviderProps, PrismicContextValue, } from "./PrismicProvider";
4
3
  export { usePrismicContext } from "./usePrismicContext";
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const version = "2.6.1";
3
+ const version = "2.6.2";
4
4
  exports.version = version;
5
5
  //# sourceMappingURL=package.json.cjs.map
@@ -1,4 +1,4 @@
1
- const version = "2.6.1";
1
+ const version = "2.6.2";
2
2
  export {
3
3
  version
4
4
  };
@@ -25,7 +25,7 @@ function _interopNamespaceDefault(e) {
25
25
  const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
26
26
  const defaultComponent = "a";
27
27
  const PrismicLink = React__namespace.forwardRef(function PrismicLink2({ field, document: doc, linkResolver, internalComponent, externalComponent, ...restProps }, ref) {
28
- if (process.env.NODE_ENV === "development") {
28
+ if (typeof process !== "undefined" && process.env.NODE_ENV === "development") {
29
29
  if (field) {
30
30
  if (!field.link_type) {
31
31
  console.error(`[PrismicLink] This "field" prop value caused an error to be thrown.
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicLink.cjs","sources":["../../../src/react-server/PrismicLink.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n\tLinkField,\n\tLinkResolverFunction,\n\tPrismicDocument,\n\tasLinkAttrs,\n\tAsLinkAttrsConfig,\n} from \"@prismicio/client\";\n\nimport { devMsg } from \"../lib/devMsg\";\nimport { isInternalURL } from \"../lib/isInternalURL\";\n\n/**\n * The default component rendered for internal and external links.\n */\nexport const defaultComponent = \"a\";\n\n/**\n * Props provided to a component when rendered with `<PrismicLink>`.\n */\nexport interface LinkProps {\n\t/**\n\t * The URL to link.\n\t */\n\thref: string;\n\n\t/**\n\t * The `target` attribute for anchor elements. If the Prismic field is\n\t * configured to open in a new window, this prop defaults to `_blank`.\n\t */\n\ttarget?: React.HTMLAttributeAnchorTarget;\n\n\t/**\n\t * The `rel` attribute for anchor elements. If the `target` prop is set to\n\t * `\"_blank\"`, this prop defaults to `\"noopener noreferrer\"`.\n\t */\n\trel?: string;\n\n\t/**\n\t * Children for the component. *\n\t */\n\tchildren?: React.ReactNode;\n}\n\nexport type PrismicLinkProps<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n> = Omit<InternalComponentProps & ExternalComponentProps, \"rel\" | \"href\"> & {\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"];\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * The component rendered for internal URLs. Defaults to `<a>`.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t */\n\tinternalComponent?: React.ElementType<InternalComponentProps>;\n\n\t/**\n\t * The component rendered for external URLs. Defaults to `<a>`.\n\t */\n\texternalComponent?: React.ComponentType<ExternalComponentProps>;\n} & (\n\t\t| {\n\t\t\t\tdocument: PrismicDocument | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tfield?: never;\n\t\t }\n\t\t| {\n\t\t\t\tfield: LinkField | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tdocument?: never;\n\t\t }\n\t\t| {\n\t\t\t\thref: LinkProps[\"href\"];\n\t\t\t\tfield?: LinkField | null | undefined;\n\t\t\t\tdocument?: never;\n\t\t }\n\t);\n\nexport const PrismicLink = React.forwardRef(function PrismicLink<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\t{\n\t\tfield,\n\t\tdocument: doc,\n\t\tlinkResolver,\n\t\tinternalComponent,\n\t\texternalComponent,\n\t\t...restProps\n\t}: PrismicLinkProps<InternalComponentProps, ExternalComponentProps>,\n\tref: React.ForwardedRef<Element>,\n): JSX.Element {\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tif (field) {\n\t\t\tif (!field.link_type) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t`[PrismicLink] This \"field\" prop value caused an error to be thrown.\\n`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link will not render. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t);\n\t\t\t} else if (\n\t\t\t\tObject.keys(field).length > 1 &&\n\t\t\t\t!(\"url\" in field || \"uid\" in field || \"id\" in field)\n\t\t\t) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (doc) {\n\t\t\tif (!(\"url\" in doc || \"id\" in doc)) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided document is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tdoc,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst {\n\t\thref: computedHref,\n\t\trel: computedRel,\n\t\t...attrs\n\t} = asLinkAttrs(field ?? doc, {\n\t\tlinkResolver,\n\t\trel: typeof restProps.rel === \"function\" ? restProps.rel : undefined,\n\t});\n\n\tlet rel: string | undefined = computedRel;\n\tif (\"rel\" in restProps && typeof restProps.rel !== \"function\") {\n\t\trel = restProps.rel;\n\t}\n\n\tconst href = (\"href\" in restProps ? restProps.href : computedHref) || \"\";\n\n\tconst InternalComponent = (internalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst ExternalComponent = (externalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst Component =\n\t\thref && isInternalURL(href) ? InternalComponent : ExternalComponent;\n\n\treturn (\n\t\t<Component ref={ref} {...attrs} {...restProps} href={href} rel={rel} />\n\t);\n}) as <\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\tprops: PrismicLinkProps<InternalComponentProps, ExternalComponentProps> & {\n\t\tref?: React.ForwardedRef<Element>;\n\t},\n) => JSX.Element;\n"],"names":["React","PrismicLink","devMsg","asLinkAttrs","isInternalURL","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAeO,MAAM,mBAAmB;AAgFzB,MAAM,cAAcA,iBAAM,WAAW,SAASC,aAIpD,EACC,OACA,UAAU,KACV,cACA,mBACA,mBACA,GAAG,UAAA,GAEJ,KAAgC;AAE5B,MAAA,QAAQ,IAAI,aAAa,eAAe;AAC3C,QAAI,OAAO;AACN,UAAA,CAAC,MAAM,WAAW;AACrB,gBAAQ,MACP;AAAA,GACA,KAAK;AAEN,cAAM,IAAI,MACT,8IAA8IC,OAAA,OAC7I,yBAAyB,GACvB;AAAA,MAGJ,WAAA,OAAO,KAAK,KAAK,EAAE,SAAS,KAC5B,EAAE,SAAS,SAAS,SAAS,SAAS,QAAQ,QAC7C;AACD,gBAAQ,KACP,uJAAuJA,OAAAA,OACtJ,yBAAyB,KAE1B,KAAK;AAAA,MAEN;AAAA,eACS,KAAK;AACf,UAAI,EAAE,SAAS,OAAO,QAAQ,MAAM;AACnC,gBAAQ,KACP,0JAA0JA,OAAAA,OACzJ,yBAAyB,KAE1B,GAAG;AAAA,MAEJ;AAAA,IACD;AAAA,EACD;AAEK,QAAA,EACL,MAAM,cACN,KAAK,aACL,GAAG,UACAC,YAAAA,YAAY,SAAS,KAAK;AAAA,IAC7B;AAAA,IACA,KAAK,OAAO,UAAU,QAAQ,aAAa,UAAU,MAAM;AAAA,EAAA,CAC3D;AAED,MAAI,MAA0B;AAC9B,MAAI,SAAS,aAAa,OAAO,UAAU,QAAQ,YAAY;AAC9D,UAAM,UAAU;AAAA,EAChB;AAED,QAAM,QAAQ,UAAU,YAAY,UAAU,OAAO,iBAAiB;AAEtE,QAAM,oBAAqB,qBAC1B;AACD,QAAM,oBAAqB,qBAC1B;AACD,QAAM,YACL,QAAQC,cAAAA,cAAc,IAAI,IAAI,oBAAoB;AAGlD,SAAAC,2BAAA,IAAC,aAAU,KAAc,GAAA,OAAO,GAAI,WAAW,MAAY,IAAS,CAAA;AAEtE,CAAC;;;"}
1
+ {"version":3,"file":"PrismicLink.cjs","sources":["../../../src/react-server/PrismicLink.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n\tLinkField,\n\tLinkResolverFunction,\n\tPrismicDocument,\n\tasLinkAttrs,\n\tAsLinkAttrsConfig,\n} from \"@prismicio/client\";\n\nimport { devMsg } from \"../lib/devMsg\";\nimport { isInternalURL } from \"../lib/isInternalURL\";\n\n/**\n * The default component rendered for internal and external links.\n */\nexport const defaultComponent = \"a\";\n\n/**\n * Props provided to a component when rendered with `<PrismicLink>`.\n */\nexport interface LinkProps {\n\t/**\n\t * The URL to link.\n\t */\n\thref: string;\n\n\t/**\n\t * The `target` attribute for anchor elements. If the Prismic field is\n\t * configured to open in a new window, this prop defaults to `_blank`.\n\t */\n\ttarget?: React.HTMLAttributeAnchorTarget;\n\n\t/**\n\t * The `rel` attribute for anchor elements. If the `target` prop is set to\n\t * `\"_blank\"`, this prop defaults to `\"noopener noreferrer\"`.\n\t */\n\trel?: string;\n\n\t/**\n\t * Children for the component. *\n\t */\n\tchildren?: React.ReactNode;\n}\n\nexport type PrismicLinkProps<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n> = Omit<InternalComponentProps & ExternalComponentProps, \"rel\" | \"href\"> & {\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"];\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * The component rendered for internal URLs. Defaults to `<a>`.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t */\n\tinternalComponent?: React.ElementType<InternalComponentProps>;\n\n\t/**\n\t * The component rendered for external URLs. Defaults to `<a>`.\n\t */\n\texternalComponent?: React.ComponentType<ExternalComponentProps>;\n} & (\n\t\t| {\n\t\t\t\tdocument: PrismicDocument | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tfield?: never;\n\t\t }\n\t\t| {\n\t\t\t\tfield: LinkField | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tdocument?: never;\n\t\t }\n\t\t| {\n\t\t\t\thref: LinkProps[\"href\"];\n\t\t\t\tfield?: LinkField | null | undefined;\n\t\t\t\tdocument?: never;\n\t\t }\n\t);\n\nexport const PrismicLink = React.forwardRef(function PrismicLink<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\t{\n\t\tfield,\n\t\tdocument: doc,\n\t\tlinkResolver,\n\t\tinternalComponent,\n\t\texternalComponent,\n\t\t...restProps\n\t}: PrismicLinkProps<InternalComponentProps, ExternalComponentProps>,\n\tref: React.ForwardedRef<Element>,\n): JSX.Element {\n\tif (\n\t\ttypeof process !== \"undefined\" &&\n\t\tprocess.env.NODE_ENV === \"development\"\n\t) {\n\t\tif (field) {\n\t\t\tif (!field.link_type) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t`[PrismicLink] This \"field\" prop value caused an error to be thrown.\\n`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link will not render. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t);\n\t\t\t} else if (\n\t\t\t\tObject.keys(field).length > 1 &&\n\t\t\t\t!(\"url\" in field || \"uid\" in field || \"id\" in field)\n\t\t\t) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (doc) {\n\t\t\tif (!(\"url\" in doc || \"id\" in doc)) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided document is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tdoc,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst {\n\t\thref: computedHref,\n\t\trel: computedRel,\n\t\t...attrs\n\t} = asLinkAttrs(field ?? doc, {\n\t\tlinkResolver,\n\t\trel: typeof restProps.rel === \"function\" ? restProps.rel : undefined,\n\t});\n\n\tlet rel: string | undefined = computedRel;\n\tif (\"rel\" in restProps && typeof restProps.rel !== \"function\") {\n\t\trel = restProps.rel;\n\t}\n\n\tconst href = (\"href\" in restProps ? restProps.href : computedHref) || \"\";\n\n\tconst InternalComponent = (internalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst ExternalComponent = (externalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst Component =\n\t\thref && isInternalURL(href) ? InternalComponent : ExternalComponent;\n\n\treturn (\n\t\t<Component ref={ref} {...attrs} {...restProps} href={href} rel={rel} />\n\t);\n}) as <\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\tprops: PrismicLinkProps<InternalComponentProps, ExternalComponentProps> & {\n\t\tref?: React.ForwardedRef<Element>;\n\t},\n) => JSX.Element;\n"],"names":["React","PrismicLink","devMsg","asLinkAttrs","isInternalURL","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAeO,MAAM,mBAAmB;AAgFzB,MAAM,cAAcA,iBAAM,WAAW,SAASC,aAIpD,EACC,OACA,UAAU,KACV,cACA,mBACA,mBACA,GAAG,UAAA,GAEJ,KAAgC;AAEhC,MACC,OAAO,YAAY,eACnB,QAAQ,IAAI,aAAa,eACxB;AACD,QAAI,OAAO;AACN,UAAA,CAAC,MAAM,WAAW;AACrB,gBAAQ,MACP;AAAA,GACA,KAAK;AAEN,cAAM,IAAI,MACT,8IAA8IC,OAAA,OAC7I,yBAAyB,GACvB;AAAA,MAGJ,WAAA,OAAO,KAAK,KAAK,EAAE,SAAS,KAC5B,EAAE,SAAS,SAAS,SAAS,SAAS,QAAQ,QAC7C;AACD,gBAAQ,KACP,uJAAuJA,OAAAA,OACtJ,yBAAyB,KAE1B,KAAK;AAAA,MAEN;AAAA,eACS,KAAK;AACf,UAAI,EAAE,SAAS,OAAO,QAAQ,MAAM;AACnC,gBAAQ,KACP,0JAA0JA,OAAAA,OACzJ,yBAAyB,KAE1B,GAAG;AAAA,MAEJ;AAAA,IACD;AAAA,EACD;AAEK,QAAA,EACL,MAAM,cACN,KAAK,aACL,GAAG,UACAC,YAAAA,YAAY,SAAS,KAAK;AAAA,IAC7B;AAAA,IACA,KAAK,OAAO,UAAU,QAAQ,aAAa,UAAU,MAAM;AAAA,EAAA,CAC3D;AAED,MAAI,MAA0B;AAC9B,MAAI,SAAS,aAAa,OAAO,UAAU,QAAQ,YAAY;AAC9D,UAAM,UAAU;AAAA,EAChB;AAED,QAAM,QAAQ,UAAU,YAAY,UAAU,OAAO,iBAAiB;AAEtE,QAAM,oBAAqB,qBAC1B;AACD,QAAM,oBAAqB,qBAC1B;AACD,QAAM,YACL,QAAQC,cAAAA,cAAc,IAAI,IAAI,oBAAoB;AAGlD,SAAAC,2BAAA,IAAC,aAAU,KAAc,GAAA,OAAO,GAAI,WAAW,MAAY,IAAS,CAAA;AAEtE,CAAC;;;"}
@@ -6,7 +6,7 @@ import { devMsg } from "../lib/devMsg.js";
6
6
  import { isInternalURL } from "../lib/isInternalURL.js";
7
7
  const defaultComponent = "a";
8
8
  const PrismicLink = React.forwardRef(function PrismicLink2({ field, document: doc, linkResolver, internalComponent, externalComponent, ...restProps }, ref) {
9
- if (process.env.NODE_ENV === "development") {
9
+ if (typeof process !== "undefined" && process.env.NODE_ENV === "development") {
10
10
  if (field) {
11
11
  if (!field.link_type) {
12
12
  console.error(`[PrismicLink] This "field" prop value caused an error to be thrown.
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicLink.js","sources":["../../../src/react-server/PrismicLink.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n\tLinkField,\n\tLinkResolverFunction,\n\tPrismicDocument,\n\tasLinkAttrs,\n\tAsLinkAttrsConfig,\n} from \"@prismicio/client\";\n\nimport { devMsg } from \"../lib/devMsg\";\nimport { isInternalURL } from \"../lib/isInternalURL\";\n\n/**\n * The default component rendered for internal and external links.\n */\nexport const defaultComponent = \"a\";\n\n/**\n * Props provided to a component when rendered with `<PrismicLink>`.\n */\nexport interface LinkProps {\n\t/**\n\t * The URL to link.\n\t */\n\thref: string;\n\n\t/**\n\t * The `target` attribute for anchor elements. If the Prismic field is\n\t * configured to open in a new window, this prop defaults to `_blank`.\n\t */\n\ttarget?: React.HTMLAttributeAnchorTarget;\n\n\t/**\n\t * The `rel` attribute for anchor elements. If the `target` prop is set to\n\t * `\"_blank\"`, this prop defaults to `\"noopener noreferrer\"`.\n\t */\n\trel?: string;\n\n\t/**\n\t * Children for the component. *\n\t */\n\tchildren?: React.ReactNode;\n}\n\nexport type PrismicLinkProps<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n> = Omit<InternalComponentProps & ExternalComponentProps, \"rel\" | \"href\"> & {\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"];\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * The component rendered for internal URLs. Defaults to `<a>`.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t */\n\tinternalComponent?: React.ElementType<InternalComponentProps>;\n\n\t/**\n\t * The component rendered for external URLs. Defaults to `<a>`.\n\t */\n\texternalComponent?: React.ComponentType<ExternalComponentProps>;\n} & (\n\t\t| {\n\t\t\t\tdocument: PrismicDocument | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tfield?: never;\n\t\t }\n\t\t| {\n\t\t\t\tfield: LinkField | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tdocument?: never;\n\t\t }\n\t\t| {\n\t\t\t\thref: LinkProps[\"href\"];\n\t\t\t\tfield?: LinkField | null | undefined;\n\t\t\t\tdocument?: never;\n\t\t }\n\t);\n\nexport const PrismicLink = React.forwardRef(function PrismicLink<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\t{\n\t\tfield,\n\t\tdocument: doc,\n\t\tlinkResolver,\n\t\tinternalComponent,\n\t\texternalComponent,\n\t\t...restProps\n\t}: PrismicLinkProps<InternalComponentProps, ExternalComponentProps>,\n\tref: React.ForwardedRef<Element>,\n): JSX.Element {\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tif (field) {\n\t\t\tif (!field.link_type) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t`[PrismicLink] This \"field\" prop value caused an error to be thrown.\\n`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link will not render. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t);\n\t\t\t} else if (\n\t\t\t\tObject.keys(field).length > 1 &&\n\t\t\t\t!(\"url\" in field || \"uid\" in field || \"id\" in field)\n\t\t\t) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (doc) {\n\t\t\tif (!(\"url\" in doc || \"id\" in doc)) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided document is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tdoc,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst {\n\t\thref: computedHref,\n\t\trel: computedRel,\n\t\t...attrs\n\t} = asLinkAttrs(field ?? doc, {\n\t\tlinkResolver,\n\t\trel: typeof restProps.rel === \"function\" ? restProps.rel : undefined,\n\t});\n\n\tlet rel: string | undefined = computedRel;\n\tif (\"rel\" in restProps && typeof restProps.rel !== \"function\") {\n\t\trel = restProps.rel;\n\t}\n\n\tconst href = (\"href\" in restProps ? restProps.href : computedHref) || \"\";\n\n\tconst InternalComponent = (internalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst ExternalComponent = (externalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst Component =\n\t\thref && isInternalURL(href) ? InternalComponent : ExternalComponent;\n\n\treturn (\n\t\t<Component ref={ref} {...attrs} {...restProps} href={href} rel={rel} />\n\t);\n}) as <\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\tprops: PrismicLinkProps<InternalComponentProps, ExternalComponentProps> & {\n\t\tref?: React.ForwardedRef<Element>;\n\t},\n) => JSX.Element;\n"],"names":["PrismicLink"],"mappings":";;;;;;AAeO,MAAM,mBAAmB;AAgFzB,MAAM,cAAc,MAAM,WAAW,SAASA,aAIpD,EACC,OACA,UAAU,KACV,cACA,mBACA,mBACA,GAAG,UAAA,GAEJ,KAAgC;AAE5B,MAAA,QAAQ,IAAI,aAAa,eAAe;AAC3C,QAAI,OAAO;AACN,UAAA,CAAC,MAAM,WAAW;AACrB,gBAAQ,MACP;AAAA,GACA,KAAK;AAEN,cAAM,IAAI,MACT,8IAA8I,OAC7I,yBAAyB,GACvB;AAAA,MAGJ,WAAA,OAAO,KAAK,KAAK,EAAE,SAAS,KAC5B,EAAE,SAAS,SAAS,SAAS,SAAS,QAAQ,QAC7C;AACD,gBAAQ,KACP,uJAAuJ,OACtJ,yBAAyB,KAE1B,KAAK;AAAA,MAEN;AAAA,eACS,KAAK;AACf,UAAI,EAAE,SAAS,OAAO,QAAQ,MAAM;AACnC,gBAAQ,KACP,0JAA0J,OACzJ,yBAAyB,KAE1B,GAAG;AAAA,MAEJ;AAAA,IACD;AAAA,EACD;AAEK,QAAA,EACL,MAAM,cACN,KAAK,aACL,GAAG,UACA,YAAY,SAAS,KAAK;AAAA,IAC7B;AAAA,IACA,KAAK,OAAO,UAAU,QAAQ,aAAa,UAAU,MAAM;AAAA,EAAA,CAC3D;AAED,MAAI,MAA0B;AAC9B,MAAI,SAAS,aAAa,OAAO,UAAU,QAAQ,YAAY;AAC9D,UAAM,UAAU;AAAA,EAChB;AAED,QAAM,QAAQ,UAAU,YAAY,UAAU,OAAO,iBAAiB;AAEtE,QAAM,oBAAqB,qBAC1B;AACD,QAAM,oBAAqB,qBAC1B;AACD,QAAM,YACL,QAAQ,cAAc,IAAI,IAAI,oBAAoB;AAGlD,SAAA,oBAAC,aAAU,KAAc,GAAA,OAAO,GAAI,WAAW,MAAY,IAAS,CAAA;AAEtE,CAAC;"}
1
+ {"version":3,"file":"PrismicLink.js","sources":["../../../src/react-server/PrismicLink.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n\tLinkField,\n\tLinkResolverFunction,\n\tPrismicDocument,\n\tasLinkAttrs,\n\tAsLinkAttrsConfig,\n} from \"@prismicio/client\";\n\nimport { devMsg } from \"../lib/devMsg\";\nimport { isInternalURL } from \"../lib/isInternalURL\";\n\n/**\n * The default component rendered for internal and external links.\n */\nexport const defaultComponent = \"a\";\n\n/**\n * Props provided to a component when rendered with `<PrismicLink>`.\n */\nexport interface LinkProps {\n\t/**\n\t * The URL to link.\n\t */\n\thref: string;\n\n\t/**\n\t * The `target` attribute for anchor elements. If the Prismic field is\n\t * configured to open in a new window, this prop defaults to `_blank`.\n\t */\n\ttarget?: React.HTMLAttributeAnchorTarget;\n\n\t/**\n\t * The `rel` attribute for anchor elements. If the `target` prop is set to\n\t * `\"_blank\"`, this prop defaults to `\"noopener noreferrer\"`.\n\t */\n\trel?: string;\n\n\t/**\n\t * Children for the component. *\n\t */\n\tchildren?: React.ReactNode;\n}\n\nexport type PrismicLinkProps<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n> = Omit<InternalComponentProps & ExternalComponentProps, \"rel\" | \"href\"> & {\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"];\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * The component rendered for internal URLs. Defaults to `<a>`.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t */\n\tinternalComponent?: React.ElementType<InternalComponentProps>;\n\n\t/**\n\t * The component rendered for external URLs. Defaults to `<a>`.\n\t */\n\texternalComponent?: React.ComponentType<ExternalComponentProps>;\n} & (\n\t\t| {\n\t\t\t\tdocument: PrismicDocument | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tfield?: never;\n\t\t }\n\t\t| {\n\t\t\t\tfield: LinkField | null | undefined;\n\t\t\t\thref?: never;\n\t\t\t\tdocument?: never;\n\t\t }\n\t\t| {\n\t\t\t\thref: LinkProps[\"href\"];\n\t\t\t\tfield?: LinkField | null | undefined;\n\t\t\t\tdocument?: never;\n\t\t }\n\t);\n\nexport const PrismicLink = React.forwardRef(function PrismicLink<\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\t{\n\t\tfield,\n\t\tdocument: doc,\n\t\tlinkResolver,\n\t\tinternalComponent,\n\t\texternalComponent,\n\t\t...restProps\n\t}: PrismicLinkProps<InternalComponentProps, ExternalComponentProps>,\n\tref: React.ForwardedRef<Element>,\n): JSX.Element {\n\tif (\n\t\ttypeof process !== \"undefined\" &&\n\t\tprocess.env.NODE_ENV === \"development\"\n\t) {\n\t\tif (field) {\n\t\t\tif (!field.link_type) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t`[PrismicLink] This \"field\" prop value caused an error to be thrown.\\n`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link will not render. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t);\n\t\t\t} else if (\n\t\t\t\tObject.keys(field).length > 1 &&\n\t\t\t\t!(\"url\" in field || \"uid\" in field || \"id\" in field)\n\t\t\t) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided field is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (doc) {\n\t\t\tif (!(\"url\" in doc || \"id\" in doc)) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicLink] The provided document is missing required properties to properly render a link. The link may not render correctly. For more details, see ${devMsg(\n\t\t\t\t\t\t\"missing-link-properties\",\n\t\t\t\t\t)}`,\n\t\t\t\t\tdoc,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst {\n\t\thref: computedHref,\n\t\trel: computedRel,\n\t\t...attrs\n\t} = asLinkAttrs(field ?? doc, {\n\t\tlinkResolver,\n\t\trel: typeof restProps.rel === \"function\" ? restProps.rel : undefined,\n\t});\n\n\tlet rel: string | undefined = computedRel;\n\tif (\"rel\" in restProps && typeof restProps.rel !== \"function\") {\n\t\trel = restProps.rel;\n\t}\n\n\tconst href = (\"href\" in restProps ? restProps.href : computedHref) || \"\";\n\n\tconst InternalComponent = (internalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst ExternalComponent = (externalComponent ||\n\t\tdefaultComponent) as React.ComponentType<LinkProps>;\n\tconst Component =\n\t\thref && isInternalURL(href) ? InternalComponent : ExternalComponent;\n\n\treturn (\n\t\t<Component ref={ref} {...attrs} {...restProps} href={href} rel={rel} />\n\t);\n}) as <\n\tInternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n\tExternalComponentProps = React.ComponentProps<typeof defaultComponent>,\n>(\n\tprops: PrismicLinkProps<InternalComponentProps, ExternalComponentProps> & {\n\t\tref?: React.ForwardedRef<Element>;\n\t},\n) => JSX.Element;\n"],"names":["PrismicLink"],"mappings":";;;;;;AAeO,MAAM,mBAAmB;AAgFzB,MAAM,cAAc,MAAM,WAAW,SAASA,aAIpD,EACC,OACA,UAAU,KACV,cACA,mBACA,mBACA,GAAG,UAAA,GAEJ,KAAgC;AAEhC,MACC,OAAO,YAAY,eACnB,QAAQ,IAAI,aAAa,eACxB;AACD,QAAI,OAAO;AACN,UAAA,CAAC,MAAM,WAAW;AACrB,gBAAQ,MACP;AAAA,GACA,KAAK;AAEN,cAAM,IAAI,MACT,8IAA8I,OAC7I,yBAAyB,GACvB;AAAA,MAGJ,WAAA,OAAO,KAAK,KAAK,EAAE,SAAS,KAC5B,EAAE,SAAS,SAAS,SAAS,SAAS,QAAQ,QAC7C;AACD,gBAAQ,KACP,uJAAuJ,OACtJ,yBAAyB,KAE1B,KAAK;AAAA,MAEN;AAAA,eACS,KAAK;AACf,UAAI,EAAE,SAAS,OAAO,QAAQ,MAAM;AACnC,gBAAQ,KACP,0JAA0J,OACzJ,yBAAyB,KAE1B,GAAG;AAAA,MAEJ;AAAA,IACD;AAAA,EACD;AAEK,QAAA,EACL,MAAM,cACN,KAAK,aACL,GAAG,UACA,YAAY,SAAS,KAAK;AAAA,IAC7B;AAAA,IACA,KAAK,OAAO,UAAU,QAAQ,aAAa,UAAU,MAAM;AAAA,EAAA,CAC3D;AAED,MAAI,MAA0B;AAC9B,MAAI,SAAS,aAAa,OAAO,UAAU,QAAQ,YAAY;AAC9D,UAAM,UAAU;AAAA,EAChB;AAED,QAAM,QAAQ,UAAU,YAAY,UAAU,OAAO,iBAAiB;AAEtE,QAAM,oBAAqB,qBAC1B;AACD,QAAM,oBAAqB,qBAC1B;AACD,QAAM,YACL,QAAQ,cAAc,IAAI,IAAI,oBAAoB;AAGlD,SAAA,oBAAC,aAAU,KAAc,GAAA,OAAO,GAAI,WAAW,MAAY,IAAS,CAAA;AAEtE,CAAC;"}
@@ -61,7 +61,7 @@ const createDefaultSerializer = (args) => prismicR__namespace.wrapMapSerializer(
61
61
  });
62
62
  function PrismicRichText({ linkResolver, field, fallback, components, externalLinkComponent, internalLinkComponent, ...restProps }) {
63
63
  return React__namespace.useMemo(() => {
64
- if (process.env.NODE_ENV === "development") {
64
+ if (typeof process !== "undefined" && process.env.NODE_ENV === "development") {
65
65
  if ("className" in restProps) {
66
66
  console.warn(`[PrismicRichText] className cannot be passed to <PrismicRichText> since it renders an array without a wrapping component. For more details, see ${devMsg.devMsg("classname-is-not-a-valid-prop")}.`, field);
67
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichText.cjs","sources":["../../../src/react-server/PrismicRichText.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as prismic from \"@prismicio/client\";\nimport * as prismicR from \"@prismicio/richtext\";\n\nimport { JSXFunctionSerializer, JSXMapSerializer } from \"../types\";\nimport { LinkProps, PrismicLink } from \"./PrismicLink\";\nimport { devMsg } from \"../lib/devMsg\";\n\n/**\n * Props for `<PrismicRichText>`.\n */\nexport type PrismicRichTextProps<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\t/**\n\t * The Prismic Rich Text field to render.\n\t */\n\tfield: prismic.RichTextField | null | undefined;\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * A map or function that maps a Rich Text block to a React component.\n\t *\n\t * @remarks\n\t * Prefer using a map serializer over the function serializer when possible.\n\t * The map serializer is simpler to maintain.\n\t * @example A map serializer.\n\t *\n\t * ```jsx\n\t * {\n\t * heading1: ({children}) => <Heading>{children}</Heading>\n\t * }\n\t * ```\n\t *\n\t * @example A function serializer.\n\t *\n\t * ```jsx\n\t * (type, node, content, children) => {\n\t * \tswitch (type) {\n\t * \t\tcase \"heading1\": {\n\t * \t\t\treturn <Heading>{children}</Heading>;\n\t * \t\t}\n\t * \t}\n\t * };\n\t * ```\n\t */\n\tcomponents?: JSXMapSerializer | JSXFunctionSerializer;\n\n\t/**\n\t * The React component rendered for links when the URL is internal.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The React component rendered for links when the URL is external.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` will be rendered.\n\t */\n\tfallback?: React.ReactNode;\n};\n\ntype CreateDefaultSerializerArgs<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\tlinkResolver: LinkResolverFunction | undefined;\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n};\n\nconst createDefaultSerializer = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>(\n\targs: CreateDefaultSerializerArgs<LinkResolverFunction>,\n): JSXFunctionSerializer =>\n\tprismicR.wrapMapSerializer({\n\t\theading1: ({ children, key }) => <h1 key={key}>{children}</h1>,\n\t\theading2: ({ children, key }) => <h2 key={key}>{children}</h2>,\n\t\theading3: ({ children, key }) => <h3 key={key}>{children}</h3>,\n\t\theading4: ({ children, key }) => <h4 key={key}>{children}</h4>,\n\t\theading5: ({ children, key }) => <h5 key={key}>{children}</h5>,\n\t\theading6: ({ children, key }) => <h6 key={key}>{children}</h6>,\n\t\tparagraph: ({ children, key }) => <p key={key}>{children}</p>,\n\t\tpreformatted: ({ node, key }) => <pre key={key}>{node.text}</pre>,\n\t\tstrong: ({ children, key }) => <strong key={key}>{children}</strong>,\n\t\tem: ({ children, key }) => <em key={key}>{children}</em>,\n\t\tlistItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\toListItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\tlist: ({ children, key }) => <ul key={key}>{children}</ul>,\n\t\toList: ({ children, key }) => <ol key={key}>{children}</ol>,\n\t\timage: ({ node, key }) => {\n\t\t\tconst img = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={node.url}\n\t\t\t\t\talt={node.alt ?? undefined}\n\t\t\t\t\tdata-copyright={node.copyright ? node.copyright : undefined}\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<p key={key} className=\"block-img\">\n\t\t\t\t\t{node.linkTo ? (\n\t\t\t\t\t\t<PrismicLink\n\t\t\t\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t\t\t\t\tfield={node.linkTo}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{img}\n\t\t\t\t\t\t</PrismicLink>\n\t\t\t\t\t) : (\n\t\t\t\t\t\timg\n\t\t\t\t\t)}\n\t\t\t\t</p>\n\t\t\t);\n\t\t},\n\t\tembed: ({ node, key }) => (\n\t\t\t<div\n\t\t\t\tkey={key}\n\t\t\t\tdata-oembed={node.oembed.embed_url}\n\t\t\t\tdata-oembed-type={node.oembed.type}\n\t\t\t\tdata-oembed-provider={node.oembed.provider_name}\n\t\t\t\tdangerouslySetInnerHTML={{ __html: node.oembed.html ?? \"\" }}\n\t\t\t/>\n\t\t),\n\t\thyperlink: ({ node, children, key }) => (\n\t\t\t<PrismicLink\n\t\t\t\tkey={key}\n\t\t\t\tfield={node.data}\n\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</PrismicLink>\n\t\t),\n\t\tlabel: ({ node, children, key }) => (\n\t\t\t<span key={key} className={node.data.label}>\n\t\t\t\t{children}\n\t\t\t</span>\n\t\t),\n\t\tspan: ({ text, key }) => {\n\t\t\tconst result: React.ReactNode[] = [];\n\n\t\t\tlet i = 0;\n\t\t\tfor (const line of text.split(\"\\n\")) {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tresult.push(<br key={`${i}__break`} />);\n\t\t\t\t}\n\n\t\t\t\tresult.push(<React.Fragment key={`${i}__line`}>{line}</React.Fragment>);\n\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\treturn <React.Fragment key={key}>{result}</React.Fragment>;\n\t\t},\n\t});\n\n/**\n * React component that renders content from a Prismic Rich Text field. By\n * default, HTML elements are rendered for each piece of content. A `heading1`\n * block will render an `<h1>` HTML element, for example. Links will use\n * `<PrismicLink>` by default which can be customized using the\n * `internalLinkComponent` and `externalLinkComponent` props.\n *\n * To customize the components that are rendered, provide a map or function\n * serializer to the `components` prop.\n *\n * @remarks\n * This component returns a React fragment with no wrapping element around the\n * content. If you need a wrapper, add a component around `<PrismicRichText>`.\n * @example Rendering a Rich Text field using the default HTMl elements.\n *\n * ```jsx\n * <PrismicRichText field={document.data.content} />;\n * ```\n *\n * @example Rendering a Rich Text field using a custom set of React components.\n *\n * ```jsx\n * <PrismicRichText\n * \tfield={document.data.content}\n * \tcomponents={{\n * \t\theading1: ({ children }) => <Heading>{children}</Heading>,\n * \t}}\n * />;\n * ```\n *\n * @param props - Props for the component.\n *\n * @returns The Rich Text field's content as React components.\n *\n * @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}\n * @see Learn about Rich Text serializers {@link https://prismic.io/docs/core-concepts/html-serializer}\n */\nexport function PrismicRichText<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>({\n\tlinkResolver,\n\tfield,\n\tfallback,\n\tcomponents,\n\texternalLinkComponent,\n\tinternalLinkComponent,\n\t...restProps\n}: PrismicRichTextProps<LinkResolverFunction>): JSX.Element | null {\n\treturn React.useMemo(() => {\n\t\tif (process.env.NODE_ENV === \"development\") {\n\t\t\tif (\"className\" in restProps) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicRichText] className cannot be passed to <PrismicRichText> since it renders an array without a wrapping component. For more details, see ${devMsg(\n\t\t\t\t\t\t\"classname-is-not-a-valid-prop\",\n\t\t\t\t\t)}.`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tif (prismic.isFilled.richText(field)) {\n\t\t\tconst serializer = prismicR.composeSerializers(\n\t\t\t\ttypeof components === \"object\"\n\t\t\t\t\t? prismicR.wrapMapSerializer(components)\n\t\t\t\t\t: components,\n\t\t\t\tcreateDefaultSerializer({\n\t\t\t\t\tlinkResolver,\n\t\t\t\t\tinternalLinkComponent,\n\t\t\t\t\texternalLinkComponent,\n\t\t\t\t}),\n\t\t\t);\n\n\t\t\t// The serializer is wrapped in a higher-order function\n\t\t\t// that automatically applies a key to React Elements\n\t\t\t// if one is not already given.\n\t\t\tconst serialized = prismicR.serialize<JSX.Element>(\n\t\t\t\tfield,\n\t\t\t\t(type, node, text, children, key) => {\n\t\t\t\t\tconst result = serializer(type, node, text, children, key);\n\n\t\t\t\t\tif (React.isValidElement(result) && result.key == null) {\n\t\t\t\t\t\treturn React.cloneElement(result, { key });\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t);\n\n\t\t\treturn <>{serialized}</>;\n\t\t} else {\n\t\t\treturn fallback != null ? <>{fallback}</> : null;\n\t\t}\n\t}, [\n\t\tfield,\n\t\tinternalLinkComponent,\n\t\texternalLinkComponent,\n\t\tcomponents,\n\t\tlinkResolver,\n\t\tfallback,\n\t]);\n}\n"],"names":["prismicR","jsx","PrismicLink","React","devMsg","prismic.isFilled.richText","Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAwFA,MAAM,0BAA0B,CAI/B,SAEAA,oBAAS,kBAAkB;AAAA,EAC1B,UAAU,CAAC,EAAE,UAAU,IAAU,MAAAC,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,UAAU,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,UAAU,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,UAAU,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,UAAU,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,UAAU,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,WAAW,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,KAAa,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,cAAc,CAAC,EAAE,MAAM,UAAWA,2BAAA,IAAA,OAAA,EAAe,UAAK,KAAA,KAAA,GAAX,GAAgB;AAAA,EAC3D,QAAQ,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,UAAkB,EAAA,SAAA,GAAN,GAAe;AAAA,EAC3D,IAAI,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACnD,UAAU,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACzD,WAAW,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EAC1D,MAAM,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACrD,OAAO,CAAC,EAAE,UAAU,IAAU,MAAAA,2BAAA,IAAC,MAAc,EAAA,SAAA,GAAN,GAAe;AAAA,EACtD,OAAO,CAAC,EAAE,MAAM,UAAS;AACxB,UAAM,MACLA,2BAAA,IAAC,OACA,EAAA,KAAK,KAAK,KACV,KAAK,KAAK,OAAO,QACjB,kBAAgB,KAAK,YAAY,KAAK,YAAY,OAAU,CAAA;AAK7D,WAAAA,2BAAA,IAAC,OAAY,WAAU,aACrB,eAAK,SACLA,2BAAA,IAACC,YACA,aAAA,EAAA,cAAc,KAAK,cACnB,mBAAmB,KAAK,uBACxB,mBAAmB,KAAK,uBACxB,OAAO,KAAK,QAEX,UAAA,IACF,CAAA,IAEA,IAAA,GAXM,GAaR;AAAA,EAEF;AAAA,EACA,OAAO,CAAC,EAAE,MAAM,IAAK,MACnBD,2BAAAA,IAAA,OAAA,EAEA,eAAa,KAAK,OAAO,WACzB,oBAAkB,KAAK,OAAO,MAC9B,wBAAsB,KAAK,OAAO,eAClC,yBAAyB,EAAE,QAAQ,KAAK,OAAO,QAAQ,GAAI,EAAA,GAJtD,GAIuD;AAAA,EAG9D,WAAW,CAAC,EAAE,MAAM,UAAU,IAAK,MACjCA,2BAAA,IAAAC,yBAAA,EAEA,OAAO,KAAK,MACZ,cAAc,KAAK,cACnB,mBAAmB,KAAK,uBACxB,mBAAmB,KAAK,uBAEvB,SAAA,GANI,GAON;AAAA,EAED,OAAO,CAAC,EAAE,MAAM,UAAU,IAAK,MAC7BD,2BAAAA,IAAA,QAAA,EAAe,WAAW,KAAK,KAAK,OACnC,YADS,GAEX;AAAA,EAED,MAAM,CAAC,EAAE,MAAM,UAAS;AACvB,UAAM,SAA4B,CAAA;AAElC,QAAI,IAAI;AACR,eAAW,QAAQ,KAAK,MAAM,IAAI,GAAG;AACpC,UAAI,IAAI,GAAG;AACV,eAAO,KAAKA,2BAAA,IAAC,MAAQ,CAAA,GAAA,GAAG,UAAW,CAAG;AAAA,MACtC;AAEM,aAAA,oCAAME,iBAAM,UAAN,EAAmC,UAAf,KAAA,GAAA,GAAG,SAAiB,CAAiB;AAEtE;AAAA,IACA;AAED,WAAQF,2BAAAA,IAAAE,iBAAM,UAAN,EAA0B,oBAAN,GAAa;AAAA,EAC1C;AACA,CAAA;AAuCc,SAAA,gBAGd,EACD,cACA,OACA,UACA,YACA,uBACA,uBACA,GAAG,aACyC;AACrC,SAAAA,iBAAM,QAAQ,MAAK;AACrB,QAAA,QAAQ,IAAI,aAAa,eAAe;AAC3C,UAAI,eAAe,WAAW;AAC7B,gBAAQ,KACP,mJAAmJC,OAAAA,OAClJ,+BAA+B,MAEhC,KAAK;AAAA,MAEN;AAAA,IACD;AAED,QAAIC,SAAAA,SAA0B,KAAK,GAAG;AAC/B,YAAA,aAAaL,oBAAS,mBAC3B,OAAO,eAAe,WACnBA,oBAAS,kBAAkB,UAAU,IACrC,YACH,wBAAwB;AAAA,QACvB;AAAA,QACA;AAAA,QACA;AAAA,MACA,CAAA,CAAC;AAMG,YAAA,aAAaA,oBAAS,UAC3B,OACA,CAAC,MAAM,MAAM,MAAM,UAAU,QAAO;AACnC,cAAM,SAAS,WAAW,MAAM,MAAM,MAAM,UAAU,GAAG;AAEzD,YAAIG,iBAAM,eAAe,MAAM,KAAK,OAAO,OAAO,MAAM;AACvD,iBAAOA,iBAAM,aAAa,QAAQ,EAAE,IAAK,CAAA;AAAA,QAAA,OACnC;AACC,iBAAA;AAAA,QACP;AAAA,MAAA,CACD;AAGF,mEAAU,UAAW,WAAA,CAAA;AAAA,IAAA,OACf;AACN,aAAO,YAAY,OAAUF,+BAAAK,WAAAA,UAAA,EAAA,UAAA,UAAS,IAAM;AAAA,IAC5C;AAAA,EAAA,GACC;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AACF;;"}
1
+ {"version":3,"file":"PrismicRichText.cjs","sources":["../../../src/react-server/PrismicRichText.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as prismic from \"@prismicio/client\";\nimport * as prismicR from \"@prismicio/richtext\";\n\nimport { JSXFunctionSerializer, JSXMapSerializer } from \"../types\";\nimport { LinkProps, PrismicLink } from \"./PrismicLink\";\nimport { devMsg } from \"../lib/devMsg\";\n\n/**\n * Props for `<PrismicRichText>`.\n */\nexport type PrismicRichTextProps<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\t/**\n\t * The Prismic Rich Text field to render.\n\t */\n\tfield: prismic.RichTextField | null | undefined;\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * A map or function that maps a Rich Text block to a React component.\n\t *\n\t * @remarks\n\t * Prefer using a map serializer over the function serializer when possible.\n\t * The map serializer is simpler to maintain.\n\t * @example A map serializer.\n\t *\n\t * ```jsx\n\t * {\n\t * heading1: ({children}) => <Heading>{children}</Heading>\n\t * }\n\t * ```\n\t *\n\t * @example A function serializer.\n\t *\n\t * ```jsx\n\t * (type, node, content, children) => {\n\t * \tswitch (type) {\n\t * \t\tcase \"heading1\": {\n\t * \t\t\treturn <Heading>{children}</Heading>;\n\t * \t\t}\n\t * \t}\n\t * };\n\t * ```\n\t */\n\tcomponents?: JSXMapSerializer | JSXFunctionSerializer;\n\n\t/**\n\t * The React component rendered for links when the URL is internal.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The React component rendered for links when the URL is external.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` will be rendered.\n\t */\n\tfallback?: React.ReactNode;\n};\n\ntype CreateDefaultSerializerArgs<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\tlinkResolver: LinkResolverFunction | undefined;\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n};\n\nconst createDefaultSerializer = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>(\n\targs: CreateDefaultSerializerArgs<LinkResolverFunction>,\n): JSXFunctionSerializer =>\n\tprismicR.wrapMapSerializer({\n\t\theading1: ({ children, key }) => <h1 key={key}>{children}</h1>,\n\t\theading2: ({ children, key }) => <h2 key={key}>{children}</h2>,\n\t\theading3: ({ children, key }) => <h3 key={key}>{children}</h3>,\n\t\theading4: ({ children, key }) => <h4 key={key}>{children}</h4>,\n\t\theading5: ({ children, key }) => <h5 key={key}>{children}</h5>,\n\t\theading6: ({ children, key }) => <h6 key={key}>{children}</h6>,\n\t\tparagraph: ({ children, key }) => <p key={key}>{children}</p>,\n\t\tpreformatted: ({ node, key }) => <pre key={key}>{node.text}</pre>,\n\t\tstrong: ({ children, key }) => <strong key={key}>{children}</strong>,\n\t\tem: ({ children, key }) => <em key={key}>{children}</em>,\n\t\tlistItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\toListItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\tlist: ({ children, key }) => <ul key={key}>{children}</ul>,\n\t\toList: ({ children, key }) => <ol key={key}>{children}</ol>,\n\t\timage: ({ node, key }) => {\n\t\t\tconst img = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={node.url}\n\t\t\t\t\talt={node.alt ?? undefined}\n\t\t\t\t\tdata-copyright={node.copyright ? node.copyright : undefined}\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<p key={key} className=\"block-img\">\n\t\t\t\t\t{node.linkTo ? (\n\t\t\t\t\t\t<PrismicLink\n\t\t\t\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t\t\t\t\tfield={node.linkTo}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{img}\n\t\t\t\t\t\t</PrismicLink>\n\t\t\t\t\t) : (\n\t\t\t\t\t\timg\n\t\t\t\t\t)}\n\t\t\t\t</p>\n\t\t\t);\n\t\t},\n\t\tembed: ({ node, key }) => (\n\t\t\t<div\n\t\t\t\tkey={key}\n\t\t\t\tdata-oembed={node.oembed.embed_url}\n\t\t\t\tdata-oembed-type={node.oembed.type}\n\t\t\t\tdata-oembed-provider={node.oembed.provider_name}\n\t\t\t\tdangerouslySetInnerHTML={{ __html: node.oembed.html ?? \"\" }}\n\t\t\t/>\n\t\t),\n\t\thyperlink: ({ node, children, key }) => (\n\t\t\t<PrismicLink\n\t\t\t\tkey={key}\n\t\t\t\tfield={node.data}\n\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</PrismicLink>\n\t\t),\n\t\tlabel: ({ node, children, key }) => (\n\t\t\t<span key={key} className={node.data.label}>\n\t\t\t\t{children}\n\t\t\t</span>\n\t\t),\n\t\tspan: ({ text, key }) => {\n\t\t\tconst result: React.ReactNode[] = [];\n\n\t\t\tlet i = 0;\n\t\t\tfor (const line of text.split(\"\\n\")) {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tresult.push(<br key={`${i}__break`} />);\n\t\t\t\t}\n\n\t\t\t\tresult.push(<React.Fragment key={`${i}__line`}>{line}</React.Fragment>);\n\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\treturn <React.Fragment key={key}>{result}</React.Fragment>;\n\t\t},\n\t});\n\n/**\n * React component that renders content from a Prismic Rich Text field. By\n * default, HTML elements are rendered for each piece of content. A `heading1`\n * block will render an `<h1>` HTML element, for example. Links will use\n * `<PrismicLink>` by default which can be customized using the\n * `internalLinkComponent` and `externalLinkComponent` props.\n *\n * To customize the components that are rendered, provide a map or function\n * serializer to the `components` prop.\n *\n * @remarks\n * This component returns a React fragment with no wrapping element around the\n * content. If you need a wrapper, add a component around `<PrismicRichText>`.\n * @example Rendering a Rich Text field using the default HTMl elements.\n *\n * ```jsx\n * <PrismicRichText field={document.data.content} />;\n * ```\n *\n * @example Rendering a Rich Text field using a custom set of React components.\n *\n * ```jsx\n * <PrismicRichText\n * \tfield={document.data.content}\n * \tcomponents={{\n * \t\theading1: ({ children }) => <Heading>{children}</Heading>,\n * \t}}\n * />;\n * ```\n *\n * @param props - Props for the component.\n *\n * @returns The Rich Text field's content as React components.\n *\n * @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}\n * @see Learn about Rich Text serializers {@link https://prismic.io/docs/core-concepts/html-serializer}\n */\nexport function PrismicRichText<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>({\n\tlinkResolver,\n\tfield,\n\tfallback,\n\tcomponents,\n\texternalLinkComponent,\n\tinternalLinkComponent,\n\t...restProps\n}: PrismicRichTextProps<LinkResolverFunction>): JSX.Element | null {\n\treturn React.useMemo(() => {\n\t\tif (\n\t\t\ttypeof process !== \"undefined\" &&\n\t\t\tprocess.env.NODE_ENV === \"development\"\n\t\t) {\n\t\t\tif (\"className\" in restProps) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicRichText] className cannot be passed to <PrismicRichText> since it renders an array without a wrapping component. For more details, see ${devMsg(\n\t\t\t\t\t\t\"classname-is-not-a-valid-prop\",\n\t\t\t\t\t)}.`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tif (prismic.isFilled.richText(field)) {\n\t\t\tconst serializer = prismicR.composeSerializers(\n\t\t\t\ttypeof components === \"object\"\n\t\t\t\t\t? prismicR.wrapMapSerializer(components)\n\t\t\t\t\t: components,\n\t\t\t\tcreateDefaultSerializer({\n\t\t\t\t\tlinkResolver,\n\t\t\t\t\tinternalLinkComponent,\n\t\t\t\t\texternalLinkComponent,\n\t\t\t\t}),\n\t\t\t);\n\n\t\t\t// The serializer is wrapped in a higher-order function\n\t\t\t// that automatically applies a key to React Elements\n\t\t\t// if one is not already given.\n\t\t\tconst serialized = prismicR.serialize<JSX.Element>(\n\t\t\t\tfield,\n\t\t\t\t(type, node, text, children, key) => {\n\t\t\t\t\tconst result = serializer(type, node, text, children, key);\n\n\t\t\t\t\tif (React.isValidElement(result) && result.key == null) {\n\t\t\t\t\t\treturn React.cloneElement(result, { key });\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t);\n\n\t\t\treturn <>{serialized}</>;\n\t\t} else {\n\t\t\treturn fallback != null ? <>{fallback}</> : null;\n\t\t}\n\t}, [\n\t\tfield,\n\t\tinternalLinkComponent,\n\t\texternalLinkComponent,\n\t\tcomponents,\n\t\tlinkResolver,\n\t\tfallback,\n\t]);\n}\n"],"names":["prismicR","jsx","PrismicLink","React","devMsg","prismic.isFilled.richText","Fragment"],"mappings":"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"}
@@ -41,7 +41,7 @@ const createDefaultSerializer = (args) => prismicR.wrapMapSerializer({
41
41
  });
42
42
  function PrismicRichText({ linkResolver, field, fallback, components, externalLinkComponent, internalLinkComponent, ...restProps }) {
43
43
  return React.useMemo(() => {
44
- if (process.env.NODE_ENV === "development") {
44
+ if (typeof process !== "undefined" && process.env.NODE_ENV === "development") {
45
45
  if ("className" in restProps) {
46
46
  console.warn(`[PrismicRichText] className cannot be passed to <PrismicRichText> since it renders an array without a wrapping component. For more details, see ${devMsg("classname-is-not-a-valid-prop")}.`, field);
47
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichText.js","sources":["../../../src/react-server/PrismicRichText.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as prismic from \"@prismicio/client\";\nimport * as prismicR from \"@prismicio/richtext\";\n\nimport { JSXFunctionSerializer, JSXMapSerializer } from \"../types\";\nimport { LinkProps, PrismicLink } from \"./PrismicLink\";\nimport { devMsg } from \"../lib/devMsg\";\n\n/**\n * Props for `<PrismicRichText>`.\n */\nexport type PrismicRichTextProps<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\t/**\n\t * The Prismic Rich Text field to render.\n\t */\n\tfield: prismic.RichTextField | null | undefined;\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * A map or function that maps a Rich Text block to a React component.\n\t *\n\t * @remarks\n\t * Prefer using a map serializer over the function serializer when possible.\n\t * The map serializer is simpler to maintain.\n\t * @example A map serializer.\n\t *\n\t * ```jsx\n\t * {\n\t * heading1: ({children}) => <Heading>{children}</Heading>\n\t * }\n\t * ```\n\t *\n\t * @example A function serializer.\n\t *\n\t * ```jsx\n\t * (type, node, content, children) => {\n\t * \tswitch (type) {\n\t * \t\tcase \"heading1\": {\n\t * \t\t\treturn <Heading>{children}</Heading>;\n\t * \t\t}\n\t * \t}\n\t * };\n\t * ```\n\t */\n\tcomponents?: JSXMapSerializer | JSXFunctionSerializer;\n\n\t/**\n\t * The React component rendered for links when the URL is internal.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The React component rendered for links when the URL is external.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` will be rendered.\n\t */\n\tfallback?: React.ReactNode;\n};\n\ntype CreateDefaultSerializerArgs<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\tlinkResolver: LinkResolverFunction | undefined;\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n};\n\nconst createDefaultSerializer = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>(\n\targs: CreateDefaultSerializerArgs<LinkResolverFunction>,\n): JSXFunctionSerializer =>\n\tprismicR.wrapMapSerializer({\n\t\theading1: ({ children, key }) => <h1 key={key}>{children}</h1>,\n\t\theading2: ({ children, key }) => <h2 key={key}>{children}</h2>,\n\t\theading3: ({ children, key }) => <h3 key={key}>{children}</h3>,\n\t\theading4: ({ children, key }) => <h4 key={key}>{children}</h4>,\n\t\theading5: ({ children, key }) => <h5 key={key}>{children}</h5>,\n\t\theading6: ({ children, key }) => <h6 key={key}>{children}</h6>,\n\t\tparagraph: ({ children, key }) => <p key={key}>{children}</p>,\n\t\tpreformatted: ({ node, key }) => <pre key={key}>{node.text}</pre>,\n\t\tstrong: ({ children, key }) => <strong key={key}>{children}</strong>,\n\t\tem: ({ children, key }) => <em key={key}>{children}</em>,\n\t\tlistItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\toListItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\tlist: ({ children, key }) => <ul key={key}>{children}</ul>,\n\t\toList: ({ children, key }) => <ol key={key}>{children}</ol>,\n\t\timage: ({ node, key }) => {\n\t\t\tconst img = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={node.url}\n\t\t\t\t\talt={node.alt ?? undefined}\n\t\t\t\t\tdata-copyright={node.copyright ? node.copyright : undefined}\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<p key={key} className=\"block-img\">\n\t\t\t\t\t{node.linkTo ? (\n\t\t\t\t\t\t<PrismicLink\n\t\t\t\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t\t\t\t\tfield={node.linkTo}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{img}\n\t\t\t\t\t\t</PrismicLink>\n\t\t\t\t\t) : (\n\t\t\t\t\t\timg\n\t\t\t\t\t)}\n\t\t\t\t</p>\n\t\t\t);\n\t\t},\n\t\tembed: ({ node, key }) => (\n\t\t\t<div\n\t\t\t\tkey={key}\n\t\t\t\tdata-oembed={node.oembed.embed_url}\n\t\t\t\tdata-oembed-type={node.oembed.type}\n\t\t\t\tdata-oembed-provider={node.oembed.provider_name}\n\t\t\t\tdangerouslySetInnerHTML={{ __html: node.oembed.html ?? \"\" }}\n\t\t\t/>\n\t\t),\n\t\thyperlink: ({ node, children, key }) => (\n\t\t\t<PrismicLink\n\t\t\t\tkey={key}\n\t\t\t\tfield={node.data}\n\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</PrismicLink>\n\t\t),\n\t\tlabel: ({ node, children, key }) => (\n\t\t\t<span key={key} className={node.data.label}>\n\t\t\t\t{children}\n\t\t\t</span>\n\t\t),\n\t\tspan: ({ text, key }) => {\n\t\t\tconst result: React.ReactNode[] = [];\n\n\t\t\tlet i = 0;\n\t\t\tfor (const line of text.split(\"\\n\")) {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tresult.push(<br key={`${i}__break`} />);\n\t\t\t\t}\n\n\t\t\t\tresult.push(<React.Fragment key={`${i}__line`}>{line}</React.Fragment>);\n\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\treturn <React.Fragment key={key}>{result}</React.Fragment>;\n\t\t},\n\t});\n\n/**\n * React component that renders content from a Prismic Rich Text field. By\n * default, HTML elements are rendered for each piece of content. A `heading1`\n * block will render an `<h1>` HTML element, for example. Links will use\n * `<PrismicLink>` by default which can be customized using the\n * `internalLinkComponent` and `externalLinkComponent` props.\n *\n * To customize the components that are rendered, provide a map or function\n * serializer to the `components` prop.\n *\n * @remarks\n * This component returns a React fragment with no wrapping element around the\n * content. If you need a wrapper, add a component around `<PrismicRichText>`.\n * @example Rendering a Rich Text field using the default HTMl elements.\n *\n * ```jsx\n * <PrismicRichText field={document.data.content} />;\n * ```\n *\n * @example Rendering a Rich Text field using a custom set of React components.\n *\n * ```jsx\n * <PrismicRichText\n * \tfield={document.data.content}\n * \tcomponents={{\n * \t\theading1: ({ children }) => <Heading>{children}</Heading>,\n * \t}}\n * />;\n * ```\n *\n * @param props - Props for the component.\n *\n * @returns The Rich Text field's content as React components.\n *\n * @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}\n * @see Learn about Rich Text serializers {@link https://prismic.io/docs/core-concepts/html-serializer}\n */\nexport function PrismicRichText<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>({\n\tlinkResolver,\n\tfield,\n\tfallback,\n\tcomponents,\n\texternalLinkComponent,\n\tinternalLinkComponent,\n\t...restProps\n}: PrismicRichTextProps<LinkResolverFunction>): JSX.Element | null {\n\treturn React.useMemo(() => {\n\t\tif (process.env.NODE_ENV === \"development\") {\n\t\t\tif (\"className\" in restProps) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicRichText] className cannot be passed to <PrismicRichText> since it renders an array without a wrapping component. For more details, see ${devMsg(\n\t\t\t\t\t\t\"classname-is-not-a-valid-prop\",\n\t\t\t\t\t)}.`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tif (prismic.isFilled.richText(field)) {\n\t\t\tconst serializer = prismicR.composeSerializers(\n\t\t\t\ttypeof components === \"object\"\n\t\t\t\t\t? prismicR.wrapMapSerializer(components)\n\t\t\t\t\t: components,\n\t\t\t\tcreateDefaultSerializer({\n\t\t\t\t\tlinkResolver,\n\t\t\t\t\tinternalLinkComponent,\n\t\t\t\t\texternalLinkComponent,\n\t\t\t\t}),\n\t\t\t);\n\n\t\t\t// The serializer is wrapped in a higher-order function\n\t\t\t// that automatically applies a key to React Elements\n\t\t\t// if one is not already given.\n\t\t\tconst serialized = prismicR.serialize<JSX.Element>(\n\t\t\t\tfield,\n\t\t\t\t(type, node, text, children, key) => {\n\t\t\t\t\tconst result = serializer(type, node, text, children, key);\n\n\t\t\t\t\tif (React.isValidElement(result) && result.key == null) {\n\t\t\t\t\t\treturn React.cloneElement(result, { key });\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t);\n\n\t\t\treturn <>{serialized}</>;\n\t\t} else {\n\t\t\treturn fallback != null ? <>{fallback}</> : null;\n\t\t}\n\t}, [\n\t\tfield,\n\t\tinternalLinkComponent,\n\t\texternalLinkComponent,\n\t\tcomponents,\n\t\tlinkResolver,\n\t\tfallback,\n\t]);\n}\n"],"names":["prismic.isFilled.richText"],"mappings":"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"}
1
+ {"version":3,"file":"PrismicRichText.js","sources":["../../../src/react-server/PrismicRichText.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as prismic from \"@prismicio/client\";\nimport * as prismicR from \"@prismicio/richtext\";\n\nimport { JSXFunctionSerializer, JSXMapSerializer } from \"../types\";\nimport { LinkProps, PrismicLink } from \"./PrismicLink\";\nimport { devMsg } from \"../lib/devMsg\";\n\n/**\n * Props for `<PrismicRichText>`.\n */\nexport type PrismicRichTextProps<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\t/**\n\t * The Prismic Rich Text field to render.\n\t */\n\tfield: prismic.RichTextField | null | undefined;\n\n\t/**\n\t * The Link Resolver used to resolve links.\n\t *\n\t * @remarks\n\t * If your app uses Route Resolvers when querying for your Prismic\n\t * repository's content, a Link Resolver does not need to be provided.\n\t * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction;\n\n\t/**\n\t * A map or function that maps a Rich Text block to a React component.\n\t *\n\t * @remarks\n\t * Prefer using a map serializer over the function serializer when possible.\n\t * The map serializer is simpler to maintain.\n\t * @example A map serializer.\n\t *\n\t * ```jsx\n\t * {\n\t * heading1: ({children}) => <Heading>{children}</Heading>\n\t * }\n\t * ```\n\t *\n\t * @example A function serializer.\n\t *\n\t * ```jsx\n\t * (type, node, content, children) => {\n\t * \tswitch (type) {\n\t * \t\tcase \"heading1\": {\n\t * \t\t\treturn <Heading>{children}</Heading>;\n\t * \t\t}\n\t * \t}\n\t * };\n\t * ```\n\t */\n\tcomponents?: JSXMapSerializer | JSXFunctionSerializer;\n\n\t/**\n\t * The React component rendered for links when the URL is internal.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The React component rendered for links when the URL is external.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` will be rendered.\n\t */\n\tfallback?: React.ReactNode;\n};\n\ntype CreateDefaultSerializerArgs<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any> = prismic.LinkResolverFunction,\n> = {\n\tlinkResolver: LinkResolverFunction | undefined;\n\tinternalLinkComponent?: React.ComponentType<LinkProps>;\n\texternalLinkComponent?: React.ComponentType<LinkProps>;\n};\n\nconst createDefaultSerializer = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>(\n\targs: CreateDefaultSerializerArgs<LinkResolverFunction>,\n): JSXFunctionSerializer =>\n\tprismicR.wrapMapSerializer({\n\t\theading1: ({ children, key }) => <h1 key={key}>{children}</h1>,\n\t\theading2: ({ children, key }) => <h2 key={key}>{children}</h2>,\n\t\theading3: ({ children, key }) => <h3 key={key}>{children}</h3>,\n\t\theading4: ({ children, key }) => <h4 key={key}>{children}</h4>,\n\t\theading5: ({ children, key }) => <h5 key={key}>{children}</h5>,\n\t\theading6: ({ children, key }) => <h6 key={key}>{children}</h6>,\n\t\tparagraph: ({ children, key }) => <p key={key}>{children}</p>,\n\t\tpreformatted: ({ node, key }) => <pre key={key}>{node.text}</pre>,\n\t\tstrong: ({ children, key }) => <strong key={key}>{children}</strong>,\n\t\tem: ({ children, key }) => <em key={key}>{children}</em>,\n\t\tlistItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\toListItem: ({ children, key }) => <li key={key}>{children}</li>,\n\t\tlist: ({ children, key }) => <ul key={key}>{children}</ul>,\n\t\toList: ({ children, key }) => <ol key={key}>{children}</ol>,\n\t\timage: ({ node, key }) => {\n\t\t\tconst img = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={node.url}\n\t\t\t\t\talt={node.alt ?? undefined}\n\t\t\t\t\tdata-copyright={node.copyright ? node.copyright : undefined}\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<p key={key} className=\"block-img\">\n\t\t\t\t\t{node.linkTo ? (\n\t\t\t\t\t\t<PrismicLink\n\t\t\t\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t\t\t\t\tfield={node.linkTo}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{img}\n\t\t\t\t\t\t</PrismicLink>\n\t\t\t\t\t) : (\n\t\t\t\t\t\timg\n\t\t\t\t\t)}\n\t\t\t\t</p>\n\t\t\t);\n\t\t},\n\t\tembed: ({ node, key }) => (\n\t\t\t<div\n\t\t\t\tkey={key}\n\t\t\t\tdata-oembed={node.oembed.embed_url}\n\t\t\t\tdata-oembed-type={node.oembed.type}\n\t\t\t\tdata-oembed-provider={node.oembed.provider_name}\n\t\t\t\tdangerouslySetInnerHTML={{ __html: node.oembed.html ?? \"\" }}\n\t\t\t/>\n\t\t),\n\t\thyperlink: ({ node, children, key }) => (\n\t\t\t<PrismicLink\n\t\t\t\tkey={key}\n\t\t\t\tfield={node.data}\n\t\t\t\tlinkResolver={args.linkResolver}\n\t\t\t\tinternalComponent={args.internalLinkComponent}\n\t\t\t\texternalComponent={args.externalLinkComponent}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</PrismicLink>\n\t\t),\n\t\tlabel: ({ node, children, key }) => (\n\t\t\t<span key={key} className={node.data.label}>\n\t\t\t\t{children}\n\t\t\t</span>\n\t\t),\n\t\tspan: ({ text, key }) => {\n\t\t\tconst result: React.ReactNode[] = [];\n\n\t\t\tlet i = 0;\n\t\t\tfor (const line of text.split(\"\\n\")) {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tresult.push(<br key={`${i}__break`} />);\n\t\t\t\t}\n\n\t\t\t\tresult.push(<React.Fragment key={`${i}__line`}>{line}</React.Fragment>);\n\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\treturn <React.Fragment key={key}>{result}</React.Fragment>;\n\t\t},\n\t});\n\n/**\n * React component that renders content from a Prismic Rich Text field. By\n * default, HTML elements are rendered for each piece of content. A `heading1`\n * block will render an `<h1>` HTML element, for example. Links will use\n * `<PrismicLink>` by default which can be customized using the\n * `internalLinkComponent` and `externalLinkComponent` props.\n *\n * To customize the components that are rendered, provide a map or function\n * serializer to the `components` prop.\n *\n * @remarks\n * This component returns a React fragment with no wrapping element around the\n * content. If you need a wrapper, add a component around `<PrismicRichText>`.\n * @example Rendering a Rich Text field using the default HTMl elements.\n *\n * ```jsx\n * <PrismicRichText field={document.data.content} />;\n * ```\n *\n * @example Rendering a Rich Text field using a custom set of React components.\n *\n * ```jsx\n * <PrismicRichText\n * \tfield={document.data.content}\n * \tcomponents={{\n * \t\theading1: ({ children }) => <Heading>{children}</Heading>,\n * \t}}\n * />;\n * ```\n *\n * @param props - Props for the component.\n *\n * @returns The Rich Text field's content as React components.\n *\n * @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}\n * @see Learn about Rich Text serializers {@link https://prismic.io/docs/core-concepts/html-serializer}\n */\nexport function PrismicRichText<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tLinkResolverFunction extends prismic.LinkResolverFunction<any>,\n>({\n\tlinkResolver,\n\tfield,\n\tfallback,\n\tcomponents,\n\texternalLinkComponent,\n\tinternalLinkComponent,\n\t...restProps\n}: PrismicRichTextProps<LinkResolverFunction>): JSX.Element | null {\n\treturn React.useMemo(() => {\n\t\tif (\n\t\t\ttypeof process !== \"undefined\" &&\n\t\t\tprocess.env.NODE_ENV === \"development\"\n\t\t) {\n\t\t\tif (\"className\" in restProps) {\n\t\t\t\tconsole.warn(\n\t\t\t\t\t`[PrismicRichText] className cannot be passed to <PrismicRichText> since it renders an array without a wrapping component. For more details, see ${devMsg(\n\t\t\t\t\t\t\"classname-is-not-a-valid-prop\",\n\t\t\t\t\t)}.`,\n\t\t\t\t\tfield,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tif (prismic.isFilled.richText(field)) {\n\t\t\tconst serializer = prismicR.composeSerializers(\n\t\t\t\ttypeof components === \"object\"\n\t\t\t\t\t? prismicR.wrapMapSerializer(components)\n\t\t\t\t\t: components,\n\t\t\t\tcreateDefaultSerializer({\n\t\t\t\t\tlinkResolver,\n\t\t\t\t\tinternalLinkComponent,\n\t\t\t\t\texternalLinkComponent,\n\t\t\t\t}),\n\t\t\t);\n\n\t\t\t// The serializer is wrapped in a higher-order function\n\t\t\t// that automatically applies a key to React Elements\n\t\t\t// if one is not already given.\n\t\t\tconst serialized = prismicR.serialize<JSX.Element>(\n\t\t\t\tfield,\n\t\t\t\t(type, node, text, children, key) => {\n\t\t\t\t\tconst result = serializer(type, node, text, children, key);\n\n\t\t\t\t\tif (React.isValidElement(result) && result.key == null) {\n\t\t\t\t\t\treturn React.cloneElement(result, { key });\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t);\n\n\t\t\treturn <>{serialized}</>;\n\t\t} else {\n\t\t\treturn fallback != null ? <>{fallback}</> : null;\n\t\t}\n\t}, [\n\t\tfield,\n\t\tinternalLinkComponent,\n\t\texternalLinkComponent,\n\t\tcomponents,\n\t\tlinkResolver,\n\t\tfallback,\n\t]);\n}\n"],"names":["prismic.isFilled.richText"],"mappings":"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"}