diff --git a/package.json b/package.json index c3c00c4cb..7c05f4356 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ "@appwrite.io/pink-icons": "0.25.0", "@appwrite.io/pink-icons-svelte": "https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4", "@appwrite.io/pink-legacy": "^1.0.3", - "@appwrite.io/pink-svelte": "https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@d68e5e4", + "@appwrite.io/pink-svelte": "https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@b39a7c4", "@popperjs/core": "^2.11.8", "@sentry/sveltekit": "^8.38.0", "@stripe/stripe-js": "^3.5.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 48b370384..6e47675f4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -27,8 +27,8 @@ importers: specifier: ^1.0.3 version: 1.0.3 '@appwrite.io/pink-svelte': - specifier: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@d68e5e4 - version: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@d68e5e4(react-dom@18.3.1(react@18.3.1))(svelte@5.25.3) + specifier: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@b39a7c4 + version: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@b39a7c4(react-dom@18.3.1(react@18.3.1))(svelte@5.25.3) '@popperjs/core': specifier: ^2.11.8 version: 2.11.8 @@ -258,14 +258,14 @@ packages: resolution: {tarball: https://pkg.pr.new/appwrite/appwrite/@appwrite.io/console@c2f54c6} version: 1.2.1 - '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4': - resolution: {tarball: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4} + '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@b39a7c45d4b8ebf03059018d195141c8d2b7c221': + resolution: {tarball: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@b39a7c45d4b8ebf03059018d195141c8d2b7c221} version: 1.0.0-next.7 peerDependencies: svelte: ^4.0.0 - '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4de190f223a64383f8b35e04624c577513': - resolution: {tarball: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4de190f223a64383f8b35e04624c577513} + '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4': + resolution: {tarball: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4} version: 1.0.0-next.7 peerDependencies: svelte: ^4.0.0 @@ -279,8 +279,8 @@ packages: '@appwrite.io/pink-legacy@1.0.3': resolution: {integrity: sha512-GGde5fmPhs+s6/3aFeMPc/kKADG/gTFkYQSy6oBN8pK0y0XNCLrZZgBv+EBbdhwdtqVEWXa0X85Mv9w7jcIlwQ==} - '@appwrite.io/pink-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@d68e5e4': - resolution: {tarball: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@d68e5e4} + '@appwrite.io/pink-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@b39a7c4': + resolution: {tarball: https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@b39a7c4} version: 1.0.0-next.85 peerDependencies: react-dom: ^18.0.0 @@ -3627,11 +3627,11 @@ snapshots: '@appwrite.io/console@https://pkg.pr.new/appwrite/appwrite/@appwrite.io/console@c2f54c6': {} - '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4(svelte@5.25.3)': + '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@b39a7c45d4b8ebf03059018d195141c8d2b7c221(svelte@5.25.3)': dependencies: svelte: 5.25.3 - '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4de190f223a64383f8b35e04624c577513(svelte@5.25.3)': + '@appwrite.io/pink-icons-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4(svelte@5.25.3)': dependencies: svelte: 5.25.3 @@ -3644,9 +3644,9 @@ snapshots: '@appwrite.io/pink-icons': 1.0.0 the-new-css-reset: 1.11.3 - '@appwrite.io/pink-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@d68e5e4(react-dom@18.3.1(react@18.3.1))(svelte@5.25.3)': + '@appwrite.io/pink-svelte@https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-svelte@b39a7c4(react-dom@18.3.1(react@18.3.1))(svelte@5.25.3)': dependencies: - '@appwrite.io/pink-icons-svelte': https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@d68e5e4de190f223a64383f8b35e04624c577513(svelte@5.25.3) + '@appwrite.io/pink-icons-svelte': https://pkg.pr.new/appwrite/pink/@appwrite.io/pink-icons-svelte@b39a7c45d4b8ebf03059018d195141c8d2b7c221(svelte@5.25.3) '@floating-ui/dom': 1.6.13 '@melt-ui/pp': 0.3.2(@melt-ui/svelte@0.86.6(svelte@5.25.3))(svelte@5.25.3) '@melt-ui/svelte': 0.86.6(svelte@5.25.3) diff --git a/src/lib/commandCenter/searchers/databases.ts b/src/lib/commandCenter/searchers/databases.ts index 2ba0a1359..f50a1474d 100644 --- a/src/lib/commandCenter/searchers/databases.ts +++ b/src/lib/commandCenter/searchers/databases.ts @@ -1,6 +1,4 @@ import { goto } from '$app/navigation'; -import { project } from '$routes/(console)/project-[region]-[project]/store'; -import { get } from 'svelte/store'; import type { Searcher } from '../commands'; import { sdk } from '$lib/stores/sdk'; import { base } from '$app/paths'; diff --git a/src/lib/components/filters/filtersModal.svelte b/src/lib/components/filters/filtersModal.svelte index a192a60ea..07d410ad2 100644 --- a/src/lib/components/filters/filtersModal.svelte +++ b/src/lib/components/filters/filtersModal.svelte @@ -11,14 +11,7 @@ } from '$lib/elements/forms'; import type { Writable } from 'svelte/store'; import Modal from '../modal.svelte'; - import { - addFilter, - generateTag, - operators, - queries, - ValidOperators, - type TagValue - } from './store'; + import { generateTag, operators, ValidOperators, type TagValue } from './store'; import type { Column } from '$lib/helpers/types'; import { TagList } from '.'; import { Icon, Layout } from '@appwrite.io/pink-svelte'; diff --git a/src/lib/components/filters/quickFilters.svelte b/src/lib/components/filters/quickFilters.svelte index c00316154..3e1d1142a 100644 --- a/src/lib/components/filters/quickFilters.svelte +++ b/src/lib/components/filters/quickFilters.svelte @@ -1,7 +1,7 @@ {#if hasInstallations} diff --git a/src/lib/components/labelCard.svelte b/src/lib/components/labelCard.svelte index 8f2cc80c4..366a3ccda 100644 --- a/src/lib/components/labelCard.svelte +++ b/src/lib/components/labelCard.svelte @@ -1,5 +1,5 @@ {#if !hidePages} diff --git a/src/lib/components/paginator.svelte b/src/lib/components/paginator.svelte index de410b087..ae8aaf9c4 100644 --- a/src/lib/components/paginator.svelte +++ b/src/lib/components/paginator.svelte @@ -12,6 +12,7 @@ hasLimit = false, name = 'items', gap = 's', + offset = $bindable(0), children }: { items: T[]; @@ -23,13 +24,12 @@ gap?: | ('none' | 'xxxs' | 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl') | undefined; + offset?: number; children: Snippet<[T[], number]>; } = $props(); let total = $derived(items.length); - let offset = $state(0); - let paginatedItems = $derived(items.slice(offset, offset + limit)); diff --git a/src/lib/components/searchQuery.svelte b/src/lib/components/searchQuery.svelte index 3c26004a8..2246d2a57 100644 --- a/src/lib/components/searchQuery.svelte +++ b/src/lib/components/searchQuery.svelte @@ -1,7 +1,7 @@ - (open = false)} /> + - -
- - - Execution ID - - {selectedLog?.$id} - - - - - - - -
- {#if selectedLog} - - - - - - - Method - - - {selectedLog.requestMethod} - - - - - Status code - - - = 400 - ? 'error' - : selectedLog.responseStatusCode === 0 - ? undefined - : 'success'} /> - - - - - Status - - - -
- - -
- - {`Scheduled to execute on ${toLocaleDateTime(selectedLog.scheduledAt)}`} - -
-
- - - - Triggered by - - - {capitalize(selectedLog.trigger)} - - - - - - Duration - - - {calculateTime(selectedLog.duration)} - - - - - - Created - - - {capitalize(timeFromNow(selectedLog.$createdAt))} - - -
- - - Path - -
- -
-
+
+ +
+ + + Execution ID + + {selectedLog?.$id} + - - - - - - - - - {/if} - + + + + + +
+ {#if selectedLog} + + + + + + + Method + + + {selectedLog.requestMethod} + + + + + Status code + + + = 400 + ? 'error' + : selectedLog.responseStatusCode === 0 + ? undefined + : 'success'} /> + + + + + Status + + + +
+ + +
+ + {`Scheduled to execute on ${toLocaleDateTime(selectedLog.scheduledAt)}`} + +
+
+ + + + Triggered by + + + {capitalize(selectedLog.trigger)} + + + + + + Duration + + + {calculateTime(selectedLog.duration)} + + + + + + Created + + + {capitalize(timeFromNow(selectedLog.$createdAt))} + + +
+ + + Path + +
+ +
+
+
+
+ + + + + + +
+ {/if} +
+
diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/executions/table.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/executions/table.svelte index fdcc79864..91efa2654 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/executions/table.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/executions/table.svelte @@ -3,7 +3,7 @@ import { toLocaleDateTime } from '$lib/helpers/date'; import type { Column } from '$lib/helpers/types'; import type { Models } from '@appwrite.io/console'; - import { Badge, Layout, Status, Table, Tooltip, Typography } from '@appwrite.io/pink-svelte'; + import { Badge, Status, Table, Tooltip, Typography } from '@appwrite.io/pink-svelte'; import Sheet from './sheet.svelte'; import { capitalize } from '$lib/helpers/string'; import { formatTimeDetailed } from '$lib/helpers/timeConversion'; diff --git a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/settings/executeFunction.svelte b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/settings/executeFunction.svelte index 2f074fec5..7155d476f 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/function-[function]/settings/executeFunction.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/function-[function]/settings/executeFunction.svelte @@ -2,9 +2,9 @@ import { base } from '$app/paths'; import { CardGrid, SvgIcon } from '$lib/components'; import { Button } from '$lib/elements/forms'; - import { timeFromNow, toLocaleDateTime } from '$lib/helpers/date'; + import { toLocaleDateTime } from '$lib/helpers/date'; import { project } from '$routes/(console)/project-[region]-[project]/store'; - import { Layout, Tooltip, Typography } from '@appwrite.io/pink-svelte'; + import { Layout, Typography } from '@appwrite.io/pink-svelte'; import { func } from '../store'; import { capitalize } from '$lib/helpers/string'; diff --git a/src/routes/(console)/project-[region]-[project]/functions/templates/+page.svelte b/src/routes/(console)/project-[region]-[project]/functions/templates/+page.svelte index 85e1a080a..6731bdde2 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/templates/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/functions/templates/+page.svelte @@ -27,6 +27,8 @@ export let data; + let offset = 0; + function applyFilter(filter: string, value: string, event: CustomEvent) { const target = new URL(page.url); if (event?.detail) { @@ -45,6 +47,7 @@ previous.forEach((n) => target.searchParams.append(filter, n)); } target.searchParams.delete('page'); + offset = 0; goto(target.toString()); } @@ -140,7 +143,7 @@
{#if data.templates?.length > 0} - + {#snippet children(paginatedItems: typeof data.templates)} {#each paginatedItems as template} diff --git a/src/routes/(console)/project-[region]-[project]/functions/templates/+page.ts b/src/routes/(console)/project-[region]-[project]/functions/templates/+page.ts index d70e17a1e..6c252e152 100644 --- a/src/routes/(console)/project-[region]-[project]/functions/templates/+page.ts +++ b/src/routes/(console)/project-[region]-[project]/functions/templates/+page.ts @@ -1,9 +1,9 @@ -import { Dependencies, PAGE_LIMIT } from '$lib/constants'; +import { Dependencies } from '$lib/constants'; import { getSearch } from '$lib/helpers/load'; import { sdk } from '$lib/stores/sdk'; import type { PageLoad } from './$types'; -export const load: PageLoad = async ({ url, route, depends, parent, params }) => { +export const load: PageLoad = async ({ url, depends, parent, params }) => { depends(Dependencies.FUNCTIONS); const search = getSearch(url); diff --git a/src/routes/(console)/project-[region]-[project]/messaging/header.svelte b/src/routes/(console)/project-[region]-[project]/messaging/header.svelte index 1e11749b1..d0e5082cf 100644 --- a/src/routes/(console)/project-[region]-[project]/messaging/header.svelte +++ b/src/routes/(console)/project-[region]-[project]/messaging/header.svelte @@ -6,7 +6,6 @@ import { Cover } from '$lib/layout'; import { Typography } from '@appwrite.io/pink-svelte'; - const projectId = page.params.project; const path = `${base}/project-${page.params.region}-${page.params.project}/messaging`; const tabs = [ { diff --git a/src/routes/(console)/project-[region]-[project]/messaging/message-[message]/sendModal.svelte b/src/routes/(console)/project-[region]-[project]/messaging/message-[message]/sendModal.svelte index 47e7f99d8..3fb7c5d22 100644 --- a/src/routes/(console)/project-[region]-[project]/messaging/message-[message]/sendModal.svelte +++ b/src/routes/(console)/project-[region]-[project]/messaging/message-[message]/sendModal.svelte @@ -1,6 +1,5 @@ diff --git a/src/routes/(console)/project-[region]-[project]/settings/webhooks/create/+page.svelte b/src/routes/(console)/project-[region]-[project]/settings/webhooks/create/+page.svelte index b367c1d3a..4b21c8848 100644 --- a/src/routes/(console)/project-[region]-[project]/settings/webhooks/create/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/settings/webhooks/create/+page.svelte @@ -16,7 +16,7 @@ let showExitModal = false; let name = '', - events = [], + events: string[] = [], url = '', security = true, httpUser = '', diff --git a/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte b/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte index 893da5fbb..97021ef42 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/(components)/openOnMobileModal.svelte @@ -8,7 +8,7 @@ import { protocol } from '$routes/(console)/store'; import type { Models } from '@appwrite.io/console'; import { IconDuplicate } from '@appwrite.io/pink-icons-svelte'; - import { Icon, Image, Input, Layout, Tooltip } from '@appwrite.io/pink-svelte'; + import { Icon, Image, Layout, Tooltip } from '@appwrite.io/pink-svelte'; let { show = $bindable(), diff --git a/src/routes/(console)/project-[region]-[project]/sites/(components)/siteCard.svelte b/src/routes/(console)/project-[region]-[project]/sites/(components)/siteCard.svelte index a298df23c..f01665e55 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/(components)/siteCard.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/(components)/siteCard.svelte @@ -29,7 +29,6 @@ export let variant: 'primary' | 'secondary' = 'primary'; let show = false; - const siteUrl = proxyRuleList.total > 0 ? proxyRuleList.rules[0].domain : undefined; $: totalSize = humanFileSize(deployment?.totalSize ?? 0); diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/configuration.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/configuration.svelte index f8491a38f..cc3e4cf16 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/configuration.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/configuration.svelte @@ -135,9 +135,6 @@
- - Environment variables - Set up environment variables to securely manage keys and settings for your project. diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/+page.svelte index 1756560dd..d50ab92f2 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/+page.svelte @@ -13,6 +13,8 @@ export let data; + let offset = 0; + function applyFilter(filter: string, value: string, event: CustomEvent) { const target = new URL(page.url); if (event?.detail) { @@ -31,6 +33,7 @@ previous.forEach((n) => target.searchParams.append(filter, n)); } target.searchParams.delete('page'); + offset = 0; goto(target.toString()); } @@ -47,6 +50,8 @@ } url.searchParams.delete('page'); + offset = 0; + goto(url.toString(), { keepFocus: true }); }, 250); @@ -125,7 +130,13 @@ {#if data.templates?.length > 0} - + {#snippet children(paginatedItems: typeof data.templates)} {#each paginatedItems as template (template.name)} diff --git a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte index 51f11db5d..7568aa58d 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/create-site/templates/template-[template]/+page.svelte @@ -24,7 +24,7 @@ import Details from '../../details.svelte'; import Configuration from './configuration.svelte'; import Aside from '../../aside.svelte'; - import { Adapter, BuildRuntime, Framework, ID } from '@appwrite.io/console'; + import { Adapter, BuildRuntime, Framework, ID, type Models } from '@appwrite.io/console'; import { ConnectBehaviour, NewRepository, @@ -56,12 +56,12 @@ let rootDir = './'; let connectBehaviour: 'now' | 'later' = 'now'; let repositoryBehaviour: 'new' | 'existing' = 'new'; - let repositoryName = undefined; + let repositoryName: string = undefined; let repositoryPrivate = true; let selectedInstallationId = ''; let selectedRepository = ''; let showSiteConfig = false; - let variables = []; + let variables: Partial[] = []; let silentMode = false; onMount(async () => { diff --git a/src/routes/(console)/project-[region]-[project]/sites/header.svelte b/src/routes/(console)/project-[region]-[project]/sites/header.svelte index fcf9e71b7..511fcc0d3 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/header.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/header.svelte @@ -6,7 +6,6 @@ import { Cover } from '$lib/layout'; import { Typography } from '@appwrite.io/pink-svelte'; - $: projectId = page.params.project; $: path = `${base}/project-${page.params.region}-${page.params.project}/sites`; $: tabs = [ { diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+layout.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+layout.svelte index 7ac2ca58f..9c248525f 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+layout.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+layout.svelte @@ -12,7 +12,7 @@ import { IconList, IconPlus, IconSearch } from '@appwrite.io/pink-icons-svelte'; onMount(() => { - let previousStatus = null; + let previousStatus: string = null; return sdk.forConsole.client.subscribe('console', (message) => { if (previousStatus === message.payload.status) { return; diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+page.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+page.svelte index bd2b77b96..7d2f8b9b1 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/deployments/+page.svelte @@ -1,5 +1,5 @@ - (open = false)} /> + - -
- - - Log ID - - {selectedLog?.$id} - - - - - - - -
- {#if selectedLog} - - - - - - - - Method - - - {selectedLog.requestMethod} - - - - - Status code - - - = 400 - ? 'error' - : 'success'} /> - - - - - Duration - - - {calculateTime(selectedLog.duration)} - - - - - Created - - - {capitalize(timeFromNow(selectedLog.$createdAt))} - - - - - - - - Path - -
- -
-
+
+ +
+ + + Log ID + + {selectedLog?.$id} + - - - - - - - - - {/if} - + + + + + +
+ {#if selectedLog} + + + + + + + + Method + + + {selectedLog.requestMethod} + + + + + Status code + + + = 400 + ? 'error' + : 'success'} /> + + + + + Duration + + + {calculateTime(selectedLog.duration)} + + + + + Created + + + {capitalize(timeFromNow(selectedLog.$createdAt))} + + + + + + + + Path + +
+ +
+
+
+
+ + + + + + +
+ {/if} +
+
diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/logs/table.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/logs/table.svelte index d87008b87..bb1cc5946 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/logs/table.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/logs/table.svelte @@ -2,7 +2,7 @@ import { Id } from '$lib/components'; import type { Column } from '$lib/helpers/types'; import type { Models } from '@appwrite.io/console'; - import { Badge, Layout, Table, Typography } from '@appwrite.io/pink-svelte'; + import { Badge, Table, Typography } from '@appwrite.io/pink-svelte'; import Sheet from './sheet.svelte'; import DualTimeView from '$lib/components/dualTimeView.svelte'; diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/+page.ts b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/+page.ts index 325a881a7..240a854f1 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/+page.ts +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/+page.ts @@ -1,6 +1,5 @@ import { sdk } from '$lib/stores/sdk'; import { Dependencies } from '$lib/constants'; -import { page } from '$app/state'; export const load = async ({ params, depends, parent }) => { depends(Dependencies.VARIABLES); diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateBuildSettings.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateBuildSettings.svelte index 1b2d9721e..b984d9ff7 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateBuildSettings.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateBuildSettings.svelte @@ -15,19 +15,76 @@ import { getFrameworkIcon } from '$lib/stores/sites'; import { page } from '$app/state'; - export let site: Models.Site; - export let frameworks: Models.Framework[]; - let selectedFramework: Models.Framework = frameworks.find( - (framework) => framework.key === site.framework + let { + site, + frameworks + }: { + site: Models.Site; + frameworks: Models.Framework[]; + } = $props(); + + let frameworkKey = $state(site.framework); + let installCommand = $state(site?.installCommand); + let buildCommand = $state(site?.buildCommand); + let outputDirectory = $state(site?.outputDirectory); + let fallback = $state(site?.fallbackFile); + let adapter: Adapter = $state(site.adapter as Adapter); + + let selectedFramework: Models.Framework = $derived( + frameworks.find((framework) => framework.key === site.framework) ); - let frameworkKey = site.framework; - let adapter: Adapter = site.adapter as Adapter; - let installCommand = site?.installCommand; - let buildCommand = site?.buildCommand; - let outputDirectory = site?.outputDirectory; - let fallback = site?.fallbackFile; - let isButtonDisabled = true; - let showFallback = site.adapter === Adapter.Static; + let showFallback = $derived(adapter === Adapter.Static); + let hasChanges = $derived( + installCommand === site?.installCommand && + buildCommand === site?.buildCommand && + outputDirectory === site?.outputDirectory && + selectedFramework?.key === site?.framework && + fallback === (site?.fallbackFile || undefined) && + adapter === site?.adapter + ); + let frameworkAdapterData = $derived( + selectedFramework.adapters.find((a) => a.key === adapter) ?? selectedFramework.adapters[0] + ); + + $effect(() => { + if (selectedFramework?.key !== site.framework) { + //Update adapter + const singleAdapter = selectedFramework?.adapters?.length <= 1; + if (singleAdapter) { + const hasSSR = selectedFramework?.adapters?.some((a) => a?.key === Adapter.Ssr); + const hasStatic = selectedFramework?.adapters?.some( + (a) => a?.key === Adapter.Static + ); + if (!hasSSR) { + adapter = Adapter.Static; + } else if (!hasStatic) { + adapter = Adapter.Ssr; + } + } + + //Update values + const data = selectedFramework.adapters.find((a) => a.key === adapter); + installCommand = data.installCommand; + buildCommand = data.buildCommand; + outputDirectory = data.outputDirectory; + adapter = selectedFramework.adapters[0].key as Adapter; + } else { + adapter = site.adapter as Adapter; + installCommand = site?.installCommand ?? frameworkAdapterData.installCommand; + buildCommand = site?.buildCommand ?? frameworkAdapterData.buildCommand; + outputDirectory = site?.outputDirectory ?? frameworkAdapterData.outputDirectory; + } + }); + + $effect(() => { + if (adapter === Adapter.Static) { + if (!fallback) { + fallback ||= selectedFramework.adapters.find( + (a) => a.key === Adapter.Static + ).fallbackFile; + } + } + }); async function update() { let adptr = selectedFramework.adapters.find((a) => a.key === adapter); @@ -50,12 +107,13 @@ outputDirectory || undefined, (site?.buildRuntime as BuildRuntime) || undefined, (adptr?.key as Adapter) || undefined, - fallback || undefined, + adptr?.key === 'static' ? fallback || undefined : undefined, site.installationId || undefined, site.providerRepositoryId || undefined, site.providerBranch || undefined, site.providerSilentMode || undefined, - site.providerRootDirectory || undefined + site.providerRootDirectory || undefined, + site?.specification || undefined ); await invalidate(Dependencies.SITE); addNotification({ @@ -72,41 +130,16 @@ } } - $: if ( - installCommand === site?.installCommand && - buildCommand === site?.buildCommand && - outputDirectory === site?.outputDirectory && - selectedFramework?.key === site?.framework && - fallback === (site?.fallbackFile || undefined) && - adapter === site?.adapter - ) { - isButtonDisabled = true; - } else { - // console.log(adapter, site?.adapter); - isButtonDisabled = false; - } + function reset(type: 'installCommand' | 'buildCommand' | 'outputDirectory') { + const data = selectedFramework.adapters.find((a) => a.key === adapter); - $: frameworkAdapterData = selectedFramework.adapters.find((a) => a.key === adapter); - - $: if (adapter === Adapter.Static) { - showFallback = true; - fallback ||= selectedFramework.adapters.find((a) => a.key === Adapter.Static).fallbackFile; - } else { - showFallback = false; - fallback = undefined; - } - - $: if (fallback === '') { - fallback = null; - } - - $: hasSSR = selectedFramework?.adapters?.some((a) => a?.key === Adapter.Ssr); - $: hasStatic = selectedFramework?.adapters?.some((a) => a?.key === Adapter.Static); - $: if (selectedFramework?.adapters?.length <= 1 || !hasSSR) { - adapter = Adapter.Static; - } - $: if (selectedFramework?.adapters?.length <= 1 || !hasStatic) { - adapter = Adapter.Ssr; + if (type === 'installCommand') { + installCommand = site?.installCommand ?? data.installCommand; + } else if (type === 'buildCommand') { + buildCommand = site?.buildCommand ?? data.buildCommand; + } else if (type === 'outputDirectory') { + outputDirectory = site?.outputDirectory ?? data.outputDirectory; + } } @@ -199,16 +232,10 @@ id="installCommand" label="Install command" bind:value={installCommand} - placeholder={frameworkAdapterData?.installCommand} /> + placeholder={frameworkAdapterData?.installCommand || + 'Enter install command'} /> -
@@ -217,15 +244,9 @@ id="buildCommand" label="Build command" bind:value={buildCommand} - placeholder={frameworkAdapterData?.buildCommand} /> -
@@ -234,15 +255,9 @@ id="outputDirectory" label="Output directory" bind:value={outputDirectory} - placeholder={frameworkAdapterData?.outputDirectory} /> -
@@ -267,7 +282,7 @@ - + diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateLogging.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateLogging.svelte index 4e8b29e5f..e3e66b659 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateLogging.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateLogging.svelte @@ -21,20 +21,21 @@ site.$id, site.name, site.framework as Framework, - site.enabled || undefined, + site?.enabled || undefined, logging, - site.timeout || undefined, - site.installCommand || undefined, - site.buildCommand || undefined, - site.outputDirectory || undefined, + site?.timeout || undefined, + site?.installCommand || undefined, + site?.buildCommand || undefined, + site?.outputDirectory || undefined, (site?.buildRuntime as BuildRuntime) || undefined, - site.adapter as Adapter, - site.fallbackFile || undefined, - site.installationId || undefined, - site.providerRepositoryId || undefined, - site.providerBranch || undefined, - site.providerSilentMode || undefined, - site.providerRootDirectory || undefined + site?.adapter as Adapter, + site?.fallbackFile || undefined, + site?.installationId || undefined, + site?.providerRepositoryId || undefined, + site?.providerBranch || undefined, + site?.providerSilentMode || undefined, + site?.providerRootDirectory || undefined, + site?.specification || undefined ); await invalidate(Dependencies.SITE); addNotification({ diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateName.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateName.svelte index 681b7cd2c..faa92563e 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateName.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateName.svelte @@ -25,20 +25,21 @@ site.$id, siteName, site.framework as Framework, - site.enabled || undefined, - site.logging || undefined, - site.timeout || undefined, - site.installCommand || undefined, - site.buildCommand || undefined, - site.outputDirectory || undefined, + site?.enabled || undefined, + site?.logging || undefined, + site?.timeout || undefined, + site?.installCommand || undefined, + site?.buildCommand || undefined, + site?.outputDirectory || undefined, (site?.buildRuntime as BuildRuntime) || undefined, - site.adapter as Adapter, - site.fallbackFile || undefined, - site.installationId || undefined, - site.providerRepositoryId || undefined, - site.providerBranch || undefined, - site.providerSilentMode || undefined, - site.providerRootDirectory || undefined + site?.adapter as Adapter, + site?.fallbackFile || undefined, + site?.installationId || undefined, + site?.providerRepositoryId || undefined, + site?.providerBranch || undefined, + site?.providerSilentMode || undefined, + site?.providerRootDirectory || undefined, + site?.specification || undefined ); await invalidate(Dependencies.SITE); addNotification({ diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRepository.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRepository.svelte index 80ee57d8e..65fcd5c8a 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRepository.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRepository.svelte @@ -68,20 +68,21 @@ site.$id, site.name, site?.framework as Framework, - site.enabled || undefined, - site.logging || undefined, - site.timeout || undefined, - site.installCommand || undefined, - site.buildCommand || undefined, - site.outputDirectory || undefined, + site?.enabled || undefined, + site?.logging || undefined, + site?.timeout || undefined, + site?.installCommand || undefined, + site?.buildCommand || undefined, + site?.outputDirectory || undefined, (site?.buildRuntime as BuildRuntime) || undefined, - site.adapter as Adapter, - site.fallbackFile || undefined, - site.installationId || undefined, - site.providerRepositoryId || undefined, + site?.adapter as Adapter, + site?.fallbackFile || undefined, + site?.installationId || undefined, + site?.providerRepositoryId || undefined, selectedBranch || undefined, silentMode || undefined, - selectedDir || undefined + selectedDir || undefined, + site?.specification || undefined ); await invalidate(Dependencies.SITE); addNotification({ diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateResourceLimits.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateResourceLimits.svelte index 57b3840da..8ff56517e 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateResourceLimits.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateResourceLimits.svelte @@ -26,20 +26,20 @@ site.$id, site.name, site.framework as Framework, - site.enabled || undefined, - site.logging || undefined, - site.timeout || undefined, - site.installCommand || undefined, - site.buildCommand || undefined, - site.outputDirectory || undefined, + site?.enabled || undefined, + site?.logging || undefined, + site?.timeout || undefined, + site?.installCommand || undefined, + site?.buildCommand || undefined, + site?.outputDirectory || undefined, (site?.buildRuntime as BuildRuntime) || undefined, - site.adapter as Adapter, - site.fallbackFile || undefined, - site.installationId || undefined, - site.providerRepositoryId || undefined, - site.providerBranch || undefined, - site.providerSilentMode || undefined, - site.providerRootDirectory || undefined, + site?.adapter as Adapter, + site?.fallbackFile || undefined, + site?.installationId || undefined, + site?.providerRepositoryId || undefined, + site?.providerBranch || undefined, + site?.providerSilentMode || undefined, + site?.providerRootDirectory || undefined, specification || undefined ); await invalidate(Dependencies.FUNCTION); diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRuntimeSettings.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRuntimeSettings.svelte index e1385865d..66cf5b72f 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRuntimeSettings.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateRuntimeSettings.svelte @@ -31,20 +31,21 @@ site.$id, site.name, site?.framework as Framework, - site.enabled || undefined, - site.logging || undefined, - site.timeout || undefined, - site.installCommand || undefined, - site.buildCommand || undefined, - site.outputDirectory || undefined, + site?.enabled || undefined, + site?.logging || undefined, + site?.timeout || undefined, + site?.installCommand || undefined, + site?.buildCommand || undefined, + site?.outputDirectory || undefined, (buildRuntime as BuildRuntime) || undefined, - site.adapter as Adapter, - site.fallbackFile || undefined, - site.installationId || undefined, - site.providerRepositoryId || undefined, - site.providerBranch || undefined, - site.providerSilentMode || undefined, - site.providerRootDirectory || undefined + site?.adapter as Adapter, + site?.fallbackFile || undefined, + site?.installationId || undefined, + site?.providerRepositoryId || undefined, + site?.providerBranch || undefined, + site?.providerSilentMode || undefined, + site?.providerRootDirectory || undefined, + site?.specification || undefined ); await invalidate(Dependencies.SITE); addNotification({ diff --git a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateTimeout.svelte b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateTimeout.svelte index f91e7630c..eb088cf4e 100644 --- a/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateTimeout.svelte +++ b/src/routes/(console)/project-[region]-[project]/sites/site-[site]/settings/updateTimeout.svelte @@ -24,20 +24,21 @@ site.$id, site.name, site?.framework as Framework, - site.enabled || undefined, - site.logging || undefined, + site?.enabled || undefined, + site?.logging || undefined, timeout || undefined, - site.installCommand || undefined, - site.buildCommand || undefined, - site.outputDirectory || undefined, + site?.installCommand || undefined, + site?.buildCommand || undefined, + site?.outputDirectory || undefined, (site?.buildRuntime as BuildRuntime) || undefined, - site.adapter as Adapter, - site.fallbackFile || undefined, - site.installationId || undefined, - site.providerRepositoryId || undefined, - site.providerBranch || undefined, - site.providerSilentMode || undefined, - site.providerRootDirectory || undefined + site?.adapter as Adapter, + site?.fallbackFile || undefined, + site?.installationId || undefined, + site?.providerRepositoryId || undefined, + site?.providerBranch || undefined, + site?.providerSilentMode || undefined, + site?.providerRootDirectory || undefined, + site?.specification || undefined ); await invalidate(Dependencies.SITE); addNotification({ diff --git a/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/+page.svelte b/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/+page.svelte index 149a86c68..859cf529c 100644 --- a/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/+page.svelte @@ -29,7 +29,6 @@ let showDelete = false; let selectedFile: Models.File = null; - const projectId = page.params.project; const bucketId = page.params.bucket; function getPreview(fileId: string) { diff --git a/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/+page.svelte b/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/+page.svelte index 87f7ac765..e85d0c2a9 100644 --- a/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/+page.svelte @@ -21,15 +21,12 @@ Alert, Badge, Button as PinkButton, - InteractiveText, Layout, Icon, - Popover, Table, Typography } from '@appwrite.io/pink-svelte'; import { - IconChevronRight, IconDotsHorizontal, IconDuplicate, IconKey, @@ -42,6 +39,7 @@ import { type Models, Permission, Role } from '@appwrite.io/console'; import { isSmallViewport } from '$lib/stores/viewport'; import { Menu } from '$lib/components/menu'; + import { SHOW_INIT_FEATURES } from '$lib/system'; let showFileAlert = true; @@ -212,7 +210,10 @@
-

Filename: {$file.name}

+

+ Filename: + {$file.name} +

MIME type: {$file.mimeType}

Size: {calculateSize($file.sizeOriginal)}

Created: {toLocaleDate($file.$createdAt)}

@@ -231,51 +232,55 @@ - - File tokens - Use tokens to provide public access to the file. - - {#if $tokens.total} - - - + {#if SHOW_INIT_FEATURES} + + File tokens + Use tokens to provide public access to the file. + + {#if $tokens.total} + + + - - - {#each $columns as { id, title } (id)} - {title} - {/each} - + + + {#each $columns as { id, title } (id)} + {title} + {/each} + - {#each $tokens.tokens as token} - - {toLocaleDate(token.$createdAt)} + {#each $tokens.tokens as token} + + {toLocaleDate(token.$createdAt)} - - - {@const expiration = getExpiryDetails(token)} - {token.expire ? cleanFormattedDate(token.expire) : 'Never'} + + + {@const expiration = getExpiryDetails(token)} + {token.expire + ? cleanFormattedDate(token.expire) + : 'Never'} - {#if expiration.status} - - {/if} - - + {#if expiration.status} + + {/if} + + - {token.accessedAt - ? cleanFormattedDate(token.accessedAt, true) - : 'Never'} + {token.accessedAt + ? cleanFormattedDate(token.accessedAt, true) + : 'Never'} @@ -284,53 +289,54 @@ - - - + + + + { + toggle(e); + showCopyUrlModal = true; + selectedFileToken = token; + }} + leadingIcon={IconDuplicate}> + Copy URL + + { toggle(e); - showCopyUrlModal = true; + showManageToken = true; selectedFileToken = token; - }} - leadingIcon={IconDuplicate}> - Copy URL + }}> + Edit expiry + + { + toggle(e); + tokenDeleteMode = true; + showManageToken = true; + selectedFileToken = token; + }}> + Delete - { - toggle(e); - showManageToken = true; - selectedFileToken = token; - }}> - Edit expiry - - { - toggle(e); - tokenDeleteMode = true; - showManageToken = true; - selectedFileToken = token; - }}> - Delete - - - - - - - - {/each} - - {:else} - (showManageToken = true)}>Create new file token - {/if} - - - + + + + + + {/each} + + {:else} + (showManageToken = true)} + >Create new file token + {/if} + + + {/if} Permissions Assign read or write permissions at the bucket level or file level. If bucket level permissions diff --git a/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/fileTokensCopyUrl.svelte b/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/fileTokensCopyUrl.svelte index f592d9de1..9a179bb8d 100644 --- a/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/fileTokensCopyUrl.svelte +++ b/src/routes/(console)/project-[region]-[project]/storage/bucket-[bucket]/file-[file]/fileTokensCopyUrl.svelte @@ -2,7 +2,7 @@ import { page } from '$app/state'; import { sdk } from '$lib/stores/sdk'; import type { Models } from '@appwrite.io/console'; - import { Modal, Card, CopyInput } from '$lib/components'; + import { Modal, CopyInput } from '$lib/components'; import { Button } from '$lib/elements/forms'; import { Alert, Layout, Tabs, Typography } from '@appwrite.io/pink-svelte'; diff --git a/src/routes/(console)/project-[region]-[project]/storage/table.svelte b/src/routes/(console)/project-[region]-[project]/storage/table.svelte index c1b949c66..accff4d00 100644 --- a/src/routes/(console)/project-[region]-[project]/storage/table.svelte +++ b/src/routes/(console)/project-[region]-[project]/storage/table.svelte @@ -8,7 +8,6 @@ import { Table } from '@appwrite.io/pink-svelte'; export let data: PageData; - const projectId = page.params.project; diff --git a/src/routes/(public)/auth/preview/access/+page.svelte b/src/routes/(public)/auth/preview/access/+page.svelte index f69f3783f..be0b3d4cc 100644 --- a/src/routes/(public)/auth/preview/access/+page.svelte +++ b/src/routes/(public)/auth/preview/access/+page.svelte @@ -103,9 +103,9 @@ } } - async function requestAccess() { - //TODO: Implement request access - } + // async function requestAccess() { + // //TODO: Implement request access + // } $: console.log(data); diff --git a/src/routes/(public)/card/+layout.svelte b/src/routes/(public)/card/+layout.svelte index eaebf310b..b795ff5b0 100644 --- a/src/routes/(public)/card/+layout.svelte +++ b/src/routes/(public)/card/+layout.svelte @@ -1,20 +1,9 @@ -