@abraca/nuxt 1.8.2 → 1.9.1

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 (54) hide show
  1. package/README.md +27 -2
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +42 -4
  4. package/dist/runtime/components/docs/ADocsNavigation.d.vue.ts +155 -0
  5. package/dist/runtime/components/docs/ADocsNavigation.vue +154 -0
  6. package/dist/runtime/components/docs/ADocsNavigation.vue.d.ts +155 -0
  7. package/dist/runtime/components/docs/ADocsSearch.d.vue.ts +249 -0
  8. package/dist/runtime/components/docs/ADocsSearch.vue +187 -0
  9. package/dist/runtime/components/docs/ADocsSearch.vue.d.ts +249 -0
  10. package/dist/runtime/components/docs/ADocsSearchButton.d.vue.ts +253 -0
  11. package/dist/runtime/components/docs/ADocsSearchButton.vue +99 -0
  12. package/dist/runtime/components/docs/ADocsSearchButton.vue.d.ts +253 -0
  13. package/dist/runtime/components/docs/ADocsSurround.d.vue.ts +56 -0
  14. package/dist/runtime/components/docs/ADocsSurround.vue +68 -0
  15. package/dist/runtime/components/docs/ADocsSurround.vue.d.ts +56 -0
  16. package/dist/runtime/components/docs/ADocsToc.d.vue.ts +117 -0
  17. package/dist/runtime/components/docs/ADocsToc.vue +194 -0
  18. package/dist/runtime/components/docs/ADocsToc.vue.d.ts +117 -0
  19. package/dist/runtime/components/editor/ADocLinkPopover.vue +1 -5
  20. package/dist/runtime/components/renderers/AMediaRenderer.vue +1 -1
  21. package/dist/runtime/components/shell/ADocPanelSettings.d.vue.ts +32 -2
  22. package/dist/runtime/components/shell/ADocPanelSettings.vue +289 -2
  23. package/dist/runtime/components/shell/ADocPanelSettings.vue.d.ts +32 -2
  24. package/dist/runtime/composables/useDocsSearch.d.ts +24 -0
  25. package/dist/runtime/composables/useDocsSearch.js +34 -0
  26. package/dist/runtime/extensions/doc-embed.js +2 -1
  27. package/dist/runtime/extensions/doc-link-drop.js +4 -4
  28. package/dist/runtime/extensions/doc-link.d.ts +12 -0
  29. package/dist/runtime/extensions/doc-link.js +60 -0
  30. package/dist/runtime/extensions/views/DocEmbedView.vue +18 -3
  31. package/dist/runtime/extensions/views/DocLinkView.d.vue.ts +4 -0
  32. package/dist/runtime/extensions/views/DocLinkView.vue +71 -0
  33. package/dist/runtime/extensions/views/DocLinkView.vue.d.ts +4 -0
  34. package/dist/runtime/plugin-abracadabra.client.js +18 -2
  35. package/dist/runtime/plugins/core.plugin.js +3 -0
  36. package/dist/runtime/server/plugins/abracadabra-service.js +3 -1
  37. package/dist/runtime/theme/content/_shared.d.ts +6 -0
  38. package/dist/runtime/theme/content/_shared.js +6 -0
  39. package/dist/runtime/theme/content/content-navigation.d.ts +120 -0
  40. package/dist/runtime/theme/content/content-navigation.js +155 -0
  41. package/dist/runtime/theme/content/content-search-button.d.ts +16 -0
  42. package/dist/runtime/theme/content/content-search-button.js +15 -0
  43. package/dist/runtime/theme/content/content-search.d.ts +24 -0
  44. package/dist/runtime/theme/content/content-search.js +23 -0
  45. package/dist/runtime/theme/content/content-surround.d.ts +22 -0
  46. package/dist/runtime/theme/content/content-surround.js +23 -0
  47. package/dist/runtime/theme/content/content-toc.d.ts +84 -0
  48. package/dist/runtime/theme/content/content-toc.js +94 -0
  49. package/dist/runtime/theme/content/index.d.ts +5 -0
  50. package/dist/runtime/theme/content/index.js +5 -0
  51. package/dist/runtime/utils/content.d.ts +19 -0
  52. package/dist/runtime/utils/content.js +23 -0
  53. package/dist/runtime/utils/docReferenceEdges.js +1 -1
  54. package/package.json +14 -7
@@ -0,0 +1,253 @@
1
+ declare const _default: typeof __VLS_export;
2
+ export default _default;
3
+ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ icon: {
5
+ type: null;
6
+ required: false;
7
+ };
8
+ label: {
9
+ type: StringConstructor;
10
+ required: false;
11
+ };
12
+ color: {
13
+ type: null;
14
+ required: false;
15
+ default: string;
16
+ };
17
+ variant: {
18
+ type: null;
19
+ required: false;
20
+ };
21
+ collapsed: {
22
+ type: BooleanConstructor;
23
+ required: false;
24
+ default: boolean;
25
+ };
26
+ tooltip: {
27
+ type: (ObjectConstructor | BooleanConstructor)[];
28
+ required: false;
29
+ default: boolean;
30
+ };
31
+ kbds: {
32
+ type: ArrayConstructor;
33
+ required: false;
34
+ default: () => string[];
35
+ };
36
+ ui: {
37
+ type: ObjectConstructor;
38
+ required: false;
39
+ };
40
+ class: {
41
+ type: null;
42
+ required: false;
43
+ };
44
+ activeColor: {
45
+ type: null;
46
+ required: false;
47
+ };
48
+ activeVariant: {
49
+ type: null;
50
+ required: false;
51
+ };
52
+ size: {
53
+ type: null;
54
+ required: false;
55
+ };
56
+ square: {
57
+ type: BooleanConstructor;
58
+ required: false;
59
+ };
60
+ block: {
61
+ type: BooleanConstructor;
62
+ required: false;
63
+ };
64
+ loadingAuto: {
65
+ type: BooleanConstructor;
66
+ required: false;
67
+ };
68
+ onClick: {
69
+ type: (ArrayConstructor | FunctionConstructor)[];
70
+ required: false;
71
+ };
72
+ avatar: {
73
+ type: ObjectConstructor;
74
+ required: false;
75
+ };
76
+ leading: {
77
+ type: BooleanConstructor;
78
+ required: false;
79
+ };
80
+ leadingIcon: {
81
+ type: null;
82
+ required: false;
83
+ };
84
+ trailing: {
85
+ type: BooleanConstructor;
86
+ required: false;
87
+ };
88
+ trailingIcon: {
89
+ type: null;
90
+ required: false;
91
+ };
92
+ loading: {
93
+ type: BooleanConstructor;
94
+ required: false;
95
+ };
96
+ loadingIcon: {
97
+ type: null;
98
+ required: false;
99
+ };
100
+ as: {
101
+ type: null;
102
+ required: false;
103
+ };
104
+ type: {
105
+ type: null;
106
+ required: false;
107
+ };
108
+ disabled: {
109
+ type: BooleanConstructor;
110
+ required: false;
111
+ };
112
+ exactActiveClass: {
113
+ type: StringConstructor;
114
+ required: false;
115
+ };
116
+ viewTransition: {
117
+ type: BooleanConstructor;
118
+ required: false;
119
+ };
120
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
121
+ icon: {
122
+ type: null;
123
+ required: false;
124
+ };
125
+ label: {
126
+ type: StringConstructor;
127
+ required: false;
128
+ };
129
+ color: {
130
+ type: null;
131
+ required: false;
132
+ default: string;
133
+ };
134
+ variant: {
135
+ type: null;
136
+ required: false;
137
+ };
138
+ collapsed: {
139
+ type: BooleanConstructor;
140
+ required: false;
141
+ default: boolean;
142
+ };
143
+ tooltip: {
144
+ type: (ObjectConstructor | BooleanConstructor)[];
145
+ required: false;
146
+ default: boolean;
147
+ };
148
+ kbds: {
149
+ type: ArrayConstructor;
150
+ required: false;
151
+ default: () => string[];
152
+ };
153
+ ui: {
154
+ type: ObjectConstructor;
155
+ required: false;
156
+ };
157
+ class: {
158
+ type: null;
159
+ required: false;
160
+ };
161
+ activeColor: {
162
+ type: null;
163
+ required: false;
164
+ };
165
+ activeVariant: {
166
+ type: null;
167
+ required: false;
168
+ };
169
+ size: {
170
+ type: null;
171
+ required: false;
172
+ };
173
+ square: {
174
+ type: BooleanConstructor;
175
+ required: false;
176
+ };
177
+ block: {
178
+ type: BooleanConstructor;
179
+ required: false;
180
+ };
181
+ loadingAuto: {
182
+ type: BooleanConstructor;
183
+ required: false;
184
+ };
185
+ onClick: {
186
+ type: (ArrayConstructor | FunctionConstructor)[];
187
+ required: false;
188
+ };
189
+ avatar: {
190
+ type: ObjectConstructor;
191
+ required: false;
192
+ };
193
+ leading: {
194
+ type: BooleanConstructor;
195
+ required: false;
196
+ };
197
+ leadingIcon: {
198
+ type: null;
199
+ required: false;
200
+ };
201
+ trailing: {
202
+ type: BooleanConstructor;
203
+ required: false;
204
+ };
205
+ trailingIcon: {
206
+ type: null;
207
+ required: false;
208
+ };
209
+ loading: {
210
+ type: BooleanConstructor;
211
+ required: false;
212
+ };
213
+ loadingIcon: {
214
+ type: null;
215
+ required: false;
216
+ };
217
+ as: {
218
+ type: null;
219
+ required: false;
220
+ };
221
+ type: {
222
+ type: null;
223
+ required: false;
224
+ };
225
+ disabled: {
226
+ type: BooleanConstructor;
227
+ required: false;
228
+ };
229
+ exactActiveClass: {
230
+ type: StringConstructor;
231
+ required: false;
232
+ };
233
+ viewTransition: {
234
+ type: BooleanConstructor;
235
+ required: false;
236
+ };
237
+ }>> & Readonly<{}>, {
238
+ color: any;
239
+ disabled: boolean;
240
+ viewTransition: boolean;
241
+ square: boolean;
242
+ block: boolean;
243
+ collapsed: boolean;
244
+ trailing: boolean;
245
+ loading: boolean;
246
+ tooltip: boolean | Record<string, any>;
247
+ kbds: unknown[];
248
+ loadingAuto: boolean;
249
+ leading: boolean;
250
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, __VLS_Slots>;
251
+ type __VLS_WithSlots<T, S> = T & (new () => {
252
+ $slots: S;
253
+ });
@@ -0,0 +1,99 @@
1
+ <script>
2
+ import theme from "../../theme/content/content-search-button";
3
+ </script>
4
+
5
+ <script setup>
6
+ import { computed, toRef } from "vue";
7
+ import { useForwardProps } from "reka-ui";
8
+ import { defu } from "defu";
9
+ import { reactiveOmit, createReusableTemplate } from "@vueuse/core";
10
+ import { useAppConfig } from "#imports";
11
+ import { useComponentUI } from "@nuxt/ui/composables/useComponentUI";
12
+ import { useLocale } from "@nuxt/ui/composables/useLocale";
13
+ import { omit, transformUI } from "@nuxt/ui/utils";
14
+ import { tv } from "@nuxt/ui/utils/tv";
15
+ import { useDocsSearch } from "../../composables/useDocsSearch";
16
+ defineOptions({ inheritAttrs: false });
17
+ const props = defineProps({
18
+ icon: { type: null, required: false },
19
+ label: { type: String, required: false },
20
+ color: { type: null, required: false, default: "neutral" },
21
+ variant: { type: null, required: false },
22
+ collapsed: { type: Boolean, required: false, default: true },
23
+ tooltip: { type: [Boolean, Object], required: false, default: false },
24
+ kbds: { type: Array, required: false, default: () => ["meta", "k"] },
25
+ ui: { type: Object, required: false },
26
+ class: { type: null, required: false },
27
+ activeColor: { type: null, required: false },
28
+ activeVariant: { type: null, required: false },
29
+ size: { type: null, required: false },
30
+ square: { type: Boolean, required: false },
31
+ block: { type: Boolean, required: false },
32
+ loadingAuto: { type: Boolean, required: false },
33
+ onClick: { type: [Function, Array], required: false },
34
+ avatar: { type: Object, required: false },
35
+ leading: { type: Boolean, required: false },
36
+ leadingIcon: { type: null, required: false },
37
+ trailing: { type: Boolean, required: false },
38
+ trailingIcon: { type: null, required: false },
39
+ loading: { type: Boolean, required: false },
40
+ loadingIcon: { type: null, required: false },
41
+ as: { type: null, required: false },
42
+ type: { type: null, required: false },
43
+ disabled: { type: Boolean, required: false },
44
+ exactActiveClass: { type: String, required: false },
45
+ viewTransition: { type: Boolean, required: false }
46
+ });
47
+ const slots = defineSlots();
48
+ const [DefineButtonTemplate, ReuseButtonTemplate] = createReusableTemplate();
49
+ const getProxySlots = () => omit(slots, ["trailing"]);
50
+ const buttonProps = useForwardProps(reactiveOmit(props, "icon", "label", "variant", "collapsed", "tooltip", "kbds", "class", "ui"));
51
+ const tooltipProps = toRef(() => defu(typeof props.tooltip === "boolean" ? {} : props.tooltip, { delayDuration: 0, content: { side: "right" } }));
52
+ const { t } = useLocale();
53
+ const { open } = useDocsSearch();
54
+ const appConfig = useAppConfig();
55
+ const uiProp = useComponentUI("contentSearchButton", props);
56
+ const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.contentSearchButton || {} })({
57
+ collapsed: props.collapsed
58
+ }));
59
+ </script>
60
+
61
+ <template>
62
+ <DefineButtonTemplate>
63
+ <UButton
64
+ :icon="icon || appConfig.ui.icons.search"
65
+ :label="label || t('contentSearchButton.label')"
66
+ :variant="variant || (collapsed ? 'ghost' : 'outline')"
67
+ v-bind="{
68
+ ...buttonProps,
69
+ ...collapsed ? {
70
+ 'square': true,
71
+ 'aria-label': label || t('contentSearchButton.label')
72
+ } : {},
73
+ ...$attrs
74
+ }"
75
+ :class="ui.base({ class: [uiProp?.base, props.class] })"
76
+ :ui="transformUI(ui, uiProp)"
77
+ @click="open = true"
78
+ >
79
+ <template v-for="(_, name) in getProxySlots()" #[name]="slotData">
80
+ <slot :name="name" v-bind="slotData" />
81
+ </template>
82
+
83
+ <template #trailing="{ ui: uiProxy }">
84
+ <div data-slot="trailing" :class="ui.trailing({ class: uiProp?.trailing })">
85
+ <slot name="trailing" :ui="uiProxy">
86
+ <template v-if="kbds?.length">
87
+ <UKbd v-for="(kbd, index) in kbds" :key="index" variant="subtle" v-bind="typeof kbd === 'string' ? { value: kbd } : kbd" />
88
+ </template>
89
+ </slot>
90
+ </div>
91
+ </template>
92
+ </UButton>
93
+ </DefineButtonTemplate>
94
+
95
+ <UTooltip v-if="collapsed && tooltip" :text="label || t('contentSearchButton.label')" v-bind="tooltipProps">
96
+ <ReuseButtonTemplate />
97
+ </UTooltip>
98
+ <ReuseButtonTemplate v-else />
99
+ </template>
@@ -0,0 +1,253 @@
1
+ declare const _default: typeof __VLS_export;
2
+ export default _default;
3
+ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ icon: {
5
+ type: null;
6
+ required: false;
7
+ };
8
+ label: {
9
+ type: StringConstructor;
10
+ required: false;
11
+ };
12
+ color: {
13
+ type: null;
14
+ required: false;
15
+ default: string;
16
+ };
17
+ variant: {
18
+ type: null;
19
+ required: false;
20
+ };
21
+ collapsed: {
22
+ type: BooleanConstructor;
23
+ required: false;
24
+ default: boolean;
25
+ };
26
+ tooltip: {
27
+ type: (ObjectConstructor | BooleanConstructor)[];
28
+ required: false;
29
+ default: boolean;
30
+ };
31
+ kbds: {
32
+ type: ArrayConstructor;
33
+ required: false;
34
+ default: () => string[];
35
+ };
36
+ ui: {
37
+ type: ObjectConstructor;
38
+ required: false;
39
+ };
40
+ class: {
41
+ type: null;
42
+ required: false;
43
+ };
44
+ activeColor: {
45
+ type: null;
46
+ required: false;
47
+ };
48
+ activeVariant: {
49
+ type: null;
50
+ required: false;
51
+ };
52
+ size: {
53
+ type: null;
54
+ required: false;
55
+ };
56
+ square: {
57
+ type: BooleanConstructor;
58
+ required: false;
59
+ };
60
+ block: {
61
+ type: BooleanConstructor;
62
+ required: false;
63
+ };
64
+ loadingAuto: {
65
+ type: BooleanConstructor;
66
+ required: false;
67
+ };
68
+ onClick: {
69
+ type: (ArrayConstructor | FunctionConstructor)[];
70
+ required: false;
71
+ };
72
+ avatar: {
73
+ type: ObjectConstructor;
74
+ required: false;
75
+ };
76
+ leading: {
77
+ type: BooleanConstructor;
78
+ required: false;
79
+ };
80
+ leadingIcon: {
81
+ type: null;
82
+ required: false;
83
+ };
84
+ trailing: {
85
+ type: BooleanConstructor;
86
+ required: false;
87
+ };
88
+ trailingIcon: {
89
+ type: null;
90
+ required: false;
91
+ };
92
+ loading: {
93
+ type: BooleanConstructor;
94
+ required: false;
95
+ };
96
+ loadingIcon: {
97
+ type: null;
98
+ required: false;
99
+ };
100
+ as: {
101
+ type: null;
102
+ required: false;
103
+ };
104
+ type: {
105
+ type: null;
106
+ required: false;
107
+ };
108
+ disabled: {
109
+ type: BooleanConstructor;
110
+ required: false;
111
+ };
112
+ exactActiveClass: {
113
+ type: StringConstructor;
114
+ required: false;
115
+ };
116
+ viewTransition: {
117
+ type: BooleanConstructor;
118
+ required: false;
119
+ };
120
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
121
+ icon: {
122
+ type: null;
123
+ required: false;
124
+ };
125
+ label: {
126
+ type: StringConstructor;
127
+ required: false;
128
+ };
129
+ color: {
130
+ type: null;
131
+ required: false;
132
+ default: string;
133
+ };
134
+ variant: {
135
+ type: null;
136
+ required: false;
137
+ };
138
+ collapsed: {
139
+ type: BooleanConstructor;
140
+ required: false;
141
+ default: boolean;
142
+ };
143
+ tooltip: {
144
+ type: (ObjectConstructor | BooleanConstructor)[];
145
+ required: false;
146
+ default: boolean;
147
+ };
148
+ kbds: {
149
+ type: ArrayConstructor;
150
+ required: false;
151
+ default: () => string[];
152
+ };
153
+ ui: {
154
+ type: ObjectConstructor;
155
+ required: false;
156
+ };
157
+ class: {
158
+ type: null;
159
+ required: false;
160
+ };
161
+ activeColor: {
162
+ type: null;
163
+ required: false;
164
+ };
165
+ activeVariant: {
166
+ type: null;
167
+ required: false;
168
+ };
169
+ size: {
170
+ type: null;
171
+ required: false;
172
+ };
173
+ square: {
174
+ type: BooleanConstructor;
175
+ required: false;
176
+ };
177
+ block: {
178
+ type: BooleanConstructor;
179
+ required: false;
180
+ };
181
+ loadingAuto: {
182
+ type: BooleanConstructor;
183
+ required: false;
184
+ };
185
+ onClick: {
186
+ type: (ArrayConstructor | FunctionConstructor)[];
187
+ required: false;
188
+ };
189
+ avatar: {
190
+ type: ObjectConstructor;
191
+ required: false;
192
+ };
193
+ leading: {
194
+ type: BooleanConstructor;
195
+ required: false;
196
+ };
197
+ leadingIcon: {
198
+ type: null;
199
+ required: false;
200
+ };
201
+ trailing: {
202
+ type: BooleanConstructor;
203
+ required: false;
204
+ };
205
+ trailingIcon: {
206
+ type: null;
207
+ required: false;
208
+ };
209
+ loading: {
210
+ type: BooleanConstructor;
211
+ required: false;
212
+ };
213
+ loadingIcon: {
214
+ type: null;
215
+ required: false;
216
+ };
217
+ as: {
218
+ type: null;
219
+ required: false;
220
+ };
221
+ type: {
222
+ type: null;
223
+ required: false;
224
+ };
225
+ disabled: {
226
+ type: BooleanConstructor;
227
+ required: false;
228
+ };
229
+ exactActiveClass: {
230
+ type: StringConstructor;
231
+ required: false;
232
+ };
233
+ viewTransition: {
234
+ type: BooleanConstructor;
235
+ required: false;
236
+ };
237
+ }>> & Readonly<{}>, {
238
+ color: any;
239
+ disabled: boolean;
240
+ viewTransition: boolean;
241
+ square: boolean;
242
+ block: boolean;
243
+ collapsed: boolean;
244
+ trailing: boolean;
245
+ loading: boolean;
246
+ tooltip: boolean | Record<string, any>;
247
+ kbds: unknown[];
248
+ loadingAuto: boolean;
249
+ leading: boolean;
250
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, __VLS_Slots>;
251
+ type __VLS_WithSlots<T, S> = T & (new () => {
252
+ $slots: S;
253
+ });
@@ -0,0 +1,56 @@
1
+ declare const _default: typeof __VLS_export;
2
+ export default _default;
3
+ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ as: {
5
+ type: null;
6
+ required: false;
7
+ };
8
+ prevIcon: {
9
+ type: null;
10
+ required: false;
11
+ };
12
+ nextIcon: {
13
+ type: null;
14
+ required: false;
15
+ };
16
+ surround: {
17
+ type: ArrayConstructor;
18
+ required: false;
19
+ };
20
+ class: {
21
+ type: null;
22
+ required: false;
23
+ };
24
+ ui: {
25
+ type: ObjectConstructor;
26
+ required: false;
27
+ };
28
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
29
+ as: {
30
+ type: null;
31
+ required: false;
32
+ };
33
+ prevIcon: {
34
+ type: null;
35
+ required: false;
36
+ };
37
+ nextIcon: {
38
+ type: null;
39
+ required: false;
40
+ };
41
+ surround: {
42
+ type: ArrayConstructor;
43
+ required: false;
44
+ };
45
+ class: {
46
+ type: null;
47
+ required: false;
48
+ };
49
+ ui: {
50
+ type: ObjectConstructor;
51
+ required: false;
52
+ };
53
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, __VLS_Slots>;
54
+ type __VLS_WithSlots<T, S> = T & (new () => {
55
+ $slots: S;
56
+ });