diff --git a/e2e/steps/pro-project.ts b/e2e/steps/pro-project.ts index 05c95895f..0762132c4 100644 --- a/e2e/steps/pro-project.ts +++ b/e2e/steps/pro-project.ts @@ -14,7 +14,7 @@ export async function enterCreditCard(page: Page) { state: 'visible' }); await page.getByPlaceholder('cardholder').fill('Test User'); - const stripe = page.frameLocator('[title="Secure payment input frame"]'); + const stripe = page.locator('[title="Secure payment input frame"]').nth(0).contentFrame(); await stripe.locator('id=Field-numberInput').fill('4242424242424242'); await stripe.locator('id=Field-expiryInput').fill('1250'); await stripe.locator('id=Field-cvcInput').fill('123'); diff --git a/package.json b/package.json index f41ea9556..7c8f1fa3f 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ }, "dependencies": { "@ai-sdk/svelte": "^1.1.24", - "@appwrite.io/console": "https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@2289", + "@appwrite.io/console": "^1.10.0", "@appwrite.io/pink-icons": "0.25.0", "@appwrite.io/pink-icons-svelte": "^2.0.0-RC.1", "@appwrite.io/pink-legacy": "^1.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3c18de482..eec966560 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: specifier: ^1.1.24 version: 1.1.24(svelte@5.25.3)(zod@3.24.3) '@appwrite.io/console': - specifier: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@2289 - version: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@2289 + specifier: ^1.10.0 + version: 1.10.0 '@appwrite.io/pink-icons': specifier: 0.25.0 version: 0.25.0 @@ -257,9 +257,8 @@ packages: '@analytics/type-utils@0.6.2': resolution: {integrity: sha512-TD+xbmsBLyYy/IxFimW/YL/9L2IEnM7/EoV9Aeh56U64Ify8o27HJcKjo38XY9Tcn0uOq1AX3thkKgvtWvwFQg==} - '@appwrite.io/console@https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@2289': - resolution: {tarball: https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@2289} - version: 1.9.0 + '@appwrite.io/console@1.10.0': + resolution: {integrity: sha512-7ErAZgS0djmB41ZFXPTlJH5kBNvJeKv2UHOEcI6uAOyXO4UoVWlhQk0D/3oktNylwOsr/K/98EWfsUDeYbq68w==} '@appwrite.io/pink-icons-svelte@2.0.0-RC.1': resolution: {integrity: sha512-iLFlV55hj8mGuAbmxJGenxN5RaZMmVT4GJb9dv/MP1xBAtYibFq7JvBcxm18qV2KU8c31Rntf+Ub4GL7HwqTYg==} @@ -3646,7 +3645,7 @@ snapshots: '@analytics/type-utils@0.6.2': {} - '@appwrite.io/console@https://pkg.pr.new/appwrite-labs/cloud/@appwrite.io/console@2289': {} + '@appwrite.io/console@1.10.0': {} '@appwrite.io/pink-icons-svelte@2.0.0-RC.1(svelte@5.25.3)': dependencies: diff --git a/src/lib/components/filters/content.svelte b/src/lib/components/filters/content.svelte index 1fd218fb9..e93c4bf5a 100644 --- a/src/lib/components/filters/content.svelte +++ b/src/lib/components/filters/content.svelte @@ -85,7 +85,11 @@
-
+ { + e.preventDefault(); + addFilterAndReset(); + }}> ; type TeamPreferences = { names?: string[]; }; -type PreferencesStore = { - [key: string]: Preferences; +type ConsolePreferencesStore = { + [key: string]: ConsolePreferences; collections?: { - [key: string]: Preferences['columns']; + [key: string]: ConsolePreferences['columns']; }; displayNames?: { [key: string]: TeamPreferences['names']; }; } & { hideAiDisclaimer?: boolean }; -async function updateConsolePreferences(store: PreferencesStore): Promise { +async function updateConsolePreferences(store: ConsolePreferencesStore): Promise { const currentPreferences = get(user)?.prefs ?? (await sdk.forConsole.account.getPrefs()); if (!currentPreferences?.console || Array.isArray(currentPreferences.console)) { currentPreferences.console = {}; @@ -43,8 +46,8 @@ async function updateConsolePreferences(store: PreferencesStore): Promise } function createPreferences() { - const { subscribe, set, update } = writable({}); - let preferences: PreferencesStore = {}; + const { subscribe, set, update } = writable({}); + let preferences: ConsolePreferencesStore = {}; if (browser) { // fresh fetch. @@ -73,9 +76,9 @@ function createPreferences() { /** * Update the local store and then synchronizes them on user prefs. */ - function updateAndSync(callback: (prefs: PreferencesStore) => void): Promise { - let oldPrefsSnapshot: PreferencesStore; - let newPrefsSnapshot: PreferencesStore; + function updateAndSync(callback: (prefs: ConsolePreferencesStore) => void): Promise { + let oldPrefsSnapshot: ConsolePreferencesStore; + let newPrefsSnapshot: ConsolePreferencesStore; update((currentPrefs) => { oldPrefsSnapshot = structuredClone(currentPrefs); @@ -96,7 +99,7 @@ function createPreferences() { subscribe, set, update, - get: (route?: Page['route']): Preferences => { + get: (route?: Page['route']): ConsolePreferences => { const parsedRoute = route ?? page.route; return ( preferences?.[parsedRoute.id] ?? { @@ -106,10 +109,10 @@ function createPreferences() { } ); }, - getCustomCollectionColumns: (collectionId: string): Preferences['columns'] => { + getCustomCollectionColumns: (collectionId: string): ConsolePreferences['columns'] => { return preferences?.collections?.[collectionId] ?? []; }, - setLimit: (limit: Preferences['limit']) => + setLimit: (limit: ConsolePreferences['limit']) => updateAndSync((n) => { const path = page.route.id; @@ -122,7 +125,7 @@ function createPreferences() { return n; }), - setView: (view: Preferences['view']) => + setView: (view: ConsolePreferences['view']) => updateAndSync((n) => { const path = page.route.id; @@ -135,7 +138,7 @@ function createPreferences() { return n; }), - setColumns: (columns: Preferences['columns']) => + setColumns: (columns: ConsolePreferences['columns']) => updateAndSync((n) => { const path = page.route.id; @@ -148,7 +151,10 @@ function createPreferences() { return n; }), - setCustomCollectionColumns: (collectionId: string, columns: Preferences['columns']) => + setCustomCollectionColumns: ( + collectionId: string, + columns: ConsolePreferences['columns'] + ) => updateAndSync((n) => { if (!n?.collections?.[collectionId]) { n ??= {}; diff --git a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/+layout.svelte b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/+layout.svelte index d743680f2..5e0f7b61e 100644 --- a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/+layout.svelte +++ b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/+layout.svelte @@ -61,7 +61,7 @@ group: 'databases', icon: IconPlus, rank: page.url.pathname.endsWith('backups') ? 10 : 0, - disabled: !isCloud || !$currentPlan.backupsEnabled + disabled: !isCloud || !$currentPlan?.backupsEnabled }, { label: 'Create manual backup', @@ -77,7 +77,7 @@ group: 'databases', icon: IconPlus, rank: page.url.pathname.endsWith('backups') ? 10 : 0, - disabled: !isCloud || !$currentPlan.backupsEnabled + disabled: !isCloud || !$currentPlan?.backupsEnabled }, { label: 'Go to collections', diff --git a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/collection-[collection]/document-[document]/settings/+page.svelte b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/collection-[collection]/document-[document]/settings/+page.svelte index abfab7dee..9adcfe5f1 100644 --- a/src/routes/(console)/project-[region]-[project]/databases/database-[database]/collection-[collection]/document-[document]/settings/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/databases/database-[database]/collection-[collection]/document-[document]/settings/+page.svelte @@ -13,7 +13,7 @@ import { Dependencies } from '$lib/constants'; import { Submit, trackEvent, trackError } from '$lib/actions/analytics'; import { collection } from '../../store'; - import { page } from '$app/stores'; + import { page } from '$app/state'; import { Alert } from '@appwrite.io/pink-svelte'; let showDelete = false; @@ -23,13 +23,15 @@ async function updatePermissions() { try { + const { $databaseId, $collectionId, $id: documentId } = $doc; + await sdk - .forProject($page.params.region, $page.params.project) + .forProject(page.params.region, page.params.project) .databases.updateDocument( - $doc.$databaseId, - $doc.$collectionId, - $doc.$id, - $doc.data, + $databaseId, + $collectionId, + documentId, + undefined, permissions ); await invalidate(Dependencies.DOCUMENT); diff --git a/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte b/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte index 6f657be43..7a07027c3 100644 --- a/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte +++ b/src/routes/(console)/project-[region]-[project]/settings/domains/add-domain/+page.svelte @@ -56,9 +56,17 @@ await goto(routeBase); await invalidate(Dependencies.DOMAINS); } else { - await goto( - `${routeBase}/add-domain/verify-${domainName}?rule=${rule.$id}&domain=${domain.$id}` - ); + let redirect = `${routeBase}/add-domain/verify-${domainName}?rule=${rule.$id}`; + + if (isCloud) { + /** + * Domains are only on cloud! + * Self-hosted instances have rules. + */ + redirect += `&domain=${domain.$id}`; + } + + await goto(redirect); await invalidate(Dependencies.DOMAINS); } } catch (error) { diff --git a/src/routes/(console)/project-[region]-[project]/settings/domains/store.ts b/src/routes/(console)/project-[region]-[project]/settings/domains/store.ts deleted file mode 100644 index 8d7cb0d66..000000000 --- a/src/routes/(console)/project-[region]-[project]/settings/domains/store.ts +++ /dev/null @@ -1,25 +0,0 @@ -import type { Column } from '$lib/helpers/types'; -import { writable } from 'svelte/store'; - -export const columns = writable([ - { - id: 'domain', - title: 'Domain', - type: 'string', - format: 'string', - width: { min: 200, max: 550 } - }, - - { - id: 'redirectUrl', - title: 'Redirect to', - type: 'string', - width: { min: 120, max: 400 } - }, - { - id: 'deploymentVcsProviderBranch', - title: 'Production branch', - type: 'string', - width: { min: 90, max: 220 } - } -]); diff --git a/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte b/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte index d2de8f381..ee740c672 100644 --- a/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte +++ b/src/routes/(console)/project-[region]-[project]/settings/domains/table.svelte @@ -15,7 +15,6 @@ } from '@appwrite.io/pink-svelte'; import DeleteDomainModal from './deleteDomainModal.svelte'; import RetryDomainModal from './retryDomainModal.svelte'; - import { columns } from './store'; import { regionalProtocol } from '../../store'; let { @@ -27,11 +26,21 @@ let showDelete = $state(false); let showRetry = $state(false); let selectedDomain: Models.ProxyRule = $state(null); + + const columns = [ + { + id: 'domain', + title: 'Domain', + type: 'string', + format: 'string', + width: { min: 200, max: 550 } + } + ]; - + - {#each $columns as { id, title }} + {#each columns as { id, title }} {title} @@ -40,7 +49,7 @@ {#each domains.rules as domain} - {#each $columns as column} + {#each columns as column} {#if column.id === 'domain'}