mirror of
https://github.com/appwrite/console.git
synced 2026-06-06 19:27:48 +00:00
Merge branch 'main' of github.com:appwrite/appwrite-console-poc into fix-qa-v12
This commit is contained in:
Generated
+14
-14
@@ -9,8 +9,8 @@
|
||||
"version": "0.0.1",
|
||||
"dependencies": {
|
||||
"@aw-labs/appwrite-console": "^10.0.0",
|
||||
"@aw-labs/icons": "0.0.0-75",
|
||||
"@aw-labs/ui": "0.0.0-75",
|
||||
"@aw-labs/icons": "0.0.0-76",
|
||||
"@aw-labs/ui": "0.0.0-76",
|
||||
"@popperjs/core": "^2.11.6",
|
||||
"echarts": "^5.4.0",
|
||||
"pretty-bytes": "^6.0.0",
|
||||
@@ -81,14 +81,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aw-labs/icons": {
|
||||
"version": "0.0.0-75",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/icons/-/icons-0.0.0-75.tgz",
|
||||
"integrity": "sha512-3ajSt88EulmGyk0P8PUGROJehx+uNyUCfRzg29rE2h/SYMNwwyNWilh7qSRXJqbpBvC9y8IjwZ0D9MbILFzbFA=="
|
||||
"version": "0.0.0-76",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/icons/-/icons-0.0.0-76.tgz",
|
||||
"integrity": "sha512-i22WHSl3aYCKqaEt87OKUmOZ9Q/LDUeqDJ7eab4dhey1+W3dqt+nF21YR38iRVtV08+0KniiwPxagBjjSSrmlg=="
|
||||
},
|
||||
"node_modules/@aw-labs/ui": {
|
||||
"version": "0.0.0-75",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/ui/-/ui-0.0.0-75.tgz",
|
||||
"integrity": "sha512-Kk27kWH4Mxszpfpr954gqrJMkyjZwZS/X5zU4Jg/sCCg2QMYXbxRGmPoit0qNIRGVHf72hf8eJCUU17/2IHCSQ==",
|
||||
"version": "0.0.0-76",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/ui/-/ui-0.0.0-76.tgz",
|
||||
"integrity": "sha512-Cfik0wm2dDKnLTxWSdNkaw76HqoKD1JNjfKzkBT+Hertl2Gae0C/ykc8MjCHsO8lu6FulVQ6uqSLqfiKR1T6zQ==",
|
||||
"dependencies": {
|
||||
"@aw-labs/icons": "*",
|
||||
"normalize.css": "^8.0.1",
|
||||
@@ -7467,14 +7467,14 @@
|
||||
}
|
||||
},
|
||||
"@aw-labs/icons": {
|
||||
"version": "0.0.0-75",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/icons/-/icons-0.0.0-75.tgz",
|
||||
"integrity": "sha512-3ajSt88EulmGyk0P8PUGROJehx+uNyUCfRzg29rE2h/SYMNwwyNWilh7qSRXJqbpBvC9y8IjwZ0D9MbILFzbFA=="
|
||||
"version": "0.0.0-76",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/icons/-/icons-0.0.0-76.tgz",
|
||||
"integrity": "sha512-i22WHSl3aYCKqaEt87OKUmOZ9Q/LDUeqDJ7eab4dhey1+W3dqt+nF21YR38iRVtV08+0KniiwPxagBjjSSrmlg=="
|
||||
},
|
||||
"@aw-labs/ui": {
|
||||
"version": "0.0.0-75",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/ui/-/ui-0.0.0-75.tgz",
|
||||
"integrity": "sha512-Kk27kWH4Mxszpfpr954gqrJMkyjZwZS/X5zU4Jg/sCCg2QMYXbxRGmPoit0qNIRGVHf72hf8eJCUU17/2IHCSQ==",
|
||||
"version": "0.0.0-76",
|
||||
"resolved": "https://registry.npmjs.org/@aw-labs/ui/-/ui-0.0.0-76.tgz",
|
||||
"integrity": "sha512-Cfik0wm2dDKnLTxWSdNkaw76HqoKD1JNjfKzkBT+Hertl2Gae0C/ykc8MjCHsO8lu6FulVQ6uqSLqfiKR1T6zQ==",
|
||||
"requires": {
|
||||
"@aw-labs/icons": "*",
|
||||
"normalize.css": "^8.0.1",
|
||||
|
||||
+2
-2
@@ -20,8 +20,8 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@aw-labs/appwrite-console": "^10.0.0",
|
||||
"@aw-labs/icons": "0.0.0-75",
|
||||
"@aw-labs/ui": "0.0.0-75",
|
||||
"@aw-labs/icons": "0.0.0-76",
|
||||
"@aw-labs/ui": "0.0.0-76",
|
||||
"@popperjs/core": "^2.11.6",
|
||||
"echarts": "^5.4.0",
|
||||
"pretty-bytes": "^6.0.0",
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
<div class="u-flex u-flex-vertical u-cross-center u-gap-24">
|
||||
<button type="button" on:click|preventDefault>
|
||||
{#if $app.themeInUse === 'dark'}
|
||||
<img src={EmptyDark} alt="create" aria-hidden="true" />
|
||||
<img src={EmptyDark} alt="create" aria-hidden="true" height="124" />
|
||||
{:else}
|
||||
<img src={EmptyLight} alt="create" aria-hidden="true" />
|
||||
<img src={EmptyLight} alt="create" aria-hidden="true" height="124" />
|
||||
{/if}
|
||||
</button>
|
||||
<slot>
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
export let tag: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
|
||||
export let size: '1' | '2' | '3' | '4' | '5' | '6' | '7';
|
||||
export let trimmed = true;
|
||||
export let id: string = null;
|
||||
</script>
|
||||
|
||||
<svelte:element this={tag} class={`heading-level-${size}`} class:u-trim-1={trimmed}>
|
||||
<svelte:element this={tag} class={`heading-level-${size}`} class:u-trim-1={trimmed} {id}>
|
||||
<slot />
|
||||
</svelte:element>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
<Copy {value}>
|
||||
<div class="interactive-text-output is-textarea">
|
||||
<span class="text u-line-height-1-5 u-break-word"><slot /></span>
|
||||
<span class="text u-line-height-1-5 u-break-all"><slot /></span>
|
||||
|
||||
<div class="u-flex u-cross-child-start u-gap-8">
|
||||
<button class="interactive-text-output-button" aria-label="copy text">
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
<div class="interactive-text-output" class:is-textarea={show}>
|
||||
{#if show}
|
||||
<span class="text u-line-height-1-5 u-break-word">{value}</span>
|
||||
<span class="text u-line-height-1-5 u-break-all">{value}</span>
|
||||
{:else}
|
||||
<span class="text">••••••••••••</span>
|
||||
{/if}
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
export let label: string = null;
|
||||
export let files: FileList;
|
||||
export let list = new DataTransfer();
|
||||
export let allowedFileExtensions: string[] = [];
|
||||
|
||||
let input: HTMLInputElement;
|
||||
let hovering = false;
|
||||
@@ -28,7 +29,12 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<input bind:files bind:this={input} type="file" style="display: none" />
|
||||
<input
|
||||
bind:files
|
||||
bind:this={input}
|
||||
accept={allowedFileExtensions.map((n) => `.${n}`).join(',')}
|
||||
type="file"
|
||||
style="display: none" />
|
||||
|
||||
<div>
|
||||
{#if label}
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
let id: string;
|
||||
let showCustomId = false;
|
||||
let loading = false;
|
||||
|
||||
async function createProject() {
|
||||
try {
|
||||
loading = true;
|
||||
@@ -28,12 +29,11 @@
|
||||
await invalidate(Dependencies.ACCOUNT);
|
||||
goto(`/console/project-${project.$id}`);
|
||||
} catch ({ message }) {
|
||||
loading = false;
|
||||
addNotification({
|
||||
message,
|
||||
type: 'error'
|
||||
});
|
||||
} finally {
|
||||
loading = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
let error: string;
|
||||
let isCreating = false;
|
||||
|
||||
const create = async () => {
|
||||
async function create() {
|
||||
try {
|
||||
isCreating = true;
|
||||
const project = await sdkForConsole.projects.create(
|
||||
@@ -34,11 +34,10 @@
|
||||
});
|
||||
await goto(`/console/project-${project.$id}`);
|
||||
} catch ({ message }) {
|
||||
error = message;
|
||||
} finally {
|
||||
isCreating = false;
|
||||
error = message;
|
||||
}
|
||||
};
|
||||
}
|
||||
</script>
|
||||
|
||||
<Modal {error} on:submit={create} size="big" bind:show>
|
||||
|
||||
@@ -180,7 +180,7 @@
|
||||
{/if}
|
||||
|
||||
<section class="common-section u-margin-block-start-100">
|
||||
<Heading tag="h2" size="5">Integrations</Heading>
|
||||
<Heading tag="h2" size="5" id="integrations">Integrations</Heading>
|
||||
<div class="tabs u-margin-block-start-24 u-sep-block-end">
|
||||
<button
|
||||
class="tabs-button-scroll is-start u-hide"
|
||||
|
||||
@@ -77,7 +77,9 @@
|
||||
</FormList>
|
||||
</svelte:fragment>
|
||||
<svelte:fragment slot="actions">
|
||||
<Button secondary href={`${base}/console/project-${projectId}/overview/keys`}>
|
||||
<Button
|
||||
secondary
|
||||
href={`${base}/console/project-${projectId}/overview/keys#integrations`}>
|
||||
View API Keys
|
||||
</Button>
|
||||
</svelte:fragment>
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
<svelte:fragment slot="header">Create File</svelte:fragment>
|
||||
<FormList>
|
||||
<div>
|
||||
<InputFile bind:files />
|
||||
<InputFile bind:files allowedFileExtensions={$bucket.allowedFileExtensions} />
|
||||
<p>Max file size: {calculateSize($bucket.maximumFileSize)}</p>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { derived } from 'svelte/store';
|
||||
import { page } from '$app/stores';
|
||||
import type { Models } from '@aw-labs/appwrite-console';
|
||||
|
||||
export const bucket = derived(page, ($page) => $page.data.bucket);
|
||||
export const bucket = derived(page, ($page) => $page.data.bucket as Models.Bucket);
|
||||
|
||||
@@ -14,10 +14,11 @@
|
||||
import { Unauthenticated } from '$lib/layout';
|
||||
import { Dependencies } from '$lib/constants';
|
||||
|
||||
let mail: string, pass: string;
|
||||
let mail: string, pass: string, disabled: boolean;
|
||||
|
||||
const login = async () => {
|
||||
async function login() {
|
||||
try {
|
||||
disabled = true;
|
||||
await sdkForConsole.account.createEmailSession(mail, pass);
|
||||
await invalidate(Dependencies.ACCOUNT);
|
||||
addNotification({
|
||||
@@ -26,12 +27,13 @@
|
||||
});
|
||||
await goto(`${base}/console`);
|
||||
} catch (error) {
|
||||
disabled = false;
|
||||
addNotification({
|
||||
type: 'error',
|
||||
message: error.message
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
@@ -59,7 +61,7 @@
|
||||
showPasswordButton={true}
|
||||
bind:value={pass} />
|
||||
<FormItem>
|
||||
<Button fullWidth submit>Sign in</Button>
|
||||
<Button fullWidth submit {disabled}>Sign in</Button>
|
||||
</FormItem>
|
||||
</FormList>
|
||||
</Form>
|
||||
|
||||
@@ -16,22 +16,24 @@
|
||||
import FormList from '$lib/elements/forms/formList.svelte';
|
||||
import { Dependencies } from '$lib/constants';
|
||||
|
||||
let name: string, mail: string, pass: string;
|
||||
let name: string, mail: string, pass: string, disabled: boolean;
|
||||
let terms = false;
|
||||
|
||||
const register = async () => {
|
||||
async function register() {
|
||||
try {
|
||||
disabled = true;
|
||||
await sdkForConsole.account.create('unique()', mail, pass, name ?? '');
|
||||
await sdkForConsole.account.createEmailSession(mail, pass);
|
||||
await invalidate(Dependencies.ACCOUNT);
|
||||
await goto(`${base}/console`);
|
||||
} catch (error) {
|
||||
disabled = false;
|
||||
addNotification({
|
||||
type: 'error',
|
||||
message: error.message
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
@@ -77,7 +79,7 @@
|
||||
rel="noopener noreferrer">General Terms of Use</a
|
||||
>.</InputChoice>
|
||||
<FormItem>
|
||||
<Button fullWidth submit>Sign up</Button>
|
||||
<Button fullWidth submit {disabled}>Sign up</Button>
|
||||
</FormItem>
|
||||
</FormList>
|
||||
</Form>
|
||||
|
||||
Reference in New Issue
Block a user