@prismicio/vue 6.0.0 → 6.1.0-canary.edf003d

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 (247) hide show
  1. package/dist/PrismicImage.cjs.map +1 -0
  2. package/dist/PrismicImage.js.map +1 -0
  3. package/dist/PrismicImage.vue.d.cts +4 -4
  4. package/dist/PrismicImage.vue.d.cts.map +1 -1
  5. package/dist/{src/PrismicImage.vue.d.ts → PrismicImage.vue.d.ts} +4 -4
  6. package/dist/PrismicImage.vue.d.ts.map +1 -0
  7. package/dist/PrismicImage.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  8. package/dist/PrismicImage.vue_vue_type_script_setup_true_lang.js.map +1 -0
  9. package/dist/PrismicLink.cjs.map +1 -0
  10. package/dist/PrismicLink.js.map +1 -0
  11. package/dist/PrismicLink.vue.d.cts +4 -4
  12. package/dist/{src/PrismicLink.vue.d.ts → PrismicLink.vue.d.ts} +4 -4
  13. package/dist/PrismicLink.vue.d.ts.map +1 -0
  14. package/dist/PrismicLink.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  15. package/dist/PrismicLink.vue_vue_type_script_setup_true_lang.js.map +1 -0
  16. package/dist/PrismicRichText/PrismicRichText.cjs.map +1 -0
  17. package/dist/PrismicRichText/PrismicRichText.js.map +1 -0
  18. package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichText.vue.d.ts +4 -4
  19. package/dist/PrismicRichText/PrismicRichText.vue.d.ts.map +1 -0
  20. package/dist/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  21. package/dist/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.js.map +1 -0
  22. package/dist/PrismicRichText/PrismicRichTextDefaultComponent.cjs.map +1 -0
  23. package/dist/PrismicRichText/PrismicRichTextDefaultComponent.js.map +1 -0
  24. package/dist/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  25. package/dist/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.js.map +1 -0
  26. package/dist/PrismicRichText/PrismicRichTextSerialize.cjs.map +1 -0
  27. package/dist/PrismicRichText/PrismicRichTextSerialize.js.map +1 -0
  28. package/dist/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  29. package/dist/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js.map +1 -0
  30. package/dist/PrismicRichText/getRichTextComponentProps.cjs.map +1 -0
  31. package/dist/PrismicRichText/getRichTextComponentProps.d.ts.map +1 -0
  32. package/dist/PrismicRichText/getRichTextComponentProps.js.map +1 -0
  33. package/dist/PrismicRichText/types.d.ts.map +1 -0
  34. package/dist/PrismicTable/PrismicTable.cjs.map +1 -0
  35. package/dist/PrismicTable/PrismicTable.js.map +1 -0
  36. package/dist/{src/PrismicTable → PrismicTable}/PrismicTable.vue.d.ts +2 -2
  37. package/dist/PrismicTable/PrismicTable.vue.d.ts.map +1 -0
  38. package/dist/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  39. package/dist/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.js.map +1 -0
  40. package/dist/PrismicTable/PrismicTableDefaultComponents.cjs.map +1 -0
  41. package/dist/PrismicTable/PrismicTableDefaultComponents.js.map +1 -0
  42. package/dist/PrismicTable/PrismicTableRow.cjs.map +1 -0
  43. package/dist/PrismicTable/PrismicTableRow.js.map +1 -0
  44. package/dist/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  45. package/dist/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.js.map +1 -0
  46. package/dist/{src/PrismicTable → PrismicTable}/getTableComponentProps.cjs +2 -2
  47. package/dist/PrismicTable/getTableComponentProps.cjs.map +1 -0
  48. package/dist/PrismicTable/getTableComponentProps.d.ts.map +1 -0
  49. package/dist/{src/PrismicTable → PrismicTable}/getTableComponentProps.js +2 -2
  50. package/dist/PrismicTable/getTableComponentProps.js.map +1 -0
  51. package/dist/PrismicTable/types.d.ts.map +1 -0
  52. package/dist/PrismicText.cjs.map +1 -0
  53. package/dist/PrismicText.js.map +1 -0
  54. package/dist/PrismicText.vue.d.cts +2 -2
  55. package/dist/{src/PrismicText.vue.d.ts → PrismicText.vue.d.ts} +2 -2
  56. package/dist/PrismicText.vue.d.ts.map +1 -0
  57. package/dist/PrismicText.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  58. package/dist/PrismicText.vue_vue_type_script_setup_true_lang.js.map +1 -0
  59. package/dist/SliceSimulator.cjs +8 -0
  60. package/dist/SliceSimulator.cjs.map +1 -0
  61. package/dist/SliceSimulator.js +8 -0
  62. package/dist/SliceSimulator.js.map +1 -0
  63. package/dist/SliceSimulator.vue.d.cts +57 -0
  64. package/dist/SliceSimulator.vue.d.cts.map +1 -0
  65. package/dist/SliceSimulator.vue.d.ts +57 -0
  66. package/dist/SliceSimulator.vue.d.ts.map +1 -0
  67. package/dist/SliceSimulator.vue_vue_type_script_setup_true_lang.cjs +66 -0
  68. package/dist/SliceSimulator.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  69. package/dist/SliceSimulator.vue_vue_type_script_setup_true_lang.js +66 -0
  70. package/dist/SliceSimulator.vue_vue_type_script_setup_true_lang.js.map +1 -0
  71. package/dist/SliceZone/SliceZone.cjs.map +1 -0
  72. package/dist/SliceZone/SliceZone.js.map +1 -0
  73. package/dist/SliceZone/SliceZone.vue.d.cts +2 -2
  74. package/dist/{src/SliceZone → SliceZone}/SliceZone.vue.d.ts +2 -2
  75. package/dist/SliceZone/SliceZone.vue.d.ts.map +1 -0
  76. package/dist/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  77. package/dist/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.js.map +1 -0
  78. package/dist/SliceZone/TODOSliceComponent.cjs.map +1 -0
  79. package/dist/SliceZone/TODOSliceComponent.d.ts.map +1 -0
  80. package/dist/SliceZone/TODOSliceComponent.js.map +1 -0
  81. package/dist/SliceZone/defineSliceZoneComponents.cjs.map +1 -0
  82. package/dist/SliceZone/defineSliceZoneComponents.d.ts.map +1 -0
  83. package/dist/SliceZone/defineSliceZoneComponents.js.map +1 -0
  84. package/dist/SliceZone/getSliceComponentProps.cjs.map +1 -0
  85. package/dist/SliceZone/getSliceComponentProps.d.ts.map +1 -0
  86. package/dist/SliceZone/getSliceComponentProps.js.map +1 -0
  87. package/dist/SliceZone/types.d.ts.map +1 -0
  88. package/dist/_virtual/rolldown_runtime.cjs +2 -2
  89. package/dist/_virtual/rolldown_runtime.js +2 -2
  90. package/dist/createPrismic.cjs.map +1 -0
  91. package/dist/createPrismic.d.ts.map +1 -0
  92. package/dist/createPrismic.js.map +1 -0
  93. package/dist/index.cjs +14 -12
  94. package/dist/index.d.cts +3 -2
  95. package/dist/index.d.ts +20 -19
  96. package/dist/index.js +14 -13
  97. package/dist/{src/lib → lib}/devMsg.cjs +1 -1
  98. package/dist/lib/devMsg.cjs.map +1 -0
  99. package/dist/{src/lib → lib}/devMsg.js +1 -1
  100. package/dist/lib/devMsg.js.map +1 -0
  101. package/dist/lib/isInternalURL.cjs.map +1 -0
  102. package/dist/lib/isInternalURL.js.map +1 -0
  103. package/dist/package.cjs +1 -1
  104. package/dist/package.js +1 -1
  105. package/dist/types.cjs.map +1 -0
  106. package/dist/types.d.ts.map +1 -0
  107. package/dist/types.js.map +1 -0
  108. package/package.json +11 -10
  109. package/src/SliceSimulator.vue +78 -0
  110. package/src/index.ts +3 -0
  111. package/dist/src/PrismicImage.cjs.map +0 -1
  112. package/dist/src/PrismicImage.js.map +0 -1
  113. package/dist/src/PrismicImage.vue.d.ts.map +0 -1
  114. package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  115. package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.js.map +0 -1
  116. package/dist/src/PrismicLink.cjs.map +0 -1
  117. package/dist/src/PrismicLink.js.map +0 -1
  118. package/dist/src/PrismicLink.vue.d.ts.map +0 -1
  119. package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  120. package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.js.map +0 -1
  121. package/dist/src/PrismicRichText/PrismicRichText.cjs.map +0 -1
  122. package/dist/src/PrismicRichText/PrismicRichText.js.map +0 -1
  123. package/dist/src/PrismicRichText/PrismicRichText.vue.d.ts.map +0 -1
  124. package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  125. package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.js.map +0 -1
  126. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.cjs.map +0 -1
  127. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.js.map +0 -1
  128. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  129. package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.js.map +0 -1
  130. package/dist/src/PrismicRichText/PrismicRichTextSerialize.cjs.map +0 -1
  131. package/dist/src/PrismicRichText/PrismicRichTextSerialize.js.map +0 -1
  132. package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  133. package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js.map +0 -1
  134. package/dist/src/PrismicRichText/getRichTextComponentProps.cjs.map +0 -1
  135. package/dist/src/PrismicRichText/getRichTextComponentProps.d.ts.map +0 -1
  136. package/dist/src/PrismicRichText/getRichTextComponentProps.js.map +0 -1
  137. package/dist/src/PrismicRichText/types.d.ts.map +0 -1
  138. package/dist/src/PrismicTable/PrismicTable.cjs.map +0 -1
  139. package/dist/src/PrismicTable/PrismicTable.js.map +0 -1
  140. package/dist/src/PrismicTable/PrismicTable.vue.d.ts.map +0 -1
  141. package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  142. package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.js.map +0 -1
  143. package/dist/src/PrismicTable/PrismicTableDefaultComponents.cjs.map +0 -1
  144. package/dist/src/PrismicTable/PrismicTableDefaultComponents.js.map +0 -1
  145. package/dist/src/PrismicTable/PrismicTableRow.cjs.map +0 -1
  146. package/dist/src/PrismicTable/PrismicTableRow.js.map +0 -1
  147. package/dist/src/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  148. package/dist/src/PrismicTable/PrismicTableRow.vue_vue_type_script_setup_true_lang.js.map +0 -1
  149. package/dist/src/PrismicTable/getTableComponentProps.cjs.map +0 -1
  150. package/dist/src/PrismicTable/getTableComponentProps.d.ts.map +0 -1
  151. package/dist/src/PrismicTable/getTableComponentProps.js.map +0 -1
  152. package/dist/src/PrismicTable/types.d.ts.map +0 -1
  153. package/dist/src/PrismicText.cjs.map +0 -1
  154. package/dist/src/PrismicText.js.map +0 -1
  155. package/dist/src/PrismicText.vue.d.ts.map +0 -1
  156. package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  157. package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.js.map +0 -1
  158. package/dist/src/SliceZone/SliceZone.cjs.map +0 -1
  159. package/dist/src/SliceZone/SliceZone.js.map +0 -1
  160. package/dist/src/SliceZone/SliceZone.vue.d.ts.map +0 -1
  161. package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
  162. package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.js.map +0 -1
  163. package/dist/src/SliceZone/TODOSliceComponent.cjs.map +0 -1
  164. package/dist/src/SliceZone/TODOSliceComponent.d.ts.map +0 -1
  165. package/dist/src/SliceZone/TODOSliceComponent.js.map +0 -1
  166. package/dist/src/SliceZone/defineSliceZoneComponents.cjs.map +0 -1
  167. package/dist/src/SliceZone/defineSliceZoneComponents.d.ts.map +0 -1
  168. package/dist/src/SliceZone/defineSliceZoneComponents.js.map +0 -1
  169. package/dist/src/SliceZone/getSliceComponentProps.cjs.map +0 -1
  170. package/dist/src/SliceZone/getSliceComponentProps.d.ts.map +0 -1
  171. package/dist/src/SliceZone/getSliceComponentProps.js.map +0 -1
  172. package/dist/src/SliceZone/types.d.ts.map +0 -1
  173. package/dist/src/createPrismic.cjs.map +0 -1
  174. package/dist/src/createPrismic.d.ts.map +0 -1
  175. package/dist/src/createPrismic.js.map +0 -1
  176. package/dist/src/lib/devMsg.cjs.map +0 -1
  177. package/dist/src/lib/devMsg.js.map +0 -1
  178. package/dist/src/lib/isInternalURL.cjs.map +0 -1
  179. package/dist/src/lib/isInternalURL.js.map +0 -1
  180. package/dist/src/types.cjs.map +0 -1
  181. package/dist/src/types.d.ts.map +0 -1
  182. package/dist/src/types.js.map +0 -1
  183. /package/dist/{src/PrismicImage.cjs → PrismicImage.cjs} +0 -0
  184. /package/dist/{src/PrismicImage.js → PrismicImage.js} +0 -0
  185. /package/dist/{src/PrismicImage.vue_vue_type_script_setup_true_lang.cjs → PrismicImage.vue_vue_type_script_setup_true_lang.cjs} +0 -0
  186. /package/dist/{src/PrismicImage.vue_vue_type_script_setup_true_lang.js → PrismicImage.vue_vue_type_script_setup_true_lang.js} +0 -0
  187. /package/dist/{src/PrismicLink.cjs → PrismicLink.cjs} +0 -0
  188. /package/dist/{src/PrismicLink.js → PrismicLink.js} +0 -0
  189. /package/dist/{src/PrismicLink.vue_vue_type_script_setup_true_lang.cjs → PrismicLink.vue_vue_type_script_setup_true_lang.cjs} +0 -0
  190. /package/dist/{src/PrismicLink.vue_vue_type_script_setup_true_lang.js → PrismicLink.vue_vue_type_script_setup_true_lang.js} +0 -0
  191. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichText.cjs +0 -0
  192. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichText.js +0 -0
  193. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs +0 -0
  194. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichText.vue_vue_type_script_setup_true_lang.js +0 -0
  195. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextDefaultComponent.cjs +0 -0
  196. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextDefaultComponent.js +0 -0
  197. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs +0 -0
  198. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.js +0 -0
  199. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextSerialize.cjs +0 -0
  200. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextSerialize.js +0 -0
  201. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs +0 -0
  202. /package/dist/{src/PrismicRichText → PrismicRichText}/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js +0 -0
  203. /package/dist/{src/PrismicRichText → PrismicRichText}/getRichTextComponentProps.cjs +0 -0
  204. /package/dist/{src/PrismicRichText → PrismicRichText}/getRichTextComponentProps.d.ts +0 -0
  205. /package/dist/{src/PrismicRichText → PrismicRichText}/getRichTextComponentProps.js +0 -0
  206. /package/dist/{src/PrismicRichText → PrismicRichText}/index.d.ts +0 -0
  207. /package/dist/{src/PrismicRichText → PrismicRichText}/types.d.ts +0 -0
  208. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTable.cjs +0 -0
  209. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTable.js +0 -0
  210. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTable.vue_vue_type_script_setup_true_lang.cjs +0 -0
  211. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTable.vue_vue_type_script_setup_true_lang.js +0 -0
  212. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTableDefaultComponents.cjs +0 -0
  213. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTableDefaultComponents.js +0 -0
  214. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTableRow.cjs +0 -0
  215. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTableRow.js +0 -0
  216. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTableRow.vue_vue_type_script_setup_true_lang.cjs +0 -0
  217. /package/dist/{src/PrismicTable → PrismicTable}/PrismicTableRow.vue_vue_type_script_setup_true_lang.js +0 -0
  218. /package/dist/{src/PrismicTable → PrismicTable}/getTableComponentProps.d.ts +0 -0
  219. /package/dist/{src/PrismicTable → PrismicTable}/index.d.ts +0 -0
  220. /package/dist/{src/PrismicTable → PrismicTable}/types.d.ts +0 -0
  221. /package/dist/{src/PrismicText.cjs → PrismicText.cjs} +0 -0
  222. /package/dist/{src/PrismicText.js → PrismicText.js} +0 -0
  223. /package/dist/{src/PrismicText.vue_vue_type_script_setup_true_lang.cjs → PrismicText.vue_vue_type_script_setup_true_lang.cjs} +0 -0
  224. /package/dist/{src/PrismicText.vue_vue_type_script_setup_true_lang.js → PrismicText.vue_vue_type_script_setup_true_lang.js} +0 -0
  225. /package/dist/{src/SliceZone → SliceZone}/SliceZone.cjs +0 -0
  226. /package/dist/{src/SliceZone → SliceZone}/SliceZone.js +0 -0
  227. /package/dist/{src/SliceZone → SliceZone}/SliceZone.vue_vue_type_script_setup_true_lang.cjs +0 -0
  228. /package/dist/{src/SliceZone → SliceZone}/SliceZone.vue_vue_type_script_setup_true_lang.js +0 -0
  229. /package/dist/{src/SliceZone → SliceZone}/TODOSliceComponent.cjs +0 -0
  230. /package/dist/{src/SliceZone → SliceZone}/TODOSliceComponent.d.ts +0 -0
  231. /package/dist/{src/SliceZone → SliceZone}/TODOSliceComponent.js +0 -0
  232. /package/dist/{src/SliceZone → SliceZone}/defineSliceZoneComponents.cjs +0 -0
  233. /package/dist/{src/SliceZone → SliceZone}/defineSliceZoneComponents.d.ts +0 -0
  234. /package/dist/{src/SliceZone → SliceZone}/defineSliceZoneComponents.js +0 -0
  235. /package/dist/{src/SliceZone → SliceZone}/getSliceComponentProps.cjs +0 -0
  236. /package/dist/{src/SliceZone → SliceZone}/getSliceComponentProps.d.ts +0 -0
  237. /package/dist/{src/SliceZone → SliceZone}/getSliceComponentProps.js +0 -0
  238. /package/dist/{src/SliceZone → SliceZone}/index.d.ts +0 -0
  239. /package/dist/{src/SliceZone → SliceZone}/types.d.ts +0 -0
  240. /package/dist/{src/createPrismic.cjs → createPrismic.cjs} +0 -0
  241. /package/dist/{src/createPrismic.d.ts → createPrismic.d.ts} +0 -0
  242. /package/dist/{src/createPrismic.js → createPrismic.js} +0 -0
  243. /package/dist/{src/lib → lib}/isInternalURL.cjs +0 -0
  244. /package/dist/{src/lib → lib}/isInternalURL.js +0 -0
  245. /package/dist/{src/types.cjs → types.cjs} +0 -0
  246. /package/dist/{src/types.d.ts → types.d.ts} +0 -0
  247. /package/dist/{src/types.js → types.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineSliceZoneComponents.cjs","names":[],"sources":["../../src/SliceZone/defineSliceZoneComponents.ts"],"sourcesContent":["import { markRaw } from \"vue\"\n\nimport type {\n\tSliceComponentType,\n\tSliceLike,\n\tSliceZoneComponents,\n} from \"./types\"\n\n/**\n * Gets an optimized record of Slice types mapped to Vue components. Each\n * components will be rendered for each instance of their Slice type.\n *\n * @remarks\n * This is essentially an helper function to ensure {@link markRaw} is correctly\n * applied on each components, improving performances.\n *\n * @example\n *\n * ```javascript\n * // Defining a slice components\n * import { defineSliceZoneComponents } from \"@prismicio/vue\";\n *\n * export default {\n * data() {\n * components: defineSliceZoneComponents({\n * foo: Foo,\n * bar: defineAsyncComponent(\n * () => new Promise((res) => res(Bar)),\n * ),\n * baz: \"Baz\",\n * }),\n * }\n * };\n * ```\n *\n * @typeParam TSlice - The type(s) of slices in the Slice Zone\n * @typeParam TContext - Arbitrary data made available to all Slice components\n *\n * @param components - {@link SliceZoneComponents}\n *\n * @returns A new optimized record of {@link SliceZoneComponents}\n */\nexport const defineSliceZoneComponents = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tTSlice extends SliceLike = any,\n\tTContext = unknown,\n>(\n\tcomponents: SliceZoneComponents<TSlice, TContext>,\n): SliceZoneComponents<TSlice, TContext> => {\n\tconst result = {} as SliceZoneComponents<TSlice, TContext>\n\n\tlet type: keyof typeof components\n\tfor (type in components) {\n\t\tconst component = components[type]\n\t\tresult[type] =\n\t\t\ttypeof component === \"string\"\n\t\t\t\t? component\n\t\t\t\t: markRaw(\n\t\t\t\t\t\tcomponent as SliceComponentType<\n\t\t\t\t\t\t\tExtract<TSlice, SliceLike<typeof type>>,\n\t\t\t\t\t\t\tTContext\n\t\t\t\t\t\t>,\n\t\t\t\t\t)\n\t}\n\n\treturn result\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,MAAa,6BAKZ,eAC2C;CAC3C,MAAM,SAAS,EAAE;CAEjB,IAAI;AACJ,MAAK,QAAQ,YAAY;EACxB,MAAM,YAAY,WAAW;AAC7B,SAAO,QACN,OAAO,cAAc,WAClB,6BAEA,UAIA;;AAGL,QAAO"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineSliceZoneComponents.d.ts","names":[],"sources":["../../src/SliceZone/defineSliceZoneComponents.ts"],"sourcesContent":[],"mappings":";;;;;;AA0CA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAAa,2CAEG,iDAGH,oBAAoB,QAAQ,cACtC,oBAAoB,QAAQ"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineSliceZoneComponents.js","names":[],"sources":["../../src/SliceZone/defineSliceZoneComponents.ts"],"sourcesContent":["import { markRaw } from \"vue\"\n\nimport type {\n\tSliceComponentType,\n\tSliceLike,\n\tSliceZoneComponents,\n} from \"./types\"\n\n/**\n * Gets an optimized record of Slice types mapped to Vue components. Each\n * components will be rendered for each instance of their Slice type.\n *\n * @remarks\n * This is essentially an helper function to ensure {@link markRaw} is correctly\n * applied on each components, improving performances.\n *\n * @example\n *\n * ```javascript\n * // Defining a slice components\n * import { defineSliceZoneComponents } from \"@prismicio/vue\";\n *\n * export default {\n * data() {\n * components: defineSliceZoneComponents({\n * foo: Foo,\n * bar: defineAsyncComponent(\n * () => new Promise((res) => res(Bar)),\n * ),\n * baz: \"Baz\",\n * }),\n * }\n * };\n * ```\n *\n * @typeParam TSlice - The type(s) of slices in the Slice Zone\n * @typeParam TContext - Arbitrary data made available to all Slice components\n *\n * @param components - {@link SliceZoneComponents}\n *\n * @returns A new optimized record of {@link SliceZoneComponents}\n */\nexport const defineSliceZoneComponents = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tTSlice extends SliceLike = any,\n\tTContext = unknown,\n>(\n\tcomponents: SliceZoneComponents<TSlice, TContext>,\n): SliceZoneComponents<TSlice, TContext> => {\n\tconst result = {} as SliceZoneComponents<TSlice, TContext>\n\n\tlet type: keyof typeof components\n\tfor (type in components) {\n\t\tconst component = components[type]\n\t\tresult[type] =\n\t\t\ttypeof component === \"string\"\n\t\t\t\t? component\n\t\t\t\t: markRaw(\n\t\t\t\t\t\tcomponent as SliceComponentType<\n\t\t\t\t\t\t\tExtract<TSlice, SliceLike<typeof type>>,\n\t\t\t\t\t\t\tTContext\n\t\t\t\t\t\t>,\n\t\t\t\t\t)\n\t}\n\n\treturn result\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,MAAa,6BAKZ,eAC2C;CAC3C,MAAM,SAAS,EAAE;CAEjB,IAAI;AACJ,MAAK,QAAQ,YAAY;EACxB,MAAM,YAAY,WAAW;AAC7B,SAAO,QACN,OAAO,cAAc,WAClB,YACA,QACA,UAIA;;AAGL,QAAO"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSliceComponentProps.cjs","names":[],"sources":["../../src/SliceZone/getSliceComponentProps.ts"],"sourcesContent":["import type { PropType } from \"vue\"\n\nimport type { SliceComponentProps, SliceLike } from \"./types\"\n\n/**\n * Native Vue props for a component rendering content from a Prismic Slice using\n * the `<SliceZone />` component.\n *\n * @typeParam TSlice - The Slice type\n * @typeParam TContext - Arbitrary data passed to `<SliceZone />` and made\n * available to all Slice components\n */\ntype DefineComponentSliceComponentProps<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tTSlice extends SliceLike = any,\n\tTContext = unknown,\n> = {\n\tslice: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"slice\"]>\n\t\trequired: true\n\t}\n\tindex: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"index\"]>\n\t\trequired: true\n\t}\n\tslices: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"slices\"]>\n\t\trequired: true\n\t}\n\tcontext: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"context\"]>\n\t\trequired: true\n\t}\n}\n\n/**\n * Gets native Vue props for a component rendering content from a Prismic Slice\n * using the `<SliceZone />` component.\n *\n * Props are: `[\"slice\", \"index\", \"slices\", \"context\"]`\n *\n * @example\n *\n * ```typescript\n * // Defining a new slice component\n * import { getSliceComponentProps } from \"@prismicio/vue\"\n *\n * defineProps(getSliceComponentProps())\n * ```\n *\n * @example\n *\n * ```typescript\n * // Defining a new slice component with visual hint\n * import { getSliceComponentProps } from \"@prismicio/vue\"\n *\n * defineProps(\n * \tgetSliceComponentProps([\"slice\", \"index\", \"slices\", \"context\"]),\n * )\n * ```\n *\n * @typeParam TSlice - The Slice type\n * @typeParam TContext - Arbitrary data passed to `<SliceZone />` and made\n * available to all Slice components\n *\n * @param propsHint - An optional array of prop names used for the sole purpose\n * of having a visual hint of which props are made available to the slice,\n * this parameters doesn't have any effect\n *\n * @returns Props object to use with `defineProps()`\n */\nexport const getSliceComponentProps = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tTSlice extends SliceLike = any,\n\tTContext = unknown,\n>(\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpropsHint?: [\"slice\", \"index\", \"slices\", \"context\"],\n): DefineComponentSliceComponentProps<TSlice, TContext> => ({\n\tslice: {\n\t\ttype: Object as PropType<SliceComponentProps<TSlice, TContext>[\"slice\"]>,\n\t\trequired: true,\n\t},\n\tindex: {\n\t\ttype: Number as PropType<SliceComponentProps<TSlice, TContext>[\"index\"]>,\n\t\trequired: true,\n\t},\n\tslices: {\n\t\ttype: Array as PropType<SliceComponentProps<TSlice, TContext>[\"slices\"]>,\n\t\trequired: true,\n\t},\n\tcontext: {\n\t\ttype: null as unknown as PropType<\n\t\t\tSliceComponentProps<TSlice, TContext>[\"context\"]\n\t\t>,\n\t\trequired: true,\n\t},\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAa,0BAMZ,eAC2D;CAC3D,OAAO;EACN,MAAM;EACN,UAAU;EACV;CACD,OAAO;EACN,MAAM;EACN,UAAU;EACV;CACD,QAAQ;EACP,MAAM;EACN,UAAU;EACV;CACD,SAAS;EACR,MAAM;EAGN,UAAU;EACV;CACD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSliceComponentProps.d.ts","names":[],"sources":["../../src/SliceZone/getSliceComponentProps.ts"],"sourcesContent":[],"mappings":";;;;;;;AAE6D;;;;;;KAUxD,kCAUgC,CAAA,eARrB,SAQqB,GAAA,GAAA,EAAA,WAAA,OAAA,CAAA,GAAA;EAAQ,KAAA,EAAA;IAA5B,IAAA,EAJT,QAIS,CAJA,mBAIA,CAJoB,MAIpB,EAJ4B,QAI5B,CAAA,CAAA,OAAA,CAAA,CAAA;IAAT,QAAA,EAAA,IAAA;EAI6B,CAAA;EAAQ,KAAA,EAAA;IAA5B,IAAA,EAJT,QAIS,CAJA,mBAIA,CAJoB,MAIpB,EAJ4B,QAI5B,CAAA,CAAA,OAAA,CAAA,CAAA;IAAT,QAAA,EAAA,IAAA;EAI6B,CAAA;EAAQ,MAAA,EAAA;IAA5B,IAAA,EAJT,QAIS,CAJA,mBAIA,CAJoB,MAIpB,EAJ4B,QAI5B,CAAA,CAAA,QAAA,CAAA,CAAA;IAAT,QAAA,EAAA,IAAA;EAAQ,CAAA;EAyCH,OAAA,EAAA;IAEG,IAAA,EA3CR,QA2CQ,CA3CC,mBA2CD,CA3CqB,MA2CrB,EA3C6B,QA2C7B,CAAA,CAAA,SAAA,CAAA,CAAA;IAKsB,QAAA,EAAA,IAAA;EAAQ,CAAA;CAA3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAPU,wCAEG,6FAKb,mCAAmC,QAAQ"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSliceComponentProps.js","names":[],"sources":["../../src/SliceZone/getSliceComponentProps.ts"],"sourcesContent":["import type { PropType } from \"vue\"\n\nimport type { SliceComponentProps, SliceLike } from \"./types\"\n\n/**\n * Native Vue props for a component rendering content from a Prismic Slice using\n * the `<SliceZone />` component.\n *\n * @typeParam TSlice - The Slice type\n * @typeParam TContext - Arbitrary data passed to `<SliceZone />` and made\n * available to all Slice components\n */\ntype DefineComponentSliceComponentProps<\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tTSlice extends SliceLike = any,\n\tTContext = unknown,\n> = {\n\tslice: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"slice\"]>\n\t\trequired: true\n\t}\n\tindex: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"index\"]>\n\t\trequired: true\n\t}\n\tslices: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"slices\"]>\n\t\trequired: true\n\t}\n\tcontext: {\n\t\ttype: PropType<SliceComponentProps<TSlice, TContext>[\"context\"]>\n\t\trequired: true\n\t}\n}\n\n/**\n * Gets native Vue props for a component rendering content from a Prismic Slice\n * using the `<SliceZone />` component.\n *\n * Props are: `[\"slice\", \"index\", \"slices\", \"context\"]`\n *\n * @example\n *\n * ```typescript\n * // Defining a new slice component\n * import { getSliceComponentProps } from \"@prismicio/vue\"\n *\n * defineProps(getSliceComponentProps())\n * ```\n *\n * @example\n *\n * ```typescript\n * // Defining a new slice component with visual hint\n * import { getSliceComponentProps } from \"@prismicio/vue\"\n *\n * defineProps(\n * \tgetSliceComponentProps([\"slice\", \"index\", \"slices\", \"context\"]),\n * )\n * ```\n *\n * @typeParam TSlice - The Slice type\n * @typeParam TContext - Arbitrary data passed to `<SliceZone />` and made\n * available to all Slice components\n *\n * @param propsHint - An optional array of prop names used for the sole purpose\n * of having a visual hint of which props are made available to the slice,\n * this parameters doesn't have any effect\n *\n * @returns Props object to use with `defineProps()`\n */\nexport const getSliceComponentProps = <\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tTSlice extends SliceLike = any,\n\tTContext = unknown,\n>(\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpropsHint?: [\"slice\", \"index\", \"slices\", \"context\"],\n): DefineComponentSliceComponentProps<TSlice, TContext> => ({\n\tslice: {\n\t\ttype: Object as PropType<SliceComponentProps<TSlice, TContext>[\"slice\"]>,\n\t\trequired: true,\n\t},\n\tindex: {\n\t\ttype: Number as PropType<SliceComponentProps<TSlice, TContext>[\"index\"]>,\n\t\trequired: true,\n\t},\n\tslices: {\n\t\ttype: Array as PropType<SliceComponentProps<TSlice, TContext>[\"slices\"]>,\n\t\trequired: true,\n\t},\n\tcontext: {\n\t\ttype: null as unknown as PropType<\n\t\t\tSliceComponentProps<TSlice, TContext>[\"context\"]\n\t\t>,\n\t\trequired: true,\n\t},\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAa,0BAMZ,eAC2D;CAC3D,OAAO;EACN,MAAM;EACN,UAAU;EACV;CACD,OAAO;EACN,MAAM;EACN,UAAU;EACV;CACD,QAAQ;EACP,MAAM;EACN,UAAU;EACV;CACD,SAAS;EACR,MAAM;EAGN,UAAU;EACV;CACD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../src/SliceZone/types.ts"],"sourcesContent":[],"mappings":";;;;;;;AAEyC;;;KAOpC,gBAA4D,CAAA,eAA5B,SAA4B,CAAA,GAAf,MAAe,SAAA,eAAA,GAC9D,MAD8D,CAAA,YAAA,CAAA,GAE9D,MAF8D,SAE/C,gBAF+C,GAG7D,MAH6D,CAAA,MAAA,CAAA,GAAA,KAAA;;;;;;AAYjE;AACO,KADK,eACL,CAAA,mBAAA,MAAA,GAAA,MAAA,CAAA,GAD2D,IAC3D,CAAN,KAAM,CAAA,UAAA,CAAA,EAAA,IAAA,GAAA,YAAA,CAAA;;;;AAUP;AAaA;;AACG,KAdS,gBAcT,CAAA,mBAAA,MAAA,GAAA,MAAA,CAAA,GAAA;EACiB,IAAA,EAdb,KAca,CAdP,UAcO,CAAA,CAAA,YAAA,CAAA;CAAjB;;AAoBH;;;;;AAWA;;;AAKQ,KAtCI,SAsCJ,CAAA,mBAAA,MAAA,GAAA,MAAA,CAAA,GAAA,CArCL,eAqCK,CArCW,UAqCX,CAAA,GApCL,gBAoCK,CApCY,UAoCZ,CAAA,CAAA,GAAA;EAWN;;;;;;EAOgB,QAAA,CAAA,EAAA,IAAA;AASlB,CAAA;;;;;;;AAaA;;;AAciC,KAtErB,aAsEqB,CAAA,eAtEQ,SAsER,GAtEoB,SAsEpB,CAAA,GAAA,SArEvB,MAqEuB,EAAA;;;;;;;;;AAIT,KA/DZ,mBA+DY,CAAA,eA9DR,SA8DQ,GA9DI,SA8DJ,EAAA,WAAA,OAAA,CAAA,GAAA;EAAhB;EACH,KAAA,EA3DG,MA2DH;EAJA;EAAkB,KAAA,EAAA,MAAA;;UA7Cd,cACP,eAAe,mBAAmB,mBAAmB;;;;;WAO7C;;;;;;;;KASE,kCAEI,uCAEZ,UAAU,oBAAoB,QAAQ;;;;;;;;KAS9B,mCACI,YAAY,iDAaZ,iBAAiB,UAC5B,mBACA,QAAQ,QAAQ,UAAU,4BACvB,YACA,QAAQ,QAAQ,UAAU,aAC7B"}
@@ -1,6 +1,6 @@
1
1
  //#region rolldown:runtime
2
2
  var __defProp = Object.defineProperty;
3
- var __export = (all, symbols) => {
3
+ var __exportAll = (all, symbols) => {
4
4
  let target = {};
5
5
  for (var name in all) {
6
6
  __defProp(target, name, {
@@ -16,4 +16,4 @@ var __export = (all, symbols) => {
16
16
 
17
17
  //#endregion
18
18
 
19
- exports.__export = __export;
19
+ exports.__exportAll = __exportAll;
@@ -1,6 +1,6 @@
1
1
  //#region rolldown:runtime
2
2
  var __defProp = Object.defineProperty;
3
- var __export = (all, symbols) => {
3
+ var __exportAll = (all, symbols) => {
4
4
  let target = {};
5
5
  for (var name in all) {
6
6
  __defProp(target, name, {
@@ -15,4 +15,4 @@ var __export = (all, symbols) => {
15
15
  };
16
16
 
17
17
  //#endregion
18
- export { __export };
18
+ export { __exportAll };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPrismic.cjs","names":[],"sources":["../src/createPrismic.ts"],"sourcesContent":["import type { CreateClient, LinkResolverFunction } from \"@prismicio/client\"\nimport { isFilled } from \"@prismicio/client\"\nimport type { App, InjectionKey } from \"vue\"\nimport { inject } from \"vue\"\n\nimport type { ComponentOrTagName } from \"./types\"\n\nimport type { RichTextComponents } from \"./PrismicRichText\"\nimport type { TableComponents } from \"./PrismicTable\"\n\nconst prismicKey = Symbol.for(\n\t\"@prismicio/vue/plugin\",\n) as InjectionKey<PrismicPlugin>\n\n/** Components configuration. */\ntype ComponentsConfig = {\n\t/** The default component rendered for internal URLs. */\n\tlinkInternalComponent?: ComponentOrTagName\n\n\t/** The default component rendered for external URLs. */\n\tlinkExternalComponent?: ComponentOrTagName\n\n\t/**\n\t * The default components or shorthand definitions for rich text and table\n\t * components.\n\t *\n\t * @see {@link https://prismic.io/docs/fields/rich-text}\n\t * @see {@link https://prismic.io/docs/fields/table}\n\t */\n\trichTextComponents?: RichTextComponents & TableComponents\n}\n\n/** Prismic Vue plugin configuration. */\nexport type PrismicPluginConfig = {\n\t/** A Prismic client instance to inject into the Vue app. */\n\tclient: ReturnType<CreateClient>\n\n\t/**\n\t * A default link resolver used to resolve links when route resolvers cannot be used.\n\t *\n\t * @see {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/** Components configuration. */\n\tcomponents?: ComponentsConfig\n}\n\n/**\n * Prismic Vue plugin interface accessible through `usePrismic()` and\n * `$prismic`.\n */\nexport type PrismicPlugin = {\n\t/** A Prismic client that can be used to query content from a repository. */\n\tclient: ReturnType<CreateClient>\n\n\t/** Helpers to determine if a field is filled. */\n\tisFilled: typeof isFilled\n\n\t/**\n\t * The default link resolver used to resolve links when route resolvers cannot be used.\n\t *\n\t * @see {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/** @internal */\n\treadonly components: ComponentsConfig\n\n\t/** @internal */\n\tinstall: (app: App) => void\n}\n\n/** Creates a Prismic Vue plugin instance that can be used by a Vue app. */\nexport const createPrismic = (config: PrismicPluginConfig): PrismicPlugin => {\n\treturn {\n\t\t...config,\n\t\tcomponents: config.components || {},\n\t\tisFilled,\n\t\tinstall(app: App): void {\n\t\t\tapp.provide(prismicKey, this)\n\t\t\tapp.config.globalProperties.$prismic = this\n\t\t},\n\t}\n}\n\n/**\n * Access the Prismic Vue plugin interface.\n *\n * @example\n *\n * ```typescript\n * const { client, isFilled } = usePrismic()\n * ```\n */\nexport const usePrismic = (): PrismicPlugin => {\n\treturn inject(prismicKey, { components: {} } as PrismicPlugin)\n}\n\ndeclare module \"vue\" {\n\texport interface ComponentCustomProperties {\n\t\t/** The Prismic Vue plugin interface. */\n\t\t$prismic: PrismicPlugin\n\t}\n}\n"],"mappings":";;;;AAUA,MAAM,aAAa,OAAO,IACzB,wBACA;;AA8DD,MAAa,iBAAiB,WAA+C;AAC5E,QAAO;EACN,GAAG;EACH,YAAY,OAAO,cAAc,EAAE;EACnC;EACA,QAAQ,KAAgB;AACvB,OAAI,QAAQ,YAAY,KAAK;AAC7B,OAAI,OAAO,iBAAiB,WAAW;;EAExC;;;;;;;;;;;AAYF,MAAa,mBAAkC;AAC9C,wBAAc,YAAY,EAAE,YAAY,EAAE,EAAE,CAAkB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPrismic.d.ts","names":[],"sources":["../src/createPrismic.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;KAeK,gBAAA;;EAAA,qBAAgB,CAAA,EAEI,kBAFJ;EAEI;EAGA,qBAAA,CAAA,EAAA,kBAAA;EASH;;;AAItB;;;;EAYc,kBAAA,CAAA,EAhBQ,kBAgBR,GAhB6B,eAgB7B;CAAgB;AAO9B;AAEoB,KArBR,mBAAA,GAqBQ;EAAX;EAGS,MAAA,EAtBT,UAsBS,CAtBE,YAsBF,CAAA;EAOF;;;;AAUhB;EAqBa,YAAA,CAEZ,EAvDe,oBAqDc;EAE7B;EAAA,UAAA,CAAA,EApDa,gBAoDb;;;;;;KA7CW,aAAA;;UAEH,WAAW;;mBAGF;;;;;;iBAOF;;uBAGM;;iBAGN;;;cAIH,wBAAyB,wBAAsB;;;;;;;;;;cAqB/C,kBAAiB;;;;cAOlB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPrismic.js","names":[],"sources":["../src/createPrismic.ts"],"sourcesContent":["import type { CreateClient, LinkResolverFunction } from \"@prismicio/client\"\nimport { isFilled } from \"@prismicio/client\"\nimport type { App, InjectionKey } from \"vue\"\nimport { inject } from \"vue\"\n\nimport type { ComponentOrTagName } from \"./types\"\n\nimport type { RichTextComponents } from \"./PrismicRichText\"\nimport type { TableComponents } from \"./PrismicTable\"\n\nconst prismicKey = Symbol.for(\n\t\"@prismicio/vue/plugin\",\n) as InjectionKey<PrismicPlugin>\n\n/** Components configuration. */\ntype ComponentsConfig = {\n\t/** The default component rendered for internal URLs. */\n\tlinkInternalComponent?: ComponentOrTagName\n\n\t/** The default component rendered for external URLs. */\n\tlinkExternalComponent?: ComponentOrTagName\n\n\t/**\n\t * The default components or shorthand definitions for rich text and table\n\t * components.\n\t *\n\t * @see {@link https://prismic.io/docs/fields/rich-text}\n\t * @see {@link https://prismic.io/docs/fields/table}\n\t */\n\trichTextComponents?: RichTextComponents & TableComponents\n}\n\n/** Prismic Vue plugin configuration. */\nexport type PrismicPluginConfig = {\n\t/** A Prismic client instance to inject into the Vue app. */\n\tclient: ReturnType<CreateClient>\n\n\t/**\n\t * A default link resolver used to resolve links when route resolvers cannot be used.\n\t *\n\t * @see {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/** Components configuration. */\n\tcomponents?: ComponentsConfig\n}\n\n/**\n * Prismic Vue plugin interface accessible through `usePrismic()` and\n * `$prismic`.\n */\nexport type PrismicPlugin = {\n\t/** A Prismic client that can be used to query content from a repository. */\n\tclient: ReturnType<CreateClient>\n\n\t/** Helpers to determine if a field is filled. */\n\tisFilled: typeof isFilled\n\n\t/**\n\t * The default link resolver used to resolve links when route resolvers cannot be used.\n\t *\n\t * @see {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/** @internal */\n\treadonly components: ComponentsConfig\n\n\t/** @internal */\n\tinstall: (app: App) => void\n}\n\n/** Creates a Prismic Vue plugin instance that can be used by a Vue app. */\nexport const createPrismic = (config: PrismicPluginConfig): PrismicPlugin => {\n\treturn {\n\t\t...config,\n\t\tcomponents: config.components || {},\n\t\tisFilled,\n\t\tinstall(app: App): void {\n\t\t\tapp.provide(prismicKey, this)\n\t\t\tapp.config.globalProperties.$prismic = this\n\t\t},\n\t}\n}\n\n/**\n * Access the Prismic Vue plugin interface.\n *\n * @example\n *\n * ```typescript\n * const { client, isFilled } = usePrismic()\n * ```\n */\nexport const usePrismic = (): PrismicPlugin => {\n\treturn inject(prismicKey, { components: {} } as PrismicPlugin)\n}\n\ndeclare module \"vue\" {\n\texport interface ComponentCustomProperties {\n\t\t/** The Prismic Vue plugin interface. */\n\t\t$prismic: PrismicPlugin\n\t}\n}\n"],"mappings":";;;;AAUA,MAAM,aAAa,OAAO,IACzB,wBACA;;AA8DD,MAAa,iBAAiB,WAA+C;AAC5E,QAAO;EACN,GAAG;EACH,YAAY,OAAO,cAAc,EAAE;EACnC;EACA,QAAQ,KAAgB;AACvB,OAAI,QAAQ,YAAY,KAAK;AAC7B,OAAI,OAAO,iBAAiB,WAAW;;EAExC;;;;;;;;;;;AAYF,MAAa,mBAAkC;AAC9C,QAAO,OAAO,YAAY,EAAE,YAAY,EAAE,EAAE,CAAkB"}
package/dist/index.cjs CHANGED
@@ -1,21 +1,23 @@
1
- const require_createPrismic = require('./src/createPrismic.cjs');
2
- const require_PrismicImage = require('./src/PrismicImage.cjs');
3
- const require_PrismicLink = require('./src/PrismicLink.cjs');
4
- const require_PrismicRichText = require('./src/PrismicRichText/PrismicRichText.cjs');
5
- const require_getRichTextComponentProps = require('./src/PrismicRichText/getRichTextComponentProps.cjs');
6
- const require_getTableComponentProps = require('./src/PrismicTable/getTableComponentProps.cjs');
7
- const require_PrismicTable = require('./src/PrismicTable/PrismicTable.cjs');
8
- const require_PrismicText = require('./src/PrismicText.cjs');
9
- const require_TODOSliceComponent = require('./src/SliceZone/TODOSliceComponent.cjs');
10
- const require_SliceZone = require('./src/SliceZone/SliceZone.cjs');
11
- const require_getSliceComponentProps = require('./src/SliceZone/getSliceComponentProps.cjs');
12
- const require_defineSliceZoneComponents = require('./src/SliceZone/defineSliceZoneComponents.cjs');
1
+ const require_createPrismic = require('./createPrismic.cjs');
2
+ const require_PrismicImage = require('./PrismicImage.cjs');
3
+ const require_PrismicLink = require('./PrismicLink.cjs');
4
+ const require_PrismicRichText = require('./PrismicRichText/PrismicRichText.cjs');
5
+ const require_getRichTextComponentProps = require('./PrismicRichText/getRichTextComponentProps.cjs');
6
+ const require_getTableComponentProps = require('./PrismicTable/getTableComponentProps.cjs');
7
+ const require_PrismicTable = require('./PrismicTable/PrismicTable.cjs');
8
+ const require_PrismicText = require('./PrismicText.cjs');
9
+ const require_TODOSliceComponent = require('./SliceZone/TODOSliceComponent.cjs');
10
+ const require_SliceZone = require('./SliceZone/SliceZone.cjs');
11
+ const require_getSliceComponentProps = require('./SliceZone/getSliceComponentProps.cjs');
12
+ const require_defineSliceZoneComponents = require('./SliceZone/defineSliceZoneComponents.cjs');
13
+ const require_SliceSimulator = require('./SliceSimulator.cjs');
13
14
 
14
15
  exports.PrismicImage = require_PrismicImage;
15
16
  exports.PrismicLink = require_PrismicLink;
16
17
  exports.PrismicRichText = require_PrismicRichText;
17
18
  exports.PrismicTable = require_PrismicTable;
18
19
  exports.PrismicText = require_PrismicText;
20
+ exports.SliceSimulator = require_SliceSimulator;
19
21
  exports.SliceZone = require_SliceZone;
20
22
  exports.TODOSliceComponent = require_TODOSliceComponent.TODOSliceComponent;
21
23
  exports.createPrismic = require_createPrismic.createPrismic;
package/dist/index.d.cts CHANGED
@@ -8,9 +8,10 @@ import { PrismicImageProps, _default } from "./PrismicImage.vue.cjs";
8
8
  import { PrismicLinkProps, _default as _default$1 } from "./PrismicLink.vue.cjs";
9
9
  import { PrismicTextProps, _default as _default$4 } from "./PrismicText.vue.cjs";
10
10
  import { SliceComponentProps, SliceComponentType, SliceLike, SliceLikeGraphQL, SliceLikeRestV2, SliceZoneComponents, SliceZoneLike } from "./SliceZone/types.cjs";
11
- import { SliceZoneProps, _default as _default$5 } from "./SliceZone/SliceZone.vue.cjs";
11
+ import { SliceZoneProps, _default as _default$6 } from "./SliceZone/SliceZone.vue.cjs";
12
12
  import { TODOSliceComponent } from "./SliceZone/TODOSliceComponent.cjs";
13
13
  import { getSliceComponentProps } from "./SliceZone/getSliceComponentProps.cjs";
14
14
  import { defineSliceZoneComponents } from "./SliceZone/defineSliceZoneComponents.cjs";
15
+ import { SliceSimulatorProps, _default as _default$5 } from "./SliceSimulator.vue.cjs";
15
16
  import { PrismicPlugin, PrismicPluginConfig, createPrismic, usePrismic } from "./createPrismic.cjs";
16
- export { _default as PrismicImage, type PrismicImageProps, _default$1 as PrismicLink, type PrismicLinkProps, type PrismicPlugin, type PrismicPluginConfig, _default$2 as PrismicRichText, type PrismicRichTextProps, _default$3 as PrismicTable, type PrismicTableProps, _default$4 as PrismicText, type PrismicTextProps, type RichTextComponentProps, type RichTextComponents, type SliceComponentProps, type SliceComponentType, type SliceLike, type SliceLikeGraphQL, type SliceLikeRestV2, _default$5 as SliceZone, type SliceZoneComponents, type SliceZoneLike, type SliceZoneProps, TODOSliceComponent, type TableComponents, createPrismic, defineSliceZoneComponents, getRichTextComponentProps, getSliceComponentProps, getTableComponentProps_d_exports as getTableComponentProps, usePrismic };
17
+ export { _default as PrismicImage, type PrismicImageProps, _default$1 as PrismicLink, type PrismicLinkProps, type PrismicPlugin, type PrismicPluginConfig, _default$2 as PrismicRichText, type PrismicRichTextProps, _default$3 as PrismicTable, type PrismicTableProps, _default$4 as PrismicText, type PrismicTextProps, type RichTextComponentProps, type RichTextComponents, type SliceComponentProps, type SliceComponentType, type SliceLike, type SliceLikeGraphQL, type SliceLikeRestV2, _default$5 as SliceSimulator, type SliceSimulatorProps, _default$6 as SliceZone, type SliceZoneComponents, type SliceZoneLike, type SliceZoneProps, TODOSliceComponent, type TableComponents, createPrismic, defineSliceZoneComponents, getRichTextComponentProps, getSliceComponentProps, getTableComponentProps_d_exports as getTableComponentProps, usePrismic };
package/dist/index.d.ts CHANGED
@@ -1,19 +1,20 @@
1
- import { RichTextComponentProps, RichTextComponents } from "./src/PrismicRichText/types.js";
2
- import { PrismicRichTextProps, _default as _default$2 } from "./src/PrismicRichText/PrismicRichText.vue.js";
3
- import { getRichTextComponentProps } from "./src/PrismicRichText/getRichTextComponentProps.js";
4
- import "./src/PrismicRichText/index.js";
5
- import { TableComponents } from "./src/PrismicTable/types.js";
6
- import { PrismicTableProps, _default as _default$3 } from "./src/PrismicTable/PrismicTable.vue.js";
7
- import { getTableComponentProps_d_exports } from "./src/PrismicTable/getTableComponentProps.js";
8
- import "./src/PrismicTable/index.js";
9
- import { PrismicImageProps, _default } from "./src/PrismicImage.vue.js";
10
- import { PrismicLinkProps, _default as _default$1 } from "./src/PrismicLink.vue.js";
11
- import { PrismicTextProps, _default as _default$4 } from "./src/PrismicText.vue.js";
12
- import { SliceComponentProps, SliceComponentType, SliceLike, SliceLikeGraphQL, SliceLikeRestV2, SliceZoneComponents, SliceZoneLike } from "./src/SliceZone/types.js";
13
- import { SliceZoneProps, _default as _default$5 } from "./src/SliceZone/SliceZone.vue.js";
14
- import { TODOSliceComponent } from "./src/SliceZone/TODOSliceComponent.js";
15
- import { getSliceComponentProps } from "./src/SliceZone/getSliceComponentProps.js";
16
- import { defineSliceZoneComponents } from "./src/SliceZone/defineSliceZoneComponents.js";
17
- import "./src/SliceZone/index.js";
18
- import { PrismicPlugin, PrismicPluginConfig, createPrismic, usePrismic } from "./src/createPrismic.js";
19
- export { _default as PrismicImage, type PrismicImageProps, _default$1 as PrismicLink, type PrismicLinkProps, type PrismicPlugin, type PrismicPluginConfig, _default$2 as PrismicRichText, type PrismicRichTextProps, _default$3 as PrismicTable, type PrismicTableProps, _default$4 as PrismicText, type PrismicTextProps, type RichTextComponentProps, type RichTextComponents, type SliceComponentProps, type SliceComponentType, type SliceLike, type SliceLikeGraphQL, type SliceLikeRestV2, _default$5 as SliceZone, type SliceZoneComponents, type SliceZoneLike, type SliceZoneProps, TODOSliceComponent, type TableComponents, createPrismic, defineSliceZoneComponents, getRichTextComponentProps, getSliceComponentProps, getTableComponentProps_d_exports as getTableComponentProps, usePrismic };
1
+ import { RichTextComponentProps, RichTextComponents } from "./PrismicRichText/types.js";
2
+ import { PrismicRichTextProps, _default as _default$2 } from "./PrismicRichText/PrismicRichText.vue.js";
3
+ import { getRichTextComponentProps } from "./PrismicRichText/getRichTextComponentProps.js";
4
+ import "./PrismicRichText/index.js";
5
+ import { TableComponents } from "./PrismicTable/types.js";
6
+ import { PrismicTableProps, _default as _default$3 } from "./PrismicTable/PrismicTable.vue.js";
7
+ import { getTableComponentProps_d_exports } from "./PrismicTable/getTableComponentProps.js";
8
+ import "./PrismicTable/index.js";
9
+ import { PrismicImageProps, _default } from "./PrismicImage.vue.js";
10
+ import { PrismicLinkProps, _default as _default$1 } from "./PrismicLink.vue.js";
11
+ import { PrismicTextProps, _default as _default$4 } from "./PrismicText.vue.js";
12
+ import { SliceComponentProps, SliceComponentType, SliceLike, SliceLikeGraphQL, SliceLikeRestV2, SliceZoneComponents, SliceZoneLike } from "./SliceZone/types.js";
13
+ import { SliceZoneProps, _default as _default$6 } from "./SliceZone/SliceZone.vue.js";
14
+ import { TODOSliceComponent } from "./SliceZone/TODOSliceComponent.js";
15
+ import { getSliceComponentProps } from "./SliceZone/getSliceComponentProps.js";
16
+ import { defineSliceZoneComponents } from "./SliceZone/defineSliceZoneComponents.js";
17
+ import "./SliceZone/index.js";
18
+ import { SliceSimulatorProps, _default as _default$5 } from "./SliceSimulator.vue.js";
19
+ import { PrismicPlugin, PrismicPluginConfig, createPrismic, usePrismic } from "./createPrismic.js";
20
+ export { _default as PrismicImage, type PrismicImageProps, _default$1 as PrismicLink, type PrismicLinkProps, type PrismicPlugin, type PrismicPluginConfig, _default$2 as PrismicRichText, type PrismicRichTextProps, _default$3 as PrismicTable, type PrismicTableProps, _default$4 as PrismicText, type PrismicTextProps, type RichTextComponentProps, type RichTextComponents, type SliceComponentProps, type SliceComponentType, type SliceLike, type SliceLikeGraphQL, type SliceLikeRestV2, _default$5 as SliceSimulator, type SliceSimulatorProps, _default$6 as SliceZone, type SliceZoneComponents, type SliceZoneLike, type SliceZoneProps, TODOSliceComponent, type TableComponents, createPrismic, defineSliceZoneComponents, getRichTextComponentProps, getSliceComponentProps, getTableComponentProps_d_exports as getTableComponentProps, usePrismic };
package/dist/index.js CHANGED
@@ -1,14 +1,15 @@
1
- import { createPrismic, usePrismic } from "./src/createPrismic.js";
2
- import PrismicImage_default from "./src/PrismicImage.js";
3
- import PrismicLink_default from "./src/PrismicLink.js";
4
- import PrismicRichText_default from "./src/PrismicRichText/PrismicRichText.js";
5
- import { getRichTextComponentProps } from "./src/PrismicRichText/getRichTextComponentProps.js";
6
- import { getTableComponentProps_exports } from "./src/PrismicTable/getTableComponentProps.js";
7
- import PrismicTable_default from "./src/PrismicTable/PrismicTable.js";
8
- import PrismicText_default from "./src/PrismicText.js";
9
- import { TODOSliceComponent } from "./src/SliceZone/TODOSliceComponent.js";
10
- import SliceZone_default from "./src/SliceZone/SliceZone.js";
11
- import { getSliceComponentProps } from "./src/SliceZone/getSliceComponentProps.js";
12
- import { defineSliceZoneComponents } from "./src/SliceZone/defineSliceZoneComponents.js";
1
+ import { createPrismic, usePrismic } from "./createPrismic.js";
2
+ import PrismicImage_default from "./PrismicImage.js";
3
+ import PrismicLink_default from "./PrismicLink.js";
4
+ import PrismicRichText_default from "./PrismicRichText/PrismicRichText.js";
5
+ import { getRichTextComponentProps } from "./PrismicRichText/getRichTextComponentProps.js";
6
+ import { getTableComponentProps_exports } from "./PrismicTable/getTableComponentProps.js";
7
+ import PrismicTable_default from "./PrismicTable/PrismicTable.js";
8
+ import PrismicText_default from "./PrismicText.js";
9
+ import { TODOSliceComponent } from "./SliceZone/TODOSliceComponent.js";
10
+ import SliceZone_default from "./SliceZone/SliceZone.js";
11
+ import { getSliceComponentProps } from "./SliceZone/getSliceComponentProps.js";
12
+ import { defineSliceZoneComponents } from "./SliceZone/defineSliceZoneComponents.js";
13
+ import SliceSimulator_default from "./SliceSimulator.js";
13
14
 
14
- export { PrismicImage_default as PrismicImage, PrismicLink_default as PrismicLink, PrismicRichText_default as PrismicRichText, PrismicTable_default as PrismicTable, PrismicText_default as PrismicText, SliceZone_default as SliceZone, TODOSliceComponent, createPrismic, defineSliceZoneComponents, getRichTextComponentProps, getSliceComponentProps, getTableComponentProps_exports as getTableComponentProps, usePrismic };
15
+ export { PrismicImage_default as PrismicImage, PrismicLink_default as PrismicLink, PrismicRichText_default as PrismicRichText, PrismicTable_default as PrismicTable, PrismicText_default as PrismicText, SliceSimulator_default as SliceSimulator, SliceZone_default as SliceZone, TODOSliceComponent, createPrismic, defineSliceZoneComponents, getRichTextComponentProps, getSliceComponentProps, getTableComponentProps_exports as getTableComponentProps, usePrismic };
@@ -1,4 +1,4 @@
1
- const require_package = require('../../package.cjs');
1
+ const require_package = require('../package.cjs');
2
2
 
3
3
  //#region src/lib/devMsg.ts
4
4
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devMsg.cjs","names":["version"],"sources":["../../src/lib/devMsg.ts"],"sourcesContent":["import { version } from \"../../package.json\"\n\n/**\n * Returns a `prismic.dev/msg` URL for a given message slug.\n *\n * @example\n *\n * ```ts\n * devMsg(\"missing-param\")\n * // => \"https://prismic.dev/msg/svelte/v1.2.3/missing-param.md\"\n * ```\n *\n * @param slug - Slug for the message. This corresponds to a Markdown file in\n * the Git repository's `/messages` directory.\n *\n * @returns The `prismic.dev/msg` URL for the given slug.\n */\nexport const devMsg = (slug: string): string => {\n\treturn `https://prismic.dev/msg/vue/v${version}/${slug}`\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAiBA,MAAa,UAAU,SAAyB;AAC/C,QAAO,gCAAgCA,wBAAQ,GAAG"}
@@ -1,4 +1,4 @@
1
- import { version } from "../../package.js";
1
+ import { version } from "../package.js";
2
2
 
3
3
  //#region src/lib/devMsg.ts
4
4
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devMsg.js","names":[],"sources":["../../src/lib/devMsg.ts"],"sourcesContent":["import { version } from \"../../package.json\"\n\n/**\n * Returns a `prismic.dev/msg` URL for a given message slug.\n *\n * @example\n *\n * ```ts\n * devMsg(\"missing-param\")\n * // => \"https://prismic.dev/msg/svelte/v1.2.3/missing-param.md\"\n * ```\n *\n * @param slug - Slug for the message. This corresponds to a Markdown file in\n * the Git repository's `/messages` directory.\n *\n * @returns The `prismic.dev/msg` URL for the given slug.\n */\nexport const devMsg = (slug: string): string => {\n\treturn `https://prismic.dev/msg/vue/v${version}/${slug}`\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAiBA,MAAa,UAAU,SAAyB;AAC/C,QAAO,gCAAgC,QAAQ,GAAG"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isInternalURL.cjs","names":[],"sources":["../../src/lib/isInternalURL.ts"],"sourcesContent":["/**\n * Determines if a URL is internal or external.\n *\n * @param url - The URL to check if internal or external\n *\n * @returns `true` if `url` is internal, `false` otherwise\n */\n// TODO: This does not detect all relative URLs as internal, such as `about` or `./about`. This function assumes relative URLs start with a \"/\"`.\nexport const isInternalURL = (url: string): boolean => {\n\t/** @see Regex101 expression: {@link https://regex101.com/r/1y7iod/1} */\n\tconst isInternal = /^\\/(?!\\/)/.test(url)\n\t/** @see Regex101 expression: {@link https://regex101.com/r/RnUseS/1} */\n\tconst isSpecialLink = !isInternal && !/^https?:\\/\\//i.test(url)\n\n\treturn isInternal && !isSpecialLink\n}\n"],"mappings":";;;;;;;;;AAQA,MAAa,iBAAiB,QAAyB;;CAEtD,MAAM,aAAa,YAAY,KAAK,IAAI;;CAExC,MAAM,gBAAgB,CAAC,cAAc,CAAC,gBAAgB,KAAK,IAAI;AAE/D,QAAO,cAAc,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isInternalURL.js","names":[],"sources":["../../src/lib/isInternalURL.ts"],"sourcesContent":["/**\n * Determines if a URL is internal or external.\n *\n * @param url - The URL to check if internal or external\n *\n * @returns `true` if `url` is internal, `false` otherwise\n */\n// TODO: This does not detect all relative URLs as internal, such as `about` or `./about`. This function assumes relative URLs start with a \"/\"`.\nexport const isInternalURL = (url: string): boolean => {\n\t/** @see Regex101 expression: {@link https://regex101.com/r/1y7iod/1} */\n\tconst isInternal = /^\\/(?!\\/)/.test(url)\n\t/** @see Regex101 expression: {@link https://regex101.com/r/RnUseS/1} */\n\tconst isSpecialLink = !isInternal && !/^https?:\\/\\//i.test(url)\n\n\treturn isInternal && !isSpecialLink\n}\n"],"mappings":";;;;;;;;AAQA,MAAa,iBAAiB,QAAyB;;CAEtD,MAAM,aAAa,YAAY,KAAK,IAAI;;CAExC,MAAM,gBAAgB,CAAC,cAAc,CAAC,gBAAgB,KAAK,IAAI;AAE/D,QAAO,cAAc,CAAC"}
package/dist/package.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  //#region package.json
3
- var version = "6.0.0";
3
+ var version = "6.1.0-canary.edf003d";
4
4
 
5
5
  //#endregion
6
6
  Object.defineProperty(exports, 'version', {
package/dist/package.js CHANGED
@@ -1,5 +1,5 @@
1
1
  //#region package.json
2
- var version = "6.0.0";
2
+ var version = "6.1.0-canary.edf003d";
3
3
 
4
4
  //#endregion
5
5
  export { version };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","names":[],"sources":["../src/types.ts"],"sourcesContent":["import type { Component as _Component } from \"vue\"\n\nexport type ComponentOrTagName = string | _Component\n\n// For reference within TypeScript files when `*.vue` type cannot be inferred\nexport type Component<TProps> = _Component | _Component<TProps>\n\n/**\n * A shorthand definition for `<PrismicRichText />` and `<PrismicTable />`\n * component types.\n */\nexport type ComponentShorthand = {\n\t/** The HTML element type rendered for this node type. */\n\tas?: string\n\n\t/** Other attributes to apply to the element type. */\n\t[Attribute: string]: string | boolean | null | undefined\n}\n\nexport const isComponent = <T>(\n\tcomponent: Component<T> | ComponentShorthand | undefined,\n): component is Component<T> => {\n\treturn (\n\t\t!!component &&\n\t\t(typeof component === \"function\" ||\n\t\t\t(typeof component === \"object\" &&\n\t\t\t\t((\"render\" in component && typeof component.render === \"function\") ||\n\t\t\t\t\t(\"setup\" in component && typeof component.setup === \"function\") ||\n\t\t\t\t\t(\"__file\" in component && !!component.__file) ||\n\t\t\t\t\t(\"__name\" in component && !!component.__name) ||\n\t\t\t\t\t(\"props\" in component && typeof component.props === \"object\"))))\n\t)\n}\n"],"mappings":";;AAmBA,MAAa,eACZ,cAC+B;AAC/B,QACC,CAAC,CAAC,cACD,OAAO,cAAc,cACpB,OAAO,cAAc,aACnB,YAAY,aAAa,OAAO,UAAU,WAAW,cACrD,WAAW,aAAa,OAAO,UAAU,UAAU,cACnD,YAAY,aAAa,CAAC,CAAC,UAAU,UACrC,YAAY,aAAa,CAAC,CAAC,UAAU,UACrC,WAAW,aAAa,OAAO,UAAU,UAAU"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../src/types.ts"],"sourcesContent":[],"mappings":";;;KAEY,kBAAA,YAA8B;KAG9B,sBAAoB,YAAa,UAAW;AAHxD;AAGA;;;AAA6C,KAMjC,kBAAA,GANiC;EAAU;EAM3C,EAAA,CAAA,EAAA,MAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","names":[],"sources":["../src/types.ts"],"sourcesContent":["import type { Component as _Component } from \"vue\"\n\nexport type ComponentOrTagName = string | _Component\n\n// For reference within TypeScript files when `*.vue` type cannot be inferred\nexport type Component<TProps> = _Component | _Component<TProps>\n\n/**\n * A shorthand definition for `<PrismicRichText />` and `<PrismicTable />`\n * component types.\n */\nexport type ComponentShorthand = {\n\t/** The HTML element type rendered for this node type. */\n\tas?: string\n\n\t/** Other attributes to apply to the element type. */\n\t[Attribute: string]: string | boolean | null | undefined\n}\n\nexport const isComponent = <T>(\n\tcomponent: Component<T> | ComponentShorthand | undefined,\n): component is Component<T> => {\n\treturn (\n\t\t!!component &&\n\t\t(typeof component === \"function\" ||\n\t\t\t(typeof component === \"object\" &&\n\t\t\t\t((\"render\" in component && typeof component.render === \"function\") ||\n\t\t\t\t\t(\"setup\" in component && typeof component.setup === \"function\") ||\n\t\t\t\t\t(\"__file\" in component && !!component.__file) ||\n\t\t\t\t\t(\"__name\" in component && !!component.__name) ||\n\t\t\t\t\t(\"props\" in component && typeof component.props === \"object\"))))\n\t)\n}\n"],"mappings":";AAmBA,MAAa,eACZ,cAC+B;AAC/B,QACC,CAAC,CAAC,cACD,OAAO,cAAc,cACpB,OAAO,cAAc,aACnB,YAAY,aAAa,OAAO,UAAU,WAAW,cACrD,WAAW,aAAa,OAAO,UAAU,UAAU,cACnD,YAAY,aAAa,CAAC,CAAC,UAAU,UACrC,YAAY,aAAa,CAAC,CAAC,UAAU,UACrC,WAAW,aAAa,OAAO,UAAU,UAAU"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prismicio/vue",
3
- "version": "6.0.0",
3
+ "version": "6.1.0-canary.edf003d",
4
4
  "description": "Vue plugin, components, and composables to fetch and present Prismic content",
5
5
  "keywords": [
6
6
  "typescript",
@@ -42,28 +42,29 @@
42
42
  "test": "npm run lint && npm run types && npm run unit && npm run build"
43
43
  },
44
44
  "dependencies": {
45
+ "@prismicio/simulator": "^0.2.0",
45
46
  "esm-env": "^1.2.2"
46
47
  },
47
48
  "devDependencies": {
48
- "@prismicio/client": "^7.21.1",
49
+ "@prismicio/client": "^7.21.3",
49
50
  "@prismicio/mock": "^0.7.1",
50
- "@trivago/prettier-plugin-sort-imports": "^6.0.0",
51
+ "@trivago/prettier-plugin-sort-imports": "^6.0.2",
51
52
  "@types/jsdom-global": "^3.0.7",
52
53
  "@vitejs/plugin-vue": "^6.0.3",
53
- "@vitest/coverage-v8": "^4.0.16",
54
+ "@vitest/coverage-v8": "^4.0.17",
54
55
  "@vue/test-utils": "^2.4.6",
55
- "jsdom": "^27.3.0",
56
+ "jsdom": "^27.4.0",
56
57
  "jsdom-global": "^3.0.2",
57
- "oxlint": "1.35.0",
58
+ "oxlint": "1.39.0",
58
59
  "prettier": "^3.7.4",
59
60
  "prettier-plugin-jsdoc": "^1.8.0",
60
- "tsdown": "0.18.2",
61
+ "tsdown": "^0.19.0",
61
62
  "typescript": "^5.9.3",
62
- "vite": "^7.3.0",
63
- "vitest": "^4.0.16",
63
+ "vite": "^7.3.1",
64
+ "vitest": "^4.0.17",
64
65
  "vue": "^3.5.26",
65
66
  "vue-router": "^4.6.4",
66
- "vue-tsc": "^3.2.1"
67
+ "vue-tsc": "^3.2.2"
67
68
  },
68
69
  "peerDependencies": {
69
70
  "@prismicio/client": "^7",
@@ -0,0 +1,78 @@
1
+ <script lang="ts" setup>
2
+ import { ref, onMounted, onUnmounted } from "vue";
3
+ import {
4
+ getDefaultProps,
5
+ getDefaultSlices,
6
+ getDefaultMessage,
7
+ onClickHandler,
8
+ disableEventHandler,
9
+ simulatorClass,
10
+ simulatorRootClass,
11
+ StateEventType,
12
+ SimulatorManager,
13
+ } from "@prismicio/simulator/kit";
14
+
15
+ /** Props for `<SliceSimulator />`. */
16
+ export type SliceSimulatorProps = {
17
+ /** The z-index value of the simulator so that it's displayed above layout elements. */
18
+ zIndex?: number
19
+ /** The background color of the simulator to match website design. */
20
+ background?: string
21
+ }
22
+
23
+ const props = defineProps<SliceSimulatorProps>()
24
+ defineOptions({ name: "SliceSimulator" })
25
+
26
+ const slices = ref(getDefaultSlices());
27
+ const message = ref(getDefaultMessage());
28
+
29
+ const simulatorManager = new SimulatorManager();
30
+
31
+ onMounted(() => {
32
+ simulatorManager.state.on(
33
+ StateEventType.Slices,
34
+ (_slices) => { slices.value = _slices; },
35
+ "simulator-slices",
36
+ );
37
+ simulatorManager.state.on(
38
+ StateEventType.Message,
39
+ (_message) => { message.value = _message; },
40
+ "simulator-message",
41
+ );
42
+
43
+ simulatorManager.init();
44
+ });
45
+
46
+ onUnmounted(() => {
47
+ simulatorManager.state.off(StateEventType.Slices, "simulator-slices");
48
+
49
+ simulatorManager.state.off(StateEventType.Message, "simulator-message");
50
+ });
51
+ </script>
52
+
53
+ <template>
54
+ <div
55
+ :class="simulatorClass"
56
+ :style="{
57
+ zIndex: props.zIndex || getDefaultProps().zIndex,
58
+ position: 'fixed',
59
+ top: 0,
60
+ left: 0,
61
+ width: '100%',
62
+ height: '100vh',
63
+ overflow: 'auto',
64
+ background: props.background || getDefaultProps().background,
65
+ }"
66
+ >
67
+ <article v-if="message" v-html="message" />
68
+ <div
69
+ v-else-if="slices.length"
70
+ id="root"
71
+ :class="simulatorRootClass"
72
+ @click.capture="onClickHandler"
73
+ @submit.capture="disableEventHandler"
74
+ >
75
+ <slot :slices="slices" />
76
+ </div>
77
+ </div>
78
+ </template>
package/src/index.ts CHANGED
@@ -34,5 +34,8 @@ export type {
34
34
  SliceZoneLike,
35
35
  } from "./SliceZone"
36
36
 
37
+ export { default as SliceSimulator } from "./SliceSimulator.vue"
38
+ export type { SliceSimulatorProps } from "./SliceSimulator.vue"
39
+
37
40
  export { createPrismic, usePrismic } from "./createPrismic"
38
41
  export type { PrismicPlugin, PrismicPluginConfig } from "./createPrismic"
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicImage.cjs","names":[],"sources":["../../src/PrismicImage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { ImageField, asImageSrc } from \"@prismicio/client\"\nimport {\n\tasImagePixelDensitySrcSet,\n\tasImageWidthSrcSet,\n\tisFilled,\n} from \"@prismicio/client\"\nimport { DEV } from \"esm-env\"\nimport { computed, watchEffect } from \"vue\"\n\nimport { devMsg } from \"./lib/devMsg\"\n\n/** Props for `<PrismicImage />`. */\nexport type PrismicImageProps = {\n\t/** The Prismic image field or thumbnail to render. */\n\tfield: ImageField | ImageField<string>\n\n\t/**\n\t * An object of Imgix URL API parameters to transform the image.\n\t *\n\t * See: https://docs.imgix.com/apis/rendering\n\t */\n\timgixParams?: Parameters<typeof asImageSrc>[1]\n\n\t/**\n\t * Declare an image as decorative by providing `alt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\talt?: \"\"\n\n\t/**\n\t * Declare an image as decorative only if the image field does not have\n\t * alternative text by providing `fallbackAlt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\tfallbackAlt?: \"\"\n\n\t/**\n\t * The width attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/width\n\t */\n\twidth?: number | string\n\n\t/**\n\t * The height attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/height\n\t */\n\theight?: number | string\n} & (\n\t| {\n\t\t\t/**\n\t\t\t * Widths (in pixels) used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If omitted or set to `\"defaults\"`, the following widths will be used:\n\t\t\t * 640, 750, 828, 1080, 1200, 1920, 2048, 3840.\n\t\t\t *\n\t\t\t * If the image field contains responsive views, each responsive view can\n\t\t\t * be used as a width in the resulting `srcset` by passing `\"thumbnails\"`\n\t\t\t * as the `widths` prop.\n\t\t\t */\n\t\t\twidths?:\n\t\t\t\t| NonNullable<Parameters<typeof asImageWidthSrcSet>[1]>[\"widths\"]\n\t\t\t\t| \"thumbnails\"\n\t\t\t\t| \"defaults\"\n\t\t\tpixelDensities?: never\n\t }\n\t| {\n\t\t\twidths?: never\n\t\t\t/**\n\t\t\t * Pixel densities used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If a `pixelDensities` prop is passed `\"defaults\"`, the following pixel\n\t\t\t * densities will be used: 1, 2, 3.\n\t\t\t */\n\t\t\tpixelDensities:\n\t\t\t\t| NonNullable<\n\t\t\t\t\t\tParameters<typeof asImagePixelDensitySrcSet>[1]\n\t\t\t\t >[\"pixelDensities\"]\n\t\t\t\t| \"defaults\"\n\t }\n)\n\nconst props = defineProps<PrismicImageProps>()\ndefineOptions({ name: \"PrismicImage\" })\n\nif (DEV) {\n\twatchEffect(() => {\n\t\tif (typeof props.alt === \"string\" && props.alt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"alt\" prop can only be used to declare an image as decorative by passing an empty string (alt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"alt\" prop or changing it to alt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (typeof props.fallbackAlt === \"string\" && props.fallbackAlt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"fallbackAlt\" prop can only be used to declare an image as decorative by passing an empty string (fallbackAlt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"fallbackAlt\" prop or changing it to fallbackAlt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (props.widths && props.pixelDensities) {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] Only one of \"widths\" or \"pixelDensities\" props can be provided. You can resolve this warning by removing either the \"widths\" or \"pixelDensities\" prop. \"widths\" will be used in this case.`,\n\t\t\t)\n\t\t}\n\t})\n}\n\nconst castInt = (input: string | number | undefined): number | undefined => {\n\tif (typeof input === \"number\" || typeof input === \"undefined\") {\n\t\treturn input\n\t} else {\n\t\tconst parsed = Number.parseInt(input)\n\n\t\tif (Number.isNaN(parsed)) {\n\t\t\treturn undefined\n\t\t} else {\n\t\t\treturn parsed\n\t\t}\n\t}\n}\n\nconst image = computed(() => {\n\tif (!isFilled.imageThumbnail(props.field)) {\n\t\treturn\n\t}\n\n\tlet src: string | undefined\n\tlet srcSet: string | undefined\n\tif (props.widths || !props.pixelDensities) {\n\t\tconst res = asImageWidthSrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\twidths: props.widths === \"defaults\" ? undefined : props.widths,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t} else if (props.pixelDensities) {\n\t\tconst res = asImagePixelDensitySrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\tpixelDensities:\n\t\t\t\tprops.pixelDensities === \"defaults\" ? undefined : props.pixelDensities,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t}\n\n\tconst ar = props.field.dimensions.width / props.field.dimensions.height\n\n\tconst castedWidth = castInt(props.width)\n\tconst castedHeight = castInt(props.height)\n\n\tlet resolvedWidth = castedWidth ?? props.field.dimensions.width\n\tlet resolvedHeight = castedHeight ?? props.field.dimensions.height\n\n\tif (castedWidth != null && castedHeight == null) {\n\t\tresolvedHeight = castedWidth / ar\n\t} else if (castedWidth == null && castedHeight != null) {\n\t\tresolvedWidth = castedHeight * ar\n\t}\n\n\treturn {\n\t\tsrc,\n\t\tsrcSet,\n\t\talt: props.alt ?? (props.field.alt || props.fallbackAlt),\n\t\twidth: Math.round(resolvedWidth),\n\t\theight: Math.round(resolvedHeight),\n\t}\n})\n</script>\n\n<template>\n\t<img\n\t\tv-if=\"image\"\n\t\t:src=\"image.src\"\n\t\t:srcset=\"image.srcSet\"\n\t\t:alt=\"image.alt\"\n\t\t:width=\"image.width\"\n\t\t:height=\"image.height\"\n\t/>\n</template>\n"],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicImage.js","names":[],"sources":["../../src/PrismicImage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { ImageField, asImageSrc } from \"@prismicio/client\"\nimport {\n\tasImagePixelDensitySrcSet,\n\tasImageWidthSrcSet,\n\tisFilled,\n} from \"@prismicio/client\"\nimport { DEV } from \"esm-env\"\nimport { computed, watchEffect } from \"vue\"\n\nimport { devMsg } from \"./lib/devMsg\"\n\n/** Props for `<PrismicImage />`. */\nexport type PrismicImageProps = {\n\t/** The Prismic image field or thumbnail to render. */\n\tfield: ImageField | ImageField<string>\n\n\t/**\n\t * An object of Imgix URL API parameters to transform the image.\n\t *\n\t * See: https://docs.imgix.com/apis/rendering\n\t */\n\timgixParams?: Parameters<typeof asImageSrc>[1]\n\n\t/**\n\t * Declare an image as decorative by providing `alt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\talt?: \"\"\n\n\t/**\n\t * Declare an image as decorative only if the image field does not have\n\t * alternative text by providing `fallbackAlt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\tfallbackAlt?: \"\"\n\n\t/**\n\t * The width attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/width\n\t */\n\twidth?: number | string\n\n\t/**\n\t * The height attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/height\n\t */\n\theight?: number | string\n} & (\n\t| {\n\t\t\t/**\n\t\t\t * Widths (in pixels) used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If omitted or set to `\"defaults\"`, the following widths will be used:\n\t\t\t * 640, 750, 828, 1080, 1200, 1920, 2048, 3840.\n\t\t\t *\n\t\t\t * If the image field contains responsive views, each responsive view can\n\t\t\t * be used as a width in the resulting `srcset` by passing `\"thumbnails\"`\n\t\t\t * as the `widths` prop.\n\t\t\t */\n\t\t\twidths?:\n\t\t\t\t| NonNullable<Parameters<typeof asImageWidthSrcSet>[1]>[\"widths\"]\n\t\t\t\t| \"thumbnails\"\n\t\t\t\t| \"defaults\"\n\t\t\tpixelDensities?: never\n\t }\n\t| {\n\t\t\twidths?: never\n\t\t\t/**\n\t\t\t * Pixel densities used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If a `pixelDensities` prop is passed `\"defaults\"`, the following pixel\n\t\t\t * densities will be used: 1, 2, 3.\n\t\t\t */\n\t\t\tpixelDensities:\n\t\t\t\t| NonNullable<\n\t\t\t\t\t\tParameters<typeof asImagePixelDensitySrcSet>[1]\n\t\t\t\t >[\"pixelDensities\"]\n\t\t\t\t| \"defaults\"\n\t }\n)\n\nconst props = defineProps<PrismicImageProps>()\ndefineOptions({ name: \"PrismicImage\" })\n\nif (DEV) {\n\twatchEffect(() => {\n\t\tif (typeof props.alt === \"string\" && props.alt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"alt\" prop can only be used to declare an image as decorative by passing an empty string (alt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"alt\" prop or changing it to alt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (typeof props.fallbackAlt === \"string\" && props.fallbackAlt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"fallbackAlt\" prop can only be used to declare an image as decorative by passing an empty string (fallbackAlt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"fallbackAlt\" prop or changing it to fallbackAlt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (props.widths && props.pixelDensities) {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] Only one of \"widths\" or \"pixelDensities\" props can be provided. You can resolve this warning by removing either the \"widths\" or \"pixelDensities\" prop. \"widths\" will be used in this case.`,\n\t\t\t)\n\t\t}\n\t})\n}\n\nconst castInt = (input: string | number | undefined): number | undefined => {\n\tif (typeof input === \"number\" || typeof input === \"undefined\") {\n\t\treturn input\n\t} else {\n\t\tconst parsed = Number.parseInt(input)\n\n\t\tif (Number.isNaN(parsed)) {\n\t\t\treturn undefined\n\t\t} else {\n\t\t\treturn parsed\n\t\t}\n\t}\n}\n\nconst image = computed(() => {\n\tif (!isFilled.imageThumbnail(props.field)) {\n\t\treturn\n\t}\n\n\tlet src: string | undefined\n\tlet srcSet: string | undefined\n\tif (props.widths || !props.pixelDensities) {\n\t\tconst res = asImageWidthSrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\twidths: props.widths === \"defaults\" ? undefined : props.widths,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t} else if (props.pixelDensities) {\n\t\tconst res = asImagePixelDensitySrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\tpixelDensities:\n\t\t\t\tprops.pixelDensities === \"defaults\" ? undefined : props.pixelDensities,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t}\n\n\tconst ar = props.field.dimensions.width / props.field.dimensions.height\n\n\tconst castedWidth = castInt(props.width)\n\tconst castedHeight = castInt(props.height)\n\n\tlet resolvedWidth = castedWidth ?? props.field.dimensions.width\n\tlet resolvedHeight = castedHeight ?? props.field.dimensions.height\n\n\tif (castedWidth != null && castedHeight == null) {\n\t\tresolvedHeight = castedWidth / ar\n\t} else if (castedWidth == null && castedHeight != null) {\n\t\tresolvedWidth = castedHeight * ar\n\t}\n\n\treturn {\n\t\tsrc,\n\t\tsrcSet,\n\t\talt: props.alt ?? (props.field.alt || props.fallbackAlt),\n\t\twidth: Math.round(resolvedWidth),\n\t\theight: Math.round(resolvedHeight),\n\t}\n})\n</script>\n\n<template>\n\t<img\n\t\tv-if=\"image\"\n\t\t:src=\"image.src\"\n\t\t:srcset=\"image.srcSet\"\n\t\t:alt=\"image.alt\"\n\t\t:width=\"image.width\"\n\t\t:height=\"image.height\"\n\t/>\n</template>\n"],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicImage.vue.d.ts","names":[],"sources":["../../src/PrismicImage.vue"],"sourcesContent":[],"mappings":";;;;;KAgNY,iBAAA;EAAA;EAEJ,KAAA,EAAA,UAAA,GAAa,UAAb,CAAA,MAAA,CAAA;EAAa;;;;;EAsDf,WAAA,CAAA,EA/CS,UA+CT,CAAA,OA/C2B,UA+C3B,CAAA,CAAA,CAAA,CAAA;EAekB;;;;AAIvB;;EAzEoB,GAAA,CAAA,EAAA,EAAA;EAOY;;;;;;;EAAA,WAAA,CAAA,EAAA,EAAA;EAAlB;;;;;;;EAPP;;;;;;EAsDF,MAAA,CAAA,EAAA,MAAA,GAAA,MAAA;CAtDE,GAAA,CAAA;EAAa;;;;;;;;;;EAsMH,MAAA,CAAA,EAhJZ,WAgJY,CAhJA,UAgJA,CAAA,OAhJkB,kBAgJlB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,GAAA,YAAA,GAAA,UAAA;EAAA,cAGsB,CAAA,EAAA,KAAZ;;;;;;;;;kBArItB,YACA,kBAAkB;;cAiIlB,mBAAY;;SAtMV,aAAa;;;;;;gBAON,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA+C3B,YAAY,kBAAkB;;;;SAtD5B,aAAa;;;;;;gBAON,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6D3B,YACA,kBAAkB;oBADP,IAAA,CAAA,qBAAA;;SApET,aAAa;;;;;;gBAON,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA+C3B,YAAY,kBAAkB;;;;SAtD5B,aAAa;;;;;;gBAON,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6D3B,YACA,kBAAkB;;cAiIN,iBAGU"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicImage.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../src/PrismicImage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { ImageField, asImageSrc } from \"@prismicio/client\"\nimport {\n\tasImagePixelDensitySrcSet,\n\tasImageWidthSrcSet,\n\tisFilled,\n} from \"@prismicio/client\"\nimport { DEV } from \"esm-env\"\nimport { computed, watchEffect } from \"vue\"\n\nimport { devMsg } from \"./lib/devMsg\"\n\n/** Props for `<PrismicImage />`. */\nexport type PrismicImageProps = {\n\t/** The Prismic image field or thumbnail to render. */\n\tfield: ImageField | ImageField<string>\n\n\t/**\n\t * An object of Imgix URL API parameters to transform the image.\n\t *\n\t * See: https://docs.imgix.com/apis/rendering\n\t */\n\timgixParams?: Parameters<typeof asImageSrc>[1]\n\n\t/**\n\t * Declare an image as decorative by providing `alt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\talt?: \"\"\n\n\t/**\n\t * Declare an image as decorative only if the image field does not have\n\t * alternative text by providing `fallbackAlt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\tfallbackAlt?: \"\"\n\n\t/**\n\t * The width attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/width\n\t */\n\twidth?: number | string\n\n\t/**\n\t * The height attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/height\n\t */\n\theight?: number | string\n} & (\n\t| {\n\t\t\t/**\n\t\t\t * Widths (in pixels) used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If omitted or set to `\"defaults\"`, the following widths will be used:\n\t\t\t * 640, 750, 828, 1080, 1200, 1920, 2048, 3840.\n\t\t\t *\n\t\t\t * If the image field contains responsive views, each responsive view can\n\t\t\t * be used as a width in the resulting `srcset` by passing `\"thumbnails\"`\n\t\t\t * as the `widths` prop.\n\t\t\t */\n\t\t\twidths?:\n\t\t\t\t| NonNullable<Parameters<typeof asImageWidthSrcSet>[1]>[\"widths\"]\n\t\t\t\t| \"thumbnails\"\n\t\t\t\t| \"defaults\"\n\t\t\tpixelDensities?: never\n\t }\n\t| {\n\t\t\twidths?: never\n\t\t\t/**\n\t\t\t * Pixel densities used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If a `pixelDensities` prop is passed `\"defaults\"`, the following pixel\n\t\t\t * densities will be used: 1, 2, 3.\n\t\t\t */\n\t\t\tpixelDensities:\n\t\t\t\t| NonNullable<\n\t\t\t\t\t\tParameters<typeof asImagePixelDensitySrcSet>[1]\n\t\t\t\t >[\"pixelDensities\"]\n\t\t\t\t| \"defaults\"\n\t }\n)\n\nconst props = defineProps<PrismicImageProps>()\ndefineOptions({ name: \"PrismicImage\" })\n\nif (DEV) {\n\twatchEffect(() => {\n\t\tif (typeof props.alt === \"string\" && props.alt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"alt\" prop can only be used to declare an image as decorative by passing an empty string (alt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"alt\" prop or changing it to alt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (typeof props.fallbackAlt === \"string\" && props.fallbackAlt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"fallbackAlt\" prop can only be used to declare an image as decorative by passing an empty string (fallbackAlt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"fallbackAlt\" prop or changing it to fallbackAlt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (props.widths && props.pixelDensities) {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] Only one of \"widths\" or \"pixelDensities\" props can be provided. You can resolve this warning by removing either the \"widths\" or \"pixelDensities\" prop. \"widths\" will be used in this case.`,\n\t\t\t)\n\t\t}\n\t})\n}\n\nconst castInt = (input: string | number | undefined): number | undefined => {\n\tif (typeof input === \"number\" || typeof input === \"undefined\") {\n\t\treturn input\n\t} else {\n\t\tconst parsed = Number.parseInt(input)\n\n\t\tif (Number.isNaN(parsed)) {\n\t\t\treturn undefined\n\t\t} else {\n\t\t\treturn parsed\n\t\t}\n\t}\n}\n\nconst image = computed(() => {\n\tif (!isFilled.imageThumbnail(props.field)) {\n\t\treturn\n\t}\n\n\tlet src: string | undefined\n\tlet srcSet: string | undefined\n\tif (props.widths || !props.pixelDensities) {\n\t\tconst res = asImageWidthSrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\twidths: props.widths === \"defaults\" ? undefined : props.widths,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t} else if (props.pixelDensities) {\n\t\tconst res = asImagePixelDensitySrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\tpixelDensities:\n\t\t\t\tprops.pixelDensities === \"defaults\" ? undefined : props.pixelDensities,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t}\n\n\tconst ar = props.field.dimensions.width / props.field.dimensions.height\n\n\tconst castedWidth = castInt(props.width)\n\tconst castedHeight = castInt(props.height)\n\n\tlet resolvedWidth = castedWidth ?? props.field.dimensions.width\n\tlet resolvedHeight = castedHeight ?? props.field.dimensions.height\n\n\tif (castedWidth != null && castedHeight == null) {\n\t\tresolvedHeight = castedWidth / ar\n\t} else if (castedWidth == null && castedHeight != null) {\n\t\tresolvedWidth = castedHeight * ar\n\t}\n\n\treturn {\n\t\tsrc,\n\t\tsrcSet,\n\t\talt: props.alt ?? (props.field.alt || props.fallbackAlt),\n\t\twidth: Math.round(resolvedWidth),\n\t\theight: Math.round(resolvedHeight),\n\t}\n})\n</script>\n\n<template>\n\t<img\n\t\tv-if=\"image\"\n\t\t:src=\"image.src\"\n\t\t:srcset=\"image.srcSet\"\n\t\t:alt=\"image.alt\"\n\t\t:width=\"image.width\"\n\t\t:height=\"image.height\"\n\t/>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0FA,MAAM,QAAQ;AAGd,MAAI,YACH,4BAAkB;AACjB,OAAI,OAAO,MAAM,QAAQ,YAAY,MAAM,QAAQ,GAClD,SAAQ,KACP,qQAAqQ,sBACpQ,8BACA,GACF;AAGD,OAAI,OAAO,MAAM,gBAAgB,YAAY,MAAM,gBAAgB,GAClE,SAAQ,KACP,qSAAqS,sBACpS,8BACA,GACF;AAGD,OAAI,MAAM,UAAU,MAAM,eACzB,SAAQ,KACP,4MACD;IAED;EAGF,MAAM,WAAW,UAA2D;AAC3E,OAAI,OAAO,UAAU,YAAY,OAAO,UAAU,YACjD,QAAO;QACD;IACN,MAAM,SAAS,OAAO,SAAS,MAAK;AAEpC,QAAI,OAAO,MAAM,OAAO,CACvB;QAEA,QAAO;;;EAKV,MAAM,gCAAuB;AAC5B,OAAI,CAAC,2BAAS,eAAe,MAAM,MAAM,CACxC;GAGD,IAAI;GACJ,IAAI;AACJ,OAAI,MAAM,UAAU,CAAC,MAAM,gBAAgB;IAC1C,MAAM,gDAAyB,MAAM,OAAO;KAC3C,GAAG,MAAM;KACT,QAAQ,MAAM,WAAW,aAAa,SAAY,MAAM;KACxD,CAAA;AAED,UAAM,IAAI;AACV,aAAS,IAAI;cACH,MAAM,gBAAgB;IAChC,MAAM,uDAAgC,MAAM,OAAO;KAClD,GAAG,MAAM;KACT,gBACC,MAAM,mBAAmB,aAAa,SAAY,MAAM;KACzD,CAAA;AAED,UAAM,IAAI;AACV,aAAS,IAAI;;GAGd,MAAM,KAAK,MAAM,MAAM,WAAW,QAAQ,MAAM,MAAM,WAAW;GAEjE,MAAM,cAAc,QAAQ,MAAM,MAAK;GACvC,MAAM,eAAe,QAAQ,MAAM,OAAM;GAEzC,IAAI,gBAAgB,eAAe,MAAM,MAAM,WAAW;GAC1D,IAAI,iBAAiB,gBAAgB,MAAM,MAAM,WAAW;AAE5D,OAAI,eAAe,QAAQ,gBAAgB,KAC1C,kBAAiB,cAAc;YACrB,eAAe,QAAQ,gBAAgB,KACjD,iBAAgB,eAAe;AAGhC,UAAO;IACN;IACA;IACA,KAAK,MAAM,QAAQ,MAAM,MAAM,OAAO,MAAM;IAC5C,OAAO,KAAK,MAAM,cAAc;IAChC,QAAQ,KAAK,MAAM,eAAe;IACnC;IACA;;UAKO,MAAA,2DAML,OAAA;;IALA,KAAK,MAAA,MAAM;IACX,QAAQ,MAAA,MAAM;IACd,KAAK,MAAA,MAAM;IACX,OAAO,MAAA,MAAM;IACb,QAAQ,MAAA,MAAM"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicImage.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/PrismicImage.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { ImageField, asImageSrc } from \"@prismicio/client\"\nimport {\n\tasImagePixelDensitySrcSet,\n\tasImageWidthSrcSet,\n\tisFilled,\n} from \"@prismicio/client\"\nimport { DEV } from \"esm-env\"\nimport { computed, watchEffect } from \"vue\"\n\nimport { devMsg } from \"./lib/devMsg\"\n\n/** Props for `<PrismicImage />`. */\nexport type PrismicImageProps = {\n\t/** The Prismic image field or thumbnail to render. */\n\tfield: ImageField | ImageField<string>\n\n\t/**\n\t * An object of Imgix URL API parameters to transform the image.\n\t *\n\t * See: https://docs.imgix.com/apis/rendering\n\t */\n\timgixParams?: Parameters<typeof asImageSrc>[1]\n\n\t/**\n\t * Declare an image as decorative by providing `alt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\talt?: \"\"\n\n\t/**\n\t * Declare an image as decorative only if the image field does not have\n\t * alternative text by providing `fallbackAlt=\"\"`.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images\n\t */\n\tfallbackAlt?: \"\"\n\n\t/**\n\t * The width attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/width\n\t */\n\twidth?: number | string\n\n\t/**\n\t * The height attribute of the image element.\n\t *\n\t * See:\n\t * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/height\n\t */\n\theight?: number | string\n} & (\n\t| {\n\t\t\t/**\n\t\t\t * Widths (in pixels) used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If omitted or set to `\"defaults\"`, the following widths will be used:\n\t\t\t * 640, 750, 828, 1080, 1200, 1920, 2048, 3840.\n\t\t\t *\n\t\t\t * If the image field contains responsive views, each responsive view can\n\t\t\t * be used as a width in the resulting `srcset` by passing `\"thumbnails\"`\n\t\t\t * as the `widths` prop.\n\t\t\t */\n\t\t\twidths?:\n\t\t\t\t| NonNullable<Parameters<typeof asImageWidthSrcSet>[1]>[\"widths\"]\n\t\t\t\t| \"thumbnails\"\n\t\t\t\t| \"defaults\"\n\t\t\tpixelDensities?: never\n\t }\n\t| {\n\t\t\twidths?: never\n\t\t\t/**\n\t\t\t * Pixel densities used to build a `srcset` value for the image field.\n\t\t\t *\n\t\t\t * If a `pixelDensities` prop is passed `\"defaults\"`, the following pixel\n\t\t\t * densities will be used: 1, 2, 3.\n\t\t\t */\n\t\t\tpixelDensities:\n\t\t\t\t| NonNullable<\n\t\t\t\t\t\tParameters<typeof asImagePixelDensitySrcSet>[1]\n\t\t\t\t >[\"pixelDensities\"]\n\t\t\t\t| \"defaults\"\n\t }\n)\n\nconst props = defineProps<PrismicImageProps>()\ndefineOptions({ name: \"PrismicImage\" })\n\nif (DEV) {\n\twatchEffect(() => {\n\t\tif (typeof props.alt === \"string\" && props.alt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"alt\" prop can only be used to declare an image as decorative by passing an empty string (alt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"alt\" prop or changing it to alt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (typeof props.fallbackAlt === \"string\" && props.fallbackAlt !== \"\") {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] The \"fallbackAlt\" prop can only be used to declare an image as decorative by passing an empty string (fallbackAlt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"fallbackAlt\" prop or changing it to fallbackAlt=\"\". For more details, see ${devMsg(\n\t\t\t\t\t\"alt-must-be-an-empty-string\",\n\t\t\t\t)}`,\n\t\t\t)\n\t\t}\n\n\t\tif (props.widths && props.pixelDensities) {\n\t\t\tconsole.warn(\n\t\t\t\t`[PrismicImage] Only one of \"widths\" or \"pixelDensities\" props can be provided. You can resolve this warning by removing either the \"widths\" or \"pixelDensities\" prop. \"widths\" will be used in this case.`,\n\t\t\t)\n\t\t}\n\t})\n}\n\nconst castInt = (input: string | number | undefined): number | undefined => {\n\tif (typeof input === \"number\" || typeof input === \"undefined\") {\n\t\treturn input\n\t} else {\n\t\tconst parsed = Number.parseInt(input)\n\n\t\tif (Number.isNaN(parsed)) {\n\t\t\treturn undefined\n\t\t} else {\n\t\t\treturn parsed\n\t\t}\n\t}\n}\n\nconst image = computed(() => {\n\tif (!isFilled.imageThumbnail(props.field)) {\n\t\treturn\n\t}\n\n\tlet src: string | undefined\n\tlet srcSet: string | undefined\n\tif (props.widths || !props.pixelDensities) {\n\t\tconst res = asImageWidthSrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\twidths: props.widths === \"defaults\" ? undefined : props.widths,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t} else if (props.pixelDensities) {\n\t\tconst res = asImagePixelDensitySrcSet(props.field, {\n\t\t\t...props.imgixParams,\n\t\t\tpixelDensities:\n\t\t\t\tprops.pixelDensities === \"defaults\" ? undefined : props.pixelDensities,\n\t\t})\n\n\t\tsrc = res.src\n\t\tsrcSet = res.srcset\n\t}\n\n\tconst ar = props.field.dimensions.width / props.field.dimensions.height\n\n\tconst castedWidth = castInt(props.width)\n\tconst castedHeight = castInt(props.height)\n\n\tlet resolvedWidth = castedWidth ?? props.field.dimensions.width\n\tlet resolvedHeight = castedHeight ?? props.field.dimensions.height\n\n\tif (castedWidth != null && castedHeight == null) {\n\t\tresolvedHeight = castedWidth / ar\n\t} else if (castedWidth == null && castedHeight != null) {\n\t\tresolvedWidth = castedHeight * ar\n\t}\n\n\treturn {\n\t\tsrc,\n\t\tsrcSet,\n\t\talt: props.alt ?? (props.field.alt || props.fallbackAlt),\n\t\twidth: Math.round(resolvedWidth),\n\t\theight: Math.round(resolvedHeight),\n\t}\n})\n</script>\n\n<template>\n\t<img\n\t\tv-if=\"image\"\n\t\t:src=\"image.src\"\n\t\t:srcset=\"image.srcSet\"\n\t\t:alt=\"image.alt\"\n\t\t:width=\"image.width\"\n\t\t:height=\"image.height\"\n\t/>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0FA,MAAM,QAAQ;AAGd,MAAI,IACH,mBAAkB;AACjB,OAAI,OAAO,MAAM,QAAQ,YAAY,MAAM,QAAQ,GAClD,SAAQ,KACP,qQAAqQ,OACpQ,8BACA,GACF;AAGD,OAAI,OAAO,MAAM,gBAAgB,YAAY,MAAM,gBAAgB,GAClE,SAAQ,KACP,qSAAqS,OACpS,8BACA,GACF;AAGD,OAAI,MAAM,UAAU,MAAM,eACzB,SAAQ,KACP,4MACD;IAED;EAGF,MAAM,WAAW,UAA2D;AAC3E,OAAI,OAAO,UAAU,YAAY,OAAO,UAAU,YACjD,QAAO;QACD;IACN,MAAM,SAAS,OAAO,SAAS,MAAK;AAEpC,QAAI,OAAO,MAAM,OAAO,CACvB;QAEA,QAAO;;;EAKV,MAAM,QAAQ,eAAe;AAC5B,OAAI,CAAC,SAAS,eAAe,MAAM,MAAM,CACxC;GAGD,IAAI;GACJ,IAAI;AACJ,OAAI,MAAM,UAAU,CAAC,MAAM,gBAAgB;IAC1C,MAAM,MAAM,mBAAmB,MAAM,OAAO;KAC3C,GAAG,MAAM;KACT,QAAQ,MAAM,WAAW,aAAa,SAAY,MAAM;KACxD,CAAA;AAED,UAAM,IAAI;AACV,aAAS,IAAI;cACH,MAAM,gBAAgB;IAChC,MAAM,MAAM,0BAA0B,MAAM,OAAO;KAClD,GAAG,MAAM;KACT,gBACC,MAAM,mBAAmB,aAAa,SAAY,MAAM;KACzD,CAAA;AAED,UAAM,IAAI;AACV,aAAS,IAAI;;GAGd,MAAM,KAAK,MAAM,MAAM,WAAW,QAAQ,MAAM,MAAM,WAAW;GAEjE,MAAM,cAAc,QAAQ,MAAM,MAAK;GACvC,MAAM,eAAe,QAAQ,MAAM,OAAM;GAEzC,IAAI,gBAAgB,eAAe,MAAM,MAAM,WAAW;GAC1D,IAAI,iBAAiB,gBAAgB,MAAM,MAAM,WAAW;AAE5D,OAAI,eAAe,QAAQ,gBAAgB,KAC1C,kBAAiB,cAAc;YACrB,eAAe,QAAQ,gBAAgB,KACjD,iBAAgB,eAAe;AAGhC,UAAO;IACN;IACA;IACA,KAAK,MAAM,QAAQ,MAAM,MAAM,OAAO,MAAM;IAC5C,OAAO,KAAK,MAAM,cAAc;IAChC,QAAQ,KAAK,MAAM,eAAe;IACnC;IACA;;UAKO,MAAA,sBADP,mBAOE,OAAA;;IALA,KAAK,MAAA,MAAM;IACX,QAAQ,MAAA,MAAM;IACd,KAAK,MAAA,MAAM;IACX,OAAO,MAAA,MAAM;IACb,QAAQ,MAAA,MAAM"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicLink.cjs","names":[],"sources":["../../src/PrismicLink.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AsLinkAttrsConfig } from \"@prismicio/client\"\nimport {\n\ttype LinkField,\n\ttype LinkResolverFunction,\n\ttype PrismicDocument,\n\tasLinkAttrs,\n} from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport { isInternalURL } from \"./lib/isInternalURL\"\n\nimport type { ComponentOrTagName } from \"./types\"\n\nimport { usePrismic } from \"./createPrismic\"\n\n/** The default component rendered for internal URLs. */\nconst defaultInternalComponent = \"router-link\"\n\n/** The default component rendered for external URLs. */\nconst defaultExternalComponent = \"a\"\n\n/** The default rel attribute rendered for external URLs. */\nconst defaultExternalRelAttribute = \"noreferrer\"\n\n/** Props for `<PrismicLink />`. */\nexport type PrismicLinkProps = {\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 {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"]\n\n\t/**\n\t * The component rendered for internal URLs.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t *\n\t * @defaultValue `<RouterLink>`\n\t */\n\tinternalComponent?: ComponentOrTagName\n\n\t/**\n\t * The component rendered for external URLs.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalComponent?: ComponentOrTagName\n} & (\n\t| {\n\t\t\t/** The Prismic link field to render. */\n\t\t\tfield: LinkField\n\t\t\tdocument?: never\n\t }\n\t| {\n\t\t\t/** The Prismic document to render as a link. */\n\t\t\tdocument: PrismicDocument\n\t\t\tfield?: never\n\t }\n)\n\nconst props = defineProps<PrismicLinkProps>()\ndefineOptions({ name: \"PrismicLink\" })\n\nconst { linkResolver, components } = usePrismic()\n\nconst rawAttrs = computed(() => {\n\treturn asLinkAttrs(props.field || props.document, {\n\t\tlinkResolver: props.linkResolver || linkResolver,\n\t\trel(args) {\n\t\t\tif (props.rel) {\n\t\t\t\treturn typeof props.rel === \"function\" ? props.rel(args) : props.rel\n\t\t\t}\n\n\t\t\treturn args.isExternal ? defaultExternalRelAttribute : undefined\n\t\t},\n\t})\n})\n\nconst component = computed(() => {\n\treturn isInternalURL(rawAttrs.value.href || \"\")\n\t\t? props.internalComponent ||\n\t\t\t\tcomponents?.linkInternalComponent ||\n\t\t\t\tdefaultInternalComponent\n\t\t: props.externalComponent ||\n\t\t\t\tcomponents?.linkExternalComponent ||\n\t\t\t\tdefaultExternalComponent\n})\n\n// Match Vue Router's `<RouterLink />` interface unless the component is an anchor tag.\nconst attrs = computed(() => {\n\treturn component.value === \"a\"\n\t\t? {\n\t\t\t\thref: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n\t\t: {\n\t\t\t\tto: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n})\n</script>\n\n<template>\n\t<component :is=\"component\" v-bind=\"attrs\">\n\t\t<slot>\n\t\t\t{{ props.field && \"text\" in props.field ? props.field.text : undefined }}\n\t\t</slot>\n\t</component>\n</template>\n"],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicLink.js","names":[],"sources":["../../src/PrismicLink.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AsLinkAttrsConfig } from \"@prismicio/client\"\nimport {\n\ttype LinkField,\n\ttype LinkResolverFunction,\n\ttype PrismicDocument,\n\tasLinkAttrs,\n} from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport { isInternalURL } from \"./lib/isInternalURL\"\n\nimport type { ComponentOrTagName } from \"./types\"\n\nimport { usePrismic } from \"./createPrismic\"\n\n/** The default component rendered for internal URLs. */\nconst defaultInternalComponent = \"router-link\"\n\n/** The default component rendered for external URLs. */\nconst defaultExternalComponent = \"a\"\n\n/** The default rel attribute rendered for external URLs. */\nconst defaultExternalRelAttribute = \"noreferrer\"\n\n/** Props for `<PrismicLink />`. */\nexport type PrismicLinkProps = {\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 {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"]\n\n\t/**\n\t * The component rendered for internal URLs.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t *\n\t * @defaultValue `<RouterLink>`\n\t */\n\tinternalComponent?: ComponentOrTagName\n\n\t/**\n\t * The component rendered for external URLs.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalComponent?: ComponentOrTagName\n} & (\n\t| {\n\t\t\t/** The Prismic link field to render. */\n\t\t\tfield: LinkField\n\t\t\tdocument?: never\n\t }\n\t| {\n\t\t\t/** The Prismic document to render as a link. */\n\t\t\tdocument: PrismicDocument\n\t\t\tfield?: never\n\t }\n)\n\nconst props = defineProps<PrismicLinkProps>()\ndefineOptions({ name: \"PrismicLink\" })\n\nconst { linkResolver, components } = usePrismic()\n\nconst rawAttrs = computed(() => {\n\treturn asLinkAttrs(props.field || props.document, {\n\t\tlinkResolver: props.linkResolver || linkResolver,\n\t\trel(args) {\n\t\t\tif (props.rel) {\n\t\t\t\treturn typeof props.rel === \"function\" ? props.rel(args) : props.rel\n\t\t\t}\n\n\t\t\treturn args.isExternal ? defaultExternalRelAttribute : undefined\n\t\t},\n\t})\n})\n\nconst component = computed(() => {\n\treturn isInternalURL(rawAttrs.value.href || \"\")\n\t\t? props.internalComponent ||\n\t\t\t\tcomponents?.linkInternalComponent ||\n\t\t\t\tdefaultInternalComponent\n\t\t: props.externalComponent ||\n\t\t\t\tcomponents?.linkExternalComponent ||\n\t\t\t\tdefaultExternalComponent\n})\n\n// Match Vue Router's `<RouterLink />` interface unless the component is an anchor tag.\nconst attrs = computed(() => {\n\treturn component.value === \"a\"\n\t\t? {\n\t\t\t\thref: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n\t\t: {\n\t\t\t\tto: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n})\n</script>\n\n<template>\n\t<component :is=\"component\" v-bind=\"attrs\">\n\t\t<slot>\n\t\t\t{{ props.field && \"text\" in props.field ? props.field.text : undefined }}\n\t\t</slot>\n\t</component>\n</template>\n"],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicLink.vue.d.ts","names":[],"sources":["../../src/PrismicLink.vue"],"sourcesContent":[],"mappings":";;;;;;KAyJY,gBAAA;EAAA;;;;;;;;AA8CX;EAkFI,YAAA,CAAA,EAtHW,oBAuHoB;EAK9B;;;;;EAhGI,GAAA,CAAA,EAAA,MAAA,GArBM,iBAqBN,CAAA,KAAA,CAAA;EA5BM;;;;;;;;EAAA,iBAAA,CAAA,EAiBK,kBAjBL;EAOA;;;;;EAAA,iBAAA,CAAA,EAiBK,kBAjBL;CAUK,GAAA,CAAA;EAOA;EASR,KAAA,EALH,SAKG;;;;UA2FG,EA3FH,eA2FG;EAAA,KAAA,CAAA,EAAA,KAAA;AAAA,CAAA,CAAA;YAPZ,OAU8C,EAAA,CAAA,CAAA;KAT7C,WAAA,GASyD,CAAA,CAAA,GAAA;EAAnC,OAAA,CAAA,EAAA,CAAA,KAAA,EAAA,OARE,OAQF,EAAA,GAAA,GAAA;CAAe;AAAA,cAHpC,UAIkC,QAJxB,eAIwB,CAAA,CAAA;EACnC;;;;;;;;;iBAjIW;;;;;;iBAOA;;;;;;;;;sBAUK;;;;;;sBAOA;;;SAIX;;;;;;;;;;;;iBA5BM;;;;;;iBAOA;;;;;;;;;sBAUK;;;;;;sBAOA;;;YASR;;oBAAe,KAAA,CAAA,qBAAA;;;;;;;;;;iBAjCZ;;;;;;iBAOA;;;;;;;;;sBAUK;;;;;;sBAOA;;;SAIX;;;;;;;;;;;;iBA5BM;;;;;;iBAOA;;;;;;;;;sBAUK;;;;;;sBAOA;;;YASR;;;cA8FP,cAAqB,uBAAuB,YAAY;cAApB,iBACd;KACvB,wBAAwB;;YAEnB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicLink.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../src/PrismicLink.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AsLinkAttrsConfig } from \"@prismicio/client\"\nimport {\n\ttype LinkField,\n\ttype LinkResolverFunction,\n\ttype PrismicDocument,\n\tasLinkAttrs,\n} from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport { isInternalURL } from \"./lib/isInternalURL\"\n\nimport type { ComponentOrTagName } from \"./types\"\n\nimport { usePrismic } from \"./createPrismic\"\n\n/** The default component rendered for internal URLs. */\nconst defaultInternalComponent = \"router-link\"\n\n/** The default component rendered for external URLs. */\nconst defaultExternalComponent = \"a\"\n\n/** The default rel attribute rendered for external URLs. */\nconst defaultExternalRelAttribute = \"noreferrer\"\n\n/** Props for `<PrismicLink />`. */\nexport type PrismicLinkProps = {\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 {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"]\n\n\t/**\n\t * The component rendered for internal URLs.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t *\n\t * @defaultValue `<RouterLink>`\n\t */\n\tinternalComponent?: ComponentOrTagName\n\n\t/**\n\t * The component rendered for external URLs.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalComponent?: ComponentOrTagName\n} & (\n\t| {\n\t\t\t/** The Prismic link field to render. */\n\t\t\tfield: LinkField\n\t\t\tdocument?: never\n\t }\n\t| {\n\t\t\t/** The Prismic document to render as a link. */\n\t\t\tdocument: PrismicDocument\n\t\t\tfield?: never\n\t }\n)\n\nconst props = defineProps<PrismicLinkProps>()\ndefineOptions({ name: \"PrismicLink\" })\n\nconst { linkResolver, components } = usePrismic()\n\nconst rawAttrs = computed(() => {\n\treturn asLinkAttrs(props.field || props.document, {\n\t\tlinkResolver: props.linkResolver || linkResolver,\n\t\trel(args) {\n\t\t\tif (props.rel) {\n\t\t\t\treturn typeof props.rel === \"function\" ? props.rel(args) : props.rel\n\t\t\t}\n\n\t\t\treturn args.isExternal ? defaultExternalRelAttribute : undefined\n\t\t},\n\t})\n})\n\nconst component = computed(() => {\n\treturn isInternalURL(rawAttrs.value.href || \"\")\n\t\t? props.internalComponent ||\n\t\t\t\tcomponents?.linkInternalComponent ||\n\t\t\t\tdefaultInternalComponent\n\t\t: props.externalComponent ||\n\t\t\t\tcomponents?.linkExternalComponent ||\n\t\t\t\tdefaultExternalComponent\n})\n\n// Match Vue Router's `<RouterLink />` interface unless the component is an anchor tag.\nconst attrs = computed(() => {\n\treturn component.value === \"a\"\n\t\t? {\n\t\t\t\thref: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n\t\t: {\n\t\t\t\tto: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n})\n</script>\n\n<template>\n\t<component :is=\"component\" v-bind=\"attrs\">\n\t\t<slot>\n\t\t\t{{ props.field && \"text\" in props.field ? props.field.text : undefined }}\n\t\t</slot>\n\t</component>\n</template>\n"],"mappings":";;;;;;;AAiBA,MAAM,2BAA2B;;AAGjC,MAAM,2BAA2B;;AAGjC,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDpC,MAAM,QAAQ;EAGd,MAAM,EAAE,cAAc,eAAe,kCAAW;EAEhD,MAAM,mCAA0B;AAC/B,6CAAmB,MAAM,SAAS,MAAM,UAAU;IACjD,cAAc,MAAM,gBAAgB;IACpC,IAAI,MAAM;AACT,SAAI,MAAM,IACT,QAAO,OAAO,MAAM,QAAQ,aAAa,MAAM,IAAI,KAAK,GAAG,MAAM;AAGlE,YAAO,KAAK,aAAa,8BAA8B;;IAExD,CAAA;IACD;EAED,MAAM,oCAA2B;AAChC,UAAO,oCAAc,SAAS,MAAM,QAAQ,GAAE,GAC3C,MAAM,qBACN,YAAY,yBACZ,2BACA,MAAM,qBACN,YAAY,yBACZ;IACH;EAGD,MAAM,gCAAuB;AAC5B,UAAO,UAAU,UAAU,MACxB;IACA,MAAM,SAAS,MAAM;IACrB,QAAQ,SAAS,MAAM;IACvB,KAAK,SAAS,MAAM;IACrB,GACC;IACA,IAAI,SAAS,MAAM;IACnB,QAAQ,SAAS,MAAM;IACvB,KAAK,SAAS,MAAM;IACrB;IACF;;sFAIgB,UAAA,MAAS,sDAAU,MAAA,MAAK,CAAA,EAAA;oCAGhC,qBAAA,KAAA,QAAA,WAAA,EAAA,QAAA,mDADH,MAAM,SAAK,UAAc,MAAM,QAAQ,MAAM,MAAM,OAAO,OAAS,EAAA,EAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrismicLink.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/PrismicLink.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AsLinkAttrsConfig } from \"@prismicio/client\"\nimport {\n\ttype LinkField,\n\ttype LinkResolverFunction,\n\ttype PrismicDocument,\n\tasLinkAttrs,\n} from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport { isInternalURL } from \"./lib/isInternalURL\"\n\nimport type { ComponentOrTagName } from \"./types\"\n\nimport { usePrismic } from \"./createPrismic\"\n\n/** The default component rendered for internal URLs. */\nconst defaultInternalComponent = \"router-link\"\n\n/** The default component rendered for external URLs. */\nconst defaultExternalComponent = \"a\"\n\n/** The default rel attribute rendered for external URLs. */\nconst defaultExternalRelAttribute = \"noreferrer\"\n\n/** Props for `<PrismicLink />`. */\nexport type PrismicLinkProps = {\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 {@link https://prismic.io/docs/routes}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * The `rel` attribute for the link. By default, `\"noreferrer\"` is provided if\n\t * the link's URL is external. This prop can be provided a function to use the\n\t * link's metadata to determine the `rel` value.\n\t */\n\trel?: string | AsLinkAttrsConfig[\"rel\"]\n\n\t/**\n\t * The component rendered for internal URLs.\n\t *\n\t * If your app uses a client-side router that requires a special Link\n\t * component, provide the Link component to this prop.\n\t *\n\t * @defaultValue `<RouterLink>`\n\t */\n\tinternalComponent?: ComponentOrTagName\n\n\t/**\n\t * The component rendered for external URLs.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalComponent?: ComponentOrTagName\n} & (\n\t| {\n\t\t\t/** The Prismic link field to render. */\n\t\t\tfield: LinkField\n\t\t\tdocument?: never\n\t }\n\t| {\n\t\t\t/** The Prismic document to render as a link. */\n\t\t\tdocument: PrismicDocument\n\t\t\tfield?: never\n\t }\n)\n\nconst props = defineProps<PrismicLinkProps>()\ndefineOptions({ name: \"PrismicLink\" })\n\nconst { linkResolver, components } = usePrismic()\n\nconst rawAttrs = computed(() => {\n\treturn asLinkAttrs(props.field || props.document, {\n\t\tlinkResolver: props.linkResolver || linkResolver,\n\t\trel(args) {\n\t\t\tif (props.rel) {\n\t\t\t\treturn typeof props.rel === \"function\" ? props.rel(args) : props.rel\n\t\t\t}\n\n\t\t\treturn args.isExternal ? defaultExternalRelAttribute : undefined\n\t\t},\n\t})\n})\n\nconst component = computed(() => {\n\treturn isInternalURL(rawAttrs.value.href || \"\")\n\t\t? props.internalComponent ||\n\t\t\t\tcomponents?.linkInternalComponent ||\n\t\t\t\tdefaultInternalComponent\n\t\t: props.externalComponent ||\n\t\t\t\tcomponents?.linkExternalComponent ||\n\t\t\t\tdefaultExternalComponent\n})\n\n// Match Vue Router's `<RouterLink />` interface unless the component is an anchor tag.\nconst attrs = computed(() => {\n\treturn component.value === \"a\"\n\t\t? {\n\t\t\t\thref: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n\t\t: {\n\t\t\t\tto: rawAttrs.value.href,\n\t\t\t\ttarget: rawAttrs.value.target,\n\t\t\t\trel: rawAttrs.value.rel,\n\t\t\t}\n})\n</script>\n\n<template>\n\t<component :is=\"component\" v-bind=\"attrs\">\n\t\t<slot>\n\t\t\t{{ props.field && \"text\" in props.field ? props.field.text : undefined }}\n\t\t</slot>\n\t</component>\n</template>\n"],"mappings":";;;;;;;AAiBA,MAAM,2BAA2B;;AAGjC,MAAM,2BAA2B;;AAGjC,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDpC,MAAM,QAAQ;EAGd,MAAM,EAAE,cAAc,eAAe,YAAW;EAEhD,MAAM,WAAW,eAAe;AAC/B,UAAO,YAAY,MAAM,SAAS,MAAM,UAAU;IACjD,cAAc,MAAM,gBAAgB;IACpC,IAAI,MAAM;AACT,SAAI,MAAM,IACT,QAAO,OAAO,MAAM,QAAQ,aAAa,MAAM,IAAI,KAAK,GAAG,MAAM;AAGlE,YAAO,KAAK,aAAa,8BAA8B;;IAExD,CAAA;IACD;EAED,MAAM,YAAY,eAAe;AAChC,UAAO,cAAc,SAAS,MAAM,QAAQ,GAAE,GAC3C,MAAM,qBACN,YAAY,yBACZ,2BACA,MAAM,qBACN,YAAY,yBACZ;IACH;EAGD,MAAM,QAAQ,eAAe;AAC5B,UAAO,UAAU,UAAU,MACxB;IACA,MAAM,SAAS,MAAM;IACrB,QAAQ,SAAS,MAAM;IACvB,KAAK,SAAS,MAAM;IACrB,GACC;IACA,IAAI,SAAS,MAAM;IACnB,QAAQ,SAAS,MAAM;IACvB,KAAK,SAAS,MAAM;IACrB;IACF;;uBAIA,YAIY,wBAJI,UAAA,MAAS,EAAA,eAAA,mBAAU,MAAA,MAAK,CAAA,EAAA;2BAGhC,CAFP,WAEO,KAAA,QAAA,WAAA,EAAA,QAAA,iCADH,MAAM,SAAK,UAAc,MAAM,QAAQ,MAAM,MAAM,OAAO,OAAS,EAAA,EAAA"}