mirror of
https://github.com/immich-app/immich.git
synced 2025-09-29 15:31:13 -04:00
refactor: more elements (#22095)
This commit is contained in:
parent
3f4b6a8e7c
commit
75322179fd
2
web/src/app.d.ts
vendored
2
web/src/app.d.ts
vendored
@ -36,7 +36,7 @@ type NestedKeys<T, K = keyof T> = K extends keyof T & string
|
|||||||
: never;
|
: never;
|
||||||
|
|
||||||
declare module 'svelte-i18n' {
|
declare module 'svelte-i18n' {
|
||||||
import type { InterpolationValues } from '$lib/components/i18n/format-message.svelte';
|
import type { InterpolationValues } from '$lib/elements/format-message.svelte';
|
||||||
import type { Readable } from 'svelte/store';
|
import type { Readable } from 'svelte/store';
|
||||||
|
|
||||||
type Translations = NestedKeys<typeof en>;
|
type Translations = NestedKeys<typeof en>;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import { AppRoute, OpenSettingQueryParameterValue, QueryParameter } from '$lib/constants';
|
import { AppRoute, OpenSettingQueryParameterValue, QueryParameter } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { t } from 'svelte-i18n';
|
import { t } from 'svelte-i18n';
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import {
|
import {
|
||||||
notificationController,
|
notificationController,
|
||||||
NotificationType,
|
NotificationType,
|
||||||
@ -10,6 +9,7 @@
|
|||||||
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
||||||
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
||||||
import { SettingInputFieldType } from '$lib/constants';
|
import { SettingInputFieldType } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import AuthDisableLoginConfirmModal from '$lib/modals/AuthDisableLoginConfirmModal.svelte';
|
import AuthDisableLoginConfirmModal from '$lib/modals/AuthDisableLoginConfirmModal.svelte';
|
||||||
import { handleError } from '$lib/utils/handle-error';
|
import { handleError } from '$lib/utils/handle-error';
|
||||||
import { OAuthTokenEndpointAuthMethod, unlinkAllOAuthAccountsAdmin, type SystemConfigDto } from '@immich/sdk';
|
import { OAuthTokenEndpointAuthMethod, unlinkAllOAuthAccountsAdmin, type SystemConfigDto } from '@immich/sdk';
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
||||||
|
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
||||||
|
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
||||||
|
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
||||||
|
import { SettingInputFieldType } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import type { SystemConfigDto } from '@immich/sdk';
|
import type { SystemConfigDto } from '@immich/sdk';
|
||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
import { t } from 'svelte-i18n';
|
||||||
import { fade } from 'svelte/transition';
|
import { fade } from 'svelte/transition';
|
||||||
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
||||||
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
|
||||||
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
|
||||||
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
|
||||||
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
|
||||||
import { t } from 'svelte-i18n';
|
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import { SettingInputFieldType } from '$lib/constants';
|
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
savedConfig: SystemConfigDto;
|
savedConfig: SystemConfigDto;
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
||||||
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
||||||
import SettingCheckboxes from '$lib/components/shared-components/settings/setting-checkboxes.svelte';
|
import SettingCheckboxes from '$lib/components/shared-components/settings/setting-checkboxes.svelte';
|
||||||
@ -7,6 +6,7 @@
|
|||||||
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
||||||
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
||||||
import { SettingInputFieldType } from '$lib/constants';
|
import { SettingInputFieldType } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import Icon from '$lib/elements/Icon.svelte';
|
import Icon from '$lib/elements/Icon.svelte';
|
||||||
import {
|
import {
|
||||||
AudioCodec,
|
AudioCodec,
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
||||||
|
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
||||||
|
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
||||||
|
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
||||||
|
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
||||||
|
import { SettingInputFieldType } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import type { SystemConfigDto } from '@immich/sdk';
|
import type { SystemConfigDto } from '@immich/sdk';
|
||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
import { t } from 'svelte-i18n';
|
||||||
import { fade } from 'svelte/transition';
|
import { fade } from 'svelte/transition';
|
||||||
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
||||||
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
|
||||||
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
|
||||||
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
|
||||||
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
|
||||||
import { t } from 'svelte-i18n';
|
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
|
||||||
import { SettingInputFieldType } from '$lib/constants';
|
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
savedConfig: SystemConfigDto;
|
savedConfig: SystemConfigDto;
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
||||||
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
||||||
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
||||||
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
|
||||||
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
||||||
import { SettingInputFieldType } from '$lib/constants';
|
import { SettingInputFieldType } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { featureFlags } from '$lib/stores/server-config.store';
|
import { featureFlags } from '$lib/stores/server-config.store';
|
||||||
import type { SystemConfigDto } from '@immich/sdk';
|
import type { SystemConfigDto } from '@immich/sdk';
|
||||||
import { Button, IconButton } from '@immich/ui';
|
import { Button, IconButton } from '@immich/ui';
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type { SystemConfigDto } from '@immich/sdk';
|
|
||||||
import { isEqual } from 'lodash-es';
|
|
||||||
import { fade } from 'svelte/transition';
|
|
||||||
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
|
||||||
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
||||||
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
||||||
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
|
||||||
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
||||||
import { t } from 'svelte-i18n';
|
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import { SettingInputFieldType } from '$lib/constants';
|
import { SettingInputFieldType } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
|
import type { SystemConfigDto } from '@immich/sdk';
|
||||||
|
import { isEqual } from 'lodash-es';
|
||||||
|
import { t } from 'svelte-i18n';
|
||||||
|
import { fade } from 'svelte/transition';
|
||||||
|
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
savedConfig: SystemConfigDto;
|
savedConfig: SystemConfigDto;
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { createBubbler, preventDefault } from 'svelte/legacy';
|
|
||||||
|
|
||||||
const bubble = createBubbler();
|
|
||||||
import LoadingSpinner from '$lib/components/shared-components/loading-spinner.svelte';
|
import LoadingSpinner from '$lib/components/shared-components/loading-spinner.svelte';
|
||||||
|
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
||||||
|
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
||||||
|
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
||||||
import { AppRoute, SettingInputFieldType } from '$lib/constants';
|
import { AppRoute, SettingInputFieldType } from '$lib/constants';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { user } from '$lib/stores/user.store';
|
import { user } from '$lib/stores/user.store';
|
||||||
import {
|
import {
|
||||||
getStorageTemplateOptions,
|
getStorageTemplateOptions,
|
||||||
@ -13,16 +14,13 @@
|
|||||||
import handlebar from 'handlebars';
|
import handlebar from 'handlebars';
|
||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
import * as luxon from 'luxon';
|
import * as luxon from 'luxon';
|
||||||
|
import type { Snippet } from 'svelte';
|
||||||
|
import { t } from 'svelte-i18n';
|
||||||
|
import { createBubbler, preventDefault } from 'svelte/legacy';
|
||||||
import { fade } from 'svelte/transition';
|
import { fade } from 'svelte/transition';
|
||||||
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
import type { SettingsResetEvent, SettingsSaveEvent } from '../admin-settings';
|
||||||
import SupportedDatetimePanel from './supported-datetime-panel.svelte';
|
import SupportedDatetimePanel from './supported-datetime-panel.svelte';
|
||||||
import SupportedVariablesPanel from './supported-variables-panel.svelte';
|
import SupportedVariablesPanel from './supported-variables-panel.svelte';
|
||||||
import SettingButtonsRow from '$lib/components/shared-components/settings/setting-buttons-row.svelte';
|
|
||||||
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
|
|
||||||
import SettingSwitch from '$lib/components/shared-components/settings/setting-switch.svelte';
|
|
||||||
import { t } from 'svelte-i18n';
|
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import type { Snippet } from 'svelte';
|
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
savedConfig: SystemConfigDto;
|
savedConfig: SystemConfigDto;
|
||||||
@ -48,6 +46,7 @@
|
|||||||
children,
|
children,
|
||||||
}: Props = $props();
|
}: Props = $props();
|
||||||
|
|
||||||
|
const bubble = createBubbler();
|
||||||
let templateOptions: SystemConfigTemplateStorageOptionDto | undefined = $state();
|
let templateOptions: SystemConfigTemplateStorageOptionDto | undefined = $state();
|
||||||
let selectedPreset = $state('');
|
let selectedPreset = $state('');
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import LoadingSpinner from '$lib/components/shared-components/loading-spinner.svelte';
|
import LoadingSpinner from '$lib/components/shared-components/loading-spinner.svelte';
|
||||||
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
import SettingAccordion from '$lib/components/shared-components/settings/setting-accordion.svelte';
|
||||||
import SettingTextarea from '$lib/components/shared-components/settings/setting-textarea.svelte';
|
import SettingTextarea from '$lib/components/shared-components/settings/setting-textarea.svelte';
|
||||||
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import Icon from '$lib/elements/Icon.svelte';
|
import Icon from '$lib/elements/Icon.svelte';
|
||||||
import EmailTemplatePreviewModal from '$lib/modals/EmailTemplatePreviewModal.svelte';
|
import EmailTemplatePreviewModal from '$lib/modals/EmailTemplatePreviewModal.svelte';
|
||||||
import { handleError } from '$lib/utils/handle-error';
|
import { handleError } from '$lib/utils/handle-error';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import StarRating from '$lib/components/shared-components/star-rating.svelte';
|
import StarRating from '$lib/elements/StarRating.svelte';
|
||||||
import { authManager } from '$lib/managers/auth-manager.svelte';
|
import { authManager } from '$lib/managers/auth-manager.svelte';
|
||||||
import { preferences } from '$lib/stores/user.store';
|
import { preferences } from '$lib/stores/user.store';
|
||||||
import { handlePromiseError } from '$lib/utils';
|
import { handlePromiseError } from '$lib/utils';
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
<script lang="ts">
|
|
||||||
import type { InterpolationValues } from '$lib/components/i18n/format-message';
|
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
|
||||||
import type { Translations } from 'svelte-i18n';
|
|
||||||
|
|
||||||
interface Props {
|
|
||||||
key: Translations;
|
|
||||||
values?: InterpolationValues;
|
|
||||||
}
|
|
||||||
|
|
||||||
let { key, values = {} }: Props = $props();
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<FormatMessage {key} {values}>
|
|
||||||
{#snippet children({ message, tag })}
|
|
||||||
{#if tag === 'b'}
|
|
||||||
<b>{message}</b>
|
|
||||||
{/if}
|
|
||||||
{/snippet}
|
|
||||||
</FormatMessage>
|
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import Icon from '$lib/elements/Icon.svelte';
|
import Icon from '$lib/elements/Icon.svelte';
|
||||||
import { Stack } from '@immich/ui';
|
import { Stack } from '@immich/ui';
|
||||||
import { mdiAlertCircleOutline } from '@mdi/js';
|
import { mdiAlertCircleOutline } from '@mdi/js';
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import AdminSettings from '$lib/components/admin-page/settings/admin-settings.svelte';
|
import AdminSettings from '$lib/components/admin-page/settings/admin-settings.svelte';
|
||||||
import StorageTemplateSettings from '$lib/components/admin-page/settings/storage-template/storage-template-settings.svelte';
|
import StorageTemplateSettings from '$lib/components/admin-page/settings/storage-template/storage-template-settings.svelte';
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { featureFlags } from '$lib/stores/server-config.store';
|
import { featureFlags } from '$lib/stores/server-config.store';
|
||||||
import { user } from '$lib/stores/user.store';
|
import { user } from '$lib/stores/user.store';
|
||||||
import { getConfig, type SystemConfigDto } from '@immich/sdk';
|
import { getConfig, type SystemConfigDto } from '@immich/sdk';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { showDeleteModal } from '$lib/stores/preferences.store';
|
import { showDeleteModal } from '$lib/stores/preferences.store';
|
||||||
import { Checkbox, ConfirmModal, Label } from '@immich/ui';
|
import { Checkbox, ConfirmModal, Label } from '@immich/ui';
|
||||||
import { mdiDeleteForeverOutline } from '@mdi/js';
|
import { mdiDeleteForeverOutline } from '@mdi/js';
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { IntlMessageFormat, type FormatXMLElementFn } from 'intl-messageformat';
|
import type { InterpolationValues } from '$lib/elements/format-message';
|
||||||
import {
|
import {
|
||||||
TYPE,
|
TYPE,
|
||||||
type MessageFormatElement,
|
type MessageFormatElement,
|
||||||
type PluralElement,
|
type PluralElement,
|
||||||
type SelectElement,
|
type SelectElement,
|
||||||
} from '@formatjs/icu-messageformat-parser';
|
} from '@formatjs/icu-messageformat-parser';
|
||||||
|
import { IntlMessageFormat, type FormatXMLElementFn } from 'intl-messageformat';
|
||||||
import { locale as i18nLocale, json, type Translations } from 'svelte-i18n';
|
import { locale as i18nLocale, json, type Translations } from 'svelte-i18n';
|
||||||
import type { InterpolationValues } from '$lib/components/i18n/format-message';
|
|
||||||
|
|
||||||
type MessagePart = {
|
type MessagePart = {
|
||||||
message: string;
|
message: string;
|
@ -1,5 +1,5 @@
|
|||||||
import FormatTagB from '$lib/components/i18n/__test__/format-tag-b.svelte';
|
import FormatTagB from '$lib/elements/__test__/format-tag-b.svelte';
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import '@testing-library/jest-dom';
|
import '@testing-library/jest-dom';
|
||||||
import { render, screen } from '@testing-library/svelte';
|
import { render, screen } from '@testing-library/svelte';
|
||||||
import { init, locale, register, waitLocale, type Translations } from 'svelte-i18n';
|
import { init, locale, register, waitLocale, type Translations } from 'svelte-i18n';
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type { Translations } from 'svelte-i18n';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import FormatMessage from '../format-message.svelte';
|
|
||||||
import type { ComponentProps } from 'svelte';
|
import type { ComponentProps } from 'svelte';
|
||||||
|
import type { Translations } from 'svelte-i18n';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
key: Translations;
|
key: Translations;
|
@ -1,4 +1,4 @@
|
|||||||
import StarRating from '$lib/components/shared-components/star-rating.svelte';
|
import StarRating from '$lib/elements/StarRating.svelte';
|
||||||
import { render } from '@testing-library/svelte';
|
import { render } from '@testing-library/svelte';
|
||||||
|
|
||||||
describe('StarRating component', () => {
|
describe('StarRating component', () => {
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { Button, HStack, Modal, ModalBody, ModalFooter } from '@immich/ui';
|
import { Button, HStack, Modal, ModalBody, ModalFooter } from '@immich/ui';
|
||||||
import { mdiCancel } from '@mdi/js';
|
import { mdiCancel } from '@mdi/js';
|
||||||
import { t } from 'svelte-i18n';
|
import { t } from 'svelte-i18n';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { serverConfig } from '$lib/stores/server-config.store';
|
import { serverConfig } from '$lib/stores/server-config.store';
|
||||||
import { handleError } from '$lib/utils/handle-error';
|
import { handleError } from '$lib/utils/handle-error';
|
||||||
import { deleteUserAdmin, type UserAdminResponseDto, type UserResponseDto } from '@immich/sdk';
|
import { deleteUserAdmin, type UserAdminResponseDto, type UserResponseDto } from '@immich/sdk';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { handleError } from '$lib/utils/handle-error';
|
import { handleError } from '$lib/utils/handle-error';
|
||||||
import { restoreUserAdmin, type UserAdminResponseDto, type UserResponseDto } from '@immich/sdk';
|
import { restoreUserAdmin, type UserAdminResponseDto, type UserResponseDto } from '@immich/sdk';
|
||||||
import { Button, HStack, Modal, ModalBody, ModalFooter } from '@immich/ui';
|
import { Button, HStack, Modal, ModalBody, ModalFooter } from '@immich/ui';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import FormatMessage from '$lib/components/i18n/format-message.svelte';
|
import FormatMessage from '$lib/elements/FormatMessage.svelte';
|
||||||
import { Button, Modal, ModalBody, ModalFooter } from '@immich/ui';
|
import { Button, Modal, ModalBody, ModalFooter } from '@immich/ui';
|
||||||
import { t } from 'svelte-i18n';
|
import { t } from 'svelte-i18n';
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user