Merge pull request #2733 from appwrite/fix-web-crash

This commit is contained in:
Darshan
2025-12-24 13:07:51 +05:30
committed by GitHub
3 changed files with 37 additions and 41 deletions
@@ -28,7 +28,7 @@
import PlatformFlutterImgSourceDark from './assets/platform-flutter-dark.svg';
import PlatformSdkImgSource from './assets/platform-sdk.jpg';
import PlatformSdkImgSourceDark from './assets/platform-sdk-dark.png';
import { base } from '$app/paths';
import { resolve } from '$app/paths';
import { isSmallViewport } from '$lib/stores/viewport';
import type { Models } from '@appwrite.io/console';
import { getPlatformInfo } from '$lib/helpers/platform';
@@ -36,40 +36,45 @@
import { goto } from '$app/navigation';
import { page } from '$app/state';
export let pingCount = 0;
export let platforms: Models.Platform[] = [];
let {
pingCount = 0,
platforms = []
}: {
pingCount: number;
platforms: Array<Models.Platform>;
} = $props();
const platformMap = $derived.by(() => {
const map = new Map<string, Models.Platform>();
platforms.forEach((platform) => {
const platformInfo = getPlatformInfo(platform.type);
map.set(platformInfo.name, platform);
});
return map;
});
const projectRoute = $derived.by(() => {
return resolve('/(console)/project-[region]-[project]', {
region: page.params.region,
project: page.params.project
});
});
function createKey() {
trackEvent(Click.KeyCreateClick, {
source: 'onboarding'
});
goto(
`${base}/project-${page.params.region}-${page.params.project}/overview/api-keys/create`,
{
replaceState: true
}
);
trackEvent(Click.KeyCreateClick, { source: 'onboarding' });
goto(`${projectRoute}/overview/api-keys/create`, { replaceState: true });
}
function openPlatformWizard(type: number, platform?: Models.Platform) {
if (platform) {
continuePlatform(type, platform.name, platform.key, platform.type);
continuePlatform(type, platform.name, platform.type);
} else {
trackEvent(Click.PlatformCreateClick, { source: 'onboarding' });
addPlatform(type);
}
}
let platformMap = new Map();
$: {
let updatedMap = new Map();
platforms.forEach((platform) => {
const platformInfo = getPlatformInfo(platform.type);
updatedMap.set(platformInfo.name, platform);
});
platformMap = updatedMap;
}
</script>
<div style:container-type="inline-size">
@@ -410,9 +415,7 @@
<Card.Button
on:click={() => {
trackEvent(Click.OnboardingSetupDatabaseClick);
goto(
`${base}/project-${page.params.region}-${page.params.project}/databases`
);
goto(`${projectRoute}/databases`);
}}
padding="s"
><Layout.Stack gap="xl"
@@ -507,7 +510,7 @@
justifyContent="flex-end">
<Link.Anchor
variant="quiet-muted"
href={`${base}/project-${page.params.region}-${page.params.project}/auth/settings`}
href={`${projectRoute}/auth/settings`}
on:click={() => {
trackEvent(
Click.OnboardingAuthEmailPasswordClick
@@ -517,7 +520,7 @@
</Link.Anchor>
<Link.Anchor
variant="quiet-muted"
href={`${base}/project-${page.params.region}-${page.params.project}/auth/settings`}
href={`${projectRoute}/auth/settings`}
on:click={() => {
trackEvent(
Click.OnboardingAuthOauth2Click
@@ -525,7 +528,7 @@
}}>OAuth 2</Link.Anchor>
<Link.Anchor
variant="quiet-muted"
href={`${base}/project-${page.params.region}-${page.params.project}/auth/settings`}
href={`${projectRoute}/auth/settings`}
on:click={() => {
trackEvent(
Click.OnboardingAuthAllMethodsClick
@@ -27,25 +27,20 @@
});
}
export async function continuePlatform(
platform: Platform,
name: string,
key: string,
type: PlatformType
) {
export async function continuePlatform(platform: Platform, name: string, type: PlatformType) {
createPlatform.set({
name: name,
key: key,
type: type
});
trackEvent(Click.PlatformCreateClick, {
platform: platforms[platform],
state: 'continue'
});
wizard.start(platforms[platform], null, 1, {
isConnectPlatform: true,
platform: type,
key: key
platform: type
});
}
@@ -6,7 +6,6 @@ function createPlatformStore() {
$id: null,
name: null,
hostname: null,
key: null,
store: null,
type: null
});
@@ -20,7 +19,6 @@ function createPlatformStore() {
$id: null,
name: null,
hostname: null,
key: null,
store: null,
type: null
});