From cada0b1342b6d9db8581238a2adcd980a809ab68 Mon Sep 17 00:00:00 2001 From: ernstmul Date: Tue, 11 Mar 2025 13:37:33 +0100 Subject: [PATCH 01/12] WIP --- src/lib/helpers/flag.ts | 8 ++ src/lib/layout/createProject.svelte | 80 ++++++++++++++++ .../onboarding/create-project/+page.svelte | 95 +++---------------- .../createProjectCloud.svelte | 16 ++-- 4 files changed, 111 insertions(+), 88 deletions(-) create mode 100644 src/lib/helpers/flag.ts create mode 100644 src/lib/layout/createProject.svelte diff --git a/src/lib/helpers/flag.ts b/src/lib/helpers/flag.ts new file mode 100644 index 000000000..a2e8e9d86 --- /dev/null +++ b/src/lib/helpers/flag.ts @@ -0,0 +1,8 @@ +import { isValueOfStringEnum } from '$lib/helpers/types'; +import { Flag } from '@appwrite.io/console'; +import { sdk } from '$lib/stores/sdk'; + +export function getFlagUrl(countryCode: string) { + if (!isValueOfStringEnum(Flag, countryCode)) return ''; + return sdk.forProject.avatars.getFlag(countryCode, 22, 15, 100)?.toString(); +} diff --git a/src/lib/layout/createProject.svelte b/src/lib/layout/createProject.svelte new file mode 100644 index 000000000..a844d44f3 --- /dev/null +++ b/src/lib/layout/createProject.svelte @@ -0,0 +1,80 @@ + + +
+ + Create your project + + + + + {#if !showCustomId} +
+ { + showCustomId = true; + }}> Project ID +
+ {/if} + +
+ {#if isCloud && regions.length > 0} + + Region cannot be changed after creation + + {/if} +
+
+ + Create + +
+
diff --git a/src/routes/(console)/onboarding/create-project/+page.svelte b/src/routes/(console)/onboarding/create-project/+page.svelte index 3490f6d65..e3a1caa4f 100644 --- a/src/routes/(console)/onboarding/create-project/+page.svelte +++ b/src/routes/(console)/onboarding/create-project/+page.svelte @@ -1,7 +1,5 @@ @@ -144,57 +118,14 @@ height="22" class="u-only-dark" alt="Appwrite Logo" /> -
- - Create your project - - - - - - {#if !showCustomId} -
- { - showCustomId = true; - }}> Project ID -
- {/if} - -
- {#if data.regions} - - Region cannot be changed after creation - - {/if} -
-
- - Create - -
-
+ + {/if} diff --git a/src/routes/(console)/organization-[organization]/createProjectCloud.svelte b/src/routes/(console)/organization-[organization]/createProjectCloud.svelte index c42d662c6..ec03cce96 100644 --- a/src/routes/(console)/organization-[organization]/createProjectCloud.svelte +++ b/src/routes/(console)/organization-[organization]/createProjectCloud.svelte @@ -1,5 +1,5 @@ - +ayyy + + + + + + From 446250fe0eac8e692d929ebc832e369af17d6603 Mon Sep 17 00:00:00 2001 From: ernstmul Date: Tue, 11 Mar 2025 16:26:49 +0100 Subject: [PATCH 02/12] Creat project to new v2 modal --- src/lib/layout/createProject.svelte | 13 +- .../onboarding/create-project/+page.svelte | 13 -- .../organization-[organization]/+page.svelte | 7 +- .../createProjectCloud.svelte | 40 +++--- .../wizard/step1.svelte | 42 ------ .../wizard/step2.svelte | 133 ------------------ 6 files changed, 33 insertions(+), 215 deletions(-) delete mode 100644 src/routes/(console)/organization-[organization]/wizard/step1.svelte delete mode 100644 src/routes/(console)/organization-[organization]/wizard/step2.svelte diff --git a/src/lib/layout/createProject.svelte b/src/lib/layout/createProject.svelte index a844d44f3..8e5eeb0cb 100644 --- a/src/lib/layout/createProject.svelte +++ b/src/lib/layout/createProject.svelte @@ -7,12 +7,14 @@ import { isCloud } from '$lib/system.js'; export let projectName: string; - export let showCustomId: boolean; export let id: string; export let regions: Array = []; export let region: string; + export let showTitle = true; export let createProject: () => Promise; + let showCustomId = false; + function getRegions() { return regions .filter((region) => region.$id !== 'default') @@ -33,9 +35,16 @@ } + + {#each regions as region} + + {/each} +
- Create your project + {#if showTitle} + Create your project + {/if} diff --git a/src/routes/(console)/onboarding/create-project/+page.svelte b/src/routes/(console)/onboarding/create-project/+page.svelte index e3a1caa4f..7e2fe4904 100644 --- a/src/routes/(console)/onboarding/create-project/+page.svelte +++ b/src/routes/(console)/onboarding/create-project/+page.svelte @@ -1,10 +1,8 @@ -ayyy - - - - - - + + diff --git a/src/routes/(console)/organization-[organization]/wizard/step1.svelte b/src/routes/(console)/organization-[organization]/wizard/step1.svelte deleted file mode 100644 index 331a27fc3..000000000 --- a/src/routes/(console)/organization-[organization]/wizard/step1.svelte +++ /dev/null @@ -1,42 +0,0 @@ - - - - Details - - - - {#if !showCustomId} -
- (showCustomId = !showCustomId)}> - -
- {:else} - - {/if} -
-
diff --git a/src/routes/(console)/organization-[organization]/wizard/step2.svelte b/src/routes/(console)/organization-[organization]/wizard/step2.svelte deleted file mode 100644 index c28a43875..000000000 --- a/src/routes/(console)/organization-[organization]/wizard/step2.svelte +++ /dev/null @@ -1,133 +0,0 @@ - - - - Regions - - Choose a deployment region for your project. This region cannot be changed. - - {#if $regions} -
    - {#each $regions.regions - .filter((r) => r.$id !== 'default') - .sort((regionA, regionB) => { - if (regionA.disabled >= regionB.disabled) { - return 1; - } - return -1; - }) as region} -
  • - -
    - {#if region.disabled} - -

    {region.name}

    - {#if !notifications.includes(region.$id)} - { - notifyRegion(region); - }}> - - {:else} - { - unNotifyRegion(region); - }}> - - {/if} - {:else} - - {region.name} - {/if} -
    -
    -
  • - {/each} -
- {/if} -
From d5fff3faa11abf8b274a7cffa2e7a57e73f6cd79 Mon Sep 17 00:00:00 2001 From: ernstmul Date: Tue, 11 Mar 2025 16:30:31 +0100 Subject: [PATCH 03/12] Cleanup --- .../organization-[organization]/createProjectCloud.svelte | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/routes/(console)/organization-[organization]/createProjectCloud.svelte b/src/routes/(console)/organization-[organization]/createProjectCloud.svelte index 1cef7ce04..8d2faf2a0 100644 --- a/src/routes/(console)/organization-[organization]/createProjectCloud.svelte +++ b/src/routes/(console)/organization-[organization]/createProjectCloud.svelte @@ -42,7 +42,6 @@ }); await onFinish(); await goto(`${base}/project-${project.$id}`); - wizard.hide(); } catch (e) { addNotification({ type: 'error', @@ -69,4 +68,3 @@ bind:projectName={$createProject.name} bind:region={$createProject.region} {regions} /> - From 846e7e9b1e4793b5bb277afe1554967f9d5a0c60 Mon Sep 17 00:00:00 2001 From: Arman Date: Wed, 12 Mar 2025 15:01:58 +0100 Subject: [PATCH 04/12] fix: vcs missing state --- src/lib/components/git/connectGit.svelte | 6 +- .../functions/create-function/+page.svelte | 266 ++++++++---------- .../settings/disconnectRepo.svelte | 2 +- 3 files changed, 130 insertions(+), 144 deletions(-) diff --git a/src/lib/components/git/connectGit.svelte b/src/lib/components/git/connectGit.svelte index f2d4f5250..9dbca0fc7 100644 --- a/src/lib/components/git/connectGit.svelte +++ b/src/lib/components/git/connectGit.svelte @@ -20,7 +20,11 @@ environment variables are configured.

- +
diff --git a/src/routes/(console)/project-[project]/functions/create-function/+page.svelte b/src/routes/(console)/project-[project]/functions/create-function/+page.svelte index 3357ce168..8068d9edd 100644 --- a/src/routes/(console)/project-[project]/functions/create-function/+page.svelte +++ b/src/routes/(console)/project-[project]/functions/create-function/+page.svelte @@ -10,6 +10,7 @@ import { installation, repository } from '$lib/stores/vcs'; import { Repositories } from '$lib/components/git'; import { + Alert, Avatar, Badge, Card, @@ -21,6 +22,7 @@ import { IconArrowSmRight } from '@appwrite.io/pink-icons-svelte'; import Wizard from '$lib/layout/wizard.svelte'; import { Link } from '$lib/elements'; + import { Button } from '$lib/elements/forms'; export let data; @@ -62,16 +64,35 @@ `${wizardBase}/create-function/repository-${e.detail.id}?installation=${$installation.$id}` ); } - - $: console.log(data); -
- - - - + + + + {#if isSelfHosted && !isVcsEnabled} + + Connect Git repository + + + +

+ Configure your self-hosted instance to connect your function to + a Git repository. +

+
+ +
+
+
+
+ {:else} {/if} -
+ {/if} +
- - - Quick start - - {#each starterTemplateRuntimes.slice(0, 6) as template} - {@const iconName = template.name.split('-')[0]} - {@const runtimeDetail = baseRuntimesList.find( - (runtime) => runtime.$id === template.name - )} - { - trackEvent('click_connect_template', { - from: 'cover', - template: starterTemplate.id, - runtime: template.name - }); - }} - href={`${wizardBase}/create-function/template-${starterTemplate.id}?runtime=${runtimeDetail.$id}`}> - - - - - - - {runtimeDetail?.name} - {#if runtimeDetail?.name?.toLowerCase() === 'deno'} - - {/if} - - - - - {/each} - - - - - - {#each featuredTemplatesList as template} - { - trackEvent('click_connect_template', { - from: 'cover', - template: template.name - }); - }}> - - - - {template.name} - - + + + Quick start + + {#each starterTemplateRuntimes.slice(0, 6) as template} + {@const iconName = template.name.split('-')[0]} + {@const runtimeDetail = baseRuntimesList.find( + (runtime) => runtime.$id === template.name + )} + { + trackEvent('click_connect_template', { + from: 'cover', + template: starterTemplate.id, + runtime: template.name + }); + }} + href={`${wizardBase}/create-function/template-${starterTemplate.id}?runtime=${runtimeDetail.$id}`}> + + + + + + + {runtimeDetail?.name} + {#if runtimeDetail?.name?.toLowerCase() === 'deno'} + + {/if} - - {template.tagline} + + + + {/each} + + + + + + {#each featuredTemplatesList as template} + { + trackEvent('click_connect_template', { + from: 'cover', + template: template.name + }); + }}> + + + + {template.name} + - - {/each} - + + {template.tagline} + + + + {/each} + - - - Browse all templates - - - - -
+ + + Browse all templates + + +
+ + - - You can also create a function { - trackEvent('click_create_function_manual', { from: 'cover' }); - }} - href={`${wizardBase}/create-function/manual`}>manually - or using the CLI. - Learn more. - - - {#if isSelfHosted && !isVcsEnabled} -
-
- - Connect your self-hosted instance to Git - -

- Configure your self-hosted instance to connect your function to a Git - repository. - Learn more. -

-
-
- {/if} -
+ + You can also create a function { + trackEvent('click_create_function_manual', { from: 'cover' }); + }} + href={`${wizardBase}/create-function/manual`}>manually + or using the CLI. + Learn more. + +
- - diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/settings/disconnectRepo.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/settings/disconnectRepo.svelte index 9f83b36c3..5029895a5 100644 --- a/src/routes/(console)/project-[project]/sites/site-[site]/settings/disconnectRepo.svelte +++ b/src/routes/(console)/project-[project]/sites/site-[site]/settings/disconnectRepo.svelte @@ -27,7 +27,7 @@ site.buildCommand || undefined, site.outputDirectory || undefined, (site?.buildRuntime as BuildRuntime) || undefined, - site.adapter as Adapter, + (site?.adapter as Adapter) || undefined, site.fallbackFile || undefined, '', '', From 6595da30df88fcc99950bc3b4ddedd0e2adda863 Mon Sep 17 00:00:00 2001 From: Arman Date: Wed, 12 Mar 2025 15:05:54 +0100 Subject: [PATCH 05/12] fix: add collaborator modal --- .../(components)/addCollaboratorModal.svelte | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte b/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte index 37b23cea7..c4ee16c58 100644 --- a/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte +++ b/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte @@ -14,6 +14,7 @@ import InputSelect from '$lib/elements/forms/inputSelect.svelte'; import Roles from '$lib/components/roles/roles.svelte'; import { Layout } from '@appwrite.io/pink-svelte'; + import { isCloud, isSelfHosted } from '$lib/system'; export let show = false; @@ -24,7 +25,7 @@ let email: string, name: string, error: string, - role: string = 'viewer'; + role: string = isSelfHosted ? 'owner' : 'viewer'; async function create() { try { @@ -59,8 +60,6 @@ email = null; name = null; } - - //TODO: fix popover @@ -75,14 +74,16 @@ placeholder="Enter email" autofocus={true} bind:value={email} /> - + {#if isCloud} + + {/if}
From 086bf23bfbf5bda4f62815748dfa9cf68fbe4189 Mon Sep 17 00:00:00 2001 From: Arman Date: Wed, 12 Mar 2025 15:58:43 +0100 Subject: [PATCH 06/12] fix: tags --- ...pliedFilter.svelte => pasedTagList.svelte} | 11 ++-- .../components/filters/quickFilters.svelte | 6 +- src/lib/components/filters/quickFilters.ts | 6 -- src/lib/components/filters/setFilters.ts | 59 +++++++++++++------ src/lib/components/filters/subMenu.svelte | 26 ++------ .../executions/execute-function/+page.ts | 1 - .../(components)/addCollaboratorModal.svelte | 2 - .../sites/site-[site]/logs/+page.svelte | 2 +- 8 files changed, 54 insertions(+), 59 deletions(-) rename src/lib/components/filters/{appliedFilter.svelte => pasedTagList.svelte} (77%) diff --git a/src/lib/components/filters/appliedFilter.svelte b/src/lib/components/filters/pasedTagList.svelte similarity index 77% rename from src/lib/components/filters/appliedFilter.svelte rename to src/lib/components/filters/pasedTagList.svelte index 86ae82694..4b1faa05d 100644 --- a/src/lib/components/filters/appliedFilter.svelte +++ b/src/lib/components/filters/pasedTagList.svelte @@ -1,22 +1,23 @@ {#if $parsedTags?.length} {#each $parsedTags as tag} - + { - queries.removeFilter(tag); + const t = $tags.filter((t) => t.tag.includes(tag.tag.split(' ')[0])); + t.forEach((t) => (t ? queries.removeFilter(t) : null)); queries.apply(); parsedTags.update((tags) => tags.filter((t) => t.tag !== tag.tag)); }}> diff --git a/src/lib/components/filters/quickFilters.svelte b/src/lib/components/filters/quickFilters.svelte index 7cdff80a7..0b8c541e7 100644 --- a/src/lib/components/filters/quickFilters.svelte +++ b/src/lib/components/filters/quickFilters.svelte @@ -6,8 +6,8 @@ import { type Writable } from 'svelte/store'; import Menu from '$lib/components/filters/menu.svelte'; import { CustomFilters } from '$lib/components/filters'; - import { setFiltersOnNavigate } from '$lib/components/filters/setFilters'; - import { addFilterAndApply, buildFilterCol } from '$lib/components/filters/quickFilters'; + import { addFilterAndApply, buildFilterCol } from './quickFilters'; + import { setFiltersOnNavigate } from './setFilters'; export let columns: Writable; export let analyticsSource: string; @@ -22,6 +22,7 @@ const localTags = Array.from(localQueries.keys()); setFiltersOnNavigate(localTags, filterCols, $columns); + filterCols = filterCols; }); @@ -47,7 +48,6 @@ ); }} on:clear={() => { - filter.tag = null; addFilterAndApply( filter.id, filter.title, diff --git a/src/lib/components/filters/quickFilters.ts b/src/lib/components/filters/quickFilters.ts index 0bbe84fe3..fc09619b0 100644 --- a/src/lib/components/filters/quickFilters.ts +++ b/src/lib/components/filters/quickFilters.ts @@ -61,12 +61,6 @@ export function addFilterAndApply( }); } -export function resetOptions(filter: FilterData) { - filter.options.forEach((option) => { - option.checked = false; - }); -} - export function addStatusCodeFilter(value: string, colId: string, columns: Column[]) { addFilter(columns, colId, ValidOperators.LessThanOrEqual, parseInt(value)); addFilter(columns, colId, ValidOperators.GreaterThanOrEqual, parseInt(value) - 99); diff --git a/src/lib/components/filters/setFilters.ts b/src/lib/components/filters/setFilters.ts index fe8aa4ad3..812bd3436 100644 --- a/src/lib/components/filters/setFilters.ts +++ b/src/lib/components/filters/setFilters.ts @@ -1,18 +1,19 @@ import type { Column } from '$lib/helpers/types'; import { get, writable } from 'svelte/store'; -import { resetOptions, type FilterData } from './quickFilters'; +import { type FilterData } from './quickFilters'; import { tags, type TagValue } from './store'; export const parsedTags = writable([]); export function setFiltersOnNavigate( - tags: TagValue[], + localTags: TagValue[], filterCols: FilterData[], $columns: Column[] ) { - if (!tags?.length) { + if (!localTags?.length) { filterCols.forEach((filter) => { resetOptions(filter); + cleanOldTags(filter.title); }); } else { filterCols.forEach((filter) => { @@ -37,26 +38,25 @@ export function setFiltersOnNavigate( export function setFilterData(filter: FilterData) { const tagData = get(tags).find((tag) => tag.tag.includes(`**${filter.title}**`)); if (tagData) { - cleanOldTags(filter.title); - - filter.tag = tagData.tag; if (Array.isArray(tagData.value) && tagData.value?.length) { const values = tagData.value as string[]; filter.options.forEach((option) => { option.checked = values.includes(option.value); }); } + cleanOldTags(filter.title); const newTag = { tag: tagData.tag.replace(',', ' or '), value: tagData.value }; + parsedTags.update((tags) => { tags.push(newTag); return tags; }); } else { - filter.tag = null; resetOptions(filter); + cleanOldTags(filter.title); } } @@ -64,7 +64,6 @@ export function setTimeFilter(filter: FilterData, columns: Column[]) { const col = columns.find((c) => c.id === filter.id); const timeTag = get(tags).find((tag) => tag.tag.includes(`**${filter.title}**`)); if (timeTag) { - cleanOldTags(filter.title); const now = new Date(); const diff = now.getTime() - new Date(timeTag.value as string).getTime(); @@ -80,15 +79,16 @@ export function setTimeFilter(filter: FilterData, columns: Column[]) { tag: `**${filter.title}** is **${dateRange.label}**`, value: timeTag.value }; - filter.tag = `**${filter.title}** is **${dateRange.label}**`; - filter = filter; + + cleanOldTags(filter.title); + parsedTags.update((tags) => { tags.push(newTag); return tags; }); } } else { - filter.tag = null; + cleanOldTags(filter.title); } } @@ -106,11 +106,19 @@ export function setSizeFilter(filter: FilterData, columns: Column[]) { return prev; }); if (sizeRange) { - filter.tag = `**${filter.title}** is **${sizeRange.label}**`; - filter = filter; + cleanOldTags(filter.title); + + const newTag = { + tag: `**${filter.title}** is **${sizeRange.label}**`, + value: sizeTag.value + }; + parsedTags.update((tags) => { + tags.push(newTag); + return tags; + }); } } else { - filter.tag = null; + cleanOldTags(filter.title); } } @@ -123,11 +131,18 @@ export function setStatusCodeFilter(filter: FilterData, columns: Column[]) { const codeRange = ranges.find((c) => c?.value && c.value === statusCodeTag.value); if (codeRange) { - filter.tag = `**${filter.title}** is **${codeRange.label}**`; - filter = filter; + cleanOldTags(filter.title); + const newTag = { + tag: `**${filter.title}** is **${codeRange.label}**`, + value: statusCodeTag.value + }; + parsedTags.update((tags) => { + tags.push(newTag); + return tags; + }); } } else { - filter.tag = null; + cleanOldTags(filter.title); } } @@ -135,7 +150,6 @@ export function setDateFilter(filter: FilterData, columns: Column[]) { const dateTag = get(tags).find((tag) => tag.tag.includes(`**${filter.title}**`)); const col = columns.find((c) => c.id === filter.id); if (dateTag) { - cleanOldTags(filter.title); const now = new Date(); const diff = now.getTime() - new Date(dateTag.value as string).getTime(); @@ -147,6 +161,7 @@ export function setDateFilter(filter: FilterData, columns: Column[]) { return prev; }); if (dateRange) { + cleanOldTags(filter.title); const newTag = { tag: `**${filter.title}** is **${dateRange.label}**`, value: dateTag.value @@ -157,7 +172,7 @@ export function setDateFilter(filter: FilterData, columns: Column[]) { }); } } else { - filter.tag = null; + cleanOldTags(filter.title); } } @@ -167,3 +182,9 @@ function cleanOldTags(title: string) { return tags; }); } + +export function resetOptions(filter: FilterData) { + filter.options.forEach((option) => { + option.checked = false; + }); +} diff --git a/src/lib/components/filters/subMenu.svelte b/src/lib/components/filters/subMenu.svelte index 0063578ef..4824859ec 100644 --- a/src/lib/components/filters/subMenu.svelte +++ b/src/lib/components/filters/subMenu.svelte @@ -4,17 +4,7 @@ import { ActionMenu, Card, Layout, Selector } from '@appwrite.io/pink-svelte'; import { createMenubar, melt } from '@melt-ui/svelte'; import { createEventDispatcher } from 'svelte'; - import type { ValidOperators } from './store'; - - type FilterData = { - title: string; - id: string; - array: boolean; - show: boolean; - tag: string; - operator: ValidOperators; - options: { value: string; label: string; checked: boolean }[]; - }; + import type { FilterData } from './quickFilters'; export let filter: FilterData; export let variant: 'checkbox' | 'radio' = 'checkbox'; @@ -61,11 +51,7 @@ on:click={() => { option.checked = !option.checked; dispatch('add', { - value: filter?.array - ? null - : option.checked - ? option.value - : null + value: option.value }); }}> {capitalize(option.label)} @@ -79,15 +65,11 @@ on:click={() => { option.checked = !option.checked; dispatch('add', { - value: filter?.array - ? null - : option.checked - ? option.value - : null + value: option.checked }); }}> - + {capitalize(option.label)} diff --git a/src/routes/(console)/project-[project]/functions/function-[function]/executions/execute-function/+page.ts b/src/routes/(console)/project-[project]/functions/function-[function]/executions/execute-function/+page.ts index 1839e3613..7ee66a5a4 100644 --- a/src/routes/(console)/project-[project]/functions/function-[function]/executions/execute-function/+page.ts +++ b/src/routes/(console)/project-[project]/functions/function-[function]/executions/execute-function/+page.ts @@ -1,7 +1,6 @@ import { sdk } from '$lib/stores/sdk'; import { Dependencies } from '$lib/constants'; import type { PageLoad } from './$types'; -import { proxyRuleList } from '../../store'; export const load: PageLoad = async ({ params, depends, parent }) => { const data = await parent(); diff --git a/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte b/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte index c4ee16c58..e4e7d1c5f 100644 --- a/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte +++ b/src/routes/(console)/project-[project]/sites/(components)/addCollaboratorModal.svelte @@ -12,7 +12,6 @@ import { Submit, trackEvent, trackError } from '$lib/actions/analytics'; import { roles } from '$lib/stores/billing'; import InputSelect from '$lib/elements/forms/inputSelect.svelte'; - import Roles from '$lib/components/roles/roles.svelte'; import { Layout } from '@appwrite.io/pink-svelte'; import { isCloud, isSelfHosted } from '$lib/system'; @@ -76,7 +75,6 @@ bind:value={email} /> {#if isCloud} Date: Wed, 12 Mar 2025 15:59:51 +0100 Subject: [PATCH 07/12] fix: wrong tag count --- src/lib/components/filters/menu.svelte | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/components/filters/menu.svelte b/src/lib/components/filters/menu.svelte index b0dd7fcd5..a65a9a5f0 100644 --- a/src/lib/components/filters/menu.svelte +++ b/src/lib/components/filters/menu.svelte @@ -1,9 +1,9 @@ - - + + + - - {#if data?.executions?.total} - - {/if} - + + {#if data?.executions?.total} + + {/if} + + + {#if !data.func.logging} diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte index 50fb2025f..e2a82b9a4 100644 --- a/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte +++ b/src/routes/(console)/project-[project]/sites/site-[site]/deployments/+page.svelte @@ -18,7 +18,7 @@ import { invalidate } from '$app/navigation'; import { Dependencies } from '$lib/constants'; import CreateCliModal from './createCliModal.svelte'; - import { QuickFilters } from '$lib/components/filters'; + import { ParsedTagList, QuickFilters } from '$lib/components/filters'; export let data; @@ -45,54 +45,57 @@ - - - {#if data.deploymentList.total || data?.query} - - {/if} - + + + + {#if data.deploymentList.total || data?.query} + + {/if} + - - {#if data.deploymentList.total} - - {/if} - - - - - { - toggle(e); - if (!hasInstallation) { - showConnectRepo = true; - } else { - showCreateDeployment = true; - } - }}> - Git - - { - toggle(e); - showConnectCLI = true; - }}> - CLI - - { - toggle(e); - showConnectManual = true; - }}> - Manual - - - - + + {#if data.deploymentList.total} + + {/if} + + + + + { + toggle(e); + if (!hasInstallation) { + showConnectRepo = true; + } else { + showCreateDeployment = true; + } + }}> + Git + + { + toggle(e); + showConnectCLI = true; + }}> + CLI + + { + toggle(e); + showConnectManual = true; + }}> + Manual + + + + + + {#if data.deploymentList.total} diff --git a/src/routes/(console)/project-[project]/sites/site-[site]/logs/+page.svelte b/src/routes/(console)/project-[project]/sites/site-[site]/logs/+page.svelte index cb9ab41c7..ec1935eaf 100644 --- a/src/routes/(console)/project-[project]/sites/site-[site]/logs/+page.svelte +++ b/src/routes/(console)/project-[project]/sites/site-[site]/logs/+page.svelte @@ -7,11 +7,10 @@ import { sdk } from '$lib/stores/sdk'; import { onMount } from 'svelte'; import Table from './table.svelte'; - import { QuickFilters } from '$lib/components/filters'; + import { ParsedTagList, QuickFilters } from '$lib/components/filters'; import { Card, Empty, Layout } from '@appwrite.io/pink-svelte'; import { View } from '$lib/helpers/load'; import { columns } from './store'; - import AppliedFilter from '$lib/components/filters/pasedTagList.svelte'; export let data; @@ -35,7 +34,7 @@ {/if} - + {#if data?.logs?.total} From 69c829b2b850b8db0a1bfbce608d3c78631fd11d Mon Sep 17 00:00:00 2001 From: Arman Date: Wed, 12 Mar 2025 16:06:41 +0100 Subject: [PATCH 09/12] fix: missing changes from be --- .../project-[project]/functions/function-[function]/+layout.ts | 2 +- .../function-[function]/deployment-[deployment]/+page.svelte | 2 +- .../function-[function]/deployment-[deployment]/+page.ts | 2 +- .../functions/function-[function]/table.svelte | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/routes/(console)/project-[project]/functions/function-[function]/+layout.ts b/src/routes/(console)/project-[project]/functions/function-[function]/+layout.ts index 4ae0fd71d..e57eeef3b 100644 --- a/src/routes/(console)/project-[project]/functions/function-[function]/+layout.ts +++ b/src/routes/(console)/project-[project]/functions/function-[function]/+layout.ts @@ -19,7 +19,7 @@ export const load: LayoutLoad = async ({ params, depends }) => { Query.equal('type', RuleType.DEPLOYMENT), Query.equal('deploymentResourceType', DeploymentResourceType.FUNCTION), Query.equal('deploymentResourceId', params.function), - Query.equal('deploymentId', func.deployment), + Query.equal('deploymentId', func.deploymentId), Query.limit(1) ]); diff --git a/src/routes/(console)/project-[project]/functions/function-[function]/deployment-[deployment]/+page.svelte b/src/routes/(console)/project-[project]/functions/function-[function]/deployment-[deployment]/+page.svelte index ba34bddea..e6d26d0a9 100644 --- a/src/routes/(console)/project-[project]/functions/function-[function]/deployment-[deployment]/+page.svelte +++ b/src/routes/(console)/project-[project]/functions/function-[function]/deployment-[deployment]/+page.svelte @@ -96,7 +96,7 @@ {/if} - {#if data.func.deployment !== data.deployment.$id && data.deployment.status === 'ready'} + {#if data.func.deploymentId !== data.deployment.$id && data.deployment.status === 'ready'} + {:else} + + {/if} + + {#each filterCols as filter} + {#if filter.options} + { + addFilterAndApply( + filter.id, + filter.title, + filter.operator, + e.detail.value, + filter?.array + ? (filter.options + .filter((opt) => opt.checked) + .map((opt) => opt.value) ?? []) + : [], + $columns, + analyticsSource + ); + }} + on:clear={() => { + addFilterAndApply( + filter.id, + filter.title, + filter.operator, + null, + [], + $columns, + analyticsSource + ); + }} /> + {/if} + {/each} + diff --git a/src/lib/components/filters/subMenu.svelte b/src/lib/components/filters/quickfiltersSubMenu.svelte similarity index 99% rename from src/lib/components/filters/subMenu.svelte rename to src/lib/components/filters/quickfiltersSubMenu.svelte index 4824859ec..23159f67e 100644 --- a/src/lib/components/filters/subMenu.svelte +++ b/src/lib/components/filters/quickfiltersSubMenu.svelte @@ -34,7 +34,7 @@
- + {filter.title} diff --git a/src/lib/components/menu/index.ts b/src/lib/components/menu/index.ts new file mode 100644 index 000000000..1ba6002f9 --- /dev/null +++ b/src/lib/components/menu/index.ts @@ -0,0 +1,2 @@ +export { default as Menu } from './menu.svelte'; +export { default as SubMenu } from './subMenu.svelte'; diff --git a/src/lib/components/filters/menu.svelte b/src/lib/components/menu/menu.svelte similarity index 51% rename from src/lib/components/filters/menu.svelte rename to src/lib/components/menu/menu.svelte index a65a9a5f0..28e674e9e 100644 --- a/src/lib/components/filters/menu.svelte +++ b/src/lib/components/menu/menu.svelte @@ -1,9 +1,6 @@
- {#if $parsedTags?.length} - - {:else} - - {/if} +