@prismicio/vue 5.3.0-canary.5d9ea4c → 5.3.0-canary.aa89de6
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.
- package/dist/PrismicImage.vue.d.cts.map +1 -1
- package/dist/PrismicLink.vue.d.cts +24 -104
- package/dist/PrismicLink.vue.d.cts.map +1 -1
- package/dist/PrismicRichText/PrismicRichText.vue.d.cts +31 -36
- package/dist/PrismicRichText/PrismicRichText.vue.d.cts.map +1 -1
- package/dist/PrismicRichText/types.d.cts +15 -2
- package/dist/PrismicRichText/types.d.cts.map +1 -1
- package/dist/PrismicTable/PrismicTable.vue.d.cts +8 -8
- package/dist/PrismicTable/PrismicTable.vue.d.cts.map +1 -1
- package/dist/PrismicTable/types.d.cts +7 -6
- package/dist/PrismicTable/types.d.cts.map +1 -1
- package/dist/PrismicText.vue.d.cts +2 -10
- package/dist/PrismicText.vue.d.cts.map +1 -1
- package/dist/SliceZone/SliceZone.vue.d.cts +2 -10
- package/dist/SliceZone/SliceZone.vue.d.cts.map +1 -1
- package/dist/index.cjs +3 -10
- package/dist/index.d.cts +9 -13
- package/dist/index.d.ts +11 -15
- package/dist/index.js +3 -6
- package/dist/package.cjs +1 -1
- package/dist/package.cjs.map +1 -1
- package/dist/package.js +1 -1
- package/dist/package.js.map +1 -1
- package/dist/src/PrismicImage.cjs.map +1 -1
- package/dist/src/PrismicImage.js.map +1 -1
- package/dist/src/PrismicImage.vue.d.ts +4 -4
- package/dist/src/PrismicImage.vue.d.ts.map +1 -1
- package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.cjs +2 -4
- package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.js +2 -4
- package/dist/src/PrismicImage.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/PrismicLink.cjs.map +1 -1
- package/dist/src/PrismicLink.js.map +1 -1
- package/dist/src/PrismicLink.vue.d.ts +24 -104
- package/dist/src/PrismicLink.vue.d.ts.map +1 -1
- package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.cjs +3 -6
- package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.js +3 -6
- package/dist/src/PrismicLink.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichText.cjs.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichText.js.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichText.vue.d.ts +31 -36
- package/dist/src/PrismicRichText/PrismicRichText.vue.d.ts.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs +19 -52
- package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.js +20 -53
- package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.cjs.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.js.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs +75 -35
- package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.js +76 -36
- package/dist/src/PrismicRichText/PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextSerialize.cjs.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextSerialize.js.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs +29 -8
- package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js +30 -9
- package/dist/src/PrismicRichText/PrismicRichTextSerialize.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/PrismicRichText/types.d.ts +15 -2
- package/dist/src/PrismicRichText/types.d.ts.map +1 -1
- package/dist/src/PrismicTable/PrismicTable.cjs.map +1 -1
- package/dist/src/PrismicTable/PrismicTable.js.map +1 -1
- package/dist/src/PrismicTable/PrismicTable.vue.d.ts +7 -7
- package/dist/src/PrismicTable/PrismicTable.vue.d.ts.map +1 -1
- package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.cjs +5 -5
- package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/src/PrismicTable/PrismicTable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/PrismicTable/PrismicTableDefaultComponents.cjs +36 -18
- package/dist/src/PrismicTable/PrismicTableDefaultComponents.cjs.map +1 -1
- package/dist/src/PrismicTable/PrismicTableDefaultComponents.js +36 -18
- package/dist/src/PrismicTable/PrismicTableDefaultComponents.js.map +1 -1
- package/dist/src/PrismicTable/types.d.ts +7 -6
- package/dist/src/PrismicTable/types.d.ts.map +1 -1
- package/dist/src/PrismicText.cjs.map +1 -1
- package/dist/src/PrismicText.js.map +1 -1
- package/dist/src/PrismicText.vue.d.ts +2 -10
- package/dist/src/PrismicText.vue.d.ts.map +1 -1
- package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.cjs +1 -12
- package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.js +3 -14
- package/dist/src/PrismicText.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/SliceZone/SliceZone.cjs.map +1 -1
- package/dist/src/SliceZone/SliceZone.js.map +1 -1
- package/dist/src/SliceZone/SliceZone.vue.d.ts +2 -10
- package/dist/src/SliceZone/SliceZone.vue.d.ts.map +1 -1
- package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.cjs +5 -17
- package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.cjs.map +1 -1
- package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.js +6 -18
- package/dist/src/SliceZone/SliceZone.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/src/types.d.ts +2 -352
- package/dist/src/types.d.ts.map +1 -1
- package/dist/types.d.cts +2 -352
- package/dist/types.d.cts.map +1 -1
- package/package.json +6 -5
- package/src/PrismicImage.vue +2 -11
- package/src/PrismicLink.vue +9 -34
- package/src/PrismicRichText/PrismicRichText.vue +31 -101
- package/src/PrismicRichText/PrismicRichTextDefaultComponent.vue +46 -20
- package/src/PrismicRichText/PrismicRichTextSerialize.vue +31 -10
- package/src/PrismicRichText/types.ts +16 -1
- package/src/PrismicTable/PrismicTable.vue +7 -7
- package/src/PrismicTable/PrismicTableDefaultComponents.ts +39 -20
- package/src/PrismicTable/types.ts +16 -6
- package/src/PrismicText.vue +2 -15
- package/src/SliceZone/SliceZone.vue +9 -27
- package/src/index.ts +13 -21
- package/src/types.ts +1 -439
- package/dist/PrismicEmbed.vue.d.cts +0 -25
- package/dist/PrismicEmbed.vue.d.cts.map +0 -1
- package/dist/createPrismic.d.cts +0 -29
- package/dist/createPrismic.d.cts.map +0 -1
- package/dist/src/PrismicEmbed.cjs +0 -8
- package/dist/src/PrismicEmbed.cjs.map +0 -1
- package/dist/src/PrismicEmbed.js +0 -8
- package/dist/src/PrismicEmbed.js.map +0 -1
- package/dist/src/PrismicEmbed.vue.d.ts +0 -25
- package/dist/src/PrismicEmbed.vue.d.ts.map +0 -1
- package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.cjs +0 -42
- package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
- package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.js +0 -42
- package/dist/src/PrismicEmbed.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.cjs +0 -8
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.cjs.map +0 -1
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.js +0 -8
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.js.map +0 -1
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.cjs +0 -92
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.js +0 -92
- package/dist/src/PrismicRichText/DeprecatedPrismicRichText.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/src/createPrismic.cjs +0 -85
- package/dist/src/createPrismic.cjs.map +0 -1
- package/dist/src/createPrismic.d.ts +0 -29
- package/dist/src/createPrismic.d.ts.map +0 -1
- package/dist/src/createPrismic.js +0 -85
- package/dist/src/createPrismic.js.map +0 -1
- package/dist/src/lib/Wrapper.cjs +0 -8
- package/dist/src/lib/Wrapper.cjs.map +0 -1
- package/dist/src/lib/Wrapper.js +0 -8
- package/dist/src/lib/Wrapper.js.map +0 -1
- package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.cjs +0 -22
- package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.cjs.map +0 -1
- package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.js +0 -22
- package/dist/src/lib/Wrapper.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/src/usePrismic.cjs +0 -38
- package/dist/src/usePrismic.cjs.map +0 -1
- package/dist/src/usePrismic.d.ts +0 -36
- package/dist/src/usePrismic.d.ts.map +0 -1
- package/dist/src/usePrismic.js +0 -37
- package/dist/src/usePrismic.js.map +0 -1
- package/dist/usePrismic.d.cts +0 -36
- package/dist/usePrismic.d.cts.map +0 -1
- package/src/PrismicEmbed.vue +0 -42
- package/src/PrismicRichText/DeprecatedPrismicRichText.vue +0 -146
- package/src/createPrismic.ts +0 -154
- package/src/usePrismic.ts +0 -36
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
const require_Wrapper = require('../lib/Wrapper.cjs');
|
|
2
|
-
const require_usePrismic = require('../usePrismic.cjs');
|
|
3
|
-
const require_DeprecatedPrismicRichText = require('./DeprecatedPrismicRichText.cjs');
|
|
4
1
|
const require_PrismicRichTextSerialize = require('./PrismicRichTextSerialize.cjs');
|
|
5
2
|
let vue = require("vue");
|
|
6
|
-
let __prismicio_client = require("@prismicio/client");
|
|
7
3
|
let __prismicio_client_richtext = require("@prismicio/client/richtext");
|
|
8
|
-
let esm_env = require("esm-env");
|
|
9
4
|
|
|
10
5
|
//#region src/PrismicRichText/PrismicRichText.vue?vue&type=script&setup=true&lang.ts
|
|
11
6
|
var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ (0, vue.defineComponent)({
|
|
@@ -13,15 +8,19 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
|
|
|
13
8
|
__name: "PrismicRichText",
|
|
14
9
|
props: {
|
|
15
10
|
field: { type: Array },
|
|
16
|
-
|
|
11
|
+
components: { type: Object },
|
|
12
|
+
linkResolver: { type: Function },
|
|
13
|
+
internalLinkComponent: { type: [
|
|
17
14
|
String,
|
|
18
15
|
Object,
|
|
19
16
|
Function
|
|
20
17
|
] },
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
externalLinkComponent: { type: [
|
|
19
|
+
String,
|
|
20
|
+
Object,
|
|
21
|
+
Function
|
|
22
|
+
] },
|
|
23
|
+
fallback: { type: [
|
|
25
24
|
String,
|
|
26
25
|
Object,
|
|
27
26
|
Function
|
|
@@ -29,56 +28,24 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
|
|
|
29
28
|
},
|
|
30
29
|
setup(__props) {
|
|
31
30
|
const props = __props;
|
|
32
|
-
const { options } = require_usePrismic.usePrismic();
|
|
33
|
-
const resolvedComponents = (0, vue.computed)(() => {
|
|
34
|
-
return props.components || options.components?.richTextComponents;
|
|
35
|
-
});
|
|
36
|
-
const resolvedLinkResolver = (0, vue.computed)(() => {
|
|
37
|
-
return props.linkResolver || options.linkResolver;
|
|
38
|
-
});
|
|
39
31
|
const children = (0, vue.computed)(() => {
|
|
40
32
|
return (0, __prismicio_client_richtext.asTree)(props.field || []).children;
|
|
41
33
|
});
|
|
42
|
-
const isModern = (0, vue.computed)(() => {
|
|
43
|
-
if (props.components) return true;
|
|
44
|
-
if (props.serializer) return false;
|
|
45
|
-
if (options.components?.richTextComponents) return true;
|
|
46
|
-
if (options.richTextSerializer) return false;
|
|
47
|
-
return true;
|
|
48
|
-
});
|
|
49
|
-
if (esm_env.DEV) (0, vue.watchEffect)(() => {
|
|
50
|
-
if (props.components && props.serializer) console.warn(`[PrismicRichText] Only one of "components" or "serializer" (deprecated) props can be provided. You can resolve this warning by removing either the "components" or "serializer" prop. "components" will be used in this case.`);
|
|
51
|
-
});
|
|
52
34
|
return (_ctx, _cache) => {
|
|
53
|
-
return
|
|
35
|
+
return children.value.length ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicRichTextSerialize.default, {
|
|
54
36
|
key: 0,
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
default: (0, vue.withCtx)(() => [children.value.length ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicRichTextSerialize.default, {
|
|
58
|
-
key: 0,
|
|
59
|
-
children: children.value,
|
|
60
|
-
components: resolvedComponents.value,
|
|
61
|
-
"link-resolver": resolvedLinkResolver.value
|
|
62
|
-
}, null, 8, [
|
|
63
|
-
"children",
|
|
64
|
-
"components",
|
|
65
|
-
"link-resolver"
|
|
66
|
-
])) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(__props.fallback), { key: 1 }))]),
|
|
67
|
-
_: 1
|
|
68
|
-
}, 8, ["wrapper"])) : !isModern.value ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_DeprecatedPrismicRichText.default, {
|
|
69
|
-
key: 1,
|
|
70
|
-
field: __props.field,
|
|
71
|
-
fallback: typeof __props.fallback === "string" ? __props.fallback : void 0,
|
|
37
|
+
children: children.value,
|
|
38
|
+
components: __props.components,
|
|
72
39
|
"link-resolver": __props.linkResolver,
|
|
73
|
-
|
|
74
|
-
|
|
40
|
+
"internal-link-component": __props.internalLinkComponent,
|
|
41
|
+
"external-link-component": __props.externalLinkComponent
|
|
75
42
|
}, null, 8, [
|
|
76
|
-
"
|
|
77
|
-
"
|
|
43
|
+
"children",
|
|
44
|
+
"components",
|
|
78
45
|
"link-resolver",
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
])) : (0, vue.createCommentVNode)("v-if", true);
|
|
46
|
+
"internal-link-component",
|
|
47
|
+
"external-link-component"
|
|
48
|
+
])) : __props.fallback ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(__props.fallback), { key: 1 })) : (0, vue.createCommentVNode)("v-if", true);
|
|
82
49
|
};
|
|
83
50
|
}
|
|
84
51
|
});
|
package/dist/src/PrismicRichText/PrismicRichText.vue_vue_type_script_setup_true_lang.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n\ttype
|
|
1
|
+
{"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n\ttype LinkResolverFunction,\n\ttype RichTextField,\n} from \"@prismicio/client\"\nimport { asTree } from \"@prismicio/client/richtext\"\nimport type { PropType } from \"vue\"\nimport { computed } from \"vue\"\n\nimport type { ComponentOrTagName } from \"../types\"\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport PrismicRichTextSerialize from \"./PrismicRichTextSerialize.vue\"\n\n/**\n * Props for `<PrismicRichText />`.\n */\nexport type PrismicRichTextProps = {\n\t/**\n\t * The Prismic rich text or title field to render.\n\t */\n\tfield: RichTextField | null | undefined\n\n\t/**\n\t * An object that maps a rich text block type to a Vue component.\n\t *\n\t * @example\n\t *\n\t * ```javascript\n\t * {\n\t * heading1: Heading1,\n\t * }\n\t * ```\n\t */\n\tcomponents?: VueRichTextSerializer\n\n\t/**\n\t * A link resolver function used to resolve link when not using the route\n\t * resolver parameter with `@prismicio/client`.\n\t *\n\t * @defaultValue The link resolver provided to `@prismicio/vue` plugin if configured.\n\t *\n\t * @see Link resolver documentation {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver#link-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * The Vue component rendered for links when the URL is internal.\n\t *\n\t * @defaultValue `<RouterLink>`\n\t */\n\tinternalLinkComponent?: ComponentOrTagName\n\n\t/**\n\t * The Vue component rendered for links when the URL is external.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalLinkComponent?: ComponentOrTagName\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` (nothing) will be rendered.\n\t */\n\tfallback?: ComponentOrTagName\n}\n\n// We're forced to declare props using the JavaScript syntax because `@vue/compiler-sfc`\n// has limitations for inferring types from complex objects.\nconst props = defineProps({\n\tfield: {\n\t\ttype: Array as unknown as PropType<PrismicRichTextProps[\"field\"]>,\n\t},\n\tcomponents: {\n\t\ttype: Object as PropType<PrismicRichTextProps[\"components\"]>,\n\t},\n\tlinkResolver: {\n\t\ttype: Function as PropType<PrismicRichTextProps[\"linkResolver\"]>,\n\t},\n\tinternalLinkComponent: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"internalLinkComponent\"]\n\t\t>,\n\t},\n\texternalLinkComponent: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"externalLinkComponent\"]\n\t\t>,\n\t},\n\tfallback: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"fallback\"]\n\t\t>,\n\t},\n})\ndefineOptions({ name: \"PrismicRichText\" })\n\nconst children = computed(() => {\n\treturn asTree(props.field || []).children\n})\n</script>\n\n<template>\n\t<PrismicRichTextSerialize\n\t\tv-if=\"children.length\"\n\t\t:children=\"children\"\n\t\t:components=\"components\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t:internal-link-component=\"internalLinkComponent\"\n\t\t:external-link-component=\"externalLinkComponent\"\n\t/>\n\t<component v-else-if=\"fallback\" :is=\"fallback\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqEA,MAAM,QAAQ;EA4Bd,MAAM,mCAA0B;AAC/B,kDAAc,MAAM,SAAS,EAAE,CAAC,CAAC;IACjC;;UAKO,SAAA,MAAS,qDAMd,0CAAA;;IALA,UAAU,SAAA;IACV,YAAY,QAAA;IACZ,iBAAe,QAAA;IACf,2BAAyB,QAAA;IACzB,2BAAyB,QAAA;;;;;;;SAEL,QAAA,wFAAe,QAAA,SAAQ,EAAA,EAAA,KAAA,GAAA,CAAA"}
|
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
import Wrapper_default from "../lib/Wrapper.js";
|
|
2
|
-
import { usePrismic } from "../usePrismic.js";
|
|
3
|
-
import DeprecatedPrismicRichText_default from "./DeprecatedPrismicRichText.js";
|
|
4
1
|
import PrismicRichTextSerialize_default from "./PrismicRichTextSerialize.js";
|
|
5
|
-
import { computed, createBlock, createCommentVNode, defineComponent, openBlock, resolveDynamicComponent
|
|
6
|
-
import { isFilled } from "@prismicio/client";
|
|
2
|
+
import { computed, createBlock, createCommentVNode, defineComponent, openBlock, resolveDynamicComponent } from "vue";
|
|
7
3
|
import { asTree } from "@prismicio/client/richtext";
|
|
8
|
-
import { DEV } from "esm-env";
|
|
9
4
|
|
|
10
5
|
//#region src/PrismicRichText/PrismicRichText.vue?vue&type=script&setup=true&lang.ts
|
|
11
6
|
var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
|
|
@@ -13,15 +8,19 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
|
|
|
13
8
|
__name: "PrismicRichText",
|
|
14
9
|
props: {
|
|
15
10
|
field: { type: Array },
|
|
16
|
-
|
|
11
|
+
components: { type: Object },
|
|
12
|
+
linkResolver: { type: Function },
|
|
13
|
+
internalLinkComponent: { type: [
|
|
17
14
|
String,
|
|
18
15
|
Object,
|
|
19
16
|
Function
|
|
20
17
|
] },
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
externalLinkComponent: { type: [
|
|
19
|
+
String,
|
|
20
|
+
Object,
|
|
21
|
+
Function
|
|
22
|
+
] },
|
|
23
|
+
fallback: { type: [
|
|
25
24
|
String,
|
|
26
25
|
Object,
|
|
27
26
|
Function
|
|
@@ -29,56 +28,24 @@ var PrismicRichText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
|
|
|
29
28
|
},
|
|
30
29
|
setup(__props) {
|
|
31
30
|
const props = __props;
|
|
32
|
-
const { options } = usePrismic();
|
|
33
|
-
const resolvedComponents = computed(() => {
|
|
34
|
-
return props.components || options.components?.richTextComponents;
|
|
35
|
-
});
|
|
36
|
-
const resolvedLinkResolver = computed(() => {
|
|
37
|
-
return props.linkResolver || options.linkResolver;
|
|
38
|
-
});
|
|
39
31
|
const children = computed(() => {
|
|
40
32
|
return asTree(props.field || []).children;
|
|
41
33
|
});
|
|
42
|
-
const isModern = computed(() => {
|
|
43
|
-
if (props.components) return true;
|
|
44
|
-
if (props.serializer) return false;
|
|
45
|
-
if (options.components?.richTextComponents) return true;
|
|
46
|
-
if (options.richTextSerializer) return false;
|
|
47
|
-
return true;
|
|
48
|
-
});
|
|
49
|
-
if (DEV) watchEffect(() => {
|
|
50
|
-
if (props.components && props.serializer) console.warn(`[PrismicRichText] Only one of "components" or "serializer" (deprecated) props can be provided. You can resolve this warning by removing either the "components" or "serializer" prop. "components" will be used in this case.`);
|
|
51
|
-
});
|
|
52
34
|
return (_ctx, _cache) => {
|
|
53
|
-
return
|
|
35
|
+
return children.value.length ? (openBlock(), createBlock(PrismicRichTextSerialize_default, {
|
|
54
36
|
key: 0,
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
default: withCtx(() => [children.value.length ? (openBlock(), createBlock(PrismicRichTextSerialize_default, {
|
|
58
|
-
key: 0,
|
|
59
|
-
children: children.value,
|
|
60
|
-
components: resolvedComponents.value,
|
|
61
|
-
"link-resolver": resolvedLinkResolver.value
|
|
62
|
-
}, null, 8, [
|
|
63
|
-
"children",
|
|
64
|
-
"components",
|
|
65
|
-
"link-resolver"
|
|
66
|
-
])) : (openBlock(), createBlock(resolveDynamicComponent(__props.fallback), { key: 1 }))]),
|
|
67
|
-
_: 1
|
|
68
|
-
}, 8, ["wrapper"])) : !isModern.value ? (openBlock(), createBlock(DeprecatedPrismicRichText_default, {
|
|
69
|
-
key: 1,
|
|
70
|
-
field: __props.field,
|
|
71
|
-
fallback: typeof __props.fallback === "string" ? __props.fallback : void 0,
|
|
37
|
+
children: children.value,
|
|
38
|
+
components: __props.components,
|
|
72
39
|
"link-resolver": __props.linkResolver,
|
|
73
|
-
|
|
74
|
-
|
|
40
|
+
"internal-link-component": __props.internalLinkComponent,
|
|
41
|
+
"external-link-component": __props.externalLinkComponent
|
|
75
42
|
}, null, 8, [
|
|
76
|
-
"
|
|
77
|
-
"
|
|
43
|
+
"children",
|
|
44
|
+
"components",
|
|
78
45
|
"link-resolver",
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
])) : createCommentVNode("v-if", true);
|
|
46
|
+
"internal-link-component",
|
|
47
|
+
"external-link-component"
|
|
48
|
+
])) : __props.fallback ? (openBlock(), createBlock(resolveDynamicComponent(__props.fallback), { key: 1 })) : createCommentVNode("v-if", true);
|
|
82
49
|
};
|
|
83
50
|
}
|
|
84
51
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n\ttype
|
|
1
|
+
{"version":3,"file":"PrismicRichText.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichText.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {\n\ttype LinkResolverFunction,\n\ttype RichTextField,\n} from \"@prismicio/client\"\nimport { asTree } from \"@prismicio/client/richtext\"\nimport type { PropType } from \"vue\"\nimport { computed } from \"vue\"\n\nimport type { ComponentOrTagName } from \"../types\"\nimport type { VueRichTextSerializer } from \"./types\"\n\nimport PrismicRichTextSerialize from \"./PrismicRichTextSerialize.vue\"\n\n/**\n * Props for `<PrismicRichText />`.\n */\nexport type PrismicRichTextProps = {\n\t/**\n\t * The Prismic rich text or title field to render.\n\t */\n\tfield: RichTextField | null | undefined\n\n\t/**\n\t * An object that maps a rich text block type to a Vue component.\n\t *\n\t * @example\n\t *\n\t * ```javascript\n\t * {\n\t * heading1: Heading1,\n\t * }\n\t * ```\n\t */\n\tcomponents?: VueRichTextSerializer\n\n\t/**\n\t * A link resolver function used to resolve link when not using the route\n\t * resolver parameter with `@prismicio/client`.\n\t *\n\t * @defaultValue The link resolver provided to `@prismicio/vue` plugin if configured.\n\t *\n\t * @see Link resolver documentation {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver#link-resolver}\n\t */\n\tlinkResolver?: LinkResolverFunction\n\n\t/**\n\t * The Vue component rendered for links when the URL is internal.\n\t *\n\t * @defaultValue `<RouterLink>`\n\t */\n\tinternalLinkComponent?: ComponentOrTagName\n\n\t/**\n\t * The Vue component rendered for links when the URL is external.\n\t *\n\t * @defaultValue `<a>`\n\t */\n\texternalLinkComponent?: ComponentOrTagName\n\n\t/**\n\t * The value to be rendered when the field is empty. If a fallback is not\n\t * given, `null` (nothing) will be rendered.\n\t */\n\tfallback?: ComponentOrTagName\n}\n\n// We're forced to declare props using the JavaScript syntax because `@vue/compiler-sfc`\n// has limitations for inferring types from complex objects.\nconst props = defineProps({\n\tfield: {\n\t\ttype: Array as unknown as PropType<PrismicRichTextProps[\"field\"]>,\n\t},\n\tcomponents: {\n\t\ttype: Object as PropType<PrismicRichTextProps[\"components\"]>,\n\t},\n\tlinkResolver: {\n\t\ttype: Function as PropType<PrismicRichTextProps[\"linkResolver\"]>,\n\t},\n\tinternalLinkComponent: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"internalLinkComponent\"]\n\t\t>,\n\t},\n\texternalLinkComponent: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"externalLinkComponent\"]\n\t\t>,\n\t},\n\tfallback: {\n\t\ttype: [String, Object, Function] as PropType<\n\t\t\tPrismicRichTextProps[\"fallback\"]\n\t\t>,\n\t},\n})\ndefineOptions({ name: \"PrismicRichText\" })\n\nconst children = computed(() => {\n\treturn asTree(props.field || []).children\n})\n</script>\n\n<template>\n\t<PrismicRichTextSerialize\n\t\tv-if=\"children.length\"\n\t\t:children=\"children\"\n\t\t:components=\"components\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t:internal-link-component=\"internalLinkComponent\"\n\t\t:external-link-component=\"externalLinkComponent\"\n\t/>\n\t<component v-else-if=\"fallback\" :is=\"fallback\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqEA,MAAM,QAAQ;EA4Bd,MAAM,WAAW,eAAe;AAC/B,UAAO,OAAO,MAAM,SAAS,EAAE,CAAC,CAAC;IACjC;;UAKO,SAAA,MAAS,uBADhB,YAOE,kCAAA;;IALA,UAAU,SAAA;IACV,YAAY,QAAA;IACZ,iBAAe,QAAA;IACf,2BAAyB,QAAA;IACzB,2BAAyB,QAAA;;;;;;;SAEL,QAAA,yBAAtB,YAAiD,wBAAZ,QAAA,SAAQ,EAAA,EAAA,KAAA,GAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrismicRichTextDefaultComponent.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type {
|
|
1
|
+
{"version":3,"file":"PrismicRichTextDefaultComponent.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type { ComponentOrTagName } from \"../types\"\nimport type { RichTextComponentProps, VueShorthand } from \"./types\"\n\nimport PrismicImage from \"../PrismicImage.vue\"\nimport PrismicLink from \"../PrismicLink.vue\"\n\nconst props = defineProps<\n\tRichTextComponentProps & {\n\t\tlinkResolver?: LinkResolverFunction\n\t\tinternalLinkComponent?: ComponentOrTagName\n\t\texternalLinkComponent?: ComponentOrTagName\n\t\tshorthand?: VueShorthand\n\t}\n>()\ndefineOptions({ name: \"PrismicRichTextDefaultComponent\" })\n\nconst as = computed(() => {\n\treturn props.node.type !== \"image\" && props.node.type !== \"span\" ? props.shorthand?.as : undefined\n})\n\nconst attrs = computed(() => {\n\treturn props.shorthand?.attrs ?? {}\n})\n\nconst dir = computed(() => {\n\treturn \"direction\" in props.node && props.node.direction === \"rtl\"\n\t\t? \"rtl\"\n\t\t: undefined\n})\n</script>\n\n<template>\n\t<component v-if=\"as\" :is=\"as\" :dir=\"dir\" v-bind=\"attrs\"><slot /></component>\n\t<h1 v-else-if=\"node.type === 'heading1'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h1>\n\t<h2 v-else-if=\"node.type === 'heading2'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h2>\n\t<h3 v-else-if=\"node.type === 'heading3'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h3>\n\t<h4 v-else-if=\"node.type === 'heading4'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h4>\n\t<h5 v-else-if=\"node.type === 'heading5'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h5>\n\t<h6 v-else-if=\"node.type === 'heading6'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h6>\n\t<p v-else-if=\"node.type === 'paragraph'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></p>\n\t<pre v-else-if=\"node.type === 'preformatted'\" v-bind=\"attrs\"><slot /></pre>\n\t<strong v-else-if=\"node.type === 'strong'\" v-bind=\"attrs\"><slot /></strong>\n\t<em v-else-if=\"node.type === 'em'\" v-bind=\"attrs\"><slot /></em>\n\t<li v-else-if=\"node.type === 'list-item'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></li>\n\t<li v-else-if=\"node.type === 'o-list-item'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></li>\n\t<ul v-else-if=\"node.type === 'group-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ul>\n\t<ol v-else-if=\"node.type === 'group-o-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ol>\n\t<p class=\"block-img\" v-else-if=\"node.type === 'image'\">\n\t\t<PrismicLink\n\t\t\tv-if=\"node.linkTo\"\n\t\t\t:field=\"node.linkTo\"\n\t\t\t:internal-component=\"internalLinkComponent\"\n\t\t\t:external-component=\"externalLinkComponent\"\n\t\t\t><PrismicImage :field=\"node\"\n\t\t/></PrismicLink>\n\t\t<PrismicImage v-else :field=\"node\" v-bind=\"attrs\" />\n\t</p>\n\t<div\n\t\tv-else-if=\"node.type === 'embed'\"\n\t\t:data-oembed=\"node.oembed.embed_url\"\n\t\t:data-oembed-type=\"node.oembed.type\"\n\t\t:data-oembed-provider=\"node.oembed.provider_name\"\n\t\tv-html=\"node.oembed.html\"\n\t\tv-bind=\"attrs\"\n\t/>\n\t<PrismicLink\n\t\tv-else-if=\"node.type === 'hyperlink'\"\n\t\t:field=\"node.data\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t:internal-component=\"internalLinkComponent\"\n\t\t:external-component=\"externalLinkComponent\"\n\t\tv-bind=\"attrs\"\n\t\t><slot\n\t/></PrismicLink>\n\t<span v-else-if=\"node.type === 'label'\" :class=\"node.data.label\" v-bind=\"attrs\"\n\t\t><slot\n\t/></span>\n\t<template v-else v-for=\"(line, index) in node.text.split('\\n')\" :key=\"line\"\n\t\t><br v-if=\"index > 0\" />{{ line }}</template\n\t>\n</template>\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrismicRichTextDefaultComponent.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type {
|
|
1
|
+
{"version":3,"file":"PrismicRichTextDefaultComponent.js","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type { ComponentOrTagName } from \"../types\"\nimport type { RichTextComponentProps, VueShorthand } from \"./types\"\n\nimport PrismicImage from \"../PrismicImage.vue\"\nimport PrismicLink from \"../PrismicLink.vue\"\n\nconst props = defineProps<\n\tRichTextComponentProps & {\n\t\tlinkResolver?: LinkResolverFunction\n\t\tinternalLinkComponent?: ComponentOrTagName\n\t\texternalLinkComponent?: ComponentOrTagName\n\t\tshorthand?: VueShorthand\n\t}\n>()\ndefineOptions({ name: \"PrismicRichTextDefaultComponent\" })\n\nconst as = computed(() => {\n\treturn props.node.type !== \"image\" && props.node.type !== \"span\" ? props.shorthand?.as : undefined\n})\n\nconst attrs = computed(() => {\n\treturn props.shorthand?.attrs ?? {}\n})\n\nconst dir = computed(() => {\n\treturn \"direction\" in props.node && props.node.direction === \"rtl\"\n\t\t? \"rtl\"\n\t\t: undefined\n})\n</script>\n\n<template>\n\t<component v-if=\"as\" :is=\"as\" :dir=\"dir\" v-bind=\"attrs\"><slot /></component>\n\t<h1 v-else-if=\"node.type === 'heading1'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h1>\n\t<h2 v-else-if=\"node.type === 'heading2'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h2>\n\t<h3 v-else-if=\"node.type === 'heading3'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h3>\n\t<h4 v-else-if=\"node.type === 'heading4'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h4>\n\t<h5 v-else-if=\"node.type === 'heading5'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h5>\n\t<h6 v-else-if=\"node.type === 'heading6'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h6>\n\t<p v-else-if=\"node.type === 'paragraph'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></p>\n\t<pre v-else-if=\"node.type === 'preformatted'\" v-bind=\"attrs\"><slot /></pre>\n\t<strong v-else-if=\"node.type === 'strong'\" v-bind=\"attrs\"><slot /></strong>\n\t<em v-else-if=\"node.type === 'em'\" v-bind=\"attrs\"><slot /></em>\n\t<li v-else-if=\"node.type === 'list-item'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></li>\n\t<li v-else-if=\"node.type === 'o-list-item'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></li>\n\t<ul v-else-if=\"node.type === 'group-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ul>\n\t<ol v-else-if=\"node.type === 'group-o-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ol>\n\t<p class=\"block-img\" v-else-if=\"node.type === 'image'\">\n\t\t<PrismicLink\n\t\t\tv-if=\"node.linkTo\"\n\t\t\t:field=\"node.linkTo\"\n\t\t\t:internal-component=\"internalLinkComponent\"\n\t\t\t:external-component=\"externalLinkComponent\"\n\t\t\t><PrismicImage :field=\"node\"\n\t\t/></PrismicLink>\n\t\t<PrismicImage v-else :field=\"node\" v-bind=\"attrs\" />\n\t</p>\n\t<div\n\t\tv-else-if=\"node.type === 'embed'\"\n\t\t:data-oembed=\"node.oembed.embed_url\"\n\t\t:data-oembed-type=\"node.oembed.type\"\n\t\t:data-oembed-provider=\"node.oembed.provider_name\"\n\t\tv-html=\"node.oembed.html\"\n\t\tv-bind=\"attrs\"\n\t/>\n\t<PrismicLink\n\t\tv-else-if=\"node.type === 'hyperlink'\"\n\t\t:field=\"node.data\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t:internal-component=\"internalLinkComponent\"\n\t\t:external-component=\"externalLinkComponent\"\n\t\tv-bind=\"attrs\"\n\t\t><slot\n\t/></PrismicLink>\n\t<span v-else-if=\"node.type === 'label'\" :class=\"node.data.label\" v-bind=\"attrs\"\n\t\t><slot\n\t/></span>\n\t<template v-else v-for=\"(line, index) in node.text.split('\\n')\" :key=\"line\"\n\t\t><br v-if=\"index > 0\" />{{ line }}</template\n\t>\n</template>\n"],"mappings":""}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
const require_PrismicEmbed = require('../PrismicEmbed.cjs');
|
|
2
1
|
const require_PrismicImage = require('../PrismicImage.cjs');
|
|
3
2
|
const require_PrismicLink = require('../PrismicLink.cjs');
|
|
4
3
|
let vue = require("vue");
|
|
@@ -11,18 +10,19 @@ const _hoisted_4 = ["dir"];
|
|
|
11
10
|
const _hoisted_5 = ["dir"];
|
|
12
11
|
const _hoisted_6 = ["dir"];
|
|
13
12
|
const _hoisted_7 = ["dir"];
|
|
14
|
-
const _hoisted_8 =
|
|
15
|
-
const _hoisted_9 =
|
|
16
|
-
const _hoisted_10 = {
|
|
17
|
-
|
|
18
|
-
const _hoisted_12 = ["dir"];
|
|
19
|
-
const _hoisted_13 = { key: 12 };
|
|
20
|
-
const _hoisted_14 = { key: 13 };
|
|
21
|
-
const _hoisted_15 = {
|
|
22
|
-
key: 14,
|
|
13
|
+
const _hoisted_8 = ["dir"];
|
|
14
|
+
const _hoisted_9 = ["dir"];
|
|
15
|
+
const _hoisted_10 = {
|
|
16
|
+
key: 15,
|
|
23
17
|
class: "block-img"
|
|
24
18
|
};
|
|
25
|
-
const
|
|
19
|
+
const _hoisted_11 = [
|
|
20
|
+
"data-oembed",
|
|
21
|
+
"data-oembed-type",
|
|
22
|
+
"data-oembed-provider",
|
|
23
|
+
"innerHTML"
|
|
24
|
+
];
|
|
25
|
+
const _hoisted_12 = { key: 0 };
|
|
26
26
|
var PrismicRichTextDefaultComponent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ (0, vue.defineComponent)({
|
|
27
27
|
name: "PrismicRichTextDefaultComponent",
|
|
28
28
|
__name: "PrismicRichTextDefaultComponent",
|
|
@@ -34,65 +34,105 @@ var PrismicRichTextDefaultComponent_vue_vue_type_script_setup_true_lang_default
|
|
|
34
34
|
linkResolver: {
|
|
35
35
|
type: Function,
|
|
36
36
|
required: false
|
|
37
|
+
},
|
|
38
|
+
internalLinkComponent: {
|
|
39
|
+
type: null,
|
|
40
|
+
required: false
|
|
41
|
+
},
|
|
42
|
+
externalLinkComponent: {
|
|
43
|
+
type: null,
|
|
44
|
+
required: false
|
|
45
|
+
},
|
|
46
|
+
shorthand: {
|
|
47
|
+
type: Object,
|
|
48
|
+
required: false
|
|
37
49
|
}
|
|
38
50
|
},
|
|
39
51
|
setup(__props) {
|
|
40
52
|
const props = __props;
|
|
53
|
+
const as = (0, vue.computed)(() => {
|
|
54
|
+
return props.node.type !== "image" && props.node.type !== "span" ? props.shorthand?.as : void 0;
|
|
55
|
+
});
|
|
56
|
+
const attrs = (0, vue.computed)(() => {
|
|
57
|
+
return props.shorthand?.attrs ?? {};
|
|
58
|
+
});
|
|
41
59
|
const dir = (0, vue.computed)(() => {
|
|
42
60
|
return "direction" in props.node && props.node.direction === "rtl" ? "rtl" : void 0;
|
|
43
61
|
});
|
|
44
62
|
return (_ctx, _cache) => {
|
|
45
|
-
return
|
|
63
|
+
return as.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(as.value), (0, vue.mergeProps)({
|
|
46
64
|
key: 0,
|
|
47
65
|
dir: dir.value
|
|
48
|
-
},
|
|
66
|
+
}, attrs.value), {
|
|
67
|
+
default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default")]),
|
|
68
|
+
_: 3
|
|
69
|
+
}, 16, ["dir"])) : __props.node.type === "heading1" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h1", (0, vue.mergeProps)({
|
|
49
70
|
key: 1,
|
|
50
71
|
dir: dir.value
|
|
51
|
-
}, [(0, vue.renderSlot)(_ctx.$slots, "default")],
|
|
72
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_1)) : __props.node.type === "heading2" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h2", (0, vue.mergeProps)({
|
|
52
73
|
key: 2,
|
|
53
74
|
dir: dir.value
|
|
54
|
-
}, [(0, vue.renderSlot)(_ctx.$slots, "default")],
|
|
75
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_2)) : __props.node.type === "heading3" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h3", (0, vue.mergeProps)({
|
|
55
76
|
key: 3,
|
|
56
77
|
dir: dir.value
|
|
57
|
-
}, [(0, vue.renderSlot)(_ctx.$slots, "default")],
|
|
78
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_3)) : __props.node.type === "heading4" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h4", (0, vue.mergeProps)({
|
|
58
79
|
key: 4,
|
|
59
80
|
dir: dir.value
|
|
60
|
-
}, [(0, vue.renderSlot)(_ctx.$slots, "default")],
|
|
81
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_4)) : __props.node.type === "heading5" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h5", (0, vue.mergeProps)({
|
|
61
82
|
key: 5,
|
|
62
83
|
dir: dir.value
|
|
63
|
-
}, [(0, vue.renderSlot)(_ctx.$slots, "default")],
|
|
84
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_5)) : __props.node.type === "heading6" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("h6", (0, vue.mergeProps)({
|
|
64
85
|
key: 6,
|
|
65
86
|
dir: dir.value
|
|
66
|
-
},
|
|
67
|
-
key:
|
|
87
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_6)) : __props.node.type === "paragraph" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", (0, vue.mergeProps)({
|
|
88
|
+
key: 7,
|
|
68
89
|
dir: dir.value
|
|
69
|
-
}, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8,
|
|
90
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_7)) : __props.node.type === "preformatted" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("pre", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 8 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "strong" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("strong", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 9 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "em" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("em", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 10 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("li", (0, vue.mergeProps)({
|
|
70
91
|
key: 11,
|
|
71
92
|
dir: dir.value
|
|
72
|
-
}, [(0, vue.renderSlot)(_ctx.$slots, "default")],
|
|
93
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_8)) : __props.node.type === "o-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("li", (0, vue.mergeProps)({
|
|
94
|
+
key: 12,
|
|
95
|
+
dir: dir.value
|
|
96
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16, _hoisted_9)) : __props.node.type === "group-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("ul", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 13 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "group-o-list-item" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("ol", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 14 }, attrs.value)), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : __props.node.type === "image" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_10, [__props.node.linkTo ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicLink.default, {
|
|
73
97
|
key: 0,
|
|
74
|
-
field: __props.node.linkTo
|
|
98
|
+
field: __props.node.linkTo,
|
|
99
|
+
"internal-component": __props.internalLinkComponent,
|
|
100
|
+
"external-component": __props.externalLinkComponent
|
|
75
101
|
}, {
|
|
76
102
|
default: (0, vue.withCtx)(() => [(0, vue.createVNode)(require_PrismicImage.default, { field: __props.node }, null, 8, ["field"])]),
|
|
77
103
|
_: 1
|
|
78
|
-
}, 8, [
|
|
104
|
+
}, 8, [
|
|
105
|
+
"field",
|
|
106
|
+
"internal-component",
|
|
107
|
+
"external-component"
|
|
108
|
+
])) : ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicImage.default, (0, vue.mergeProps)({
|
|
79
109
|
key: 1,
|
|
80
110
|
field: __props.node
|
|
81
|
-
}, null,
|
|
82
|
-
key: 15,
|
|
83
|
-
field: __props.node.oembed
|
|
84
|
-
}, null, 8, ["field"])) : __props.node.type === "hyperlink" ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicLink.default, {
|
|
111
|
+
}, attrs.value), null, 16, ["field"]))])) : __props.node.type === "embed" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", (0, vue.mergeProps)({
|
|
85
112
|
key: 16,
|
|
113
|
+
"data-oembed": __props.node.oembed.embed_url,
|
|
114
|
+
"data-oembed-type": __props.node.oembed.type,
|
|
115
|
+
"data-oembed-provider": __props.node.oembed.provider_name,
|
|
116
|
+
innerHTML: __props.node.oembed.html
|
|
117
|
+
}, attrs.value), null, 16, _hoisted_11)) : __props.node.type === "hyperlink" ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_PrismicLink.default, (0, vue.mergeProps)({
|
|
118
|
+
key: 17,
|
|
86
119
|
field: __props.node.data,
|
|
87
|
-
"link-resolver": __props.linkResolver
|
|
88
|
-
|
|
120
|
+
"link-resolver": __props.linkResolver,
|
|
121
|
+
"internal-component": __props.internalLinkComponent,
|
|
122
|
+
"external-component": __props.externalLinkComponent
|
|
123
|
+
}, attrs.value), {
|
|
89
124
|
default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default")]),
|
|
90
125
|
_: 3
|
|
91
|
-
},
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
126
|
+
}, 16, [
|
|
127
|
+
"field",
|
|
128
|
+
"link-resolver",
|
|
129
|
+
"internal-component",
|
|
130
|
+
"external-component"
|
|
131
|
+
])) : __props.node.type === "label" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", (0, vue.mergeProps)({
|
|
132
|
+
key: 18,
|
|
133
|
+
class: __props.node.data.label
|
|
134
|
+
}, attrs.value), [(0, vue.renderSlot)(_ctx.$slots, "default")], 16)) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 19 }, (0, vue.renderList)(__props.node.text.split("\n"), (line, index) => {
|
|
135
|
+
return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: line }, [index > 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("br", _hoisted_12)) : (0, vue.createCommentVNode)("v-if", true), (0, vue.createTextVNode)((0, vue.toDisplayString)(line), 1)], 64);
|
|
96
136
|
}), 128));
|
|
97
137
|
};
|
|
98
138
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type {
|
|
1
|
+
{"version":3,"file":"PrismicRichTextDefaultComponent.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../../src/PrismicRichText/PrismicRichTextDefaultComponent.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { LinkResolverFunction } from \"@prismicio/client\"\nimport { computed } from \"vue\"\n\nimport type { ComponentOrTagName } from \"../types\"\nimport type { RichTextComponentProps, VueShorthand } from \"./types\"\n\nimport PrismicImage from \"../PrismicImage.vue\"\nimport PrismicLink from \"../PrismicLink.vue\"\n\nconst props = defineProps<\n\tRichTextComponentProps & {\n\t\tlinkResolver?: LinkResolverFunction\n\t\tinternalLinkComponent?: ComponentOrTagName\n\t\texternalLinkComponent?: ComponentOrTagName\n\t\tshorthand?: VueShorthand\n\t}\n>()\ndefineOptions({ name: \"PrismicRichTextDefaultComponent\" })\n\nconst as = computed(() => {\n\treturn props.node.type !== \"image\" && props.node.type !== \"span\" ? props.shorthand?.as : undefined\n})\n\nconst attrs = computed(() => {\n\treturn props.shorthand?.attrs ?? {}\n})\n\nconst dir = computed(() => {\n\treturn \"direction\" in props.node && props.node.direction === \"rtl\"\n\t\t? \"rtl\"\n\t\t: undefined\n})\n</script>\n\n<template>\n\t<component v-if=\"as\" :is=\"as\" :dir=\"dir\" v-bind=\"attrs\"><slot /></component>\n\t<h1 v-else-if=\"node.type === 'heading1'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h1>\n\t<h2 v-else-if=\"node.type === 'heading2'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h2>\n\t<h3 v-else-if=\"node.type === 'heading3'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h3>\n\t<h4 v-else-if=\"node.type === 'heading4'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h4>\n\t<h5 v-else-if=\"node.type === 'heading5'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h5>\n\t<h6 v-else-if=\"node.type === 'heading6'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></h6>\n\t<p v-else-if=\"node.type === 'paragraph'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></p>\n\t<pre v-else-if=\"node.type === 'preformatted'\" v-bind=\"attrs\"><slot /></pre>\n\t<strong v-else-if=\"node.type === 'strong'\" v-bind=\"attrs\"><slot /></strong>\n\t<em v-else-if=\"node.type === 'em'\" v-bind=\"attrs\"><slot /></em>\n\t<li v-else-if=\"node.type === 'list-item'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></li>\n\t<li v-else-if=\"node.type === 'o-list-item'\" :dir=\"dir\" v-bind=\"attrs\"><slot /></li>\n\t<ul v-else-if=\"node.type === 'group-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ul>\n\t<ol v-else-if=\"node.type === 'group-o-list-item'\" v-bind=\"attrs\">\n\t\t<slot />\n\t</ol>\n\t<p class=\"block-img\" v-else-if=\"node.type === 'image'\">\n\t\t<PrismicLink\n\t\t\tv-if=\"node.linkTo\"\n\t\t\t:field=\"node.linkTo\"\n\t\t\t:internal-component=\"internalLinkComponent\"\n\t\t\t:external-component=\"externalLinkComponent\"\n\t\t\t><PrismicImage :field=\"node\"\n\t\t/></PrismicLink>\n\t\t<PrismicImage v-else :field=\"node\" v-bind=\"attrs\" />\n\t</p>\n\t<div\n\t\tv-else-if=\"node.type === 'embed'\"\n\t\t:data-oembed=\"node.oembed.embed_url\"\n\t\t:data-oembed-type=\"node.oembed.type\"\n\t\t:data-oembed-provider=\"node.oembed.provider_name\"\n\t\tv-html=\"node.oembed.html\"\n\t\tv-bind=\"attrs\"\n\t/>\n\t<PrismicLink\n\t\tv-else-if=\"node.type === 'hyperlink'\"\n\t\t:field=\"node.data\"\n\t\t:link-resolver=\"linkResolver\"\n\t\t:internal-component=\"internalLinkComponent\"\n\t\t:external-component=\"externalLinkComponent\"\n\t\tv-bind=\"attrs\"\n\t\t><slot\n\t/></PrismicLink>\n\t<span v-else-if=\"node.type === 'label'\" :class=\"node.data.label\" v-bind=\"attrs\"\n\t\t><slot\n\t/></span>\n\t<template v-else v-for=\"(line, index) in node.text.split('\\n')\" :key=\"line\"\n\t\t><br v-if=\"index > 0\" />{{ line }}</template\n\t>\n</template>\n"],"mappings":"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"}
|