Migrate to object param SDK methods

This commit is contained in:
Jake Barnby
2025-08-23 19:37:05 +12:00
parent f0b28606e5
commit e99f6385c8
207 changed files with 1021 additions and 747 deletions
+3 -1
View File
@@ -32,7 +32,9 @@ export const bucketSearcher = (async (query: string) => {
const region = page.params.region;
const { buckets } = await sdk
.forProject(page.params.region, page.params.project)
.storage.listBuckets([Query.orderDesc('$createdAt')]);
.storage.listBuckets({
queries: [Query.orderDesc('$createdAt')]
});
const filtered = buckets.filter((bucket) => bucket.name.includes(query));
+1 -1
View File
@@ -8,7 +8,7 @@ import { page } from '$app/state';
export const dbSearcher = (async (query: string) => {
const { databases } = await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.list({});
.tablesDB.list();
return databases
.filter((db) => db.name.toLowerCase().includes(query.toLowerCase()))
+5 -1
View File
@@ -15,7 +15,11 @@ export const fileSearcher = (async (query: string) => {
const { files } = await sdk
.forProject(page.params.region, page.params.project)
.storage.listFiles($bucket.$id, [Query.orderDesc('')], query || undefined);
.storage.listFiles({
bucketId: $bucket.$id,
queries: [Query.orderDesc('')],
search: query || undefined
});
return files.map((file) => ({
label: file.name,
+3 -4
View File
@@ -7,10 +7,9 @@ import type { Searcher } from '../commands';
import { base } from '$app/paths';
export const projectsSearcher = (async (query: string) => {
const { projects } = await sdk.forConsole.projects.list([
Query.equal('teamId', get(organization).$id),
Query.orderDesc('')
]);
const { projects } = await sdk.forConsole.projects.list({
queries: [Query.equal('teamId', get(organization).$id), Query.orderDesc('')]
});
return projects
.filter((project) => project.name.toLowerCase().includes(query.toLowerCase()))
+1 -1
View File
@@ -8,7 +8,7 @@ export const tablesSearcher = (async (query: string) => {
const databaseId = page.params.database;
const { tables } = await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.listTables({ databaseId });
.tablesDB.listTables({ databaseId });
return tables
.filter((table) => table.name.toLowerCase().includes(query.toLowerCase()))
+3 -3
View File
@@ -17,9 +17,9 @@ const getTeamCommand = (team: Models.Team<Models.Preferences>, region: string, p
}) satisfies Command;
export const teamSearcher = (async (query: string) => {
const { teams } = await sdk
.forProject(page.params.region, page.params.project)
.teams.list([], query);
const { teams } = await sdk.forProject(page.params.region, page.params.project).teams.list({
search: query
});
if (teams.length === 1) {
return [
+3 -3
View File
@@ -18,9 +18,9 @@ const getUserCommand = (user: Models.User<Models.Preferences>, region: string, p
}) satisfies Command;
export const userSearcher = (async (query: string) => {
const { users } = await sdk
.forProject(page.params.region, page.params.project)
.users.list([], query || undefined);
const { users } = await sdk.forProject(page.params.region, page.params.project).users.list({
search: query || undefined
});
if (users.length === 1) {
return [
+3 -1
View File
@@ -9,7 +9,9 @@
export let size: AvatarProps['size'] = 'm';
export let background: string | undefined = undefined;
$: src = sdk.forConsole.avatars.getInitials(name, 192, 192, background).toString();
$: src = sdk.forConsole.avatars
.getInitials({ name, width: 192, height: 192, background })
.toString();
</script>
<Avatar alt={name} {size} {src} />
+1 -1
View File
@@ -80,7 +80,7 @@
try {
const table = await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.getTable({
.tablesDB.getTable({
databaseId,
tableId
});
+22 -8
View File
@@ -77,7 +77,12 @@
return (
sdk
.forProject(page.params.region, page.params.project)
.storage.getFilePreview(bucketId, fileId, size, size)
.storage.getFilePreview({
bucketId,
fileId,
width: size,
height: size
})
.toString() + '&mode=admin'
);
}
@@ -87,15 +92,20 @@
uploading = true;
let file = null;
if (localFileBucketSelected) {
file = await sdk
.forConsoleIn(page.params.region)
.storage.createFile('default', ID.unique(), localFile[0]);
file = await sdk.forConsoleIn(page.params.region).storage.createFile({
bucketId: 'default',
fileId: ID.unique(),
file: localFile[0]
});
} else {
file = await sdk
.forProject(page.params.region, page.params.project)
.storage.createFile(selectedBucket, ID.unique(), fileSelector.files[0], [
Permission.read(Role.any())
]);
.storage.createFile({
bucketId: selectedBucket,
fileId: ID.unique(),
file: fileSelector.files[0],
permissions: [Permission.read(Role.any())]
});
search.set($search === null ? '' : null);
}
selectFile(file);
@@ -203,7 +213,11 @@
currentBucket &&
sdk
.forProject(page.params.region, page.params.project)
.storage.listFiles(currentBucket.$id, getProperQuery(), $search || undefined)
.storage.listFiles({
bucketId: currentBucket.$id,
queries: getProperQuery(),
search: $search || undefined
})
.then((response) => {
if ($search === '') {
searchEnabled = response.total > 0;
@@ -56,7 +56,11 @@
if (repositoryBehaviour === 'new') {
const repo = await sdk
.forProject(page.params.region, page.params.project)
.vcs.createRepository($installation.$id, repositoryName, repositoryPrivate);
.vcs.createRepository({
installationId: $installation.$id,
name: repositoryName,
xprivate: repositoryPrivate
});
repository.set(repo);
selectedRepository = repo.id;
}
@@ -18,13 +18,19 @@
async function loadBranches() {
const repo = await sdk
.forProject(page.params.region, page.params.project)
.vcs.getRepository(installationId, repositoryId);
.vcs.getRepository({
installationId,
providerRepositoryId: repositoryId
});
branch = repo.defaultBranch ?? 'main';
const { branches } = await sdk
.forProject(page.params.region, page.params.project)
.vcs.listRepositoryBranches(installationId, repositoryId);
.vcs.listRepositoryBranches({
installationId,
providerRepositoryId: repositoryId
});
return sortBranches(branches);
}
+8 -8
View File
@@ -107,21 +107,21 @@
$repositories.repositories = (
(await sdk
.forProject(page.params.region, page.params.project)
.vcs.listRepositories(
.vcs.listRepositories({
installationId,
VCSDetectionType.Runtime,
search || undefined
)) as unknown as Models.ProviderRepositoryRuntimeList
type: VCSDetectionType.Runtime,
search: search || undefined
})) as unknown as Models.ProviderRepositoryRuntimeList
).runtimeProviderRepositories; //TODO: remove forced cast after backend fixes
} else {
$repositories.repositories = (
(await sdk
.forProject(page.params.region, page.params.project)
.vcs.listRepositories(
.vcs.listRepositories({
installationId,
VCSDetectionType.Framework,
search || undefined
)) as unknown as Models.ProviderRepositoryFrameworkList
type: VCSDetectionType.Framework,
search: search || undefined
})) as unknown as Models.ProviderRepositoryFrameworkList
).frameworkProviderRepositories;
}
$repositories.search = search;
+12 -2
View File
@@ -43,7 +43,12 @@
try {
const content = await sdk
.forProject(page.params.region, page.params.project)
.vcs.getRepositoryContents($installation.$id, $repository.id, currentPath, branch);
.vcs.getRepositoryContents({
installationId: $installation.$id,
providerRepositoryId: $repository.id,
providerRootDirectory: currentPath,
providerReference: branch
});
directories[0].fileCount = content.contents?.length ?? 0;
directories[0].children = content.contents
.filter((e) => e.isDirectory)
@@ -83,7 +88,12 @@
try {
const content = await sdk
.forProject(page.params.region, page.params.project)
.vcs.getRepositoryContents($installation.$id, $repository.id, path, branch);
.vcs.getRepositoryContents({
installationId: $installation.$id,
providerRepositoryId: $repository.id,
providerRootDirectory: path,
providerReference: branch
});
const fileCount = content.contents?.length ?? 0;
const contentDirectories = content.contents.filter((e) => e.isDirectory);
+2 -2
View File
@@ -29,13 +29,13 @@
if (role === 'user') {
const user = await sdk
.forProject(page.params.region, page.params.project)
.users.get(id);
.users.get({ userId: id });
return user;
}
if (role === 'team') {
const team = await sdk
.forProject(page.params.region, page.params.project)
.teams.get(id);
.teams.get({ teamId: id });
return team;
}
}
+4 -3
View File
@@ -45,9 +45,10 @@
async function request() {
if (!show) return;
isLoading = true;
results = await sdk
.forProject(page.params.region, page.params.project)
.teams.list([Query.limit(5), Query.offset(offset)], search || undefined);
results = await sdk.forProject(page.params.region, page.params.project).teams.list({
queries: [Query.limit(5), Query.offset(offset)],
search: search || undefined
});
isLoading = false;
}
+4 -3
View File
@@ -48,9 +48,10 @@
async function request() {
if (!show) return;
isLoading = true;
results = await sdk
.forProject(page.params.region, page.params.project)
.users.list([Query.limit(5), Query.offset(offset)], search || undefined);
results = await sdk.forProject(page.params.region, page.params.project).users.list({
queries: [Query.limit(5), Query.offset(offset)],
search: search || undefined
});
isLoading = false;
}
+6 -6
View File
@@ -11,15 +11,15 @@ export async function generateColumns(
const client = sdk.forProject(project.region, project.$id);
return await Promise.all([
client.tablesDb.createStringColumn({
client.tablesDB.createStringColumn({
databaseId,
tableId,
key: 'name',
size: 255,
required: false
}),
client.tablesDb.createEmailColumn({ databaseId, tableId, key: 'email', required: false }),
client.tablesDb.createIntegerColumn({
client.tablesDB.createEmailColumn({ databaseId, tableId, key: 'email', required: false }),
client.tablesDB.createIntegerColumn({
databaseId,
tableId,
key: 'age',
@@ -27,21 +27,21 @@ export async function generateColumns(
min: 0,
max: 150
}),
client.tablesDb.createStringColumn({
client.tablesDB.createStringColumn({
databaseId,
tableId,
key: 'city',
size: 100,
required: false
}),
client.tablesDb.createStringColumn({
client.tablesDB.createStringColumn({
databaseId,
tableId,
key: 'description',
size: 1000,
required: false
}),
client.tablesDb.createBooleanColumn({ databaseId, tableId, key: 'active', required: false })
client.tablesDB.createBooleanColumn({ databaseId, tableId, key: 'active', required: false })
]);
}
+3 -1
View File
@@ -4,5 +4,7 @@ import { sdk } from '$lib/stores/sdk';
export function getFlagUrl(countryCode: string) {
if (!isValueOfStringEnum(Flag, countryCode)) return '';
return sdk.forConsole.avatars.getFlag(countryCode, 22, 15, 100)?.toString();
return sdk.forConsole.avatars
.getFlag({ code: countryCode, width: 22, height: 15, quality: 100 })
?.toString();
}
+1 -1
View File
@@ -6,7 +6,7 @@ import { base } from '$app/paths';
import { uploader } from '$lib/stores/uploader';
export async function logout(redirect: boolean = true) {
await sdk.forConsole.account.deleteSession('current');
await sdk.forConsole.account.deleteSession({ sessionId: 'current' });
await invalidate(Dependencies.ACCOUNT);
uploader.reset();
trackEvent(Submit.AccountLogout);
+1 -1
View File
@@ -126,7 +126,7 @@ const sdkForProject = {
proxy: new Proxy(clientProject),
migrations: new Migrations(clientProject),
sites: new Sites(clientProject),
tablesDb: new TablesDB(clientProject)
tablesDB: new TablesDB(clientProject)
};
export const realtime = {
+1 -1
View File
@@ -20,7 +20,7 @@
let code = '';
async function back() {
await sdk.forConsole.account.deleteSession('current');
await sdk.forConsole.account.deleteSession({ sessionId: 'current' });
await goto(base);
}
@@ -36,7 +36,11 @@
const beforeSubmit = async () => {
if (projectType === 'existing') return;
const project = await sdk.forConsole.projects.create(ID.unique(), newProjName, selectedOrg);
const project = await sdk.forConsole.projects.create({
projectId: ID.unique(),
name: newProjName,
teamId: selectedOrg
});
selectedProject.set(project.$id);
};
</script>
+11 -9
View File
@@ -326,15 +326,17 @@
$: projects = isOnOnboarding
? null
: sdk.forConsole.projects.list([
Query.equal(
'teamId',
// id from page params ?? id from store ?? id from preferences
page.params.organization ?? currentOrganizationId ?? data.currentOrgId
),
Query.limit(5),
Query.orderDesc('$updatedAt')
]);
: sdk.forConsole.projects.list({
queries: [
Query.equal(
'teamId',
// id from page params ?? id from store ?? id from preferences
page.params.organization ?? currentOrganizationId ?? data.currentOrgId
),
Query.limit(5),
Query.orderDesc('$updatedAt')
]
});
$: if ($requestedMigration) {
openMigrationWizard();
@@ -12,6 +12,8 @@ export const load: PageLoad = async ({ url, route }) => {
return {
offset,
limit,
logs: await sdk.forConsole.account.listLogs([Query.offset(offset), Query.limit(limit)])
logs: await sdk.forConsole.account.listLogs({
queries: [Query.offset(offset), Query.limit(limit)]
})
};
};
@@ -13,7 +13,9 @@
async function deleteAuthenticator() {
try {
await sdk.forConsole.account.deleteMfaAuthenticator(AuthenticatorType.Totp);
await sdk.forConsole.account.deleteMfaAuthenticator({
type: AuthenticatorType.Totp
});
await invalidate(Dependencies.ACCOUNT);
await invalidate(Dependencies.FACTORS);
showDelete = false;
@@ -15,7 +15,7 @@
async function deleteIdentity(id: string) {
try {
await sdk.forConsole.account.deleteIdentity(id);
await sdk.forConsole.account.deleteIdentity({ identityId: id });
addNotification({
message: 'Identity has been deleted',
type: 'success'
+8 -3
View File
@@ -17,15 +17,20 @@
let error = '';
async function addAuthenticator(): Promise<string> {
type = await sdk.forConsole.account.createMfaAuthenticator(AuthenticatorType.Totp);
type = await sdk.forConsole.account.createMfaAuthenticator({
type: AuthenticatorType.Totp
});
trackEvent(Submit.AccountAuthenticatorCreate);
return sdk.forConsole.avatars.getQR(type.uri, 192 * 2);
return sdk.forConsole.avatars.getQR({ text: type.uri, size: 192 * 2 });
}
async function verifyAuthenticator() {
try {
await sdk.forConsole.account.updateMfaAuthenticator(AuthenticatorType.Totp, code);
await sdk.forConsole.account.updateMfaAuthenticator({
type: AuthenticatorType.Totp,
otp: code
});
await Promise.all([invalidate(Dependencies.ACCOUNT), invalidate(Dependencies.FACTORS)]);
showSetup = false;
addNotification({
@@ -27,7 +27,7 @@
let addOrganization = false;
const getMemberships = async (teamId: string) => {
const memberships = await sdk.forConsole.teams.listMemberships(teamId);
const memberships = await sdk.forConsole.teams.listMemberships({ teamId });
return memberships.memberships.map((team) => team.userName || team.userEmail);
};
@@ -13,7 +13,7 @@ export const load: PageLoad = async ({ url, route }) => {
const queries = [Query.offset(offset), Query.limit(limit), Query.orderDesc('')];
const organizations = !isCloud
? await sdk.forConsole.teams.list(queries)
? await sdk.forConsole.teams.list({ queries })
: await sdk.forConsole.billing.listOrganization(queries);
return {
@@ -21,7 +21,7 @@
const code = clientCode.toLowerCase();
if (!isValueOfStringEnum(Browser, code)) return '';
return sdk.forConsole.avatars.getBrowser(code, 40, 40);
return sdk.forConsole.avatars.getBrowser({ code, width: 40, height: 40 });
}
function logoutSessionId(sessionId: string) {
@@ -34,7 +34,9 @@
async function logout(session: Models.Session) {
let result;
try {
result = await sdk.forConsole.account.deleteSession(session.$id);
result = await sdk.forConsole.account.deleteSession({
sessionId: session.$id
});
} catch (e) {
addNotification({
type: 'error',
@@ -18,7 +18,10 @@
async function updateEmail() {
try {
await sdk.forConsole.account.updateEmail(email, emailPassword);
await sdk.forConsole.account.updateEmail({
email,
password: emailPassword
});
await Promise.all([invalidate(Dependencies.ACCOUNT), invalidate(Dependencies.FACTORS)]);
addNotification({
message: 'Email has been updated',
@@ -17,7 +17,9 @@
async function updateName() {
try {
await sdk.forConsole.account.updateName(name);
await sdk.forConsole.account.updateName({
name
});
await invalidate(Dependencies.ACCOUNT);
addNotification({
message: 'Name has been updated',
@@ -12,7 +12,10 @@
async function updatePassword() {
try {
await sdk.forConsole.account.updatePassword(newPassword, oldPassword);
await sdk.forConsole.account.updatePassword({
password: newPassword,
oldPassword
});
newPassword = oldPassword = null;
addNotification({
message: 'Password has been updated',
@@ -21,7 +21,10 @@
async function create() {
try {
const org = await sdk.forConsole.teams.create(ID.unique(), name);
const org = await sdk.forConsole.teams.create({
teamId: ID.unique(),
name
});
await invalidate(Dependencies.ACCOUNT);
dispatch('created');
await goto(`${base}/organization-${org.$id}`);
@@ -35,7 +35,10 @@
members_invited: 0
});
} else {
organization = await sdk.forConsole.teams.create(ID.unique(), organizationName);
organization = await sdk.forConsole.teams.create({
teamId: ID.unique(),
name: organizationName
});
}
} catch (e) {
trackError(e, Submit.OrganizationCreate);
@@ -65,10 +65,9 @@ export const load: PageLoad = async ({ parent }) => {
const org = organizations.teams[0];
let projects: Models.ProjectList = null;
try {
projects = await sdk.forConsole.projects.list([
Query.equal('teamId', org.$id),
Query.limit(1)
]);
projects = await sdk.forConsole.projects.list({
queries: [Query.equal('teamId', org.$id), Query.limit(1)]
});
} catch (e) {
redirect(303, `${base}/organization-${org.$id}`);
}
@@ -43,8 +43,8 @@ export const load: LayoutLoad = async ({ params, depends, parent }) => {
}
const [organization, members, countryList, locale] = await Promise.all([
sdk.forConsole.teams.get(params.organization) as Promise<Organization>,
sdk.forConsole.teams.listMemberships(params.organization),
sdk.forConsole.teams.get({ teamId: params.organization }) as Promise<Organization>,
sdk.forConsole.teams.listMemberships({ teamId: params.organization }),
sdk.forConsole.locale.listCountries(),
sdk.forConsole.locale.get(),
preferences.loadTeamPrefs(params.organization),
@@ -27,7 +27,11 @@
try {
disabled = true;
showSubmissionLoader = true;
const project = await sdk.forConsole.projects.create(id ?? ID.unique(), name, teamId);
const project = await sdk.forConsole.projects.create({
projectId: id ?? ID.unique(),
name,
teamId
});
show = false;
dispatch('created', project);
trackEvent(Submit.ProjectCreate, {
@@ -29,7 +29,12 @@
showSubmissionLoader = true;
try {
project = await sdk.forConsole.projects.create(id ?? ID.unique(), name, teamId, region);
project = await sdk.forConsole.projects.create({
projectId: id ?? ID.unique(),
name,
teamId,
region
});
await goto(`${base}/project-${project.region}-${project.$id}`);
trackEvent(Submit.ProjectCreate, { customId: !!id, teamId, region: region });
@@ -22,7 +22,10 @@
const deleteMembership = async () => {
try {
await sdk.forConsole.teams.deleteMembership(selectedMember.teamId, selectedMember.$id);
await sdk.forConsole.teams.deleteMembership({
teamId: selectedMember.teamId,
membershipId: selectedMember.$id
});
if (isUser) {
logout();
@@ -22,12 +22,14 @@ export const load = async ({ depends, url, route, parent }) => {
limit,
query,
search,
domains: await sdk.forConsole.domains.list([
Query.limit(limit),
Query.offset(offset),
Query.orderDesc(''),
Query.equal('teamId', organization.$id),
...parsedQueries.values()
])
domains: await sdk.forConsole.domains.list({
queries: [
Query.limit(limit),
Query.offset(offset),
Query.orderDesc(''),
Query.equal('teamId', organization.$id),
...parsedQueries.values()
]
})
};
};
@@ -17,7 +17,9 @@
async function deleteDomain() {
try {
await sdk.forConsole.domains.delete(selectedDomain.$id);
await sdk.forConsole.domains.delete({
domainId: selectedDomain.$id
});
show = false;
addNotification({
type: 'success',
@@ -15,7 +15,10 @@
async function deleteDomain() {
try {
await sdk.forConsole.domains.deleteRecord(page.params.domain, selectedRecord.$id);
await sdk.forConsole.domains.deleteRecord({
domainId: page.params.domain,
recordId: selectedRecord.$id
});
await invalidate(Dependencies.DOMAINS);
show = false;
addNotification({
@@ -22,7 +22,10 @@
const file = files[0];
const content = await file.text();
await sdk.forConsole.domains.updateZone(page.params.domain, content);
await sdk.forConsole.domains.updateZone({
domainId: page.params.domain,
content
});
invalidate(Dependencies.DOMAIN);
show = false;
addNotification({
@@ -28,7 +28,10 @@
async function updateName() {
try {
await sdk.forConsole.teams.updateName($organization.$id, name);
await sdk.forConsole.teams.updateName({
teamId: $organization.$id,
name
});
await invalidate(Dependencies.ORGANIZATION);
addNotification({
message: 'Name has been updated',
@@ -9,7 +9,7 @@ export const load: PageLoad = async ({ depends, params, parent }) => {
depends(Dependencies.ORGANIZATION);
const [projects, invoices] = await Promise.all([
sdk.forConsole.projects.list([Query.equal('teamId', params.organization)]),
sdk.forConsole.projects.list({ queries: [Query.equal('teamId', params.organization)] }),
isCloud ? sdk.forConsole.billing.listInvoices(params.organization) : undefined
]);
@@ -30,7 +30,9 @@
if (isCloud) {
await sdk.forConsole.billing.deleteOrganization($organization.$id);
} else {
await sdk.forConsole.teams.delete($organization.$id);
await sdk.forConsole.teams.delete({
teamId: $organization.$id
});
}
const prefs = await sdk.forConsole.account.getPrefs();
const newPrefs = { ...prefs, organization: null };
@@ -55,7 +55,7 @@ export const load: PageLoad = async ({ params, parent }) => {
// so it is fine to use this check and fetch memberships conditionally!
!plan?.addons?.seats?.supported
? null
: sdk.forConsole.teams.listMemberships(org.$id, [Query.limit(100)])
: sdk.forConsole.teams.listMemberships({ teamId: org.$id, queries: [Query.limit(100)] })
]);
return {
@@ -76,7 +76,9 @@ function getUsageProjects(usage: OrganizationUsage) {
for (let index = 0; index < usage.projects.length; index += limit) {
const chunkIds = usage.projects.slice(index, index + limit).map((p) => p.projectId);
requests.push(
sdk.forConsole.projects.list([Query.limit(limit), Query.equal('$id', chunkIds)])
sdk.forConsole.projects.list({
queries: [Query.limit(limit), Query.equal('$id', chunkIds)]
})
);
}
@@ -15,7 +15,7 @@ export const load: LayoutLoad = async ({ params, depends, parent }) => {
const { plansInfo, organizations, preferences: prefs } = await parent();
depends(Dependencies.PROJECT);
const project = await sdk.forConsole.projects.get(params.project);
const project = await sdk.forConsole.projects.get({ projectId: params.project });
project.region ??= 'default';
// fast path without a network call!
@@ -27,7 +27,7 @@ export const load: LayoutLoad = async ({ params, depends, parent }) => {
const [org, regionalConsoleVariables, rolesResult, organizationPlan] = await Promise.all([
!organization
? (sdk.forConsole.teams.get(project.teamId) as Promise<Organization>)
? (sdk.forConsole.teams.get({ teamId: project.teamId }) as Promise<Organization>)
: organization,
sdk.forConsoleIn(project.region).console.variables(),
isCloud ? sdk.forConsole.billing.getRoles(project.teamId) : null,
@@ -20,8 +20,9 @@ export const load: PageLoad = async ({ url, route, params }) => {
limit,
search,
page,
users: await sdk
.forProject(params.region, params.project)
.users.list([Query.limit(limit), Query.offset(offset), Query.orderDesc('')], search)
users: await sdk.forProject(params.region, params.project).users.list({
queries: [Query.limit(limit), Query.offset(offset), Query.orderDesc('')],
search
})
};
};
@@ -21,7 +21,10 @@
try {
const team = await sdk
.forProject(page.params.region, page.params.project)
.teams.create(id ?? ID.unique(), name);
.teams.create({
teamId: id ?? ID.unique(),
name
});
name = '';
showCreate = false;
showCustomId = false;
@@ -38,7 +38,10 @@
async function updateMockNumbers() {
try {
await sdk.forConsole.projects.updateMockNumbers($project.$id, numbers);
await sdk.forConsole.projects.updateMockNumbers({
projectId: $project.$id,
numbers
});
await invalidate(Dependencies.PROJECT);
addNotification({
type: 'success',
@@ -13,7 +13,10 @@
async function updateSessionAlerts() {
try {
await sdk.forConsole.projects.updateSessionAlerts($project.$id, authSessionAlerts);
await sdk.forConsole.projects.updateSessionAlerts({
projectId: $project.$id,
alerts: authSessionAlerts
});
await invalidate(Dependencies.PROJECT);
addNotification({
type: 'success',
@@ -17,7 +17,10 @@
async function updateSessionLength() {
try {
await sdk.forConsole.projects.updateAuthDuration(project.$id, $baseValue);
await sdk.forConsole.projects.updateAuthDuration({
projectId: project.$id,
duration: $baseValue
});
await invalidate(Dependencies.PROJECT);
addNotification({
@@ -13,7 +13,10 @@
async function updateSessionsLimit() {
try {
await sdk.forConsole.projects.updateAuthSessionsLimit($project.$id, maxSessions);
await sdk.forConsole.projects.updateAuthSessionsLimit({
projectId: $project.$id,
limit: maxSessions
});
await invalidate(Dependencies.PROJECT);
addNotification({
@@ -28,7 +28,10 @@
async function updateLimit() {
try {
await sdk.forConsole.projects.updateAuthLimit($project?.$id, isLimited ? newLimit : 0);
await sdk.forConsole.projects.updateAuthLimit({
projectId: $project?.$id,
limit: isLimited ? newLimit : 0
});
await invalidate(Dependencies.PROJECT);
addNotification({
type: 'success',
@@ -23,7 +23,11 @@
async function authUpdate(box: AuthMethod) {
try {
await sdk.forConsole.projects.updateAuthStatus(projectId, box.method, box.value);
await sdk.forConsole.projects.updateAuthStatus({
projectId,
method: box.method,
status: box.value
});
addNotification({
type: 'success',
message: `${box.label} authentication has been updated`
@@ -15,8 +15,9 @@ export const load: PageLoad = async ({ url, route, params }) => {
limit,
search,
page,
teams: await sdk
.forProject(params.region, params.project)
.teams.list([Query.limit(limit), Query.offset(offset), Query.orderDesc('')], search)
teams: await sdk.forProject(params.region, params.project).teams.list({
queries: [Query.limit(limit), Query.offset(offset), Query.orderDesc('')],
search
})
};
};
@@ -9,6 +9,6 @@ export const load: LayoutLoad = async ({ params, depends }) => {
return {
header: Header,
breadcrumbs: Breadcrumbs,
team: await sdk.forProject(params.region, params.project).teams.get(params.team)
team: await sdk.forProject(params.region, params.project).teams.get({ teamId: params.team })
};
};
@@ -14,6 +14,9 @@ export const load: PageLoad = async ({ params, url, route }) => {
limit,
logs: await sdk
.forProject(params.region, params.project)
.teams.listLogs(params.team, [Query.limit(limit), Query.offset(offset)])
.teams.listLogs({
teamId: params.team,
queries: [Query.limit(limit), Query.offset(offset)]
})
};
};
@@ -20,7 +20,10 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.teams.deleteMembership(selectedMembership.teamId, selectedMembership.$id);
.teams.deleteMembership({
teamId: selectedMembership.teamId,
membershipId: selectedMembership.$id
});
showDelete = false;
dispatch('deleted');
trackEvent(Submit.MemberDelete);
@@ -15,7 +15,9 @@
async function deleteTeam() {
try {
await sdk.forProject(page.params.region, page.params.project).teams.delete(team.$id);
await sdk.forProject(page.params.region, page.params.project).teams.delete({
teamId: team.$id
});
showDelete = false;
trackEvent(Submit.TeamDelete);
await goto(`${base}/project-${page.params.region}-${page.params.project}/auth/teams`);
@@ -20,7 +20,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.teams.updateName(page.params.team, teamName);
.teams.updateName({ teamId: page.params.team, name: teamName });
await invalidate(Dependencies.TEAM);
addNotification({
message: 'Name has been updated',
@@ -40,7 +40,7 @@
await sdk
.forProject(page.params.region, page.params.project)
.teams.updatePrefs($team.$id, updatedPrefs);
.teams.updatePrefs({ teamId: $team.$id, prefs: updatedPrefs });
await invalidate(Dependencies.TEAM);
arePrefsDisabled = true;
@@ -8,8 +8,8 @@ export const load: LayoutLoad = async ({ params, depends }) => {
depends(Dependencies.USER);
const [user, userFactors] = await Promise.all([
sdk.forProject(params.region, params.project).users.get(params.user),
sdk.forProject(params.region, params.project).users.listMfaFactors(params.user)
sdk.forProject(params.region, params.project).users.get({ userId: params.user }),
sdk.forProject(params.region, params.project).users.listMfaFactors({ userId: params.user })
]);
return {
@@ -13,6 +13,9 @@ export const load: PageLoad = async ({ params, url, route }) => {
limit,
logs: await sdk
.forProject(params.region, params.project)
.users.listLogs(params.user, [Query.limit(limit), Query.offset(offset)])
.users.listLogs({
userId: params.user,
queries: [Query.limit(limit), Query.offset(offset)]
})
};
};
@@ -16,7 +16,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.deleteSessions(page.params.user);
.users.deleteSessions({ userId: page.params.user });
await invalidate(Dependencies.SESSIONS);
showDeleteAll = false;
addNotification({
@@ -17,9 +17,10 @@
async function deleteMembership() {
try {
await sdk
.forProject(page.params.region, page.params.project)
.teams.deleteMembership(selectedMembership.teamId, selectedMembership.$id);
await sdk.forProject(page.params.region, page.params.project).teams.deleteMembership({
teamId: selectedMembership.teamId,
membershipId: selectedMembership.$id
});
await invalidate(Dependencies.MEMBERSHIPS);
showDelete = false;
addNotification({
@@ -17,7 +17,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.deleteMfaAuthenticator($user.$id, AuthenticatorType.Totp);
.users.deleteMfaAuthenticator({ userId: $user.$id, type: AuthenticatorType.Totp });
await invalidate(Dependencies.USER);
showDelete = false;
addNotification({
@@ -15,7 +15,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.deleteSession(page.params.user, selectedSessionId);
.users.deleteSession({ userId: page.params.user, sessionId: selectedSessionId });
await invalidate(Dependencies.SESSIONS);
showDelete = false;
addNotification({
@@ -14,7 +14,9 @@
let error: string;
const deleteUser = async () => {
try {
await sdk.forProject(page.params.region, page.params.project).users.delete($user.$id);
await sdk
.forProject(page.params.region, page.params.project)
.users.delete({ userId: $user.$id });
showDelete = false;
addNotification({
type: 'success',
@@ -26,7 +26,9 @@
showDelete = false;
const promises = selectedIds.map((id) =>
sdk.forProject(page.params.region, page.params.project).users.deleteIdentity(id)
sdk
.forProject(page.params.region, page.params.project)
.users.deleteIdentity({ identityId: id })
);
try {
@@ -7,6 +7,6 @@ export const load: PageLoad = async ({ params }) => {
localeCodes: codes.localeCodes,
memberships: await sdk
.forProject(params.region, params.project)
.users.listMemberships(params.user)
.users.listMemberships({ userId: params.user })
};
};
@@ -28,7 +28,7 @@
const code = clientCode.toLowerCase();
if (!isValueOfStringEnum(Browser, code)) return '';
return sdk.forConsole.avatars.getBrowser(code, 40, 40);
return sdk.forConsole.avatars.getBrowser({ code, width: 40, height: 40 });
}
</script>
@@ -8,6 +8,6 @@ export const load: PageLoad = async ({ params, depends }) => {
return {
sessions: await sdk
.forProject(params.region, params.project)
.users.listSessions(params.user)
.users.listSessions({ userId: params.user })
};
};
@@ -16,14 +16,15 @@ export const load: PageLoad = async ({ params, url, route, depends }) => {
const parsedQueries = queryParamToMap(query || '[]');
queries.set(parsedQueries);
const targets = await sdk
.forProject(params.region, params.project)
.users.listTargets(params.user, [
const targets = await sdk.forProject(params.region, params.project).users.listTargets({
userId: params.user,
queries: [
Query.limit(limit),
Query.offset(offset),
Query.orderDesc(''),
...parsedQueries.values()
]);
]
});
const promisesById: Record<string, Promise<Models.Provider>> = {};
targets.targets.forEach((target) => {
@@ -27,7 +27,7 @@
const promises = selectedIds.map((id) =>
sdk
.forProject(page.params.region, page.params.project)
.users.deleteTarget(page.params.user, id)
.users.deleteTarget({ userId: page.params.user, targetId: id })
);
try {
@@ -18,9 +18,10 @@
async function updateEmail() {
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updateEmail($user.$id, userEmail);
await sdk.forProject(page.params.region, page.params.project).users.updateEmail({
userId: $user.$id,
email: userEmail
});
await invalidate(Dependencies.USER);
addNotification({
message: 'Email has been updated',
@@ -26,7 +26,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updateLabels($user.$id, labels);
.users.updateLabels({ userId: $user.$id, labels });
await invalidate(Dependencies.USER);
isDisabled = true;
@@ -24,7 +24,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updateMfa($user.$id, userMfa);
.users.updateMfa({ userId: $user.$id, mfa: userMfa });
await invalidate(Dependencies.USER);
addNotification({
message: `Multi-factor authentication has been ${userMfa ? 'enabled' : 'disabled'}`,
@@ -17,9 +17,10 @@
async function updateName() {
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updateName($user.$id, userName);
await sdk.forProject(page.params.region, page.params.project).users.updateName({
userId: $user.$id,
name: userName
});
await invalidate(Dependencies.USER);
addNotification({
message: 'Name has been updated',
@@ -13,7 +13,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updatePassword($user.$id, newPassword);
.users.updatePassword({ userId: $user.$id, password: newPassword });
newPassword = null;
addNotification({
message: 'Password has been updated',
@@ -17,9 +17,10 @@
async function updatePhone() {
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updatePhone($user.$id, userPhone);
await sdk.forProject(page.params.region, page.params.project).users.updatePhone({
userId: $user.$id,
number: userPhone
});
await invalidate(Dependencies.USER);
addNotification({
message: 'Phone has been updated',
@@ -36,7 +36,7 @@
await sdk
.forProject(page.params.region, page.params.project)
.users.updatePrefs($user.$id, updatedPrefs);
.users.updatePrefs({ userId: $user.$id, prefs: updatedPrefs });
await invalidate(Dependencies.USER);
arePrefsDisabled = true;
@@ -20,7 +20,10 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updateEmailVerification($user.$id, !$user.emailVerification);
.users.updateEmailVerification({
userId: $user.$id,
emailVerification: !$user.emailVerification
});
await invalidate(Dependencies.USER);
addNotification({
message: `${$user.name || $user.email || $user.phone || 'The account'} has been ${
@@ -42,7 +45,10 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updatePhoneVerification($user.$id, !$user.phoneVerification);
.users.updatePhoneVerification({
userId: $user.$id,
phoneVerification: !$user.phoneVerification
});
await invalidate(Dependencies.USER);
addNotification({
message: `${$user.name || $user.email || $user.phone || 'The account'} has been ${
@@ -63,7 +69,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.users.updateStatus($user.$id, !$user.status);
.users.updateStatus({ userId: $user.$id, status: !$user.status });
await invalidate(Dependencies.USER);
addNotification({
message: `${$user.name || $user.email || $user.phone || 'The account'} has been ${
@@ -52,7 +52,7 @@ async function fetchDatabasesAndBackups(
const projectSDK = sdk.forProject(params.region, params.project);
const databases = await projectSDK.tablesDb.list({
const databases = await projectSDK.tablesDB.list({
queries: [Query.limit(limit), Query.offset(offset), Query.orderDesc('$createdAt')],
search: search || undefined
});
@@ -62,7 +62,7 @@ async function fetchDatabasesAndBackups(
await Promise.all(
// TODO: backend should allow `Query.select` for perf!
databases.databases.map(async ({ $id }) => {
const res = await projectSDK.tablesDb.listTables({
const res = await projectSDK.tablesDB.listTables({
databaseId: $id,
queries: [Query.limit(1), Query.orderDesc('')]
});
@@ -83,7 +83,7 @@
const databaseId = id ? id : ID.unique();
const database = await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.create({
.tablesDB.create({
databaseId,
name
});
@@ -8,7 +8,7 @@ import SubNavigation from './subNavigation.svelte';
export const load: LayoutLoad = async ({ params, depends }) => {
depends(Dependencies.DATABASE);
const database = await sdk.forProject(params.region, params.project).tablesDb.get({
const database = await sdk.forProject(params.region, params.project).tablesDB.get({
databaseId: params.database
});
@@ -13,7 +13,7 @@ export const load: PageLoad = async ({ params, url, route, depends }) => {
const view = getView(url, route, View.Grid);
const offset = pageToOffset(page, limit);
const tables = await sdk.forProject(params.region, params.project).tablesDb.listTables({
const tables = await sdk.forProject(params.region, params.project).tablesDB.listTables({
databaseId: params.database,
queries: [Query.limit(limit), Query.offset(offset), Query.orderDesc('')],
search: search || undefined
@@ -29,7 +29,7 @@
try {
const table = await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.createTable({
.tablesDB.createTable({
databaseId,
tableId: id ? id : ID.unique(),
name
@@ -47,7 +47,10 @@
tables = await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.listTables(databaseId, queries);
.tablesDB.listTables({
databaseId,
queries
});
const tablePromises = tables.tables.map(async (table) => {
return {
@@ -69,7 +72,7 @@
try {
await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.delete({ databaseId });
.tablesDB.delete({ databaseId });
showDelete = false;
addNotification({
type: 'success',
@@ -28,7 +28,10 @@
async function loadTableCount() {
const { total } = await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.listTables($database.$id, [Query.limit(1)]);
.tablesDB.listTables({
databaseId: $database.$id,
queries: [Query.limit(1)]
});
return total;
}
@@ -40,7 +43,7 @@
async function updateName() {
try {
await sdk.forProject(page.params.region, page.params.project).tablesDb.update({
await sdk.forProject(page.params.region, page.params.project).tablesDB.update({
databaseId: page.params.database,
name: databaseName
});
@@ -11,7 +11,7 @@
) {
await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.createStringColumn(
.tablesDB.createStringColumn(
databaseId,
tableId,
key,
@@ -29,7 +29,7 @@
) {
await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.updateStringColumn(
.tablesDB.updateStringColumn(
databaseId,
tableId,
originalKey,
@@ -42,7 +42,7 @@
);
async function loadTables() {
tables = await sdk.forProject(region, project).tablesDb.listTables({
tables = await sdk.forProject(region, project).tablesDB.listTables({
databaseId: databaseId,
queries: [Query.orderDesc(''), Query.limit(100)]
});
@@ -273,7 +273,7 @@
rowIds = ids;
await sdk.forProject(page.params.region, page.params.project).tablesDb.createRows({
await sdk.forProject(page.params.region, page.params.project).tablesDB.createRows({
databaseId: page.params.database,
tableId: page.params.table,
rows
@@ -10,7 +10,7 @@ export const load: LayoutLoad = async ({ params, depends }) => {
return {
header: Header,
breadcrumbs: Breadcrumbs,
table: await sdk.forProject(params.region, params.project).tablesDb.getTable({
table: await sdk.forProject(params.region, params.project).tablesDB.getTable({
databaseId: params.database,
tableId: params.table
})
@@ -30,7 +30,7 @@ export const load: PageLoad = async ({ params, depends, url, route, parent }) =>
view,
query,
currentSort,
rows: await sdk.forProject(params.region, params.project).tablesDb.listRows({
rows: await sdk.forProject(params.region, params.project).tablesDB.listRows({
databaseId: params.database,
tableId: params.table,
queries: buildGridQueries(limit, offset, parsedQueries, table)
@@ -12,11 +12,10 @@ export const load: PageLoad = async ({ params, url, route }) => {
return {
offset,
limit,
logs: await sdk
.forProject(params.region, params.project)
.tablesDb.listTableLogs(params.database, params.table, [
Query.limit(limit),
Query.offset(offset)
])
logs: await sdk.forProject(params.region, params.project).tablesDB.listTableLogs({
databaseId: params.database,
tableId: params.table,
queries: [Query.limit(limit), Query.offset(offset)]
})
};
};
@@ -9,16 +9,14 @@
key: string,
data: Partial<Models.ColumnBoolean>
) {
await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.createBooleanColumn(
databaseId,
tableId,
key,
data.required,
data.default,
data.array
);
await sdk.forProject(page.params.region, page.params.project).tablesDB.createBooleanColumn({
databaseId,
tableId,
key,
required: data.required,
xdefault: data.default,
array: data.array
});
}
export async function updateBoolean(
databaseId: string,
@@ -26,16 +24,14 @@
data: Partial<Models.ColumnBoolean>,
originalKey?: string
) {
await sdk
.forProject(page.params.region, page.params.project)
.tablesDb.updateBooleanColumn(
databaseId,
tableId,
originalKey,
data.required,
data.default,
data.key !== originalKey ? data.key : undefined
);
await sdk.forProject(page.params.region, page.params.project).tablesDB.updateBooleanColumn({
databaseId,
tableId,
key: originalKey,
required: data.required,
xdefault: data.default,
newKey: data.key !== originalKey ? data.key : undefined
});
}
</script>

Some files were not shown because too many files have changed in this diff Show More