erudit 2.0.0-dev.9 → 3.0.0-dev.10
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/app/app.vue +34 -11
- package/app/components/SiteAside.vue +17 -6
- package/app/components/SiteMain.vue +2 -3
- package/app/components/aside/AsideListItem.vue +3 -3
- package/app/components/aside/AsideMinor.vue +1 -1
- package/app/components/aside/major/SiteInfo.vue +2 -2
- package/app/components/aside/major/panes/Search.vue +10 -2
- package/app/components/aside/major/panes/nav/Nav.vue +25 -29
- package/app/components/aside/major/panes/nav/NavBook.vue +2 -1
- package/app/components/aside/major/panes/nav/NavGlobal.vue +1 -1
- package/app/components/aside/major/panes/nav/fnav/FNav.vue +1 -1
- package/app/components/aside/major/panes/nav/fnav/FNavBook.vue +1 -1
- package/app/components/aside/major/panes/nav/fnav/FNavFlags.vue +2 -2
- package/app/components/aside/major/panes/nav/fnav/FNavFolder.vue +1 -1
- package/app/components/aside/major/panes/nav/fnav/FNavSeparator.vue +1 -1
- package/app/components/aside/major/panes/nav/fnav/FNavTopic.vue +1 -1
- package/app/components/aside/major/panes/other/ItemGenerator.vue +3 -5
- package/app/components/aside/minor/AsideMinorContributor.vue +1 -1
- package/app/components/aside/minor/AsideMinorNews.vue +1 -1
- package/app/components/aside/minor/AsideMinorPane.vue +2 -3
- package/app/components/aside/minor/content/AsideMinorContent.vue +1 -1
- package/app/components/aside/minor/topic/AsideMinorTopic.vue +1 -1
- package/app/components/aside/minor/topic/TopicContributors.vue +1 -1
- package/app/components/aside/minor/topic/TopicNav.vue +2 -2
- package/app/components/aside/minor/topic/TopicToc.vue +73 -57
- package/app/components/aside/minor/topic/TopicTocItem.vue +6 -7
- package/app/components/bitran/BitranContent.vue +31 -3
- package/app/components/contributor/ContributorAvatar.vue +10 -8
- package/app/components/main/topic/MainTopic.vue +2 -3
- package/app/components/main/topic/TopicPartSwitch.vue +1 -1
- package/app/components/main/utils/Breadcrumb.vue +1 -6
- package/app/components/main/utils/ContentDescription.vue +3 -4
- package/app/components/main/utils/ContentPopover.vue +19 -7
- package/app/components/main/utils/ContentPopovers.vue +13 -7
- package/app/components/main/utils/ContentReferences.vue +16 -22
- package/app/components/main/utils/ContentSection.vue +21 -18
- package/app/components/main/utils/ContentTitle.vue +36 -10
- package/app/components/main/utils/reference/ReferenceGroup.vue +5 -8
- package/app/components/main/utils/reference/ReferenceItem.vue +25 -21
- package/app/components/main/utils/reference/ReferenceSource.vue +42 -36
- package/app/components/preview/Preview.vue +11 -2
- package/app/components/preview/PreviewDisplay.vue +2 -2
- package/app/components/preview/PreviewLoading.vue +2 -3
- package/app/components/preview/PreviewScreen.vue +58 -16
- package/app/components/preview/display/Alert.vue +4 -4
- package/app/components/preview/display/Custom.vue +2 -2
- package/app/components/preview/display/GenericLink.vue +3 -3
- package/app/components/preview/display/PageLink.vue +2 -2
- package/app/components/preview/display/Unique.vue +9 -3
- package/app/components/transition/Fade.vue +4 -7
- package/app/components/tree/TreeContainer.vue +2 -3
- package/app/composables/bitran.ts +45 -64
- package/app/composables/bitranContent.ts +35 -3
- package/app/composables/bitranLocation.ts +1 -1
- package/app/composables/contentPage.ts +5 -4
- package/app/composables/contentRoute.ts +1 -1
- package/app/composables/externalApi.ts +1 -1
- package/app/composables/phrases.ts +1 -0
- package/app/pages/_test/preview.vue +4 -4
- package/app/pages/article/[...articleId].vue +1 -1
- package/app/pages/group/[...groupId].vue +3 -4
- package/app/pages/members.vue +2 -3
- package/app/pages/practice/[...practice].vue +1 -1
- package/app/pages/summary/[...summaryId].vue +1 -1
- package/app/public/favicon/article.svg +5 -5
- package/app/public/favicon/default.svg +3 -3
- package/app/public/favicon/practice.svg +3 -3
- package/app/public/favicon/summary.svg +4 -4
- package/app/public/logotype.svg +2 -2
- package/app/scripts/_immediate.js +7 -2
- package/app/scripts/flag.ts +1 -1
- package/app/scripts/preview/build.ts +17 -28
- package/app/scripts/preview/data/pageLink.ts +3 -1
- package/app/scripts/preview/data/unique.ts +7 -5
- package/app/scripts/preview/data.ts +12 -14
- package/app/scripts/preview/footer.ts +6 -6
- package/app/styles/_immediate.css +6 -2
- package/app/styles/_util.scss +13 -20
- package/app/styles/app.scss +1 -1
- package/app/styles/def/_bp.scss +13 -10
- package/app/styles/def/_size.scss +1 -1
- package/app/styles/def/_z.scss +1 -1
- package/app/styles/partials/_darkMagic.scss +3 -5
- package/app/styles/partials/_fnav.scss +4 -7
- package/app/styles/partials/_preview.scss +3 -5
- package/bin/erudit.mjs +2 -0
- package/const.ts +4 -0
- package/globalPath.ts +1 -1
- package/globals/bitran.ts +1 -47
- package/globals/content.ts +1 -1
- package/globals/contributor.ts +1 -1
- package/globals/erudit.ts +1 -1
- package/languages/en.ts +0 -1
- package/languages/ru.ts +0 -1
- package/module/bitran.ts +47 -15
- package/module/config.ts +4 -3
- package/module/imports.ts +19 -4
- package/module/index.ts +7 -7
- package/module/logger.ts +1 -1
- package/nuxt.config.ts +33 -17
- package/package.json +19 -13
- package/server/api/aside/major/nav/global.ts +1 -1
- package/server/api/aside/minor/path.ts +1 -2
- package/server/api/bitran/content/{[location].ts → [...location].ts} +2 -1
- package/server/api/bitran/toc/{[location].ts → [...location].ts} +1 -1
- package/server/api/fake/content.ts +6 -6
- package/server/api/language/phrase/[phraseId].ts +2 -2
- package/server/api/preview/page/[...parts].ts +4 -3
- package/server/api/preview/unique/[location].ts +9 -4
- package/server/plugin/bitran/content.ts +72 -45
- package/server/plugin/bitran/{products → elements}/include.ts +23 -37
- package/server/plugin/bitran/location.ts +1 -1
- package/server/plugin/bitran/toc.ts +23 -31
- package/server/plugin/bitran/transpiler.ts +4 -41
- package/server/plugin/build/jobs/content/files.ts +79 -0
- package/server/plugin/build/jobs/content/generic.ts +24 -8
- package/server/plugin/build/jobs/content/parse.ts +19 -10
- package/server/plugin/build/jobs/content/type/group.ts +1 -1
- package/server/plugin/build/jobs/content/type/topic.ts +1 -1
- package/server/plugin/build/jobs/contributors.ts +2 -2
- package/server/plugin/build/jobs/nav.ts +7 -2
- package/server/plugin/build/setup.ts +0 -2
- package/server/plugin/content/context.ts +6 -2
- package/server/plugin/db/entities/Content.ts +2 -2
- package/server/plugin/db/entities/File.ts +10 -0
- package/server/plugin/db/entities/Group.ts +1 -1
- package/server/plugin/db/entities/Topic.ts +1 -1
- package/server/plugin/db/setup.ts +2 -0
- package/server/plugin/global.ts +1 -3
- package/server/plugin/logger.ts +1 -1
- package/server/plugin/nav/node.ts +1 -1
- package/server/plugin/nav/utils.ts +4 -0
- package/server/plugin/repository/content.ts +8 -9
- package/server/plugin/repository/file.ts +10 -0
- package/server/plugin/repository/topic.ts +1 -1
- package/server/tsconfig.json +3 -1
- package/shared/aside/minor.ts +2 -1
- package/shared/asset.ts +11 -4
- package/shared/bitran/contentId.ts +88 -0
- package/shared/bitran/stringContent.ts +6 -0
- package/shared/content/data/base.ts +1 -1
- package/shared/content/data/type/topic.ts +1 -1
- package/shared/frontNav.ts +1 -1
- package/shared/icons.ts +2 -2
- package/shared/link.ts +5 -2
- package/shared/popover.ts +8 -0
- package/shared/types/language.ts +0 -1
- package/test/contentId.test.ts +91 -0
- package/app/components/main/utils/ContentFlag.vue +0 -16
- package/app/styles/default.scss +0 -85
- package/server/plugin/bitran/products/link.ts +0 -116
- package/server/plugin/bitran/setup.ts +0 -9
- package/server/plugin/content/absoluteId.ts +0 -94
- package/shared/bitran/context.ts +0 -8
- package/shared/bitran/default.ts +0 -46
- package/shared/bitran/link/Link.vue +0 -167
- package/shared/bitran/link/factory.ts +0 -24
- package/shared/bitran/link/icon.svg +0 -3
- package/shared/bitran/link/languages/en.ts +0 -7
- package/shared/bitran/link/languages/ru.ts +0 -7
- package/shared/bitran/link/renderer.ts +0 -21
- package/shared/bitran/link/shared.ts +0 -17
- package/shared/bitran/link/target.ts +0 -134
- package/shared/bitran/link/transpiler.ts +0 -10
- package/shared/bitran/location.ts +0 -166
- package/test/bitran/link/target.test.ts +0 -141
- package/test/bitran/location.test.ts +0 -143
package/app/app.vue
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { brandLogotype,
|
|
2
|
+
import { brandLogotype, brandColors } from '@erudit-js/cog/utils/brand';
|
|
3
3
|
|
|
4
4
|
import eruditConfig from '#erudit/config';
|
|
5
5
|
import { version } from '@erudit/package.json';
|
|
6
|
-
import { AsideType } from '
|
|
7
|
-
import { createOgImageTags, defaultOgImage } from '
|
|
6
|
+
import { AsideType } from '@app/scripts/aside';
|
|
7
|
+
import { createOgImageTags, defaultOgImage } from '@app/scripts/og';
|
|
8
8
|
|
|
9
9
|
const route = useRoute();
|
|
10
10
|
const favicon = useFavicon();
|
|
@@ -12,6 +12,10 @@ const siteUrl = useSiteUrl();
|
|
|
12
12
|
const pageUrl = usePageUrl();
|
|
13
13
|
const baseUrlPath = useBaseUrlPath();
|
|
14
14
|
|
|
15
|
+
const theme = ref({
|
|
16
|
+
brand: 'red',
|
|
17
|
+
});
|
|
18
|
+
|
|
15
19
|
const faviconHref = computed(() => {
|
|
16
20
|
const href = baseUrlPath(favicon.value);
|
|
17
21
|
|
|
@@ -30,9 +34,12 @@ const phrase = await usePhrases('site_info_title');
|
|
|
30
34
|
useHead({
|
|
31
35
|
htmlAttrs: {
|
|
32
36
|
lang: eruditConfig.language || 'en',
|
|
33
|
-
style:
|
|
34
|
-
|
|
35
|
-
:
|
|
37
|
+
style: {
|
|
38
|
+
'--brand': eruditConfig.site?.style?.brandColor || undefined,
|
|
39
|
+
'--transitionSpeed': eruditConfig.debug?.slowTransition
|
|
40
|
+
? '.5s'
|
|
41
|
+
: undefined,
|
|
42
|
+
} as any,
|
|
36
43
|
},
|
|
37
44
|
link: [
|
|
38
45
|
{ rel: 'icon', href: faviconHref },
|
|
@@ -42,7 +49,7 @@ useHead({
|
|
|
42
49
|
{
|
|
43
50
|
key: 'immediate-js',
|
|
44
51
|
tagPriority: 'critical',
|
|
45
|
-
innerHTML: (await import('
|
|
52
|
+
innerHTML: (await import('@app/scripts/_immediate.js?raw')).default,
|
|
46
53
|
},
|
|
47
54
|
],
|
|
48
55
|
style: [
|
|
@@ -52,7 +59,14 @@ useHead({
|
|
|
52
59
|
innerHTML: (await import('$/_immediate.css?raw')).default,
|
|
53
60
|
},
|
|
54
61
|
],
|
|
55
|
-
meta: [
|
|
62
|
+
meta: [
|
|
63
|
+
{
|
|
64
|
+
name: 'viewport',
|
|
65
|
+
content:
|
|
66
|
+
'width=device-width, initial-scale=1.0, viewport-fit=cover, user-scalable=no',
|
|
67
|
+
},
|
|
68
|
+
...createOgImageTags(siteUrl, defaultOgImage),
|
|
69
|
+
],
|
|
56
70
|
});
|
|
57
71
|
|
|
58
72
|
useSeoMeta({
|
|
@@ -115,10 +129,19 @@ if (import.meta.client) {
|
|
|
115
129
|
'🌈',
|
|
116
130
|
];
|
|
117
131
|
const emoji = emojies[Math.floor(Math.random() * emojies.length)];
|
|
132
|
+
|
|
118
133
|
console.log(
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
134
|
+
'%c' +
|
|
135
|
+
brandLogotype +
|
|
136
|
+
'\n%cv' +
|
|
137
|
+
version +
|
|
138
|
+
' ' +
|
|
139
|
+
emoji +
|
|
140
|
+
' %cBeating heart of modern educational sites!\n\n%cLearn more: https://github.com/Gwynerva/erudit\n ',
|
|
141
|
+
`color: transparent; background: linear-gradient(to right, ${brandColors[0]}, ${brandColors[1]}); background-clip: text; -webkit-background-clip: text;`,
|
|
142
|
+
'color: inherit;',
|
|
143
|
+
'font-style: italic; color: #888;',
|
|
144
|
+
'color: inherit;',
|
|
122
145
|
);
|
|
123
146
|
}
|
|
124
147
|
</script>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { previewVisible } from '
|
|
2
|
+
import { previewVisible } from '@app/scripts/preview/state';
|
|
3
3
|
import {
|
|
4
4
|
AsideType,
|
|
5
5
|
clickTargets,
|
|
6
6
|
forcedAside,
|
|
7
7
|
switchVisible,
|
|
8
|
-
} from '
|
|
8
|
+
} from '@app/scripts/aside';
|
|
9
9
|
|
|
10
10
|
const props = defineProps<{
|
|
11
11
|
type: AsideType;
|
|
@@ -13,17 +13,28 @@ const props = defineProps<{
|
|
|
13
13
|
|
|
14
14
|
const $style = useCssModule();
|
|
15
15
|
|
|
16
|
-
const switchElement =
|
|
17
|
-
const asideElement =
|
|
16
|
+
const switchElement = useTemplateRef('switchElement');
|
|
17
|
+
const asideElement = useTemplateRef('asideElement');
|
|
18
|
+
|
|
19
|
+
const mounted = ref(false);
|
|
18
20
|
|
|
19
21
|
const canShowSwitch = computed(
|
|
20
|
-
() =>
|
|
22
|
+
() =>
|
|
23
|
+
mounted.value &&
|
|
24
|
+
switchVisible.value &&
|
|
25
|
+
!forcedAside.value &&
|
|
26
|
+
!previewVisible.value,
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
const asideForceVisible = computed(
|
|
30
|
+
() => props.type === forcedAside.value && !previewVisible.value,
|
|
21
31
|
);
|
|
22
|
-
const asideForceVisible = computed(() => props.type === forcedAside.value);
|
|
23
32
|
|
|
24
33
|
const typeClass = props.type === AsideType.Major ? $style.major : $style.minor;
|
|
25
34
|
|
|
26
35
|
onMounted(() => {
|
|
36
|
+
mounted.value = true;
|
|
37
|
+
|
|
27
38
|
clickTargets[props.type].push(
|
|
28
39
|
...[switchElement.value!, asideElement.value!],
|
|
29
40
|
);
|
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
|
|
12
12
|
<style lang="scss" module>
|
|
13
13
|
@use '$/def/bp';
|
|
14
|
-
@use '@bitran-js/renderer-vue/scss/def' as bitranDef;
|
|
15
14
|
|
|
16
15
|
.main {
|
|
17
16
|
--_pMainBase: var(--gapBig);
|
|
@@ -24,8 +23,8 @@
|
|
|
24
23
|
font-size: 18px;
|
|
25
24
|
|
|
26
25
|
@include bp.below('mobile') {
|
|
27
|
-
|
|
28
|
-
font-size:
|
|
26
|
+
--_pMainBase: var(--_bitran_asideWidth);
|
|
27
|
+
font-size: 14px;
|
|
29
28
|
}
|
|
30
29
|
|
|
31
30
|
.mainInner {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { MyIconName } from '#my-icons';
|
|
3
3
|
|
|
4
|
-
defineProps<{
|
|
4
|
+
const props = defineProps<{
|
|
5
5
|
link?: string;
|
|
6
6
|
icon?: MyIconName;
|
|
7
7
|
main?: string;
|
|
@@ -9,12 +9,12 @@ defineProps<{
|
|
|
9
9
|
secondary?: string;
|
|
10
10
|
}>();
|
|
11
11
|
|
|
12
|
-
const
|
|
12
|
+
const vnode = h(props.link ? defineNuxtLink({}) : 'div');
|
|
13
13
|
</script>
|
|
14
14
|
|
|
15
15
|
<template>
|
|
16
16
|
<component
|
|
17
|
-
:is="
|
|
17
|
+
:is="vnode"
|
|
18
18
|
:to="link"
|
|
19
19
|
:class="[$style.asideListItem, active ? $style.active : '']"
|
|
20
20
|
>
|
|
@@ -20,9 +20,9 @@ const siteInfo = computed<SiteInfo>(() => {
|
|
|
20
20
|
};
|
|
21
21
|
|
|
22
22
|
return {
|
|
23
|
-
logotype: eruditConfig.site?.logotype,
|
|
23
|
+
logotype: eruditConfig.site?.logotype || eruditAsset('logotype.svg'),
|
|
24
24
|
title: eruditConfig.site?.title || phrase.site_info_title,
|
|
25
|
-
slogan: eruditConfig.site?.slogan,
|
|
25
|
+
slogan: eruditConfig.site?.slogan || phrase.site_info_slogan,
|
|
26
26
|
};
|
|
27
27
|
});
|
|
28
28
|
</script>
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div
|
|
3
|
-
|
|
2
|
+
<div
|
|
3
|
+
:style="{
|
|
4
|
+
padding: 'var(--gap)',
|
|
5
|
+
color: 'var(--textMuted)',
|
|
6
|
+
textAlign: 'center',
|
|
7
|
+
}"
|
|
8
|
+
>
|
|
9
|
+
Here be dragons...
|
|
10
|
+
</div>
|
|
11
|
+
</template>
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
insideNavBook,
|
|
6
6
|
navBookId,
|
|
7
7
|
navBookVisible,
|
|
8
|
-
} from '
|
|
8
|
+
} from '@app/scripts/aside/major/nav';
|
|
9
9
|
|
|
10
10
|
import NavGlobal from './NavGlobal.vue';
|
|
11
11
|
import NavBook from './NavBook.vue';
|
|
@@ -13,40 +13,36 @@ import NavBook from './NavBook.vue';
|
|
|
13
13
|
const contentRoute = useContentRoute();
|
|
14
14
|
const asideMajorNav = getAsideMajorNavPayload();
|
|
15
15
|
|
|
16
|
-
asideMajorNav.booksIds ||= (await $fetch(
|
|
17
|
-
'
|
|
18
|
-
)) as string[];
|
|
16
|
+
asideMajorNav.booksIds ||= (await $fetch('/api/aside/major/nav/bookIds', {
|
|
17
|
+
responseType: 'json',
|
|
18
|
+
})) as string[];
|
|
19
19
|
|
|
20
|
-
asideMajorNav.globalNav ||= (await $fetch(
|
|
21
|
-
'
|
|
22
|
-
)) as FrontNav;
|
|
20
|
+
asideMajorNav.globalNav ||= (await $fetch('/api/aside/major/nav/global', {
|
|
21
|
+
responseType: 'json',
|
|
22
|
+
})) as FrontNav;
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if (contentRoute.value) {
|
|
33
|
-
for (const bookId of asideMajorNav.booksIds) {
|
|
34
|
-
if (contentRoute.value.contentId.startsWith(bookId)) {
|
|
35
|
-
navBookId.value = bookId;
|
|
36
|
-
insideNavBook.value = true;
|
|
37
|
-
break;
|
|
24
|
+
const checkIfInsideBook = () => {
|
|
25
|
+
if (contentRoute.value) {
|
|
26
|
+
for (const bookId of asideMajorNav.booksIds) {
|
|
27
|
+
if (contentRoute.value.contentId.startsWith(bookId)) {
|
|
28
|
+
navBookId.value = bookId;
|
|
29
|
+
insideNavBook.value = true;
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
38
32
|
}
|
|
39
33
|
}
|
|
40
|
-
|
|
34
|
+
|
|
35
|
+
// If we get here, we're not in any book
|
|
36
|
+
navBookId.value = undefined;
|
|
37
|
+
insideNavBook.value = false;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
checkIfInsideBook();
|
|
41
41
|
|
|
42
42
|
onMounted(() => {
|
|
43
|
-
watch(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
(insideNavBook.value = insideNavBook.value
|
|
47
|
-
? !!contentRoute.value
|
|
48
|
-
: false),
|
|
49
|
-
);
|
|
43
|
+
watch(contentRoute, () => {
|
|
44
|
+
checkIfInsideBook();
|
|
45
|
+
});
|
|
50
46
|
});
|
|
51
47
|
</script>
|
|
52
48
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { FrontNavBook } from '@shared/frontNav';
|
|
3
|
-
import { insideNavBook, navBookId } from '
|
|
3
|
+
import { insideNavBook, navBookId } from '@app/scripts/aside/major/nav';
|
|
4
4
|
|
|
5
5
|
import PaneContentScroll from '../../PaneContentScroll.vue';
|
|
6
6
|
import FNav from './fnav/FNav.vue';
|
|
@@ -23,6 +23,7 @@ async function setupNavBook() {
|
|
|
23
23
|
);
|
|
24
24
|
book.value = await $fetch(
|
|
25
25
|
`/api/aside/major/nav/bookNav/${navBookId.value}`,
|
|
26
|
+
{ responseType: 'json' },
|
|
26
27
|
);
|
|
27
28
|
|
|
28
29
|
loading.value = false;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { getAsideMajorNavPayload } from '
|
|
2
|
+
import { getAsideMajorNavPayload } from '@app/scripts/aside/major/nav';
|
|
3
3
|
|
|
4
4
|
import FNav from './fnav/FNav.vue';
|
|
5
5
|
import PaneContentScroll from '../../PaneContentScroll.vue';
|
|
@@ -4,7 +4,7 @@ import type {
|
|
|
4
4
|
FrontNavContainer,
|
|
5
5
|
FrontNavItem,
|
|
6
6
|
} from '@shared/frontNav';
|
|
7
|
-
import { navStateKey, type NavState } from '
|
|
7
|
+
import { navStateKey, type NavState } from '@app/scripts/aside/major/nav';
|
|
8
8
|
|
|
9
9
|
import FNavItem from './FNavItem.vue';
|
|
10
10
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import type { ContentFlag } from 'erudit-cog/schema';
|
|
3
|
-
import { flagsData } from '
|
|
2
|
+
import type { ContentFlag } from '@erudit-js/cog/schema';
|
|
3
|
+
import { flagsData } from '@app/scripts/flag';
|
|
4
4
|
|
|
5
5
|
defineProps<{ flags: Record<ContentFlag, boolean> }>();
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { FrontNavFolder } from '@shared/frontNav';
|
|
3
|
-
import { navStateKey } from '
|
|
3
|
+
import { navStateKey } from '@app/scripts/aside/major/nav';
|
|
4
4
|
|
|
5
5
|
import FNavItem from './FNavItem.vue';
|
|
6
6
|
import FNavFlags from './FNavFlags.vue';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { navStateKey } from '
|
|
2
|
+
import { navStateKey } from '@app/scripts/aside/major/nav';
|
|
3
3
|
import type { FrontNavSeparator } from '@shared/frontNav';
|
|
4
4
|
|
|
5
5
|
import FNavItem from './FNavItem.vue';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { navStateKey } from '
|
|
2
|
+
import { navStateKey } from '@app/scripts/aside/major/nav';
|
|
3
3
|
import type { FrontNavTopic } from '@shared/frontNav';
|
|
4
4
|
|
|
5
5
|
import FNavFlags from './FNavFlags.vue';
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import { version } from '@erudit/package.json';
|
|
3
|
-
|
|
4
|
-
const phrase = await usePhrases('generator');
|
|
5
3
|
</script>
|
|
6
4
|
|
|
7
5
|
<template>
|
|
8
6
|
<AsideListItem
|
|
9
|
-
link="https://github.com/
|
|
7
|
+
link="https://github.com/erudit-js/erudit"
|
|
10
8
|
target="_blank"
|
|
11
9
|
icon="chip"
|
|
12
|
-
|
|
13
|
-
:secondary="
|
|
10
|
+
main="Erudit:"
|
|
11
|
+
:secondary="version"
|
|
14
12
|
/>
|
|
15
13
|
</template>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { AsideMinorContent } from '@shared/aside/minor';
|
|
3
|
-
import { injectAsideData } from '
|
|
3
|
+
import { injectAsideData } from '@app/scripts/aside/minor/state';
|
|
4
4
|
|
|
5
5
|
const contentData = injectAsideData<AsideMinorContent>();
|
|
6
6
|
const phrase = await usePhrases('contributors', 'no_contributors');
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { AsideMinorTopic } from '@shared/aside/minor';
|
|
3
|
-
import { injectAsideData } from '
|
|
3
|
+
import { injectAsideData } from '@app/scripts/aside/minor/state';
|
|
4
4
|
|
|
5
5
|
import TopicNav from './TopicNav.vue';
|
|
6
6
|
import TopicToc from './TopicToc.vue';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { injectAsideData } from '
|
|
2
|
+
import { injectAsideData } from '@app/scripts/aside/minor/state';
|
|
3
3
|
import { type AsideMinorTopic } from '@shared/aside/minor';
|
|
4
4
|
|
|
5
5
|
import AsideOverlayPane from '../../utils/AsideOverlayPane.vue';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { topicParts, type TopicPart } from 'erudit-cog/schema';
|
|
2
|
+
import { topicParts, type TopicPart } from '@erudit-js/cog/schema';
|
|
3
3
|
|
|
4
|
-
import { injectAsideData } from '
|
|
4
|
+
import { injectAsideData } from '@app/scripts/aside/minor/state';
|
|
5
5
|
import type { AsideMinorTopic } from '@shared/aside/minor';
|
|
6
6
|
import { TOPIC_PART_ICON } from '@erudit/shared/icons';
|
|
7
7
|
|