@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,4 +1,3 @@
1
- const require_PrismicEmbed = require('../PrismicEmbed.cjs');
2
1
  const require_PrismicImage = require('../PrismicImage.cjs');
3
2
  const require_PrismicLink = require('../PrismicLink.cjs');
4
3
  let vue = require("vue");
@@ -11,18 +10,19 @@ const _hoisted_4 = ["dir"];
11
10
  const _hoisted_5 = ["dir"];
12
11
  const _hoisted_6 = ["dir"];
13
12
  const _hoisted_7 = ["dir"];
14
- const _hoisted_8 = { key: 7 };
15
- const _hoisted_9 = { key: 8 };
16
- const _hoisted_10 = { key: 9 };
17
- const _hoisted_11 = ["dir"];
18
- const _hoisted_12 = ["dir"];
19
- const _hoisted_13 = { key: 12 };
20
- const _hoisted_14 = { key: 13 };
21
- const _hoisted_15 = {
22
- key: 14,
13
+ const _hoisted_8 = ["dir"];
14
+ const _hoisted_9 = ["dir"];
15
+ const _hoisted_10 = {
16
+ key: 15,
23
17
  class: "block-img"
24
18
  };
25
- const _hoisted_16 = { key: 0 };
19
+ const _hoisted_11 = [
20
+ "data-oembed",
21
+ "data-oembed-type",
22
+ "data-oembed-provider",
23
+ "innerHTML"
24
+ ];
25
+ const _hoisted_12 = { key: 0 };
26
26
  var PrismicRichTextDefaultComponent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ (0, vue.defineComponent)({
27
27
  name: "PrismicRichTextDefaultComponent",
28
28
  __name: "PrismicRichTextDefaultComponent",
@@ -34,65 +34,85 @@ var PrismicRichTextDefaultComponent_vue_vue_type_script_setup_true_lang_default
34
34
  linkResolver: {
35
35
  type: Function,
36
36
  required: false
37
+ },
38
+ shorthand: {
39
+ type: Object,
40
+ required: false
37
41
  }
38
42
  },
39
43
  setup(__props) {
40
44
  const props = __props;
45
+ const as = (0, vue.computed)(() => {
46
+ return props.node.type !== "image" && props.node.type !== "span" ? props.shorthand?.as : void 0;
47
+ });
48
+ const attrs = (0, vue.computed)(() => {
49
+ const { as: as$1, ...attrs$1 } = props.shorthand ?? {};
50
+ return attrs$1;
51
+ });
41
52
  const dir = (0, vue.computed)(() => {
42
53
  return "direction" in props.node && props.node.direction === "rtl" ? "rtl" : void 0;
43
54
  });
44
55
  return (_ctx, _cache) => {
45
- return __props.node.type === "heading1" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h1", {
56
+ return as.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(as.value), (0, vue.mergeProps)({
46
57
  key: 0,
47
58
  dir: dir.value
48
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_1)) : __props.node.type === "heading2" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h2", {
59
+ }, attrs.value), {
60
+ default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default")]),
61
+ _: 3
62
+ }, 16, ["dir"])) : __props.node.type === "heading1" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h1", (0, vue.mergeProps)({
49
63
  key: 1,
50
64
  dir: dir.value
51
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_2)) : __props.node.type === "heading3" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h3", {
65
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_1)) : __props.node.type === "heading2" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h2", (0, vue.mergeProps)({
52
66
  key: 2,
53
67
  dir: dir.value
54
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_3)) : __props.node.type === "heading4" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h4", {
68
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_2)) : __props.node.type === "heading3" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h3", (0, vue.mergeProps)({
55
69
  key: 3,
56
70
  dir: dir.value
57
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_4)) : __props.node.type === "heading5" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h5", {
71
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_3)) : __props.node.type === "heading4" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h4", (0, vue.mergeProps)({
58
72
  key: 4,
59
73
  dir: dir.value
60
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_5)) : __props.node.type === "heading6" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h6", {
74
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_4)) : __props.node.type === "heading5" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h5", (0, vue.mergeProps)({
61
75
  key: 5,
62
76
  dir: dir.value
63
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_6)) : __props.node.type === "paragraph" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", {
77
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_5)) : __props.node.type === "heading6" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h6", (0, vue.mergeProps)({
64
78
  key: 6,
65
79
  dir: dir.value
66
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_7)) : __props.node.type === "preformatted" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("pre", _hoisted_8, [(0, vue.renderSlot)(_ctx.$slots, "default")])) : __props.node.type === "strong" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("strong", _hoisted_9, [(0, vue.renderSlot)(_ctx.$slots, "default")])) : __props.node.type === "em" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("em", _hoisted_10, [(0, vue.renderSlot)(_ctx.$slots, "default")])) : __props.node.type === "list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("li", {
67
- key: 10,
80
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_6)) : __props.node.type === "paragraph" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", (0, vue.mergeProps)({
81
+ key: 7,
68
82
  dir: dir.value
69
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_11)) : __props.node.type === "o-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("li", {
83
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_7)) : __props.node.type === "preformatted" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("pre", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 8 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "strong" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("strong", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 9 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "em" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("em", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 10 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("li", (0, vue.mergeProps)({
70
84
  key: 11,
71
85
  dir: dir.value
72
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, _hoisted_12)) : __props.node.type === "group-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("ul", _hoisted_13, [(0, vue.renderSlot)(_ctx.$slots, "default")])) : __props.node.type === "group-o-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("ol", _hoisted_14, [(0, vue.renderSlot)(_ctx.$slots, "default")])) : __props.node.type === "image" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_15, [__props.node.linkTo ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicLink.default, {
86
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_8)) : __props.node.type === "o-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("li", (0, vue.mergeProps)({
87
+ key: 12,
88
+ dir: dir.value
89
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_9)) : __props.node.type === "group-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("ul", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 13 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "group-o-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("ol", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 14 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "image" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_10, [__props.node.linkTo ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicLink.default, {
73
90
  key: 0,
74
91
  field: __props.node.linkTo
75
92
  }, {
76
93
  default: (0, vue.withCtx)(() => [(0, vue.createVNode)(require_PrismicImage.default, { field: __props.node }, null, 8, ["field"])]),
77
94
  _: 1
78
- }, 8, ["field"])) : ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicImage.default, {
95
+ }, 8, ["field"])) : ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicImage.default, (0, vue.mergeProps)({
79
96
  key: 1,
80
97
  field: __props.node
81
- }, null, 8, ["field"]))])) : __props.node.type === "embed" ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicEmbed.default, {
82
- key: 15,
83
- field: __props.node.oembed
84
- }, null, 8, ["field"])) : __props.node.type === "hyperlink" ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicLink.default, {
98
+ }, attrs.value), null, 16, ["field"]))])) : __props.node.type === "embed" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", (0, vue.mergeProps)({
85
99
  key: 16,
100
+ "data-oembed": __props.node.oembed.embed_url,
101
+ "data-oembed-type": __props.node.oembed.type,
102
+ "data-oembed-provider": __props.node.oembed.provider_name,
103
+ innerHTML: __props.node.oembed.html
104
+ }, attrs.value), null, 16, _hoisted_11)) : __props.node.type === "hyperlink" ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicLink.default, (0, vue.mergeProps)({
105
+ key: 17,
86
106
  field: __props.node.data,
87
107
  "link-resolver": __props.linkResolver
88
- }, {
108
+ }, attrs.value), {
89
109
  default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default")]),
90
110
  _: 3
91
- }, 8, ["field", "link-resolver"])) : __props.node.type === "label" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
92
- key: 17,
93
- class: (0, vue.normalizeClass)(__props.node.data.label)
94
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 2)) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 18 }, (0, vue.renderList)(__props.node.text.split("\n"), (line, index) => {
95
- return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: line }, [index > 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("br", _hoisted_16)) : (0, vue.createCommentVNode)("v-if", true), (0, vue.createTextVNode)((0, vue.toDisplayString)(line), 1)], 64);
111
+ }, 16, ["field", "link-resolver"])) : __props.node.type === "label" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", (0, vue.mergeProps)({
112
+ key: 18,
113
+ class: __props.node.data.label
114
+ }, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 19 }, (0, vue.renderList)(__props.node.text.split("\n"), (line, index) => {
115
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: line }, [index > 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("br", _hoisted_12)) : (0, vue.createCommentVNode)("v-if", true), (0, vue.createTextVNode)((0, vue.toDisplayString)(line), 1)], 64);
96
116
  }), 128));
97
117
  };
98
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUA,MAAM,QAAQ;EAOd,MAAM,8BAAqB;AAC1B,UAAO,eAAe,MAAM,QAAQ,MAAM,KAAK,cAAc,QAC1D,QACA;IACH;;UAIU,QAAA,KAAK,SAAI,gEAAyC,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,qBACxC,QAAA,KAAK,SAAI,gEAAyC,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,gEAAyC,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,gEAAyC,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,gEAAyC,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,gEAAyC,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,qBAC9C,QAAA,KAAK,SAAI,iEAAyC,KAAA;;IAAtB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,qBAC5C,QAAA,KAAK,SAAI,oEAAmC,OAAA,YAAA,qBAAN,KAAA,QAAA,UAAA,MACnC,QAAA,KAAK,SAAI,8DAAgC,UAAA,YAAA,qBAAT,KAAA,QAAA,UAAA,MACpC,QAAA,KAAK,SAAI,0DAAwB,MAAA,aAAA,qBAAL,KAAA,QAAA,UAAA,MAC5B,QAAA,KAAK,SAAI,iEAA0C,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,sBAC9C,QAAA,KAAK,SAAI,mEAA4C,MAAA;;IAAvB,KAAK,IAAA;2BAAa,KAAA,QAAA,UAAA,sBAChD,QAAA,KAAK,SAAI,uEAEnB,MAAA,aAAA,qBADI,KAAA,QAAA,UAAA,MAEM,QAAA,KAAK,SAAI,yEAEnB,MAAA,aAAA,qBADI,KAAA,QAAA,UAAA,MAEuB,QAAA,KAAK,SAAI,6DAKrC,KALJ,aAKI,CAJgB,QAAA,KAAK,qDAER,6BAAA;;IAFiB,OAAO,QAAA,KAAK;;oCAE3C,sBAAA,8BAAA,EADe,OAAO,QAAA,MAAI,EAAA,MAAA,GAAA,CAAA,QAAA,CAAA;;mEAES,8BAAA;;IAAf,OAAO,QAAA;gCAEL,QAAA,KAAK,SAAI,sDAAqC,8BAAA;;IAAtB,OAAO,QAAA,KAAK;6BAEjD,QAAA,KAAK,SAAI,0DAIL,6BAAA;;IAHd,OAAO,QAAA,KAAK;IACZ,iBAAe,QAAA;;oCAEf,qBAAA,KAAA,QAAA,UAAA;;wCACe,QAAA,KAAK,SAAI,6DAEjB,QAAA;;IAFgC,+BAAO,QAAA,KAAK,KAAK,MAAK;2BAE7D,KAAA,QAAA,UAAA,gEAGD,cAAA,EAAA,KAAA,IAAA,sBAFwC,QAAA,KAAK,KAAK,MAAK,KAAA,GAA/B,MAAM,UAAK;kFAAkC,MAAI,EAAA,CAC9D,QAAK,uDAAQ,MAAA,YAAA,iGAAG,KAAI,EAAA,EAAA"}
1
+ {"version":3,"file":"PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.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":"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"}
@@ -1,7 +1,6 @@
1
- import PrismicEmbed_default from "../PrismicEmbed.js";
2
1
  import PrismicImage_default from "../PrismicImage.js";
3
2
  import PrismicLink_default from "../PrismicLink.js";
4
- import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, renderList, renderSlot, toDisplayString, withCtx } from "vue";
3
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createTextVNode, createVNode, defineComponent, mergeProps, normalizeProps, openBlock, renderList, renderSlot, resolveDynamicComponent, toDisplayString, withCtx } from "vue";
5
4
 
6
5
  //#region src/PrismicRichText/PrismicRichTextDefaultComponent.vue?vue&type=script&setup=true&lang.ts
7
6
  const _hoisted_1 = ["dir"];
@@ -11,18 +10,19 @@ const _hoisted_4 = ["dir"];
11
10
  const _hoisted_5 = ["dir"];
12
11
  const _hoisted_6 = ["dir"];
13
12
  const _hoisted_7 = ["dir"];
14
- const _hoisted_8 = { key: 7 };
15
- const _hoisted_9 = { key: 8 };
16
- const _hoisted_10 = { key: 9 };
17
- const _hoisted_11 = ["dir"];
18
- const _hoisted_12 = ["dir"];
19
- const _hoisted_13 = { key: 12 };
20
- const _hoisted_14 = { key: 13 };
21
- const _hoisted_15 = {
22
- key: 14,
13
+ const _hoisted_8 = ["dir"];
14
+ const _hoisted_9 = ["dir"];
15
+ const _hoisted_10 = {
16
+ key: 15,
23
17
  class: "block-img"
24
18
  };
25
- const _hoisted_16 = { key: 0 };
19
+ const _hoisted_11 = [
20
+ "data-oembed",
21
+ "data-oembed-type",
22
+ "data-oembed-provider",
23
+ "innerHTML"
24
+ ];
25
+ const _hoisted_12 = { key: 0 };
26
26
  var PrismicRichTextDefaultComponent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
27
27
  name: "PrismicRichTextDefaultComponent",
28
28
  __name: "PrismicRichTextDefaultComponent",
@@ -34,65 +34,85 @@ var PrismicRichTextDefaultComponent_vue_vue_type_script_setup_true_lang_default
34
34
  linkResolver: {
35
35
  type: Function,
36
36
  required: false
37
+ },
38
+ shorthand: {
39
+ type: Object,
40
+ required: false
37
41
  }
38
42
  },
39
43
  setup(__props) {
40
44
  const props = __props;
45
+ const as = computed(() => {
46
+ return props.node.type !== "image" && props.node.type !== "span" ? props.shorthand?.as : void 0;
47
+ });
48
+ const attrs = computed(() => {
49
+ const { as: as$1, ...attrs$1 } = props.shorthand ?? {};
50
+ return attrs$1;
51
+ });
41
52
  const dir = computed(() => {
42
53
  return "direction" in props.node && props.node.direction === "rtl" ? "rtl" : void 0;
43
54
  });
44
55
  return (_ctx, _cache) => {
45
- return __props.node.type === "heading1" ? (openBlock(), createElementBlock("h1", {
56
+ return as.value ? (openBlock(), createBlock(resolveDynamicComponent(as.value), mergeProps({
46
57
  key: 0,
47
58
  dir: dir.value
48
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_1)) : __props.node.type === "heading2" ? (openBlock(), createElementBlock("h2", {
59
+ }, attrs.value), {
60
+ default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
61
+ _: 3
62
+ }, 16, ["dir"])) : __props.node.type === "heading1" ? (openBlock(), createElementBlock("h1", mergeProps({
49
63
  key: 1,
50
64
  dir: dir.value
51
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_2)) : __props.node.type === "heading3" ? (openBlock(), createElementBlock("h3", {
65
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_1)) : __props.node.type === "heading2" ? (openBlock(), createElementBlock("h2", mergeProps({
52
66
  key: 2,
53
67
  dir: dir.value
54
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_3)) : __props.node.type === "heading4" ? (openBlock(), createElementBlock("h4", {
68
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_2)) : __props.node.type === "heading3" ? (openBlock(), createElementBlock("h3", mergeProps({
55
69
  key: 3,
56
70
  dir: dir.value
57
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_4)) : __props.node.type === "heading5" ? (openBlock(), createElementBlock("h5", {
71
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_3)) : __props.node.type === "heading4" ? (openBlock(), createElementBlock("h4", mergeProps({
58
72
  key: 4,
59
73
  dir: dir.value
60
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_5)) : __props.node.type === "heading6" ? (openBlock(), createElementBlock("h6", {
74
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_4)) : __props.node.type === "heading5" ? (openBlock(), createElementBlock("h5", mergeProps({
61
75
  key: 5,
62
76
  dir: dir.value
63
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_6)) : __props.node.type === "paragraph" ? (openBlock(), createElementBlock("p", {
77
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_5)) : __props.node.type === "heading6" ? (openBlock(), createElementBlock("h6", mergeProps({
64
78
  key: 6,
65
79
  dir: dir.value
66
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_7)) : __props.node.type === "preformatted" ? (openBlock(), createElementBlock("pre", _hoisted_8, [renderSlot(_ctx.$slots, "default")])) : __props.node.type === "strong" ? (openBlock(), createElementBlock("strong", _hoisted_9, [renderSlot(_ctx.$slots, "default")])) : __props.node.type === "em" ? (openBlock(), createElementBlock("em", _hoisted_10, [renderSlot(_ctx.$slots, "default")])) : __props.node.type === "list-item" ? (openBlock(), createElementBlock("li", {
67
- key: 10,
80
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_6)) : __props.node.type === "paragraph" ? (openBlock(), createElementBlock("p", mergeProps({
81
+ key: 7,
68
82
  dir: dir.value
69
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_11)) : __props.node.type === "o-list-item" ? (openBlock(), createElementBlock("li", {
83
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_7)) : __props.node.type === "preformatted" ? (openBlock(), createElementBlock("pre", normalizeProps(mergeProps({ key: 8 }, attrs.value)), [renderSlot(_ctx.$slots, "default")], 16)) : __props.node.type === "strong" ? (openBlock(), createElementBlock("strong", normalizeProps(mergeProps({ key: 9 }, attrs.value)), [renderSlot(_ctx.$slots, "default")], 16)) : __props.node.type === "em" ? (openBlock(), createElementBlock("em", normalizeProps(mergeProps({ key: 10 }, attrs.value)), [renderSlot(_ctx.$slots, "default")], 16)) : __props.node.type === "list-item" ? (openBlock(), createElementBlock("li", mergeProps({
70
84
  key: 11,
71
85
  dir: dir.value
72
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_12)) : __props.node.type === "group-list-item" ? (openBlock(), createElementBlock("ul", _hoisted_13, [renderSlot(_ctx.$slots, "default")])) : __props.node.type === "group-o-list-item" ? (openBlock(), createElementBlock("ol", _hoisted_14, [renderSlot(_ctx.$slots, "default")])) : __props.node.type === "image" ? (openBlock(), createElementBlock("p", _hoisted_15, [__props.node.linkTo ? (openBlock(), createBlock(PrismicLink_default, {
86
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_8)) : __props.node.type === "o-list-item" ? (openBlock(), createElementBlock("li", mergeProps({
87
+ key: 12,
88
+ dir: dir.value
89
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_9)) : __props.node.type === "group-list-item" ? (openBlock(), createElementBlock("ul", normalizeProps(mergeProps({ key: 13 }, attrs.value)), [renderSlot(_ctx.$slots, "default")], 16)) : __props.node.type === "group-o-list-item" ? (openBlock(), createElementBlock("ol", normalizeProps(mergeProps({ key: 14 }, attrs.value)), [renderSlot(_ctx.$slots, "default")], 16)) : __props.node.type === "image" ? (openBlock(), createElementBlock("p", _hoisted_10, [__props.node.linkTo ? (openBlock(), createBlock(PrismicLink_default, {
73
90
  key: 0,
74
91
  field: __props.node.linkTo
75
92
  }, {
76
93
  default: withCtx(() => [createVNode(PrismicImage_default, { field: __props.node }, null, 8, ["field"])]),
77
94
  _: 1
78
- }, 8, ["field"])) : (openBlock(), createBlock(PrismicImage_default, {
95
+ }, 8, ["field"])) : (openBlock(), createBlock(PrismicImage_default, mergeProps({
79
96
  key: 1,
80
97
  field: __props.node
81
- }, null, 8, ["field"]))])) : __props.node.type === "embed" ? (openBlock(), createBlock(PrismicEmbed_default, {
82
- key: 15,
83
- field: __props.node.oembed
84
- }, null, 8, ["field"])) : __props.node.type === "hyperlink" ? (openBlock(), createBlock(PrismicLink_default, {
98
+ }, attrs.value), null, 16, ["field"]))])) : __props.node.type === "embed" ? (openBlock(), createElementBlock("div", mergeProps({
85
99
  key: 16,
100
+ "data-oembed": __props.node.oembed.embed_url,
101
+ "data-oembed-type": __props.node.oembed.type,
102
+ "data-oembed-provider": __props.node.oembed.provider_name,
103
+ innerHTML: __props.node.oembed.html
104
+ }, attrs.value), null, 16, _hoisted_11)) : __props.node.type === "hyperlink" ? (openBlock(), createBlock(PrismicLink_default, mergeProps({
105
+ key: 17,
86
106
  field: __props.node.data,
87
107
  "link-resolver": __props.linkResolver
88
- }, {
108
+ }, attrs.value), {
89
109
  default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
90
110
  _: 3
91
- }, 8, ["field", "link-resolver"])) : __props.node.type === "label" ? (openBlock(), createElementBlock("span", {
92
- key: 17,
93
- class: normalizeClass(__props.node.data.label)
94
- }, [renderSlot(_ctx.$slots, "default")], 2)) : (openBlock(true), createElementBlock(Fragment, { key: 18 }, renderList(__props.node.text.split("\n"), (line, index) => {
95
- return openBlock(), createElementBlock(Fragment, { key: line }, [index > 0 ? (openBlock(), createElementBlock("br", _hoisted_16)) : createCommentVNode("v-if", true), createTextVNode(toDisplayString(line), 1)], 64);
111
+ }, 16, ["field", "link-resolver"])) : __props.node.type === "label" ? (openBlock(), createElementBlock("span", mergeProps({
112
+ key: 18,
113
+ class: __props.node.data.label
114
+ }, attrs.value), [renderSlot(_ctx.$slots, "default")], 16)) : (openBlock(true), createElementBlock(Fragment, { key: 19 }, renderList(__props.node.text.split("\n"), (line, index) => {
115
+ return openBlock(), createElementBlock(Fragment, { key: line }, [index > 0 ? (openBlock(), createElementBlock("br", _hoisted_12)) : createCommentVNode("v-if", true), createTextVNode(toDisplayString(line), 1)], 64);
96
116
  }), 128));
97
117
  };
98
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUA,MAAM,QAAQ;EAOd,MAAM,MAAM,eAAe;AAC1B,UAAO,eAAe,MAAM,QAAQ,MAAM,KAAK,cAAc,QAC1D,QACA;IACH;;UAIU,QAAA,KAAK,SAAI,2BAAnB,mBAA4D,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,qBACxC,QAAA,KAAK,SAAI,2BAAxB,mBAAiE,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,2BAAxB,mBAAiE,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,2BAAxB,mBAAiE,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,2BAAxB,mBAAiE,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,qBAC7C,QAAA,KAAK,SAAI,2BAAxB,mBAAiE,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,qBAC9C,QAAA,KAAK,SAAI,4BAAvB,mBAAgE,KAAA;;IAAtB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,qBAC5C,QAAA,KAAK,SAAI,+BAAzB,mBAA4D,OAAA,YAAA,CAAd,WAAQ,KAAA,QAAA,UAAA,MACnC,QAAA,KAAK,SAAI,yBAA5B,mBAA4D,UAAA,YAAA,CAAjB,WAAQ,KAAA,QAAA,UAAA,MACpC,QAAA,KAAK,SAAI,qBAAxB,mBAAgD,MAAA,aAAA,CAAb,WAAQ,KAAA,QAAA,UAAA,MAC5B,QAAA,KAAK,SAAI,4BAAxB,mBAAkE,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,sBAC9C,QAAA,KAAK,SAAI,8BAAxB,mBAAoE,MAAA;;IAAvB,KAAK,IAAA;OAAK,WAAQ,KAAA,QAAA,UAAA,sBAChD,QAAA,KAAK,SAAI,kCAAxB,mBAEK,MAAA,aAAA,CADJ,WAAQ,KAAA,QAAA,UAAA,MAEM,QAAA,KAAK,SAAI,oCAAxB,mBAEK,MAAA,aAAA,CADJ,WAAQ,KAAA,QAAA,UAAA,MAEuB,QAAA,KAAK,SAAI,wBAAzC,mBAKI,KALJ,aAKI,CAJgB,QAAA,KAAK,uBAAxB,YAEgB,qBAAA;;IAFiB,OAAO,QAAA,KAAK;;2BAE3C,CADA,YACA,sBAAA,EADe,OAAO,QAAA,MAAI,EAAA,MAAA,GAAA,CAAA,QAAA,CAAA;;qCAE5B,YAAqC,sBAAA;;IAAf,OAAO,QAAA;gCAEL,QAAA,KAAK,SAAI,wBAAlC,YAAuE,sBAAA;;IAAtB,OAAO,QAAA,KAAK;6BAEjD,QAAA,KAAK,SAAI,4BADrB,YAKgB,qBAAA;;IAHd,OAAO,QAAA,KAAK;IACZ,iBAAe,QAAA;;2BAEf,CADA,WACA,KAAA,QAAA,UAAA;;wCACe,QAAA,KAAK,SAAI,wBAA1B,mBAES,QAAA;;IAFgC,OAAK,eAAE,QAAA,KAAK,KAAK,MAAK;OAC7D,WACA,KAAA,QAAA,UAAA,2BACF,mBAEC,UAAA,EAAA,KAAA,IAAA,EAAA,WAFwC,QAAA,KAAK,KAAK,MAAK,KAAA,GAA/B,MAAM,UAAK;4DAAkC,MAAI,EAAA,CAC9D,QAAK,kBAAf,mBAAuB,MAAA,YAAA,sEAAG,KAAI,EAAA,EAAA"}
1
+ {"version":3,"file":"PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.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":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextSerialize.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport PrismicRichTextDefaultComponent from \"./PrismicRichTextDefaultComponent.vue\"\n\nconst CHILD_TYPE_RENAMES = {\n\t\"list-item\": \"listItem\",\n\t\"o-list-item\": \"oListItem\",\n\t\"group-list-item\": \"list\",\n\t\"group-o-list-item\": \"oList\",\n} as const\n\ntype PrismicRichTextSerializeProps = {\n\tcomponents?: VueRichTextSerializer\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tlinkResolver?: LinkResolverFunction\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n\nfunction getComponent(child: ReturnType<typeof asTree>[\"children\"][number]) {\n\treturn (\n\t\tprops.components?.[\n\t\t\tCHILD_TYPE_RENAMES[child.type as keyof typeof CHILD_TYPE_RENAMES] ||\n\t\t\t\t(child.type as keyof typeof props.components)\n\t\t] || PrismicRichTextDefaultComponent\n\t)\n}\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"getComponent(child)\"\n\t\t:node=\"child.node\"\n\t\t:link-resolver=\"\n\t\t\tgetComponent(child) === PrismicRichTextDefaultComponent\n\t\t\t\t? props.linkResolver\n\t\t\t\t: undefined\n\t\t\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:components=\"components\"\n\t\t\t:link-resolver=\"linkResolver\"\n\t/></component>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"PrismicRichTextSerialize.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { InternalVueRichTextComponent } from \"./types\"\n\ntype PrismicRichTextSerializeProps = {\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tinternalComponents: InternalVueRichTextComponent\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"internalComponents[child.type].is\"\n\t\t:node=\"child.node\"\n\t\tv-bind=\"internalComponents[child.type].props\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:internal-components=\"internalComponents\"\n\t/></component>\n</template>\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextSerialize.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport PrismicRichTextDefaultComponent from \"./PrismicRichTextDefaultComponent.vue\"\n\nconst CHILD_TYPE_RENAMES = {\n\t\"list-item\": \"listItem\",\n\t\"o-list-item\": \"oListItem\",\n\t\"group-list-item\": \"list\",\n\t\"group-o-list-item\": \"oList\",\n} as const\n\ntype PrismicRichTextSerializeProps = {\n\tcomponents?: VueRichTextSerializer\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tlinkResolver?: LinkResolverFunction\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n\nfunction getComponent(child: ReturnType<typeof asTree>[\"children\"][number]) {\n\treturn (\n\t\tprops.components?.[\n\t\t\tCHILD_TYPE_RENAMES[child.type as keyof typeof CHILD_TYPE_RENAMES] ||\n\t\t\t\t(child.type as keyof typeof props.components)\n\t\t] || PrismicRichTextDefaultComponent\n\t)\n}\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"getComponent(child)\"\n\t\t:node=\"child.node\"\n\t\t:link-resolver=\"\n\t\t\tgetComponent(child) === PrismicRichTextDefaultComponent\n\t\t\t\t? props.linkResolver\n\t\t\t\t: undefined\n\t\t\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:components=\"components\"\n\t\t\t:link-resolver=\"linkResolver\"\n\t/></component>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"PrismicRichTextSerialize.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { InternalVueRichTextComponent } from \"./types\"\n\ntype PrismicRichTextSerializeProps = {\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tinternalComponents: InternalVueRichTextComponent\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"internalComponents[child.type].is\"\n\t\t:node=\"child.node\"\n\t\tv-bind=\"internalComponents[child.type].props\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:internal-components=\"internalComponents\"\n\t/></component>\n</template>\n"],"mappings":""}
@@ -1,4 +1,3 @@
1
- const require_PrismicRichTextDefaultComponent = require('./PrismicRichTextDefaultComponent.cjs');
2
1
  let vue = require("vue");
3
2
 
4
3
  //#region src/PrismicRichText/PrismicRichTextSerialize.vue?vue&type=script&setup=true&lang.ts
@@ -6,50 +5,31 @@ var PrismicRichTextSerialize_vue_vue_type_script_setup_true_lang_default = /* @_
6
5
  name: "PrismicRichTextSerialize",
7
6
  __name: "PrismicRichTextSerialize",
8
7
  props: {
9
- components: {
10
- type: Object,
11
- required: false
12
- },
13
8
  children: {
14
9
  type: null,
15
10
  required: true
16
11
  },
17
- linkResolver: {
18
- type: Function,
19
- required: false
12
+ internalComponents: {
13
+ type: Object,
14
+ required: true
20
15
  }
21
16
  },
22
17
  setup(__props) {
23
- const CHILD_TYPE_RENAMES = {
24
- "list-item": "listItem",
25
- "o-list-item": "oListItem",
26
- "group-list-item": "list",
27
- "group-o-list-item": "oList"
28
- };
29
18
  const props = __props;
30
- function getComponent(child) {
31
- return props.components?.[CHILD_TYPE_RENAMES[child.type] || child.type] || require_PrismicRichTextDefaultComponent.default;
32
- }
33
19
  return (_ctx, _cache) => {
34
20
  const _component_PrismicRichTextSerialize = (0, vue.resolveComponent)("PrismicRichTextSerialize", true);
35
21
  return (0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(props.children, (child) => {
36
- return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(getComponent(child)), {
22
+ return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(__props.internalComponents[child.type].is), (0, vue.mergeProps)({
37
23
  key: JSON.stringify(child),
38
- node: child.node,
39
- "link-resolver": getComponent(child) === require_PrismicRichTextDefaultComponent.default ? props.linkResolver : void 0
40
- }, {
24
+ node: child.node
25
+ }, { ref_for: true }, __props.internalComponents[child.type].props), {
41
26
  default: (0, vue.withCtx)(() => [child.children.length ? ((0, vue.openBlock)(), (0, vue.createBlock)(_component_PrismicRichTextSerialize, {
42
27
  key: 0,
43
28
  children: child.children,
44
- components: __props.components,
45
- "link-resolver": __props.linkResolver
46
- }, null, 8, [
47
- "children",
48
- "components",
49
- "link-resolver"
50
- ])) : (0, vue.createCommentVNode)("v-if", true)]),
29
+ "internal-components": __props.internalComponents
30
+ }, null, 8, ["children", "internal-components"])) : (0, vue.createCommentVNode)("v-if", true)]),
51
31
  _: 2
52
- }, 1032, ["node", "link-resolver"]);
32
+ }, 1040, ["node"]);
53
33
  }), 128);
54
34
  };
55
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport PrismicRichTextDefaultComponent from \"./PrismicRichTextDefaultComponent.vue\"\n\nconst CHILD_TYPE_RENAMES = {\n\t\"list-item\": \"listItem\",\n\t\"o-list-item\": \"oListItem\",\n\t\"group-list-item\": \"list\",\n\t\"group-o-list-item\": \"oList\",\n} as const\n\ntype PrismicRichTextSerializeProps = {\n\tcomponents?: VueRichTextSerializer\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tlinkResolver?: LinkResolverFunction\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n\nfunction getComponent(child: ReturnType<typeof asTree>[\"children\"][number]) {\n\treturn (\n\t\tprops.components?.[\n\t\t\tCHILD_TYPE_RENAMES[child.type as keyof typeof CHILD_TYPE_RENAMES] ||\n\t\t\t\t(child.type as keyof typeof props.components)\n\t\t] || PrismicRichTextDefaultComponent\n\t)\n}\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"getComponent(child)\"\n\t\t:node=\"child.node\"\n\t\t:link-resolver=\"\n\t\t\tgetComponent(child) === PrismicRichTextDefaultComponent\n\t\t\t\t? props.linkResolver\n\t\t\t\t: undefined\n\t\t\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:components=\"components\"\n\t\t\t:link-resolver=\"linkResolver\"\n\t/></component>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAQA,MAAM,qBAAqB;GAC1B,aAAa;GACb,eAAe;GACf,mBAAmB;GACnB,qBAAqB;GACrB;EAQD,MAAM,QAAQ;EAGd,SAAS,aAAa,OAAsD;AAC3E,UACC,MAAM,aACL,mBAAmB,MAAM,SACvB,MAAM,SACJ;;;;gEAqBQ,cAAA,0BAdG,MAAM,WAAf,UAAK;uFAEP,aAAa,MAAK,CAAA,EAAA;KADtB,KAAK,KAAK,UAAU,MAAK;KAEzB,MAAM,MAAM;KACZ,iBAAmB,aAAa,MAAK,KAAM,kDAAsC,MAAM,eAAmB;;qCAU1G,CAJM,MAAM,SAAS,qDAIrB,qCAAA;;MAHC,UAAU,MAAM;MAChB,YAAY,QAAA;MACZ,iBAAe,QAAA"}
1
+ {"version":3,"file":"PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { InternalVueRichTextComponent } from \"./types\"\n\ntype PrismicRichTextSerializeProps = {\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tinternalComponents: InternalVueRichTextComponent\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"internalComponents[child.type].is\"\n\t\t:node=\"child.node\"\n\t\tv-bind=\"internalComponents[child.type].props\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:internal-components=\"internalComponents\"\n\t/></component>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;EAUA,MAAM,QAAQ;;;gEAeC,cAAA,0BATG,MAAM,WAAf,UAAK;uFAEP,QAAA,mBAAmB,MAAM,MAAM,GAAE,sBAOzB;KARZ,KAAK,KAAK,UAAU,MAAK;KAEzB,MAAM,MAAM;0BACL,QAAA,mBAAmB,MAAM,MAAM,MAAK,EAAA;qCAK3C,CAHM,MAAM,SAAS,qDAGrB,qCAAA;;MAFC,UAAU,MAAM;MAChB,uBAAqB,QAAA"}
@@ -1,55 +1,35 @@
1
- import PrismicRichTextDefaultComponent_default from "./PrismicRichTextDefaultComponent.js";
2
- import { Fragment, createBlock, createCommentVNode, createElementBlock, defineComponent, openBlock, renderList, resolveComponent, resolveDynamicComponent, withCtx } from "vue";
1
+ import { Fragment, createBlock, createCommentVNode, createElementBlock, defineComponent, mergeProps, openBlock, renderList, resolveComponent, resolveDynamicComponent, withCtx } from "vue";
3
2
 
4
3
  //#region src/PrismicRichText/PrismicRichTextSerialize.vue?vue&type=script&setup=true&lang.ts
5
4
  var PrismicRichTextSerialize_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
6
5
  name: "PrismicRichTextSerialize",
7
6
  __name: "PrismicRichTextSerialize",
8
7
  props: {
9
- components: {
10
- type: Object,
11
- required: false
12
- },
13
8
  children: {
14
9
  type: null,
15
10
  required: true
16
11
  },
17
- linkResolver: {
18
- type: Function,
19
- required: false
12
+ internalComponents: {
13
+ type: Object,
14
+ required: true
20
15
  }
21
16
  },
22
17
  setup(__props) {
23
- const CHILD_TYPE_RENAMES = {
24
- "list-item": "listItem",
25
- "o-list-item": "oListItem",
26
- "group-list-item": "list",
27
- "group-o-list-item": "oList"
28
- };
29
18
  const props = __props;
30
- function getComponent(child) {
31
- return props.components?.[CHILD_TYPE_RENAMES[child.type] || child.type] || PrismicRichTextDefaultComponent_default;
32
- }
33
19
  return (_ctx, _cache) => {
34
20
  const _component_PrismicRichTextSerialize = resolveComponent("PrismicRichTextSerialize", true);
35
21
  return openBlock(true), createElementBlock(Fragment, null, renderList(props.children, (child) => {
36
- return openBlock(), createBlock(resolveDynamicComponent(getComponent(child)), {
22
+ return openBlock(), createBlock(resolveDynamicComponent(__props.internalComponents[child.type].is), mergeProps({
37
23
  key: JSON.stringify(child),
38
- node: child.node,
39
- "link-resolver": getComponent(child) === PrismicRichTextDefaultComponent_default ? props.linkResolver : void 0
40
- }, {
24
+ node: child.node
25
+ }, { ref_for: true }, __props.internalComponents[child.type].props), {
41
26
  default: withCtx(() => [child.children.length ? (openBlock(), createBlock(_component_PrismicRichTextSerialize, {
42
27
  key: 0,
43
28
  children: child.children,
44
- components: __props.components,
45
- "link-resolver": __props.linkResolver
46
- }, null, 8, [
47
- "children",
48
- "components",
49
- "link-resolver"
50
- ])) : createCommentVNode("v-if", true)]),
29
+ "internal-components": __props.internalComponents
30
+ }, null, 8, ["children", "internal-components"])) : createCommentVNode("v-if", true)]),
51
31
  _: 2
52
- }, 1032, ["node", "link-resolver"]);
32
+ }, 1040, ["node"]);
53
33
  }), 128);
54
34
  };
55
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport PrismicRichTextDefaultComponent from \"./PrismicRichTextDefaultComponent.vue\"\n\nconst CHILD_TYPE_RENAMES = {\n\t\"list-item\": \"listItem\",\n\t\"o-list-item\": \"oListItem\",\n\t\"group-list-item\": \"list\",\n\t\"group-o-list-item\": \"oList\",\n} as const\n\ntype PrismicRichTextSerializeProps = {\n\tcomponents?: VueRichTextSerializer\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tlinkResolver?: LinkResolverFunction\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n\nfunction getComponent(child: ReturnType<typeof asTree>[\"children\"][number]) {\n\treturn (\n\t\tprops.components?.[\n\t\t\tCHILD_TYPE_RENAMES[child.type as keyof typeof CHILD_TYPE_RENAMES] ||\n\t\t\t\t(child.type as keyof typeof props.components)\n\t\t] || PrismicRichTextDefaultComponent\n\t)\n}\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"getComponent(child)\"\n\t\t:node=\"child.node\"\n\t\t:link-resolver=\"\n\t\t\tgetComponent(child) === PrismicRichTextDefaultComponent\n\t\t\t\t? props.linkResolver\n\t\t\t\t: undefined\n\t\t\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:components=\"components\"\n\t\t\t:link-resolver=\"linkResolver\"\n\t/></component>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAQA,MAAM,qBAAqB;GAC1B,aAAa;GACb,eAAe;GACf,mBAAmB;GACnB,qBAAqB;GACrB;EAQD,MAAM,QAAQ;EAGd,SAAS,aAAa,OAAsD;AAC3E,UACC,MAAM,aACL,mBAAmB,MAAM,SACvB,MAAM,SACJ;;;;2BAMN,mBAec,UAAA,MAAA,WAdG,MAAM,WAAf,UAAK;wBADb,YAec,wBAZR,aAAa,MAAK,CAAA,EAAA;KADtB,KAAK,KAAK,UAAU,MAAK;KAEzB,MAAM,MAAM;KACZ,iBAAmB,aAAa,MAAK,KAAM,0CAAsC,MAAM,eAAmB;;4BAU1G,CAJM,MAAM,SAAS,uBADrB,YAKA,qCAAA;;MAHC,UAAU,MAAM;MAChB,YAAY,QAAA;MACZ,iBAAe,QAAA"}
1
+ {"version":3,"file":"PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextSerialize.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { asTree } from \"@prismicio/client/richtext\"\n\nimport type { InternalVueRichTextComponent } from \"./types\"\n\ntype PrismicRichTextSerializeProps = {\n\tchildren: ReturnType<typeof asTree>[\"children\"]\n\tinternalComponents: InternalVueRichTextComponent\n}\n\nconst props = defineProps<PrismicRichTextSerializeProps>()\ndefineOptions({ name: \"PrismicRichTextSerialize\" })\n</script>\n\n<template>\n\t<component\n\t\tv-for=\"child in props.children\"\n\t\t:key=\"JSON.stringify(child)\"\n\t\t:is=\"internalComponents[child.type].is\"\n\t\t:node=\"child.node\"\n\t\tv-bind=\"internalComponents[child.type].props\"\n\t\t><PrismicRichTextSerialize\n\t\t\tv-if=\"child.children.length\"\n\t\t\t:children=\"child.children\"\n\t\t\t:internal-components=\"internalComponents\"\n\t/></component>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;EAUA,MAAM,QAAQ;;;2BAKb,mBAUc,UAAA,MAAA,WATG,MAAM,WAAf,UAAK;wBADb,YAUc,wBAPR,QAAA,mBAAmB,MAAM,MAAM,GAAE,EAHvC,WAUc;KARZ,KAAK,KAAK,UAAU,MAAK;KAEzB,MAAM,MAAM;0BACL,QAAA,mBAAmB,MAAM,MAAM,MAAK,EAAA;4BAK3C,CAHM,MAAM,SAAS,uBADrB,YAIA,qCAAA;;MAFC,UAAU,MAAM;MAChB,uBAAqB,QAAA"}
@@ -1,5 +1,5 @@
1
- import { DefineComponent, FunctionalComponent, defineAsyncComponent } from "vue";
2
- import { RTAnyNode, RichTextNodeType } from "@prismicio/client";
1
+ import { VueComponent } from "../types.js";
2
+ import { LinkResolverFunction, RTAnyNode, RichTextNodeType } from "@prismicio/client";
3
3
 
4
4
  //#region src/PrismicRichText/types.d.ts
5
5
 
@@ -9,7 +9,7 @@ import { RTAnyNode, RichTextNodeType } from "@prismicio/client";
9
9
  *
10
10
  * @see Templating Rich Text and title fields from Prismic {@link https://prismic.io/docs/rich-text}
11
11
  */
12
- type VueRichTextSerializer = Partial<Record<keyof typeof RichTextNodeType, VueRichTextComponent>>;
12
+ type VueRichTextSerializer = Partial<Record<keyof typeof RichTextNodeType, VueRichTextComponent | VueShorthand>>;
13
13
  /**
14
14
  * Props for a component rendering nodes from a Prismic rich text field.
15
15
  */
@@ -21,7 +21,20 @@ type RichTextComponentProps<TRTNode extends RTAnyNode = RTAnyNode> = {
21
21
  *
22
22
  * @typeParam TRTNode - The type of rich text node(s) this component handles
23
23
  */
24
- type VueRichTextComponent<TRTNode extends RTAnyNode = RTAnyNode> = DefineComponent<{}, {}, any> | ReturnType<typeof defineAsyncComponent> | DefineComponent<RichTextComponentProps<TRTNode>> | FunctionalComponent<RichTextComponentProps<TRTNode>>;
24
+ type VueRichTextComponent<TRTNode extends RTAnyNode = RTAnyNode> = VueComponent<RichTextComponentProps<TRTNode>>;
25
+ /**
26
+ * A shorthand definition for {@link VueRichTextSerializer} component types.
27
+ */
28
+ type VueShorthand = {
29
+ /**
30
+ * The HTML element type rendered for this node type.
31
+ */
32
+ as?: string;
33
+ /**
34
+ * Other attributes to apply to the element type.
35
+ */
36
+ [Attribute: string]: string | boolean | null | undefined;
37
+ };
25
38
  //#endregion
26
- export { RichTextComponentProps, VueRichTextSerializer };
39
+ export { RichTextComponentProps, VueRichTextSerializer, VueShorthand };
27
40
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/PrismicRichText/types.ts"],"sourcesContent":[],"mappings":";;;;;;;AAaA;;;;AAAoC,KAAxB,qBAAA,GAAwB,OAAA,CACnC,MADmC,CAAA,MAAA,OACf,gBADe,EACG,oBADH,CAAA,CAAA;;AAOpC;;AAA+D,KAAnD,sBAAmD,CAAA,gBAAZ,SAAY,GAAA,SAAA,CAAA,GAAA;EACxD,IAAA,EAAA,OAAA;CAAO;AACb;;;;;KAOI,oBAKF,CAAA,gBALuC,SAKvC,GALmD,SAKnD,CAAA,GAFA,eAEA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA,CAAA,GAAA,UAAA,CAAA,OAAkB,oBAAlB,CAAA,GACA,eADA,CACgB,sBADhB,CACuC,OADvC,CAAA,CAAA,GAEA,mBAFA,CAEoB,sBAFpB,CAE2C,OAF3C,CAAA,CAAA"}
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/PrismicRichText/types.ts"],"sourcesContent":[],"mappings":";;;;;;;AAcA;;;;AACC,KADW,qBAAA,GAAwB,OACnC,CAAA,MAAA,CAAA,MAAA,OAAoB,gBAApB,EAAsC,oBAAtC,GAA6D,YAA7D,CAAA,CAAA;;;AAMD;AAAmD,KAAvC,sBAAuC,CAAA,gBAAA,SAAA,GAAY,SAAZ,CAAA,GAAA;EAAY,IAAA,EACxD,OADwD;CACxD;;AACN;;;;KAOI,oBACJ,CAAA,gBADyC,SACzC,GADqD,SACrD,CAAA,GADkE,YAClE,CAAA,sBAAA,CAAuB,OAAvB,CAAA,CAAA;;;AAMD;KAAY,YAAA"}