mirror of
https://gitlab.com/PronounsPage/PronounsPage.git
synced 2025-09-24 05:05:20 -04:00
Merge branch 'nuxt4-p' into 'main'
migrate to Nuxt 4 See merge request PronounsPage/PronounsPage!648
This commit is contained in:
commit
43e7e4a274
@ -45,7 +45,7 @@ check:
|
|||||||
- end_section
|
- end_section
|
||||||
|
|
||||||
- start_section "Type checking"
|
- start_section "Type checking"
|
||||||
- pnpm nuxi typecheck || record_failure
|
- pnpm nuxt typecheck || record_failure
|
||||||
- end_section
|
- end_section
|
||||||
|
|
||||||
- start_section "Unit Tests"
|
- start_section "Unit Tests"
|
||||||
@ -112,7 +112,6 @@ build:
|
|||||||
artifacts:
|
artifacts:
|
||||||
access: developer
|
access: developer
|
||||||
paths:
|
paths:
|
||||||
- '.nuxt/tsconfig.json'
|
|
||||||
- '.output'
|
- '.output'
|
||||||
- 'locale'
|
- 'locale'
|
||||||
- 'migrations'
|
- 'migrations'
|
||||||
@ -121,7 +120,7 @@ build:
|
|||||||
- 'public/logo/logo-primary.svg'
|
- 'public/logo/logo-primary.svg'
|
||||||
- 'public/bg.png'
|
- 'public/bg.png'
|
||||||
- 'server'
|
- 'server'
|
||||||
- 'src'
|
- 'shared'
|
||||||
- '.npmrc'
|
- '.npmrc'
|
||||||
- '.nvmrc'
|
- '.nvmrc'
|
||||||
- 'LICENSE.md'
|
- 'LICENSE.md'
|
||||||
@ -129,7 +128,6 @@ build:
|
|||||||
- 'package.json'
|
- 'package.json'
|
||||||
- 'pnpm-lock.yaml'
|
- 'pnpm-lock.yaml'
|
||||||
- 'run-wrapper.sh'
|
- 'run-wrapper.sh'
|
||||||
- 'tsconfig.json'
|
|
||||||
exclude:
|
exclude:
|
||||||
- 'locale/*/docs/*'
|
- 'locale/*/docs/*'
|
||||||
- 'locale/*/img/*'
|
- 'locale/*/img/*'
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
import { useNuxtApp } from 'nuxt/app';
|
import { useNuxtApp } from 'nuxt/app';
|
||||||
|
|
||||||
import { useHead, useSeoMeta } from '#imports';
|
import { useHead, useSeoMeta } from '#imports';
|
||||||
|
import { formatFonts } from '#shared/fonts.ts';
|
||||||
import useConfig from '~/composables/useConfig.ts';
|
import useConfig from '~/composables/useConfig.ts';
|
||||||
import { getDefaultSeo } from '~/composables/useSimpleHead.ts';
|
import { getDefaultSeo } from '~/composables/useSimpleHead.ts';
|
||||||
import { getUrlForLocale } from '~/src/domain.ts';
|
import { getUrlForLocale } from '~/src/domain.ts';
|
||||||
import { formatFonts } from '~/src/fonts.ts';
|
|
||||||
|
|
||||||
const { $translator: translator } = useNuxtApp();
|
const { $translator: translator } = useNuxtApp();
|
||||||
const config = useConfig();
|
const config = useConfig();
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { AcademicReference } from '~/locale/config.ts';
|
import type { AcademicReference } from '~~/locale/config.ts';
|
||||||
|
|
||||||
defineProps<{
|
defineProps<{
|
||||||
entry: AcademicReference;
|
entry: AcademicReference;
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
const store = useMainStore();
|
const store = useMainStore();
|
||||||
|
|
@ -4,14 +4,14 @@ import { useCookie, useFetch } from 'nuxt/app';
|
|||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import useDialogue from '../composables/useDialogue.ts';
|
import useDialogue from '../composables/useDialogue.ts';
|
||||||
import { longtimeCookieSetting } from '../src/cookieSettings.ts';
|
|
||||||
import { newDate, gravatar } from '../src/helpers.ts';
|
|
||||||
import { socialProviders } from '../src/socialProviders.ts';
|
|
||||||
import { usernameRegex } from '../src/username.ts';
|
|
||||||
import { useMainStore } from '../store/index.ts';
|
|
||||||
|
|
||||||
|
import { longtimeCookieSetting } from '#shared/cookieSettings.ts';
|
||||||
|
import { newDate, gravatar } from '#shared/helpers.ts';
|
||||||
|
import type { Profile } from '#shared/profile.ts';
|
||||||
|
import { socialProviders } from '#shared/socialProviders.ts';
|
||||||
|
import { usernameRegex } from '#shared/username.ts';
|
||||||
import { getUrlForLocale, getUrlsForAllLocales } from '~/src/domain.ts';
|
import { getUrlForLocale, getUrlsForAllLocales } from '~/src/domain.ts';
|
||||||
import type { Profile } from '~/src/profile.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
const { $translator: translator, $setToken: setToken, $removeToken: removeToken } = useNuxtApp();
|
const { $translator: translator, $setToken: setToken, $removeToken: removeToken } = useNuxtApp();
|
||||||
const runtimeConfig = useRuntimeConfig();
|
const runtimeConfig = useRuntimeConfig();
|
||||||
@ -614,7 +614,7 @@ const addBrackets = (str: string): string => {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@import "assets/variables";
|
@import "~/assets/variables";
|
||||||
|
|
||||||
.profile-current {
|
.profile-current {
|
||||||
border-inline-start: 3px solid $primary;
|
border-inline-start: 3px solid $primary;
|
@ -41,11 +41,12 @@
|
|||||||
import { mapState } from 'pinia';
|
import { mapState } from 'pinia';
|
||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import adPlaceholders from '../src/adPlaceholders.ts';
|
|
||||||
import getAdsInternal from '../src/adsInternal.ts';
|
|
||||||
import { random, randomItemWeighted } from '../src/helpers.ts';
|
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { useMainStore } from '../store/index.ts';
|
||||||
|
|
||||||
|
import adPlaceholders from '#shared/adPlaceholders.ts';
|
||||||
|
import getAdsInternal from '#shared/adsInternal.ts';
|
||||||
|
import { random, randomItemWeighted } from '#shared/helpers.ts';
|
||||||
|
|
||||||
const MOBILE_BREAKPOINT = 992;
|
const MOBILE_BREAKPOINT = 992;
|
||||||
|
|
||||||
export default {
|
export default {
|
@ -43,9 +43,9 @@
|
|||||||
import { useFetch } from 'nuxt/app';
|
import { useFetch } from 'nuxt/app';
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
|
|
||||||
|
import type { ContactAuthor } from '../../locale/config.ts';
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import useSpelling from '../composables/useSpelling.ts';
|
import useSpelling from '../composables/useSpelling.ts';
|
||||||
import type { ContactAuthor } from '../locale/config.ts';
|
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
props: {
|
props: {
|
@ -1,8 +1,8 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { computedAsync } from '@vueuse/core';
|
import { computedAsync } from '@vueuse/core';
|
||||||
|
|
||||||
import { fallbackAvatar, gravatar } from '~/src/helpers.ts';
|
import { fallbackAvatar, gravatar } from '#shared/helpers.ts';
|
||||||
import type { User } from '~/src/user.ts';
|
import type { User } from '#shared/user.ts';
|
||||||
|
|
||||||
interface AvatarUser extends Pick<User, 'username' | 'emailHash'> {
|
interface AvatarUser extends Pick<User, 'username' | 'emailHash'> {
|
||||||
email?: User['email'];
|
email?: User['email'];
|
@ -1,6 +1,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import { SourceLibrary } from '../src/classes.ts';
|
|
||||||
|
import { SourceLibrary } from '#shared/classes.ts';
|
||||||
|
|
||||||
const config = useConfig();
|
const config = useConfig();
|
||||||
|
|
@ -262,9 +262,9 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import useDialogue from '../composables/useDialogue.ts';
|
import useDialogue from '../composables/useDialogue.ts';
|
||||||
import forbidden from '../src/forbidden.ts';
|
|
||||||
import { sleep } from '../src/helpers.ts';
|
|
||||||
|
|
||||||
|
import forbidden from '#shared/forbidden.ts';
|
||||||
|
import { sleep } from '#shared/helpers.ts';
|
||||||
import { getUrlForLocale } from '~/src/domain.ts';
|
import { getUrlForLocale } from '~/src/domain.ts';
|
||||||
|
|
||||||
export default {
|
export default {
|
@ -46,8 +46,9 @@ import { defineComponent } from 'vue';
|
|||||||
import type { PropType } from 'vue';
|
import type { PropType } from 'vue';
|
||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import { Day, iterateMonth, EventLevel, Year } from '../src/calendar/helpers.ts';
|
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { Day, iterateMonth, EventLevel, Year } from '#shared/calendar/helpers.ts';
|
||||||
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
interface Data {
|
interface Data {
|
||||||
iterateMonth: typeof iterateMonth;
|
iterateMonth: typeof iterateMonth;
|
@ -1,7 +1,8 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import { Day } from '../src/calendar/helpers.ts';
|
|
||||||
import { loadCalendar } from '../src/data.ts';
|
import { Day } from '#shared/calendar/helpers.ts';
|
||||||
|
import { loadCalendar } from '~/src/data.ts';
|
||||||
|
|
||||||
const props = withDefaults(defineProps<{
|
const props = withDefaults(defineProps<{
|
||||||
day?: Day;
|
day?: Day;
|
@ -1,8 +1,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { EventLevel } from '../src/calendar/helpers.ts';
|
import { EventLevel } from '#shared/calendar/helpers.ts';
|
||||||
import type { Event, Day } from '../src/calendar/helpers.ts';
|
import type { Event, Day } from '#shared/calendar/helpers.ts';
|
||||||
import { newDate } from '../src/helpers.ts';
|
import { newDate } from '#shared/helpers.ts';
|
||||||
|
|
||||||
import { getUrlForLocale } from '~/src/domain.ts';
|
import { getUrlForLocale } from '~/src/domain.ts';
|
||||||
|
|
||||||
const props = withDefaults(defineProps<{
|
const props = withDefaults(defineProps<{
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { Year } from '~/src/calendar/helpers.ts';
|
import type { Year } from '#shared/calendar/helpers.ts';
|
||||||
|
|
||||||
defineProps<{
|
defineProps<{
|
||||||
year: Year;
|
year: Year;
|
@ -1,9 +1,9 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import type { Day, Year } from '#shared/calendar/helpers.ts';
|
||||||
|
import { socialLinks } from '#shared/contact.ts';
|
||||||
|
import { clearUrl, newDate } from '#shared/helpers.ts';
|
||||||
import useConfig from '~/composables/useConfig.ts';
|
import useConfig from '~/composables/useConfig.ts';
|
||||||
import type { Day, Year } from '~/src/calendar/helpers.ts';
|
|
||||||
import { socialLinks } from '~/src/contact.ts';
|
|
||||||
import { getUrlForLocale } from '~/src/domain.ts';
|
import { getUrlForLocale } from '~/src/domain.ts';
|
||||||
import { clearUrl, newDate } from '~/src/helpers.ts';
|
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
day?: Day;
|
day?: Day;
|
@ -1,6 +1,6 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { iterateMonth } from '../src/calendar/helpers.ts';
|
import { iterateMonth } from '#shared/calendar/helpers.ts';
|
||||||
import type { Event, Year } from '../src/calendar/helpers.ts';
|
import type { Event, Year } from '#shared/calendar/helpers.ts';
|
||||||
|
|
||||||
interface TranslatedEvent extends Event {
|
interface TranslatedEvent extends Event {
|
||||||
translatedName: string;
|
translatedName: string;
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { Category } from '~/src/classes.ts';
|
import type { Category } from '#shared/classes.ts';
|
||||||
|
|
||||||
const modelValue = defineModel<string[]>({ required: true });
|
const modelValue = defineModel<string[]>({ required: true });
|
||||||
|
|
@ -2,7 +2,8 @@
|
|||||||
import { useAsyncData } from 'nuxt/app';
|
import { useAsyncData } from 'nuxt/app';
|
||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import { fetchJson } from '../src/fetchJson.ts';
|
|
||||||
|
import { fetchJson } from '#shared/fetchJson.ts';
|
||||||
|
|
||||||
const props = withDefaults(defineProps<{
|
const props = withDefaults(defineProps<{
|
||||||
type: string;
|
type: string;
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
const config = useConfig();
|
const config = useConfig();
|
||||||
|
|
@ -106,7 +106,8 @@
|
|||||||
import draggable from 'vuedraggable';
|
import draggable from 'vuedraggable';
|
||||||
|
|
||||||
import useDialogue from '../composables/useDialogue.ts';
|
import useDialogue from '../composables/useDialogue.ts';
|
||||||
import { curry, isValidLink } from '../src/helpers.ts';
|
|
||||||
|
import { curry, isValidLink } from '#shared/helpers.ts';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { Day } from '~/src/calendar/helpers.ts';
|
import type { Day } from '#shared/calendar/helpers.ts';
|
||||||
|
|
||||||
defineProps<{
|
defineProps<{
|
||||||
day: Day;
|
day: Day;
|
@ -47,7 +47,7 @@
|
|||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import type { PropType } from 'vue';
|
import type { PropType } from 'vue';
|
||||||
|
|
||||||
import type { Color, ModalSize } from '../src/bootstrap.ts';
|
import type { Color, ModalSize } from '#shared/bootstrap.ts';
|
||||||
|
|
||||||
export interface DialogueMessage {
|
export interface DialogueMessage {
|
||||||
icon?: string;
|
icon?: string;
|
@ -82,7 +82,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@import "assets/variables";
|
@import "~/assets/variables";
|
||||||
ins {
|
ins {
|
||||||
background-color: $green-200;
|
background-color: $green-200;
|
||||||
padding: .2em;
|
padding: .2em;
|
@ -43,9 +43,10 @@ import { mapState } from 'pinia';
|
|||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import useDialogue from '../composables/useDialogue.ts';
|
import useDialogue from '../composables/useDialogue.ts';
|
||||||
import { longtimeCookieSetting } from '../src/cookieSettings.ts';
|
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { useMainStore } from '../store/index.ts';
|
||||||
|
|
||||||
|
import { longtimeCookieSetting } from '#shared/cookieSettings.ts';
|
||||||
|
|
||||||
const konami = ['ArrowUp', 'ArrowUp', 'ArrowDown', 'ArrowDown', 'ArrowLeft', 'ArrowRight', 'ArrowLeft', 'ArrowRight', 'b', 'a'];
|
const konami = ['ArrowUp', 'ArrowUp', 'ArrowDown', 'ArrowDown', 'ArrowLeft', 'ArrowRight', 'ArrowLeft', 'ArrowRight', 'b', 'a'];
|
||||||
|
|
||||||
const EGGS_BY_LOCALE = {
|
const EGGS_BY_LOCALE = {
|
@ -1,6 +1,6 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { ExampleCategory, PronounExample, Pronoun } from '~/src/classes.ts';
|
import type { ExampleCategory, PronounExample, Pronoun } from '#shared/classes.ts';
|
||||||
import { randomItem } from '~/src/helpers.ts';
|
import { randomItem } from '#shared/helpers.ts';
|
||||||
|
|
||||||
const props = withDefaults(defineProps<{
|
const props = withDefaults(defineProps<{
|
||||||
exampleCategory: ExampleCategory;
|
exampleCategory: ExampleCategory;
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { Example, ExampleValues } from '~/src/language/examples.ts';
|
import type { Example, ExampleValues } from '#shared/language/examples.ts';
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
example: Example;
|
example: Example;
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { Category } from '~/src/classes.ts';
|
import type { Category } from '#shared/classes.ts';
|
||||||
|
|
||||||
const filter = defineModel<string>();
|
const filter = defineModel<string>();
|
||||||
const filterCategory = defineModel<string>('category');
|
const filterCategory = defineModel<string>('category');
|
@ -1,8 +1,8 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import { randomNumber, sleep } from '../src/helpers.ts';
|
|
||||||
|
|
||||||
import type { TermsEntryRaw } from '~/src/classes.ts';
|
import type { TermsEntryRaw } from '#shared/classes.ts';
|
||||||
|
import { randomNumber, sleep } from '#shared/helpers.ts';
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
termkey?: string;
|
termkey?: string;
|
@ -1,9 +1,9 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { buildPronoun } from '~/src/buildPronoun.ts';
|
import { buildPronoun } from '#shared/buildPronoun.ts';
|
||||||
import type { Pronoun } from '~/src/classes.ts';
|
import type { Pronoun } from '#shared/classes.ts';
|
||||||
|
import { buildFlags } from '#shared/flags.ts';
|
||||||
|
import type { Flag } from '#shared/flags.ts';
|
||||||
import { loadPronouns } from '~/src/data.ts';
|
import { loadPronouns } from '~/src/data.ts';
|
||||||
import { buildFlags } from '~/src/flags.ts';
|
|
||||||
import type { Flag } from '~/src/flags.ts';
|
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
mainPronoun?: Pronoun | null;
|
mainPronoun?: Pronoun | null;
|
@ -1,11 +1,11 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useFetch } from 'nuxt/app';
|
import { useFetch } from 'nuxt/app';
|
||||||
|
|
||||||
|
import { getContactLinks, getSocialLinks } from '#shared/contact.ts';
|
||||||
|
import { sessionCookieSetting } from '#shared/cookieSettings.ts';
|
||||||
|
import { groupBy } from '#shared/helpers.ts';
|
||||||
import useConfig from '~/composables/useConfig.ts';
|
import useConfig from '~/composables/useConfig.ts';
|
||||||
import useDialogue from '~/composables/useDialogue.ts';
|
import useDialogue from '~/composables/useDialogue.ts';
|
||||||
import { getContactLinks, getSocialLinks } from '~/src/contact.ts';
|
|
||||||
import { sessionCookieSetting } from '~/src/cookieSettings.ts';
|
|
||||||
import { groupBy } from '~/src/helpers.ts';
|
|
||||||
import { useMainStore } from '~/store/index.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
const translationModeVisibleCookie = useCookie('translationModeVisible', sessionCookieSetting);
|
const translationModeVisibleCookie = useCookie('translationModeVisible', sessionCookieSetting);
|
@ -1,9 +1,9 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import type { Example, ExampleValues } from '#shared/language/examples.ts';
|
||||||
|
import { expandVariantsForSection } from '#shared/language/grammarTables.ts';
|
||||||
|
import type { GrammarTableDefinition, Variant, SectionDefinition } from '#shared/language/grammarTables.ts';
|
||||||
|
import { symbolsByNumeri } from '#shared/nouns.ts';
|
||||||
import { loadGrammarTableVariantsConverter } from '~/src/data.ts';
|
import { loadGrammarTableVariantsConverter } from '~/src/data.ts';
|
||||||
import type { Example, ExampleValues } from '~/src/language/examples.ts';
|
|
||||||
import { expandVariantsForSection } from '~/src/language/grammarTables.ts';
|
|
||||||
import type { GrammarTableDefinition, Variant, SectionDefinition } from '~/src/language/grammarTables.ts';
|
|
||||||
import { symbolsByNumeri } from '~/src/nouns.ts';
|
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
grammarTable: GrammarTableDefinition;
|
grammarTable: GrammarTableDefinition;
|
@ -3,12 +3,12 @@ import { DateTime } from 'luxon';
|
|||||||
import type { RouteLocationRaw } from 'vue-router';
|
import type { RouteLocationRaw } from 'vue-router';
|
||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import forbidden from '../src/forbidden.ts';
|
|
||||||
import type { User } from '../src/user.ts';
|
|
||||||
import { useMainStore } from '../store/index.ts';
|
|
||||||
|
|
||||||
|
import forbidden from '#shared/forbidden.ts';
|
||||||
|
import { newDate } from '#shared/helpers.ts';
|
||||||
|
import type { User } from '#shared/user.ts';
|
||||||
import type SearchDialogue from '~/components/search/SearchDialogue.vue';
|
import type SearchDialogue from '~/components/search/SearchDialogue.vue';
|
||||||
import { newDate } from '~/src/helpers.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
type HeaderTo = { link: string; name?: never } | { name: string; link?: never };
|
type HeaderTo = { link: string; name?: never } | { name: string; link?: never };
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ const today = newDate();
|
|||||||
|
|
||||||
const { user } = storeToRefs(useMainStore());
|
const { user } = storeToRefs(useMainStore());
|
||||||
const links = computed((): HeaderLink[] => {
|
const links = computed((): HeaderLink[] => {
|
||||||
// remember to modify ~/server/api/search.get.ts, page kind too
|
// remember to modify ~~/server/api/search.get.ts, page kind too
|
||||||
const links: HeaderLink[] = [];
|
const links: HeaderLink[] = [];
|
||||||
|
|
||||||
links.push({
|
links.push({
|
||||||
@ -537,7 +537,7 @@ const dismissCensus = (): void => {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@import "assets/variables";
|
@import "~/assets/variables";
|
||||||
|
|
||||||
header {
|
header {
|
||||||
padding: 0;
|
padding: 0;
|
@ -18,9 +18,9 @@
|
|||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import type { PropType } from 'vue';
|
import type { PropType } from 'vue';
|
||||||
|
|
||||||
import BlueSky from '~/public/img/bluesky.svg';
|
import blueSkySvg from '~~/public/img/bluesky.svg?raw';
|
||||||
|
|
||||||
const svgDataToHtml = (svgDataString: string): string => decodeURI(svgDataString).replace(/^.*<svg /, '<svg class="icon" ');
|
const postprocessSvg = (svg: string): string => svg.replace('<svg ', '<svg class="icon" ');
|
||||||
|
|
||||||
const buildQueue = (v: string | (string | undefined)[] | null): { value: string; fallbacks: string[]; svgs: Record<string, any> } => {
|
const buildQueue = (v: string | (string | undefined)[] | null): { value: string; fallbacks: string[]; svgs: Record<string, any> } => {
|
||||||
const rawValues = Array.isArray(v) ? v : [v];
|
const rawValues = Array.isArray(v) ? v : [v];
|
||||||
@ -34,7 +34,7 @@ const buildQueue = (v: string | (string | undefined)[] | null): { value: string;
|
|||||||
value: values.shift()!,
|
value: values.shift()!,
|
||||||
fallbacks: values,
|
fallbacks: values,
|
||||||
svgs: {
|
svgs: {
|
||||||
bluesky: svgDataToHtml(BlueSky),
|
bluesky: postprocessSvg(blueSkySvg),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
};
|
};
|
@ -1,6 +1,6 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import iconsMetadata from '~/src/iconsMetadata.ts';
|
import iconsMetadata from '#shared/iconsMetadata.ts';
|
||||||
import type { IconMetadata } from '~/src/iconsMetadata.ts';
|
import type { IconMetadata } from '#shared/iconsMetadata.ts';
|
||||||
|
|
||||||
const props = withDefaults(defineProps<{
|
const props = withDefaults(defineProps<{
|
||||||
styles?: IconMetadata['styles'];
|
styles?: IconMetadata['styles'];
|
@ -18,8 +18,8 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
|
|
||||||
import { buildImageUrl } from '../src/helpers.ts';
|
import { buildImageUrl } from '#shared/helpers.ts';
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
props: {
|
props: {
|
@ -60,7 +60,8 @@
|
|||||||
import draggable from 'vuedraggable';
|
import draggable from 'vuedraggable';
|
||||||
|
|
||||||
import useDialogue from '../composables/useDialogue.ts';
|
import useDialogue from '../composables/useDialogue.ts';
|
||||||
import { curry } from '../src/helpers.ts';
|
|
||||||
|
import { curry } from '#shared/helpers.ts';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -1,10 +1,10 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { ComponentExposed } from 'vue-component-type-helpers';
|
import type { ComponentExposed } from 'vue-component-type-helpers';
|
||||||
|
|
||||||
|
import { InclusiveEntry } from '#shared/classes.ts';
|
||||||
|
import { buildDict, clearUrl, clearLinkedText } from '#shared/helpers.ts';
|
||||||
import type InclusiveSubmitForm from '~/components/InclusiveSubmitForm.vue';
|
import type InclusiveSubmitForm from '~/components/InclusiveSubmitForm.vue';
|
||||||
import type Table from '~/components/Table.vue';
|
import type Table from '~/components/Table.vue';
|
||||||
import { InclusiveEntry } from '~/src/classes.ts';
|
|
||||||
import { buildDict, clearUrl, clearLinkedText } from '~/src/helpers.ts';
|
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
load?: boolean;
|
load?: boolean;
|
||||||
@ -361,7 +361,7 @@ const remove = async (entry: InclusiveEntry): Promise<void> => {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
@import "assets/variables";
|
@import "~/assets/variables";
|
||||||
|
|
||||||
:deep(.row-header) {
|
:deep(.row-header) {
|
||||||
grid-template-columns: 1fr 1fr;
|
grid-template-columns: 1fr 1fr;
|
@ -96,7 +96,8 @@ import { defineComponent } from 'vue';
|
|||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import useDialogue from '../composables/useDialogue.ts';
|
import useDialogue from '../composables/useDialogue.ts';
|
||||||
import type { InclusiveEntry } from '../src/classes.ts';
|
|
||||||
|
import type { InclusiveEntry } from '#shared/classes.ts';
|
||||||
|
|
||||||
interface Data {
|
interface Data {
|
||||||
form: {
|
form: {
|
@ -29,11 +29,11 @@
|
|||||||
<script>
|
<script>
|
||||||
import { defineComponent, reactive } from 'vue';
|
import { defineComponent, reactive } from 'vue';
|
||||||
|
|
||||||
|
import locales from '../../locale/locales.ts';
|
||||||
import walsLanguages from '../assets/languages.tsv';
|
import walsLanguages from '../assets/languages.tsv';
|
||||||
import locales from '../locale/locales.ts';
|
|
||||||
|
|
||||||
|
import { clearUrl } from '#shared/helpers.ts';
|
||||||
import useDark from '~/composables/useDark.ts';
|
import useDark from '~/composables/useDark.ts';
|
||||||
import { clearUrl } from '~/src/helpers.ts';
|
|
||||||
|
|
||||||
const MOBILE_BREAKPOINT = 992;
|
const MOBILE_BREAKPOINT = 992;
|
||||||
|
|
@ -26,8 +26,8 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
|
|
||||||
|
import type { LocaleDescription } from '../../locale/locales.ts';
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import type { LocaleDescription } from '../locale/locales.ts';
|
|
||||||
|
|
||||||
import { getUrlForLocale } from '~/src/domain.ts';
|
import { getUrlForLocale } from '~/src/domain.ts';
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import opinions from '../src/opinions.ts';
|
import opinions from '#shared/opinions.ts';
|
||||||
import type { Opinion } from '../src/opinions.ts';
|
import type { Opinion } from '#shared/opinions.ts';
|
||||||
import { colours, styles } from '../src/styling.ts';
|
import { colours, styles } from '#shared/styling.ts';
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
readonly?: boolean;
|
readonly?: boolean;
|
||||||
@ -96,7 +96,7 @@ const validation = (v: Opinion) => {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@import "assets/variables";
|
@import "~/assets/variables";
|
||||||
|
|
||||||
// TODO
|
// TODO
|
||||||
select > option.small {
|
select > option.small {
|
@ -13,7 +13,7 @@
|
|||||||
import { storeToRefs } from 'pinia';
|
import { storeToRefs } from 'pinia';
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
|
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
setup() {
|
setup() {
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { Link } from '~/locale/config.ts';
|
import type { Link } from '~~/locale/config.ts';
|
||||||
|
|
||||||
defineProps<{
|
defineProps<{
|
||||||
link: Link;
|
link: Link;
|
@ -4,11 +4,11 @@ import type { VNode } from 'vue';
|
|||||||
|
|
||||||
import useConfig from '../composables/useConfig.ts';
|
import useConfig from '../composables/useConfig.ts';
|
||||||
import useSpelling from '../composables/useSpelling.ts';
|
import useSpelling from '../composables/useSpelling.ts';
|
||||||
import { escapeHtml } from '../src/helpers.ts';
|
|
||||||
|
|
||||||
import Icon from './Icon.vue';
|
import Icon from './Icon.vue';
|
||||||
|
|
||||||
import { NuxtLink } from '#components';
|
import { NuxtLink } from '#components';
|
||||||
|
import { escapeHtml } from '#shared/helpers.ts';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
props: {
|
props: {
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useMainStore } from '../store/index.ts';
|
import { useMainStore } from '~/store/index.ts';
|
||||||
|
|
||||||
const config = useConfig();
|
const config = useConfig();
|
||||||
|
|
@ -71,7 +71,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import draggable from 'vuedraggable';
|
import draggable from 'vuedraggable';
|
||||||
|
|
||||||
import { curry } from '../src/helpers.ts';
|
import { curry } from '#shared/helpers.ts';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
@ -1,6 +1,6 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { getPronoun } from '~/src/buildPronoun.ts';
|
import { getPronoun } from '#shared/buildPronoun.ts';
|
||||||
import type { Pronoun, Source } from '~/src/classes.ts';
|
import type { Pronoun, Source } from '#shared/classes.ts';
|
||||||
import { loadPronouns } from '~/src/data.ts';
|
import { loadPronouns } from '~/src/data.ts';
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { LocaleDescription } from '~/locale/locales.js';
|
import type { LocaleDescription } from '~~/locale/locales.js';
|
||||||
|
|
||||||
defineProps<{
|
defineProps<{
|
||||||
locale: LocaleDescription;
|
locale: LocaleDescription;
|
@ -1,8 +1,8 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { fontHeadingsByLocale } from '~/locale/fonts.ts';
|
import { formatFonts } from '#shared/fonts.ts';
|
||||||
import type { LocaleDescription } from '~/locale/locales.ts';
|
|
||||||
import { getUrlForLocale } from '~/src/domain.ts';
|
import { getUrlForLocale } from '~/src/domain.ts';
|
||||||
import { formatFonts } from '~/src/fonts.ts';
|
import { fontHeadingsByLocale } from '~~/locale/fonts.ts';
|
||||||
|
import type { LocaleDescription } from '~~/locale/locales.ts';
|
||||||
|
|
||||||
withDefaults(defineProps<{
|
withDefaults(defineProps<{
|
||||||
locales: Record<string, LocaleDescription>;
|
locales: Record<string, LocaleDescription>;
|
@ -2,9 +2,9 @@
|
|||||||
import { importSPKI, jwtVerify } from 'jose';
|
import { importSPKI, jwtVerify } from 'jose';
|
||||||
import type { FetchOptions } from 'ofetch';
|
import type { FetchOptions } from 'ofetch';
|
||||||
|
|
||||||
|
import { socialProviders } from '#shared/socialProviders.ts';
|
||||||
|
import type { User } from '#shared/user.ts';
|
||||||
import { getUrlForLocale } from '~/src/domain.ts';
|
import { getUrlForLocale } from '~/src/domain.ts';
|
||||||
import { socialProviders } from '~/src/socialProviders.ts';
|
|
||||||
import type { User } from '~/src/user.ts';
|
|
||||||
|
|
||||||
const { $setToken: setToken } = useNuxtApp();
|
const { $setToken: setToken } = useNuxtApp();
|
||||||
const runtimeConfig = useRuntimeConfig();
|
const runtimeConfig = useRuntimeConfig();
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user