mirror of
https://github.com/anomalyco/opencode.git
synced 2026-08-15 17:08:21 -04:00
Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 26ad7d7561 | |||
| 0fb44051ee | |||
| 1b096b4148 | |||
| be227503af | |||
| 4ddfa7c6fa | |||
| 2415434ad9 | |||
| bf4c647653 | |||
| f35bb5184c | |||
| 2c5335d84c | |||
| 7793db3ac8 | |||
| 5f77482a29 | |||
| 30aec297d8 | |||
| a9c810cbbc | |||
| fe2e4e21d0 | |||
| 03a2504d3d | |||
| bace18ccd3 | |||
| cd2e6f06ee |
@@ -29,7 +29,7 @@
|
|||||||
},
|
},
|
||||||
"packages/app": {
|
"packages/app": {
|
||||||
"name": "@opencode-ai/app",
|
"name": "@opencode-ai/app",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@kobalte/core": "catalog:",
|
"@kobalte/core": "catalog:",
|
||||||
"@opencode-ai/core": "workspace:*",
|
"@opencode-ai/core": "workspace:*",
|
||||||
@@ -85,7 +85,7 @@
|
|||||||
},
|
},
|
||||||
"packages/cli": {
|
"packages/cli": {
|
||||||
"name": "@opencode-ai/cli",
|
"name": "@opencode-ai/cli",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"bin": {
|
"bin": {
|
||||||
"lildax": "./bin/lildax.cjs",
|
"lildax": "./bin/lildax.cjs",
|
||||||
},
|
},
|
||||||
@@ -110,7 +110,7 @@
|
|||||||
},
|
},
|
||||||
"packages/console/app": {
|
"packages/console/app": {
|
||||||
"name": "@opencode-ai/console-app",
|
"name": "@opencode-ai/console-app",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@cloudflare/vite-plugin": "1.15.2",
|
"@cloudflare/vite-plugin": "1.15.2",
|
||||||
"@ibm/plex": "6.4.1",
|
"@ibm/plex": "6.4.1",
|
||||||
@@ -146,7 +146,7 @@
|
|||||||
},
|
},
|
||||||
"packages/console/core": {
|
"packages/console/core": {
|
||||||
"name": "@opencode-ai/console-core",
|
"name": "@opencode-ai/console-core",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-sdk/client-sts": "3.782.0",
|
"@aws-sdk/client-sts": "3.782.0",
|
||||||
"@jsx-email/render": "1.1.1",
|
"@jsx-email/render": "1.1.1",
|
||||||
@@ -173,7 +173,7 @@
|
|||||||
},
|
},
|
||||||
"packages/console/function": {
|
"packages/console/function": {
|
||||||
"name": "@opencode-ai/console-function",
|
"name": "@opencode-ai/console-function",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@ai-sdk/anthropic": "3.0.82",
|
"@ai-sdk/anthropic": "3.0.82",
|
||||||
"@ai-sdk/openai": "3.0.48",
|
"@ai-sdk/openai": "3.0.48",
|
||||||
@@ -195,7 +195,7 @@
|
|||||||
},
|
},
|
||||||
"packages/console/mail": {
|
"packages/console/mail": {
|
||||||
"name": "@opencode-ai/console-mail",
|
"name": "@opencode-ai/console-mail",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jsx-email/all": "2.2.3",
|
"@jsx-email/all": "2.2.3",
|
||||||
"@jsx-email/cli": "1.4.3",
|
"@jsx-email/cli": "1.4.3",
|
||||||
@@ -219,7 +219,7 @@
|
|||||||
},
|
},
|
||||||
"packages/console/support": {
|
"packages/console/support": {
|
||||||
"name": "@opencode-ai/console-support",
|
"name": "@opencode-ai/console-support",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@cloudflare/vite-plugin": "1.15.2",
|
"@cloudflare/vite-plugin": "1.15.2",
|
||||||
"@opencode-ai/console-core": "workspace:*",
|
"@opencode-ai/console-core": "workspace:*",
|
||||||
@@ -239,7 +239,7 @@
|
|||||||
},
|
},
|
||||||
"packages/core": {
|
"packages/core": {
|
||||||
"name": "@opencode-ai/core",
|
"name": "@opencode-ai/core",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"bin": {
|
"bin": {
|
||||||
"opencode": "./bin/opencode",
|
"opencode": "./bin/opencode",
|
||||||
},
|
},
|
||||||
@@ -330,7 +330,7 @@
|
|||||||
},
|
},
|
||||||
"packages/desktop": {
|
"packages/desktop": {
|
||||||
"name": "@opencode-ai/desktop",
|
"name": "@opencode-ai/desktop",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@zip.js/zip.js": "2.7.62",
|
"@zip.js/zip.js": "2.7.62",
|
||||||
"effect": "catalog:",
|
"effect": "catalog:",
|
||||||
@@ -384,7 +384,7 @@
|
|||||||
},
|
},
|
||||||
"packages/effect-drizzle-sqlite": {
|
"packages/effect-drizzle-sqlite": {
|
||||||
"name": "@opencode-ai/effect-drizzle-sqlite",
|
"name": "@opencode-ai/effect-drizzle-sqlite",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"drizzle-orm": "catalog:",
|
"drizzle-orm": "catalog:",
|
||||||
"effect": "catalog:",
|
"effect": "catalog:",
|
||||||
@@ -398,7 +398,7 @@
|
|||||||
},
|
},
|
||||||
"packages/effect-sqlite-node": {
|
"packages/effect-sqlite-node": {
|
||||||
"name": "@opencode-ai/effect-sqlite-node",
|
"name": "@opencode-ai/effect-sqlite-node",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"effect": "catalog:",
|
"effect": "catalog:",
|
||||||
},
|
},
|
||||||
@@ -410,7 +410,7 @@
|
|||||||
},
|
},
|
||||||
"packages/enterprise": {
|
"packages/enterprise": {
|
||||||
"name": "@opencode-ai/enterprise",
|
"name": "@opencode-ai/enterprise",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@hono/standard-validator": "catalog:",
|
"@hono/standard-validator": "catalog:",
|
||||||
"@opencode-ai/core": "workspace:*",
|
"@opencode-ai/core": "workspace:*",
|
||||||
@@ -441,7 +441,7 @@
|
|||||||
},
|
},
|
||||||
"packages/function": {
|
"packages/function": {
|
||||||
"name": "@opencode-ai/function",
|
"name": "@opencode-ai/function",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@octokit/auth-app": "8.0.1",
|
"@octokit/auth-app": "8.0.1",
|
||||||
"@octokit/rest": "catalog:",
|
"@octokit/rest": "catalog:",
|
||||||
@@ -457,7 +457,7 @@
|
|||||||
},
|
},
|
||||||
"packages/http-recorder": {
|
"packages/http-recorder": {
|
||||||
"name": "@opencode-ai/http-recorder",
|
"name": "@opencode-ai/http-recorder",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@effect/platform-node": "4.0.0-beta.74",
|
"@effect/platform-node": "4.0.0-beta.74",
|
||||||
"@effect/platform-node-shared": "4.0.0-beta.74",
|
"@effect/platform-node-shared": "4.0.0-beta.74",
|
||||||
@@ -476,7 +476,7 @@
|
|||||||
},
|
},
|
||||||
"packages/llm": {
|
"packages/llm": {
|
||||||
"name": "@opencode-ai/llm",
|
"name": "@opencode-ai/llm",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@smithy/eventstream-codec": "4.2.14",
|
"@smithy/eventstream-codec": "4.2.14",
|
||||||
"@smithy/util-utf8": "4.2.2",
|
"@smithy/util-utf8": "4.2.2",
|
||||||
@@ -494,7 +494,7 @@
|
|||||||
},
|
},
|
||||||
"packages/opencode": {
|
"packages/opencode": {
|
||||||
"name": "opencode",
|
"name": "opencode",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"bin": {
|
"bin": {
|
||||||
"opencode": "./bin/opencode",
|
"opencode": "./bin/opencode",
|
||||||
},
|
},
|
||||||
@@ -622,7 +622,7 @@
|
|||||||
},
|
},
|
||||||
"packages/plugin": {
|
"packages/plugin": {
|
||||||
"name": "@opencode-ai/plugin",
|
"name": "@opencode-ai/plugin",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@opencode-ai/sdk": "workspace:*",
|
"@opencode-ai/sdk": "workspace:*",
|
||||||
"effect": "catalog:",
|
"effect": "catalog:",
|
||||||
@@ -660,7 +660,7 @@
|
|||||||
},
|
},
|
||||||
"packages/sdk/js": {
|
"packages/sdk/js": {
|
||||||
"name": "@opencode-ai/sdk",
|
"name": "@opencode-ai/sdk",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"cross-spawn": "catalog:",
|
"cross-spawn": "catalog:",
|
||||||
},
|
},
|
||||||
@@ -675,7 +675,7 @@
|
|||||||
},
|
},
|
||||||
"packages/server": {
|
"packages/server": {
|
||||||
"name": "@opencode-ai/server",
|
"name": "@opencode-ai/server",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@opencode-ai/core": "workspace:*",
|
"@opencode-ai/core": "workspace:*",
|
||||||
"drizzle-orm": "catalog:",
|
"drizzle-orm": "catalog:",
|
||||||
@@ -689,7 +689,7 @@
|
|||||||
},
|
},
|
||||||
"packages/slack": {
|
"packages/slack": {
|
||||||
"name": "@opencode-ai/slack",
|
"name": "@opencode-ai/slack",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@opencode-ai/sdk": "workspace:*",
|
"@opencode-ai/sdk": "workspace:*",
|
||||||
"@slack/bolt": "^3.17.1",
|
"@slack/bolt": "^3.17.1",
|
||||||
@@ -702,7 +702,7 @@
|
|||||||
},
|
},
|
||||||
"packages/stats/app": {
|
"packages/stats/app": {
|
||||||
"name": "@opencode-ai/stats-app",
|
"name": "@opencode-ai/stats-app",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@ibm/plex": "6.4.1",
|
"@ibm/plex": "6.4.1",
|
||||||
"@opencode-ai/stats-core": "workspace:*",
|
"@opencode-ai/stats-core": "workspace:*",
|
||||||
@@ -735,7 +735,7 @@
|
|||||||
},
|
},
|
||||||
"packages/stats/core": {
|
"packages/stats/core": {
|
||||||
"name": "@opencode-ai/stats-core",
|
"name": "@opencode-ai/stats-core",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-sdk/client-athena": "3.933.0",
|
"@aws-sdk/client-athena": "3.933.0",
|
||||||
"@planetscale/database": "1.19.0",
|
"@planetscale/database": "1.19.0",
|
||||||
@@ -754,7 +754,7 @@
|
|||||||
},
|
},
|
||||||
"packages/stats/server": {
|
"packages/stats/server": {
|
||||||
"name": "@opencode-ai/stats-server",
|
"name": "@opencode-ai/stats-server",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-sdk/client-firehose": "3.933.0",
|
"@aws-sdk/client-firehose": "3.933.0",
|
||||||
"@effect/platform-node": "catalog:",
|
"@effect/platform-node": "catalog:",
|
||||||
@@ -794,7 +794,7 @@
|
|||||||
},
|
},
|
||||||
"packages/tui": {
|
"packages/tui": {
|
||||||
"name": "@opencode-ai/tui",
|
"name": "@opencode-ai/tui",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@opencode-ai/core": "workspace:*",
|
"@opencode-ai/core": "workspace:*",
|
||||||
"@opencode-ai/plugin": "workspace:*",
|
"@opencode-ai/plugin": "workspace:*",
|
||||||
@@ -821,7 +821,7 @@
|
|||||||
},
|
},
|
||||||
"packages/ui": {
|
"packages/ui": {
|
||||||
"name": "@opencode-ai/ui",
|
"name": "@opencode-ai/ui",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@kobalte/core": "catalog:",
|
"@kobalte/core": "catalog:",
|
||||||
"@opencode-ai/core": "workspace:*",
|
"@opencode-ai/core": "workspace:*",
|
||||||
@@ -870,7 +870,7 @@
|
|||||||
},
|
},
|
||||||
"packages/web": {
|
"packages/web": {
|
||||||
"name": "@opencode-ai/web",
|
"name": "@opencode-ai/web",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@astrojs/cloudflare": "12.6.3",
|
"@astrojs/cloudflare": "12.6.3",
|
||||||
"@astrojs/markdown-remark": "6.3.1",
|
"@astrojs/markdown-remark": "6.3.1",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@opencode-ai/app",
|
"name": "@opencode-ai/app",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"description": "",
|
"description": "",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"exports": {
|
"exports": {
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ const HOME_ROW_LAYOUT =
|
|||||||
const HOME_ROW_BASE = `${HOME_ROW_LAYOUT} border-0`
|
const HOME_ROW_BASE = `${HOME_ROW_LAYOUT} border-0`
|
||||||
const HOME_ROW = `${HOME_ROW_BASE} [font-weight:530] text-v2-text-text-muted hover:bg-v2-overlay-simple-overlay-hover focus-visible:bg-v2-overlay-simple-overlay-hover`
|
const HOME_ROW = `${HOME_ROW_BASE} [font-weight:530] text-v2-text-text-muted hover:bg-v2-overlay-simple-overlay-hover focus-visible:bg-v2-overlay-simple-overlay-hover`
|
||||||
const HOME_PROJECT_NAV_LABEL = "min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap"
|
const HOME_PROJECT_NAV_LABEL = "min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap"
|
||||||
const HOME_PROJECT_NAV_ROW = `${HOME_ROW_LAYOUT} h-7 gap-2 px-1.5 [font-weight:440] text-v2-text-text-muted hover:bg-v2-background-bg-layer-01 hover:text-v2-text-text-base hover:[box-shadow:inset_0_0_0_0.5px_var(--v2-border-border-muted)] data-[selected]:bg-v2-background-bg-layer-02 data-[selected]:text-v2-text-text-base data-[selected]:[box-shadow:inset_0_0_0_0.5px_var(--v2-border-border-muted)] data-[selected]:hover:bg-v2-background-bg-layer-02 focus-visible:bg-v2-background-bg-layer-01 focus-visible:text-v2-text-text-base focus-visible:[box-shadow:inset_0_0_0_0.5px_var(--v2-border-border-muted)]`
|
const HOME_PROJECT_NAV_ROW = `${HOME_ROW_LAYOUT} h-7 gap-2 px-1.5 [font-weight:440] text-v2-text-text-muted hover:bg-v2-background-bg-layer-01 hover:text-v2-text-text-base hover:[box-shadow:inset_0_0_0_0.5px_var(--v2-border-border-muted)] data-[selected]:bg-v2-background-bg-layer-03 data-[selected]:text-v2-text-text-base data-[selected]:[box-shadow:inset_0_0_0_0.5px_var(--v2-border-border-muted)] data-[selected]:hover:bg-v2-background-bg-layer-03 focus-visible:bg-v2-background-bg-layer-01 focus-visible:text-v2-text-text-base focus-visible:[box-shadow:inset_0_0_0_0.5px_var(--v2-border-border-muted)]`
|
||||||
const HOME_SECTION_LABEL = "text-v2-text-text-muted [font-weight:440]"
|
const HOME_SECTION_LABEL = "text-v2-text-text-muted [font-weight:440]"
|
||||||
|
|
||||||
type HomeSessionRecord = {
|
type HomeSessionRecord = {
|
||||||
@@ -885,7 +885,7 @@ function HomeSessionSearch(props: {
|
|||||||
<label
|
<label
|
||||||
class="relative z-20 flex h-9 w-full items-center gap-2 rounded-[6px] py-1 pl-3 pr-2 text-v2-icon-icon-muted transition-[background-color,box-shadow] duration-[120ms] ease-in-out"
|
class="relative z-20 flex h-9 w-full items-center gap-2 rounded-[6px] py-1 pl-3 pr-2 text-v2-icon-icon-muted transition-[background-color,box-shadow] duration-[120ms] ease-in-out"
|
||||||
classList={{
|
classList={{
|
||||||
"bg-v2-background-bg-deep focus-within:bg-v2-background-bg-base focus-within:shadow-[0_0_0_0.5px_var(--v2-border-border-focus),var(--v2-elevation-raised)]":
|
"bg-v2-background-bg-layer-03 focus-within:bg-v2-background-bg-layer-03 focus-within:shadow-[0_0_0_0.5px_var(--v2-border-border-focus),var(--v2-elevation-raised)]":
|
||||||
!props.open,
|
!props.open,
|
||||||
"bg-transparent shadow-[0_0_0_0.5px_var(--v2-border-border-focus)]": props.open,
|
"bg-transparent shadow-[0_0_0_0.5px_var(--v2-border-border-focus)]": props.open,
|
||||||
}}
|
}}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://json.schemastore.org/package.json",
|
"$schema": "https://json.schemastore.org/package.json",
|
||||||
"name": "@opencode-ai/cli",
|
"name": "@opencode-ai/cli",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"bin": {
|
"bin": {
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import { NodeHttpServer } from "@effect/platform-node"
|
import { NodeHttpServer } from "@effect/platform-node"
|
||||||
|
import { Credential } from "@opencode-ai/core/credential"
|
||||||
import { PermissionSaved } from "@opencode-ai/core/permission/saved"
|
import { PermissionSaved } from "@opencode-ai/core/permission/saved"
|
||||||
import { Context, Layer, Option } from "effect"
|
import { Context, Layer, Option } from "effect"
|
||||||
import * as Effect from "effect/Effect"
|
import * as Effect from "effect/Effect"
|
||||||
@@ -35,6 +36,7 @@ function bind(hostname: string, port: number, password: string) {
|
|||||||
return Layer.build(
|
return Layer.build(
|
||||||
HttpRouter.serve(createRoutes(password), { disableListenLog: true, disableLogger: true }).pipe(
|
HttpRouter.serve(createRoutes(password), { disableListenLog: true, disableLogger: true }).pipe(
|
||||||
Layer.provideMerge(NodeHttpServer.layer(() => createServer(), { port, host: hostname })),
|
Layer.provideMerge(NodeHttpServer.layer(() => createServer(), { port, host: hostname })),
|
||||||
|
Layer.provide(Credential.defaultLayer),
|
||||||
Layer.provide(PermissionSaved.defaultLayer),
|
Layer.provide(PermissionSaved.defaultLayer),
|
||||||
),
|
),
|
||||||
).pipe(Effect.map((context) => Context.get(context, HttpServer.HttpServer).address))
|
).pipe(Effect.map((context) => Context.get(context, HttpServer.HttpServer).address))
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@opencode-ai/console-app",
|
"name": "@opencode-ai/console-app",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -248,6 +248,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "الاستثناءات التالية",
|
"zen.privacy.exceptionsLink": "الاستثناءات التالية",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | نماذج برمجة منخفضة التكلفة للجميع",
|
"go.title": "OpenCode Go | نماذج برمجة منخفضة التكلفة للجميع",
|
||||||
|
"go.banner.text": "MiniMax M3: حد استخدام أكبر 3 مرات لفترة محدودة",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"يبدأ Go من $5 للشهر الأول، ثم $10/شهر، مع حدود طلب سخية لمدة 5 ساعات لـ GLM-5.1 وGLM-5 وKimi K2.5 وKimi K2.6 وMiMo-V2.5-Pro وMiMo-V2.5 وQwen3.7 Max وQwen3.7 Plus وQwen3.6 Plus وMiniMax M2.5 وMiniMax M2.7 وMiniMax M3 وDeepSeek V4 Pro وDeepSeek V4 Flash.",
|
"يبدأ Go من $5 للشهر الأول، ثم $10/شهر، مع حدود طلب سخية لمدة 5 ساعات لـ GLM-5.1 وGLM-5 وKimi K2.5 وKimi K2.6 وMiMo-V2.5-Pro وMiMo-V2.5 وQwen3.7 Max وQwen3.7 Plus وQwen3.6 Plus وMiniMax M2.5 وMiniMax M2.7 وMiniMax M3 وDeepSeek V4 Pro وDeepSeek V4 Flash.",
|
||||||
"go.hero.title": "نماذج برمجة منخفضة التكلفة للجميع",
|
"go.hero.title": "نماذج برمجة منخفضة التكلفة للجميع",
|
||||||
|
|||||||
@@ -252,6 +252,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "seguintes exceções",
|
"zen.privacy.exceptionsLink": "seguintes exceções",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Modelos de codificação de baixo custo para todos",
|
"go.title": "OpenCode Go | Modelos de codificação de baixo custo para todos",
|
||||||
|
"go.banner.text": "MiniMax M3 tem limite de uso 3x maior por tempo limitado",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"O Go começa em $5 no primeiro mês, depois $10/mês, com limites generosos de solicitação de 5 horas para GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro e DeepSeek V4 Flash.",
|
"O Go começa em $5 no primeiro mês, depois $10/mês, com limites generosos de solicitação de 5 horas para GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro e DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Modelos de codificação de baixo custo para todos",
|
"go.hero.title": "Modelos de codificação de baixo custo para todos",
|
||||||
|
|||||||
@@ -250,6 +250,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "følgende undtagelser",
|
"zen.privacy.exceptionsLink": "følgende undtagelser",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Kodningsmodeller til lav pris for alle",
|
"go.title": "OpenCode Go | Kodningsmodeller til lav pris for alle",
|
||||||
|
"go.banner.text": "MiniMax M3 får tredoblet brugsgrænse i en begrænset periode",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go starter ved $5 for den første måned, derefter $10/måned, med generøse 5-timers anmodningsgrænser for GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro og DeepSeek V4 Flash.",
|
"Go starter ved $5 for den første måned, derefter $10/måned, med generøse 5-timers anmodningsgrænser for GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro og DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Kodningsmodeller til lav pris for alle",
|
"go.hero.title": "Kodningsmodeller til lav pris for alle",
|
||||||
|
|||||||
@@ -252,6 +252,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "folgenden Ausnahmen",
|
"zen.privacy.exceptionsLink": "folgenden Ausnahmen",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Kostengünstige Coding-Modelle für alle",
|
"go.title": "OpenCode Go | Kostengünstige Coding-Modelle für alle",
|
||||||
|
"go.banner.text": "MiniMax M3 erhält für begrenzte Zeit 3x Nutzungslimits",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go beginnt bei $5 für den ersten Monat, danach $10/Monat, mit großzügigen 5-Stunden-Anfragelimits für GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro und DeepSeek V4 Flash.",
|
"Go beginnt bei $5 für den ersten Monat, danach $10/Monat, mit großzügigen 5-Stunden-Anfragelimits für GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro und DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Kostengünstige Coding-Modelle für alle",
|
"go.hero.title": "Kostengünstige Coding-Modelle für alle",
|
||||||
|
|||||||
@@ -248,6 +248,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "following exceptions",
|
"zen.privacy.exceptionsLink": "following exceptions",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Low cost coding models for everyone",
|
"go.title": "OpenCode Go | Low cost coding models for everyone",
|
||||||
|
"go.banner.text": "MiniMax M3 gets 3× usage limits for a limited time",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go starts at $5 for your first month, then $10/month, with generous 5-hour request limits for GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro, and DeepSeek V4 Flash.",
|
"Go starts at $5 for your first month, then $10/month, with generous 5-hour request limits for GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro, and DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Low cost coding models for everyone",
|
"go.hero.title": "Low cost coding models for everyone",
|
||||||
|
|||||||
@@ -253,6 +253,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "siguientes excepciones",
|
"zen.privacy.exceptionsLink": "siguientes excepciones",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Modelos de programación de bajo coste para todos",
|
"go.title": "OpenCode Go | Modelos de programación de bajo coste para todos",
|
||||||
|
"go.banner.text": "MiniMax M3 tiene límites de uso 3x mayores por tiempo limitado",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go comienza en $5 el primer mes, luego 10 $/mes, con generosos límites de solicitudes de 5 horas para GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro y DeepSeek V4 Flash.",
|
"Go comienza en $5 el primer mes, luego 10 $/mes, con generosos límites de solicitudes de 5 horas para GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro y DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Modelos de programación de bajo coste para todos",
|
"go.hero.title": "Modelos de programación de bajo coste para todos",
|
||||||
|
|||||||
@@ -254,6 +254,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "exceptions suivantes",
|
"zen.privacy.exceptionsLink": "exceptions suivantes",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Modèles de code à faible coût pour tous",
|
"go.title": "OpenCode Go | Modèles de code à faible coût pour tous",
|
||||||
|
"go.banner.text": "MiniMax M3 bénéficie de limites d’utilisation 3x supérieures pour une durée limitée",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go commence à $5 pour le premier mois, puis 10 $/mois, avec des limites de requêtes généreuses sur 5 heures pour GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro et DeepSeek V4 Flash.",
|
"Go commence à $5 pour le premier mois, puis 10 $/mois, avec des limites de requêtes généreuses sur 5 heures pour GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro et DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Modèles de code à faible coût pour tous",
|
"go.hero.title": "Modèles de code à faible coût pour tous",
|
||||||
|
|||||||
@@ -250,6 +250,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "seguenti eccezioni",
|
"zen.privacy.exceptionsLink": "seguenti eccezioni",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Modelli di coding a basso costo per tutti",
|
"go.title": "OpenCode Go | Modelli di coding a basso costo per tutti",
|
||||||
|
"go.banner.text": "MiniMax M3 offre limiti di utilizzo 3x superiori per un periodo limitato",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go inizia a $5 per il primo mese, poi $10/mese, con generosi limiti di richiesta di 5 ore per GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro e DeepSeek V4 Flash.",
|
"Go inizia a $5 per il primo mese, poi $10/mese, con generosi limiti di richiesta di 5 ore per GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro e DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Modelli di coding a basso costo per tutti",
|
"go.hero.title": "Modelli di coding a basso costo per tutti",
|
||||||
|
|||||||
@@ -249,6 +249,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "以下の例外",
|
"zen.privacy.exceptionsLink": "以下の例外",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | すべての人のための低価格なコーディングモデル",
|
"go.title": "OpenCode Go | すべての人のための低価格なコーディングモデル",
|
||||||
|
"go.banner.text": "MiniMax M3の利用上限が期間限定で3倍に",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Goは最初の月$5、その後$10/月で、GLM-5.1、GLM-5、Kimi K2.5、Kimi K2.6、MiMo-V2.5-Pro、MiMo-V2.5、Qwen3.7 Max、Qwen3.7 Plus、Qwen3.6 Plus、MiniMax M2.5、MiniMax M2.7、MiniMax M3、DeepSeek V4 Pro、DeepSeek V4 Flashに対して5時間のゆとりあるリクエスト上限があります。",
|
"Goは最初の月$5、その後$10/月で、GLM-5.1、GLM-5、Kimi K2.5、Kimi K2.6、MiMo-V2.5-Pro、MiMo-V2.5、Qwen3.7 Max、Qwen3.7 Plus、Qwen3.6 Plus、MiniMax M2.5、MiniMax M2.7、MiniMax M3、DeepSeek V4 Pro、DeepSeek V4 Flashに対して5時間のゆとりあるリクエスト上限があります。",
|
||||||
"go.hero.title": "すべての人のための低価格なコーディングモデル",
|
"go.hero.title": "すべての人のための低価格なコーディングモデル",
|
||||||
|
|||||||
@@ -246,6 +246,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "다음 예외",
|
"zen.privacy.exceptionsLink": "다음 예외",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | 모두를 위한 저비용 코딩 모델",
|
"go.title": "OpenCode Go | 모두를 위한 저비용 코딩 모델",
|
||||||
|
"go.banner.text": "MiniMax M3 사용 한도가 한시적으로 3배 확대됩니다",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go는 첫 달 $5, 이후 $10/월로 시작하며, GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro, DeepSeek V4 Flash에 대해 넉넉한 5시간 요청 한도를 제공합니다.",
|
"Go는 첫 달 $5, 이후 $10/월로 시작하며, GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro, DeepSeek V4 Flash에 대해 넉넉한 5시간 요청 한도를 제공합니다.",
|
||||||
"go.hero.title": "모두를 위한 저비용 코딩 모델",
|
"go.hero.title": "모두를 위한 저비용 코딩 모델",
|
||||||
|
|||||||
@@ -250,6 +250,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "følgende unntak",
|
"zen.privacy.exceptionsLink": "følgende unntak",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Rimelige kodemodeller for alle",
|
"go.title": "OpenCode Go | Rimelige kodemodeller for alle",
|
||||||
|
"go.banner.text": "MiniMax M3 får 3x bruksgrense i en begrenset periode",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go starter på $5 for den første måneden, deretter $10/måned, med sjenerøse 5-timers forespørselsgrenser for GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro og DeepSeek V4 Flash.",
|
"Go starter på $5 for den første måneden, deretter $10/måned, med sjenerøse 5-timers forespørselsgrenser for GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro og DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Rimelige kodemodeller for alle",
|
"go.hero.title": "Rimelige kodemodeller for alle",
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "następującymi wyjątkami",
|
"zen.privacy.exceptionsLink": "następującymi wyjątkami",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Niskokosztowe modele do kodowania dla każdego",
|
"go.title": "OpenCode Go | Niskokosztowe modele do kodowania dla każdego",
|
||||||
|
"go.banner.text": "MiniMax M3 oferuje 3x wyższe limity użycia przez ograniczony czas",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go zaczyna się od $5 za pierwszy miesiąc, potem $10/miesiąc, z hojnymi 5-godzinnymi limitami zapytań dla GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro i DeepSeek V4 Flash.",
|
"Go zaczyna się od $5 za pierwszy miesiąc, potem $10/miesiąc, z hojnymi 5-godzinnymi limitami zapytań dla GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro i DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Niskokosztowe modele do kodowania dla każdego",
|
"go.hero.title": "Niskokosztowe modele do kodowania dla każdego",
|
||||||
|
|||||||
@@ -254,6 +254,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "следующими исключениями",
|
"zen.privacy.exceptionsLink": "следующими исключениями",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Недорогие модели для кодинга для всех",
|
"go.title": "OpenCode Go | Недорогие модели для кодинга для всех",
|
||||||
|
"go.banner.text": "MiniMax M3 получает 3x лимиты использования на ограниченное время",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go начинается с $5 за первый месяц, затем $10/месяц, с щедрыми лимитами запросов за 5 часов для GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro и DeepSeek V4 Flash.",
|
"Go начинается с $5 за первый месяц, затем $10/месяц, с щедрыми лимитами запросов за 5 часов для GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro и DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Недорогие модели для кодинга для всех",
|
"go.hero.title": "Недорогие модели для кодинга для всех",
|
||||||
|
|||||||
@@ -249,6 +249,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "ข้อยกเว้นดังนี้",
|
"zen.privacy.exceptionsLink": "ข้อยกเว้นดังนี้",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | โมเดลเขียนโค้ดราคาประหยัดสำหรับทุกคน",
|
"go.title": "OpenCode Go | โมเดลเขียนโค้ดราคาประหยัดสำหรับทุกคน",
|
||||||
|
"go.banner.text": "MiniMax M3 เพิ่มโควตาการใช้งานเป็น 3 เท่าในช่วงเวลาจำกัด",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go เริ่มต้นที่ $5 สำหรับเดือนแรก จากนั้น $10/เดือน พร้อมขีดจำกัดคำขอ 5 ชั่วโมงที่เอื้อเฟื้อสำหรับ GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro และ DeepSeek V4 Flash",
|
"Go เริ่มต้นที่ $5 สำหรับเดือนแรก จากนั้น $10/เดือน พร้อมขีดจำกัดคำขอ 5 ชั่วโมงที่เอื้อเฟื้อสำหรับ GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro และ DeepSeek V4 Flash",
|
||||||
"go.hero.title": "โมเดลเขียนโค้ดราคาประหยัดสำหรับทุกคน",
|
"go.hero.title": "โมเดลเขียนโค้ดราคาประหยัดสำหรับทุกคน",
|
||||||
|
|||||||
@@ -252,6 +252,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "aşağıdaki istisnalar",
|
"zen.privacy.exceptionsLink": "aşağıdaki istisnalar",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Herkes için düşük maliyetli kodlama modelleri",
|
"go.title": "OpenCode Go | Herkes için düşük maliyetli kodlama modelleri",
|
||||||
|
"go.banner.text": "MiniMax M3 sınırlı bir süre için 3x kullanım limiti sunuyor",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go ilk ay $5, sonrasında ayda 10$ fiyatıyla başlar; GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro ve DeepSeek V4 Flash için cömert 5 saatlik istek limitleri sunar.",
|
"Go ilk ay $5, sonrasında ayda 10$ fiyatıyla başlar; GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro ve DeepSeek V4 Flash için cömert 5 saatlik istek limitleri sunar.",
|
||||||
"go.hero.title": "Herkes için düşük maliyetli kodlama modelleri",
|
"go.hero.title": "Herkes için düşük maliyetli kodlama modelleri",
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "такими винятками",
|
"zen.privacy.exceptionsLink": "такими винятками",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | Недорогі моделі кодування для всіх",
|
"go.title": "OpenCode Go | Недорогі моделі кодування для всіх",
|
||||||
|
"go.banner.text": "MiniMax M3 отримує 3x ліміти використання протягом обмеженого часу",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go починається від $5 за перший місяць, потім $10/місяць, з generous 5-годинними лімітами запитів для GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro та DeepSeek V4 Flash.",
|
"Go починається від $5 за перший місяць, потім $10/місяць, з generous 5-годинними лімітами запитів для GLM-5.1, GLM-5, Kimi K2.5, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.5, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro та DeepSeek V4 Flash.",
|
||||||
"go.hero.title": "Недорогі моделі кодування для всіх",
|
"go.hero.title": "Недорогі моделі кодування для всіх",
|
||||||
|
|||||||
@@ -240,6 +240,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "以下例外情况除外",
|
"zen.privacy.exceptionsLink": "以下例外情况除外",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | 人人可用的低成本编程模型",
|
"go.title": "OpenCode Go | 人人可用的低成本编程模型",
|
||||||
|
"go.banner.text": "MiniMax M3 限时享受 3 倍使用额度",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go 首月 $5,之后 $10/月,提供对 GLM-5.1、GLM-5、Kimi K2.5、Kimi K2.6、MiMo-V2.5-Pro、MiMo-V2.5、Qwen3.7 Max、Qwen3.7 Plus、Qwen3.6 Plus、MiniMax M2.5、MiniMax M2.7、MiniMax M3、DeepSeek V4 Pro 和 DeepSeek V4 Flash 的 5 小时充裕请求额度。",
|
"Go 首月 $5,之后 $10/月,提供对 GLM-5.1、GLM-5、Kimi K2.5、Kimi K2.6、MiMo-V2.5-Pro、MiMo-V2.5、Qwen3.7 Max、Qwen3.7 Plus、Qwen3.6 Plus、MiniMax M2.5、MiniMax M2.7、MiniMax M3、DeepSeek V4 Pro 和 DeepSeek V4 Flash 的 5 小时充裕请求额度。",
|
||||||
"go.hero.title": "人人可用的低成本编程模型",
|
"go.hero.title": "人人可用的低成本编程模型",
|
||||||
|
|||||||
@@ -240,6 +240,7 @@ export const dict = {
|
|||||||
"zen.privacy.exceptionsLink": "以下例外情況",
|
"zen.privacy.exceptionsLink": "以下例外情況",
|
||||||
|
|
||||||
"go.title": "OpenCode Go | 低成本全民編碼模型",
|
"go.title": "OpenCode Go | 低成本全民編碼模型",
|
||||||
|
"go.banner.text": "MiniMax M3 限時享有 3 倍使用額度",
|
||||||
"go.meta.description":
|
"go.meta.description":
|
||||||
"Go 首月 $5,之後 $10/月,提供對 GLM-5.1、GLM-5、Kimi K2.5、Kimi K2.6、MiMo-V2.5-Pro、MiMo-V2.5、Qwen3.7 Max、Qwen3.7 Plus、Qwen3.6 Plus、MiniMax M2.5、MiniMax M2.7、MiniMax M3、DeepSeek V4 Pro 和 DeepSeek V4 Flash 的 5 小時充裕請求額度。",
|
"Go 首月 $5,之後 $10/月,提供對 GLM-5.1、GLM-5、Kimi K2.5、Kimi K2.6、MiMo-V2.5-Pro、MiMo-V2.5、Qwen3.7 Max、Qwen3.7 Plus、Qwen3.6 Plus、MiniMax M2.5、MiniMax M2.7、MiniMax M3、DeepSeek V4 Pro 和 DeepSeek V4 Flash 的 5 小時充裕請求額度。",
|
||||||
"go.hero.title": "低成本全民編碼模型",
|
"go.hero.title": "低成本全民編碼模型",
|
||||||
|
|||||||
@@ -327,6 +327,37 @@ body {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[data-component="desktop-app-banner"] {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 12px;
|
||||||
|
margin-bottom: 32px;
|
||||||
|
|
||||||
|
[data-slot="badge"] {
|
||||||
|
background: var(--color-background-strong);
|
||||||
|
color: var(--color-text-inverted);
|
||||||
|
font-weight: 500;
|
||||||
|
padding: 4px 8px;
|
||||||
|
line-height: 1;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-slot="content"] {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 1ch;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-slot="text"] {
|
||||||
|
color: var(--color-text-strong);
|
||||||
|
line-height: 1.4;
|
||||||
|
|
||||||
|
@media (max-width: 30.625rem) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[data-slot="hero-copy"] {
|
[data-slot="hero-copy"] {
|
||||||
img {
|
img {
|
||||||
margin-bottom: 24px;
|
margin-bottom: 24px;
|
||||||
@@ -632,6 +663,10 @@ body {
|
|||||||
fill: var(--color-text-strong);
|
fill: var(--color-text-strong);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[data-bar][data-kind="promo"] {
|
||||||
|
fill: color-mix(in srgb, var(--bar-go) 50%, transparent);
|
||||||
|
}
|
||||||
|
|
||||||
[data-val] {
|
[data-val] {
|
||||||
fill: var(--color-text-strong);
|
fill: var(--color-text-strong);
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
|
|||||||
@@ -65,12 +65,10 @@ function LimitsGraph(props: { href: string }) {
|
|||||||
{ id: "glm-5.1", name: "GLM-5.1", req: 880, d: "100ms" },
|
{ id: "glm-5.1", name: "GLM-5.1", req: 880, d: "100ms" },
|
||||||
{ id: "qwen3.7-max", name: "Qwen3.7 Max", req: 950, d: "110ms" },
|
{ id: "qwen3.7-max", name: "Qwen3.7 Max", req: 950, d: "110ms" },
|
||||||
{ id: "kimi-k2.6", name: "Kimi K2.6", req: 1150, d: "150ms" },
|
{ id: "kimi-k2.6", name: "Kimi K2.6", req: 1150, d: "150ms" },
|
||||||
{ id: "minimax-m3", name: "MiniMax M3", req: 3200, d: "200ms" },
|
|
||||||
{ id: "mimo-v2.5-pro", name: "MiMo-V2.5-Pro", req: 3250, d: "210ms" },
|
{ id: "mimo-v2.5-pro", name: "MiMo-V2.5-Pro", req: 3250, d: "210ms" },
|
||||||
{ id: "qwen3.6-plus", name: "Qwen3.6 Plus", req: 3300, d: "220ms" },
|
|
||||||
{ id: "minimax-m2.7", name: "MiniMax M2.7", req: 3400, d: "230ms" },
|
|
||||||
{ id: "deepseek-v4-pro", name: "DeepSeek V4 Pro", req: 3450, d: "240ms" },
|
{ id: "deepseek-v4-pro", name: "DeepSeek V4 Pro", req: 3450, d: "240ms" },
|
||||||
{ id: "qwen3.7-plus", name: "Qwen3.7 Plus", req: 4300, d: "250ms" },
|
{ id: "qwen3.7-plus", name: "Qwen3.7 Plus", req: 4300, d: "250ms" },
|
||||||
|
{ id: "minimax-m3", name: "MiniMax M3 (3x usage)", req: 9600, baseReq: 3200, d: "280ms" },
|
||||||
{ id: "mimo-v2.5", name: "MiMo-V2.5", req: 30100, d: "340ms" },
|
{ id: "mimo-v2.5", name: "MiMo-V2.5", req: 30100, d: "340ms" },
|
||||||
{ id: "deepseek-v4-flash", name: "DeepSeek V4 Flash", req: 31650, d: "340ms" },
|
{ id: "deepseek-v4-flash", name: "DeepSeek V4 Flash", req: 31650, d: "340ms" },
|
||||||
]
|
]
|
||||||
@@ -160,12 +158,24 @@ function LimitsGraph(props: { href: string }) {
|
|||||||
<rect
|
<rect
|
||||||
x={left}
|
x={left}
|
||||||
y={gy(i()) - bh / 2}
|
y={gy(i()) - bh / 2}
|
||||||
width={Math.max(0, x(ratio(m.req)) - left)}
|
width={Math.max(0, x(ratio(m.baseReq ?? m.req)) - left)}
|
||||||
height={bh}
|
height={bh}
|
||||||
data-bar
|
data-bar
|
||||||
data-kind="go"
|
data-kind="go"
|
||||||
data-model={m.id}
|
data-model={m.id}
|
||||||
|
data-segment={m.baseReq ? "base" : undefined}
|
||||||
/>
|
/>
|
||||||
|
{m.baseReq && (
|
||||||
|
<rect
|
||||||
|
x={x(ratio(m.baseReq)) + 2}
|
||||||
|
y={gy(i()) - bh / 2}
|
||||||
|
width={Math.max(0, x(ratio(m.req)) - x(ratio(m.baseReq)) - 2)}
|
||||||
|
height={bh}
|
||||||
|
data-bar
|
||||||
|
data-kind="promo"
|
||||||
|
data-model={m.id}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
</g>
|
</g>
|
||||||
)}
|
)}
|
||||||
</For>
|
</For>
|
||||||
@@ -255,6 +265,12 @@ export default function Home() {
|
|||||||
|
|
||||||
<div data-component="content">
|
<div data-component="content">
|
||||||
<section data-component="hero">
|
<section data-component="hero">
|
||||||
|
<div data-component="desktop-app-banner">
|
||||||
|
<span data-slot="badge">{i18n.t("home.banner.badge")}</span>
|
||||||
|
<div data-slot="content">
|
||||||
|
<span data-slot="text">{i18n.t("go.banner.text")}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div data-slot="hero-copy">
|
<div data-slot="hero-copy">
|
||||||
<img data-slot="zen logo light" src={goLogoLight} alt="" />
|
<img data-slot="zen logo light" src={goLogoLight} alt="" />
|
||||||
<img data-slot="zen logo dark" src={goLogoDark} alt="" />
|
<img data-slot="zen logo dark" src={goLogoDark} alt="" />
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://json.schemastore.org/package.json",
|
"$schema": "https://json.schemastore.org/package.json",
|
||||||
"name": "@opencode-ai/console-core",
|
"name": "@opencode-ai/console-core",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
|||||||
@@ -272,7 +272,10 @@ export namespace Billing {
|
|||||||
},
|
},
|
||||||
payment_method_options: {
|
payment_method_options: {
|
||||||
card: {
|
card: {
|
||||||
setup_future_usage: "on_session",
|
setup_future_usage: "off_session",
|
||||||
|
},
|
||||||
|
link: {
|
||||||
|
setup_future_usage: "off_session",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
//payment_method_data: {
|
//payment_method_data: {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@opencode-ai/console-function",
|
"name": "@opencode-ai/console-function",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"$schema": "https://json.schemastore.org/package.json",
|
"$schema": "https://json.schemastore.org/package.json",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@opencode-ai/console-mail",
|
"name": "@opencode-ai/console-mail",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jsx-email/all": "2.2.3",
|
"@jsx-email/all": "2.2.3",
|
||||||
"@jsx-email/cli": "1.4.3",
|
"@jsx-email/cli": "1.4.3",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@opencode-ai/console-support",
|
"name": "@opencode-ai/console-support",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -1,90 +0,0 @@
|
|||||||
CREATE TABLE `project` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`worktree` text NOT NULL,
|
|
||||||
`vcs` text,
|
|
||||||
`name` text,
|
|
||||||
`icon_url` text,
|
|
||||||
`icon_color` text,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
`time_initialized` integer,
|
|
||||||
`sandboxes` text NOT NULL
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `message` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`session_id` text NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
`data` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_message_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `part` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`message_id` text NOT NULL,
|
|
||||||
`session_id` text NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
`data` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_part_message_id_message_id_fk` FOREIGN KEY (`message_id`) REFERENCES `message`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `permission` (
|
|
||||||
`project_id` text PRIMARY KEY,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
`data` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_permission_project_id_project_id_fk` FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `session` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`project_id` text NOT NULL,
|
|
||||||
`parent_id` text,
|
|
||||||
`slug` text NOT NULL,
|
|
||||||
`directory` text NOT NULL,
|
|
||||||
`title` text NOT NULL,
|
|
||||||
`version` text NOT NULL,
|
|
||||||
`share_url` text,
|
|
||||||
`summary_additions` integer,
|
|
||||||
`summary_deletions` integer,
|
|
||||||
`summary_files` integer,
|
|
||||||
`summary_diffs` text,
|
|
||||||
`revert` text,
|
|
||||||
`permission` text,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
`time_compacting` integer,
|
|
||||||
`time_archived` integer,
|
|
||||||
CONSTRAINT `fk_session_project_id_project_id_fk` FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `todo` (
|
|
||||||
`session_id` text NOT NULL,
|
|
||||||
`content` text NOT NULL,
|
|
||||||
`status` text NOT NULL,
|
|
||||||
`priority` text NOT NULL,
|
|
||||||
`position` integer NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
CONSTRAINT `todo_pk` PRIMARY KEY(`session_id`, `position`),
|
|
||||||
CONSTRAINT `fk_todo_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `session_share` (
|
|
||||||
`session_id` text PRIMARY KEY,
|
|
||||||
`id` text NOT NULL,
|
|
||||||
`secret` text NOT NULL,
|
|
||||||
`url` text NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
CONSTRAINT `fk_session_share_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE INDEX `message_session_idx` ON `message` (`session_id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `part_message_idx` ON `part` (`message_id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `part_session_idx` ON `part` (`session_id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_project_idx` ON `session` (`project_id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_parent_idx` ON `session` (`parent_id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `todo_session_idx` ON `todo` (`session_id`);
|
|
||||||
@@ -1,796 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "7",
|
|
||||||
"dialect": "sqlite",
|
|
||||||
"id": "068758ed-a97a-46f6-8a59-6c639ae7c20c",
|
|
||||||
"prevIds": ["00000000-0000-0000-0000-000000000000"],
|
|
||||||
"ddl": [
|
|
||||||
{
|
|
||||||
"name": "project",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "part",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "todo",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session_share",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "worktree",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "vcs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "name",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_color",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_initialized",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "sandboxes",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "message_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "parent_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "slug",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "directory",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "title",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "version",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "share_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_additions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_deletions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_files",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_diffs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "revert",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_compacting",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_archived",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "content",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "status",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "priority",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "position",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "secret",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_message_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["message_id"],
|
|
||||||
"tableTo": "message",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_part_message_id_message_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_permission_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_todo_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_share_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id", "position"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "todo_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "project_pk",
|
|
||||||
"table": "project",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "message_pk",
|
|
||||||
"table": "message",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "part_pk",
|
|
||||||
"table": "part",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "permission_pk",
|
|
||||||
"table": "permission",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_pk",
|
|
||||||
"table": "session",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_share_pk",
|
|
||||||
"table": "session_share",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "message_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "message_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_message_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "project_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_project_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "parent_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_parent_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "todo_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "todo"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"renames": []
|
|
||||||
}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
ALTER TABLE `project` ADD `commands` text;
|
|
||||||
@@ -1,806 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "7",
|
|
||||||
"dialect": "sqlite",
|
|
||||||
"id": "8bc2d11d-97fa-4ba8-8bfa-6c5956c49aeb",
|
|
||||||
"prevIds": ["068758ed-a97a-46f6-8a59-6c639ae7c20c"],
|
|
||||||
"ddl": [
|
|
||||||
{
|
|
||||||
"name": "project",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "part",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "todo",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session_share",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "worktree",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "vcs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "name",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_color",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_initialized",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "sandboxes",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "commands",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "message_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "parent_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "slug",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "directory",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "title",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "version",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "share_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_additions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_deletions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_files",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_diffs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "revert",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_compacting",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_archived",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "content",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "status",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "priority",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "position",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "secret",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_message_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["message_id"],
|
|
||||||
"tableTo": "message",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_part_message_id_message_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_permission_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_todo_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_share_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id", "position"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "todo_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "project_pk",
|
|
||||||
"table": "project",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "message_pk",
|
|
||||||
"table": "message",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "part_pk",
|
|
||||||
"table": "part",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "permission_pk",
|
|
||||||
"table": "permission",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_pk",
|
|
||||||
"table": "session",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_share_pk",
|
|
||||||
"table": "session_share",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "message_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "message_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_message_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "project_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_project_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "parent_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_parent_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "todo_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "todo"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"renames": []
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
CREATE TABLE `control_account` (
|
|
||||||
`email` text NOT NULL,
|
|
||||||
`url` text NOT NULL,
|
|
||||||
`access_token` text NOT NULL,
|
|
||||||
`refresh_token` text NOT NULL,
|
|
||||||
`token_expiry` integer,
|
|
||||||
`active` integer NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
CONSTRAINT `control_account_pk` PRIMARY KEY(`email`, `url`)
|
|
||||||
);
|
|
||||||
@@ -1,897 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "7",
|
|
||||||
"dialect": "sqlite",
|
|
||||||
"id": "d2736e43-700f-4e9e-8151-9f2f0d967bc8",
|
|
||||||
"prevIds": ["8bc2d11d-97fa-4ba8-8bfa-6c5956c49aeb"],
|
|
||||||
"ddl": [
|
|
||||||
{
|
|
||||||
"name": "control_account",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "project",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "part",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "todo",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session_share",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "email",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "access_token",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "refresh_token",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "token_expiry",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "active",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "worktree",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "vcs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "name",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_color",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_initialized",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "sandboxes",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "commands",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "message_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "parent_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "slug",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "directory",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "title",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "version",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "share_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_additions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_deletions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_files",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_diffs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "revert",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_compacting",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_archived",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "content",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "status",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "priority",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "position",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "secret",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_message_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["message_id"],
|
|
||||||
"tableTo": "message",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_part_message_id_message_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_permission_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_todo_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_share_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["email", "url"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "control_account_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id", "position"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "todo_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "project_pk",
|
|
||||||
"table": "project",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "message_pk",
|
|
||||||
"table": "message",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "part_pk",
|
|
||||||
"table": "part",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "permission_pk",
|
|
||||||
"table": "permission",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_pk",
|
|
||||||
"table": "session",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_share_pk",
|
|
||||||
"table": "session_share",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "message_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "message_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_message_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "project_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_project_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "parent_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_parent_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "todo_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "todo"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"renames": []
|
|
||||||
}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
CREATE TABLE `workspace` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`branch` text,
|
|
||||||
`project_id` text NOT NULL,
|
|
||||||
`config` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_workspace_project_id_project_id_fk` FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
@@ -1,959 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "7",
|
|
||||||
"dialect": "sqlite",
|
|
||||||
"id": "1f1dbf2d-bf66-4b25-8af4-4ba7633b7e40",
|
|
||||||
"prevIds": ["d2736e43-700f-4e9e-8151-9f2f0d967bc8"],
|
|
||||||
"ddl": [
|
|
||||||
{
|
|
||||||
"name": "workspace",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "control_account",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "project",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "part",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "todo",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session_share",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "branch",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "config",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "email",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "access_token",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "refresh_token",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "token_expiry",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "active",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "worktree",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "vcs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "name",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_color",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_initialized",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "sandboxes",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "commands",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "message_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "parent_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "slug",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "directory",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "title",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "version",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "share_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_additions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_deletions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_files",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_diffs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "revert",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_compacting",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_archived",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "content",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "status",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "priority",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "position",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "secret",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_workspace_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_message_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["message_id"],
|
|
||||||
"tableTo": "message",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_part_message_id_message_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_permission_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_todo_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_share_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["email", "url"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "control_account_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id", "position"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "todo_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "workspace_pk",
|
|
||||||
"table": "workspace",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "project_pk",
|
|
||||||
"table": "project",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "message_pk",
|
|
||||||
"table": "message",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "part_pk",
|
|
||||||
"table": "part",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "permission_pk",
|
|
||||||
"table": "permission",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_pk",
|
|
||||||
"table": "session",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_share_pk",
|
|
||||||
"table": "session_share",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "message_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "message_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_message_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "project_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_project_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "parent_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_parent_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "todo_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "todo"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"renames": []
|
|
||||||
}
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
ALTER TABLE `session` ADD `workspace_id` text;--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_workspace_idx` ON `session` (`workspace_id`);
|
|
||||||
-983
@@ -1,983 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "7",
|
|
||||||
"dialect": "sqlite",
|
|
||||||
"id": "572fb732-56f4-4b1e-b981-77152c9980dd",
|
|
||||||
"prevIds": ["1f1dbf2d-bf66-4b25-8af4-4ba7633b7e40"],
|
|
||||||
"ddl": [
|
|
||||||
{
|
|
||||||
"name": "workspace",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "control_account",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "project",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "part",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "todo",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "session_share",
|
|
||||||
"entityType": "tables"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "branch",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "config",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "email",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "access_token",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "refresh_token",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "token_expiry",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "active",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "worktree",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "vcs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "name",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "icon_color",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_initialized",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "sandboxes",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "commands",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "message_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "data",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "project_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "workspace_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "parent_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "slug",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "directory",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "title",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "version",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "share_url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_additions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_deletions",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_files",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "summary_diffs",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "revert",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "permission",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_compacting",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_archived",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "content",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "status",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "priority",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "position",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": false,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "session_id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "id",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "secret",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "url",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_created",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "integer",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "time_updated",
|
|
||||||
"entityType": "columns",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_workspace_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "workspace"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_message_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["message_id"],
|
|
||||||
"tableTo": "message",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_part_message_id_message_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_permission_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "permission"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"tableTo": "project",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_project_id_project_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_todo_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"tableTo": "session",
|
|
||||||
"columnsTo": ["id"],
|
|
||||||
"onUpdate": "NO ACTION",
|
|
||||||
"onDelete": "CASCADE",
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "fk_session_share_session_id_session_id_fk",
|
|
||||||
"entityType": "fks",
|
|
||||||
"table": "session_share"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["email", "url"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "control_account_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "control_account"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id", "position"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "todo_pk",
|
|
||||||
"entityType": "pks",
|
|
||||||
"table": "todo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "workspace_pk",
|
|
||||||
"table": "workspace",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "project_pk",
|
|
||||||
"table": "project",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "message_pk",
|
|
||||||
"table": "message",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "part_pk",
|
|
||||||
"table": "part",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["project_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "permission_pk",
|
|
||||||
"table": "permission",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_pk",
|
|
||||||
"table": "session",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": ["session_id"],
|
|
||||||
"nameExplicit": false,
|
|
||||||
"name": "session_share_pk",
|
|
||||||
"table": "session_share",
|
|
||||||
"entityType": "pks"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "message_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "message"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "message_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_message_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "part_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "part"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "project_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_project_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "workspace_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_workspace_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "parent_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "session_parent_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "session"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "session_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": false,
|
|
||||||
"where": null,
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "todo_session_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "todo"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"renames": []
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
CREATE TABLE `account` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`email` text NOT NULL,
|
|
||||||
`url` text NOT NULL,
|
|
||||||
`access_token` text NOT NULL,
|
|
||||||
`refresh_token` text NOT NULL,
|
|
||||||
`token_expiry` integer,
|
|
||||||
`selected_org_id` text,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `account_state` (
|
|
||||||
`id` integer PRIMARY KEY NOT NULL,
|
|
||||||
`active_account_id` text,
|
|
||||||
FOREIGN KEY (`active_account_id`) REFERENCES `account`(`id`) ON UPDATE no action ON DELETE set null
|
|
||||||
);
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +0,0 @@
|
|||||||
ALTER TABLE `workspace` ADD `type` text NOT NULL;--> statement-breakpoint
|
|
||||||
ALTER TABLE `workspace` ADD `name` text;--> statement-breakpoint
|
|
||||||
ALTER TABLE `workspace` ADD `directory` text;--> statement-breakpoint
|
|
||||||
ALTER TABLE `workspace` ADD `extra` text;--> statement-breakpoint
|
|
||||||
ALTER TABLE `workspace` DROP COLUMN `config`;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,3 +0,0 @@
|
|||||||
ALTER TABLE `account_state` ADD `active_org_id` text;--> statement-breakpoint
|
|
||||||
UPDATE `account_state` SET `active_org_id` = (SELECT `selected_org_id` FROM `account` WHERE `account`.`id` = `account_state`.`active_account_id`);--> statement-breakpoint
|
|
||||||
ALTER TABLE `account` DROP COLUMN `selected_org_id`;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +0,0 @@
|
|||||||
DROP INDEX IF EXISTS `message_session_idx`;--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `part_message_idx`;--> statement-breakpoint
|
|
||||||
CREATE INDEX `message_session_time_created_id_idx` ON `message` (`session_id`,`time_created`,`id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `part_message_id_id_idx` ON `part` (`message_id`,`id`);
|
|
||||||
-1168
File diff suppressed because it is too large
Load Diff
@@ -1,13 +0,0 @@
|
|||||||
CREATE TABLE `event_sequence` (
|
|
||||||
`aggregate_id` text PRIMARY KEY,
|
|
||||||
`seq` integer NOT NULL
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE TABLE `event` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`aggregate_id` text NOT NULL,
|
|
||||||
`seq` integer NOT NULL,
|
|
||||||
`type` text NOT NULL,
|
|
||||||
`data` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_event_aggregate_id_event_sequence_aggregate_id_fk` FOREIGN KEY (`aggregate_id`) REFERENCES `event_sequence`(`aggregate_id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
-1271
File diff suppressed because it is too large
Load Diff
@@ -1,16 +0,0 @@
|
|||||||
PRAGMA foreign_keys=OFF;--> statement-breakpoint
|
|
||||||
CREATE TABLE `__new_workspace` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`type` text NOT NULL,
|
|
||||||
`name` text DEFAULT '' NOT NULL,
|
|
||||||
`branch` text,
|
|
||||||
`directory` text,
|
|
||||||
`extra` text,
|
|
||||||
`project_id` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_workspace_project_id_project_id_fk` FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
INSERT INTO `__new_workspace`(`id`, `type`, `branch`, `name`, `directory`, `extra`, `project_id`) SELECT `id`, `type`, `branch`, `name`, `directory`, `extra`, `project_id` FROM `workspace`;--> statement-breakpoint
|
|
||||||
DROP TABLE `workspace`;--> statement-breakpoint
|
|
||||||
ALTER TABLE `__new_workspace` RENAME TO `workspace`;--> statement-breakpoint
|
|
||||||
PRAGMA foreign_keys=ON;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,13 +0,0 @@
|
|||||||
CREATE TABLE `session_entry` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`session_id` text NOT NULL,
|
|
||||||
`type` text NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
`data` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_session_entry_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_entry_session_idx` ON `session_entry` (`session_id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_entry_session_type_idx` ON `session_entry` (`session_id`,`type`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_entry_time_created_idx` ON `session_entry` (`time_created`);
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,2 +0,0 @@
|
|||||||
ALTER TABLE `project` ADD `icon_url_override` text;
|
|
||||||
UPDATE `project` SET `icon_url_override` = `icon_url` WHERE `icon_url` IS NOT NULL;
|
|
||||||
-1409
File diff suppressed because it is too large
Load Diff
@@ -1,17 +0,0 @@
|
|||||||
CREATE TABLE `session_message` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`session_id` text NOT NULL,
|
|
||||||
`type` text NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
`data` text NOT NULL,
|
|
||||||
CONSTRAINT `fk_session_message_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `session_entry_session_idx`;--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `session_entry_session_type_idx`;--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `session_entry_time_created_idx`;--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_message_session_idx` ON `session_message` (`session_id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_message_session_type_idx` ON `session_message` (`session_id`,`type`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_message_time_created_idx` ON `session_message` (`time_created`);--> statement-breakpoint
|
|
||||||
DROP TABLE `session_entry`;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
ALTER TABLE `session` ADD `path` text;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,2 +0,0 @@
|
|||||||
ALTER TABLE `session` ADD `agent` text;--> statement-breakpoint
|
|
||||||
ALTER TABLE `session` ADD `model` text;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
ALTER TABLE `event_sequence` ADD `owner_id` text;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
ALTER TABLE `workspace` ADD `time_used` integer NOT NULL DEFAULT 0;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,6 +0,0 @@
|
|||||||
ALTER TABLE `session` ADD `cost` real DEFAULT 0 NOT NULL;--> statement-breakpoint
|
|
||||||
ALTER TABLE `session` ADD `tokens_input` integer DEFAULT 0 NOT NULL;--> statement-breakpoint
|
|
||||||
ALTER TABLE `session` ADD `tokens_output` integer DEFAULT 0 NOT NULL;--> statement-breakpoint
|
|
||||||
ALTER TABLE `session` ADD `tokens_reasoning` integer DEFAULT 0 NOT NULL;--> statement-breakpoint
|
|
||||||
ALTER TABLE `session` ADD `tokens_cache_read` integer DEFAULT 0 NOT NULL;--> statement-breakpoint
|
|
||||||
ALTER TABLE `session` ADD `tokens_cache_write` integer DEFAULT 0 NOT NULL;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +0,0 @@
|
|||||||
CREATE TABLE `data_migration` (
|
|
||||||
`name` text PRIMARY KEY,
|
|
||||||
`time_completed` integer NOT NULL
|
|
||||||
);
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
ALTER TABLE `session` ADD `metadata` text;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +0,0 @@
|
|||||||
UPDATE project SET worktree = REPLACE(worktree, char(92), '/') WHERE worktree GLOB '[A-Za-z]:' || char(92) || '*' OR worktree LIKE char(92) || char(92) || '%';
|
|
||||||
--> statement-breakpoint
|
|
||||||
UPDATE project SET sandboxes = REPLACE(sandboxes, char(92) || char(92), '/') WHERE instr(sandboxes, char(92)) > 0 AND (worktree GLOB '[A-Za-z]:*' OR worktree LIKE '//%');
|
|
||||||
--> statement-breakpoint
|
|
||||||
UPDATE session SET directory = REPLACE(directory, char(92), '/') WHERE directory GLOB '[A-Za-z]:' || char(92) || '*' OR directory LIKE char(92) || char(92) || '%';
|
|
||||||
--> statement-breakpoint
|
|
||||||
UPDATE session SET path = REPLACE(path, char(92), '/') WHERE path IS NOT NULL AND instr(path, char(92)) > 0 AND (directory GLOB '[A-Za-z]:*' OR directory LIKE '//%');
|
|
||||||
-1560
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
DROP TABLE `permission`;
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,11 +0,0 @@
|
|||||||
CREATE TABLE `permission` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`project_id` text NOT NULL,
|
|
||||||
`action` text NOT NULL,
|
|
||||||
`resource` text NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL,
|
|
||||||
CONSTRAINT `fk_permission_project_id_project_id_fk` FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE UNIQUE INDEX `permission_project_action_resource_idx` ON `permission` (`project_id`,`action`,`resource`);
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,8 +0,0 @@
|
|||||||
CREATE TABLE `project_directory` (
|
|
||||||
`project_id` text NOT NULL,
|
|
||||||
`directory` text NOT NULL,
|
|
||||||
`type` text NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
CONSTRAINT `project_directory_pk` PRIMARY KEY(`project_id`, `directory`),
|
|
||||||
CONSTRAINT `fk_project_directory_project_id_project_id_fk` FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
-1664
File diff suppressed because it is too large
Load Diff
-5
@@ -1,5 +0,0 @@
|
|||||||
DROP INDEX IF EXISTS `session_message_session_idx`;--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `session_message_session_type_idx`;--> statement-breakpoint
|
|
||||||
CREATE INDEX `event_aggregate_seq_idx` ON `event` (`aggregate_id`,`seq`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_message_session_time_created_id_idx` ON `session_message` (`session_id`,`time_created`,`id`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_message_session_type_time_created_id_idx` ON `session_message` (`session_id`,`type`,`time_created`,`id`);
|
|
||||||
-1636
File diff suppressed because it is too large
Load Diff
@@ -1,6 +0,0 @@
|
|||||||
DELETE FROM `session_message`;--> statement-breakpoint
|
|
||||||
ALTER TABLE `session_message` ADD `seq` integer NOT NULL;--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `session_message_session_time_created_id_idx`;--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `session_message_session_type_time_created_id_idx`;--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_message_session_seq_idx` ON `session_message` (`session_id`,`seq`);--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_message_session_type_seq_idx` ON `session_message` (`session_id`,`type`,`seq`);
|
|
||||||
-1638
File diff suppressed because it is too large
Load Diff
@@ -1,12 +0,0 @@
|
|||||||
CREATE TABLE `session_input` (
|
|
||||||
`seq` integer PRIMARY KEY AUTOINCREMENT,
|
|
||||||
`id` text NOT NULL UNIQUE,
|
|
||||||
`session_id` text NOT NULL,
|
|
||||||
`prompt` text NOT NULL,
|
|
||||||
`delivery` text NOT NULL,
|
|
||||||
`promoted_seq` integer,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
CONSTRAINT `fk_session_input_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_input_session_pending_seq_idx` ON `session_input` (`session_id`,`promoted_seq`,`seq`);
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +0,0 @@
|
|||||||
DROP INDEX IF EXISTS `session_input_session_pending_seq_idx`;--> statement-breakpoint
|
|
||||||
CREATE INDEX IF NOT EXISTS `event_aggregate_type_seq_idx` ON `event` (`aggregate_id`,`type`,`seq`);--> statement-breakpoint
|
|
||||||
CREATE INDEX IF NOT EXISTS `session_input_session_pending_delivery_seq_idx` ON `session_input` (`session_id`,`promoted_seq`,`delivery`,`seq`);--> statement-breakpoint
|
|
||||||
CREATE INDEX IF NOT EXISTS `session_message_session_time_created_id_idx` ON `session_message` (`session_id`,`time_created`,`id`);
|
|
||||||
-1869
File diff suppressed because it is too large
Load Diff
@@ -1,28 +0,0 @@
|
|||||||
DELETE FROM `session_input`;--> statement-breakpoint
|
|
||||||
DELETE FROM `session_message`;--> statement-breakpoint
|
|
||||||
DELETE FROM `event`;--> statement-breakpoint
|
|
||||||
DELETE FROM `event_sequence`;--> statement-breakpoint
|
|
||||||
UPDATE `session` SET `workspace_id` = NULL;--> statement-breakpoint
|
|
||||||
DELETE FROM `workspace`;--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `event_aggregate_seq_idx`;--> statement-breakpoint
|
|
||||||
CREATE UNIQUE INDEX `event_aggregate_seq_idx` ON `event` (`aggregate_id`,`seq`);--> statement-breakpoint
|
|
||||||
DROP INDEX IF EXISTS `session_message_session_seq_idx`;--> statement-breakpoint
|
|
||||||
CREATE UNIQUE INDEX `session_message_session_seq_idx` ON `session_message` (`session_id`,`seq`);--> statement-breakpoint
|
|
||||||
PRAGMA foreign_keys=OFF;--> statement-breakpoint
|
|
||||||
CREATE TABLE `__new_session_input` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`session_id` text NOT NULL,
|
|
||||||
`prompt` text NOT NULL,
|
|
||||||
`delivery` text NOT NULL,
|
|
||||||
`admitted_seq` integer NOT NULL,
|
|
||||||
`promoted_seq` integer,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
CONSTRAINT `fk_session_input_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
DROP TABLE `session_input`;--> statement-breakpoint
|
|
||||||
ALTER TABLE `__new_session_input` RENAME TO `session_input`;--> statement-breakpoint
|
|
||||||
PRAGMA foreign_keys=ON;--> statement-breakpoint
|
|
||||||
CREATE INDEX `session_input_session_pending_delivery_seq_idx` ON `session_input` (`session_id`,`promoted_seq`,`delivery`,`admitted_seq`);--> statement-breakpoint
|
|
||||||
CREATE UNIQUE INDEX `session_input_session_admitted_seq_idx` ON `session_input` (`session_id`,`admitted_seq`);--> statement-breakpoint
|
|
||||||
CREATE UNIQUE INDEX `session_input_session_promoted_seq_idx` ON `session_input` (`session_id`,`promoted_seq`);
|
|
||||||
-1898
File diff suppressed because it is too large
Load Diff
@@ -1,9 +0,0 @@
|
|||||||
CREATE TABLE `session_context_epoch` (
|
|
||||||
`session_id` text PRIMARY KEY,
|
|
||||||
`baseline` text NOT NULL,
|
|
||||||
`snapshot` text NOT NULL,
|
|
||||||
`baseline_seq` integer NOT NULL,
|
|
||||||
`replacement_seq` integer,
|
|
||||||
`revision` integer DEFAULT 0 NOT NULL,
|
|
||||||
CONSTRAINT `fk_session_context_epoch_session_id_session_id_fk` FOREIGN KEY (`session_id`) REFERENCES `session`(`id`) ON DELETE CASCADE
|
|
||||||
);
|
|
||||||
-1980
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
ALTER TABLE `session_context_epoch` ADD `agent` text DEFAULT 'build' NOT NULL;
|
|
||||||
-1990
File diff suppressed because it is too large
Load Diff
@@ -1,12 +0,0 @@
|
|||||||
CREATE TABLE `credential` (
|
|
||||||
`id` text PRIMARY KEY,
|
|
||||||
`connector_id` text NOT NULL,
|
|
||||||
`method_id` text NOT NULL,
|
|
||||||
`label` text NOT NULL,
|
|
||||||
`value` text NOT NULL,
|
|
||||||
`active` integer DEFAULT false NOT NULL,
|
|
||||||
`time_created` integer NOT NULL,
|
|
||||||
`time_updated` integer NOT NULL
|
|
||||||
);
|
|
||||||
--> statement-breakpoint
|
|
||||||
CREATE UNIQUE INDEX `credential_connector_active_idx` ON `credential` (`connector_id`) WHERE "credential"."active" = 1;
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://json.schemastore.org/package.json",
|
"$schema": "https://json.schemastore.org/package.json",
|
||||||
"version": "1.17.3",
|
"version": "1.17.4",
|
||||||
"name": "@opencode-ai/core",
|
"name": "@opencode-ai/core",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
|||||||
+27
-31
@@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"version": "7",
|
"version": "7",
|
||||||
"dialect": "sqlite",
|
"dialect": "sqlite",
|
||||||
"id": "f25f9126-c7dc-4882-9ff4-af27e11d2da1",
|
"id": "abd2f920-b822-49af-b8a7-2e48367d424f",
|
||||||
"prevIds": ["d1bfa125-b81e-4c61-9b6e-e74abf6e488f"],
|
"prevIds": ["f25f9126-c7dc-4882-9ff4-af27e11d2da1"],
|
||||||
"ddl": [
|
"ddl": [
|
||||||
{
|
{
|
||||||
"name": "workspace",
|
"name": "workspace",
|
||||||
@@ -382,21 +382,11 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "text",
|
"type": "text",
|
||||||
"notNull": true,
|
"notNull": false,
|
||||||
"autoincrement": false,
|
"autoincrement": false,
|
||||||
"default": null,
|
"default": null,
|
||||||
"generated": null,
|
"generated": null,
|
||||||
"name": "connector_id",
|
"name": "integration_id",
|
||||||
"entityType": "columns",
|
|
||||||
"table": "credential"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "text",
|
|
||||||
"notNull": true,
|
|
||||||
"autoincrement": false,
|
|
||||||
"default": null,
|
|
||||||
"generated": null,
|
|
||||||
"name": "method_id",
|
|
||||||
"entityType": "columns",
|
"entityType": "columns",
|
||||||
"table": "credential"
|
"table": "credential"
|
||||||
},
|
},
|
||||||
@@ -421,10 +411,30 @@
|
|||||||
"table": "credential"
|
"table": "credential"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "integer",
|
"type": "text",
|
||||||
"notNull": true,
|
"notNull": false,
|
||||||
"autoincrement": false,
|
"autoincrement": false,
|
||||||
"default": "false",
|
"default": null,
|
||||||
|
"generated": null,
|
||||||
|
"name": "connector_id",
|
||||||
|
"entityType": "columns",
|
||||||
|
"table": "credential"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "text",
|
||||||
|
"notNull": false,
|
||||||
|
"autoincrement": false,
|
||||||
|
"default": null,
|
||||||
|
"generated": null,
|
||||||
|
"name": "method_id",
|
||||||
|
"entityType": "columns",
|
||||||
|
"table": "credential"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "integer",
|
||||||
|
"notNull": false,
|
||||||
|
"autoincrement": false,
|
||||||
|
"default": null,
|
||||||
"generated": null,
|
"generated": null,
|
||||||
"name": "active",
|
"name": "active",
|
||||||
"entityType": "columns",
|
"entityType": "columns",
|
||||||
@@ -1766,20 +1776,6 @@
|
|||||||
"table": "session_share",
|
"table": "session_share",
|
||||||
"entityType": "pks"
|
"entityType": "pks"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"value": "connector_id",
|
|
||||||
"isExpression": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"isUnique": true,
|
|
||||||
"where": "\"credential\".\"active\" = 1",
|
|
||||||
"origin": "manual",
|
|
||||||
"name": "credential_connector_active_idx",
|
|
||||||
"entityType": "indexes",
|
|
||||||
"table": "credential"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"columns": [
|
"columns": [
|
||||||
{
|
{
|
||||||
@@ -8,9 +8,10 @@ import { pathToFileURL } from "url"
|
|||||||
import { parseArgs } from "util"
|
import { parseArgs } from "util"
|
||||||
|
|
||||||
const root = path.resolve(import.meta.dirname, "../../..")
|
const root = path.resolve(import.meta.dirname, "../../..")
|
||||||
const sqlDir = path.join(root, "packages/core/migration")
|
const snapshot = path.join(root, "packages/core/schema.json")
|
||||||
const tsDir = path.join(root, "packages/core/src/database/migration")
|
const tsDir = path.join(root, "packages/core/src/database/migration")
|
||||||
const registry = path.join(root, "packages/core/src/database/migration.gen.ts")
|
const registry = path.join(root, "packages/core/src/database/migration.gen.ts")
|
||||||
|
const schema = path.join(root, "packages/core/src/database/schema.gen.ts")
|
||||||
const args = parseArgs({
|
const args = parseArgs({
|
||||||
args: process.argv.slice(2),
|
args: process.argv.slice(2),
|
||||||
options: {
|
options: {
|
||||||
@@ -24,57 +25,62 @@ if (args.values.check) {
|
|||||||
process.exit(0)
|
process.exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
await $`bun drizzle-kit generate ${args.values.name ? ["--name", args.values.name] : []}`.cwd(
|
await generate()
|
||||||
path.join(root, "packages/core"),
|
|
||||||
)
|
|
||||||
|
|
||||||
const sqlMigrations = (await Array.fromAsync(new Bun.Glob("*/migration.sql").scan({ cwd: sqlDir })))
|
async function generate() {
|
||||||
.map((file) => file.split("/")[0])
|
const temporary = await fs.mkdtemp(path.join(os.tmpdir(), "opencode-core-migration-"))
|
||||||
.filter((name) => name !== undefined)
|
const incremental = path.join(temporary, "incremental")
|
||||||
.sort()
|
const full = path.join(temporary, "full")
|
||||||
|
try {
|
||||||
|
await fs.mkdir(incremental)
|
||||||
|
await fs.mkdir(path.join(incremental, "baseline"))
|
||||||
|
await fs.copyFile(snapshot, path.join(incremental, "baseline/snapshot.json"))
|
||||||
|
await drizzle(temporary, incremental, args.values.name)
|
||||||
|
|
||||||
for (const name of sqlMigrations) {
|
const generated = await generatedMigrations(incremental)
|
||||||
if (await Bun.file(path.join(tsDir, `${name}.ts`)).exists()) continue
|
if (generated.length > 1) throw new Error(`Expected one generated migration, found ${generated.length}.`)
|
||||||
await Bun.write(
|
const name = generated[0]
|
||||||
path.join(tsDir, `${name}.ts`),
|
if (name) {
|
||||||
renderMigration(name, await Bun.file(path.join(sqlDir, name, "migration.sql")).text()),
|
const target = path.join(tsDir, `${name}.ts`)
|
||||||
)
|
if (await Bun.file(target).exists()) throw new Error(`Database migration already exists: ${name}`)
|
||||||
|
await Bun.write(
|
||||||
|
target,
|
||||||
|
renderMigration(name, await Bun.file(path.join(incremental, name, "migration.sql")).text()),
|
||||||
|
)
|
||||||
|
await fs.copyFile(path.join(incremental, name, "snapshot.json"), snapshot)
|
||||||
|
}
|
||||||
|
|
||||||
|
await fs.mkdir(full)
|
||||||
|
await drizzle(temporary, full, "schema")
|
||||||
|
await Bun.write(schema, renderSchema(await generatedSql(full)))
|
||||||
|
await Bun.write(registry, renderRegistry(await typescriptMigrations()))
|
||||||
|
} finally {
|
||||||
|
await fs.rm(temporary, { recursive: true, force: true })
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
await Bun.write(registry, renderRegistry(sqlMigrations))
|
|
||||||
|
|
||||||
async function check() {
|
async function check() {
|
||||||
const temporary = await fs.mkdtemp(path.join(os.tmpdir(), "opencode-core-migration-check-"))
|
const temporary = await fs.mkdtemp(path.join(os.tmpdir(), "opencode-core-migration-check-"))
|
||||||
const output = path.join(temporary, "migration")
|
const incremental = path.join(temporary, "incremental")
|
||||||
|
const full = path.join(temporary, "full")
|
||||||
try {
|
try {
|
||||||
await fs.cp(sqlDir, output, { recursive: true })
|
await fs.mkdir(incremental)
|
||||||
const config = path.join(temporary, "drizzle.config.ts")
|
await fs.mkdir(path.join(incremental, "baseline"))
|
||||||
await Bun.write(
|
await fs.copyFile(snapshot, path.join(incremental, "baseline/snapshot.json"))
|
||||||
config,
|
await drizzle(temporary, incremental)
|
||||||
`import config from ${JSON.stringify(pathToFileURL(path.join(root, "packages/core/drizzle.config.ts")).href)}
|
if ((await generatedMigrations(incremental)).length > 0) {
|
||||||
|
|
||||||
export default { ...config, out: ${JSON.stringify(output)} }
|
|
||||||
`,
|
|
||||||
)
|
|
||||||
const before = await snapshot(output)
|
|
||||||
await $`bun drizzle-kit generate --config ${config}`.cwd(path.join(root, "packages/core"))
|
|
||||||
const after = await snapshot(output)
|
|
||||||
if (JSON.stringify(after) !== JSON.stringify(before)) {
|
|
||||||
throw new Error(
|
throw new Error(
|
||||||
"Core schema has ungenerated database migrations. Run `bun script/migration.ts` from packages/core.",
|
"Core schema has ungenerated database migrations. Run `bun script/migration.ts` from packages/core.",
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const migrations = before
|
await fs.mkdir(full)
|
||||||
.map((entry) => entry.path.split("/")[0])
|
await drizzle(temporary, full, "schema")
|
||||||
.filter((name, index, all) => name !== undefined && all.indexOf(name) === index)
|
if ((await Bun.file(schema).text()) !== renderSchema(await generatedSql(full))) {
|
||||||
.sort()
|
throw new Error("Current database schema is stale. Run `bun script/migration.ts` from packages/core.")
|
||||||
for (const name of migrations) {
|
|
||||||
if (await Bun.file(path.join(tsDir, `${name}.ts`)).exists()) continue
|
|
||||||
throw new Error(
|
|
||||||
`Database migration TypeScript wrapper is missing for ${name}. Run \`bun script/migration.ts\` from packages/core.`,
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const migrations = await typescriptMigrations()
|
||||||
if ((await Bun.file(registry).text()) !== renderRegistry(migrations)) {
|
if ((await Bun.file(registry).text()) !== renderRegistry(migrations)) {
|
||||||
throw new Error("Database migration registry is stale. Run `bun script/migration.ts` from packages/core.")
|
throw new Error("Database migration registry is stale. Run `bun script/migration.ts` from packages/core.")
|
||||||
}
|
}
|
||||||
@@ -83,11 +89,37 @@ export default { ...config, out: ${JSON.stringify(output)} }
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function snapshot(directory: string) {
|
async function drizzle(temporary: string, output: string, name?: string) {
|
||||||
const files = await Array.fromAsync(new Bun.Glob("**/*").scan({ cwd: directory, onlyFiles: true }))
|
const config = path.join(temporary, `${path.basename(output)}.config.ts`)
|
||||||
return Promise.all(
|
await Bun.write(
|
||||||
files.sort().map(async (file) => ({ path: file, contents: await Bun.file(path.join(directory, file)).text() })),
|
config,
|
||||||
|
`import config from ${JSON.stringify(pathToFileURL(path.join(root, "packages/core/drizzle.config.ts")).href)}
|
||||||
|
|
||||||
|
export default { ...config, out: ${JSON.stringify(output)} }
|
||||||
|
`,
|
||||||
)
|
)
|
||||||
|
await $`bun drizzle-kit generate --config ${config} ${name ? ["--name", name] : []}`.cwd(
|
||||||
|
path.join(root, "packages/core"),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
async function generatedMigrations(directory: string) {
|
||||||
|
return (await Array.fromAsync(new Bun.Glob("*/migration.sql").scan({ cwd: directory })))
|
||||||
|
.map((file) => file.split("/")[0])
|
||||||
|
.filter((name): name is string => name !== undefined)
|
||||||
|
.sort()
|
||||||
|
}
|
||||||
|
|
||||||
|
async function generatedSql(directory: string) {
|
||||||
|
const generated = await generatedMigrations(directory)
|
||||||
|
if (generated.length !== 1) throw new Error(`Expected one full schema migration, found ${generated.length}.`)
|
||||||
|
return Bun.file(path.join(directory, generated[0]!, "migration.sql")).text()
|
||||||
|
}
|
||||||
|
|
||||||
|
async function typescriptMigrations() {
|
||||||
|
return (await Array.fromAsync(new Bun.Glob("*.ts").scan({ cwd: tsDir })))
|
||||||
|
.map((file) => path.basename(file, ".ts"))
|
||||||
|
.sort()
|
||||||
}
|
}
|
||||||
|
|
||||||
function renderMigration(name: string, sql: string) {
|
function renderMigration(name: string, sql: string) {
|
||||||
@@ -98,18 +130,36 @@ export default {
|
|||||||
id: ${JSON.stringify(name)},
|
id: ${JSON.stringify(name)},
|
||||||
up(tx) {
|
up(tx) {
|
||||||
return Effect.gen(function* () {
|
return Effect.gen(function* () {
|
||||||
${sql
|
${renderStatements(sql)}
|
||||||
.split("--> statement-breakpoint")
|
|
||||||
.map((statement) => statement.trim())
|
|
||||||
.filter((statement) => statement.length > 0)
|
|
||||||
.map(renderRun)
|
|
||||||
.join("\n")}
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
} satisfies DatabaseMigration.Migration
|
} satisfies DatabaseMigration.Migration
|
||||||
`
|
`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function renderSchema(sql: string) {
|
||||||
|
return `import { Effect } from "effect"
|
||||||
|
import type { DatabaseMigration } from "./migration"
|
||||||
|
|
||||||
|
export default {
|
||||||
|
up(tx) {
|
||||||
|
return Effect.gen(function* () {
|
||||||
|
${renderStatements(sql)}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
} satisfies Omit<DatabaseMigration.Migration, "id">
|
||||||
|
`
|
||||||
|
}
|
||||||
|
|
||||||
|
function renderStatements(sql: string) {
|
||||||
|
return sql
|
||||||
|
.split("--> statement-breakpoint")
|
||||||
|
.map((statement) => statement.trim())
|
||||||
|
.filter((statement) => statement.length > 0)
|
||||||
|
.map(renderRun)
|
||||||
|
.join("\n")
|
||||||
|
}
|
||||||
|
|
||||||
function renderRun(statement: string) {
|
function renderRun(statement: string) {
|
||||||
const lines = statement.replaceAll("\t", " ").split("\n")
|
const lines = statement.replaceAll("\t", " ").split("\n")
|
||||||
if (lines.length === 1) return ` yield* tx.run(\`${escapeTemplate(lines[0])}\`)`
|
if (lines.length === 1) return ` yield* tx.run(\`${escapeTemplate(lines[0])}\`)`
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
export * as Catalog from "./catalog"
|
export * as Catalog from "./catalog"
|
||||||
|
|
||||||
import { Context, Effect, Layer, Option, Order, pipe, Schema, Array, Scope, Stream } from "effect"
|
import { Array, Context, Effect, Layer, Option, Order, pipe, Schema, Scope, Stream } from "effect"
|
||||||
import { castDraft, enableMapSet, type Draft } from "immer"
|
import { castDraft, enableMapSet, type Draft } from "immer"
|
||||||
import { ModelV2 } from "./model"
|
import { ModelV2 } from "./model"
|
||||||
import { ModelRequest } from "./model-request"
|
import { ModelRequest } from "./model-request"
|
||||||
@@ -11,7 +11,7 @@ import { EventV2 } from "./event"
|
|||||||
import { Policy } from "./policy"
|
import { Policy } from "./policy"
|
||||||
import { State } from "./state"
|
import { State } from "./state"
|
||||||
import { Credential } from "./credential"
|
import { Credential } from "./credential"
|
||||||
import { ConnectorSchema } from "./connector/schema"
|
import { IntegrationSchema } from "./integration/schema"
|
||||||
|
|
||||||
export type ProviderRecord = {
|
export type ProviderRecord = {
|
||||||
provider: ProviderV2.Info
|
provider: ProviderV2.Info
|
||||||
@@ -99,8 +99,8 @@ export const layer = Layer.effect(
|
|||||||
const credentials = yield* Credential.Service
|
const credentials = yield* Credential.Service
|
||||||
const scope = yield* Scope.Scope
|
const scope = yield* Scope.Scope
|
||||||
|
|
||||||
const project = (provider: ProviderV2.Info, active: Map<ConnectorSchema.ID, Credential.Info>) => {
|
const project = (provider: ProviderV2.Info, active: Map<IntegrationSchema.ID, Credential.Stored>) => {
|
||||||
const credential = active.get(ConnectorSchema.ID.make(provider.id))
|
const credential = active.get(IntegrationSchema.ID.make(provider.id))
|
||||||
if (!credential) return provider
|
if (!credential) return provider
|
||||||
const body = { ...provider.request.body }
|
const body = { ...provider.request.body }
|
||||||
if (credential.value.type === "key") {
|
if (credential.value.type === "key") {
|
||||||
@@ -211,7 +211,9 @@ export const layer = Layer.effect(
|
|||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
})
|
})
|
||||||
const active = () => credentials.activeAll().pipe(Effect.orDie)
|
const active = Effect.fn("CatalogV2.active")(function* () {
|
||||||
|
return new Map((yield* credentials.all()).map((credential) => [credential.integrationID, credential]))
|
||||||
|
})
|
||||||
|
|
||||||
yield* events.subscribe(PluginV2.Event.Added).pipe(
|
yield* events.subscribe(PluginV2.Event.Added).pipe(
|
||||||
// Plugin registries are location scoped even though the event bus is process scoped.
|
// Plugin registries are location scoped even though the event bus is process scoped.
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user