From ae6c6cd3ef647f36aaec7dfb0197c2e2342f23e7 Mon Sep 17 00:00:00 2001 From: Torsten Dittmann Date: Tue, 4 Mar 2025 17:13:24 +0400 Subject: [PATCH] fix: stuff --- src/lib/commandCenter/panels/ai.svelte | 16 -- src/lib/components/filters/content.svelte | 25 +- src/lib/components/filters/filters.svelte | 21 -- src/lib/components/gridItem1.svelte | 50 ++-- .../components/mfaChallengeFormList.svelte | 1 - src/lib/components/modal.svelte | 1 - src/lib/components/permissions/row.svelte | 215 +++++++----------- src/lib/components/permissions/team.svelte | 13 +- src/lib/components/permissions/user.svelte | 8 +- src/lib/components/uploadBox.svelte | 10 +- src/lib/components/viewSelector.svelte | 1 - src/lib/elements/forms/inputDigits.svelte | 7 +- .../elements/forms/inputSelectSearch.svelte | 12 - src/lib/elements/selectSearchCheckbox.svelte | 1 - src/lib/stores/uploader.ts | 3 + .../auth/templates/+page.svelte | 4 +- .../auth/templates/email2FATemplate.svelte | 5 +- .../auth/templates/emailInviteTemplate.svelte | 5 +- .../templates/emailMagicUrlTemplate.svelte | 5 +- .../templates/emailRecoveryTemplate.svelte | 5 +- .../emailSessionAlertTemplate.svelte | 5 +- .../emailVerificationTemplate.svelte | 1 - .../document-[document]/+page.svelte | 8 +- .../document-[document]/delete.svelte | 83 +++---- .../storage/bucket-[bucket]/+layout.svelte | 3 +- .../storage/bucket-[bucket]/+page.svelte | 13 +- .../bucket-[bucket]/create-file/create.svelte | 66 ------ .../bucket-[bucket]/create-file/step1.svelte | 70 ------ .../bucket-[bucket]/create-file/step2.svelte | 39 ---- .../bucket-[bucket]/create-file/store.ts | 24 -- .../bucket-[bucket]/create/+page.svelte | 168 ++++++++++++++ .../project-[project]/storage/create.svelte | 39 ++-- .../project-[project]/storage/grid.svelte | 37 ++- 33 files changed, 390 insertions(+), 574 deletions(-) delete mode 100644 src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/create.svelte delete mode 100644 src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step1.svelte delete mode 100644 src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step2.svelte delete mode 100644 src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/store.ts create mode 100644 src/routes/(console)/project-[project]/storage/bucket-[bucket]/create/+page.svelte diff --git a/src/lib/commandCenter/panels/ai.svelte b/src/lib/commandCenter/panels/ai.svelte index 59b341f6f..357c90f6b 100644 --- a/src/lib/commandCenter/panels/ai.svelte +++ b/src/lib/commandCenter/panels/ai.svelte @@ -281,14 +281,6 @@ --logo-bg: #f2f2f8; } - :global(.theme-dark) .footer { - --sep-clr: hsl(var(--color-neutral-150)); - } - - :global(.theme-light) .footer { - --sep-clr: hsl(var(--color-neutral-30)); - } - .content { overflow: auto; padding: 1rem; @@ -324,14 +316,6 @@ } } - .footer { - .sep { - width: 1px; - height: 1.5rem; - background-color: var(--sep-clr); - } - } - .experimental { display: flex; padding: 0.09375rem 0.25rem; diff --git a/src/lib/components/filters/content.svelte b/src/lib/components/filters/content.svelte index 8e4629982..fc5aec366 100644 --- a/src/lib/components/filters/content.svelte +++ b/src/lib/components/filters/content.svelte @@ -122,9 +122,7 @@ options={column?.elements?.map((e) => ({ label: e?.label ?? e, value: e?.value ?? e - }))} - label="Value" - showLabel={false} /> + }))} /> {:else if column.type === 'integer' || column.type === 'double'} {:else if column.type === 'boolean'} @@ -139,12 +137,7 @@ bind:value /> {:else if column.type === 'datetime'} {#key value} - + {/key} {:else} @@ -166,17 +159,3 @@ {/if} - - diff --git a/src/lib/components/filters/filters.svelte b/src/lib/components/filters/filters.svelte index 1a05210a0..509f283d3 100644 --- a/src/lib/components/filters/filters.svelte +++ b/src/lib/components/filters/filters.svelte @@ -225,24 +225,3 @@ - - diff --git a/src/lib/components/gridItem1.svelte b/src/lib/components/gridItem1.svelte index 502074db7..bcd096071 100644 --- a/src/lib/components/gridItem1.svelte +++ b/src/lib/components/gridItem1.svelte @@ -1,36 +1,30 @@ -
-
-
- -
-
- -
- -
- -
-
+ + + + + +
+ +
+
+ + + +
+ + -
-
-
-
    + + -
-
-
+ + +
- - diff --git a/src/lib/components/mfaChallengeFormList.svelte b/src/lib/components/mfaChallengeFormList.svelte index e04952d95..65b55acea 100644 --- a/src/lib/components/mfaChallengeFormList.svelte +++ b/src/lib/components/mfaChallengeFormList.svelte @@ -33,7 +33,6 @@ export let factors: Models.MfaFactors & { recoveryCode: boolean }; /** If true, the form will be submitted automatically when the code is entered. */ - export let autoSubmit: boolean = true; export let showVerifyButton: boolean = true; export let disabled: boolean = false; export let challenge: Models.MfaChallenge; diff --git a/src/lib/components/modal.svelte b/src/lib/components/modal.svelte index ad51b11c8..ebb4da472 100644 --- a/src/lib/components/modal.svelte +++ b/src/lib/components/modal.svelte @@ -8,7 +8,6 @@ export let show = false; export let error: string = null; - export let closable = true; export let dismissible = true; export let onSubmit: (e: SubmitEvent) => Promise | void = function () { return; diff --git a/src/lib/components/permissions/row.svelte b/src/lib/components/permissions/row.svelte index 631136098..9d28c0144 100644 --- a/src/lib/components/permissions/row.svelte +++ b/src/lib/components/permissions/row.svelte @@ -1,17 +1,24 @@ -
-
- {#if role === 'users'} -
Users
- {:else if role === 'guests'} -
Guests
- {:else if role === 'any'} -
Any
- {:else} -
{ - data = n; - }) - .finally(() => { - tick().then(() => { - instance.setContent(content); - }); - }); - } - }}> - {role} -
-
-
- {#if data} - {@const isUser = role.startsWith('user')} - {@const isTeam = role.startsWith('team')} - {@const isAnonymous = !data.email && !data.phone && isUser} - -
- {/if} -
-
- - - + {#if data?.phone} + Phone: {data?.phone} + {/if} +
+ + View user + + +
+ {:else if isTeam} + Members: {data?.total} +
+ + View team + + +
+ {/if} + + {/await} + {/key} +
+ +{/if} diff --git a/src/lib/components/permissions/team.svelte b/src/lib/components/permissions/team.svelte index b2efaf4d0..340d1961d 100644 --- a/src/lib/components/permissions/team.svelte +++ b/src/lib/components/permissions/team.svelte @@ -93,23 +93,14 @@ - Text + {team.name} - Secondary Text + {team.$id} - - - - {team.name} - - - {team.$id} - - {/each} diff --git a/src/lib/components/permissions/user.svelte b/src/lib/components/permissions/user.svelte index 12410e455..c31f58d9f 100644 --- a/src/lib/components/permissions/user.svelte +++ b/src/lib/components/permissions/user.svelte @@ -17,13 +17,7 @@ Table, Typography } from '@appwrite.io/pink-svelte'; - import { - IconAnonymous, - IconChartSquareBar, - IconCheck, - IconMinus, - IconMinusSm - } from '@appwrite.io/pink-icons-svelte'; + import { IconAnonymous, IconMinusSm } from '@appwrite.io/pink-icons-svelte'; export let show: boolean; export let groups: Writable>; diff --git a/src/lib/components/uploadBox.svelte b/src/lib/components/uploadBox.svelte index 9520cd3c7..721917ca1 100644 --- a/src/lib/components/uploadBox.svelte +++ b/src/lib/components/uploadBox.svelte @@ -4,5 +4,13 @@ {#if $uploader?.isOpen} - uploader.close()} /> + { + return { + name: file.name, + size: file.size, + status: file.status + }; + })} + on:close={() => uploader.close()} /> {/if} diff --git a/src/lib/components/viewSelector.svelte b/src/lib/components/viewSelector.svelte index 7a4727d56..564f2bff4 100644 --- a/src/lib/components/viewSelector.svelte +++ b/src/lib/components/viewSelector.svelte @@ -23,7 +23,6 @@ export let hideView = false; export let hideColumns = false; export let allowNoColumns = false; - export let fullWidthMobile = false; onMount(async () => { if (isCustomCollection) { diff --git a/src/lib/elements/forms/inputDigits.svelte b/src/lib/elements/forms/inputDigits.svelte index 6895d82a4..f6e20f6cd 100644 --- a/src/lib/elements/forms/inputDigits.svelte +++ b/src/lib/elements/forms/inputDigits.svelte @@ -6,11 +6,6 @@ export let required = false; export let disabled = false; export let readonly = false; - export let autofocus = false; - export let fullWidth = false; - export let autoSubmit = true; - - $: console.log(value); - + diff --git a/src/lib/elements/forms/inputSelectSearch.svelte b/src/lib/elements/forms/inputSelectSearch.svelte index 260e7ac02..0ca641f95 100644 --- a/src/lib/elements/forms/inputSelectSearch.svelte +++ b/src/lib/elements/forms/inputSelectSearch.svelte @@ -144,15 +144,3 @@ {error} {/if} --> - - diff --git a/src/lib/elements/selectSearchCheckbox.svelte b/src/lib/elements/selectSearchCheckbox.svelte index e54a4fd33..b7d854c88 100644 --- a/src/lib/elements/selectSearchCheckbox.svelte +++ b/src/lib/elements/selectSearchCheckbox.svelte @@ -3,7 +3,6 @@ import InputCheckbox from './forms/inputCheckbox.svelte'; export let value = false; - export let padding: number | null = null; diff --git a/src/lib/stores/uploader.ts b/src/lib/stores/uploader.ts index 45a9283fa..695c247c0 100644 --- a/src/lib/stores/uploader.ts +++ b/src/lib/stores/uploader.ts @@ -8,6 +8,7 @@ type UploaderFile = { resourceId: string; name: string; progress: number; + size: number; status: 'failed' | 'pending' | 'success'; error?: string; }; @@ -73,6 +74,7 @@ const createUploader = () => { $id: id, resourceId: bucketId, name: file.name, + size: file.size, progress: 0, status: 'pending' }; @@ -104,6 +106,7 @@ const createUploader = () => { $id: '', resourceId: siteId, name: code.name, + size: code.size, progress: 0, status: 'pending' }; diff --git a/src/routes/(console)/project-[project]/auth/templates/+page.svelte b/src/routes/(console)/project-[project]/auth/templates/+page.svelte index 6a5100fdb..d4c752db6 100644 --- a/src/routes/(console)/project-[project]/auth/templates/+page.svelte +++ b/src/routes/(console)/project-[project]/auth/templates/+page.svelte @@ -120,7 +120,7 @@ - + diff --git a/src/routes/(console)/project-[project]/auth/templates/email2FATemplate.svelte b/src/routes/(console)/project-[project]/auth/templates/email2FATemplate.svelte index 66b12f815..811cb15a1 100644 --- a/src/routes/(console)/project-[project]/auth/templates/email2FATemplate.svelte +++ b/src/routes/(console)/project-[project]/auth/templates/email2FATemplate.svelte @@ -7,6 +7,7 @@ import { addNotification } from '$lib/stores/notifications'; import { Id } from '$lib/components'; import { Submit, trackError, trackEvent } from '$lib/actions/analytics'; + import { Layout } from '@appwrite.io/pink-svelte'; const projectId = $page.params.project; let locale = 'en'; @@ -34,11 +35,11 @@ } -
+ {'{{user}}'} {'{{project}}'} {'{{otp}}'} -
+ diff --git a/src/routes/(console)/project-[project]/auth/templates/emailInviteTemplate.svelte b/src/routes/(console)/project-[project]/auth/templates/emailInviteTemplate.svelte index fb7a93500..2e4425eb0 100644 --- a/src/routes/(console)/project-[project]/auth/templates/emailInviteTemplate.svelte +++ b/src/routes/(console)/project-[project]/auth/templates/emailInviteTemplate.svelte @@ -7,6 +7,7 @@ import { addNotification } from '$lib/stores/notifications'; import { Id } from '$lib/components'; import { Submit, trackError, trackEvent } from '$lib/actions/analytics'; + import { Layout } from '@appwrite.io/pink-svelte'; const projectId = $page.params.project; let locale = 'en'; @@ -34,7 +35,7 @@ } -
+ {'{{team}}'} @@ -42,4 +43,4 @@ {'{{project}}'} {'{{redirect}}'} -
+ diff --git a/src/routes/(console)/project-[project]/auth/templates/emailMagicUrlTemplate.svelte b/src/routes/(console)/project-[project]/auth/templates/emailMagicUrlTemplate.svelte index e15372245..19e6c5eb9 100644 --- a/src/routes/(console)/project-[project]/auth/templates/emailMagicUrlTemplate.svelte +++ b/src/routes/(console)/project-[project]/auth/templates/emailMagicUrlTemplate.svelte @@ -7,6 +7,7 @@ import { addNotification } from '$lib/stores/notifications'; import { Id } from '$lib/components'; import { Submit, trackError, trackEvent } from '$lib/actions/analytics'; + import { Layout } from '@appwrite.io/pink-svelte'; const projectId = $page.params.project; @@ -36,11 +37,11 @@ } -
+ {'{{user}}'} {'{{project}}'} {'{{redirect}}'} -
+ diff --git a/src/routes/(console)/project-[project]/auth/templates/emailRecoveryTemplate.svelte b/src/routes/(console)/project-[project]/auth/templates/emailRecoveryTemplate.svelte index 56d028108..e6a9443f6 100644 --- a/src/routes/(console)/project-[project]/auth/templates/emailRecoveryTemplate.svelte +++ b/src/routes/(console)/project-[project]/auth/templates/emailRecoveryTemplate.svelte @@ -7,6 +7,7 @@ import { addNotification } from '$lib/stores/notifications'; import { Id } from '$lib/components'; import { Submit, trackError, trackEvent } from '$lib/actions/analytics'; + import { Layout } from '@appwrite.io/pink-svelte'; const projectId = $page.params.project; @@ -35,11 +36,11 @@ } -
+ {'{{user}}'} {'{{project}}'} {'{{redirect}}'} -
+ diff --git a/src/routes/(console)/project-[project]/auth/templates/emailSessionAlertTemplate.svelte b/src/routes/(console)/project-[project]/auth/templates/emailSessionAlertTemplate.svelte index 8dd83904b..438e8d2dd 100644 --- a/src/routes/(console)/project-[project]/auth/templates/emailSessionAlertTemplate.svelte +++ b/src/routes/(console)/project-[project]/auth/templates/emailSessionAlertTemplate.svelte @@ -7,6 +7,7 @@ import { addNotification } from '$lib/stores/notifications'; import { Id } from '$lib/components'; import { Submit, trackError, trackEvent } from '$lib/actions/analytics'; + import { Layout } from '@appwrite.io/pink-svelte'; const projectId = $page.params.project; let locale = 'en'; @@ -34,7 +35,7 @@ } -
+ {'{{user}}'} @@ -43,4 +44,4 @@ {'{{ipAddress}}'} {'{{country}}'} -
+ diff --git a/src/routes/(console)/project-[project]/auth/templates/emailVerificationTemplate.svelte b/src/routes/(console)/project-[project]/auth/templates/emailVerificationTemplate.svelte index fdef014a1..50466669c 100644 --- a/src/routes/(console)/project-[project]/auth/templates/emailVerificationTemplate.svelte +++ b/src/routes/(console)/project-[project]/auth/templates/emailVerificationTemplate.svelte @@ -38,7 +38,6 @@ - {'{{user}}'} {'{{project}}'} diff --git a/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/+page.svelte b/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/+page.svelte index 3edff9117..6a7deeacb 100644 --- a/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/+page.svelte +++ b/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/+page.svelte @@ -13,7 +13,7 @@ import { Dependencies } from '$lib/constants'; import { Submit, trackEvent, trackError } from '$lib/actions/analytics'; import { collection } from '../store'; - import { Alert } from '@appwrite.io/pink-svelte'; + import { Alert, Link } from '@appwrite.io/pink-svelte'; let showDelete = false; let permissions = $doc?.$permissions; @@ -71,12 +71,10 @@ A user requires appropriate permissions at either the collection level or document level to access a document. If no permissions are configured, no user can access the document - Learn more about database permissions. + rel="noopener noreferrer">Learn more {#if $collection.documentSecurity} {#if showPermissionAlert} diff --git a/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/delete.svelte b/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/delete.svelte index 179f10062..64a355ea7 100644 --- a/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/delete.svelte +++ b/src/routes/(console)/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/delete.svelte @@ -3,19 +3,11 @@ import { base } from '$app/paths'; import { page } from '$app/stores'; import { Submit, trackEvent, trackError } from '$lib/actions/analytics'; - import { Alert, Modal, Trim } from '$lib/components'; + import { Modal, Trim } from '$lib/components'; import { Button, InputChoice } from '$lib/elements/forms'; - import { - TableBody, - TableCell, - TableCellHead, - TableCellText, - TableHeader, - TableRow, - TableScroll - } from '$lib/elements/table'; import { addNotification } from '$lib/stores/notifications'; import { sdk } from '$lib/stores/sdk'; + import { Alert, Selector, Table } from '@appwrite.io/pink-svelte'; import { attributes, collection } from '../store'; import { isRelationship } from './attributes/store'; import type { Models } from '@appwrite.io/console'; @@ -69,48 +61,45 @@ {#if relAttributes?.length}

This document contains the following relationships:

- - - Relation - Setting - - - - {#each relAttributes as attr} - - - - {#if attr.twoWay} - - {:else} - - {/if} - {attr.key} - - - - {attr.onDelete} - - - {Deletion[attr.onDelete]} - - - {/each} - - + + + Relation + Setting + + + {#each relAttributes as attr} + + + + {#if attr.twoWay} + + {:else} + + {/if} + {attr.key} + + + + {attr.onDelete} + + + {Deletion[attr.onDelete]} + + + {/each} +
- To change the selection edit the relationship settings. - -
    - - Delete document from {$collection.name} - -
+ +
{/if} - + diff --git a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+layout.svelte b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+layout.svelte index 2dba92726..f6bb5c944 100644 --- a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+layout.svelte +++ b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+layout.svelte @@ -19,9 +19,8 @@ label: 'Create file', async callback() { if (!$page.url.pathname.endsWith($bucket.$id)) { - goto(`${base}/project-${$project.$id}/storage/bucket-${$bucket.$id}`); + goto(`${base}/project-${$project.$id}/storage/bucket-${$bucket.$id}/create`); } - showCreateFile(); }, keys: $page.url.pathname.endsWith($bucket.$id) ? ['c'] : ['c', 'f'], group: 'files', diff --git a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+page.svelte b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+page.svelte index a351d2c29..1d2d66c63 100644 --- a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+page.svelte +++ b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/+page.svelte @@ -36,7 +36,6 @@ import { wizard } from '$lib/stores/wizard'; import { getServiceLimit } from '$lib/stores/billing'; import { sdk } from '$lib/stores/sdk.js'; - import Create from './create-file/create.svelte'; import DeleteFile from './deleteFile.svelte'; import { isCloud } from '$lib/system'; import { Layout, Table, Icon } from '@appwrite.io/pink-svelte'; @@ -56,7 +55,8 @@ ? bytesToSize(data.organizationUsage.storageTotal, 'GB') : null; const getPreview = (fileId: string) => - sdk.forProject.storage.getFilePreview(bucketId, fileId, 64, 64).toString() + '&mode=admin'; + sdk.forProject.storage.getFilePreview(bucketId, fileId, 128, 128).toString() + + '&mode=admin'; async function fileDeleted(event: CustomEvent) { showDelete = false; @@ -113,7 +113,10 @@
- @@ -166,7 +169,7 @@ href={`${base}/project-${projectId}/storage/bucket-${bucketId}/file-${file.$id}`}>
- + {file.name}
@@ -242,7 +245,7 @@ single href="https://appwrite.io/docs/products/storage/upload-download" target="file" - on:click={() => wizard.start(Create)} /> + on:click={() => void 0} /> {/if} diff --git a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/create.svelte b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/create.svelte deleted file mode 100644 index 2def560a1..000000000 --- a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/create.svelte +++ /dev/null @@ -1,66 +0,0 @@ - - - diff --git a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step1.svelte b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step1.svelte deleted file mode 100644 index 137a69381..000000000 --- a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step1.svelte +++ /dev/null @@ -1,70 +0,0 @@ - - - - File - Upload a file to add it to your bucket. - - {#if isCloud && fileError === 'File size exceeds the limit'} - {@const size = humanFileSize($bucket.maximumFileSize ?? sizeToBytes(service, 'MB', 1000))} - -

- The maximum file upload size for this bucket is {parseInt(size.value)}{size.unit}. - You can adjust it in your - bucket settings. -

-
- {/if} - - -
- -
- - {#if !showCustomId} -
- (showCustomId = !showCustomId)}> - -
- {:else} -
- -
- {/if} -
-
- - diff --git a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step2.svelte b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step2.svelte deleted file mode 100644 index 58363e57d..000000000 --- a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/step2.svelte +++ /dev/null @@ -1,39 +0,0 @@ - - - - Permissions - - Choose who can access your buckets and files. For more information, check out the - - Permissions Guide - . - - {#if $bucket.fileSecurity} -
- - File security enabled - Users will be able to access this file if they have been granted - either File or Bucket permissions. - -
-
- -
- {:else} - - File security disabled - If you want to assign file permissions, navigate to Bucket settings and enable file security. - Otherwise, only Bucket permissions will be used. - - {/if} -
diff --git a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/store.ts b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/store.ts deleted file mode 100644 index 6a6eb9248..000000000 --- a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create-file/store.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { writable } from 'svelte/store'; - -type CreateFile = { - files: FileList | null; - id: string | null; - permissions: string[]; -}; - -const initialState: CreateFile = { - files: null, - id: null, - permissions: [] -}; - -export const createFile = (function initialize() { - const store = writable({ ...initialState }); - - return { - ...store, - reset() { - store.set({ ...initialState }); - } - }; -})(); diff --git a/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create/+page.svelte b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create/+page.svelte new file mode 100644 index 000000000..6ea327f41 --- /dev/null +++ b/src/routes/(console)/project-[project]/storage/bucket-[bucket]/create/+page.svelte @@ -0,0 +1,168 @@ + + + +
+ +
+ + {#if isCloud && fileError === 'File size exceeds the limit'} + {@const size = humanFileSize( + data.bucket.maximumFileSize ?? sizeToBytes(service, 'MB', 1000) + )} + + The maximum file upload size for this bucket is {parseInt( + size.value + )}{size.unit}. You can adjust it in your + bucket settings. + + {/if} + + Drag and drop files here or click to upload + + {#if files} + { + return { + name: b.name, + size: b.size, + extension: b.type, + removable: true + }; + })} /> + {/if} + + {#if !showCustomId} +
+ (showCustomId = !showCustomId)}> + + File ID + +
+ {:else} + + {/if} +
+
+ +
+ + + Choose who can access your buckets and files. For more information, check + out the + + Permissions Guide + . + + + {#if data.bucket.fileSecurity} + + Users will be able to access this file if they have been granted + either File or Bucket permissions. + + + {:else} + + If you want to assign file permissions, navigate to Bucket settings and + enable file security. Otherwise, only Bucket permissions will be used. + + {/if} + +
+
+
+ + + + + +
diff --git a/src/routes/(console)/project-[project]/storage/create.svelte b/src/routes/(console)/project-[project]/storage/create.svelte index d4043ee25..4af12b893 100644 --- a/src/routes/(console)/project-[project]/storage/create.svelte +++ b/src/routes/(console)/project-[project]/storage/create.svelte @@ -6,6 +6,8 @@ import { addNotification } from '$lib/stores/notifications'; import { sdk } from '$lib/stores/sdk'; import { ID } from '@appwrite.io/console'; + import { IconPencil } from '@appwrite.io/pink-icons-svelte'; + import { Icon, Tag } from '@appwrite.io/pink-svelte'; import { createEventDispatcher } from 'svelte'; export let showCreate = false; @@ -46,26 +48,25 @@ - - + - {#if !showCustomId} -
- (showCustomId = !showCustomId)}> - -
- {:else} - - {/if} -
+ {#if !showCustomId} +
+ { + showCustomId = true; + }}> Bucket ID +
+ {:else} + + {/if} diff --git a/src/routes/(console)/project-[project]/storage/grid.svelte b/src/routes/(console)/project-[project]/storage/grid.svelte index 1714c61c9..4ff674aeb 100644 --- a/src/routes/(console)/project-[project]/storage/grid.svelte +++ b/src/routes/(console)/project-[project]/storage/grid.svelte @@ -4,7 +4,7 @@ import { CardContainer, GridItem1, Id } from '$lib/components'; import Pill from '$lib/elements/pill.svelte'; import { canWriteBuckets } from '$lib/stores/roles'; - import { Tooltip } from '@appwrite.io/pink-svelte'; + import { Badge, Tooltip } from '@appwrite.io/pink-svelte'; import type { PageData } from './$types'; export let data: PageData; @@ -25,35 +25,24 @@ {bucket.name} {#if !bucket.enabled} - Disabled +
+ +
{/if}
{bucket.$id} -
  • - - -
  • -
  • - - -
  • + +
    {/each}