rimelight-components 2.0.47 → 2.0.48
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/module.json +1 -1
- package/dist/module.mjs +4 -2
- package/dist/runtime/components/app/ScrollToTop.d.vue.ts +4 -1
- package/dist/runtime/components/app/ScrollToTop.vue.d.ts +4 -1
- package/dist/runtime/components/blocks/Block.d.vue.ts +4 -17
- package/dist/runtime/components/blocks/Block.vue +25 -46
- package/dist/runtime/components/blocks/Block.vue.d.ts +4 -17
- package/dist/runtime/components/blocks/BlockEditRenderer.vue +55 -0
- package/dist/runtime/components/blocks/BlockEditor.d.vue.ts +15 -0
- package/dist/runtime/components/blocks/BlockEditor.vue +110 -0
- package/dist/runtime/components/blocks/BlockEditor.vue.d.ts +15 -0
- package/dist/runtime/components/{renderers/BlockRenderer.vue → blocks/BlockViewRenderer.vue} +21 -18
- package/dist/runtime/components/blocks/editor/CalloutBlockEditor.vue +1 -1
- package/dist/runtime/components/blocks/editor/CardBlockEditor.vue +1 -1
- package/dist/runtime/components/blocks/editor/ParagraphBlockEditor.d.vue.ts +5 -2
- package/dist/runtime/components/blocks/editor/ParagraphBlockEditor.vue +53 -5
- package/dist/runtime/components/blocks/editor/ParagraphBlockEditor.vue.d.ts +5 -2
- package/dist/runtime/components/blocks/editor/SectionBlockEditor.d.vue.ts +5 -2
- package/dist/runtime/components/blocks/editor/SectionBlockEditor.vue +101 -45
- package/dist/runtime/components/blocks/editor/SectionBlockEditor.vue.d.ts +5 -2
- package/dist/runtime/components/blocks/editor/TestBlockEditor.d.vue.ts +7 -0
- package/dist/runtime/components/blocks/editor/TestBlockEditor.vue +44 -0
- package/dist/runtime/components/blocks/editor/TestBlockEditor.vue.d.ts +7 -0
- package/dist/runtime/components/blocks/renderer/CalloutBlockRenderer.vue +1 -1
- package/dist/runtime/components/blocks/renderer/CardBlockRenderer.vue +1 -1
- package/dist/runtime/components/blocks/renderer/ParagraphBlockRenderer.vue +1 -3
- package/dist/runtime/components/blocks/renderer/SectionBlockRenderer.vue +2 -1
- package/dist/runtime/components/blocks/renderer/TestBlockRenderer.d.vue.ts +4 -0
- package/dist/runtime/components/blocks/renderer/TestBlockRenderer.vue +9 -0
- package/dist/runtime/components/blocks/renderer/TestBlockRenderer.vue.d.ts +4 -0
- package/dist/runtime/components/cards/TeamCard.d.vue.ts +2 -2
- package/dist/runtime/components/cards/TeamCard.vue.d.ts +2 -2
- package/dist/runtime/components/content/Callout.d.vue.ts +2 -2
- package/dist/runtime/components/content/Callout.vue.d.ts +2 -2
- package/dist/runtime/components/content/Section.d.vue.ts +5 -5
- package/dist/runtime/components/content/Section.vue +13 -8
- package/dist/runtime/components/content/Section.vue.d.ts +5 -5
- package/dist/runtime/components/content/Test.d.vue.ts +16 -0
- package/dist/runtime/components/content/Test.vue +13 -0
- package/dist/runtime/components/content/Test.vue.d.ts +16 -0
- package/dist/runtime/composables/useBlockEditor.d.ts +27233 -0
- package/dist/runtime/composables/useBlockEditor.js +163 -0
- package/dist/runtime/types/blocks.d.ts +9 -2
- package/dist/runtime/utils/richTextHelpers.d.ts +16 -0
- package/dist/runtime/utils/richTextHelpers.js +17 -0
- package/package.json +19 -21
- package/dist/runtime/components/renderers/BlockEditor.vue +0 -63
- package/dist/runtime/composables/useBlockContentEditor.d.ts +0 -32
- package/dist/runtime/composables/useBlockContentEditor.js +0 -63
- /package/dist/runtime/components/{renderers/BlockEditor.d.vue.ts → blocks/BlockEditRenderer.d.vue.ts} +0 -0
- /package/dist/runtime/components/{renderers/BlockEditor.vue.d.ts → blocks/BlockEditRenderer.vue.d.ts} +0 -0
- /package/dist/runtime/components/{renderers/BlockRenderer.d.vue.ts → blocks/BlockViewRenderer.d.vue.ts} +0 -0
- /package/dist/runtime/components/{renderers/BlockRenderer.vue.d.ts → blocks/BlockViewRenderer.vue.d.ts} +0 -0
- /package/dist/runtime/components/{renderers → blocks}/TOC.d.vue.ts +0 -0
- /package/dist/runtime/components/{renderers → blocks}/TOC.vue +0 -0
- /package/dist/runtime/components/{renderers → blocks}/TOC.vue.d.ts +0 -0
- /package/dist/runtime/components/{renderers → blocks}/TextRenderer.d.vue.ts +0 -0
- /package/dist/runtime/components/{renderers → blocks}/TextRenderer.vue +0 -0
- /package/dist/runtime/components/{renderers → blocks}/TextRenderer.vue.d.ts +0 -0
|
@@ -1,55 +1,111 @@
|
|
|
1
1
|
<script setup>
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
const { level, title, description, children } = defineProps({
|
|
2
|
+
import { inject, ref, computed, watch } from "vue";
|
|
3
|
+
const { level, title, description, children, id } = defineProps({
|
|
5
4
|
level: { type: Number, required: true },
|
|
6
5
|
title: { type: String, required: true },
|
|
7
6
|
description: { type: String, required: false },
|
|
8
|
-
children: { type: Array, required: true }
|
|
7
|
+
children: { type: Array, required: true },
|
|
8
|
+
id: { type: String, required: true }
|
|
9
9
|
});
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
10
|
+
const hasChildren = computed(() => children && children.length > 0);
|
|
11
|
+
const editorApi = inject("block-editor-api");
|
|
12
|
+
const localLevel = ref(level);
|
|
13
|
+
const localTitle = ref(title);
|
|
14
|
+
const localDescription = ref(description);
|
|
15
|
+
const levelItems = [
|
|
16
|
+
{ label: "H1", value: 1 },
|
|
17
|
+
{ label: "H2", value: 2 },
|
|
18
|
+
{ label: "H3", value: 3 }
|
|
19
|
+
];
|
|
20
|
+
const updateLocalTitle = (e) => {
|
|
21
|
+
localTitle.value = e.target.value;
|
|
22
|
+
};
|
|
23
|
+
const commitTitleOnBlur = () => {
|
|
24
|
+
if (editorApi && id && localTitle.value !== title) {
|
|
25
|
+
editorApi.updateBlockProps(id, { title: localTitle.value });
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const updateLocalDescription = (e) => {
|
|
29
|
+
localDescription.value = e.target.value;
|
|
30
|
+
};
|
|
31
|
+
const commitDescriptionOnBlur = () => {
|
|
32
|
+
if (editorApi && id && localDescription.value !== description) {
|
|
33
|
+
editorApi.updateBlockProps(id, { description: localDescription.value });
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
watch(localLevel, (newLocalLevel) => {
|
|
37
|
+
if (editorApi && id && newLocalLevel !== level) {
|
|
38
|
+
editorApi.updateBlockProps(id, { level: newLocalLevel });
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
watch(
|
|
42
|
+
() => title,
|
|
43
|
+
(newVal) => {
|
|
44
|
+
if (newVal !== localTitle.value) {
|
|
45
|
+
localTitle.value = newVal;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
watch(
|
|
50
|
+
() => level,
|
|
51
|
+
(newVal) => {
|
|
52
|
+
if (newVal !== localLevel.value) {
|
|
53
|
+
localLevel.value = newVal;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
);
|
|
57
|
+
watch(
|
|
58
|
+
() => description,
|
|
59
|
+
(newVal) => {
|
|
60
|
+
if (newVal !== localDescription.value) {
|
|
61
|
+
localDescription.value = newVal;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
);
|
|
15
65
|
</script>
|
|
16
66
|
|
|
17
67
|
<template>
|
|
18
|
-
<
|
|
19
|
-
|
|
20
|
-
:
|
|
68
|
+
<div class="flex flex-col gap-sm">
|
|
69
|
+
<RCSection
|
|
70
|
+
:level="localLevel"
|
|
71
|
+
:title="localTitle"
|
|
21
72
|
:description="description"
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
<
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
73
|
+
is-editing
|
|
74
|
+
>
|
|
75
|
+
<template #title>
|
|
76
|
+
<div class="flex flex-row gap-xs">
|
|
77
|
+
<USelect
|
|
78
|
+
v-model="localLevel"
|
|
79
|
+
:items="levelItems"
|
|
80
|
+
value-key="value"
|
|
81
|
+
label-key="label"
|
|
82
|
+
variant="ghost"
|
|
83
|
+
placeholder="Select Heading Level"
|
|
84
|
+
size="sm"
|
|
85
|
+
color="neutral"
|
|
86
|
+
/>
|
|
87
|
+
<UInput
|
|
88
|
+
:model-value="localTitle"
|
|
89
|
+
variant="ghost"
|
|
90
|
+
placeholder="Section Title..."
|
|
91
|
+
@input="updateLocalTitle"
|
|
92
|
+
@blur="commitTitleOnBlur"
|
|
93
|
+
class="w-full"
|
|
94
|
+
/>
|
|
95
|
+
</div>
|
|
96
|
+
</template>
|
|
97
|
+
<template #description>
|
|
98
|
+
<UInput
|
|
99
|
+
:model-value="localDescription"
|
|
100
|
+
variant="ghost"
|
|
101
|
+
placeholder="Section Description..."
|
|
102
|
+
@input="updateLocalDescription"
|
|
103
|
+
@blur="commitDescriptionOnBlur"
|
|
104
|
+
/>
|
|
105
|
+
</template>
|
|
106
|
+
<template #default>
|
|
107
|
+
<RCBlockEditRenderer v-if="hasChildren" :blocks="children" />
|
|
108
|
+
</template>
|
|
109
|
+
</RCSection>
|
|
110
|
+
</div>
|
|
55
111
|
</template>
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import type { SectionBlockProps } from "
|
|
2
|
-
|
|
1
|
+
import type { SectionBlockProps } from "../../../types/blocks.js";
|
|
2
|
+
type __VLS_Props = SectionBlockProps & {
|
|
3
|
+
id: string;
|
|
4
|
+
};
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
3
6
|
declare const _default: typeof __VLS_export;
|
|
4
7
|
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { TestBlockProps } from "../../../types/blocks.js";
|
|
2
|
+
type __VLS_Props = TestBlockProps & {
|
|
3
|
+
id: string;
|
|
4
|
+
};
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
declare const _default: typeof __VLS_export;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { inject, ref, watch } from "vue";
|
|
3
|
+
const { text, id } = defineProps({
|
|
4
|
+
text: { type: String, required: true },
|
|
5
|
+
id: { type: String, required: true }
|
|
6
|
+
});
|
|
7
|
+
const editorApi = inject("block-editor-api");
|
|
8
|
+
const localText = ref(text);
|
|
9
|
+
const updateLocalText = (e) => {
|
|
10
|
+
const val = e.target.value;
|
|
11
|
+
localText.value = val;
|
|
12
|
+
};
|
|
13
|
+
const commitOnBlur = () => {
|
|
14
|
+
if (editorApi && id) {
|
|
15
|
+
if (localText.value !== text) {
|
|
16
|
+
editorApi.updateBlockProps(id, { text: localText.value });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
watch(
|
|
21
|
+
() => text,
|
|
22
|
+
(newVal) => {
|
|
23
|
+
if (newVal !== localText.value) {
|
|
24
|
+
localText.value = newVal;
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
// Ensure the initial state is set correctly
|
|
28
|
+
{ immediate: true }
|
|
29
|
+
);
|
|
30
|
+
</script>
|
|
31
|
+
|
|
32
|
+
<template>
|
|
33
|
+
<RCTest :text="localText">
|
|
34
|
+
<template #content>
|
|
35
|
+
<UInput
|
|
36
|
+
:model-value="localText"
|
|
37
|
+
placeholder="Type here..."
|
|
38
|
+
@input="updateLocalText"
|
|
39
|
+
@blur="commitOnBlur"
|
|
40
|
+
class="w-full"
|
|
41
|
+
/>
|
|
42
|
+
</template>
|
|
43
|
+
</RCTest>
|
|
44
|
+
</template>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { TestBlockProps } from "../../../types/blocks.js";
|
|
2
|
+
type __VLS_Props = TestBlockProps & {
|
|
3
|
+
id: string;
|
|
4
|
+
};
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
declare const _default: typeof __VLS_export;
|
|
7
|
+
export default _default;
|
|
@@ -12,7 +12,7 @@ const { title, to, target, children } = defineProps({
|
|
|
12
12
|
<NuxtLink :to="to" :target="target">
|
|
13
13
|
<UCard class="flex h-full flex-col">
|
|
14
14
|
<h3>{{ title }}</h3>
|
|
15
|
-
<
|
|
15
|
+
<RCBlockViewRenderer :blocks="children" />
|
|
16
16
|
</UCard>
|
|
17
17
|
</NuxtLink>
|
|
18
18
|
</template>
|
|
@@ -8,6 +8,7 @@ const { level, title, description, children } = defineProps({
|
|
|
8
8
|
children: { type: Array, required: true }
|
|
9
9
|
});
|
|
10
10
|
const headingId = computed(() => title ? slugify(title) : void 0);
|
|
11
|
+
const hasChildren = computed(() => children && children.length > 0);
|
|
11
12
|
</script>
|
|
12
13
|
|
|
13
14
|
<template>
|
|
@@ -17,6 +18,6 @@ const headingId = computed(() => title ? slugify(title) : void 0);
|
|
|
17
18
|
:description="description"
|
|
18
19
|
:id="headingId"
|
|
19
20
|
>
|
|
20
|
-
<
|
|
21
|
+
<RCBlockViewRenderer v-if="hasChildren" :blocks="children" />
|
|
21
22
|
</RCSection>
|
|
22
23
|
</template>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { TestBlockProps } from "~~/src/runtime/types/blocks";
|
|
2
|
+
declare const __VLS_export: import("vue").DefineComponent<TestBlockProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<TestBlockProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
3
|
+
declare const _default: typeof __VLS_export;
|
|
4
|
+
export default _default;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { TestBlockProps } from "~~/src/runtime/types/blocks";
|
|
2
|
+
declare const __VLS_export: import("vue").DefineComponent<TestBlockProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<TestBlockProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
3
|
+
declare const _default: typeof __VLS_export;
|
|
4
|
+
export default _default;
|
|
@@ -5,9 +5,9 @@ type __VLS_Props = {
|
|
|
5
5
|
role: string;
|
|
6
6
|
description: string;
|
|
7
7
|
};
|
|
8
|
-
declare var
|
|
8
|
+
declare var __VLS_14: {};
|
|
9
9
|
type __VLS_Slots = {} & {
|
|
10
|
-
links?: (props: typeof
|
|
10
|
+
links?: (props: typeof __VLS_14) => any;
|
|
11
11
|
};
|
|
12
12
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -5,9 +5,9 @@ type __VLS_Props = {
|
|
|
5
5
|
role: string;
|
|
6
6
|
description: string;
|
|
7
7
|
};
|
|
8
|
-
declare var
|
|
8
|
+
declare var __VLS_14: {};
|
|
9
9
|
type __VLS_Slots = {} & {
|
|
10
|
-
links?: (props: typeof
|
|
10
|
+
links?: (props: typeof __VLS_14) => any;
|
|
11
11
|
};
|
|
12
12
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -4,9 +4,9 @@ type __VLS_Props = {
|
|
|
4
4
|
to?: string;
|
|
5
5
|
target?: string;
|
|
6
6
|
};
|
|
7
|
-
declare var
|
|
7
|
+
declare var __VLS_21: {};
|
|
8
8
|
type __VLS_Slots = {} & {
|
|
9
|
-
default?: (props: typeof
|
|
9
|
+
default?: (props: typeof __VLS_21) => any;
|
|
10
10
|
};
|
|
11
11
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
12
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -4,9 +4,9 @@ type __VLS_Props = {
|
|
|
4
4
|
to?: string;
|
|
5
5
|
target?: string;
|
|
6
6
|
};
|
|
7
|
-
declare var
|
|
7
|
+
declare var __VLS_21: {};
|
|
8
8
|
type __VLS_Slots = {} & {
|
|
9
|
-
default?: (props: typeof
|
|
9
|
+
default?: (props: typeof __VLS_21) => any;
|
|
10
10
|
};
|
|
11
11
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
12
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -5,15 +5,15 @@ type __VLS_Props = {
|
|
|
5
5
|
description?: string;
|
|
6
6
|
isEditing?: boolean;
|
|
7
7
|
};
|
|
8
|
-
declare var
|
|
8
|
+
declare var __VLS_27: {}, __VLS_29: {}, __VLS_31: {}, __VLS_38: {};
|
|
9
9
|
type __VLS_Slots = {} & {
|
|
10
|
-
title?: (props: typeof
|
|
10
|
+
title?: (props: typeof __VLS_27) => any;
|
|
11
11
|
} & {
|
|
12
|
-
title?: (props: typeof
|
|
12
|
+
title?: (props: typeof __VLS_29) => any;
|
|
13
13
|
} & {
|
|
14
|
-
description?: (props: typeof
|
|
14
|
+
description?: (props: typeof __VLS_31) => any;
|
|
15
15
|
} & {
|
|
16
|
-
default?: (props: typeof
|
|
16
|
+
default?: (props: typeof __VLS_38) => any;
|
|
17
17
|
};
|
|
18
18
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
19
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -126,14 +126,19 @@ const fullSectionUrl = computed(() => {
|
|
|
126
126
|
:class="linkSlot()"
|
|
127
127
|
class="group lg:-ms-2 lg:ps-2"
|
|
128
128
|
>
|
|
129
|
-
<
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
129
|
+
<ClientOnly>
|
|
130
|
+
<UButton
|
|
131
|
+
variant="soft"
|
|
132
|
+
color="primary"
|
|
133
|
+
leading-icon="lucide:link"
|
|
134
|
+
:to="`#${sectionId}`"
|
|
135
|
+
class="absolute top-1 -ms-8 hidden rounded-md p-1 opacity-0 transition group-hover:opacity-100 group-focus:opacity-100 lg:flex"
|
|
136
|
+
@click="copyToClipboard(fullSectionUrl)"
|
|
137
|
+
/>
|
|
138
|
+
<template #fallback>
|
|
139
|
+
<div class="absolute top-1 -ms-8 w-6 h-6 rounded-md p-1 opacity-0 transition lg:flex" />
|
|
140
|
+
</template>
|
|
141
|
+
</ClientOnly>
|
|
137
142
|
<slot name="title">{{ title }}</slot>
|
|
138
143
|
</NuxtLink>
|
|
139
144
|
<slot v-else name="title">{{ title }}</slot>
|
|
@@ -5,15 +5,15 @@ type __VLS_Props = {
|
|
|
5
5
|
description?: string;
|
|
6
6
|
isEditing?: boolean;
|
|
7
7
|
};
|
|
8
|
-
declare var
|
|
8
|
+
declare var __VLS_27: {}, __VLS_29: {}, __VLS_31: {}, __VLS_38: {};
|
|
9
9
|
type __VLS_Slots = {} & {
|
|
10
|
-
title?: (props: typeof
|
|
10
|
+
title?: (props: typeof __VLS_27) => any;
|
|
11
11
|
} & {
|
|
12
|
-
title?: (props: typeof
|
|
12
|
+
title?: (props: typeof __VLS_29) => any;
|
|
13
13
|
} & {
|
|
14
|
-
description?: (props: typeof
|
|
14
|
+
description?: (props: typeof __VLS_31) => any;
|
|
15
15
|
} & {
|
|
16
|
-
default?: (props: typeof
|
|
16
|
+
default?: (props: typeof __VLS_38) => any;
|
|
17
17
|
};
|
|
18
18
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
19
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
text: string;
|
|
3
|
+
};
|
|
4
|
+
declare var __VLS_1: {};
|
|
5
|
+
type __VLS_Slots = {} & {
|
|
6
|
+
content?: (props: typeof __VLS_1) => any;
|
|
7
|
+
};
|
|
8
|
+
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
9
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
10
|
+
declare const _default: typeof __VLS_export;
|
|
11
|
+
export default _default;
|
|
12
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
13
|
+
new (): {
|
|
14
|
+
$slots: S;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
text: string;
|
|
3
|
+
};
|
|
4
|
+
declare var __VLS_1: {};
|
|
5
|
+
type __VLS_Slots = {} & {
|
|
6
|
+
content?: (props: typeof __VLS_1) => any;
|
|
7
|
+
};
|
|
8
|
+
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
9
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
10
|
+
declare const _default: typeof __VLS_export;
|
|
11
|
+
export default _default;
|
|
12
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
13
|
+
new (): {
|
|
14
|
+
$slots: S;
|
|
15
|
+
};
|
|
16
|
+
};
|