feat: rebuild workspaces as the reference plugin

This commit is contained in:
LukeGus committed 2026-09-23 07:04:03 -05:00
1 parent d774df8b41
commit f217d8db89
79 files changed
+32995 -2184

No files matched your search

@@ -0,0 +1,19 @@
-- workspaces 0001: adopt_user_workspaces
-- Generated by termix-plugin migrations. Review before committing.
CREATE TABLE IF NOT EXISTS `user_workspaces` (
`id` int AUTO_INCREMENT PRIMARY KEY,
`user_id` varchar(255) NOT NULL,
`name` text NOT NULL,
`color` text,
`icon` text,
`kind` text NOT NULL DEFAULT ('manual'),
`is_default` boolean NOT NULL DEFAULT false,
`payload` text NOT NULL DEFAULT ('{}'),
`sync_id` varchar(255) UNIQUE,
`created_at` text NOT NULL DEFAULT (CURRENT_TIMESTAMP),
`updated_at` text NOT NULL DEFAULT (CURRENT_TIMESTAMP),
`last_used_at` text,
FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE
);
RENAME TABLE `user_workspaces` TO `p_workspaces_workspaces`;
@@ -0,0 +1,20 @@
-- workspaces 0001: adopt_user_workspaces
-- Generated by termix-plugin migrations. Review before committing.
CREATE TABLE IF NOT EXISTS "user_workspaces" (
"id" serial PRIMARY KEY,
"user_id" varchar(255) NOT NULL,
"name" text NOT NULL,
"color" text,
"icon" text,
"kind" text NOT NULL DEFAULT 'manual',
"is_default" boolean NOT NULL DEFAULT false,
"payload" text NOT NULL DEFAULT '{}',
"sync_id" varchar(255) UNIQUE,
"created_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP,
"last_used_at" text,
FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE
);
CREATE INDEX IF NOT EXISTS "idx_user_workspaces_user_id" ON "user_workspaces" ("user_id");
ALTER TABLE "user_workspaces" RENAME TO "p_workspaces_workspaces";
@@ -0,0 +1,69 @@
{
"version": 1,
"tables": {
"workspaces": {
"columns": {
"id": {
"type": "id",
"primaryKey": true,
"notNull": true
},
"userId": {
"type": "refUser",
"length": 255,
"notNull": true
},
"name": {
"type": "text",
"notNull": true
},
"color": {
"type": "text"
},
"icon": {
"type": "text"
},
"kind": {
"type": "text",
"notNull": true,
"defaultValue": "manual"
},
"isDefault": {
"type": "boolean",
"notNull": true,
"defaultValue": false
},
"payload": {
"type": "text",
"notNull": true,
"defaultValue": "{}"
},
"syncId": {
"type": "varchar",
"length": 255,
"unique": true
},
"createdAt": {
"type": "timestamp",
"notNull": true,
"defaultNow": true
},
"updatedAt": {
"type": "timestamp",
"notNull": true,
"defaultNow": true
},
"lastUsedAt": {
"type": "timestamp"
}
},
"indexes": [
{
"name": "idx_user_workspaces_user_id",
"columns": ["userId"]
}
],
"adopts": "user_workspaces"
}
}
}
@@ -0,0 +1,20 @@
-- workspaces 0001: adopt_user_workspaces
-- Generated by termix-plugin migrations. Review before committing.
CREATE TABLE IF NOT EXISTS "user_workspaces" (
"id" integer PRIMARY KEY AUTOINCREMENT,
"user_id" text NOT NULL,
"name" text NOT NULL,
"color" text,
"icon" text,
"kind" text NOT NULL DEFAULT 'manual',
"is_default" integer NOT NULL DEFAULT 0,
"payload" text NOT NULL DEFAULT '{}',
"sync_id" text UNIQUE,
"created_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP,
"last_used_at" text,
FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE
);
CREATE INDEX IF NOT EXISTS "idx_user_workspaces_user_id" ON "user_workspaces" ("user_id");
ALTER TABLE "user_workspaces" RENAME TO "p_workspaces_workspaces";