@prismicio/vue 5.3.0-canary.5d9ea4c → 5.3.0-canary.87748cc

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 (170) hide show
  1. package/dist/PrismicImage.vue.d.cts +30 -58
  2. package/dist/PrismicImage.vue.d.cts.map +1 -1
  3. package/dist/PrismicLink.vue.d.cts +65 -137
  4. package/dist/PrismicLink.vue.d.cts.map +1 -1
  5. package/dist/PrismicRichText/PrismicRichText.vue.d.cts +25 -53
  6. package/dist/PrismicRichText/PrismicRichText.vue.d.cts.map +1 -1
  7. package/dist/PrismicRichText/types.d.cts +18 -5
  8. package/dist/PrismicRichText/types.d.cts.map +1 -1
  9. package/dist/PrismicTable/PrismicTable.vue.d.cts +10 -10
  10. package/dist/PrismicTable/PrismicTable.vue.d.cts.map +1 -1
  11. package/dist/PrismicTable/types.d.cts +8 -8
  12. package/dist/PrismicTable/types.d.cts.map +1 -1
  13. package/dist/PrismicText.vue.d.cts +3 -13
  14. package/dist/PrismicText.vue.d.cts.map +1 -1
  15. package/dist/SliceZone/SliceZone.vue.d.cts +5 -24
  16. package/dist/SliceZone/SliceZone.vue.d.cts.map +1 -1
  17. package/dist/index.cjs +3 -10
  18. package/dist/index.d.cts +9 -13
  19. package/dist/index.d.ts +11 -15
  20. package/dist/index.js +3 -6
  21. package/dist/package.cjs +1 -1
  22. package/dist/package.cjs.map +1 -1
  23. package/dist/package.js +1 -1
  24. package/dist/package.js.map +1 -1
  25. package/dist/src/PrismicImage.cjs.map +1 -1
  26. package/dist/src/PrismicImage.js.map +1 -1
  27. package/dist/src/PrismicImage.vue.d.ts +26 -54
  28. package/dist/src/PrismicImage.vue.d.ts.map +1 -1
  29. package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.cjs +2 -4
  30. package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  31. package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.js +2 -4
  32. package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.js.map +1 -1
  33. package/dist/src/PrismicLink.cjs.map +1 -1
  34. package/dist/src/PrismicLink.js.map +1 -1
  35. package/dist/src/PrismicLink.vue.d.ts +61 -133
  36. package/dist/src/PrismicLink.vue.d.ts.map +1 -1
  37. package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.cjs +3 -6
  38. package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  39. package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.js +3 -6
  40. package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.js.map +1 -1
  41. package/dist/src/PrismicRichText/PrismicRichText.cjs.map +1 -1
  42. package/dist/src/PrismicRichText/PrismicRichText.js.map +1 -1
  43. package/dist/src/PrismicRichText/PrismicRichText.vue.d.ts +25 -53
  44. package/dist/src/PrismicRichText/PrismicRichText.vue.d.ts.map +1 -1
  45. package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs +41 -57
  46. package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  47. package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.js +42 -58
  48. package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.js.map +1 -1
  49. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.cjs.map +1 -1
  50. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.js.map +1 -1
  51. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs +53 -33
  52. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  53. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.js +54 -34
  54. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.js.map +1 -1
  55. package/dist/src/PrismicRichText/PrismicRichTextSerialize.cjs.map +1 -1
  56. package/dist/src/PrismicRichText/PrismicRichTextSerialize.js.map +1 -1
  57. package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs +9 -29
  58. package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  59. package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js +10 -30
  60. package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js.map +1 -1
  61. package/dist/src/PrismicRichText/types.d.ts +18 -5
  62. package/dist/src/PrismicRichText/types.d.ts.map +1 -1
  63. package/dist/src/PrismicTable/PrismicTable.cjs.map +1 -1
  64. package/dist/src/PrismicTable/PrismicTable.js.map +1 -1
  65. package/dist/src/PrismicTable/PrismicTable.vue.d.ts +13 -13
  66. package/dist/src/PrismicTable/PrismicTable.vue.d.ts.map +1 -1
  67. package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.cjs +47 -19
  68. package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  69. package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.js +48 -20
  70. package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  71. package/dist/src/PrismicTable/PrismicTableDefaultComponents.cjs +36 -18
  72. package/dist/src/PrismicTable/PrismicTableDefaultComponents.cjs.map +1 -1
  73. package/dist/src/PrismicTable/PrismicTableDefaultComponents.js +36 -18
  74. package/dist/src/PrismicTable/PrismicTableDefaultComponents.js.map +1 -1
  75. package/dist/src/PrismicTable/PrismicTableRow.cjs.map +1 -1
  76. package/dist/src/PrismicTable/PrismicTableRow.js.map +1 -1
  77. package/dist/src/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.cjs +13 -10
  78. package/dist/src/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  79. package/dist/src/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.js +14 -11
  80. package/dist/src/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.js.map +1 -1
  81. package/dist/src/PrismicTable/types.d.ts +8 -8
  82. package/dist/src/PrismicTable/types.d.ts.map +1 -1
  83. package/dist/src/PrismicText.cjs.map +1 -1
  84. package/dist/src/PrismicText.js.map +1 -1
  85. package/dist/src/PrismicText.vue.d.ts +1 -11
  86. package/dist/src/PrismicText.vue.d.ts.map +1 -1
  87. package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.cjs +1 -12
  88. package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  89. package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.js +3 -14
  90. package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.js.map +1 -1
  91. package/dist/src/SliceZone/SliceZone.cjs.map +1 -1
  92. package/dist/src/SliceZone/SliceZone.js.map +1 -1
  93. package/dist/src/SliceZone/SliceZone.vue.d.ts +5 -24
  94. package/dist/src/SliceZone/SliceZone.vue.d.ts.map +1 -1
  95. package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.cjs +5 -17
  96. package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
  97. package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.js +6 -18
  98. package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.js.map +1 -1
  99. package/dist/src/types.cjs +9 -0
  100. package/dist/src/types.cjs.map +1 -0
  101. package/dist/src/types.d.ts +3 -352
  102. package/dist/src/types.d.ts.map +1 -1
  103. package/dist/src/types.js +8 -0
  104. package/dist/src/types.js.map +1 -0
  105. package/dist/types.d.cts +3 -352
  106. package/dist/types.d.cts.map +1 -1
  107. package/package.json +6 -5
  108. package/src/PrismicImage.vue +10 -27
  109. package/src/PrismicLink.vue +18 -43
  110. package/src/PrismicRichText/PrismicRichText.vue +68 -118
  111. package/src/PrismicRichText/PrismicRichTextDefaultComponent.vue +61 -19
  112. package/src/PrismicRichText/PrismicRichTextSerialize.vue +5 -30
  113. package/src/PrismicRichText/types.ts +33 -14
  114. package/src/PrismicTable/PrismicTable.vue +50 -23
  115. package/src/PrismicTable/PrismicTableDefaultComponents.ts +45 -20
  116. package/src/PrismicTable/PrismicTableRow.vue +17 -24
  117. package/src/PrismicTable/types.ts +28 -15
  118. package/src/PrismicText.vue +3 -18
  119. package/src/SliceZone/SliceZone.vue +12 -41
  120. package/src/index.ts +13 -21
  121. package/src/types.ts +30 -438
  122. package/dist/PrismicEmbed.vue.d.cts +0 -25
  123. package/dist/PrismicEmbed.vue.d.cts.map +0 -1
  124. package/dist/createPrismic.d.cts +0 -29
  125. package/dist/createPrismic.d.cts.map +0 -1
  126. package/dist/src/PrismicEmbed.cjs +0 -8
  127. package/dist/src/PrismicEmbed.cjs.map +0 -1
  128. package/dist/src/PrismicEmbed.js +0 -8
  129. package/dist/src/PrismicEmbed.js.map +0 -1
  130. package/dist/src/PrismicEmbed.vue.d.ts +0 -25
  131. package/dist/src/PrismicEmbed.vue.d.ts.map +0 -1
  132. package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.cjs +0 -42
  133. package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  134. package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.js +0 -42
  135. package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.js.map +0 -1
  136. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.cjs +0 -8
  137. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.cjs.map +0 -1
  138. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.js +0 -8
  139. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.js.map +0 -1
  140. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.cjs +0 -92
  141. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  142. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.js +0 -92
  143. package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.js.map +0 -1
  144. package/dist/src/createPrismic.cjs +0 -85
  145. package/dist/src/createPrismic.cjs.map +0 -1
  146. package/dist/src/createPrismic.d.ts +0 -29
  147. package/dist/src/createPrismic.d.ts.map +0 -1
  148. package/dist/src/createPrismic.js +0 -85
  149. package/dist/src/createPrismic.js.map +0 -1
  150. package/dist/src/lib/Wrapper.cjs +0 -8
  151. package/dist/src/lib/Wrapper.cjs.map +0 -1
  152. package/dist/src/lib/Wrapper.js +0 -8
  153. package/dist/src/lib/Wrapper.js.map +0 -1
  154. package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.cjs +0 -22
  155. package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  156. package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.js +0 -22
  157. package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.js.map +0 -1
  158. package/dist/src/usePrismic.cjs +0 -38
  159. package/dist/src/usePrismic.cjs.map +0 -1
  160. package/dist/src/usePrismic.d.ts +0 -36
  161. package/dist/src/usePrismic.d.ts.map +0 -1
  162. package/dist/src/usePrismic.js +0 -37
  163. package/dist/src/usePrismic.js.map +0 -1
  164. package/dist/usePrismic.d.cts +0 -36
  165. package/dist/usePrismic.d.cts.map +0 -1
  166. package/src/PrismicEmbed.vue +0 -42
  167. package/src/PrismicRichText/DeprecatedPrismicRichText.vue +0 -146
  168. package/src/createPrismic.ts +0 -154
  169. package/src/lib/Wrapper.vue +0 -22
  170. package/src/usePrismic.ts +0 -36
@@ -1,99 +1,71 @@
1
- import { VueRichTextSerializer } from "./types.js";
2
1
  import { ComponentOrTagName } from "../types.js";
2
+ import { VueRichTextSerializer } from "./types.js";
3
3
  import * as vue0 from "vue";
4
4
  import { PropType } from "vue";
5
- import { HTMLRichTextFunctionSerializer, HTMLRichTextMapSerializer, LinkResolverFunction, RichTextField } from "@prismicio/client";
5
+ import { LinkResolverFunction, RichTextField } from "@prismicio/client";
6
6
 
7
7
  //#region src/PrismicRichText/PrismicRichText.vue.d.ts
8
8
  /**
9
9
  * Props for `<PrismicRichText />`.
10
10
  */
11
11
  type PrismicRichTextProps = {
12
- /**
13
- * The Prismic rich text or title field to render.
14
- */
12
+ /** The Prismic rich text field to render. */
15
13
  field: RichTextField | null | undefined;
16
14
  /**
17
- * The value to be rendered when the field is empty. If a fallback is not
18
- * given, `null` (nothing) will be rendered.
15
+ * The link resolver used to resolve links.
16
+ *
17
+ * @remarks
18
+ * If your app uses route resolvers when querying for your Prismic
19
+ * repository's content, a link resolver does not need to be provided.
20
+ *
21
+ * @see Learn about link resolvers and route resolvers {@link https://prismic.io/docs/routes}
19
22
  */
20
- fallback?: ComponentOrTagName;
23
+ linkResolver?: LinkResolverFunction;
21
24
  /**
22
- * An object that maps a rich text block type to a Vue component.
25
+ * An object that maps a rich text block type to a Vue component or a shorthand definition.
23
26
  *
24
27
  * @example
25
28
  *
26
29
  * ```javascript
27
30
  * {
28
31
  * heading1: Heading1,
32
+ * paragraph: { class: 'prose'},
33
+ * strong: { as: 'em', class: 'font-bold' },
29
34
  * }
30
35
  * ```
31
36
  */
32
37
  components?: VueRichTextSerializer;
33
38
  /**
34
- * A link resolver function used to resolve link when not using the route
35
- * resolver parameter with `@prismicio/client`.
36
- *
37
- * @defaultValue The link resolver provided to `@prismicio/vue` plugin if configured.
38
- *
39
- * @see Link resolver documentation {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver#link-resolver}
40
- */
41
- linkResolver?: LinkResolverFunction;
42
- /**
43
- * An HTML serializer to customize the way rich text fields are rendered.
44
- *
45
- * @deprecated Use `components` instead.
46
- *
47
- * @defaultValue The HTML serializer provided to `@prismicio/vue` plugin if configured.
48
- *
49
- * @see HTML serializer documentation {@link https://prismic.io/docs/core-concepts/html-serializer}
50
- */
51
- serializer?: HTMLRichTextFunctionSerializer | HTMLRichTextMapSerializer;
52
- /**
53
- * An HTML tag name or a component used to wrap the output. `<PrismicText />`
54
- * is not wrapped by default.
55
- *
56
- * @defaultValue `"template"` (no wrapper)
39
+ * The value to be rendered when the field is empty. If a fallback is not
40
+ * given, `null` will be rendered.
57
41
  */
58
- wrapper?: ComponentOrTagName;
42
+ fallback?: ComponentOrTagName;
59
43
  };
60
44
  declare const __VLS_export: vue0.DefineComponent<vue0.ExtractPropTypes<{
61
45
  field: {
62
46
  type: PropType<PrismicRichTextProps["field"]>;
63
47
  };
64
- fallback: {
65
- type: PropType<PrismicRichTextProps["fallback"]>;
66
- };
67
- components: {
68
- type: PropType<PrismicRichTextProps["components"]>;
69
- };
70
48
  linkResolver: {
71
49
  type: PropType<PrismicRichTextProps["linkResolver"]>;
72
50
  };
73
- serializer: {
74
- type: PropType<PrismicRichTextProps["serializer"]>;
51
+ components: {
52
+ type: PropType<PrismicRichTextProps["components"]>;
75
53
  };
76
- wrapper: {
77
- type: PropType<PrismicRichTextProps["wrapper"]>;
54
+ fallback: {
55
+ type: PropType<PrismicRichTextProps["fallback"]>;
78
56
  };
79
57
  }>, {}, {}, {}, {}, vue0.ComponentOptionsMixin, vue0.ComponentOptionsMixin, {}, string, vue0.PublicProps, Readonly<vue0.ExtractPropTypes<{
80
58
  field: {
81
59
  type: PropType<PrismicRichTextProps["field"]>;
82
60
  };
83
- fallback: {
84
- type: PropType<PrismicRichTextProps["fallback"]>;
85
- };
86
- components: {
87
- type: PropType<PrismicRichTextProps["components"]>;
88
- };
89
61
  linkResolver: {
90
62
  type: PropType<PrismicRichTextProps["linkResolver"]>;
91
63
  };
92
- serializer: {
93
- type: PropType<PrismicRichTextProps["serializer"]>;
64
+ components: {
65
+ type: PropType<PrismicRichTextProps["components"]>;
94
66
  };
95
- wrapper: {
96
- type: PropType<PrismicRichTextProps["wrapper"]>;
67
+ fallback: {
68
+ type: PropType<PrismicRichTextProps["fallback"]>;
97
69
  };
98
70
  }>> & Readonly<{}>, {}, {}, {}, {}, string, vue0.ComponentProvideOptions, true, {}, any>;
99
71
  declare const _default: typeof __VLS_export;
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichText.vue.d.ts","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":[],"mappings":";;;;;;;;;;AAkNY,KAAA,oBAAA,GAAoB;EAIxB;;;EA6BQ,KAAA,EA7BR,aA6BQ,GAAA,IAAA,GAAA,SAAA;EAYF;;;;EA0KR,QAAA,CAAA,EA7MM,kBAsOV;EAtBmC;;;;;;;;;;;EAiBC,UAAA,CAAA,EApNxB,qBAoNwB;EAAQ;;;;;;;;EATnB,YAAA,CAAA,EAjMX,oBAiMW;EAAT;;;;;;;;;eArLJ,iCAAiC;;;;AA0K7B;;;YAlKP;;cAkKL,mBAAY,gBAoB4B,IAAA,CApB5B;;UAGU,SAAS;;;UAGC,SACnC;;;UAIe,SAAS;;;UAGP,SAAS;;;UAGC,SAAS;;;UAGD,SACnC;;oBArBe,IAAA,CAAA,qBAAA,qEAoB4B,IAAA,CAAA;;UAjBlB,SAAS;;;UAGC,SACnC;;;UAIe,SAAS;;;UAGP,SAAS;;;UAGC,SAAS;;;UAGD,SACnC;;;cArBe,iBA0BU"}
1
+ {"version":3,"file":"PrismicRichText.vue.d.ts","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":[],"mappings":";;;;;;;;;;AA6JY,KAAA,oBAAA,GAAoB;EAExB;EAWQ,KAAA,EAXR,aAWQ,GAAA,IAAA,GAAA,SAAA;EAeF;;;AAOb;;;;;;EAwHiB,YAAA,CAAA,EA9IF,oBA8IE;EAIf;;;;;;;;;;;;;EADmC,UAAA,CAAA,EAlIxB,qBAkIwB;EAAQ;;;;UAZ5B,CAAA,EAhHN,kBAgHM;CAAA;AAAA,cAAZ,YAkBsB,OAlBV,eAkBsB,CANM,IAAA,CAZ5B,gBAkBsB,CAAA;;UAfZ,SAAS;;;UAGjB,SAAS;;;UAGX,SAAS;;;UAGW,SACnC;;oBAbe,IAAA,CAAA,qBAAA,qEAY4B,IAAA,CAAA;;UATlB,SAAS;;;UAGjB,SAAS;;;UAGX,SAAS;;;UAGW,SACnC;;;cAbe,iBAkBU"}
@@ -1,11 +1,8 @@
1
- const require_Wrapper = require('../lib/Wrapper.cjs');
2
- const require_usePrismic = require('../usePrismic.cjs');
3
- const require_DeprecatedPrismicRichText = require('./DeprecatedPrismicRichText.cjs');
1
+ const require_types = require('../types.cjs');
2
+ const require_PrismicRichTextDefaultComponent = require('./PrismicRichTextDefaultComponent.cjs');
4
3
  const require_PrismicRichTextSerialize = require('./PrismicRichTextSerialize.cjs');
5
4
  let vue = require("vue");
6
- let __prismicio_client = require("@prismicio/client");
7
5
  let __prismicio_client_richtext = require("@prismicio/client/richtext");
8
- let esm_env = require("esm-env");
9
6
 
10
7
  //#region src/PrismicRichText/PrismicRichText.vue?vue&type=script&setup=true&lang.ts
11
8
  var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -13,15 +10,9 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
13
10
  __name: "PrismicRichText",
14
11
  props: {
15
12
  field: { type: Array },
16
- fallback: { type: [
17
- String,
18
- Object,
19
- Function
20
- ] },
21
- components: { type: Object },
22
13
  linkResolver: { type: Function },
23
- serializer: { type: [Object, Function] },
24
- wrapper: { type: [
14
+ components: { type: Object },
15
+ fallback: { type: [
25
16
  String,
26
17
  Object,
27
18
  Function
@@ -29,56 +20,49 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
29
20
  },
30
21
  setup(__props) {
31
22
  const props = __props;
32
- const { options } = require_usePrismic.usePrismic();
33
- const resolvedComponents = (0, vue.computed)(() => {
34
- return props.components || options.components?.richTextComponents;
35
- });
36
- const resolvedLinkResolver = (0, vue.computed)(() => {
37
- return props.linkResolver || options.linkResolver;
38
- });
39
23
  const children = (0, vue.computed)(() => {
40
24
  return (0, __prismicio_client_richtext.asTree)(props.field || []).children;
41
25
  });
42
- const isModern = (0, vue.computed)(() => {
43
- if (props.components) return true;
44
- if (props.serializer) return false;
45
- if (options.components?.richTextComponents) return true;
46
- if (options.richTextSerializer) return false;
47
- return true;
48
- });
49
- if (esm_env.DEV) (0, vue.watchEffect)(() => {
50
- if (props.components && props.serializer) console.warn(`[PrismicRichText] Only one of "components" or "serializer" (deprecated) props can be provided. You can resolve this warning by removing either the "components" or "serializer" prop. "components" will be used in this case.`);
26
+ function getInternalComponent(type) {
27
+ const maybeComponentOrShorthand = props.components?.[type];
28
+ if (require_types.isVueComponent(maybeComponentOrShorthand)) return { is: maybeComponentOrShorthand };
29
+ return {
30
+ is: require_PrismicRichTextDefaultComponent.default,
31
+ props: {
32
+ linkResolver: props.linkResolver,
33
+ shorthand: maybeComponentOrShorthand
34
+ }
35
+ };
36
+ }
37
+ const internalComponents = (0, vue.computed)(() => {
38
+ return {
39
+ heading1: getInternalComponent("heading1"),
40
+ heading2: getInternalComponent("heading2"),
41
+ heading3: getInternalComponent("heading3"),
42
+ heading4: getInternalComponent("heading4"),
43
+ heading5: getInternalComponent("heading5"),
44
+ heading6: getInternalComponent("heading6"),
45
+ paragraph: getInternalComponent("paragraph"),
46
+ preformatted: getInternalComponent("preformatted"),
47
+ strong: getInternalComponent("strong"),
48
+ em: getInternalComponent("em"),
49
+ "list-item": getInternalComponent("listItem"),
50
+ "o-list-item": getInternalComponent("oListItem"),
51
+ "group-list-item": getInternalComponent("list"),
52
+ "group-o-list-item": getInternalComponent("oList"),
53
+ image: getInternalComponent("image"),
54
+ embed: getInternalComponent("embed"),
55
+ hyperlink: getInternalComponent("hyperlink"),
56
+ label: getInternalComponent("label"),
57
+ span: getInternalComponent("span")
58
+ };
51
59
  });
52
60
  return (_ctx, _cache) => {
53
- return isModern.value && ((0, vue.unref)(__prismicio_client.isFilled).richText(__props.field) || __props.fallback) ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_Wrapper.default, {
61
+ return children.value.length ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicRichTextSerialize.default, {
54
62
  key: 0,
55
- wrapper: __props.wrapper
56
- }, {
57
- default: (0, vue.withCtx)(() => [children.value.length ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicRichTextSerialize.default, {
58
- key: 0,
59
- children: children.value,
60
- components: resolvedComponents.value,
61
- "link-resolver": resolvedLinkResolver.value
62
- }, null, 8, [
63
- "children",
64
- "components",
65
- "link-resolver"
66
- ])) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(__props.fallback), { key: 1 }))]),
67
- _: 1
68
- }, 8, ["wrapper"])) : !isModern.value ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_DeprecatedPrismicRichText.default, {
69
- key: 1,
70
- field: __props.field,
71
- fallback: typeof __props.fallback === "string" ? __props.fallback : void 0,
72
- "link-resolver": __props.linkResolver,
73
- serializer: __props.serializer,
74
- wrapper: __props.wrapper
75
- }, null, 8, [
76
- "field",
77
- "fallback",
78
- "link-resolver",
79
- "serializer",
80
- "wrapper"
81
- ])) : (0, vue.createCommentVNode)("v-if", true);
63
+ children: children.value,
64
+ "internal-components": internalComponents.value
65
+ }, null, 8, ["children", "internal-components"])) : __props.fallback ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(__props.fallback), { key: 1 })) : (0, vue.createCommentVNode)("v-if", true);
82
66
  };
83
67
  }
84
68
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n\ttype HTMLRichTextFunctionSerializer,\n\ttype HTMLRichTextMapSerializer,\n\ttype LinkResolverFunction,\n\ttype RichTextField,\n\tisFilled,\n} from \"@prismicio/client\"\nimport { asTree } from \"@prismicio/client/richtext\"\nimport { DEV } from \"esm-env\"\nimport type { PropType } from \"vue\"\nimport { computed, watchEffect } from \"vue\"\n\nimport Wrapper from \"../lib/Wrapper.vue\"\n\nimport type { ComponentOrTagName } from \"../types\"\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport { usePrismic } from \"../usePrismic\"\n\nimport DeprecatedPrismicRichText from \"./DeprecatedPrismicRichText.vue\"\nimport PrismicRichTextSerialize from \"./PrismicRichTextSerialize.vue\"\n\n/**\n * Props for `<PrismicRichText />`.\n */\nexport type PrismicRichTextProps = {\n\t/**\n\t * The Prismic rich text or title field to render.\n\t */\n\tfield: RichTextField | null | undefined\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` (nothing) will be rendered.\n\t */\n\tfallback?: ComponentOrTagName\n\n\t/**\n\t * An object that maps a rich text block type to a Vue component.\n\t *\n\t * @example\n\t *\n\t * ```javascript\n\t * {\n\t * heading1: Heading1,\n\t * }\n\t * ```\n\t */\n\tcomponents?: VueRichTextSerializer\n\n\t/**\n\t * A link resolver function used to resolve link when not using the route\n\t * resolver parameter with `@prismicio/client`.\n\t *\n\t * @defaultValue The link resolver provided to `@prismicio/vue` plugin if configured.\n\t *\n\t * @see Link resolver documentation {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver#link-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * An HTML serializer to customize the way rich text fields are rendered.\n\t *\n\t * @deprecated Use `components` instead.\n\t *\n\t * @defaultValue The HTML serializer provided to `@prismicio/vue` plugin if configured.\n\t *\n\t * @see HTML serializer documentation {@link https://prismic.io/docs/core-concepts/html-serializer}\n\t */\n\t// TODO: Remove in v6\n\tserializer?: HTMLRichTextFunctionSerializer | HTMLRichTextMapSerializer\n\n\t/**\n\t * An HTML tag name or a component used to wrap the output. `<PrismicText />`\n\t * is not wrapped by default.\n\t *\n\t * @defaultValue `\"template\"` (no wrapper)\n\t */\n\twrapper?: ComponentOrTagName\n}\n\n// We're forced to declare props using the JavaScript syntax because `@vue/compiler-sfc`\n// has limitations for inferring types from complex objects.\nconst props = defineProps({\n\tfield: {\n\t\ttype: Array as unknown as PropType<PrismicRichTextProps[\"field\"]>,\n\t},\n\tfallback: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"fallback\"]\n\t\t>,\n\t},\n\tcomponents: {\n\t\ttype: Object as PropType<PrismicRichTextProps[\"components\"]>,\n\t},\n\tlinkResolver: {\n\t\ttype: Function as PropType<PrismicRichTextProps[\"linkResolver\"]>,\n\t},\n\tserializer: {\n\t\ttype: [Object, Function] as PropType<PrismicRichTextProps[\"serializer\"]>,\n\t},\n\twrapper: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"wrapper\"]\n\t\t>,\n\t},\n})\ndefineOptions({ name: \"PrismicRichText\" })\n\nconst { options } = usePrismic()\n\nconst resolvedComponents = computed(() => {\n\treturn props.components || options.components?.richTextComponents\n})\n\nconst resolvedLinkResolver = computed(() => {\n\treturn props.linkResolver || options.linkResolver\n})\n\nconst children = computed(() => {\n\treturn asTree(props.field || []).children\n})\n\nconst isModern = computed(() => {\n\t// Explicit components prop\n\tif (props.components) {\n\t\treturn true\n\t}\n\n\t// Explicit serializer prop\n\tif (props.serializer) {\n\t\treturn false\n\t}\n\n\t// Global components option\n\tif (options.components?.richTextComponents) {\n\t\treturn true\n\t}\n\n\t// Global serializer option\n\tif (options.richTextSerializer) {\n\t\treturn false\n\t}\n\n\t// Default to modern\n\treturn true\n})\n\nif (DEV) {\n\twatchEffect(() => {\n\t\t// TODO: Remove in v6\n\t\tif (props.components && props.serializer) {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicRichText] Only one of \"components\" or \"serializer\" (deprecated) props can be provided. You can resolve this warning by removing either the \"components\" or \"serializer\" prop. \"components\" will be used in this case.`,\n\t\t\t)\n\t\t}\n\t})\n}\n</script>\n\n<template>\n\t<Wrapper\n\t\tv-if=\"isModern && (isFilled.richText(field) || fallback)\"\n\t\t:wrapper=\"wrapper\"\n\t>\n\t\t<PrismicRichTextSerialize\n\t\t\tv-if=\"children.length\"\n\t\t\t:children=\"children\"\n\t\t\t:components=\"resolvedComponents\"\n\t\t\t:link-resolver=\"resolvedLinkResolver\"\n\t\t/>\n\t\t<component v-else :is=\"fallback\" />\n\t</Wrapper>\n\t<DeprecatedPrismicRichText\n\t\tv-else-if=\"!isModern\"\n\t\t:field=\"field\"\n\t\t:fallback=\"typeof fallback === 'string' ? fallback : undefined\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t:serializer=\"serializer\"\n\t\t:wrapper=\"wrapper\"\n\t/>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoFA,MAAM,QAAQ;EA0Bd,MAAM,EAAE,YAAY,+BAAW;EAE/B,MAAM,6CAAoC;AACzC,UAAO,MAAM,cAAc,QAAQ,YAAY;IAC/C;EAED,MAAM,+CAAsC;AAC3C,UAAO,MAAM,gBAAgB,QAAQ;IACrC;EAED,MAAM,mCAA0B;AAC/B,kDAAc,MAAM,SAAS,EAAE,CAAC,CAAC;IACjC;EAED,MAAM,mCAA0B;AAE/B,OAAI,MAAM,WACT,QAAO;AAIR,OAAI,MAAM,WACT,QAAO;AAIR,OAAI,QAAQ,YAAY,mBACvB,QAAO;AAIR,OAAI,QAAQ,mBACX,QAAO;AAIR,UAAO;IACP;AAED,MAAI,YACH,4BAAkB;AAEjB,OAAI,MAAM,cAAc,MAAM,WAC7B,SAAQ,KACP,gOACD;IAED;;UAMM,SAAA,yBAAa,4BAAQ,CAAC,SAAS,QAAA,MAAK,IAAK,QAAA,wDAUtC,yBAAA;;IATR,SAAS,QAAA;;oCAOR,CAJK,SAAA,MAAS,qDAId,0CAAA;;KAHA,UAAU,SAAA;KACV,YAAY,mBAAA;KACZ,iBAAe,qBAAA;;;;;uFAEM,QAAA,SAAQ,EAAA,EAAA,KAAA,GAAA,CAAA;;0BAGnB,SAAA,oDAMX,2CAAA;;IALA,OAAO,QAAA;IACP,UAAQ,OAAS,QAAA,aAAQ,WAAgB,QAAA,WAAW;IACpD,iBAAe,QAAA;IACf,YAAY,QAAA;IACZ,SAAS,QAAA"}
1
+ {"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type {\n\tLinkResolverFunction,\n\tRichTextField,\n\tRichTextNodeType,\n} from \"@prismicio/client\"\nimport { asTree } from \"@prismicio/client/richtext\"\nimport type { PropType } from \"vue\"\nimport { computed } from \"vue\"\n\nimport { type ComponentOrTagName, isVueComponent } from \"../types\"\nimport type {\n\tInternalVueRichTextComponent,\n\tVueRichTextSerializer,\n\tVueShorthand,\n} from \"./types\"\n\nimport PrismicRichTextDefaultComponent from \"./PrismicRichTextDefaultComponent.vue\"\nimport PrismicRichTextSerialize from \"./PrismicRichTextSerialize.vue\"\n\n/**\n * Props for `<PrismicRichText />`.\n */\nexport type PrismicRichTextProps = {\n\t/** The Prismic rich text field to render. */\n\tfield: 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 *\n\t * @see Learn about link resolvers and route resolvers {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * An object that maps a rich text block type to a Vue component or a shorthand definition.\n\t *\n\t * @example\n\t *\n\t * ```javascript\n\t * {\n\t * heading1: Heading1,\n\t * paragraph: { class: 'prose'},\n\t * strong: { as: 'em', class: 'font-bold' },\n\t * }\n\t * ```\n\t */\n\tcomponents?: VueRichTextSerializer\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?: ComponentOrTagName\n}\n\n// We're forced to declare props using the JavaScript syntax because `@vue/compiler-sfc`\n// has limitations for inferring types from complex objects.\nconst props = defineProps({\n\tfield: {\n\t\ttype: Array as unknown as PropType<PrismicRichTextProps[\"field\"]>,\n\t},\n\tlinkResolver: {\n\t\ttype: Function as PropType<PrismicRichTextProps[\"linkResolver\"]>,\n\t},\n\tcomponents: {\n\t\ttype: Object as PropType<PrismicRichTextProps[\"components\"]>,\n\t},\n\tfallback: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"fallback\"]\n\t\t>,\n\t},\n})\ndefineOptions({ name: \"PrismicRichText\" })\n\nconst children = computed(() => {\n\treturn asTree(props.field || []).children\n})\n\nfunction getInternalComponent(type: keyof typeof RichTextNodeType) {\n\tconst maybeComponentOrShorthand = props.components?.[type]\n\n\tif (isVueComponent(maybeComponentOrShorthand)) {\n\t\treturn { is: maybeComponentOrShorthand }\n\t}\n\n\treturn {\n\t\tis: PrismicRichTextDefaultComponent,\n\t\tprops: {\n\t\t\tlinkResolver: props.linkResolver,\n\t\t\tshorthand: maybeComponentOrShorthand as VueShorthand,\n\t\t},\n\t}\n}\n\nconst internalComponents = computed<InternalVueRichTextComponent>(() => {\n\treturn {\n\t\theading1: getInternalComponent(\"heading1\"),\n\t\theading2: getInternalComponent(\"heading2\"),\n\t\theading3: getInternalComponent(\"heading3\"),\n\t\theading4: getInternalComponent(\"heading4\"),\n\t\theading5: getInternalComponent(\"heading5\"),\n\t\theading6: getInternalComponent(\"heading6\"),\n\t\tparagraph: getInternalComponent(\"paragraph\"),\n\t\tpreformatted: getInternalComponent(\"preformatted\"),\n\t\tstrong: getInternalComponent(\"strong\"),\n\t\tem: getInternalComponent(\"em\"),\n\t\t\"list-item\": getInternalComponent(\"listItem\"),\n\t\t\"o-list-item\": getInternalComponent(\"oListItem\"),\n\t\t\"group-list-item\": getInternalComponent(\"list\"),\n\t\t\"group-o-list-item\": getInternalComponent(\"oList\"),\n\t\timage: getInternalComponent(\"image\"),\n\t\tembed: getInternalComponent(\"embed\"),\n\t\thyperlink: getInternalComponent(\"hyperlink\"),\n\t\tlabel: getInternalComponent(\"label\"),\n\t\tspan: getInternalComponent(\"span\"),\n\t}\n})\n</script>\n\n<template>\n\t<PrismicRichTextSerialize\n\t\tv-if=\"children.length\"\n\t\t:children=\"children\"\n\t\t:internal-components=\"internalComponents\"\n\t/>\n\t<component v-else-if=\"fallback\" :is=\"fallback\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;EA8DA,MAAM,QAAQ;EAkBd,MAAM,mCAA0B;AAC/B,kDAAc,MAAM,SAAS,EAAE,CAAC,CAAC;IACjC;EAED,SAAS,qBAAqB,MAAqC;GAClE,MAAM,4BAA4B,MAAM,aAAa;AAErD,OAAI,6BAAe,0BAA0B,CAC5C,QAAO,EAAE,IAAI,2BAA0B;AAGxC,UAAO;IACN,IAAI;IACJ,OAAO;KACN,cAAc,MAAM;KACpB,WAAW;KACX;IACF;;EAGD,MAAM,6CAAkE;AACvE,UAAO;IACN,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,WAAW,qBAAqB,YAAY;IAC5C,cAAc,qBAAqB,eAAe;IAClD,QAAQ,qBAAqB,SAAS;IACtC,IAAI,qBAAqB,KAAK;IAC9B,aAAa,qBAAqB,WAAW;IAC7C,eAAe,qBAAqB,YAAY;IAChD,mBAAmB,qBAAqB,OAAO;IAC/C,qBAAqB,qBAAqB,QAAQ;IAClD,OAAO,qBAAqB,QAAQ;IACpC,OAAO,qBAAqB,QAAQ;IACpC,WAAW,qBAAqB,YAAY;IAC5C,OAAO,qBAAqB,QAAQ;IACpC,MAAM,qBAAqB,OAAO;IACnC;IACA;;UAKO,SAAA,MAAS,qDAGd,0CAAA;;IAFA,UAAU,SAAA;IACV,uBAAqB,mBAAA;uDAED,QAAA,wFAAe,QAAA,SAAQ,EAAA,EAAA,KAAA,GAAA,CAAA"}
@@ -1,11 +1,8 @@
1
- import Wrapper_default from "../lib/Wrapper.js";
2
- import { usePrismic } from "../usePrismic.js";
3
- import DeprecatedPrismicRichText_default from "./DeprecatedPrismicRichText.js";
1
+ import { isVueComponent } from "../types.js";
2
+ import PrismicRichTextDefaultComponent_default from "./PrismicRichTextDefaultComponent.js";
4
3
  import PrismicRichTextSerialize_default from "./PrismicRichTextSerialize.js";
5
- import { computed, createBlock, createCommentVNode, defineComponent, openBlock, resolveDynamicComponent, unref, watchEffect, withCtx } from "vue";
6
- import { isFilled } from "@prismicio/client";
4
+ import { computed, createBlock, createCommentVNode, defineComponent, openBlock, resolveDynamicComponent } from "vue";
7
5
  import { asTree } from "@prismicio/client/richtext";
8
- import { DEV } from "esm-env";
9
6
 
10
7
  //#region src/PrismicRichText/PrismicRichText.vue?vue&type=script&setup=true&lang.ts
11
8
  var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
@@ -13,15 +10,9 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
13
10
  __name: "PrismicRichText",
14
11
  props: {
15
12
  field: { type: Array },
16
- fallback: { type: [
17
- String,
18
- Object,
19
- Function
20
- ] },
21
- components: { type: Object },
22
13
  linkResolver: { type: Function },
23
- serializer: { type: [Object, Function] },
24
- wrapper: { type: [
14
+ components: { type: Object },
15
+ fallback: { type: [
25
16
  String,
26
17
  Object,
27
18
  Function
@@ -29,56 +20,49 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
29
20
  },
30
21
  setup(__props) {
31
22
  const props = __props;
32
- const { options } = usePrismic();
33
- const resolvedComponents = computed(() => {
34
- return props.components || options.components?.richTextComponents;
35
- });
36
- const resolvedLinkResolver = computed(() => {
37
- return props.linkResolver || options.linkResolver;
38
- });
39
23
  const children = computed(() => {
40
24
  return asTree(props.field || []).children;
41
25
  });
42
- const isModern = computed(() => {
43
- if (props.components) return true;
44
- if (props.serializer) return false;
45
- if (options.components?.richTextComponents) return true;
46
- if (options.richTextSerializer) return false;
47
- return true;
48
- });
49
- if (DEV) watchEffect(() => {
50
- if (props.components && props.serializer) console.warn(`[PrismicRichText] Only one of "components" or "serializer" (deprecated) props can be provided. You can resolve this warning by removing either the "components" or "serializer" prop. "components" will be used in this case.`);
26
+ function getInternalComponent(type) {
27
+ const maybeComponentOrShorthand = props.components?.[type];
28
+ if (isVueComponent(maybeComponentOrShorthand)) return { is: maybeComponentOrShorthand };
29
+ return {
30
+ is: PrismicRichTextDefaultComponent_default,
31
+ props: {
32
+ linkResolver: props.linkResolver,
33
+ shorthand: maybeComponentOrShorthand
34
+ }
35
+ };
36
+ }
37
+ const internalComponents = computed(() => {
38
+ return {
39
+ heading1: getInternalComponent("heading1"),
40
+ heading2: getInternalComponent("heading2"),
41
+ heading3: getInternalComponent("heading3"),
42
+ heading4: getInternalComponent("heading4"),
43
+ heading5: getInternalComponent("heading5"),
44
+ heading6: getInternalComponent("heading6"),
45
+ paragraph: getInternalComponent("paragraph"),
46
+ preformatted: getInternalComponent("preformatted"),
47
+ strong: getInternalComponent("strong"),
48
+ em: getInternalComponent("em"),
49
+ "list-item": getInternalComponent("listItem"),
50
+ "o-list-item": getInternalComponent("oListItem"),
51
+ "group-list-item": getInternalComponent("list"),
52
+ "group-o-list-item": getInternalComponent("oList"),
53
+ image: getInternalComponent("image"),
54
+ embed: getInternalComponent("embed"),
55
+ hyperlink: getInternalComponent("hyperlink"),
56
+ label: getInternalComponent("label"),
57
+ span: getInternalComponent("span")
58
+ };
51
59
  });
52
60
  return (_ctx, _cache) => {
53
- return isModern.value && (unref(isFilled).richText(__props.field) || __props.fallback) ? (openBlock(), createBlock(Wrapper_default, {
61
+ return children.value.length ? (openBlock(), createBlock(PrismicRichTextSerialize_default, {
54
62
  key: 0,
55
- wrapper: __props.wrapper
56
- }, {
57
- default: withCtx(() => [children.value.length ? (openBlock(), createBlock(PrismicRichTextSerialize_default, {
58
- key: 0,
59
- children: children.value,
60
- components: resolvedComponents.value,
61
- "link-resolver": resolvedLinkResolver.value
62
- }, null, 8, [
63
- "children",
64
- "components",
65
- "link-resolver"
66
- ])) : (openBlock(), createBlock(resolveDynamicComponent(__props.fallback), { key: 1 }))]),
67
- _: 1
68
- }, 8, ["wrapper"])) : !isModern.value ? (openBlock(), createBlock(DeprecatedPrismicRichText_default, {
69
- key: 1,
70
- field: __props.field,
71
- fallback: typeof __props.fallback === "string" ? __props.fallback : void 0,
72
- "link-resolver": __props.linkResolver,
73
- serializer: __props.serializer,
74
- wrapper: __props.wrapper
75
- }, null, 8, [
76
- "field",
77
- "fallback",
78
- "link-resolver",
79
- "serializer",
80
- "wrapper"
81
- ])) : createCommentVNode("v-if", true);
63
+ children: children.value,
64
+ "internal-components": internalComponents.value
65
+ }, null, 8, ["children", "internal-components"])) : __props.fallback ? (openBlock(), createBlock(resolveDynamicComponent(__props.fallback), { key: 1 })) : createCommentVNode("v-if", true);
82
66
  };
83
67
  }
84
68
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n\ttype HTMLRichTextFunctionSerializer,\n\ttype HTMLRichTextMapSerializer,\n\ttype LinkResolverFunction,\n\ttype RichTextField,\n\tisFilled,\n} from \"@prismicio/client\"\nimport { asTree } from \"@prismicio/client/richtext\"\nimport { DEV } from \"esm-env\"\nimport type { PropType } from \"vue\"\nimport { computed, watchEffect } from \"vue\"\n\nimport Wrapper from \"../lib/Wrapper.vue\"\n\nimport type { ComponentOrTagName } from \"../types\"\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport { usePrismic } from \"../usePrismic\"\n\nimport DeprecatedPrismicRichText from \"./DeprecatedPrismicRichText.vue\"\nimport PrismicRichTextSerialize from \"./PrismicRichTextSerialize.vue\"\n\n/**\n * Props for `<PrismicRichText />`.\n */\nexport type PrismicRichTextProps = {\n\t/**\n\t * The Prismic rich text or title field to render.\n\t */\n\tfield: RichTextField | null | undefined\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` (nothing) will be rendered.\n\t */\n\tfallback?: ComponentOrTagName\n\n\t/**\n\t * An object that maps a rich text block type to a Vue component.\n\t *\n\t * @example\n\t *\n\t * ```javascript\n\t * {\n\t * heading1: Heading1,\n\t * }\n\t * ```\n\t */\n\tcomponents?: VueRichTextSerializer\n\n\t/**\n\t * A link resolver function used to resolve link when not using the route\n\t * resolver parameter with `@prismicio/client`.\n\t *\n\t * @defaultValue The link resolver provided to `@prismicio/vue` plugin if configured.\n\t *\n\t * @see Link resolver documentation {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver#link-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * An HTML serializer to customize the way rich text fields are rendered.\n\t *\n\t * @deprecated Use `components` instead.\n\t *\n\t * @defaultValue The HTML serializer provided to `@prismicio/vue` plugin if configured.\n\t *\n\t * @see HTML serializer documentation {@link https://prismic.io/docs/core-concepts/html-serializer}\n\t */\n\t// TODO: Remove in v6\n\tserializer?: HTMLRichTextFunctionSerializer | HTMLRichTextMapSerializer\n\n\t/**\n\t * An HTML tag name or a component used to wrap the output. `<PrismicText />`\n\t * is not wrapped by default.\n\t *\n\t * @defaultValue `\"template\"` (no wrapper)\n\t */\n\twrapper?: ComponentOrTagName\n}\n\n// We're forced to declare props using the JavaScript syntax because `@vue/compiler-sfc`\n// has limitations for inferring types from complex objects.\nconst props = defineProps({\n\tfield: {\n\t\ttype: Array as unknown as PropType<PrismicRichTextProps[\"field\"]>,\n\t},\n\tfallback: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"fallback\"]\n\t\t>,\n\t},\n\tcomponents: {\n\t\ttype: Object as PropType<PrismicRichTextProps[\"components\"]>,\n\t},\n\tlinkResolver: {\n\t\ttype: Function as PropType<PrismicRichTextProps[\"linkResolver\"]>,\n\t},\n\tserializer: {\n\t\ttype: [Object, Function] as PropType<PrismicRichTextProps[\"serializer\"]>,\n\t},\n\twrapper: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"wrapper\"]\n\t\t>,\n\t},\n})\ndefineOptions({ name: \"PrismicRichText\" })\n\nconst { options } = usePrismic()\n\nconst resolvedComponents = computed(() => {\n\treturn props.components || options.components?.richTextComponents\n})\n\nconst resolvedLinkResolver = computed(() => {\n\treturn props.linkResolver || options.linkResolver\n})\n\nconst children = computed(() => {\n\treturn asTree(props.field || []).children\n})\n\nconst isModern = computed(() => {\n\t// Explicit components prop\n\tif (props.components) {\n\t\treturn true\n\t}\n\n\t// Explicit serializer prop\n\tif (props.serializer) {\n\t\treturn false\n\t}\n\n\t// Global components option\n\tif (options.components?.richTextComponents) {\n\t\treturn true\n\t}\n\n\t// Global serializer option\n\tif (options.richTextSerializer) {\n\t\treturn false\n\t}\n\n\t// Default to modern\n\treturn true\n})\n\nif (DEV) {\n\twatchEffect(() => {\n\t\t// TODO: Remove in v6\n\t\tif (props.components && props.serializer) {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicRichText] Only one of \"components\" or \"serializer\" (deprecated) props can be provided. You can resolve this warning by removing either the \"components\" or \"serializer\" prop. \"components\" will be used in this case.`,\n\t\t\t)\n\t\t}\n\t})\n}\n</script>\n\n<template>\n\t<Wrapper\n\t\tv-if=\"isModern && (isFilled.richText(field) || fallback)\"\n\t\t:wrapper=\"wrapper\"\n\t>\n\t\t<PrismicRichTextSerialize\n\t\t\tv-if=\"children.length\"\n\t\t\t:children=\"children\"\n\t\t\t:components=\"resolvedComponents\"\n\t\t\t:link-resolver=\"resolvedLinkResolver\"\n\t\t/>\n\t\t<component v-else :is=\"fallback\" />\n\t</Wrapper>\n\t<DeprecatedPrismicRichText\n\t\tv-else-if=\"!isModern\"\n\t\t:field=\"field\"\n\t\t:fallback=\"typeof fallback === 'string' ? fallback : undefined\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t:serializer=\"serializer\"\n\t\t:wrapper=\"wrapper\"\n\t/>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoFA,MAAM,QAAQ;EA0Bd,MAAM,EAAE,YAAY,YAAW;EAE/B,MAAM,qBAAqB,eAAe;AACzC,UAAO,MAAM,cAAc,QAAQ,YAAY;IAC/C;EAED,MAAM,uBAAuB,eAAe;AAC3C,UAAO,MAAM,gBAAgB,QAAQ;IACrC;EAED,MAAM,WAAW,eAAe;AAC/B,UAAO,OAAO,MAAM,SAAS,EAAE,CAAC,CAAC;IACjC;EAED,MAAM,WAAW,eAAe;AAE/B,OAAI,MAAM,WACT,QAAO;AAIR,OAAI,MAAM,WACT,QAAO;AAIR,OAAI,QAAQ,YAAY,mBACvB,QAAO;AAIR,OAAI,QAAQ,mBACX,QAAO;AAIR,UAAO;IACP;AAED,MAAI,IACH,mBAAkB;AAEjB,OAAI,MAAM,cAAc,MAAM,WAC7B,SAAQ,KACP,gOACD;IAED;;UAMM,SAAA,UAAa,MAAA,SAAQ,CAAC,SAAS,QAAA,MAAK,IAAK,QAAA,0BADhD,YAWU,iBAAA;;IATR,SAAS,QAAA;;2BAOR,CAJK,SAAA,MAAS,uBADhB,YAKE,kCAAA;;KAHA,UAAU,SAAA;KACV,YAAY,mBAAA;KACZ,iBAAe,qBAAA;;;;;wBAEjB,YAAmC,wBAAZ,QAAA,SAAQ,EAAA,EAAA,KAAA,GAAA,CAAA;;0BAGnB,SAAA,sBADb,YAOE,mCAAA;;IALA,OAAO,QAAA;IACP,UAAQ,OAAS,QAAA,aAAQ,WAAgB,QAAA,WAAW;IACpD,iBAAe,QAAA;IACf,YAAY,QAAA;IACZ,SAAS,QAAA"}
1
+ {"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type {\n\tLinkResolverFunction,\n\tRichTextField,\n\tRichTextNodeType,\n} from \"@prismicio/client\"\nimport { asTree } from \"@prismicio/client/richtext\"\nimport type { PropType } from \"vue\"\nimport { computed } from \"vue\"\n\nimport { type ComponentOrTagName, isVueComponent } from \"../types\"\nimport type {\n\tInternalVueRichTextComponent,\n\tVueRichTextSerializer,\n\tVueShorthand,\n} from \"./types\"\n\nimport PrismicRichTextDefaultComponent from \"./PrismicRichTextDefaultComponent.vue\"\nimport PrismicRichTextSerialize from \"./PrismicRichTextSerialize.vue\"\n\n/**\n * Props for `<PrismicRichText />`.\n */\nexport type PrismicRichTextProps = {\n\t/** The Prismic rich text field to render. */\n\tfield: 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 *\n\t * @see Learn about link resolvers and route resolvers {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * An object that maps a rich text block type to a Vue component or a shorthand definition.\n\t *\n\t * @example\n\t *\n\t * ```javascript\n\t * {\n\t * heading1: Heading1,\n\t * paragraph: { class: 'prose'},\n\t * strong: { as: 'em', class: 'font-bold' },\n\t * }\n\t * ```\n\t */\n\tcomponents?: VueRichTextSerializer\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?: ComponentOrTagName\n}\n\n// We're forced to declare props using the JavaScript syntax because `@vue/compiler-sfc`\n// has limitations for inferring types from complex objects.\nconst props = defineProps({\n\tfield: {\n\t\ttype: Array as unknown as PropType<PrismicRichTextProps[\"field\"]>,\n\t},\n\tlinkResolver: {\n\t\ttype: Function as PropType<PrismicRichTextProps[\"linkResolver\"]>,\n\t},\n\tcomponents: {\n\t\ttype: Object as PropType<PrismicRichTextProps[\"components\"]>,\n\t},\n\tfallback: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"fallback\"]\n\t\t>,\n\t},\n})\ndefineOptions({ name: \"PrismicRichText\" })\n\nconst children = computed(() => {\n\treturn asTree(props.field || []).children\n})\n\nfunction getInternalComponent(type: keyof typeof RichTextNodeType) {\n\tconst maybeComponentOrShorthand = props.components?.[type]\n\n\tif (isVueComponent(maybeComponentOrShorthand)) {\n\t\treturn { is: maybeComponentOrShorthand }\n\t}\n\n\treturn {\n\t\tis: PrismicRichTextDefaultComponent,\n\t\tprops: {\n\t\t\tlinkResolver: props.linkResolver,\n\t\t\tshorthand: maybeComponentOrShorthand as VueShorthand,\n\t\t},\n\t}\n}\n\nconst internalComponents = computed<InternalVueRichTextComponent>(() => {\n\treturn {\n\t\theading1: getInternalComponent(\"heading1\"),\n\t\theading2: getInternalComponent(\"heading2\"),\n\t\theading3: getInternalComponent(\"heading3\"),\n\t\theading4: getInternalComponent(\"heading4\"),\n\t\theading5: getInternalComponent(\"heading5\"),\n\t\theading6: getInternalComponent(\"heading6\"),\n\t\tparagraph: getInternalComponent(\"paragraph\"),\n\t\tpreformatted: getInternalComponent(\"preformatted\"),\n\t\tstrong: getInternalComponent(\"strong\"),\n\t\tem: getInternalComponent(\"em\"),\n\t\t\"list-item\": getInternalComponent(\"listItem\"),\n\t\t\"o-list-item\": getInternalComponent(\"oListItem\"),\n\t\t\"group-list-item\": getInternalComponent(\"list\"),\n\t\t\"group-o-list-item\": getInternalComponent(\"oList\"),\n\t\timage: getInternalComponent(\"image\"),\n\t\tembed: getInternalComponent(\"embed\"),\n\t\thyperlink: getInternalComponent(\"hyperlink\"),\n\t\tlabel: getInternalComponent(\"label\"),\n\t\tspan: getInternalComponent(\"span\"),\n\t}\n})\n</script>\n\n<template>\n\t<PrismicRichTextSerialize\n\t\tv-if=\"children.length\"\n\t\t:children=\"children\"\n\t\t:internal-components=\"internalComponents\"\n\t/>\n\t<component v-else-if=\"fallback\" :is=\"fallback\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;EA8DA,MAAM,QAAQ;EAkBd,MAAM,WAAW,eAAe;AAC/B,UAAO,OAAO,MAAM,SAAS,EAAE,CAAC,CAAC;IACjC;EAED,SAAS,qBAAqB,MAAqC;GAClE,MAAM,4BAA4B,MAAM,aAAa;AAErD,OAAI,eAAe,0BAA0B,CAC5C,QAAO,EAAE,IAAI,2BAA0B;AAGxC,UAAO;IACN,IAAI;IACJ,OAAO;KACN,cAAc,MAAM;KACpB,WAAW;KACX;IACF;;EAGD,MAAM,qBAAqB,eAA6C;AACvE,UAAO;IACN,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,UAAU,qBAAqB,WAAW;IAC1C,WAAW,qBAAqB,YAAY;IAC5C,cAAc,qBAAqB,eAAe;IAClD,QAAQ,qBAAqB,SAAS;IACtC,IAAI,qBAAqB,KAAK;IAC9B,aAAa,qBAAqB,WAAW;IAC7C,eAAe,qBAAqB,YAAY;IAChD,mBAAmB,qBAAqB,OAAO;IAC/C,qBAAqB,qBAAqB,QAAQ;IAClD,OAAO,qBAAqB,QAAQ;IACpC,OAAO,qBAAqB,QAAQ;IACpC,WAAW,qBAAqB,YAAY;IAC5C,OAAO,qBAAqB,QAAQ;IACpC,MAAM,qBAAqB,OAAO;IACnC;IACA;;UAKO,SAAA,MAAS,uBADhB,YAIE,kCAAA;;IAFA,UAAU,SAAA;IACV,uBAAqB,mBAAA;uDAED,QAAA,yBAAtB,YAAiD,wBAAZ,QAAA,SAAQ,EAAA,EAAA,KAAA,GAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextDefaultComponent.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type { RichTextComponentProps } from \"./types\"\n\nimport PrismicEmbed from \"../PrismicEmbed.vue\"\nimport PrismicImage from \"../PrismicImage.vue\"\nimport PrismicLink from \"../PrismicLink.vue\"\n\nconst props = defineProps<\n\tRichTextComponentProps & {\n\t\tlinkResolver?: LinkResolverFunction\n\t}\n>()\ndefineOptions({ name: \"PrismicRichTextDefaultComponent\" })\n\nconst dir = computed(() => {\n\treturn \"direction\" in props.node && props.node.direction === \"rtl\"\n\t\t? \"rtl\"\n\t\t: undefined\n})\n</script>\n\n<template>\n\t<h1 v-if=\"node.type === 'heading1'\" :dir=\"dir\"><slot /></h1>\n\t<h2 v-else-if=\"node.type === 'heading2'\" :dir=\"dir\"><slot /></h2>\n\t<h3 v-else-if=\"node.type === 'heading3'\" :dir=\"dir\"><slot /></h3>\n\t<h4 v-else-if=\"node.type === 'heading4'\" :dir=\"dir\"><slot /></h4>\n\t<h5 v-else-if=\"node.type === 'heading5'\" :dir=\"dir\"><slot /></h5>\n\t<h6 v-else-if=\"node.type === 'heading6'\" :dir=\"dir\"><slot /></h6>\n\t<p v-else-if=\"node.type === 'paragraph'\" :dir=\"dir\"><slot /></p>\n\t<pre v-else-if=\"node.type === 'preformatted'\"><slot /></pre>\n\t<strong v-else-if=\"node.type === 'strong'\"><slot /></strong>\n\t<em v-else-if=\"node.type === 'em'\"><slot /></em>\n\t<li v-else-if=\"node.type === 'list-item'\" :dir=\"dir\"><slot /></li>\n\t<li v-else-if=\"node.type === 'o-list-item'\" :dir=\"dir\"><slot /></li>\n\t<ul v-else-if=\"node.type === 'group-list-item'\">\n\t\t<slot />\n\t</ul>\n\t<ol v-else-if=\"node.type === 'group-o-list-item'\">\n\t\t<slot />\n\t</ol>\n\t<p class=\"block-img\" v-else-if=\"node.type === 'image'\">\n\t\t<PrismicLink v-if=\"node.linkTo\" :field=\"node.linkTo\"\n\t\t\t><PrismicImage :field=\"node\"\n\t\t/></PrismicLink>\n\t\t<PrismicImage v-else :field=\"node\" />\n\t</p>\n\t<PrismicEmbed v-else-if=\"node.type === 'embed'\" :field=\"node.oembed\" />\n\t<PrismicLink\n\t\tv-else-if=\"node.type === 'hyperlink'\"\n\t\t:field=\"node.data\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t><slot\n\t/></PrismicLink>\n\t<span v-else-if=\"node.type === 'label'\" :class=\"node.data.label\"\n\t\t><slot\n\t/></span>\n\t<template v-else v-for=\"(line, index) in node.text.split('\\n')\" :key=\"line\"\n\t\t><br v-if=\"index > 0\" />{{ line }}</template\n\t>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"PrismicRichTextDefaultComponent.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type { RichTextComponentProps, VueShorthand } from \"./types\"\n\nimport PrismicImage from \"../PrismicImage.vue\"\nimport PrismicLink from \"../PrismicLink.vue\"\n\nconst props = defineProps<\n\tRichTextComponentProps & {\n\t\tlinkResolver?: LinkResolverFunction\n\t\tshorthand?: VueShorthand\n\t}\n>()\ndefineOptions({ name: \"PrismicRichTextDefaultComponent\" })\n\nconst as = computed(() => {\n\treturn props.node.type !== \"image\" && props.node.type !== \"span\"\n\t\t? props.shorthand?.as\n\t\t: undefined\n})\n\nconst attrs = computed(() => {\n\tconst { as, ...attrs } = props.shorthand ?? {}\n\n\treturn attrs\n})\n\nconst dir = computed(() => {\n\treturn \"direction\" in props.node && props.node.direction === \"rtl\"\n\t\t? \"rtl\"\n\t\t: undefined\n})\n</script>\n\n<template>\n\t<component v-if=\"as\" :is=\"as\" :dir=\"dir\" v-bind=\"attrs\"><slot /></component>\n\t<h1 v-else-if=\"node.type === 'heading1'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h1>\n\t<h2 v-else-if=\"node.type === 'heading2'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h2>\n\t<h3 v-else-if=\"node.type === 'heading3'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h3>\n\t<h4 v-else-if=\"node.type === 'heading4'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h4>\n\t<h5 v-else-if=\"node.type === 'heading5'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h5>\n\t<h6 v-else-if=\"node.type === 'heading6'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h6>\n\t<p v-else-if=\"node.type === 'paragraph'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</p>\n\t<pre v-else-if=\"node.type === 'preformatted'\" v-bind=\"attrs\"><slot /></pre>\n\t<strong v-else-if=\"node.type === 'strong'\" v-bind=\"attrs\"><slot /></strong>\n\t<em v-else-if=\"node.type === 'em'\" v-bind=\"attrs\"><slot /></em>\n\t<li v-else-if=\"node.type === 'list-item'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</li>\n\t<li v-else-if=\"node.type === 'o-list-item'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</li>\n\t<ul v-else-if=\"node.type === 'group-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ul>\n\t<ol v-else-if=\"node.type === 'group-o-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ol>\n\t<p class=\"block-img\" v-else-if=\"node.type === 'image'\">\n\t\t<PrismicLink v-if=\"node.linkTo\" :field=\"node.linkTo\"\n\t\t\t><PrismicImage :field=\"node\"\n\t\t/></PrismicLink>\n\t\t<PrismicImage v-else :field=\"node\" v-bind=\"attrs\" />\n\t</p>\n\t<div\n\t\tv-else-if=\"node.type === 'embed'\"\n\t\t:data-oembed=\"node.oembed.embed_url\"\n\t\t:data-oembed-type=\"node.oembed.type\"\n\t\t:data-oembed-provider=\"node.oembed.provider_name\"\n\t\tv-html=\"node.oembed.html\"\n\t\tv-bind=\"attrs\"\n\t/>\n\t<PrismicLink\n\t\tv-else-if=\"node.type === 'hyperlink'\"\n\t\t:field=\"node.data\"\n\t\t:link-resolver=\"linkResolver\"\n\t\tv-bind=\"attrs\"\n\t\t><slot\n\t/></PrismicLink>\n\t<span\n\t\tv-else-if=\"node.type === 'label'\"\n\t\t:class=\"node.data.label\"\n\t\tv-bind=\"attrs\"\n\t\t><slot\n\t/></span>\n\t<template v-else v-for=\"(line, index) in node.text.split('\\n')\" :key=\"line\"\n\t\t><br v-if=\"index > 0\" />{{ line }}</template\n\t>\n</template>\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextDefaultComponent.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type { RichTextComponentProps } from \"./types\"\n\nimport PrismicEmbed from \"../PrismicEmbed.vue\"\nimport PrismicImage from \"../PrismicImage.vue\"\nimport PrismicLink from \"../PrismicLink.vue\"\n\nconst props = defineProps<\n\tRichTextComponentProps & {\n\t\tlinkResolver?: LinkResolverFunction\n\t}\n>()\ndefineOptions({ name: \"PrismicRichTextDefaultComponent\" })\n\nconst dir = computed(() => {\n\treturn \"direction\" in props.node && props.node.direction === \"rtl\"\n\t\t? \"rtl\"\n\t\t: undefined\n})\n</script>\n\n<template>\n\t<h1 v-if=\"node.type === 'heading1'\" :dir=\"dir\"><slot /></h1>\n\t<h2 v-else-if=\"node.type === 'heading2'\" :dir=\"dir\"><slot /></h2>\n\t<h3 v-else-if=\"node.type === 'heading3'\" :dir=\"dir\"><slot /></h3>\n\t<h4 v-else-if=\"node.type === 'heading4'\" :dir=\"dir\"><slot /></h4>\n\t<h5 v-else-if=\"node.type === 'heading5'\" :dir=\"dir\"><slot /></h5>\n\t<h6 v-else-if=\"node.type === 'heading6'\" :dir=\"dir\"><slot /></h6>\n\t<p v-else-if=\"node.type === 'paragraph'\" :dir=\"dir\"><slot /></p>\n\t<pre v-else-if=\"node.type === 'preformatted'\"><slot /></pre>\n\t<strong v-else-if=\"node.type === 'strong'\"><slot /></strong>\n\t<em v-else-if=\"node.type === 'em'\"><slot /></em>\n\t<li v-else-if=\"node.type === 'list-item'\" :dir=\"dir\"><slot /></li>\n\t<li v-else-if=\"node.type === 'o-list-item'\" :dir=\"dir\"><slot /></li>\n\t<ul v-else-if=\"node.type === 'group-list-item'\">\n\t\t<slot />\n\t</ul>\n\t<ol v-else-if=\"node.type === 'group-o-list-item'\">\n\t\t<slot />\n\t</ol>\n\t<p class=\"block-img\" v-else-if=\"node.type === 'image'\">\n\t\t<PrismicLink v-if=\"node.linkTo\" :field=\"node.linkTo\"\n\t\t\t><PrismicImage :field=\"node\"\n\t\t/></PrismicLink>\n\t\t<PrismicImage v-else :field=\"node\" />\n\t</p>\n\t<PrismicEmbed v-else-if=\"node.type === 'embed'\" :field=\"node.oembed\" />\n\t<PrismicLink\n\t\tv-else-if=\"node.type === 'hyperlink'\"\n\t\t:field=\"node.data\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t><slot\n\t/></PrismicLink>\n\t<span v-else-if=\"node.type === 'label'\" :class=\"node.data.label\"\n\t\t><slot\n\t/></span>\n\t<template v-else v-for=\"(line, index) in node.text.split('\\n')\" :key=\"line\"\n\t\t><br v-if=\"index > 0\" />{{ line }}</template\n\t>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"PrismicRichTextDefaultComponent.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type { RichTextComponentProps, VueShorthand } from \"./types\"\n\nimport PrismicImage from \"../PrismicImage.vue\"\nimport PrismicLink from \"../PrismicLink.vue\"\n\nconst props = defineProps<\n\tRichTextComponentProps & {\n\t\tlinkResolver?: LinkResolverFunction\n\t\tshorthand?: VueShorthand\n\t}\n>()\ndefineOptions({ name: \"PrismicRichTextDefaultComponent\" })\n\nconst as = computed(() => {\n\treturn props.node.type !== \"image\" && props.node.type !== \"span\"\n\t\t? props.shorthand?.as\n\t\t: undefined\n})\n\nconst attrs = computed(() => {\n\tconst { as, ...attrs } = props.shorthand ?? {}\n\n\treturn attrs\n})\n\nconst dir = computed(() => {\n\treturn \"direction\" in props.node && props.node.direction === \"rtl\"\n\t\t? \"rtl\"\n\t\t: undefined\n})\n</script>\n\n<template>\n\t<component v-if=\"as\" :is=\"as\" :dir=\"dir\" v-bind=\"attrs\"><slot /></component>\n\t<h1 v-else-if=\"node.type === 'heading1'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h1>\n\t<h2 v-else-if=\"node.type === 'heading2'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h2>\n\t<h3 v-else-if=\"node.type === 'heading3'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h3>\n\t<h4 v-else-if=\"node.type === 'heading4'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h4>\n\t<h5 v-else-if=\"node.type === 'heading5'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h5>\n\t<h6 v-else-if=\"node.type === 'heading6'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</h6>\n\t<p v-else-if=\"node.type === 'paragraph'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</p>\n\t<pre v-else-if=\"node.type === 'preformatted'\" v-bind=\"attrs\"><slot /></pre>\n\t<strong v-else-if=\"node.type === 'strong'\" v-bind=\"attrs\"><slot /></strong>\n\t<em v-else-if=\"node.type === 'em'\" v-bind=\"attrs\"><slot /></em>\n\t<li v-else-if=\"node.type === 'list-item'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</li>\n\t<li v-else-if=\"node.type === 'o-list-item'\" :dir=\"dir\" v-bind=\"attrs\">\n\t\t<slot />\n\t</li>\n\t<ul v-else-if=\"node.type === 'group-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ul>\n\t<ol v-else-if=\"node.type === 'group-o-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ol>\n\t<p class=\"block-img\" v-else-if=\"node.type === 'image'\">\n\t\t<PrismicLink v-if=\"node.linkTo\" :field=\"node.linkTo\"\n\t\t\t><PrismicImage :field=\"node\"\n\t\t/></PrismicLink>\n\t\t<PrismicImage v-else :field=\"node\" v-bind=\"attrs\" />\n\t</p>\n\t<div\n\t\tv-else-if=\"node.type === 'embed'\"\n\t\t:data-oembed=\"node.oembed.embed_url\"\n\t\t:data-oembed-type=\"node.oembed.type\"\n\t\t:data-oembed-provider=\"node.oembed.provider_name\"\n\t\tv-html=\"node.oembed.html\"\n\t\tv-bind=\"attrs\"\n\t/>\n\t<PrismicLink\n\t\tv-else-if=\"node.type === 'hyperlink'\"\n\t\t:field=\"node.data\"\n\t\t:link-resolver=\"linkResolver\"\n\t\tv-bind=\"attrs\"\n\t\t><slot\n\t/></PrismicLink>\n\t<span\n\t\tv-else-if=\"node.type === 'label'\"\n\t\t:class=\"node.data.label\"\n\t\tv-bind=\"attrs\"\n\t\t><slot\n\t/></span>\n\t<template v-else v-for=\"(line, index) in node.text.split('\\n')\" :key=\"line\"\n\t\t><br v-if=\"index > 0\" />{{ line }}</template\n\t>\n</template>\n"],"mappings":""}