feat(spotlight): add default search engine (#1807)
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
ALTER TABLE `user` ADD `default_search_engine_id` varchar(64);--> statement-breakpoint
|
||||
ALTER TABLE `user` ADD CONSTRAINT `user_default_search_engine_id_search_engine_id_fk` FOREIGN KEY (`default_search_engine_id`) REFERENCES `search_engine`(`id`) ON DELETE set null ON UPDATE no action;
|
||||
1684
packages/db/migrations/mysql/meta/0019_snapshot.json
Normal file
1684
packages/db/migrations/mysql/meta/0019_snapshot.json
Normal file
File diff suppressed because it is too large
Load Diff
@@ -134,6 +134,13 @@
|
||||
"when": 1735593853768,
|
||||
"tag": "0018_mighty_shaman",
|
||||
"breakpoints": true
|
||||
},
|
||||
{
|
||||
"idx": 19,
|
||||
"version": "5",
|
||||
"when": 1735651231818,
|
||||
"tag": "0019_crazy_marvel_zombies",
|
||||
"breakpoints": true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
1
packages/db/migrations/sqlite/0019_steady_darkhawk.sql
Normal file
1
packages/db/migrations/sqlite/0019_steady_darkhawk.sql
Normal file
@@ -0,0 +1 @@
|
||||
ALTER TABLE `user` ADD `default_search_engine_id` text REFERENCES search_engine(id);
|
||||
1609
packages/db/migrations/sqlite/meta/0019_snapshot.json
Normal file
1609
packages/db/migrations/sqlite/meta/0019_snapshot.json
Normal file
File diff suppressed because it is too large
Load Diff
@@ -134,6 +134,13 @@
|
||||
"when": 1735593831501,
|
||||
"tag": "0018_cheerful_tattoo",
|
||||
"breakpoints": true
|
||||
},
|
||||
{
|
||||
"idx": 19,
|
||||
"version": "6",
|
||||
"when": 1735651175378,
|
||||
"tag": "0019_steady_darkhawk",
|
||||
"breakpoints": true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -62,6 +62,9 @@ export const users = mysqlTable("user", {
|
||||
homeBoardId: varchar({ length: 64 }).references((): AnyMySqlColumn => boards.id, {
|
||||
onDelete: "set null",
|
||||
}),
|
||||
defaultSearchEngineId: varchar({ length: 64 }).references(() => searchEngines.id, {
|
||||
onDelete: "set null",
|
||||
}),
|
||||
colorScheme: varchar({ length: 5 }).$type<ColorScheme>().default("dark").notNull(),
|
||||
firstDayOfWeek: tinyint().$type<DayOfWeek>().default(1).notNull(), // Defaults to Monday
|
||||
pingIconsEnabled: boolean().default(false).notNull(),
|
||||
@@ -409,13 +412,17 @@ export const accountRelations = relations(accounts, ({ one }) => ({
|
||||
}),
|
||||
}));
|
||||
|
||||
export const userRelations = relations(users, ({ many }) => ({
|
||||
export const userRelations = relations(users, ({ one, many }) => ({
|
||||
accounts: many(accounts),
|
||||
boards: many(boards),
|
||||
boardPermissions: many(boardUserPermissions),
|
||||
groups: many(groupMembers),
|
||||
ownedGroups: many(groups),
|
||||
invites: many(invites),
|
||||
defaultSearchEngine: one(searchEngines, {
|
||||
fields: [users.defaultSearchEngineId],
|
||||
references: [searchEngines.id],
|
||||
}),
|
||||
}));
|
||||
|
||||
export const mediaRelations = relations(medias, ({ one }) => ({
|
||||
@@ -573,9 +580,10 @@ export const integrationItemRelations = relations(integrationItems, ({ one }) =>
|
||||
}),
|
||||
}));
|
||||
|
||||
export const searchEngineRelations = relations(searchEngines, ({ one }) => ({
|
||||
export const searchEngineRelations = relations(searchEngines, ({ one, many }) => ({
|
||||
integration: one(integrations, {
|
||||
fields: [searchEngines.integrationId],
|
||||
references: [integrations.id],
|
||||
}),
|
||||
usersWithDefault: many(users),
|
||||
}));
|
||||
|
||||
@@ -45,6 +45,9 @@ export const users = sqliteTable("user", {
|
||||
homeBoardId: text().references((): AnySQLiteColumn => boards.id, {
|
||||
onDelete: "set null",
|
||||
}),
|
||||
defaultSearchEngineId: text().references(() => searchEngines.id, {
|
||||
onDelete: "set null",
|
||||
}),
|
||||
colorScheme: text().$type<ColorScheme>().default("dark").notNull(),
|
||||
firstDayOfWeek: int().$type<DayOfWeek>().default(1).notNull(), // Defaults to Monday
|
||||
pingIconsEnabled: int({ mode: "boolean" }).default(false).notNull(),
|
||||
@@ -395,7 +398,7 @@ export const accountRelations = relations(accounts, ({ one }) => ({
|
||||
}),
|
||||
}));
|
||||
|
||||
export const userRelations = relations(users, ({ many }) => ({
|
||||
export const userRelations = relations(users, ({ one, many }) => ({
|
||||
accounts: many(accounts),
|
||||
boards: many(boards),
|
||||
boardPermissions: many(boardUserPermissions),
|
||||
@@ -403,6 +406,10 @@ export const userRelations = relations(users, ({ many }) => ({
|
||||
ownedGroups: many(groups),
|
||||
invites: many(invites),
|
||||
medias: many(medias),
|
||||
defaultSearchEngine: one(searchEngines, {
|
||||
fields: [users.defaultSearchEngineId],
|
||||
references: [searchEngines.id],
|
||||
}),
|
||||
}));
|
||||
|
||||
export const mediaRelations = relations(medias, ({ one }) => ({
|
||||
@@ -560,9 +567,10 @@ export const integrationItemRelations = relations(integrationItems, ({ one }) =>
|
||||
}),
|
||||
}));
|
||||
|
||||
export const searchEngineRelations = relations(searchEngines, ({ one }) => ({
|
||||
export const searchEngineRelations = relations(searchEngines, ({ one, many }) => ({
|
||||
integration: one(integrations, {
|
||||
fields: [searchEngines.integrationId],
|
||||
references: [integrations.id],
|
||||
}),
|
||||
usersWithDefault: many(users),
|
||||
}));
|
||||
|
||||
Reference in New Issue
Block a user