diff --git a/CHANGELOG.md b/CHANGELOG.md index d63d847ad..5998ec5dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,5 @@ +## v0.5.17 + ## v0.5.16 ## v0.5.15 diff --git a/README.md b/README.md index 5d5caa70a..a9b14938b 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ - 🔧 Deploy with variant adapters - 🎮 Developer friendly. Provide openapi / webhooks / realtime subscriptions / sdk(soon) / erd preview and more - :sparkles: Multiple built-in field types and variants -- :city_sunset: Different types of views, including grid, kanban, tree, calendar and more +- :city_sunset: Different types of views, including grid, kanban, gantt, tree, calendar and more ## 📚 Tech Stack @@ -64,7 +64,7 @@ ### Deploy with docker ``` -docker run -d --name undb -p 4000:4000 --platform linux/x86_64 -v ~/.undb/:/var/opts/.undb ghcr.io/undb-xyz/undb:latest +docker run -d --name undb -p 4000:4000 --platform linux/x86_64 -v ~/.undb/:/var/opt/.undb ghcr.io/undb-xyz/undb:latest ``` > And then you can visit http://localhost:4000 and get started diff --git a/apps/backend/src/core/table/commands/index.ts b/apps/backend/src/core/table/commands/index.ts index 14fd4bc41..45395f198 100644 --- a/apps/backend/src/core/table/commands/index.ts +++ b/apps/backend/src/core/table/commands/index.ts @@ -27,6 +27,7 @@ import { SetFieldSortCommandHandler } from './set-field-sort.command.handler.js' import { SetFieldVisibilityCommandHandler } from './set-field-visibility.command.handler.js' import { SetFieldWidthCommandHandler } from './set-field-width.command.handler.js' import { SetFiltersCommandHandler } from './set-filters.command.handler.js' +import { SetGanttFieldCommandHandler } from './set-gantt-field.command.handler.js' import { SetKanbanFieldCommandHandler } from './set-kanban-field.command.handler.js' import { SetPinnedFieldsCommandHandler } from './set-pinned-fields.command.handler.js' import { SetRowHeightCommandHandler } from './set-row-height.command.handler.js' @@ -86,4 +87,5 @@ export const commandHandlers = [ DeleteWidgetCommandHandler, DuplicateFieldCommandHandler, ExportGridCommandHandler, + SetGanttFieldCommandHandler, ] diff --git a/apps/backend/src/core/table/commands/set-gantt-field.command.handler.ts b/apps/backend/src/core/table/commands/set-gantt-field.command.handler.ts new file mode 100644 index 000000000..f217000cc --- /dev/null +++ b/apps/backend/src/core/table/commands/set-gantt-field.command.handler.ts @@ -0,0 +1,15 @@ +import type { ICommandHandler } from '@nestjs/cqrs' +import { CommandHandler } from '@nestjs/cqrs' +import { type ITableRepository } from '@undb/core' +import { SetGanttFieldCommandHandler as DomainHandler, SetGanttFieldCommand } from '@undb/cqrs' +import { InjectTableRepository } from '../adapters/index.js' + +@CommandHandler(SetGanttFieldCommand) +export class SetGanttFieldCommandHandler extends DomainHandler implements ICommandHandler { + constructor( + @InjectTableRepository() + protected readonly repo: ITableRepository, + ) { + super(repo) + } +} diff --git a/apps/frontend/package.json b/apps/frontend/package.json index 58d50450f..0fbdaa8d0 100644 --- a/apps/frontend/package.json +++ b/apps/frontend/package.json @@ -71,6 +71,7 @@ "svelte-check": "^3.4.4", "svelte-copy": "^1.4.1", "svelte-dnd-action": "^0.9.22", + "svelte-gantt": "4.0.9-beta", "svelte-grid": "^5.1.1", "svelte-i18next": "^2.0.0", "svelte-jsoneditor": "^0.17.8", @@ -79,7 +80,7 @@ "svelte-preprocess": "^5.0.4", "svelte-previous": "^2.1.3", "svelte-tiny-virtual-list": "^2.0.5", - "sveltekit-superforms": "^1.1.2", + "sveltekit-superforms": "^0.8.7", "svelvet": "^8.0.8", "tailwindcss": "^3.3.2", "trpc-svelte-query": "^1.0.1", diff --git a/apps/frontend/src/app.html b/apps/frontend/src/app.html index 189ae6cc4..ccf440b10 100644 --- a/apps/frontend/src/app.html +++ b/apps/frontend/src/app.html @@ -10,7 +10,7 @@ %sveltekit.head% - +
%sveltekit.body%
diff --git a/apps/frontend/src/app.postcss b/apps/frontend/src/app.postcss index 1a7b7cf38..9af9142c3 100644 --- a/apps/frontend/src/app.postcss +++ b/apps/frontend/src/app.postcss @@ -2,3 +2,10 @@ @tailwind base; @tailwind components; @tailwind utilities; + +.root, +#root, +#docs-root { + --primary-color: #fff; + --secondary-color: #000; +} diff --git a/apps/frontend/src/lib/calendar/CalendarConfig.svelte b/apps/frontend/src/lib/calendar/CalendarConfig.svelte index 8ef7048b1..afa953f65 100644 --- a/apps/frontend/src/lib/calendar/CalendarConfig.svelte +++ b/apps/frontend/src/lib/calendar/CalendarConfig.svelte @@ -7,6 +7,7 @@ import { configViewModal, createFieldInitial, createFieldModal } from '$lib/store/modal' import { t } from '$lib/i18n' import { invalidate } from '$app/navigation' + import { FieldId } from '@undb/core' const table = getTable() const view = getView() @@ -47,9 +48,11 @@ {#if calendarFields.length} -
- {$t('or', { ns: 'common' })} +
+
+ {$t('or', { ns: 'common' })} + +
{/if}
@@ -58,10 +61,18 @@ color="light" class="flex gap-2" on:click={() => { + const id = FieldId.createId() $createFieldInitial = { + id, type: 'date', } - createFieldModal.open() + createFieldModal.open(async () => { + $setField.mutate({ + tableId: $table.id.value, + viewId: $view.id.value, + field: id, + }) + }) }} > @@ -74,10 +85,19 @@ color="light" class="flex gap-2" on:click={() => { + const id = FieldId.createId() $createFieldInitial = { + id, type: 'date-range', } - createFieldModal.open() + + createFieldModal.open(async () => { + $setField.mutate({ + tableId: $table.id.value, + viewId: $view.id.value, + field: id, + }) + }) }} > diff --git a/apps/frontend/src/lib/field/MutateFieldComponent/Tree.svelte b/apps/frontend/src/lib/field/MutateFieldComponent/Tree.svelte index e1d8c55c9..ab3560f54 100644 --- a/apps/frontend/src/lib/field/MutateFieldComponent/Tree.svelte +++ b/apps/frontend/src/lib/field/MutateFieldComponent/Tree.svelte @@ -1,6 +1,6 @@ + +
+ {#each ganttFields as field} + + + {field.name.value} + + {/each} +
+ +{#if ganttFields.length} +
+
+ {$t('or', { ns: 'common' })} + +
+{/if} + +
+ +
diff --git a/apps/frontend/src/lib/gantt/GanttIndex.svelte b/apps/frontend/src/lib/gantt/GanttIndex.svelte new file mode 100644 index 000000000..eeab8de49 --- /dev/null +++ b/apps/frontend/src/lib/gantt/GanttIndex.svelte @@ -0,0 +1,23 @@ + + +{#if field} + +{:else} +
+ + + +
+{/if} diff --git a/apps/frontend/src/lib/gantt/GanttToolbar.svelte b/apps/frontend/src/lib/gantt/GanttToolbar.svelte new file mode 100644 index 000000000..ae0d07901 --- /dev/null +++ b/apps/frontend/src/lib/gantt/GanttToolbar.svelte @@ -0,0 +1,9 @@ + + + + + diff --git a/apps/frontend/src/lib/gantt/GanttView.svelte b/apps/frontend/src/lib/gantt/GanttView.svelte new file mode 100644 index 000000000..d9fa826ea --- /dev/null +++ b/apps/frontend/src/lib/gantt/GanttView.svelte @@ -0,0 +1,180 @@ + + +
+
+
+ + +
+
+
+
+ + diff --git a/apps/frontend/src/lib/import/ImportData.svelte b/apps/frontend/src/lib/import/ImportData.svelte index c0b5285cc..6e64a7498 100644 --- a/apps/frontend/src/lib/import/ImportData.svelte +++ b/apps/frontend/src/lib/import/ImportData.svelte @@ -11,6 +11,7 @@ type ICreateTableSchemaInput, type IMutateRecordValueSchema, createTableInput, + castFieldValue, } from '@undb/core' import { Accordion, Button, Checkbox, Input, Label, Modal, Spinner } from 'flowbite-svelte' import { Dropzone } from 'flowbite-svelte' @@ -84,14 +85,15 @@ records = (data?.slice(1) ?? []).map((values) => values.reduce((prev, value, index) => { const type = $form.schema.at(index)?.type - const v = type === 'number' ? globalThis.Number(value) : value - prev[$form.schema![index].id!] = v + prev[$form.schema![index].id!] = type ? castFieldValue(type, value) : value return prev }, {} as IMutateRecordValueSchema), ) } + $: console.log(records) + const dropHandle = async (event: DragEvent) => { event.preventDefault() const files = event.dataTransfer?.files diff --git a/apps/frontend/src/lib/store/table.ts b/apps/frontend/src/lib/store/table.ts index 8e89ccff0..dcaf5c87e 100644 --- a/apps/frontend/src/lib/store/table.ts +++ b/apps/frontend/src/lib/store/table.ts @@ -242,7 +242,7 @@ export const listRecordFn: Readable< 'share.view', () => (filter?: IRootFilter, options?: ListRecordQueryOptions) => trpc().share.viewRecords.query( - { viewId: $view.id.value }, + { viewId: $view.id.value, q: $q, filter }, { refetchOnMount: false, refetchOnWindowFocus: true, queryHash: $recordHash, ...options }, ), ) diff --git a/apps/frontend/src/lib/store/ui.ts b/apps/frontend/src/lib/store/ui.ts index e3a64833f..61ef05da0 100644 --- a/apps/frontend/src/lib/store/ui.ts +++ b/apps/frontend/src/lib/store/ui.ts @@ -1,9 +1,22 @@ import { writable, type Writable } from 'svelte/store' +import { LIGHT_THEME, DARK_THEME, type Theme } from './ui.type' +import { browser } from '$app/environment' + +const defaultValue: Theme = LIGHT_THEME + +const initialValue: Theme = browser ? (window.localStorage.getItem('theme') as Theme) ?? defaultValue : defaultValue export const sidebarCollapsed = writable(false) -export const changeDarkMode = (mode: string) => { - document.documentElement.classList.toggle(mode) -} +export const theme: Writable = writable(initialValue) -export const theme: Writable<'light' | 'dark'> = writable('dark') +export const changeThemeMode = (mode: Theme) => { + if (mode === LIGHT_THEME) { + document.documentElement.classList.remove(DARK_THEME) + theme.set(LIGHT_THEME) + } else { + document.documentElement.classList.add(DARK_THEME) + theme.set(DARK_THEME) + } + window.localStorage.setItem('theme', mode) +} diff --git a/apps/frontend/src/lib/store/ui.type.ts b/apps/frontend/src/lib/store/ui.type.ts new file mode 100644 index 000000000..c9771fd80 --- /dev/null +++ b/apps/frontend/src/lib/store/ui.type.ts @@ -0,0 +1,3 @@ +export const LIGHT_THEME = 'light' +export const DARK_THEME = 'dark' +export type Theme = typeof LIGHT_THEME | typeof DARK_THEME diff --git a/apps/frontend/src/lib/table/CreateTable.svelte b/apps/frontend/src/lib/table/CreateTable.svelte index 3c77a6f2a..a86d34ed1 100644 --- a/apps/frontend/src/lib/table/CreateTable.svelte +++ b/apps/frontend/src/lib/table/CreateTable.svelte @@ -94,7 +94,7 @@ type="text" label="name" bind:value={$form.name} - aria-invalid={$errors.name ? 'true' : undefined} + data-invalid={$errors.name} required on:blur={onBlur} {...$constraints.name} diff --git a/apps/frontend/src/lib/table/CreateTableFieldAccordionItem.svelte b/apps/frontend/src/lib/table/CreateTableFieldAccordionItem.svelte index 4847d479a..e619d2131 100644 --- a/apps/frontend/src/lib/table/CreateTableFieldAccordionItem.svelte +++ b/apps/frontend/src/lib/table/CreateTableFieldAccordionItem.svelte @@ -80,7 +80,7 @@ type="text" placeholder={field.description ?? 'name'} required - aria-invalid={$errors.schema?.[i] ? 'true' : undefined} + data-invalid={$errors.schema?.[i]} bind:value={field.name} /> diff --git a/apps/frontend/src/lib/table/ManageFieldsMenu.svelte b/apps/frontend/src/lib/table/ManageFieldsMenu.svelte index ac9e6c489..cf636c9c7 100644 --- a/apps/frontend/src/lib/table/ManageFieldsMenu.svelte +++ b/apps/frontend/src/lib/table/ManageFieldsMenu.svelte @@ -83,7 +83,7 @@ size="xs" color="alternative" class={cx( - 'h-full !rounded-md gap-2 whitespace-nowrap border-0 hover:!bg-blue-50 text-blue-600 dark:text-gray-100', + 'h-full !rounded-md gap-2 whitespace-nowrap border-0 hover:!bg-blue-50 dark:hover:!bg-gray-800 text-blue-600 dark:text-gray-100', !!hiddenCount && '!bg-blue-50 dark:!bg-primary-600', )} on:click={() => (open = true)} diff --git a/apps/frontend/src/lib/table/TableIndex.svelte b/apps/frontend/src/lib/table/TableIndex.svelte index 3fc02a001..76325e0f1 100644 --- a/apps/frontend/src/lib/table/TableIndex.svelte +++ b/apps/frontend/src/lib/table/TableIndex.svelte @@ -7,6 +7,7 @@ import CalendarIndex from '$lib/calendar/CalendarIndex.svelte' import DashboardIndex from '$lib/dashboard/DashboardIndex.svelte' import TreeIndex from '$lib/tree/TreeIndex.svelte' + import GanttIndex from '$lib/gantt/GanttIndex.svelte' const view = getView() @@ -15,6 +16,7 @@ const map: Partial> = { grid: TableView, kanban: KanbanIndex, + gantt: GanttIndex, tree: TreeIndex, calendar: CalendarIndex, dashboard: DashboardIndex, diff --git a/apps/frontend/src/lib/table/TableView.svelte b/apps/frontend/src/lib/table/TableView.svelte index 9151bb765..deea57aca 100644 --- a/apps/frontend/src/lib/table/TableView.svelte +++ b/apps/frontend/src/lib/table/TableView.svelte @@ -452,14 +452,14 @@ } :global(.dark .hovered) { - background-color: #374151; + background-color: var(--primary-color) !important; } :global(.dark revogr-data .rgRow.focused-rgRow) { background-color: #374151 !important; } - :global(.dark revo-grid[theme=compact] revogr-header .rgHeaderCell.focused-cell){ - background-color: #374151 !important + :global(.dark revo-grid[theme='compact'] revogr-header .rgHeaderCell.focused-cell) { + background-color: #374151 !important; } diff --git a/apps/frontend/src/lib/table/TableViewTabItem.svelte b/apps/frontend/src/lib/table/TableViewTabItem.svelte index d8cbadc07..264e6ff29 100644 --- a/apps/frontend/src/lib/table/TableViewTabItem.svelte +++ b/apps/frontend/src/lib/table/TableViewTabItem.svelte @@ -148,18 +148,27 @@ {$t('Duplicate View')} - exportGrid('csv')} class="text-xs font-normal inline-flex items-center gap-2"> - - {$t('Export CSV')} - - exportGrid('excel')} class="text-xs font-normal inline-flex items-center gap-2"> - - {$t('Export Excel')} - - exportGrid('json')} class="text-xs font-normal inline-flex items-center gap-2"> - - {$t('Export Json')} + + + + {$t('Export')} + + + + exportGrid('csv')} class="text-xs font-normal inline-flex items-center gap-2"> + + {$t('Export CSV')} + + exportGrid('excel')} class="text-xs font-normal inline-flex items-center gap-2"> + + {$t('Export Excel')} + + exportGrid('json')} class="text-xs font-normal inline-flex items-center gap-2"> + + {$t('Export Json')} + + { webhookListDrawer.open() diff --git a/apps/frontend/src/lib/table/TableViewToast.svelte b/apps/frontend/src/lib/table/TableViewToast.svelte index f985b7ba5..69af0f1a3 100644 --- a/apps/frontend/src/lib/table/TableViewToast.svelte +++ b/apps/frontend/src/lib/table/TableViewToast.svelte @@ -49,7 +49,7 @@ params={{ delay: 100, duration: 200, easing: quintOut }} >
-

{@html $t('Selected N Records', { n: $selectedCount })}

+

{@html $t('Selected N Records', { n: $selectedCount })}

meta + b
diff --git a/apps/frontend/src/lib/table/ToggleDisplayType.svelte b/apps/frontend/src/lib/table/ToggleDisplayType.svelte index 7ecefa021..e5e62023b 100644 --- a/apps/frontend/src/lib/table/ToggleDisplayType.svelte +++ b/apps/frontend/src/lib/table/ToggleDisplayType.svelte @@ -10,7 +10,7 @@ const view = getView() const type = $view.displayType - const displayTypes = ['grid', 'kanban', 'calendar', 'tree', 'dashboard'] as const + const displayTypes = ['grid', 'kanban', 'calendar', 'tree', 'dashboard', 'gantt'] as const const switchDisplayType = trpc().table.view.switchDisplayType.mutation({ async onSuccess(data, variables, context) { @@ -38,7 +38,7 @@ custom >
diff --git a/apps/frontend/src/lib/table/UpdateTable.svelte b/apps/frontend/src/lib/table/UpdateTable.svelte index 2de65e07d..7196f284c 100644 --- a/apps/frontend/src/lib/table/UpdateTable.svelte +++ b/apps/frontend/src/lib/table/UpdateTable.svelte @@ -102,7 +102,7 @@ type="text" label="name" bind:value={$form.name} - aria-invalid={$errors.name ? 'true' : undefined} + data-invalid={$errors.name} required {...$constraints.name} /> diff --git a/apps/frontend/src/lib/table/ViewToolbar.svelte b/apps/frontend/src/lib/table/ViewToolbar.svelte index 72d023058..44df7b5b5 100644 --- a/apps/frontend/src/lib/table/ViewToolbar.svelte +++ b/apps/frontend/src/lib/table/ViewToolbar.svelte @@ -7,6 +7,7 @@ import CalendarToolbar from './CalendarToolbar.svelte' import DashboardToolbar from './DashboardToolbar.svelte' import TreeToolbar from './TreeToolbar.svelte' + import GanttToolbar from '$lib/gantt/GanttToolbar.svelte' const view = getView() $: type = $view.displayType @@ -14,6 +15,7 @@ const map: Partial> = { grid: GridToolbar, kanban: KanbanToolbar, + gantt: GanttToolbar, calendar: CalendarToolbar, dashboard: DashboardToolbar, tree: TreeToolbar, diff --git a/apps/frontend/src/lib/tree/TreeConfig.svelte b/apps/frontend/src/lib/tree/TreeConfig.svelte index 6b1311d2a..1ca12743b 100644 --- a/apps/frontend/src/lib/tree/TreeConfig.svelte +++ b/apps/frontend/src/lib/tree/TreeConfig.svelte @@ -7,6 +7,7 @@ import { configViewModal, createFieldInitial, createFieldModal } from '$lib/store/modal' import { t } from '$lib/i18n' import { invalidate } from '$app/navigation' + import { FieldId } from '@undb/core' const table = getTable() const view = getView() @@ -42,9 +43,11 @@
{#if treeFields.length} -
- {$t('or', { ns: 'common' })} +
+
+ {$t('or', { ns: 'common' })} + +
{/if}
@@ -53,10 +56,18 @@ color="light" class="flex gap-2" on:click={() => { + const id = FieldId.createId() $createFieldInitial = { + id, type: 'tree', } - createFieldModal.open() + createFieldModal.open(async () => { + $setField.mutate({ + tableId: $table.id.value, + viewId: $view.id.value, + field: id, + }) + }) }} > diff --git a/apps/frontend/src/lib/view/KanbanConfig.svelte b/apps/frontend/src/lib/view/KanbanConfig.svelte index 130b068cd..788364ee6 100644 --- a/apps/frontend/src/lib/view/KanbanConfig.svelte +++ b/apps/frontend/src/lib/view/KanbanConfig.svelte @@ -7,6 +7,7 @@ import { configViewModal, createFieldInitial, createFieldModal } from '$lib/store/modal' import { t } from '$lib/i18n' import { invalidate } from '$app/navigation' + import { FieldId } from '@undb/core' const table = getTable() const view = getView() @@ -41,9 +42,11 @@
{#if kanbanFields.length} -
- {$t('or', { ns: 'common' })} +
+
+ {$t('or', { ns: 'common' })} + +
{/if}
@@ -52,10 +55,18 @@ color="light" class="flex gap-2" on:click={() => { + const id = FieldId.createId() $createFieldInitial = { + id, type: 'select', } - createFieldModal.open() + createFieldModal.open(async () => { + $setField.mutate({ + tableId: $table.id.value, + viewId: $view.id.value, + field: id, + }) + }) }} > @@ -68,10 +79,18 @@ color="light" class="flex gap-2" on:click={() => { + const id = FieldId.createId() $createFieldInitial = { + id, type: 'date', } - createFieldModal.open() + createFieldModal.open(async () => { + $setField.mutate({ + tableId: $table.id.value, + viewId: $view.id.value, + field: id, + }) + }) }} > diff --git a/apps/frontend/src/lib/view/ViewIcon.svelte b/apps/frontend/src/lib/view/ViewIcon.svelte index b7990f63a..d44793f6b 100644 --- a/apps/frontend/src/lib/view/ViewIcon.svelte +++ b/apps/frontend/src/lib/view/ViewIcon.svelte @@ -8,6 +8,7 @@ tree: 'hierarchy', grid: 'table-filled', kanban: 'layout-kanban', + gantt: 'timeline', calendar: 'calendar-event', dashboard: 'layout-dashboard', } @@ -16,6 +17,7 @@ tree: 'text-green-500', grid: 'text-sky-500', kanban: 'text-orange-500', + gantt: 'text-fuchsia-500', calendar: 'text-green-500', dashboard: 'text-cyan-500', } diff --git a/apps/frontend/src/lib/view/ViewTypeSelector.svelte b/apps/frontend/src/lib/view/ViewTypeSelector.svelte index 43890aa9a..1152d0faf 100644 --- a/apps/frontend/src/lib/view/ViewTypeSelector.svelte +++ b/apps/frontend/src/lib/view/ViewTypeSelector.svelte @@ -9,6 +9,7 @@ const items = [ { value: 'grid', label: 'Grid' }, { value: 'kanban', label: 'Kanban' }, + { value: 'gantt', label: 'Gantt' }, { value: 'calendar', label: 'Calendar' }, { value: 'tree', label: 'Tree' }, { value: 'dashboard', label: 'Dashboard' }, diff --git a/apps/frontend/src/routes/(authed)/+layout.svelte b/apps/frontend/src/routes/(authed)/+layout.svelte index 57e3249f7..a0b68c1c3 100644 --- a/apps/frontend/src/routes/(authed)/+layout.svelte +++ b/apps/frontend/src/routes/(authed)/+layout.svelte @@ -18,7 +18,8 @@ import { copyText } from 'svelte-copy' import Cookies from 'js-cookie' import { slide } from 'svelte/transition' - import { changeDarkMode, sidebarCollapsed, theme } from '$lib/store/ui' + import { changeThemeMode, sidebarCollapsed, theme } from '$lib/store/ui' + import { DARK_THEME, LIGHT_THEME } from '$lib/store/ui.type' $: navigation = [ { name: $t('Tables', { ns: 'common' }), href: '/', icon: 'table', current: $page.url.pathname === '/' }, @@ -204,7 +205,7 @@
meta + b @@ -217,8 +218,8 @@ href={item.href} class={cx( item.current - ? 'bg-gray-50 text-indigo-600 dark:text-blue-600 dark:bg-gray-700' - : 'text-gray-700 hover:text-indigo-600 hover:bg-gray-50 dark:text-white dark:hover:bg-gray-700', + ? 'bg-gray-50 text-indigo-600 dark:text-gray-50 dark:bg-gray-700' + : 'text-gray-700 hover:text-indigo-600 hover:bg-gray-50 dark:text-gray-300 dark:hover:bg-gray-700', 'group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold', )} > @@ -226,8 +227,8 @@ - {$t('Setting', { ns: 'auth' })} + {$t('Settings', { ns: 'auth' })} @@ -355,11 +356,16 @@ { - changeDarkMode('dark') + $theme = $theme === DARK_THEME ? LIGHT_THEME : DARK_THEME + changeThemeMode($theme) }} > - {$t('light/dark', { ns: 'auth' })} + {#if $theme === DARK_THEME} + {$t('Light Mode', { ns: 'auth' })} + {:else} + {$t('Dark Mode', { ns: 'auth' })} + {/if} meta + b
diff --git a/apps/frontend/src/routes/(authed)/+page.ts b/apps/frontend/src/routes/(authed)/+page.ts index 4bea53de4..cee4e06ba 100644 --- a/apps/frontend/src/routes/(authed)/+page.ts +++ b/apps/frontend/src/routes/(authed)/+page.ts @@ -7,6 +7,6 @@ export const prerender = false export const load: PageLoad = async () => { return { - createTable: superValidate({ name: '', schema: [] }, createTableInput), + createTable: superValidate({ name: '', schema: [] }, createTableInput, { id: 'createTable' }), } } diff --git a/apps/frontend/src/routes/(authed)/t/[tableId]/[[viewId]]/+page.ts b/apps/frontend/src/routes/(authed)/t/[tableId]/[[viewId]]/+page.ts index 1d7a960d2..60505085c 100644 --- a/apps/frontend/src/routes/(authed)/t/[tableId]/[[viewId]]/+page.ts +++ b/apps/frontend/src/routes/(authed)/t/[tableId]/[[viewId]]/+page.ts @@ -40,9 +40,13 @@ export const load: PageLoad = async (event) => { schema: fields.map((field) => field.json as any), }, createUpdateTableSchema(coreTable), + { + id: 'updateTable', + }, ), - createRecord: superValidate({}, createMutateRecordValuesSchema(fields), { errors: false }), + createRecord: superValidate({}, createMutateRecordValuesSchema(fields), { id: 'createRecord', errors: false }), updateRecord: superValidate({}, createMutateRecordValuesSchema(fields, coreRecord?.valuesJSON), { + id: 'updateRecord', errors: false, }), createField: superValidate( @@ -50,17 +54,21 @@ export const load: PageLoad = async (event) => { z.object<{ [key: string]: any }>({ type: z.string(), }), + { id: 'createField' }, ), updateField: superValidate( { type: 'string', }, z.object<{ [key: string]: any }>({ type: z.string() }), + { + id: 'updateField', + }, ), - createOption: superValidate({}, createOptionSchema), - updateOption: superValidate({}, updateOptionSchema), - createView: superValidate({}, createViewSchema, { errors: false }), - createWebhook: superValidate({}, createWebhookSchema), - updateWebhook: superValidate({}, updateWebhookSchema), + createOption: superValidate({}, createOptionSchema, { id: 'createOption' }), + updateOption: superValidate({}, updateOptionSchema, { id: 'createOption' }), + createView: superValidate({}, createViewSchema, { id: 'createView', errors: false }), + createWebhook: superValidate({}, createWebhookSchema, { id: 'createWebhook' }), + updateWebhook: superValidate({}, updateWebhookSchema, { id: 'updateWebhook' }), } } diff --git a/apps/frontend/src/routes/+layout.svelte b/apps/frontend/src/routes/+layout.svelte index 19338ed17..d24c2aebe 100644 --- a/apps/frontend/src/routes/+layout.svelte +++ b/apps/frontend/src/routes/+layout.svelte @@ -1,4 +1,4 @@ - @@ -46,5 +50,3 @@ - - diff --git a/data/data.sql b/data/data.sql index 1d45fc0b3..5380440f7 100644 --- a/data/data.sql +++ b/data/data.sql @@ -1,14 +1,11 @@ -PRAGMA foreign_keys = OFF; +PRAGMA foreign_keys=OFF; BEGIN TRANSACTION; CREATE TABLE `mikro_orm_migrations` ( `id` integer not null primary key autoincrement, `name` varchar(255), `executed_at` datetime default CURRENT_TIMESTAMP ); -INSERT INTO mikro_orm_migrations -VALUES(1, 'initial', '2023-05-20 09:46:34'); -INSERT INTO mikro_orm_migrations -VALUES(2, 'share', '2023-05-20 09:46:34'); +INSERT INTO mikro_orm_migrations VALUES(1,'initial','2023-05-20 09:46:34'); CREATE TABLE `undb_table` ( `id` text not null, `created_at` datetime not null, @@ -19,106 +16,16 @@ CREATE TABLE `undb_table` ( `views_order` text null, primary key (`id`) ); -INSERT INTO undb_table -VALUES( - 'tbl4undb0lh', - 1684577267430, - 1685212920300, - NULL, - 'Deal Tracker', - '1f44d', - 'viwnxi5l3qi,viw64ia4fxz,viwmc5m5646' - ); -INSERT INTO undb_table -VALUES( - 'tblramxgp7z', - 1684577324093, - 1684577324093, - NULL, - 'Contacts', - '1f44d', - 'viw1f88x075' - ); -INSERT INTO undb_table -VALUES( - 'tblwqjcq0x8', - 1684597096588, - 1684597096588, - NULL, - 'Company', - '1f44d', - 'viw70p8od12' - ); -INSERT INTO undb_table -VALUES( - 'tbl4ezqb49a', - 1684599288325, - 1684599288325, - NULL, - 'Title', - '1f44d', - 'viw9p12yoag' - ); -INSERT INTO undb_table -VALUES( - 'tbl2za35hbg', - 1684655636180, - 1684655636180, - NULL, - 'Employee onboarding', - '1f44d', - 'viw3qge14qx' - ); -INSERT INTO undb_table -VALUES( - 'tblruubokdc', - 1684655754437, - 1685265649318, - NULL, - 'Employees', - '1f44d', - 'viw2j74tv49,viwbo3rzlbe' - ); -INSERT INTO undb_table -VALUES( - 'tblk4h9pgm7', - 1685172790220, - 1685213176904, - NULL, - 'Project details', - '', - 'viws2429fm1,viw1hmtgok8,viw2oflfayp,viw1afphzlj,viwv5pxkvis,viwufxtr4ao' - ); -INSERT INTO undb_table -VALUES( - 'tblpgqt9f8e', - 1685174348986, - 1685213158771, - NULL, - 'Subcontractors', - '', - 'viwgtqmkuso,viwimtmwzd0,viwbcscykkd,viwab1ycczl,viwe6cxqgup' - ); -INSERT INTO undb_table -VALUES( - 'tblfx77neny', - 1685174750727, - 1685213067198, - NULL, - 'Project overview', - '', - 'viwdhyehe16,viwoxmuxqte' - ); -INSERT INTO undb_table -VALUES( - 'tblq36e537c', - 1685178619601, - 1685212845932, - 1685212860180, - 'test', - '', - 'viwdec4oi8c' - ); +INSERT INTO undb_table VALUES('tbl4undb0lh',1684577267430,1685212920300,NULL,'Deal Tracker','1f44d','viwnxi5l3qi,viw64ia4fxz,viwmc5m5646'); +INSERT INTO undb_table VALUES('tblramxgp7z',1684577324093,1684577324093,NULL,'Contacts','1f44d','viw1f88x075'); +INSERT INTO undb_table VALUES('tblwqjcq0x8',1684597096588,1684597096588,NULL,'Company','1f44d','viw70p8od12'); +INSERT INTO undb_table VALUES('tbl4ezqb49a',1684599288325,1684599288325,NULL,'Title','1f44d','viw9p12yoag'); +INSERT INTO undb_table VALUES('tbl2za35hbg',1684655636180,1684655636180,NULL,'Employee onboarding','1f44d','viw3qge14qx'); +INSERT INTO undb_table VALUES('tblruubokdc',1684655754437,1685265649318,NULL,'Employees','1f44d','viw2j74tv49,viwbo3rzlbe'); +INSERT INTO undb_table VALUES('tblk4h9pgm7',1685172790220,1685213176904,NULL,'Project details','','viws2429fm1,viw1hmtgok8,viw2oflfayp,viw1afphzlj,viwv5pxkvis,viwufxtr4ao'); +INSERT INTO undb_table VALUES('tblpgqt9f8e',1685174348986,1685213158771,NULL,'Subcontractors','','viwgtqmkuso,viwimtmwzd0,viwbcscykkd,viwab1ycczl,viwe6cxqgup'); +INSERT INTO undb_table VALUES('tblfx77neny',1685174750727,1685213067198,NULL,'Project overview','','viwdhyehe16,viwoxmuxqte'); +INSERT INTO undb_table VALUES('tblq36e537c',1685178619601,1685212845932,1685212860180,'test','','viwdec4oi8c'); CREATE TABLE `undb_field` ( `id` text not null, `created_at` datetime not null, @@ -165,4675 +72,167 @@ CREATE TABLE `undb_field` ( set null on update cascade, primary key (`id`) ); -INSERT INTO undb_field -VALUES( - 'fldopx87187', - 1684577267430, - 1684577267466, - NULL, - 'tbl4undb0lh', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld7m4e9dbz', - 1684577267430, - 1684577267466, - NULL, - 'tbl4undb0lh', - 'Deal', - 'deal name ', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld4sf2mdr8', - 1684577267430, - 1684577267466, - NULL, - 'tbl4undb0lh', - 'Stage', - NULL, - 0, - 1, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld7vd9ir75', - 1684577267431, - 1684577267466, - NULL, - 'tbl4undb0lh', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldx5w2pcft', - 1684577267431, - 1684577267466, - NULL, - 'tbl4undb0lh', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld8ql20jlm', - 1684577267431, - 1684577267466, - NULL, - 'tbl4undb0lh', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldxq7kp4eu', - 1684577267431, - 1684577267466, - NULL, - 'tbl4undb0lh', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldtefbcm18', - 1684577290100, - 1684577290126, - NULL, - 'tbl4undb0lh', - 'Owner', - NULL, - 0, - 0, - 0, - 'collaborator', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'flderd3a3rc', - 1684577324093, - 1684577324122, - NULL, - 'tblramxgp7z', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldel2i4v7v', - 1684577324094, - 1684577324122, - NULL, - 'tblramxgp7z', - 'Contact', - 'contact name', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldconkpc7g', - 1684577324094, - 1684577324122, - NULL, - 'tblramxgp7z', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld7smzf5np', - 1684577324094, - 1684577324122, - NULL, - 'tblramxgp7z', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldelspnzaq', - 1684577324094, - 1684577324122, - NULL, - 'tblramxgp7z', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldpkr0phjz', - 1684577324094, - 1684577324122, - NULL, - 'tblramxgp7z', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld5vld4clt', - 1684577348149, - 1684577348170, - NULL, - 'tbl4undb0lh', - 'Contacts', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tblramxgp7z', - 'fldmz9qd18u', - 1, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldmz9qd18u', - 1684577348168, - 1684935091266, - NULL, - 'tblramxgp7z', - 'Deal Tracker', - '', - 0, - 0, - 0, - 'reference', - NULL, - 'tbl4undb0lh', - 'fld5vld4clt', - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldghc0rw09', - 1684580952905, - 1684580952931, - NULL, - 'tbl4undb0lh', - 'Priority', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldjyupbqlm', - 1684581148218, - 1684581148242, - NULL, - 'tbl4undb0lh', - 'Deal Length', - NULL, - 0, - 0, - 0, - 'date-range', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld0f8xaf8q', - 1684581180852, - 1684934970336, - 1684934970335, - 'tbl4undb0lh', - 'Deal Value', - '$', - 0, - 0, - 0, - 'number', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldqpn61v8h', - 1684581231068, - 1684581231093, - NULL, - 'tbl4undb0lh', - 'Close Date', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld2u4gkap9', - 1684581247030, - 1684581247050, - NULL, - 'tbl4undb0lh', - 'Deal Creation Date', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldcamelfi7', - 1684581555250, - 1684581555278, - NULL, - 'tblramxgp7z', - 'Type', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldqojjbrau', - 1684596981406, - 1684596981427, - NULL, - 'tblramxgp7z', - 'Email', - NULL, - 0, - 0, - 0, - 'email', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldovc5s8pe', - 1684596988567, - 1684597112361, - 1684597112360, - 'tblramxgp7z', - 'Company', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldpq4mvj6c', - 1684597040388, - 1684597040413, - NULL, - 'tblramxgp7z', - 'Phone', - 'phone number', - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldzfu3x1ft', - 1684597096588, - 1684597096613, - NULL, - 'tblwqjcq0x8', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldo4mvc3bq', - 1684597096588, - 1684597096613, - NULL, - 'tblwqjcq0x8', - 'Company', - 'company name', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldozbddvfk', - 1684597096588, - 1684597096613, - NULL, - 'tblwqjcq0x8', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldapuzxp1y', - 1684597096588, - 1684597096613, - NULL, - 'tblwqjcq0x8', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldurfpiosy', - 1684597096588, - 1684597096613, - NULL, - 'tblwqjcq0x8', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld2mh42tvf', - 1684597096588, - 1684597096613, - NULL, - 'tblwqjcq0x8', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldrlmpebtz', - 1684597104042, - 1684599262104, - 1684599262103, - 'tblwqjcq0x8', - 'Title', - '', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldtgvzjaoj', - 1684597172260, - 1684597172278, - NULL, - 'tblramxgp7z', - 'Company', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tblwqjcq0x8', - 'fldrjp6v8xl', - 1, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldrjp6v8xl', - 1684597172276, - 1684597172276, - NULL, - 'tblwqjcq0x8', - 'Contacts', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tblramxgp7z', - 'fldtgvzjaoj', - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldn8qkrzwi', - 1684597224553, - 1684599359046, - 1684599359046, - 'tblramxgp7z', - 'Title', - NULL, - 0, - 0, - 0, - 'lookup', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldtgvzjaoj', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldgbowxfbc', - 1684597247673, - 1684597247694, - NULL, - 'tblramxgp7z', - 'Comments', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld6pd0v553', - 1684599118649, - 1684599200681, - 1684599200680, - 'tblwqjcq0x8', - 'Title Name', - NULL, - 0, - 0, - 0, - 'tree', - NULL, - NULL, - NULL, - NULL, - 'fld5kzdse27', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld5kzdse27', - 1684599118651, - 1684599204842, - 1684599204842, - 'tblwqjcq0x8', - 'Company Name', - '', - 0, - 0, - 0, - 'parent', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fld6pd0v553', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldnpyc4w0l', - 1684599288325, - 1684599288343, - NULL, - 'tbl4ezqb49a', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldvpb5tbbc', - 1684599288325, - 1684599288343, - NULL, - 'tbl4ezqb49a', - 'Title', - 'Title Name', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldyaf9zrt8', - 1684599288325, - 1684599288343, - NULL, - 'tbl4ezqb49a', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld29n86hi3', - 1684599288325, - 1684599288343, - NULL, - 'tbl4ezqb49a', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldka6qo796', - 1684599288325, - 1684599288343, - NULL, - 'tbl4ezqb49a', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldtn1k1f67', - 1684599288325, - 1684599288343, - NULL, - 'tbl4ezqb49a', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldlosp8skm', - 1684599347668, - 1684599347668, - NULL, - 'tblwqjcq0x8', - 'Title', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tbl4ezqb49a', - NULL, - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldamnv8ghw', - 1684599441815, - 1684599500838, - NULL, - 'tblwqjcq0x8', - 'Title Name', - '', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld7a5vkk4j', - 1684599517049, - 1684599517074, - NULL, - 'tblramxgp7z', - 'Title', - NULL, - 0, - 0, - 0, - 'lookup', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldtgvzjaoj', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldo6wz3szd', - 1684655636180, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldskwotpjg', - 1684655636180, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'Employee', - 'employee name', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldr3t33atc', - 1684655636181, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'Status', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldd55dsm2m', - 1684655636181, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'HR responsible', - NULL, - 0, - 0, - 0, - 'collaborator', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldxx0cyu8w', - 1684655636182, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'Email', - NULL, - 0, - 0, - 0, - 'email', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldqjxpupfu', - 1684655636183, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'Phone', - 'phone number', - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld19njyj50', - 1684655636183, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'Position', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld67w65koz', - 1684655636183, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'Department', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld92yn7hcf', - 1684655636183, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldyxr4fgcj', - 1684655636183, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld52ryjekr', - 1684655636183, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldwbr3sb09', - 1684655636183, - 1684655636217, - NULL, - 'tbl2za35hbg', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldh65rro60', - 1684655754437, - 1684655754459, - NULL, - 'tblruubokdc', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldhrrqqlqh', - 1684655754437, - 1684657570979, - NULL, - 'tblruubokdc', - 'Employee', - '', - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld0gmmj29q', - 1684655754437, - 1684657565944, - NULL, - 'tblruubokdc', - 'Title', - '', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldjrqmbjni', - 1684655754437, - 1684655754459, - NULL, - 'tblruubokdc', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldgt1q5u09', - 1684655754437, - 1684655754459, - NULL, - 'tblruubokdc', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld462h34dx', - 1684655754437, - 1684655754459, - NULL, - 'tblruubokdc', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldzpxkf4wc', - 1684655754437, - 1684655754460, - NULL, - 'tblruubokdc', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldfpeufgq3', - 1684657625780, - 1684657625780, - NULL, - 'tbl2za35hbg', - 'Reporting manager', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tblruubokdc', - NULL, - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldui7hrx2t', - 1684657651403, - 1684657651422, - NULL, - 'tbl2za35hbg', - 'Date of joining', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld38j2aoqw', - 1684657728406, - 1684657728431, - NULL, - 'tbl2za35hbg', - 'Physical workplace', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldmjxybwnt', - 1684657850773, - 1684657850796, - NULL, - 'tbl2za35hbg', - 'Software workplace', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldntjvterl', - 1684657896209, - 1684657896229, - NULL, - 'tbl2za35hbg', - 'Send welcome email', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldu3ll00ho', - 1684657920293, - 1684657920317, - NULL, - 'tbl2za35hbg', - 'Company email', - 'company email', - 0, - 0, - 0, - 'email', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldy60tdkfr', - 1684657974107, - 1684657974134, - NULL, - 'tbl2za35hbg', - 'Onboarding meeting with HR', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld4a04leij', - 1684658017413, - 1684658017434, - NULL, - 'tbl2za35hbg', - 'schedule training sessions', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldng2e0uhl', - 1684658032532, - 1684658032552, - NULL, - 'tbl2za35hbg', - 'Responsible to the onboarding', - NULL, - 0, - 0, - 0, - 'collaborator', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldkd8gvemb', - 1684658052725, - 1684658052737, - NULL, - 'tbl2za35hbg', - 'Performance 1st week', - NULL, - 0, - 0, - 0, - 'rating', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 5, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld5pgga2xx', - 1684658067684, - 1684658067702, - NULL, - 'tbl2za35hbg', - 'Performance 1st month', - NULL, - 0, - 0, - 0, - 'rating', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 5, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldvi5kqyg9', - 1684934910259, - 1684935104314, - NULL, - 'tbl4undb0lh', - 'Deal Value', - '', - 0, - 0, - 1, - 'currency', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - '$' - ); -INSERT INTO undb_field -VALUES( - 'fldysr6gonr', - 1684935268661, - 1684935268689, - NULL, - 'tblramxgp7z', - 'Deals value (sum)', - NULL, - 0, - 0, - 0, - 'sum', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldmz9qd18u', - 'fldvi5kqyg9', - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld3wri112p', - 1684937500915, - 1684937500937, - NULL, - 'tblramxgp7z', - 'avg', - NULL, - 0, - 0, - 0, - 'average', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldmz9qd18u', - 'fldvi5kqyg9', - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldqo1swr94', - 1684937537591, - 1684937537613, - NULL, - 'tblramxgp7z', - 'count', - NULL, - 0, - 0, - 0, - 'count', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldmz9qd18u', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld56n18njt', - 1684937765660, - 1684938096229, - 1684938096228, - 'tblwqjcq0x8', - 'Subordinate Title', - NULL, - 0, - 0, - 0, - 'tree', - NULL, - NULL, - NULL, - NULL, - 'fld9jfgs4po', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld9jfgs4po', - 1684937765665, - 1684938100840, - 1684938100840, - 'tblwqjcq0x8', - 'Superior Title', - NULL, - 0, - 0, - 0, - 'parent', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fld56n18njt', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldz1tn18w7', - 1685172790220, - 1685172790265, - NULL, - 'tblk4h9pgm7', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldf5jx5k3p', - 1685172790221, - 1685176143733, - 1685176143732, - 'tblk4h9pgm7', - 'Categories', - 'project categories', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldtq3ctq2v', - 1685172790221, - 1685172790266, - NULL, - 'tblk4h9pgm7', - '创建时间', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldy5jci1it', - 1685172790221, - 1685172790266, - NULL, - 'tblk4h9pgm7', - '创建者', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldbjwrkl4w', - 1685172790221, - 1685172790266, - NULL, - 'tblk4h9pgm7', - '更新时间', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldlad9mr00', - 1685172790221, - 1685172790266, - NULL, - 'tblk4h9pgm7', - '更新者', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld7u72oymt', - 1685174100327, - 1685174291474, - 1685174291473, - 'tblk4h9pgm7', - 'Item', - '', - 0, - 0, - 0, - 'tree', - NULL, - NULL, - NULL, - NULL, - 'fldyldbx3am', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldyldbx3am', - 1685174100330, - 1685174294300, - 1685174294300, - 'tblk4h9pgm7', - 'categories', - NULL, - 0, - 0, - 0, - 'parent', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fld7u72oymt', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldja1i3sed', - 1685174348987, - 1685174349030, - NULL, - 'tblpgqt9f8e', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld5vejsyk6', - 1685174348987, - 1685174349030, - NULL, - 'tblpgqt9f8e', - 'Item', - NULL, - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld8yjkgwax', - 1685174348987, - 1685174349031, - NULL, - 'tblpgqt9f8e', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldp18kok8t', - 1685174348987, - 1685174349031, - NULL, - 'tblpgqt9f8e', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldrl3wtwgi', - 1685174348988, - 1685174349031, - NULL, - 'tblpgqt9f8e', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldjjk7jq88', - 1685174348988, - 1685174349031, - NULL, - 'tblpgqt9f8e', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldrf5tre1y', - 1685174378293, - 1685174378315, - NULL, - 'tblpgqt9f8e', - 'Status', - NULL, - 0, - 0, - 0, - 'bool', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld5dfxirz4', - 1685174428883, - 1685208283981, - NULL, - 'tblpgqt9f8e', - 'Type', - '', - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldin0o52s2', - 1685174447425, - 1685174447444, - NULL, - 'tblpgqt9f8e', - 'Address', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld234mahi3', - 1685174463716, - 1685174463738, - NULL, - 'tblpgqt9f8e', - 'Phone', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldknol0wfv', - 1685174490950, - 1685174490971, - NULL, - 'tblpgqt9f8e', - 'Email', - NULL, - 0, - 0, - 0, - 'email', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'flda93at8lf', - 1685174547333, - 1685174547350, - NULL, - 'tblpgqt9f8e', - 'Subcontractor Log', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy/MM/dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldqetskkmf', - 1685174661292, - 1685176156114, - NULL, - 'tblpgqt9f8e', - 'link to Project details', - '', - 0, - 0, - 0, - 'reference', - NULL, - 'tblk4h9pgm7', - NULL, - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld2z8lm0nq', - 1685174750727, - 1685174750762, - NULL, - 'tblfx77neny', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldi3ctnklu', - 1685174750727, - 1685174825454, - NULL, - 'tblfx77neny', - 'Unit', - '', - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldz6ialch3', - 1685174750727, - 1685174750762, - NULL, - 'tblfx77neny', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldldugufai', - 1685174750727, - 1685174750762, - NULL, - 'tblfx77neny', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld6ipbvk1v', - 1685174750727, - 1685174750762, - NULL, - 'tblfx77neny', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldq4vl65vq', - 1685174750727, - 1685174750762, - NULL, - 'tblfx77neny', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldxgzu2rfm', - 1685174852181, - 1685174852203, - NULL, - 'tblfx77neny', - 'Address', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldxjfi8nvf', - 1685175204765, - 1685175204791, - NULL, - 'tblfx77neny', - 'Project manager', - NULL, - 0, - 0, - 0, - 'collaborator', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldx46wrlru', - 1685175511798, - 1685175511824, - NULL, - 'tblfx77neny', - 'Status', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldisycq2kk', - 1685175632543, - 1685175632564, - NULL, - 'tblfx77neny', - 'Permit', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldf3858jba', - 1685175686282, - 1685175686306, - NULL, - 'tblfx77neny', - 'Foundations', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldzcbm7d6f', - 1685175744383, - 1685175744421, - NULL, - 'tblfx77neny', - 'Drywall', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldfhnwfm1d', - 1685175795608, - 1685175795634, - NULL, - 'tblfx77neny', - 'Trench', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld5tprv6oh', - 1685175846843, - 1685206616994, - NULL, - 'tblfx77neny', - 'Framing', - '', - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld9k1d6632', - 1685175903838, - 1685175903860, - NULL, - 'tblfx77neny', - 'Electrical', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldqt93dh02', - 1685175947059, - 1685175947081, - NULL, - 'tblfx77neny', - 'Roofing', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldicbkx09x', - 1685175995109, - 1685175995137, - NULL, - 'tblfx77neny', - 'QC', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldrwyxeapl', - 1685176018965, - 1685176018986, - NULL, - 'tblfx77neny', - 'Start date', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'flds9gyvh1y', - 1685176060711, - 1685176060734, - NULL, - 'tblk4h9pgm7', - 'Item', - NULL, - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldifd9g29a', - 1685176096590, - 1685176096590, - NULL, - 'tblfx77neny', - 'Connect to "Project details" board', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tblk4h9pgm7', - NULL, - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld1zc9irou', - 1685176183500, - 1685176183523, - NULL, - 'tblk4h9pgm7', - 'Address', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldnktdp6ej', - 1685176415123, - 1685176627939, - NULL, - 'tblk4h9pgm7', - 'Unit main phase', - '', - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'flds4gpji6k', - 1685176431794, - 1685176431813, - NULL, - 'tblk4h9pgm7', - 'Project manager', - NULL, - 0, - 0, - 0, - 'collaborator', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldvvjbi1nv', - 1685176480392, - 1685176480423, - NULL, - 'tblk4h9pgm7', - 'Permits', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld7m1scjcc', - 1685176513442, - 1685176513458, - NULL, - 'tblk4h9pgm7', - 'Expected permit date', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldzpcp0ouz', - 1685176699721, - 1685176731041, - NULL, - 'tblk4h9pgm7', - 'Foundation', - '', - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld7iz2x2bs', - 1685176754725, - 1685176754745, - NULL, - 'tblk4h9pgm7', - 'Foundation deadline', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld749c7m6l', - 1685176806350, - 1685176806377, - NULL, - 'tblk4h9pgm7', - 'Framing', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld22ldcbag', - 1685176828079, - 1685176828097, - NULL, - 'tblk4h9pgm7', - 'Framing deadline', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld8uonlrvg', - 1685176882333, - 1685176882354, - NULL, - 'tblk4h9pgm7', - 'Roof & siding', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld6xpgey7o', - 1685176900369, - 1685176900392, - NULL, - 'tblk4h9pgm7', - 'Roof & siding deadline', - NULL, - 0, - 0, - 0, - 'date', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld6r6a1hc9', - 1685176942078, - 1685176942102, - NULL, - 'tblk4h9pgm7', - 'Interior', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld19p1ahm5', - 1685176994753, - 1685176994779, - NULL, - 'tblk4h9pgm7', - 'Exterior paint', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldtdqxqkhr', - 1685177111305, - 1685177111322, - NULL, - 'tblk4h9pgm7', - 'Cabinets', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldzhfhodco', - 1685177439315, - 1685177439315, - NULL, - 'tblk4h9pgm7', - 'Link to Subcontractors', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tblpgqt9f8e', - NULL, - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'flde0medsct', - 1685177533708, - 1685177533729, - NULL, - 'tblk4h9pgm7', - 'Cabinets installation timeline', - NULL, - 0, - 0, - 0, - 'date-range', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld5dje464n', - 1685177553110, - 1685177553138, - NULL, - 'tblk4h9pgm7', - 'QC owner', - NULL, - 0, - 0, - 0, - 'collaborator', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldn3txeox5', - 1685177668674, - 1685177668699, - NULL, - 'tblk4h9pgm7', - 'Quality control status', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldy4xklvtp', - 1685177683298, - 1685177683317, - NULL, - 'tblk4h9pgm7', - 'Project files', - NULL, - 0, - 0, - 0, - 'attachment', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld4h9alzho', - 1685177708015, - 1685177708015, - NULL, - 'tblk4h9pgm7', - 'link to Project overview', - NULL, - 0, - 0, - 0, - 'reference', - NULL, - 'tblfx77neny', - NULL, - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldome9lb5l', - 1685178035767, - 1685212310342, - 1685212310341, - 'tblk4h9pgm7', - 'Item name', - NULL, - 0, - 0, - 0, - 'tree', - NULL, - NULL, - NULL, - NULL, - 'fldc7e9bf2j', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldc7e9bf2j', - 1685178035768, - 1685212314492, - 1685212314491, - 'tblk4h9pgm7', - 'Categories', - NULL, - 0, - 0, - 0, - 'parent', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldome9lb5l', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldw0xhn5du', - 1685178477324, - 1685209414212, - NULL, - 'tblk4h9pgm7', - 'Category', - '', - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldgevznri1', - 1685178619602, - 1685178619656, - NULL, - 'tblq36e537c', - 'id', - NULL, - 1, - 0, - 0, - 'id', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld3nlurfbt', - 1685178619602, - 1685178619656, - NULL, - 'tblq36e537c', - 'Name', - NULL, - 0, - 0, - 1, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldgx3uro1u', - 1685178619602, - 1685178619656, - NULL, - 'tblq36e537c', - 'createdAt', - NULL, - 1, - 0, - 0, - 'created-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldhrtgoei0', - 1685178619602, - 1685178619657, - NULL, - 'tblq36e537c', - 'createdBy', - NULL, - 1, - 0, - 0, - 'created-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'flduskdkw7q', - 1685178619602, - 1685178619657, - NULL, - 'tblq36e537c', - 'updatedAt', - NULL, - 1, - 0, - 0, - 'updated-at', - 'yyyy-MM-dd', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldbti1u8mz', - 1685178619602, - 1685178619657, - NULL, - 'tblq36e537c', - 'updatedBy', - NULL, - 1, - 0, - 0, - 'updated-by', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldft7edqw6', - 1685178638992, - 1685178639017, - NULL, - 'tblq36e537c', - 'child', - NULL, - 0, - 0, - 0, - 'tree', - NULL, - NULL, - NULL, - NULL, - 'fldh0blyv2m', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldh0blyv2m', - 1685178638994, - 1685178639017, - NULL, - 'tblq36e537c', - 'parent', - NULL, - 0, - 0, - 0, - 'parent', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldft7edqw6', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldu4iy99hy', - 1685209380190, - 1685210576970, - 1685210576970, - 'tblpgqt9f8e', - 'category', - NULL, - 0, - 0, - 0, - 'string', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldmv3t03kj', - 1685210615474, - 1685210615499, - NULL, - 'tblpgqt9f8e', - 'Category', - NULL, - 0, - 0, - 0, - 'select', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fld3814mrgg', - 1685213424927, - 1685213424953, - NULL, - 'tblruubokdc', - 'Level', - NULL, - 0, - 0, - 0, - 'number', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldylxmreki', - 1685213472369, - 1685213472390, - NULL, - 'tblruubokdc', - 'Employee ID', - NULL, - 0, - 0, - 0, - 'auto-increment', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldq5ohh7hx', - 1685213559676, - 1685213559696, - NULL, - 'tblruubokdc', - 'subordinate', - NULL, - 0, - 0, - 0, - 'tree', - NULL, - NULL, - NULL, - NULL, - 'fldtnny9yk9', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_field -VALUES( - 'fldtnny9yk9', - 1685213559678, - 1685213559696, - NULL, - 'tblruubokdc', - 'Superior', - NULL, - 0, - 0, - 0, - 'parent', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldq5ohh7hx', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); +INSERT INTO undb_field VALUES('fldopx87187',1684577267430,1684577267466,NULL,'tbl4undb0lh','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld7m4e9dbz',1684577267430,1684577267466,NULL,'tbl4undb0lh','Deal','deal name ',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld4sf2mdr8',1684577267430,1684577267466,NULL,'tbl4undb0lh','Stage',NULL,0,1,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld7vd9ir75',1684577267431,1684577267466,NULL,'tbl4undb0lh','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldx5w2pcft',1684577267431,1684577267466,NULL,'tbl4undb0lh','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld8ql20jlm',1684577267431,1684577267466,NULL,'tbl4undb0lh','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldxq7kp4eu',1684577267431,1684577267466,NULL,'tbl4undb0lh','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldtefbcm18',1684577290100,1684577290126,NULL,'tbl4undb0lh','Owner',NULL,0,0,0,'collaborator',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('flderd3a3rc',1684577324093,1684577324122,NULL,'tblramxgp7z','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldel2i4v7v',1684577324094,1684577324122,NULL,'tblramxgp7z','Contact','contact name',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldconkpc7g',1684577324094,1684577324122,NULL,'tblramxgp7z','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld7smzf5np',1684577324094,1684577324122,NULL,'tblramxgp7z','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldelspnzaq',1684577324094,1684577324122,NULL,'tblramxgp7z','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldpkr0phjz',1684577324094,1684577324122,NULL,'tblramxgp7z','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld5vld4clt',1684577348149,1684577348170,NULL,'tbl4undb0lh','Contacts',NULL,0,0,0,'reference',NULL,'tblramxgp7z','fldmz9qd18u',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldmz9qd18u',1684577348168,1684935091266,NULL,'tblramxgp7z','Deal Tracker','',0,0,0,'reference',NULL,'tbl4undb0lh','fld5vld4clt',0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldghc0rw09',1684580952905,1684580952931,NULL,'tbl4undb0lh','Priority',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldjyupbqlm',1684581148218,1684581148242,NULL,'tbl4undb0lh','Deal Length',NULL,0,0,0,'date-range','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld0f8xaf8q',1684581180852,1684934970336,1684934970335,'tbl4undb0lh','Deal Value','$',0,0,0,'number',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldqpn61v8h',1684581231068,1684581231093,NULL,'tbl4undb0lh','Close Date',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld2u4gkap9',1684581247030,1684581247050,NULL,'tbl4undb0lh','Deal Creation Date',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldcamelfi7',1684581555250,1684581555278,NULL,'tblramxgp7z','Type',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldqojjbrau',1684596981406,1684596981427,NULL,'tblramxgp7z','Email',NULL,0,0,0,'email',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldovc5s8pe',1684596988567,1684597112361,1684597112360,'tblramxgp7z','Company',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldpq4mvj6c',1684597040388,1684597040413,NULL,'tblramxgp7z','Phone','phone number',0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldzfu3x1ft',1684597096588,1684597096613,NULL,'tblwqjcq0x8','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldo4mvc3bq',1684597096588,1684597096613,NULL,'tblwqjcq0x8','Company','company name',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldozbddvfk',1684597096588,1684597096613,NULL,'tblwqjcq0x8','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldapuzxp1y',1684597096588,1684597096613,NULL,'tblwqjcq0x8','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldurfpiosy',1684597096588,1684597096613,NULL,'tblwqjcq0x8','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld2mh42tvf',1684597096588,1684597096613,NULL,'tblwqjcq0x8','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldrlmpebtz',1684597104042,1684599262104,1684599262103,'tblwqjcq0x8','Title','',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldtgvzjaoj',1684597172260,1684597172278,NULL,'tblramxgp7z','Company',NULL,0,0,0,'reference',NULL,'tblwqjcq0x8','fldrjp6v8xl',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldrjp6v8xl',1684597172276,1684597172276,NULL,'tblwqjcq0x8','Contacts',NULL,0,0,0,'reference',NULL,'tblramxgp7z','fldtgvzjaoj',0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldn8qkrzwi',1684597224553,1684599359046,1684599359046,'tblramxgp7z','Title',NULL,0,0,0,'lookup',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldtgvzjaoj',NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldgbowxfbc',1684597247673,1684597247694,NULL,'tblramxgp7z','Comments',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld6pd0v553',1684599118649,1684599200681,1684599200680,'tblwqjcq0x8','Title Name',NULL,0,0,0,'tree',NULL,NULL,NULL,NULL,'fld5kzdse27',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld5kzdse27',1684599118651,1684599204842,1684599204842,'tblwqjcq0x8','Company Name','',0,0,0,'parent',NULL,NULL,NULL,NULL,NULL,'fld6pd0v553',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldnpyc4w0l',1684599288325,1684599288343,NULL,'tbl4ezqb49a','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldvpb5tbbc',1684599288325,1684599288343,NULL,'tbl4ezqb49a','Title','Title Name',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldyaf9zrt8',1684599288325,1684599288343,NULL,'tbl4ezqb49a','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld29n86hi3',1684599288325,1684599288343,NULL,'tbl4ezqb49a','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldka6qo796',1684599288325,1684599288343,NULL,'tbl4ezqb49a','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldtn1k1f67',1684599288325,1684599288343,NULL,'tbl4ezqb49a','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldlosp8skm',1684599347668,1684599347668,NULL,'tblwqjcq0x8','Title',NULL,0,0,0,'reference',NULL,'tbl4ezqb49a',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldamnv8ghw',1684599441815,1684599500838,NULL,'tblwqjcq0x8','Title Name','',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld7a5vkk4j',1684599517049,1684599517074,NULL,'tblramxgp7z','Title',NULL,0,0,0,'lookup',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldtgvzjaoj',NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldo6wz3szd',1684655636180,1684655636217,NULL,'tbl2za35hbg','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldskwotpjg',1684655636180,1684655636217,NULL,'tbl2za35hbg','Employee','employee name',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldr3t33atc',1684655636181,1684655636217,NULL,'tbl2za35hbg','Status',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldd55dsm2m',1684655636181,1684655636217,NULL,'tbl2za35hbg','HR responsible',NULL,0,0,0,'collaborator',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldxx0cyu8w',1684655636182,1684655636217,NULL,'tbl2za35hbg','Email',NULL,0,0,0,'email',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldqjxpupfu',1684655636183,1684655636217,NULL,'tbl2za35hbg','Phone','phone number',0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld19njyj50',1684655636183,1684655636217,NULL,'tbl2za35hbg','Position',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld67w65koz',1684655636183,1684655636217,NULL,'tbl2za35hbg','Department',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld92yn7hcf',1684655636183,1684655636217,NULL,'tbl2za35hbg','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldyxr4fgcj',1684655636183,1684655636217,NULL,'tbl2za35hbg','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld52ryjekr',1684655636183,1684655636217,NULL,'tbl2za35hbg','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldwbr3sb09',1684655636183,1684655636217,NULL,'tbl2za35hbg','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldh65rro60',1684655754437,1684655754459,NULL,'tblruubokdc','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldhrrqqlqh',1684655754437,1684657570979,NULL,'tblruubokdc','Employee','',0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld0gmmj29q',1684655754437,1684657565944,NULL,'tblruubokdc','Title','',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldjrqmbjni',1684655754437,1684655754459,NULL,'tblruubokdc','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldgt1q5u09',1684655754437,1684655754459,NULL,'tblruubokdc','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld462h34dx',1684655754437,1684655754459,NULL,'tblruubokdc','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldzpxkf4wc',1684655754437,1684655754460,NULL,'tblruubokdc','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldfpeufgq3',1684657625780,1684657625780,NULL,'tbl2za35hbg','Reporting manager',NULL,0,0,0,'reference',NULL,'tblruubokdc',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldui7hrx2t',1684657651403,1684657651422,NULL,'tbl2za35hbg','Date of joining',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld38j2aoqw',1684657728406,1684657728431,NULL,'tbl2za35hbg','Physical workplace',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldmjxybwnt',1684657850773,1684657850796,NULL,'tbl2za35hbg','Software workplace',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldntjvterl',1684657896209,1684657896229,NULL,'tbl2za35hbg','Send welcome email',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldu3ll00ho',1684657920293,1684657920317,NULL,'tbl2za35hbg','Company email','company email',0,0,0,'email',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldy60tdkfr',1684657974107,1684657974134,NULL,'tbl2za35hbg','Onboarding meeting with HR',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld4a04leij',1684658017413,1684658017434,NULL,'tbl2za35hbg','schedule training sessions',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldng2e0uhl',1684658032532,1684658032552,NULL,'tbl2za35hbg','Responsible to the onboarding',NULL,0,0,0,'collaborator',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldkd8gvemb',1684658052725,1684658052737,NULL,'tbl2za35hbg','Performance 1st week',NULL,0,0,0,'rating',NULL,NULL,NULL,NULL,NULL,NULL,5,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld5pgga2xx',1684658067684,1684658067702,NULL,'tbl2za35hbg','Performance 1st month',NULL,0,0,0,'rating',NULL,NULL,NULL,NULL,NULL,NULL,5,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldvi5kqyg9',1684934910259,1684935104314,NULL,'tbl4undb0lh','Deal Value','',0,0,1,'currency',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'$'); +INSERT INTO undb_field VALUES('fldysr6gonr',1684935268661,1684935268689,NULL,'tblramxgp7z','Deals value (sum)',NULL,0,0,0,'sum',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldmz9qd18u','fldvi5kqyg9',NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld3wri112p',1684937500915,1684937500937,NULL,'tblramxgp7z','avg',NULL,0,0,0,'average',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldmz9qd18u','fldvi5kqyg9',NULL,NULL); +INSERT INTO undb_field VALUES('fldqo1swr94',1684937537591,1684937537613,NULL,'tblramxgp7z','count',NULL,0,0,0,'count',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldmz9qd18u',NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld56n18njt',1684937765660,1684938096229,1684938096228,'tblwqjcq0x8','Subordinate Title',NULL,0,0,0,'tree',NULL,NULL,NULL,NULL,'fld9jfgs4po',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld9jfgs4po',1684937765665,1684938100840,1684938100840,'tblwqjcq0x8','Superior Title',NULL,0,0,0,'parent',NULL,NULL,NULL,NULL,NULL,'fld56n18njt',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldz1tn18w7',1685172790220,1685172790265,NULL,'tblk4h9pgm7','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldf5jx5k3p',1685172790221,1685176143733,1685176143732,'tblk4h9pgm7','Categories','project categories',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldtq3ctq2v',1685172790221,1685172790266,NULL,'tblk4h9pgm7','创建时间',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldy5jci1it',1685172790221,1685172790266,NULL,'tblk4h9pgm7','创建者',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldbjwrkl4w',1685172790221,1685172790266,NULL,'tblk4h9pgm7','更新时间',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldlad9mr00',1685172790221,1685172790266,NULL,'tblk4h9pgm7','更新者',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld7u72oymt',1685174100327,1685174291474,1685174291473,'tblk4h9pgm7','Item','',0,0,0,'tree',NULL,NULL,NULL,NULL,'fldyldbx3am',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldyldbx3am',1685174100330,1685174294300,1685174294300,'tblk4h9pgm7','categories',NULL,0,0,0,'parent',NULL,NULL,NULL,NULL,NULL,'fld7u72oymt',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldja1i3sed',1685174348987,1685174349030,NULL,'tblpgqt9f8e','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld5vejsyk6',1685174348987,1685174349030,NULL,'tblpgqt9f8e','Item',NULL,0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld8yjkgwax',1685174348987,1685174349031,NULL,'tblpgqt9f8e','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldp18kok8t',1685174348987,1685174349031,NULL,'tblpgqt9f8e','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldrl3wtwgi',1685174348988,1685174349031,NULL,'tblpgqt9f8e','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldjjk7jq88',1685174348988,1685174349031,NULL,'tblpgqt9f8e','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldrf5tre1y',1685174378293,1685174378315,NULL,'tblpgqt9f8e','Status',NULL,0,0,0,'bool',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld5dfxirz4',1685174428883,1685208283981,NULL,'tblpgqt9f8e','Type','',0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldin0o52s2',1685174447425,1685174447444,NULL,'tblpgqt9f8e','Address',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld234mahi3',1685174463716,1685174463738,NULL,'tblpgqt9f8e','Phone',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldknol0wfv',1685174490950,1685174490971,NULL,'tblpgqt9f8e','Email',NULL,0,0,0,'email',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('flda93at8lf',1685174547333,1685174547350,NULL,'tblpgqt9f8e','Subcontractor Log',NULL,0,0,0,'date','yyyy/MM/dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldqetskkmf',1685174661292,1685176156114,NULL,'tblpgqt9f8e','link to Project details','',0,0,0,'reference',NULL,'tblk4h9pgm7',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld2z8lm0nq',1685174750727,1685174750762,NULL,'tblfx77neny','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldi3ctnklu',1685174750727,1685174825454,NULL,'tblfx77neny','Unit','',0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldz6ialch3',1685174750727,1685174750762,NULL,'tblfx77neny','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldldugufai',1685174750727,1685174750762,NULL,'tblfx77neny','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld6ipbvk1v',1685174750727,1685174750762,NULL,'tblfx77neny','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldq4vl65vq',1685174750727,1685174750762,NULL,'tblfx77neny','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldxgzu2rfm',1685174852181,1685174852203,NULL,'tblfx77neny','Address',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldxjfi8nvf',1685175204765,1685175204791,NULL,'tblfx77neny','Project manager',NULL,0,0,0,'collaborator',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldx46wrlru',1685175511798,1685175511824,NULL,'tblfx77neny','Status',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldisycq2kk',1685175632543,1685175632564,NULL,'tblfx77neny','Permit',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldf3858jba',1685175686282,1685175686306,NULL,'tblfx77neny','Foundations',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldzcbm7d6f',1685175744383,1685175744421,NULL,'tblfx77neny','Drywall',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldfhnwfm1d',1685175795608,1685175795634,NULL,'tblfx77neny','Trench',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld5tprv6oh',1685175846843,1685206616994,NULL,'tblfx77neny','Framing','',0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld9k1d6632',1685175903838,1685175903860,NULL,'tblfx77neny','Electrical',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldqt93dh02',1685175947059,1685175947081,NULL,'tblfx77neny','Roofing',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldicbkx09x',1685175995109,1685175995137,NULL,'tblfx77neny','QC',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldrwyxeapl',1685176018965,1685176018986,NULL,'tblfx77neny','Start date',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('flds9gyvh1y',1685176060711,1685176060734,NULL,'tblk4h9pgm7','Item',NULL,0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldifd9g29a',1685176096590,1685176096590,NULL,'tblfx77neny','Connect to "Project details" board',NULL,0,0,0,'reference',NULL,'tblk4h9pgm7',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld1zc9irou',1685176183500,1685176183523,NULL,'tblk4h9pgm7','Address',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldnktdp6ej',1685176415123,1685176627939,NULL,'tblk4h9pgm7','Unit main phase','',0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('flds4gpji6k',1685176431794,1685176431813,NULL,'tblk4h9pgm7','Project manager',NULL,0,0,0,'collaborator',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldvvjbi1nv',1685176480392,1685176480423,NULL,'tblk4h9pgm7','Permits',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld7m1scjcc',1685176513442,1685176513458,NULL,'tblk4h9pgm7','Expected permit date',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldzpcp0ouz',1685176699721,1685176731041,NULL,'tblk4h9pgm7','Foundation','',0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld7iz2x2bs',1685176754725,1685176754745,NULL,'tblk4h9pgm7','Foundation deadline',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld749c7m6l',1685176806350,1685176806377,NULL,'tblk4h9pgm7','Framing',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld22ldcbag',1685176828079,1685176828097,NULL,'tblk4h9pgm7','Framing deadline',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld8uonlrvg',1685176882333,1685176882354,NULL,'tblk4h9pgm7','Roof & siding',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld6xpgey7o',1685176900369,1685176900392,NULL,'tblk4h9pgm7','Roof & siding deadline',NULL,0,0,0,'date','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld6r6a1hc9',1685176942078,1685176942102,NULL,'tblk4h9pgm7','Interior',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld19p1ahm5',1685176994753,1685176994779,NULL,'tblk4h9pgm7','Exterior paint',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldtdqxqkhr',1685177111305,1685177111322,NULL,'tblk4h9pgm7','Cabinets',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldzhfhodco',1685177439315,1685177439315,NULL,'tblk4h9pgm7','Link to Subcontractors',NULL,0,0,0,'reference',NULL,'tblpgqt9f8e',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('flde0medsct',1685177533708,1685177533729,NULL,'tblk4h9pgm7','Cabinets installation timeline',NULL,0,0,0,'date-range','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld5dje464n',1685177553110,1685177553138,NULL,'tblk4h9pgm7','QC owner',NULL,0,0,0,'collaborator',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldn3txeox5',1685177668674,1685177668699,NULL,'tblk4h9pgm7','Quality control status',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldy4xklvtp',1685177683298,1685177683317,NULL,'tblk4h9pgm7','Project files',NULL,0,0,0,'attachment',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld4h9alzho',1685177708015,1685177708015,NULL,'tblk4h9pgm7','link to Project overview',NULL,0,0,0,'reference',NULL,'tblfx77neny',NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldome9lb5l',1685178035767,1685212310342,1685212310341,'tblk4h9pgm7','Item name',NULL,0,0,0,'tree',NULL,NULL,NULL,NULL,'fldc7e9bf2j',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldc7e9bf2j',1685178035768,1685212314492,1685212314491,'tblk4h9pgm7','Categories',NULL,0,0,0,'parent',NULL,NULL,NULL,NULL,NULL,'fldome9lb5l',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldw0xhn5du',1685178477324,1685209414212,NULL,'tblk4h9pgm7','Category','',0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldgevznri1',1685178619602,1685178619656,NULL,'tblq36e537c','id',NULL,1,0,0,'id',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld3nlurfbt',1685178619602,1685178619656,NULL,'tblq36e537c','Name',NULL,0,0,1,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldgx3uro1u',1685178619602,1685178619656,NULL,'tblq36e537c','createdAt',NULL,1,0,0,'created-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldhrtgoei0',1685178619602,1685178619657,NULL,'tblq36e537c','createdBy',NULL,1,0,0,'created-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('flduskdkw7q',1685178619602,1685178619657,NULL,'tblq36e537c','updatedAt',NULL,1,0,0,'updated-at','yyyy-MM-dd',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldbti1u8mz',1685178619602,1685178619657,NULL,'tblq36e537c','updatedBy',NULL,1,0,0,'updated-by',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldft7edqw6',1685178638992,1685178639017,NULL,'tblq36e537c','child',NULL,0,0,0,'tree',NULL,NULL,NULL,NULL,'fldh0blyv2m',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldh0blyv2m',1685178638994,1685178639017,NULL,'tblq36e537c','parent',NULL,0,0,0,'parent',NULL,NULL,NULL,NULL,NULL,'fldft7edqw6',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldu4iy99hy',1685209380190,1685210576970,1685210576970,'tblpgqt9f8e','category',NULL,0,0,0,'string',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldmv3t03kj',1685210615474,1685210615499,NULL,'tblpgqt9f8e','Category',NULL,0,0,0,'select',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fld3814mrgg',1685213424927,1685213424953,NULL,'tblruubokdc','Level',NULL,0,0,0,'number',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldylxmreki',1685213472369,1685213472390,NULL,'tblruubokdc','Employee ID',NULL,0,0,0,'auto-increment',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldq5ohh7hx',1685213559676,1685213559696,NULL,'tblruubokdc','subordinate',NULL,0,0,0,'tree',NULL,NULL,NULL,NULL,'fldtnny9yk9',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO undb_field VALUES('fldtnny9yk9',1685213559678,1685213559696,NULL,'tblruubokdc','Superior',NULL,0,0,0,'parent',NULL,NULL,NULL,NULL,NULL,'fldq5ohh7hx',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); CREATE TABLE `undb_option` ( `key` text not null, `created_at` datetime not null, @@ -4846,1788 +245,168 @@ CREATE TABLE `undb_option` ( constraint `undb_option_field_id_foreign` foreign key(`field_id`) references `undb_field`(`id`) on delete cascade on update cascade, primary key (`key`) ); -INSERT INTO undb_option -VALUES( - 'optuo8m1', - 1684577267430, - 1684577267430, - NULL, - 'fld4sf2mdr8', - 'New', - 'gray', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optapz93', - 1684577267430, - 1684577267430, - NULL, - 'fld4sf2mdr8', - 'Discovery', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opteh974', - 1684577267430, - 1684577267430, - NULL, - 'fld4sf2mdr8', - 'Proposal', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opts4t4w', - 1684577267430, - 1684577267430, - NULL, - 'fld4sf2mdr8', - 'Negotiation', - 'violet', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optdczmv', - 1684577267430, - 1684577267430, - NULL, - 'fld4sf2mdr8', - 'Won', - 'lime', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optygwq0', - 1684577267430, - 1684577267430, - NULL, - 'fld4sf2mdr8', - 'Lost', - 'red', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optua38g', - 1684580952905, - 1684580952905, - NULL, - 'fldghc0rw09', - 'Hight', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opty4o0z', - 1684580952905, - 1684580952905, - NULL, - 'fldghc0rw09', - 'Medium', - 'yellow', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt68d8z', - 1684580952905, - 1684580952905, - NULL, - 'fldghc0rw09', - 'Low', - 'green', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt88amk', - 1684581555250, - 1684581555250, - NULL, - 'fldcamelfi7', - 'Customer', - 'indigo', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt0ucwc', - 1684581555250, - 1684581555250, - NULL, - 'fldcamelfi7', - 'Qualified Lead', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opthjypi', - 1684581555250, - 1684581555250, - NULL, - 'fldcamelfi7', - 'Partner', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optqutxq', - 1684581555250, - 1684581555250, - NULL, - 'fldcamelfi7', - 'Vendor', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optsgc8w', - 1684655636181, - 1684655636181, - NULL, - 'fldr3t33atc', - 'Pre Arrival', - 'neutral', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt8ef1v', - 1684655636181, - 1684655636181, - NULL, - 'fldr3t33atc', - 'First Day', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optjsdp6', - 1684655636181, - 1684655636181, - NULL, - 'fldr3t33atc', - 'First Week', - 'violet', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optgin1z', - 1684655636181, - 1684655636181, - NULL, - 'fldr3t33atc', - 'First Month', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optlottl', - 1684655636181, - 1684655636181, - NULL, - 'fldr3t33atc', - 'Onboarded', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optpg4ya', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Design', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optjehd9', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'IT', - 'yellow', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optk8vx1', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Security', - 'fuchsia', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opts4ao9', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Customer Support', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt8h6fl', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Marketing', - 'red', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optz0o9e', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'HR', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt0g9hh', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Partners', - 'violet', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optake1d', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'R&D', - 'sky', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optrhqo9', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Sales', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opth45w2', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Operation', - 'pink', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt44dfp', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Finance', - 'green', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optuieaz', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - 'Mobile', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optmelkt', - 1684655636183, - 1684655636183, - NULL, - 'fld67w65koz', - ' ', - 'neutral', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4lu2m', - 1684657728406, - 1684657728406, - NULL, - 'fld38j2aoqw', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optks9w7', - 1684657728406, - 1684657728406, - NULL, - 'fld38j2aoqw', - 'Working on it', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optcarg3', - 1684657728406, - 1684657728406, - NULL, - 'fld38j2aoqw', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opttmurc', - 1684657728406, - 1684657728406, - NULL, - 'fld38j2aoqw', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optlhx0u', - 1684657850773, - 1684657850773, - NULL, - 'fldmjxybwnt', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4ra5l', - 1684657850773, - 1684657850773, - NULL, - 'fldmjxybwnt', - 'Working on it', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4la7z', - 1684657850773, - 1684657850773, - NULL, - 'fldmjxybwnt', - 'stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optqqamc', - 1684657850773, - 1684657850773, - NULL, - 'fldmjxybwnt', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt0cxih', - 1684657896209, - 1684657896209, - NULL, - 'fldntjvterl', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt6moby', - 1684657896209, - 1684657896209, - NULL, - 'fldntjvterl', - 'Working on it', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optrxxd8', - 1684657896209, - 1684657896209, - NULL, - 'fldntjvterl', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt27124', - 1684657896209, - 1684657896209, - NULL, - 'fldntjvterl', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optap9r0', - 1684657974107, - 1684657974107, - NULL, - 'fldy60tdkfr', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optz8twl', - 1684657974107, - 1684657974107, - NULL, - 'fldy60tdkfr', - 'Working on it', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optr48gc', - 1684657974107, - 1684657974107, - NULL, - 'fldy60tdkfr', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optybpi2', - 1684657974107, - 1684657974107, - NULL, - 'fldy60tdkfr', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optuqbtr', - 1684658017413, - 1684658017413, - NULL, - 'fld4a04leij', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optzq9lr', - 1684658017413, - 1684658017413, - NULL, - 'fld4a04leij', - 'Working on it', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optukskn', - 1684658017413, - 1684658017413, - NULL, - 'fld4a04leij', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optsij84', - 1684658017413, - 1684658017413, - NULL, - 'fld4a04leij', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optj07q2', - 1685174428883, - 1685208283981, - NULL, - 'fld5dfxirz4', - 'Floor', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optomi94', - 1685174428883, - 1685208283981, - NULL, - 'fld5dfxirz4', - 'Wood', - 'sky', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optzeb02', - 1685174428883, - 1685208283981, - NULL, - 'fld5dfxirz4', - 'Power tools', - 'teal', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optly7nv', - 1685175511799, - 1685175511799, - NULL, - 'fldx46wrlru', - 'Job completed', - 'green', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optk9i7d', - 1685175511799, - 1685175511799, - NULL, - 'fldx46wrlru', - 'Started', - 'teal', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt52302', - 1685175511799, - 1685175511799, - NULL, - 'fldx46wrlru', - 'Spec hold', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optsza72', - 1685175511799, - 1685175511799, - NULL, - 'fldx46wrlru', - 'Permits', - 'pink', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optlb8vh', - 1685175511799, - 1685175511799, - NULL, - 'fldx46wrlru', - 'Not started', - 'neutral', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4zm1b', - 1685175632543, - 1685175632543, - NULL, - 'fldisycq2kk', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt7aexw', - 1685175632543, - 1685175632543, - NULL, - 'fldisycq2kk', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optij18u', - 1685175632544, - 1685175632544, - NULL, - 'fldisycq2kk', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optnj1oo', - 1685175632544, - 1685175632544, - NULL, - 'fldisycq2kk', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optanfm2', - 1685175632544, - 1685175632544, - NULL, - 'fldisycq2kk', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optj31dv', - 1685175686282, - 1685175686282, - NULL, - 'fldf3858jba', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optrvet4', - 1685175686282, - 1685175686282, - NULL, - 'fldf3858jba', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optxwahs', - 1685175686282, - 1685175686282, - NULL, - 'fldf3858jba', - 'Working on it ', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optppv4b', - 1685175686282, - 1685175686282, - NULL, - 'fldf3858jba', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optwxe92', - 1685175686282, - 1685175686282, - NULL, - 'fldf3858jba', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optta5lv', - 1685175744383, - 1685175744383, - NULL, - 'fldzcbm7d6f', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt64gyb', - 1685175744383, - 1685175744383, - NULL, - 'fldzcbm7d6f', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optuvv04', - 1685175744383, - 1685175744383, - NULL, - 'fldzcbm7d6f', - 'Working on it ', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optkz4m0', - 1685175744383, - 1685175744383, - NULL, - 'fldzcbm7d6f', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt764tj', - 1685175744383, - 1685175744383, - NULL, - 'fldzcbm7d6f', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optektao', - 1685175795608, - 1685175795608, - NULL, - 'fldfhnwfm1d', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt11g61', - 1685175795608, - 1685175795608, - NULL, - 'fldfhnwfm1d', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optdrqmq', - 1685175795608, - 1685175795608, - NULL, - 'fldfhnwfm1d', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt6eado', - 1685175795608, - 1685175795608, - NULL, - 'fldfhnwfm1d', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4fx4b', - 1685175795608, - 1685175795608, - NULL, - 'fldfhnwfm1d', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optkxfmz', - 1685175846844, - 1685206616994, - NULL, - 'fld5tprv6oh', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt7c7d0', - 1685175846844, - 1685206616994, - NULL, - 'fld5tprv6oh', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optoxmwi', - 1685175846844, - 1685206616994, - NULL, - 'fld5tprv6oh', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optmrtmx', - 1685175846844, - 1685206616994, - NULL, - 'fld5tprv6oh', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optafbtz', - 1685175903838, - 1685175903839, - NULL, - 'fld9k1d6632', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optjmdk5', - 1685175903839, - 1685175903839, - NULL, - 'fld9k1d6632', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optiqcmj', - 1685175903839, - 1685175903839, - NULL, - 'fld9k1d6632', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optif7bj', - 1685175903839, - 1685175903839, - NULL, - 'fld9k1d6632', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt6ppkq', - 1685175903839, - 1685175903839, - NULL, - 'fld9k1d6632', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opti0yh8', - 1685175947059, - 1685175947059, - NULL, - 'fldqt93dh02', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optbh9nh', - 1685175947059, - 1685175947059, - NULL, - 'fldqt93dh02', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optyhmxz', - 1685175947059, - 1685175947059, - NULL, - 'fldqt93dh02', - 'Working on it ', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt1f0cp', - 1685175947059, - 1685175947059, - NULL, - 'fldqt93dh02', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optso67j', - 1685175947059, - 1685175947059, - NULL, - 'fldqt93dh02', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optf25mu', - 1685175995109, - 1685175995109, - NULL, - 'fldicbkx09x', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt3icrr', - 1685175995109, - 1685175995109, - NULL, - 'fldicbkx09x', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt14taz', - 1685175995109, - 1685175995109, - NULL, - 'fldicbkx09x', - 'Working on it ', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optq3b2f', - 1685175995109, - 1685175995109, - NULL, - 'fldicbkx09x', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optfm7cx', - 1685175995109, - 1685175995109, - NULL, - 'fldicbkx09x', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optbtkxe', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Job completed', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4kb70', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Started', - 'lime', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt7mcm6', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Drywall', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optz35gg', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Trench', - 'stone', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optoqyxn', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Framing', - 'violet', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optqljvt', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Spec Hold', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optnxz49', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Electrical', - 'sky', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optdbss5', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Roof', - 'yellow', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optj5wxr', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Foundation', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optiocxg', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Permits', - 'pink', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4zoqs', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'QC ', - 'teal', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt6ik4j', - 1685176415123, - 1685176627939, - NULL, - 'fldnktdp6ej', - 'Not started', - 'gray', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optuay9y', - 1685176480392, - 1685176480392, - NULL, - 'fldvvjbi1nv', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opthez6f', - 1685176480392, - 1685176480392, - NULL, - 'fldvvjbi1nv', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opterqpi', - 1685176480392, - 1685176480392, - NULL, - 'fldvvjbi1nv', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt2obr5', - 1685176480392, - 1685176480392, - NULL, - 'fldvvjbi1nv', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt3spb0', - 1685176480392, - 1685176480392, - NULL, - 'fldvvjbi1nv', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opts4596', - 1685176699721, - 1685176731041, - NULL, - 'fldzpcp0ouz', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optr2s1n', - 1685176699721, - 1685176731041, - NULL, - 'fldzpcp0ouz', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opto18a9', - 1685176699721, - 1685176731041, - NULL, - 'fldzpcp0ouz', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt7t6s7', - 1685176699721, - 1685176731041, - NULL, - 'fldzpcp0ouz', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt8j66y', - 1685176699721, - 1685176731041, - NULL, - 'fldzpcp0ouz', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optu5jkw', - 1685176806350, - 1685176806350, - NULL, - 'fld749c7m6l', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optrbpqo', - 1685176806350, - 1685176806350, - NULL, - 'fld749c7m6l', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optnd614', - 1685176806350, - 1685176806350, - NULL, - 'fld749c7m6l', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optjhxby', - 1685176806350, - 1685176806350, - NULL, - 'fld749c7m6l', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt2hdx6', - 1685176806350, - 1685176806350, - NULL, - 'fld749c7m6l', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optqfwlt', - 1685176882333, - 1685176882333, - NULL, - 'fld8uonlrvg', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optmp0hm', - 1685176882333, - 1685176882333, - NULL, - 'fld8uonlrvg', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opta8zon', - 1685176882333, - 1685176882333, - NULL, - 'fld8uonlrvg', - 'Working on it ', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opty4yq3', - 1685176882333, - 1685176882333, - NULL, - 'fld8uonlrvg', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optop6j7', - 1685176882333, - 1685176882333, - NULL, - 'fld8uonlrvg', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optkns23', - 1685176942078, - 1685176942078, - NULL, - 'fld6r6a1hc9', - 'Done ', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt4h4tt', - 1685176942078, - 1685176942078, - NULL, - 'fld6r6a1hc9', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt20hse', - 1685176942078, - 1685176942078, - NULL, - 'fld6r6a1hc9', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt2gr6e', - 1685176942078, - 1685176942078, - NULL, - 'fld6r6a1hc9', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optp5i9p', - 1685176942078, - 1685176942078, - NULL, - 'fld6r6a1hc9', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optjtq7x', - 1685176994753, - 1685176994753, - NULL, - 'fld19p1ahm5', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt7i90b', - 1685176994753, - 1685176994753, - NULL, - 'fld19p1ahm5', - 'Planned', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optbs3h7', - 1685176994753, - 1685176994753, - NULL, - 'fld19p1ahm5', - 'Working on it', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opteyf9n', - 1685176994753, - 1685176994753, - NULL, - 'fld19p1ahm5', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optbi25l', - 1685176994753, - 1685176994753, - NULL, - 'fld19p1ahm5', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt530jq', - 1685177111305, - 1685177111305, - NULL, - 'fldtdqxqkhr', - 'Delayed by vendor', - 'yellow', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optk9tdr', - 1685177111305, - 1685177111305, - NULL, - 'fldtdqxqkhr', - 'Delayed by builders', - 'red', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opttf21e', - 1685177111305, - 1685177111305, - NULL, - 'fldtdqxqkhr', - 'Awaiting review', - 'teal', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optnna94', - 1685177111305, - 1685177111305, - NULL, - 'fldtdqxqkhr', - 'Done', - 'lime', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optsfrkz', - 1685177111305, - 1685177111305, - NULL, - 'fldtdqxqkhr', - ' ', - 'gray', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optjzp08', - 1685177668674, - 1685177668674, - NULL, - 'fldn3txeox5', - 'Done', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optnqa4l', - 1685177668674, - 1685177668674, - NULL, - 'fldn3txeox5', - 'In progress', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt8g1l1', - 1685177668674, - 1685177668674, - NULL, - 'fldn3txeox5', - 'Stuck', - 'rose', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optkcpbu', - 1685177668674, - 1685177668674, - NULL, - 'fldn3txeox5', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optbywmt', - 1685178477325, - 1685209414212, - NULL, - 'fldw0xhn5du', - 'In construction', - 'blue', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optegnto', - 1685178477325, - 1685209414212, - NULL, - 'fldw0xhn5du', - 'In quality control', - 'emerald', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optt4gtr', - 1685178477325, - 1685209414212, - NULL, - 'fldw0xhn5du', - 'Done', - 'lime', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optxuzzu', - 1685178477325, - 1685209414212, - NULL, - 'fldw0xhn5du', - 'Not stated', - 'gray', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optzzqb3', - 1685206616993, - 1685206616993, - NULL, - 'fld5tprv6oh', - 'Delayed', - 'orange', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opto7jfx', - 1685206616993, - 1685206616993, - NULL, - 'fld5tprv6oh', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt5jwgs', - 1685208283980, - 1685208283980, - NULL, - 'fld5dfxirz4', - 'Carpeting', - 'amber', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opthy6me', - 1685208283980, - 1685208283980, - NULL, - 'fld5dfxirz4', - 'Done', - 'lime', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optuous4', - 1685208283980, - 1685208283980, - NULL, - 'fld5dfxirz4', - 'Cleaning', - 'violet', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt44e5z', - 1685208283980, - 1685208283980, - NULL, - 'fld5dfxirz4', - 'Measuring', - 'yellow', - 5 - ); -INSERT INTO undb_option -VALUES( - 'opt8eiob', - 1685208283980, - 1685208283980, - NULL, - 'fld5dfxirz4', - ' ', - 'slate', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optednbl', - 1685210615474, - 1685210615474, - NULL, - 'fldmv3t03kj', - 'Structural subcontractors', - 'sky', - 5 - ); -INSERT INTO undb_option -VALUES( - 'optqe1bf', - 1685210615474, - 1685210615474, - NULL, - 'fldmv3t03kj', - 'Service subcontractors', - 'violet', - 5 - ); +INSERT INTO undb_option VALUES('optuo8m1',1684577267430,1684577267430,NULL,'fld4sf2mdr8','New','gray',5); +INSERT INTO undb_option VALUES('optapz93',1684577267430,1684577267430,NULL,'fld4sf2mdr8','Discovery','blue',5); +INSERT INTO undb_option VALUES('opteh974',1684577267430,1684577267430,NULL,'fld4sf2mdr8','Proposal','emerald',5); +INSERT INTO undb_option VALUES('opts4t4w',1684577267430,1684577267430,NULL,'fld4sf2mdr8','Negotiation','violet',5); +INSERT INTO undb_option VALUES('optdczmv',1684577267430,1684577267430,NULL,'fld4sf2mdr8','Won','lime',5); +INSERT INTO undb_option VALUES('optygwq0',1684577267430,1684577267430,NULL,'fld4sf2mdr8','Lost','red',5); +INSERT INTO undb_option VALUES('optua38g',1684580952905,1684580952905,NULL,'fldghc0rw09','Hight','rose',5); +INSERT INTO undb_option VALUES('opty4o0z',1684580952905,1684580952905,NULL,'fldghc0rw09','Medium','yellow',5); +INSERT INTO undb_option VALUES('opt68d8z',1684580952905,1684580952905,NULL,'fldghc0rw09','Low','green',5); +INSERT INTO undb_option VALUES('opt88amk',1684581555250,1684581555250,NULL,'fldcamelfi7','Customer','indigo',5); +INSERT INTO undb_option VALUES('opt0ucwc',1684581555250,1684581555250,NULL,'fldcamelfi7','Qualified Lead','emerald',5); +INSERT INTO undb_option VALUES('opthjypi',1684581555250,1684581555250,NULL,'fldcamelfi7','Partner','amber',5); +INSERT INTO undb_option VALUES('optqutxq',1684581555250,1684581555250,NULL,'fldcamelfi7','Vendor','blue',5); +INSERT INTO undb_option VALUES('optsgc8w',1684655636181,1684655636181,NULL,'fldr3t33atc','Pre Arrival','neutral',5); +INSERT INTO undb_option VALUES('opt8ef1v',1684655636181,1684655636181,NULL,'fldr3t33atc','First Day','rose',5); +INSERT INTO undb_option VALUES('optjsdp6',1684655636181,1684655636181,NULL,'fldr3t33atc','First Week','violet',5); +INSERT INTO undb_option VALUES('optgin1z',1684655636181,1684655636181,NULL,'fldr3t33atc','First Month','blue',5); +INSERT INTO undb_option VALUES('optlottl',1684655636181,1684655636181,NULL,'fldr3t33atc','Onboarded','emerald',5); +INSERT INTO undb_option VALUES('optpg4ya',1684655636183,1684655636183,NULL,'fld67w65koz','Design','orange',5); +INSERT INTO undb_option VALUES('optjehd9',1684655636183,1684655636183,NULL,'fld67w65koz','IT','yellow',5); +INSERT INTO undb_option VALUES('optk8vx1',1684655636183,1684655636183,NULL,'fld67w65koz','Security','fuchsia',5); +INSERT INTO undb_option VALUES('opts4ao9',1684655636183,1684655636183,NULL,'fld67w65koz','Customer Support','emerald',5); +INSERT INTO undb_option VALUES('opt8h6fl',1684655636183,1684655636183,NULL,'fld67w65koz','Marketing','red',5); +INSERT INTO undb_option VALUES('optz0o9e',1684655636183,1684655636183,NULL,'fld67w65koz','HR','rose',5); +INSERT INTO undb_option VALUES('opt0g9hh',1684655636183,1684655636183,NULL,'fld67w65koz','Partners','violet',5); +INSERT INTO undb_option VALUES('optake1d',1684655636183,1684655636183,NULL,'fld67w65koz','R&D','sky',5); +INSERT INTO undb_option VALUES('optrhqo9',1684655636183,1684655636183,NULL,'fld67w65koz','Sales','blue',5); +INSERT INTO undb_option VALUES('opth45w2',1684655636183,1684655636183,NULL,'fld67w65koz','Operation','pink',5); +INSERT INTO undb_option VALUES('opt44dfp',1684655636183,1684655636183,NULL,'fld67w65koz','Finance','green',5); +INSERT INTO undb_option VALUES('optuieaz',1684655636183,1684655636183,NULL,'fld67w65koz','Mobile','amber',5); +INSERT INTO undb_option VALUES('optmelkt',1684655636183,1684655636183,NULL,'fld67w65koz',' ','neutral',5); +INSERT INTO undb_option VALUES('opt4lu2m',1684657728406,1684657728406,NULL,'fld38j2aoqw','Done','emerald',5); +INSERT INTO undb_option VALUES('optks9w7',1684657728406,1684657728406,NULL,'fld38j2aoqw','Working on it','orange',5); +INSERT INTO undb_option VALUES('optcarg3',1684657728406,1684657728406,NULL,'fld38j2aoqw','Stuck','rose',5); +INSERT INTO undb_option VALUES('opttmurc',1684657728406,1684657728406,NULL,'fld38j2aoqw',' ','slate',5); +INSERT INTO undb_option VALUES('optlhx0u',1684657850773,1684657850773,NULL,'fldmjxybwnt','Done ','emerald',5); +INSERT INTO undb_option VALUES('opt4ra5l',1684657850773,1684657850773,NULL,'fldmjxybwnt','Working on it','orange',5); +INSERT INTO undb_option VALUES('opt4la7z',1684657850773,1684657850773,NULL,'fldmjxybwnt','stuck','rose',5); +INSERT INTO undb_option VALUES('optqqamc',1684657850773,1684657850773,NULL,'fldmjxybwnt',' ','slate',5); +INSERT INTO undb_option VALUES('opt0cxih',1684657896209,1684657896209,NULL,'fldntjvterl','Done','emerald',5); +INSERT INTO undb_option VALUES('opt6moby',1684657896209,1684657896209,NULL,'fldntjvterl','Working on it','orange',5); +INSERT INTO undb_option VALUES('optrxxd8',1684657896209,1684657896209,NULL,'fldntjvterl','Stuck','rose',5); +INSERT INTO undb_option VALUES('opt27124',1684657896209,1684657896209,NULL,'fldntjvterl',' ','slate',5); +INSERT INTO undb_option VALUES('optap9r0',1684657974107,1684657974107,NULL,'fldy60tdkfr','Done','emerald',5); +INSERT INTO undb_option VALUES('optz8twl',1684657974107,1684657974107,NULL,'fldy60tdkfr','Working on it','orange',5); +INSERT INTO undb_option VALUES('optr48gc',1684657974107,1684657974107,NULL,'fldy60tdkfr','Stuck','rose',5); +INSERT INTO undb_option VALUES('optybpi2',1684657974107,1684657974107,NULL,'fldy60tdkfr',' ','slate',5); +INSERT INTO undb_option VALUES('optuqbtr',1684658017413,1684658017413,NULL,'fld4a04leij','Done','emerald',5); +INSERT INTO undb_option VALUES('optzq9lr',1684658017413,1684658017413,NULL,'fld4a04leij','Working on it','orange',5); +INSERT INTO undb_option VALUES('optukskn',1684658017413,1684658017413,NULL,'fld4a04leij','Stuck','rose',5); +INSERT INTO undb_option VALUES('optsij84',1684658017413,1684658017413,NULL,'fld4a04leij',' ','slate',5); +INSERT INTO undb_option VALUES('optj07q2',1685174428883,1685208283981,NULL,'fld5dfxirz4','Floor','blue',5); +INSERT INTO undb_option VALUES('optomi94',1685174428883,1685208283981,NULL,'fld5dfxirz4','Wood','sky',5); +INSERT INTO undb_option VALUES('optzeb02',1685174428883,1685208283981,NULL,'fld5dfxirz4','Power tools','teal',5); +INSERT INTO undb_option VALUES('optly7nv',1685175511799,1685175511799,NULL,'fldx46wrlru','Job completed','green',5); +INSERT INTO undb_option VALUES('optk9i7d',1685175511799,1685175511799,NULL,'fldx46wrlru','Started','teal',5); +INSERT INTO undb_option VALUES('opt52302',1685175511799,1685175511799,NULL,'fldx46wrlru','Spec hold','amber',5); +INSERT INTO undb_option VALUES('optsza72',1685175511799,1685175511799,NULL,'fldx46wrlru','Permits','pink',5); +INSERT INTO undb_option VALUES('optlb8vh',1685175511799,1685175511799,NULL,'fldx46wrlru','Not started','neutral',5); +INSERT INTO undb_option VALUES('opt4zm1b',1685175632543,1685175632543,NULL,'fldisycq2kk','Done','emerald',5); +INSERT INTO undb_option VALUES('opt7aexw',1685175632543,1685175632543,NULL,'fldisycq2kk','Planned','blue',5); +INSERT INTO undb_option VALUES('optij18u',1685175632544,1685175632544,NULL,'fldisycq2kk','Working on it','amber',5); +INSERT INTO undb_option VALUES('optnj1oo',1685175632544,1685175632544,NULL,'fldisycq2kk','Stuck','rose',5); +INSERT INTO undb_option VALUES('optanfm2',1685175632544,1685175632544,NULL,'fldisycq2kk',' ','slate',5); +INSERT INTO undb_option VALUES('optj31dv',1685175686282,1685175686282,NULL,'fldf3858jba','Done','emerald',5); +INSERT INTO undb_option VALUES('optrvet4',1685175686282,1685175686282,NULL,'fldf3858jba','Planned','blue',5); +INSERT INTO undb_option VALUES('optxwahs',1685175686282,1685175686282,NULL,'fldf3858jba','Working on it ','amber',5); +INSERT INTO undb_option VALUES('optppv4b',1685175686282,1685175686282,NULL,'fldf3858jba','Stuck','rose',5); +INSERT INTO undb_option VALUES('optwxe92',1685175686282,1685175686282,NULL,'fldf3858jba',' ','slate',5); +INSERT INTO undb_option VALUES('optta5lv',1685175744383,1685175744383,NULL,'fldzcbm7d6f','Done ','emerald',5); +INSERT INTO undb_option VALUES('opt64gyb',1685175744383,1685175744383,NULL,'fldzcbm7d6f','Planned','blue',5); +INSERT INTO undb_option VALUES('optuvv04',1685175744383,1685175744383,NULL,'fldzcbm7d6f','Working on it ','amber',5); +INSERT INTO undb_option VALUES('optkz4m0',1685175744383,1685175744383,NULL,'fldzcbm7d6f','Stuck','rose',5); +INSERT INTO undb_option VALUES('opt764tj',1685175744383,1685175744383,NULL,'fldzcbm7d6f',' ','slate',5); +INSERT INTO undb_option VALUES('optektao',1685175795608,1685175795608,NULL,'fldfhnwfm1d','Done ','emerald',5); +INSERT INTO undb_option VALUES('opt11g61',1685175795608,1685175795608,NULL,'fldfhnwfm1d','Planned','blue',5); +INSERT INTO undb_option VALUES('optdrqmq',1685175795608,1685175795608,NULL,'fldfhnwfm1d','Working on it','amber',5); +INSERT INTO undb_option VALUES('opt6eado',1685175795608,1685175795608,NULL,'fldfhnwfm1d','Stuck','rose',5); +INSERT INTO undb_option VALUES('opt4fx4b',1685175795608,1685175795608,NULL,'fldfhnwfm1d',' ','slate',5); +INSERT INTO undb_option VALUES('optkxfmz',1685175846844,1685206616994,NULL,'fld5tprv6oh','Done ','emerald',5); +INSERT INTO undb_option VALUES('opt7c7d0',1685175846844,1685206616994,NULL,'fld5tprv6oh','Planned','blue',5); +INSERT INTO undb_option VALUES('optoxmwi',1685175846844,1685206616994,NULL,'fld5tprv6oh','Working on it','amber',5); +INSERT INTO undb_option VALUES('optmrtmx',1685175846844,1685206616994,NULL,'fld5tprv6oh','Stuck','rose',5); +INSERT INTO undb_option VALUES('optafbtz',1685175903838,1685175903839,NULL,'fld9k1d6632','Done ','emerald',5); +INSERT INTO undb_option VALUES('optjmdk5',1685175903839,1685175903839,NULL,'fld9k1d6632','Planned','blue',5); +INSERT INTO undb_option VALUES('optiqcmj',1685175903839,1685175903839,NULL,'fld9k1d6632','Working on it','amber',5); +INSERT INTO undb_option VALUES('optif7bj',1685175903839,1685175903839,NULL,'fld9k1d6632','Stuck','rose',5); +INSERT INTO undb_option VALUES('opt6ppkq',1685175903839,1685175903839,NULL,'fld9k1d6632',' ','slate',5); +INSERT INTO undb_option VALUES('opti0yh8',1685175947059,1685175947059,NULL,'fldqt93dh02','Done ','emerald',5); +INSERT INTO undb_option VALUES('optbh9nh',1685175947059,1685175947059,NULL,'fldqt93dh02','Planned','blue',5); +INSERT INTO undb_option VALUES('optyhmxz',1685175947059,1685175947059,NULL,'fldqt93dh02','Working on it ','amber',5); +INSERT INTO undb_option VALUES('opt1f0cp',1685175947059,1685175947059,NULL,'fldqt93dh02','Stuck','rose',5); +INSERT INTO undb_option VALUES('optso67j',1685175947059,1685175947059,NULL,'fldqt93dh02',' ','slate',5); +INSERT INTO undb_option VALUES('optf25mu',1685175995109,1685175995109,NULL,'fldicbkx09x','Done ','emerald',5); +INSERT INTO undb_option VALUES('opt3icrr',1685175995109,1685175995109,NULL,'fldicbkx09x','Planned','blue',5); +INSERT INTO undb_option VALUES('opt14taz',1685175995109,1685175995109,NULL,'fldicbkx09x','Working on it ','amber',5); +INSERT INTO undb_option VALUES('optq3b2f',1685175995109,1685175995109,NULL,'fldicbkx09x','Stuck','rose',5); +INSERT INTO undb_option VALUES('optfm7cx',1685175995109,1685175995109,NULL,'fldicbkx09x',' ','slate',5); +INSERT INTO undb_option VALUES('optbtkxe',1685176415123,1685176627939,NULL,'fldnktdp6ej','Job completed','emerald',5); +INSERT INTO undb_option VALUES('opt4kb70',1685176415123,1685176627939,NULL,'fldnktdp6ej','Started','lime',5); +INSERT INTO undb_option VALUES('opt7mcm6',1685176415123,1685176627939,NULL,'fldnktdp6ej','Drywall','blue',5); +INSERT INTO undb_option VALUES('optz35gg',1685176415123,1685176627939,NULL,'fldnktdp6ej','Trench','stone',5); +INSERT INTO undb_option VALUES('optoqyxn',1685176415123,1685176627939,NULL,'fldnktdp6ej','Framing','violet',5); +INSERT INTO undb_option VALUES('optqljvt',1685176415123,1685176627939,NULL,'fldnktdp6ej','Spec Hold','orange',5); +INSERT INTO undb_option VALUES('optnxz49',1685176415123,1685176627939,NULL,'fldnktdp6ej','Electrical','sky',5); +INSERT INTO undb_option VALUES('optdbss5',1685176415123,1685176627939,NULL,'fldnktdp6ej','Roof','yellow',5); +INSERT INTO undb_option VALUES('optj5wxr',1685176415123,1685176627939,NULL,'fldnktdp6ej','Foundation','amber',5); +INSERT INTO undb_option VALUES('optiocxg',1685176415123,1685176627939,NULL,'fldnktdp6ej','Permits','pink',5); +INSERT INTO undb_option VALUES('opt4zoqs',1685176415123,1685176627939,NULL,'fldnktdp6ej','QC ','teal',5); +INSERT INTO undb_option VALUES('opt6ik4j',1685176415123,1685176627939,NULL,'fldnktdp6ej','Not started','gray',5); +INSERT INTO undb_option VALUES('optuay9y',1685176480392,1685176480392,NULL,'fldvvjbi1nv','Done','emerald',5); +INSERT INTO undb_option VALUES('opthez6f',1685176480392,1685176480392,NULL,'fldvvjbi1nv','Planned','blue',5); +INSERT INTO undb_option VALUES('opterqpi',1685176480392,1685176480392,NULL,'fldvvjbi1nv','Working on it','amber',5); +INSERT INTO undb_option VALUES('opt2obr5',1685176480392,1685176480392,NULL,'fldvvjbi1nv','Stuck','rose',5); +INSERT INTO undb_option VALUES('opt3spb0',1685176480392,1685176480392,NULL,'fldvvjbi1nv',' ','slate',5); +INSERT INTO undb_option VALUES('opts4596',1685176699721,1685176731041,NULL,'fldzpcp0ouz','Done','emerald',5); +INSERT INTO undb_option VALUES('optr2s1n',1685176699721,1685176731041,NULL,'fldzpcp0ouz','Planned','blue',5); +INSERT INTO undb_option VALUES('opto18a9',1685176699721,1685176731041,NULL,'fldzpcp0ouz','Working on it','amber',5); +INSERT INTO undb_option VALUES('opt7t6s7',1685176699721,1685176731041,NULL,'fldzpcp0ouz','Stuck','rose',5); +INSERT INTO undb_option VALUES('opt8j66y',1685176699721,1685176731041,NULL,'fldzpcp0ouz',' ','slate',5); +INSERT INTO undb_option VALUES('optu5jkw',1685176806350,1685176806350,NULL,'fld749c7m6l','Done','emerald',5); +INSERT INTO undb_option VALUES('optrbpqo',1685176806350,1685176806350,NULL,'fld749c7m6l','Planned','blue',5); +INSERT INTO undb_option VALUES('optnd614',1685176806350,1685176806350,NULL,'fld749c7m6l','Working on it','amber',5); +INSERT INTO undb_option VALUES('optjhxby',1685176806350,1685176806350,NULL,'fld749c7m6l','Stuck','rose',5); +INSERT INTO undb_option VALUES('opt2hdx6',1685176806350,1685176806350,NULL,'fld749c7m6l',' ','slate',5); +INSERT INTO undb_option VALUES('optqfwlt',1685176882333,1685176882333,NULL,'fld8uonlrvg','Done ','emerald',5); +INSERT INTO undb_option VALUES('optmp0hm',1685176882333,1685176882333,NULL,'fld8uonlrvg','Planned','blue',5); +INSERT INTO undb_option VALUES('opta8zon',1685176882333,1685176882333,NULL,'fld8uonlrvg','Working on it ','amber',5); +INSERT INTO undb_option VALUES('opty4yq3',1685176882333,1685176882333,NULL,'fld8uonlrvg','Stuck','rose',5); +INSERT INTO undb_option VALUES('optop6j7',1685176882333,1685176882333,NULL,'fld8uonlrvg',' ','slate',5); +INSERT INTO undb_option VALUES('optkns23',1685176942078,1685176942078,NULL,'fld6r6a1hc9','Done ','emerald',5); +INSERT INTO undb_option VALUES('opt4h4tt',1685176942078,1685176942078,NULL,'fld6r6a1hc9','Planned','blue',5); +INSERT INTO undb_option VALUES('opt20hse',1685176942078,1685176942078,NULL,'fld6r6a1hc9','Working on it','amber',5); +INSERT INTO undb_option VALUES('opt2gr6e',1685176942078,1685176942078,NULL,'fld6r6a1hc9','Stuck','rose',5); +INSERT INTO undb_option VALUES('optp5i9p',1685176942078,1685176942078,NULL,'fld6r6a1hc9',' ','slate',5); +INSERT INTO undb_option VALUES('optjtq7x',1685176994753,1685176994753,NULL,'fld19p1ahm5','Done','emerald',5); +INSERT INTO undb_option VALUES('opt7i90b',1685176994753,1685176994753,NULL,'fld19p1ahm5','Planned','blue',5); +INSERT INTO undb_option VALUES('optbs3h7',1685176994753,1685176994753,NULL,'fld19p1ahm5','Working on it','amber',5); +INSERT INTO undb_option VALUES('opteyf9n',1685176994753,1685176994753,NULL,'fld19p1ahm5','Stuck','rose',5); +INSERT INTO undb_option VALUES('optbi25l',1685176994753,1685176994753,NULL,'fld19p1ahm5',' ','slate',5); +INSERT INTO undb_option VALUES('opt530jq',1685177111305,1685177111305,NULL,'fldtdqxqkhr','Delayed by vendor','yellow',5); +INSERT INTO undb_option VALUES('optk9tdr',1685177111305,1685177111305,NULL,'fldtdqxqkhr','Delayed by builders','red',5); +INSERT INTO undb_option VALUES('opttf21e',1685177111305,1685177111305,NULL,'fldtdqxqkhr','Awaiting review','teal',5); +INSERT INTO undb_option VALUES('optnna94',1685177111305,1685177111305,NULL,'fldtdqxqkhr','Done','lime',5); +INSERT INTO undb_option VALUES('optsfrkz',1685177111305,1685177111305,NULL,'fldtdqxqkhr',' ','gray',5); +INSERT INTO undb_option VALUES('optjzp08',1685177668674,1685177668674,NULL,'fldn3txeox5','Done','emerald',5); +INSERT INTO undb_option VALUES('optnqa4l',1685177668674,1685177668674,NULL,'fldn3txeox5','In progress','amber',5); +INSERT INTO undb_option VALUES('opt8g1l1',1685177668674,1685177668674,NULL,'fldn3txeox5','Stuck','rose',5); +INSERT INTO undb_option VALUES('optkcpbu',1685177668674,1685177668674,NULL,'fldn3txeox5',' ','slate',5); +INSERT INTO undb_option VALUES('optbywmt',1685178477325,1685209414212,NULL,'fldw0xhn5du','In construction','blue',5); +INSERT INTO undb_option VALUES('optegnto',1685178477325,1685209414212,NULL,'fldw0xhn5du','In quality control','emerald',5); +INSERT INTO undb_option VALUES('optt4gtr',1685178477325,1685209414212,NULL,'fldw0xhn5du','Done','lime',5); +INSERT INTO undb_option VALUES('optxuzzu',1685178477325,1685209414212,NULL,'fldw0xhn5du','Not stated','gray',5); +INSERT INTO undb_option VALUES('optzzqb3',1685206616993,1685206616993,NULL,'fld5tprv6oh','Delayed','orange',5); +INSERT INTO undb_option VALUES('opto7jfx',1685206616993,1685206616993,NULL,'fld5tprv6oh',' ','slate',5); +INSERT INTO undb_option VALUES('opt5jwgs',1685208283980,1685208283980,NULL,'fld5dfxirz4','Carpeting','amber',5); +INSERT INTO undb_option VALUES('opthy6me',1685208283980,1685208283980,NULL,'fld5dfxirz4','Done','lime',5); +INSERT INTO undb_option VALUES('optuous4',1685208283980,1685208283980,NULL,'fld5dfxirz4','Cleaning','violet',5); +INSERT INTO undb_option VALUES('opt44e5z',1685208283980,1685208283980,NULL,'fld5dfxirz4','Measuring','yellow',5); +INSERT INTO undb_option VALUES('opt8eiob',1685208283980,1685208283980,NULL,'fld5dfxirz4',' ','slate',5); +INSERT INTO undb_option VALUES('optednbl',1685210615474,1685210615474,NULL,'fldmv3t03kj','Structural subcontractors','sky',5); +INSERT INTO undb_option VALUES('optqe1bf',1685210615474,1685210615474,NULL,'fldmv3t03kj','Service subcontractors','violet',5); CREATE TABLE `undb_attachment` ( `id` text not null, `record_id` text not null, @@ -6652,54 +431,30 @@ CREATE TABLE `undb_field_display_fields` ( constraint `undb_field_display_fields_field_2_id_foreign` foreign key(`field_2_id`) references `undb_field`(`id`) on delete cascade on update cascade, primary key (`field_1_id`, `field_2_id`) ); -INSERT INTO undb_field_display_fields -VALUES('fld5vld4clt', 'fldel2i4v7v'); -INSERT INTO undb_field_display_fields -VALUES('fldn8qkrzwi', 'fldrlmpebtz'); -INSERT INTO undb_field_display_fields -VALUES('fld6pd0v553', 'fldrlmpebtz'); -INSERT INTO undb_field_display_fields -VALUES('fld5kzdse27', 'fldrlmpebtz'); -INSERT INTO undb_field_display_fields -VALUES('fld5kzdse27', 'fldo4mvc3bq'); -INSERT INTO undb_field_display_fields -VALUES('fldlosp8skm', 'fldvpb5tbbc'); -INSERT INTO undb_field_display_fields -VALUES('fld7a5vkk4j', 'fldamnv8ghw'); -INSERT INTO undb_field_display_fields -VALUES('fldfpeufgq3', 'fld0gmmj29q'); -INSERT INTO undb_field_display_fields -VALUES('fldmz9qd18u', 'fld7m4e9dbz'); -INSERT INTO undb_field_display_fields -VALUES('fldmz9qd18u', 'fldvi5kqyg9'); -INSERT INTO undb_field_display_fields -VALUES('fld56n18njt', 'fldamnv8ghw'); -INSERT INTO undb_field_display_fields -VALUES('fld9jfgs4po', 'fldamnv8ghw'); -INSERT INTO undb_field_display_fields -VALUES('fldyldbx3am', 'fldf5jx5k3p'); -INSERT INTO undb_field_display_fields -VALUES('fld7u72oymt', 'fldf5jx5k3p'); -INSERT INTO undb_field_display_fields -VALUES('fldifd9g29a', 'flds9gyvh1y'); -INSERT INTO undb_field_display_fields -VALUES('fldqetskkmf', 'flds9gyvh1y'); -INSERT INTO undb_field_display_fields -VALUES('fldzhfhodco', 'fld5vejsyk6'); -INSERT INTO undb_field_display_fields -VALUES('fld4h9alzho', 'fldi3ctnklu'); -INSERT INTO undb_field_display_fields -VALUES('fldome9lb5l', 'flds9gyvh1y'); -INSERT INTO undb_field_display_fields -VALUES('fldc7e9bf2j', 'flds9gyvh1y'); -INSERT INTO undb_field_display_fields -VALUES('fldft7edqw6', 'fld3nlurfbt'); -INSERT INTO undb_field_display_fields -VALUES('fldh0blyv2m', 'fld3nlurfbt'); -INSERT INTO undb_field_display_fields -VALUES('fldq5ohh7hx', 'fldhrrqqlqh'); -INSERT INTO undb_field_display_fields -VALUES('fldtnny9yk9', 'fldhrrqqlqh'); +INSERT INTO undb_field_display_fields VALUES('fld5vld4clt','fldel2i4v7v'); +INSERT INTO undb_field_display_fields VALUES('fldn8qkrzwi','fldrlmpebtz'); +INSERT INTO undb_field_display_fields VALUES('fld6pd0v553','fldrlmpebtz'); +INSERT INTO undb_field_display_fields VALUES('fld5kzdse27','fldrlmpebtz'); +INSERT INTO undb_field_display_fields VALUES('fld5kzdse27','fldo4mvc3bq'); +INSERT INTO undb_field_display_fields VALUES('fldlosp8skm','fldvpb5tbbc'); +INSERT INTO undb_field_display_fields VALUES('fld7a5vkk4j','fldamnv8ghw'); +INSERT INTO undb_field_display_fields VALUES('fldfpeufgq3','fld0gmmj29q'); +INSERT INTO undb_field_display_fields VALUES('fldmz9qd18u','fld7m4e9dbz'); +INSERT INTO undb_field_display_fields VALUES('fldmz9qd18u','fldvi5kqyg9'); +INSERT INTO undb_field_display_fields VALUES('fld56n18njt','fldamnv8ghw'); +INSERT INTO undb_field_display_fields VALUES('fld9jfgs4po','fldamnv8ghw'); +INSERT INTO undb_field_display_fields VALUES('fldyldbx3am','fldf5jx5k3p'); +INSERT INTO undb_field_display_fields VALUES('fld7u72oymt','fldf5jx5k3p'); +INSERT INTO undb_field_display_fields VALUES('fldifd9g29a','flds9gyvh1y'); +INSERT INTO undb_field_display_fields VALUES('fldqetskkmf','flds9gyvh1y'); +INSERT INTO undb_field_display_fields VALUES('fldzhfhodco','fld5vejsyk6'); +INSERT INTO undb_field_display_fields VALUES('fld4h9alzho','fldi3ctnklu'); +INSERT INTO undb_field_display_fields VALUES('fldome9lb5l','flds9gyvh1y'); +INSERT INTO undb_field_display_fields VALUES('fldc7e9bf2j','flds9gyvh1y'); +INSERT INTO undb_field_display_fields VALUES('fldft7edqw6','fld3nlurfbt'); +INSERT INTO undb_field_display_fields VALUES('fldh0blyv2m','fld3nlurfbt'); +INSERT INTO undb_field_display_fields VALUES('fldq5ohh7hx','fldhrrqqlqh'); +INSERT INTO undb_field_display_fields VALUES('fldtnny9yk9','fldhrrqqlqh'); CREATE TABLE `undb_user` ( `id` text not null, `created_at` datetime not null, @@ -6712,30 +467,8 @@ CREATE TABLE `undb_user` ( `color` text not null default 'blue', primary key (`id`) ); -INSERT INTO undb_user -VALUES( - 'usrzvhv8srb', - 1684576050811, - 1684576050811, - NULL, - NULL, - 'wanshufen', - 'wanshufen@gmail.com', - '$2b$10$WWb61jyIP.k2diCCHVwcWOAm5xigGGu8sV5/NZpqB.9X5rme/v68u', - 'blue' - ); -INSERT INTO undb_user -VALUES( - 'usrbuajh55q', - 1684934839996, - 1684934839996, - NULL, - NULL, - 'test', - 'test@example.com', - '$2b$10$k4YCl8rqxWHS4TrTA99q6u7Y1.8BOmXJ2z5ndGHO/CsEiCmYqbX2y', - 'rose' - ); +INSERT INTO undb_user VALUES('usrzvhv8srb',1684576050811,1684576050811,NULL,NULL,'wanshufen','wanshufen@gmail.com','$2b$10$WWb61jyIP.k2diCCHVwcWOAm5xigGGu8sV5/NZpqB.9X5rme/v68u','blue'); +INSERT INTO undb_user VALUES('usrbuajh55q',1684934839996,1684934839996,NULL,NULL,'test','test@example.com','$2b$10$k4YCl8rqxWHS4TrTA99q6u7Y1.8BOmXJ2z5ndGHO/CsEiCmYqbX2y','rose'); CREATE TABLE `undb_visualization` ( `id` text not null, `created_at` datetime not null, @@ -6751,146 +484,16 @@ CREATE TABLE `undb_visualization` ( constraint `undb_visualization_table_id_foreign` foreign key(`table_id`) references `undb_table`(`id`) on delete cascade on update cascade, primary key (`id`) ); -INSERT INTO undb_visualization -VALUES( - 'vir5353gfgf', - 1684661009070, - 1684661009070, - NULL, - '柱状图', - 'chart', - 'tbl2za35hbg', - NULL, - 'fldr3t33atc', - 'count', - 'bar' - ); -INSERT INTO undb_visualization -VALUES( - 'virc6ae7eok', - 1684661041511, - 1684661041511, - NULL, - '计数', - 'number', - 'tbl2za35hbg', - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_visualization -VALUES( - 'vir4qvwxtmp', - 1684661047519, - 1684661054377, - NULL, - '柱状图', - 'chart', - 'tbl2za35hbg', - NULL, - 'fld67w65koz', - 'count', - 'bar' - ); -INSERT INTO undb_visualization -VALUES( - 'vir585o7pkz', - 1684661061383, - 1684661068653, - NULL, - '柱状图', - 'chart', - 'tbl2za35hbg', - NULL, - 'fld67w65koz', - 'count', - 'bar' - ); -INSERT INTO undb_visualization -VALUES( - 'virb9on838g', - 1685212280579, - 1685212280579, - NULL, - 'count', - 'number', - 'tblpgqt9f8e', - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_visualization -VALUES( - 'virzb9fl06p', - 1685212286590, - 1685212286590, - NULL, - 'bar', - 'chart', - 'tblpgqt9f8e', - NULL, - 'fld5dfxirz4', - 'count', - 'bar' - ); -INSERT INTO undb_visualization -VALUES( - 'virgvhmfl7y', - 1685213070188, - 1685213070188, - NULL, - 'count', - 'number', - 'tblfx77neny', - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO undb_visualization -VALUES( - 'virsfzcdnjb', - 1685213092660, - 1685213092660, - NULL, - 'bar', - 'chart', - 'tblfx77neny', - NULL, - 'fldx46wrlru', - 'count', - 'bar' - ); -INSERT INTO undb_visualization -VALUES( - 'virg85utg7b', - 1685213148218, - 1685213148218, - NULL, - 'bar', - 'chart', - 'tblpgqt9f8e', - NULL, - 'fld5dfxirz4', - 'count', - 'bar' - ); -INSERT INTO undb_visualization -VALUES( - 'vir8md89zv2', - 1685213181402, - 1685213181402, - NULL, - 'bar', - 'chart', - 'tblk4h9pgm7', - NULL, - 'fldnktdp6ej', - 'count', - 'bar' - ); +INSERT INTO undb_visualization VALUES('vir5353gfgf',1684661009070,1684661009070,NULL,'柱状图','chart','tbl2za35hbg',NULL,'fldr3t33atc','count','bar'); +INSERT INTO undb_visualization VALUES('virc6ae7eok',1684661041511,1684661041511,NULL,'计数','number','tbl2za35hbg',NULL,NULL,NULL,NULL); +INSERT INTO undb_visualization VALUES('vir4qvwxtmp',1684661047519,1684661054377,NULL,'柱状图','chart','tbl2za35hbg',NULL,'fld67w65koz','count','bar'); +INSERT INTO undb_visualization VALUES('vir585o7pkz',1684661061383,1684661068653,NULL,'柱状图','chart','tbl2za35hbg',NULL,'fld67w65koz','count','bar'); +INSERT INTO undb_visualization VALUES('virb9on838g',1685212280579,1685212280579,NULL,'count','number','tblpgqt9f8e',NULL,NULL,NULL,NULL); +INSERT INTO undb_visualization VALUES('virzb9fl06p',1685212286590,1685212286590,NULL,'bar','chart','tblpgqt9f8e',NULL,'fld5dfxirz4','count','bar'); +INSERT INTO undb_visualization VALUES('virgvhmfl7y',1685213070188,1685213070188,NULL,'count','number','tblfx77neny',NULL,NULL,NULL,NULL); +INSERT INTO undb_visualization VALUES('virsfzcdnjb',1685213092660,1685213092660,NULL,'bar','chart','tblfx77neny',NULL,'fldx46wrlru','count','bar'); +INSERT INTO undb_visualization VALUES('virg85utg7b',1685213148218,1685213148218,NULL,'bar','chart','tblpgqt9f8e',NULL,'fld5dfxirz4','count','bar'); +INSERT INTO undb_visualization VALUES('vir8md89zv2',1685213181402,1685213181402,NULL,'bar','chart','tblk4h9pgm7',NULL,'fldnktdp6ej','count','bar'); CREATE TABLE `undb_widget` ( `id` text not null, `created_at` datetime not null, @@ -6904,106 +507,16 @@ CREATE TABLE `undb_widget` ( set null on update cascade, primary key (`id`) ); -INSERT INTO undb_widget -VALUES( - 'wid2c1qxm9o', - 1684661009070, - 1684661085400, - NULL, - '{"x":0,"y":0,"h":4,"w":6}', - 'viw3qge14qx', - 'vir5353gfgf' - ); -INSERT INTO undb_widget -VALUES( - 'wide8odhgnl', - 1684661041511, - 1684661045009, - 1684661045009, - '{"x":6,"y":0,"h":2,"w":6}', - 'viw3qge14qx', - 'virc6ae7eok' - ); -INSERT INTO undb_widget -VALUES( - 'widue819e88', - 1684661047519, - 1684661085400, - NULL, - '{"x":6,"y":0,"h":4,"w":6}', - 'viw3qge14qx', - 'vir4qvwxtmp' - ); -INSERT INTO undb_widget -VALUES( - 'widtbx3szzn', - 1684661061383, - 1684661085371, - 1684661085370, - '{"x":12,"y":0,"h":4,"w":6}', - 'viw3qge14qx', - 'vir585o7pkz' - ); -INSERT INTO undb_widget -VALUES( - 'wid9h5d15xe', - 1685212280579, - 1685212280579, - NULL, - '{"x":0,"y":0,"h":2,"w":6}', - 'viwbcscykkd', - 'virb9on838g' - ); -INSERT INTO undb_widget -VALUES( - 'widmi10cpau', - 1685212286590, - 1685212286590, - NULL, - '{"x":6,"y":0,"h":4,"w":6}', - 'viwbcscykkd', - 'virzb9fl06p' - ); -INSERT INTO undb_widget -VALUES( - 'widdejx6woo', - 1685213070188, - 1685213070188, - NULL, - '{"x":0,"y":0,"h":2,"w":6}', - 'viwoxmuxqte', - 'virgvhmfl7y' - ); -INSERT INTO undb_widget -VALUES( - 'widbzd1xggl', - 1685213092659, - 1685213092659, - NULL, - '{"x":6,"y":0,"h":4,"w":6}', - 'viwoxmuxqte', - 'virsfzcdnjb' - ); -INSERT INTO undb_widget -VALUES( - 'widobnuj5w9', - 1685213148218, - 1685213148218, - NULL, - '{"x":0,"y":0,"h":4,"w":6}', - 'viwab1ycczl', - 'virg85utg7b' - ); -INSERT INTO undb_widget -VALUES( - 'widbbypud7z', - 1685213181402, - 1685213181402, - NULL, - '{"x":0,"y":0,"h":4,"w":6}', - 'viwufxtr4ao', - 'vir8md89zv2' - ); +INSERT INTO undb_widget VALUES('wid2c1qxm9o',1684661009070,1684661085400,NULL,'{"x":0,"y":0,"h":4,"w":6}','viw3qge14qx','vir5353gfgf'); +INSERT INTO undb_widget VALUES('wide8odhgnl',1684661041511,1684661045009,1684661045009,'{"x":6,"y":0,"h":2,"w":6}','viw3qge14qx','virc6ae7eok'); +INSERT INTO undb_widget VALUES('widue819e88',1684661047519,1684661085400,NULL,'{"x":6,"y":0,"h":4,"w":6}','viw3qge14qx','vir4qvwxtmp'); +INSERT INTO undb_widget VALUES('widtbx3szzn',1684661061383,1684661085371,1684661085370,'{"x":12,"y":0,"h":4,"w":6}','viw3qge14qx','vir585o7pkz'); +INSERT INTO undb_widget VALUES('wid9h5d15xe',1685212280579,1685212280579,NULL,'{"x":0,"y":0,"h":2,"w":6}','viwbcscykkd','virb9on838g'); +INSERT INTO undb_widget VALUES('widmi10cpau',1685212286590,1685212286590,NULL,'{"x":6,"y":0,"h":4,"w":6}','viwbcscykkd','virzb9fl06p'); +INSERT INTO undb_widget VALUES('widdejx6woo',1685213070188,1685213070188,NULL,'{"x":0,"y":0,"h":2,"w":6}','viwoxmuxqte','virgvhmfl7y'); +INSERT INTO undb_widget VALUES('widbzd1xggl',1685213092659,1685213092659,NULL,'{"x":6,"y":0,"h":4,"w":6}','viwoxmuxqte','virsfzcdnjb'); +INSERT INTO undb_widget VALUES('widobnuj5w9',1685213148218,1685213148218,NULL,'{"x":0,"y":0,"h":4,"w":6}','viwab1ycczl','virg85utg7b'); +INSERT INTO undb_widget VALUES('widbbypud7z',1685213181402,1685213181402,NULL,'{"x":0,"y":0,"h":4,"w":6}','viwufxtr4ao','vir8md89zv2'); CREATE TABLE IF NOT EXISTS "undb_view" ( `id` text NOT NULL, `created_at` datetime NOT NULL, @@ -7012,25 +525,10 @@ CREATE TABLE IF NOT EXISTS "undb_view" ( `table_id` text NULL, `name` text NOT NULL, `show_system_fields` integer NOT NULL DEFAULT false, - `display_type` text check ( - `display_type` in ( - 'kanban', - 'calendar', - 'grid', - 'tree', - 'dashboard' - ) - ) NOT NULL CHECK ( - `display_type` in( - 'kanban', - 'calendar', - 'grid', - 'tree', - 'dashboard' - ) - ), + `display_type` text NOT NULL, `sorts` json NULL, `kanban_field_id` text NULL, + `gantt_field_id` text NULL, `calendar_field_id` text NULL, `tree_field_id` text NULL, `filter` json NULL, @@ -7041,586 +539,35 @@ CREATE TABLE IF NOT EXISTS "undb_view" ( CONSTRAINT `undb_view_table_id_foreign` FOREIGN KEY (`table_id`) REFERENCES `undb_table` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY (`id`) ); -INSERT INTO undb_view -VALUES( - 'viwnxi5l3qi', - 1684577267431, - 1685265723802, - NULL, - 'tbl4undb0lh', - 'Deal Tracker', - 1, - 'grid', - NULL, - 'fld4sf2mdr8', - 'fldjyupbqlm', - NULL, - NULL, - '{"fld8ql20jlm":{"hidden":false},"fld7vd9ir75":{"hidden":true}}', - 'fldopx87187,fld7m4e9dbz,fld4sf2mdr8,fldx5w2pcft,fldtefbcm18,fld5vld4clt,fldghc0rw09,fldvi5kqyg9,fldjyupbqlm,fldqpn61v8h,fld2u4gkap9,fld7vd9ir75,fld8ql20jlm,fldxq7kp4eu', - '{"left":["fld7m4e9dbz"],"right":[]}', - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw1f88x075', - 1684577324094, - 1685265889967, - NULL, - 'tblramxgp7z', - 'Contacts', - 1, - 'grid', - NULL, - NULL, - NULL, - NULL, - NULL, - '{"fldconkpc7g":{"hidden":true},"fld7smzf5np":{"hidden":true},"fldelspnzaq":{"hidden":true},"fldpkr0phjz":{"hidden":true}}', - 'flderd3a3rc,fldel2i4v7v,fldconkpc7g,fld7smzf5np,fldelspnzaq,fldpkr0phjz,fldmz9qd18u,fldcamelfi7,fld7a5vkk4j,fldqojjbrau,fldpq4mvj6c,fldtgvzjaoj,fldysr6gonr,fld3wri112p,fldqo1swr94,fldgbowxfbc', - '{"left":["fldel2i4v7v"],"right":[]}', - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw70p8od12', - 1684597096588, - 1684938111182, - NULL, - 'tblwqjcq0x8', - 'Company', - 0, - 'grid', - NULL, - NULL, - NULL, - 'fld56n18njt', - NULL, - NULL, - 'fldzfu3x1ft,fldo4mvc3bq,fldozbddvfk,fldapuzxp1y,fldurfpiosy,fld2mh42tvf,fldrjp6v8xl,fldlosp8skm,fldamnv8ghw', - '{"left":["fldo4mvc3bq"],"right":[]}', - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw9p12yoag', - 1684599288325, - 1684599288325, - NULL, - 'tbl4ezqb49a', - 'Title', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw3qge14qx', - 1684655636183, - 1685213011118, - NULL, - 'tbl2za35hbg', - 'Employee onboarding', - 0, - 'grid', - NULL, - 'fldr3t33atc', - 'fldui7hrx2t', - NULL, - NULL, - NULL, - 'fldo6wz3szd,fldskwotpjg,fldr3t33atc,fldd55dsm2m,fldxx0cyu8w,fldqjxpupfu,fld19njyj50,fld67w65koz,fld92yn7hcf,fldyxr4fgcj,fld52ryjekr,fldwbr3sb09,fldfpeufgq3,fldui7hrx2t,fld38j2aoqw,fldmjxybwnt,fldntjvterl,fldu3ll00ho,fldy60tdkfr,fld4a04leij,fldng2e0uhl,fldkd8gvemb,fld5pgga2xx', - '{"left":["fldskwotpjg"],"right":[]}', - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw2j74tv49', - 1684655754437, - 1685265668630, - NULL, - 'tblruubokdc', - 'Employees', - 1, - 'grid', - NULL, - NULL, - NULL, - 'fldq5ohh7hx', - NULL, - '{"fldhrrqqlqh":{"hidden":false},"fldjrqmbjni":{"hidden":true},"fldgt1q5u09":{"hidden":true},"fld462h34dx":{"hidden":true},"fldzpxkf4wc":{"hidden":true}}', - 'fldh65rro60,fldhrrqqlqh,fld0gmmj29q,fldjrqmbjni,fldgt1q5u09,fld462h34dx,fldzpxkf4wc,fld3814mrgg,fldylxmreki,fldq5ohh7hx,fldtnny9yk9', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viws2429fm1', - 1685172790221, - 1685212314492, - NULL, - 'tblk4h9pgm7', - 'Project details', - 0, - 'grid', - '[{"fieldId":"fldtq3ctq2v","direction":"asc"}]', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldz1tn18w7,fldtq3ctq2v,fldy5jci1it,fldbjwrkl4w,fldlad9mr00,flds9gyvh1y,fld1zc9irou,fldnktdp6ej,flds4gpji6k,fldvvjbi1nv,fld7m1scjcc,fldzpcp0ouz,fld7iz2x2bs,fld749c7m6l,fld22ldcbag,fld8uonlrvg,fld6xpgey7o,fld6r6a1hc9,fld19p1ahm5,fldtdqxqkhr,fldzhfhodco,flde0medsct,fld5dje464n,fldn3txeox5,fldy4xklvtp,fld4h9alzho,fldw0xhn5du', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwdia22qi1', - 1685174072672, - 1685174177426, - 1685174177426, - 'tblk4h9pgm7', - '视图 2', - 0, - 'tree', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldz1tn18w7,fldf5jx5k3p,fldtq3ctq2v,fldy5jci1it,fldbjwrkl4w,fldlad9mr00,fld7u72oymt,fldyldbx3am', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwb3fp8xs2', - 1685174186434, - 1685174275023, - 1685174275023, - 'tblk4h9pgm7', - 'view 2', - 0, - 'tree', - NULL, - NULL, - NULL, - 'fld7u72oymt', - NULL, - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwgtqmkuso', - 1685174348988, - 1685210615477, - NULL, - 'tblpgqt9f8e', - 'Subcontractors', - 0, - 'grid', - '[{"fieldId":"fldp18kok8t","direction":"asc"}]', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldja1i3sed,fld5vejsyk6,fld8yjkgwax,fldp18kok8t,fldrl3wtwgi,fldjjk7jq88,fldrf5tre1y,fld5dfxirz4,fldin0o52s2,fld234mahi3,fldknol0wfv,flda93at8lf,fldqetskkmf,fldmv3t03kj', - '{"left":["fld5vejsyk6"],"right":[]}', - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwdhyehe16', - 1685174750727, - 1685209705618, - NULL, - 'tblfx77neny', - 'Project overview', - 0, - 'grid', - '[{"fieldId":"fldz6ialch3","direction":"asc"}]', - NULL, - NULL, - NULL, - NULL, - NULL, - 'fld2z8lm0nq,fldi3ctnklu,fldz6ialch3,fldldugufai,fld6ipbvk1v,fldq4vl65vq,fldxgzu2rfm,fldxjfi8nvf,fldx46wrlru,fldisycq2kk,fldf3858jba,fldzcbm7d6f,fldfhnwfm1d,fld5tprv6oh,fld9k1d6632,fldqt93dh02,fldicbkx09x,fldrwyxeapl,fldifd9g29a', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw7p200nda', - 1685178004172, - 1685212657183, - 1685212657182, - 'tblk4h9pgm7', - 'view 2', - 0, - 'tree', - NULL, - NULL, - NULL, - 'fldome9lb5l', - NULL, - NULL, - 'fldz1tn18w7,fldtq3ctq2v,fldy5jci1it,fldbjwrkl4w,fldlad9mr00,flds9gyvh1y,fld1zc9irou,fldnktdp6ej,flds4gpji6k,fldvvjbi1nv,fld7m1scjcc,fldzpcp0ouz,fld7iz2x2bs,fld749c7m6l,fld22ldcbag,fld8uonlrvg,fld6xpgey7o,fld6r6a1hc9,fld19p1ahm5,fldtdqxqkhr,fldzhfhodco,flde0medsct,fld5dje464n,fldn3txeox5,fldy4xklvtp,fld4h9alzho,fldw0xhn5du', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwdec4oi8c', - 1685178619603, - 1685178638997, - NULL, - 'tblq36e537c', - 'test', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldgevznri1,fld3nlurfbt,fldgx3uro1u,fldhrtgoei0,flduskdkw7q,fldbti1u8mz,fldft7edqw6,fldh0blyv2m', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwimtmwzd0', - 1685212064373, - 1685212097462, - NULL, - 'tblpgqt9f8e', - 'Structural subcontractors', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - '[{"type":"select","operator":"$eq","value":"optednbl","path":"fldmv3t03kj"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwbcscykkd', - 1685212115250, - 1685212273465, - NULL, - 'tblpgqt9f8e', - 'Service subcontractors', - 0, - 'dashboard', - NULL, - NULL, - 'flda93at8lf', - NULL, - '[{"type":"select","operator":"$eq","value":"optqe1bf","path":"fldmv3t03kj"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw1hmtgok8', - 1685212659128, - 1685212689119, - NULL, - 'tblk4h9pgm7', - 'In construction', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - '[{"type":"select","operator":"$eq","value":"optbywmt","path":"fldw0xhn5du"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw2oflfayp', - 1685212693254, - 1685212716697, - NULL, - 'tblk4h9pgm7', - 'In quality control', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - '[{"type":"select","operator":"$eq","value":"optegnto","path":"fldw0xhn5du"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw1afphzlj', - 1685212726951, - 1685212751699, - NULL, - 'tblk4h9pgm7', - 'Done', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - '[{"type":"select","operator":"$eq","value":"optt4gtr","path":"fldw0xhn5du"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwv5pxkvis', - 1685212754386, - 1685212797704, - NULL, - 'tblk4h9pgm7', - 'Not stated', - 0, - 'grid', - '[{"fieldId":"fldtq3ctq2v","direction":"asc"}]', - NULL, - NULL, - NULL, - '[{"type":"select","operator":"$eq","value":"optxuzzu","path":"fldw0xhn5du"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwbbwf8skf', - 1685212836798, - 1685212840874, - 1685212840874, - 'tblq36e537c', - 'test', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldgevznri1,fld3nlurfbt,fldgx3uro1u,fldhrtgoei0,flduskdkw7q,fldbti1u8mz,fldft7edqw6,fldh0blyv2m', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw44oqpmyw', - 1685212842696, - 1685212845932, - 1685212845932, - 'tblq36e537c', - 'test', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'fldgevznri1,fld3nlurfbt,fldgx3uro1u,fldhrtgoei0,flduskdkw7q,fldbti1u8mz,fldft7edqw6,fldh0blyv2m', - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwkwz6g9js', - 1685212891474, - 1685212908236, - 1685212908235, - 'tbl4undb0lh', - 'view 2', - 0, - 'calendar', - NULL, - NULL, - 'fldjyupbqlm', - NULL, - NULL, - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viw64ia4fxz', - 1685212912411, - 1685265828391, - NULL, - 'tbl4undb0lh', - 'Board', - 0, - 'kanban', - NULL, - 'fld4sf2mdr8', - NULL, - NULL, - '[{"type":"created-by","operator":"$eq","value":"usrbuajh55q","path":"fldx5w2pcft"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwmc5m5646', - 1685212920300, - 1685212985426, - NULL, - 'tbl4undb0lh', - 'New', - 0, - 'grid', - NULL, - NULL, - NULL, - NULL, - '[{"type":"select","operator":"$eq","value":"optuo8m1","path":"fld4sf2mdr8"}]', - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwoxmuxqte', - 1685213067197, - 1685213067197, - NULL, - 'tblfx77neny', - 'view 2', - 0, - 'dashboard', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwab1ycczl', - 1685213145496, - 1685213145496, - NULL, - 'tblpgqt9f8e', - 'view 4', - 0, - 'dashboard', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwe6cxqgup', - 1685213158771, - 1685213163305, - NULL, - 'tblpgqt9f8e', - 'view 5', - 0, - 'kanban', - NULL, - 'fld5dfxirz4', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwufxtr4ao', - 1685213176903, - 1685213176903, - NULL, - 'tblk4h9pgm7', - 'view 6', - 0, - 'dashboard', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 'short' - ); -INSERT INTO undb_view -VALUES( - 'viwbo3rzlbe', - 1685265649317, - 1685265971335, - NULL, - 'tblruubokdc', - 'Tree', - 0, - 'tree', - NULL, - NULL, - NULL, - 'fldq5ohh7hx', - NULL, - NULL, - NULL, - NULL, - 'short' - ); +INSERT INTO undb_view VALUES('viwnxi5l3qi',1684577267431,1685265723802,NULL,'tbl4undb0lh','Deal Tracker',1,'grid',NULL,NULL,'fld4sf2mdr8','fldjyupbqlm',NULL,NULL,'{"fld8ql20jlm":{"hidden":false},"fld7vd9ir75":{"hidden":true}}','fldopx87187,fld7m4e9dbz,fld4sf2mdr8,fldx5w2pcft,fldtefbcm18,fld5vld4clt,fldghc0rw09,fldvi5kqyg9,fldjyupbqlm,fldqpn61v8h,fld2u4gkap9,fld7vd9ir75,fld8ql20jlm,fldxq7kp4eu','{"left":["fld7m4e9dbz"],"right":[]}','short'); +INSERT INTO undb_view VALUES('viw1f88x075',1684577324094,1685265889967,NULL,'tblramxgp7z','Contacts',1,'grid',NULL,NULL,NULL,NULL,NULL,NULL,'{"fldconkpc7g":{"hidden":true},"fld7smzf5np":{"hidden":true},"fldelspnzaq":{"hidden":true},"fldpkr0phjz":{"hidden":true}}','flderd3a3rc,fldel2i4v7v,fldconkpc7g,fld7smzf5np,fldelspnzaq,fldpkr0phjz,fldmz9qd18u,fldcamelfi7,fld7a5vkk4j,fldqojjbrau,fldpq4mvj6c,fldtgvzjaoj,fldysr6gonr,fld3wri112p,fldqo1swr94,fldgbowxfbc','{"left":["fldel2i4v7v"],"right":[]}','short'); +INSERT INTO undb_view VALUES('viw70p8od12',1684597096588,1684938111182,NULL,'tblwqjcq0x8','Company',0,'grid',NULL,NULL,NULL,NULL,'fld56n18njt',NULL,NULL,'fldzfu3x1ft,fldo4mvc3bq,fldozbddvfk,fldapuzxp1y,fldurfpiosy,fld2mh42tvf,fldrjp6v8xl,fldlosp8skm,fldamnv8ghw','{"left":["fldo4mvc3bq"],"right":[]}','short'); +INSERT INTO undb_view VALUES('viw9p12yoag',1684599288325,1684599288325,NULL,'tbl4ezqb49a','Title',0,'grid',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viw3qge14qx',1684655636183,1685213011118,NULL,'tbl2za35hbg','Employee onboarding',0,'grid',NULL,NULL,'fldr3t33atc','fldui7hrx2t',NULL,NULL,NULL,'fldo6wz3szd,fldskwotpjg,fldr3t33atc,fldd55dsm2m,fldxx0cyu8w,fldqjxpupfu,fld19njyj50,fld67w65koz,fld92yn7hcf,fldyxr4fgcj,fld52ryjekr,fldwbr3sb09,fldfpeufgq3,fldui7hrx2t,fld38j2aoqw,fldmjxybwnt,fldntjvterl,fldu3ll00ho,fldy60tdkfr,fld4a04leij,fldng2e0uhl,fldkd8gvemb,fld5pgga2xx','{"left":["fldskwotpjg"],"right":[]}','short'); +INSERT INTO undb_view VALUES('viw2j74tv49',1684655754437,1685265668630,NULL,'tblruubokdc','Employees',1,'grid',NULL,NULL,NULL,NULL,'fldq5ohh7hx',NULL,'{"fldhrrqqlqh":{"hidden":false},"fldjrqmbjni":{"hidden":true},"fldgt1q5u09":{"hidden":true},"fld462h34dx":{"hidden":true},"fldzpxkf4wc":{"hidden":true}}','fldh65rro60,fldhrrqqlqh,fld0gmmj29q,fldjrqmbjni,fldgt1q5u09,fld462h34dx,fldzpxkf4wc,fld3814mrgg,fldylxmreki,fldq5ohh7hx,fldtnny9yk9',NULL,'short'); +INSERT INTO undb_view VALUES('viws2429fm1',1685172790221,1685212314492,NULL,'tblk4h9pgm7','Project details',0,'grid','[{"fieldId":"fldtq3ctq2v","direction":"asc"}]',NULL,NULL,NULL,NULL,NULL,NULL,'fldz1tn18w7,fldtq3ctq2v,fldy5jci1it,fldbjwrkl4w,fldlad9mr00,flds9gyvh1y,fld1zc9irou,fldnktdp6ej,flds4gpji6k,fldvvjbi1nv,fld7m1scjcc,fldzpcp0ouz,fld7iz2x2bs,fld749c7m6l,fld22ldcbag,fld8uonlrvg,fld6xpgey7o,fld6r6a1hc9,fld19p1ahm5,fldtdqxqkhr,fldzhfhodco,flde0medsct,fld5dje464n,fldn3txeox5,fldy4xklvtp,fld4h9alzho,fldw0xhn5du',NULL,'short'); +INSERT INTO undb_view VALUES('viwdia22qi1',1685174072672,1685174177426,1685174177426,'tblk4h9pgm7','视图 2',0,'tree',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldz1tn18w7,fldf5jx5k3p,fldtq3ctq2v,fldy5jci1it,fldbjwrkl4w,fldlad9mr00,fld7u72oymt,fldyldbx3am',NULL,'short'); +INSERT INTO undb_view VALUES('viwb3fp8xs2',1685174186434,1685174275023,1685174275023,'tblk4h9pgm7','view 2',0,'tree',NULL,NULL,NULL,NULL,'fld7u72oymt',NULL,NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwgtqmkuso',1685174348988,1685210615477,NULL,'tblpgqt9f8e','Subcontractors',0,'grid','[{"fieldId":"fldp18kok8t","direction":"asc"}]',NULL,NULL,NULL,NULL,NULL,NULL,'fldja1i3sed,fld5vejsyk6,fld8yjkgwax,fldp18kok8t,fldrl3wtwgi,fldjjk7jq88,fldrf5tre1y,fld5dfxirz4,fldin0o52s2,fld234mahi3,fldknol0wfv,flda93at8lf,fldqetskkmf,fldmv3t03kj','{"left":["fld5vejsyk6"],"right":[]}','short'); +INSERT INTO undb_view VALUES('viwdhyehe16',1685174750727,1685209705618,NULL,'tblfx77neny','Project overview',0,'grid','[{"fieldId":"fldz6ialch3","direction":"asc"}]',NULL,NULL,NULL,NULL,NULL,NULL,'fld2z8lm0nq,fldi3ctnklu,fldz6ialch3,fldldugufai,fld6ipbvk1v,fldq4vl65vq,fldxgzu2rfm,fldxjfi8nvf,fldx46wrlru,fldisycq2kk,fldf3858jba,fldzcbm7d6f,fldfhnwfm1d,fld5tprv6oh,fld9k1d6632,fldqt93dh02,fldicbkx09x,fldrwyxeapl,fldifd9g29a',NULL,'short'); +INSERT INTO undb_view VALUES('viw7p200nda',1685178004172,1685212657183,1685212657182,'tblk4h9pgm7','view 2',0,'tree',NULL,NULL,NULL,NULL,'fldome9lb5l',NULL,NULL,'fldz1tn18w7,fldtq3ctq2v,fldy5jci1it,fldbjwrkl4w,fldlad9mr00,flds9gyvh1y,fld1zc9irou,fldnktdp6ej,flds4gpji6k,fldvvjbi1nv,fld7m1scjcc,fldzpcp0ouz,fld7iz2x2bs,fld749c7m6l,fld22ldcbag,fld8uonlrvg,fld6xpgey7o,fld6r6a1hc9,fld19p1ahm5,fldtdqxqkhr,fldzhfhodco,flde0medsct,fld5dje464n,fldn3txeox5,fldy4xklvtp,fld4h9alzho,fldw0xhn5du',NULL,'short'); +INSERT INTO undb_view VALUES('viwdec4oi8c',1685178619603,1685178638997,NULL,'tblq36e537c','test',0,'grid',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldgevznri1,fld3nlurfbt,fldgx3uro1u,fldhrtgoei0,flduskdkw7q,fldbti1u8mz,fldft7edqw6,fldh0blyv2m',NULL,'short'); +INSERT INTO undb_view VALUES('viwimtmwzd0',1685212064373,1685212097462,NULL,'tblpgqt9f8e','Structural subcontractors',0,'grid',NULL,NULL,NULL,NULL,NULL,'[{"type":"select","operator":"$eq","value":"optednbl","path":"fldmv3t03kj"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwbcscykkd',1685212115250,1685212273465,NULL,'tblpgqt9f8e','Service subcontractors',0,'dashboard',NULL,NULL,NULL,'flda93at8lf',NULL,'[{"type":"select","operator":"$eq","value":"optqe1bf","path":"fldmv3t03kj"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viw1hmtgok8',1685212659128,1685212689119,NULL,'tblk4h9pgm7','In construction',0,'grid',NULL,NULL,NULL,NULL,NULL,'[{"type":"select","operator":"$eq","value":"optbywmt","path":"fldw0xhn5du"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viw2oflfayp',1685212693254,1685212716697,NULL,'tblk4h9pgm7','In quality control',0,'grid',NULL,NULL,NULL,NULL,NULL,'[{"type":"select","operator":"$eq","value":"optegnto","path":"fldw0xhn5du"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viw1afphzlj',1685212726951,1685212751699,NULL,'tblk4h9pgm7','Done',0,'grid',NULL,NULL,NULL,NULL,NULL,'[{"type":"select","operator":"$eq","value":"optt4gtr","path":"fldw0xhn5du"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwv5pxkvis',1685212754386,1685212797704,NULL,'tblk4h9pgm7','Not stated',0,'grid','[{"fieldId":"fldtq3ctq2v","direction":"asc"}]',NULL,NULL,NULL,NULL,'[{"type":"select","operator":"$eq","value":"optxuzzu","path":"fldw0xhn5du"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwbbwf8skf',1685212836798,1685212840874,1685212840874,'tblq36e537c','test',0,'grid',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldgevznri1,fld3nlurfbt,fldgx3uro1u,fldhrtgoei0,flduskdkw7q,fldbti1u8mz,fldft7edqw6,fldh0blyv2m',NULL,'short'); +INSERT INTO undb_view VALUES('viw44oqpmyw',1685212842696,1685212845932,1685212845932,'tblq36e537c','test',0,'grid',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'fldgevznri1,fld3nlurfbt,fldgx3uro1u,fldhrtgoei0,flduskdkw7q,fldbti1u8mz,fldft7edqw6,fldh0blyv2m',NULL,'short'); +INSERT INTO undb_view VALUES('viwkwz6g9js',1685212891474,1685212908236,1685212908235,'tbl4undb0lh','view 2',0,'calendar',NULL,NULL,'fldjyupbqlm',NULL,NULL,NULL,NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viw64ia4fxz',1685212912411,1685265828391,NULL,'tbl4undb0lh','Board',0,'kanban',NULL,'fld4sf2mdr8',NULL,NULL,NULL,'[{"type":"created-by","operator":"$eq","value":"usrbuajh55q","path":"fldx5w2pcft"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwmc5m5646',1685212920300,1685212985426,NULL,'tbl4undb0lh','New',0,'grid',NULL,NULL,NULL,NULL,NULL,'[{"type":"select","operator":"$eq","value":"optuo8m1","path":"fld4sf2mdr8"}]',NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwoxmuxqte',1685213067197,1685213067197,NULL,'tblfx77neny','view 2',0,'dashboard',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwab1ycczl',1685213145496,1685213145496,NULL,'tblpgqt9f8e','view 4',0,'dashboard',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwe6cxqgup',1685213158771,1685213163305,NULL,'tblpgqt9f8e','view 5',0,'kanban',NULL,'fld5dfxirz4',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwufxtr4ao',1685213176903,1685213176903,NULL,'tblk4h9pgm7','view 6',0,'dashboard',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'short'); +INSERT INTO undb_view VALUES('viwbo3rzlbe',1685265649317,1685265971335,NULL,'tblruubokdc','Tree',0,'tree',NULL,NULL,NULL,NULL,'fldq5ohh7hx',NULL,NULL,NULL,NULL,'short'); CREATE TABLE `tbl4undb0lh` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -7640,486 +587,30 @@ CREATE TABLE `tbl4undb0lh` ( `fld2u4gkap9` datetime, `fldvi5kqyg9` float ); -INSERT INTO tbl4undb0lh -VALUES( - 1, - 'recf03f2mz9', - '2023-05-20 16:07:55', - 'usrzvhv8srb', - '2023-05-24 13:30:02', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 1', - 'optapz93', - 'opty4o0z', - '2023-05-16T16:00:00.000Z', - '2023-06-29T16:00:00.000Z', - 10000.0, - NULL, - '2023-05-16T16:00:00.000Z', - 3000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 2, - 'recjpd9hcvj', - '2023-05-20 16:21:05', - 'usrzvhv8srb', - '2023-05-24 13:30:09', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 2', - 'opts4t4w', - 'optua38g', - '2023-05-03T16:00:00.000Z', - '2023-07-26T16:00:00.000Z', - 26000.0, - NULL, - '2023-05-03T16:00:00.000Z', - 26000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 3, - 'rec1mp03meb', - '2023-05-20 16:22:31', - 'usrzvhv8srb', - '2023-05-24 13:30:15', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 3', - 'optdczmv', - 'opt68d8z', - '2023-01-05T16:00:00.000Z', - '2023-05-11T16:00:00.000Z', - 37000.0, - '2023-05-11T16:00:00.000Z', - '2023-01-05T16:00:00.000Z', - 37000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 4, - 'rec4cxfpnno', - '2023-05-20 16:23:26', - 'usrzvhv8srb', - '2023-05-24 13:30:21', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 4', - 'optuo8m1', - 'optua38g', - '2023-05-29T16:00:00.000Z', - '2024-01-30T16:00:00.000Z', - 100000.0, - NULL, - '2023-05-18T16:00:00.000Z', - 100000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 5, - 'recvr6i19an', - '2023-05-24 13:36:15', - 'usrbuajh55q', - '2023-05-24 13:36:26', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 5', - 'opteh974', - 'opty4o0z', - '2023-05-23T16:00:00.000Z', - '2023-11-23T16:00:00.000Z', - NULL, - NULL, - '2023-05-23T16:00:00.000Z', - 9500.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 6, - 'recbo0p7q5c', - '2023-05-24 14:10:30', - 'usrbuajh55q', - '2023-05-24 14:10:55', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 6', - 'opts4t4w', - 'opty4o0z', - '2023-05-10T16:00:00.000Z', - '2023-10-24T16:00:00.000Z', - NULL, - NULL, - '2023-05-10T16:00:00.000Z', - 10000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 7, - 'recll6gqgft', - '2023-05-27 18:41:13', - 'usrbuajh55q', - '2023-05-27 18:41:13', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 3', - 'optdczmv', - 'opt68d8z', - '2023-01-05T16:00:00.000Z', - '2023-05-11T16:00:00.000Z', - NULL, - '2023-05-11T16:00:00.000Z', - '2023-01-05T16:00:00.000Z', - 37000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 8, - 'rec3rjjcwnp', - '2023-05-27 18:41:13', - 'usrbuajh55q', - '2023-05-27 18:41:13', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 4', - 'optuo8m1', - 'optua38g', - '2023-05-29T16:00:00.000Z', - '2024-01-30T16:00:00.000Z', - NULL, - NULL, - '2023-05-18T16:00:00.000Z', - 100000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 9, - 'rec7c7cmxtg', - '2023-05-27 18:41:13', - 'usrbuajh55q', - '2023-05-27 18:41:13', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 6', - 'opts4t4w', - 'opty4o0z', - '2023-05-10T16:00:00.000Z', - '2023-10-24T16:00:00.000Z', - NULL, - NULL, - '2023-05-10T16:00:00.000Z', - 10000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 10, - 'recdhn2g0rx', - '2023-05-27 18:41:13', - 'usrbuajh55q', - '2023-05-27 18:41:13', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 1', - 'optapz93', - 'opty4o0z', - '2023-05-16T16:00:00.000Z', - '2023-06-29T16:00:00.000Z', - NULL, - NULL, - '2023-05-16T16:00:00.000Z', - 3000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 11, - 'reci5wlyz4x', - '2023-05-27 18:41:13', - 'usrbuajh55q', - '2023-05-27 18:41:13', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 2', - 'opts4t4w', - 'optua38g', - '2023-05-03T16:00:00.000Z', - '2023-07-26T16:00:00.000Z', - NULL, - NULL, - '2023-05-03T16:00:00.000Z', - 26000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 12, - 'reczr96nh4u', - '2023-05-27 18:41:13', - 'usrbuajh55q', - '2023-05-27 18:41:13', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 5', - 'opteh974', - 'opty4o0z', - '2023-05-23T16:00:00.000Z', - '2023-11-23T16:00:00.000Z', - NULL, - NULL, - '2023-05-23T16:00:00.000Z', - 9500.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 13, - 'rec29ubkfhs', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 3', - 'optdczmv', - 'opt68d8z', - '2023-01-05T16:00:00.000Z', - '2023-05-11T16:00:00.000Z', - NULL, - '2023-05-11T16:00:00.000Z', - '2023-01-05T16:00:00.000Z', - 37000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 14, - 'recotkwjqbx', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 4', - 'optuo8m1', - 'optua38g', - '2023-05-29T16:00:00.000Z', - '2024-01-30T16:00:00.000Z', - NULL, - NULL, - '2023-05-18T16:00:00.000Z', - 100000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 15, - 'recyvrgke91', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 4', - 'optuo8m1', - 'optua38g', - '2023-05-29T16:00:00.000Z', - '2024-01-30T16:00:00.000Z', - NULL, - NULL, - '2023-05-18T16:00:00.000Z', - 100000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 16, - 'recag7todql', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 6', - 'opts4t4w', - 'opty4o0z', - '2023-05-10T16:00:00.000Z', - '2023-10-24T16:00:00.000Z', - NULL, - NULL, - '2023-05-10T16:00:00.000Z', - 10000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 17, - 'recq9k9x3sq', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 6', - 'opts4t4w', - 'opty4o0z', - '2023-05-10T16:00:00.000Z', - '2023-10-24T16:00:00.000Z', - NULL, - NULL, - '2023-05-10T16:00:00.000Z', - 10000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 18, - 'recsiu01ui6', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 1', - 'optapz93', - 'opty4o0z', - '2023-05-16T16:00:00.000Z', - '2023-06-29T16:00:00.000Z', - NULL, - NULL, - '2023-05-16T16:00:00.000Z', - 3000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 19, - 'recg8yzwyrt', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 1', - 'optapz93', - 'opty4o0z', - '2023-05-16T16:00:00.000Z', - '2023-06-29T16:00:00.000Z', - NULL, - NULL, - '2023-05-16T16:00:00.000Z', - 3000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 20, - 'rec7rb8xkey', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 2', - 'opts4t4w', - 'optua38g', - '2023-05-03T16:00:00.000Z', - '2023-07-26T16:00:00.000Z', - NULL, - NULL, - '2023-05-03T16:00:00.000Z', - 26000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 21, - 'recy7j5vxfl', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 2', - 'opts4t4w', - 'optua38g', - '2023-05-03T16:00:00.000Z', - '2023-07-26T16:00:00.000Z', - NULL, - NULL, - '2023-05-03T16:00:00.000Z', - 26000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 22, - 'rec2vi6q7v7', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 3', - 'optdczmv', - 'opt68d8z', - '2023-01-05T16:00:00.000Z', - '2023-05-11T16:00:00.000Z', - NULL, - '2023-05-11T16:00:00.000Z', - '2023-01-05T16:00:00.000Z', - 37000.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 23, - 'reciumd67fb', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 5', - 'opteh974', - 'opty4o0z', - '2023-05-23T16:00:00.000Z', - '2023-11-23T16:00:00.000Z', - NULL, - NULL, - '2023-05-23T16:00:00.000Z', - 9500.0 - ); -INSERT INTO tbl4undb0lh -VALUES( - 24, - 'rect5769du8', - '2023-05-27 18:41:20', - 'usrbuajh55q', - '2023-05-27 18:41:20', - 'usrbuajh55q', - NULL, - NULL, - 'Deal Name 5', - 'opteh974', - 'opty4o0z', - '2023-05-23T16:00:00.000Z', - '2023-11-23T16:00:00.000Z', - NULL, - NULL, - '2023-05-23T16:00:00.000Z', - 9500.0 - ); +INSERT INTO tbl4undb0lh VALUES(1,'recf03f2mz9','2023-05-20 16:07:55','usrzvhv8srb','2023-05-24 13:30:02','usrbuajh55q',NULL,NULL,'Deal Name 1','optapz93','opty4o0z','2023-05-16T16:00:00.000Z','2023-06-29T16:00:00.000Z',10000.0,NULL,'2023-05-16T16:00:00.000Z',3000.0); +INSERT INTO tbl4undb0lh VALUES(2,'recjpd9hcvj','2023-05-20 16:21:05','usrzvhv8srb','2023-05-24 13:30:09','usrbuajh55q',NULL,NULL,'Deal Name 2','opts4t4w','optua38g','2023-05-03T16:00:00.000Z','2023-07-26T16:00:00.000Z',26000.0,NULL,'2023-05-03T16:00:00.000Z',26000.0); +INSERT INTO tbl4undb0lh VALUES(3,'rec1mp03meb','2023-05-20 16:22:31','usrzvhv8srb','2023-05-24 13:30:15','usrbuajh55q',NULL,NULL,'Deal Name 3','optdczmv','opt68d8z','2023-01-05T16:00:00.000Z','2023-05-11T16:00:00.000Z',37000.0,'2023-05-11T16:00:00.000Z','2023-01-05T16:00:00.000Z',37000.0); +INSERT INTO tbl4undb0lh VALUES(4,'rec4cxfpnno','2023-05-20 16:23:26','usrzvhv8srb','2023-05-24 13:30:21','usrbuajh55q',NULL,NULL,'Deal Name 4','optuo8m1','optua38g','2023-05-29T16:00:00.000Z','2024-01-30T16:00:00.000Z',100000.0,NULL,'2023-05-18T16:00:00.000Z',100000.0); +INSERT INTO tbl4undb0lh VALUES(5,'recvr6i19an','2023-05-24 13:36:15','usrbuajh55q','2023-05-24 13:36:26','usrbuajh55q',NULL,NULL,'Deal Name 5','opteh974','opty4o0z','2023-05-23T16:00:00.000Z','2023-11-23T16:00:00.000Z',NULL,NULL,'2023-05-23T16:00:00.000Z',9500.0); +INSERT INTO tbl4undb0lh VALUES(6,'recbo0p7q5c','2023-05-24 14:10:30','usrbuajh55q','2023-05-24 14:10:55','usrbuajh55q',NULL,NULL,'Deal Name 6','opts4t4w','opty4o0z','2023-05-10T16:00:00.000Z','2023-10-24T16:00:00.000Z',NULL,NULL,'2023-05-10T16:00:00.000Z',10000.0); +INSERT INTO tbl4undb0lh VALUES(7,'recll6gqgft','2023-05-27 18:41:13','usrbuajh55q','2023-05-27 18:41:13','usrbuajh55q',NULL,NULL,'Deal Name 3','optdczmv','opt68d8z','2023-01-05T16:00:00.000Z','2023-05-11T16:00:00.000Z',NULL,'2023-05-11T16:00:00.000Z','2023-01-05T16:00:00.000Z',37000.0); +INSERT INTO tbl4undb0lh VALUES(8,'rec3rjjcwnp','2023-05-27 18:41:13','usrbuajh55q','2023-05-27 18:41:13','usrbuajh55q',NULL,NULL,'Deal Name 4','optuo8m1','optua38g','2023-05-29T16:00:00.000Z','2024-01-30T16:00:00.000Z',NULL,NULL,'2023-05-18T16:00:00.000Z',100000.0); +INSERT INTO tbl4undb0lh VALUES(9,'rec7c7cmxtg','2023-05-27 18:41:13','usrbuajh55q','2023-05-27 18:41:13','usrbuajh55q',NULL,NULL,'Deal Name 6','opts4t4w','opty4o0z','2023-05-10T16:00:00.000Z','2023-10-24T16:00:00.000Z',NULL,NULL,'2023-05-10T16:00:00.000Z',10000.0); +INSERT INTO tbl4undb0lh VALUES(10,'recdhn2g0rx','2023-05-27 18:41:13','usrbuajh55q','2023-05-27 18:41:13','usrbuajh55q',NULL,NULL,'Deal Name 1','optapz93','opty4o0z','2023-05-16T16:00:00.000Z','2023-06-29T16:00:00.000Z',NULL,NULL,'2023-05-16T16:00:00.000Z',3000.0); +INSERT INTO tbl4undb0lh VALUES(11,'reci5wlyz4x','2023-05-27 18:41:13','usrbuajh55q','2023-05-27 18:41:13','usrbuajh55q',NULL,NULL,'Deal Name 2','opts4t4w','optua38g','2023-05-03T16:00:00.000Z','2023-07-26T16:00:00.000Z',NULL,NULL,'2023-05-03T16:00:00.000Z',26000.0); +INSERT INTO tbl4undb0lh VALUES(12,'reczr96nh4u','2023-05-27 18:41:13','usrbuajh55q','2023-05-27 18:41:13','usrbuajh55q',NULL,NULL,'Deal Name 5','opteh974','opty4o0z','2023-05-23T16:00:00.000Z','2023-11-23T16:00:00.000Z',NULL,NULL,'2023-05-23T16:00:00.000Z',9500.0); +INSERT INTO tbl4undb0lh VALUES(13,'rec29ubkfhs','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 3','optdczmv','opt68d8z','2023-01-05T16:00:00.000Z','2023-05-11T16:00:00.000Z',NULL,'2023-05-11T16:00:00.000Z','2023-01-05T16:00:00.000Z',37000.0); +INSERT INTO tbl4undb0lh VALUES(14,'recotkwjqbx','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 4','optuo8m1','optua38g','2023-05-29T16:00:00.000Z','2024-01-30T16:00:00.000Z',NULL,NULL,'2023-05-18T16:00:00.000Z',100000.0); +INSERT INTO tbl4undb0lh VALUES(15,'recyvrgke91','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 4','optuo8m1','optua38g','2023-05-29T16:00:00.000Z','2024-01-30T16:00:00.000Z',NULL,NULL,'2023-05-18T16:00:00.000Z',100000.0); +INSERT INTO tbl4undb0lh VALUES(16,'recag7todql','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 6','opts4t4w','opty4o0z','2023-05-10T16:00:00.000Z','2023-10-24T16:00:00.000Z',NULL,NULL,'2023-05-10T16:00:00.000Z',10000.0); +INSERT INTO tbl4undb0lh VALUES(17,'recq9k9x3sq','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 6','opts4t4w','opty4o0z','2023-05-10T16:00:00.000Z','2023-10-24T16:00:00.000Z',NULL,NULL,'2023-05-10T16:00:00.000Z',10000.0); +INSERT INTO tbl4undb0lh VALUES(18,'recsiu01ui6','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 1','optapz93','opty4o0z','2023-05-16T16:00:00.000Z','2023-06-29T16:00:00.000Z',NULL,NULL,'2023-05-16T16:00:00.000Z',3000.0); +INSERT INTO tbl4undb0lh VALUES(19,'recg8yzwyrt','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 1','optapz93','opty4o0z','2023-05-16T16:00:00.000Z','2023-06-29T16:00:00.000Z',NULL,NULL,'2023-05-16T16:00:00.000Z',3000.0); +INSERT INTO tbl4undb0lh VALUES(20,'rec7rb8xkey','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 2','opts4t4w','optua38g','2023-05-03T16:00:00.000Z','2023-07-26T16:00:00.000Z',NULL,NULL,'2023-05-03T16:00:00.000Z',26000.0); +INSERT INTO tbl4undb0lh VALUES(21,'recy7j5vxfl','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 2','opts4t4w','optua38g','2023-05-03T16:00:00.000Z','2023-07-26T16:00:00.000Z',NULL,NULL,'2023-05-03T16:00:00.000Z',26000.0); +INSERT INTO tbl4undb0lh VALUES(22,'rec2vi6q7v7','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 3','optdczmv','opt68d8z','2023-01-05T16:00:00.000Z','2023-05-11T16:00:00.000Z',NULL,'2023-05-11T16:00:00.000Z','2023-01-05T16:00:00.000Z',37000.0); +INSERT INTO tbl4undb0lh VALUES(23,'reciumd67fb','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 5','opteh974','opty4o0z','2023-05-23T16:00:00.000Z','2023-11-23T16:00:00.000Z',NULL,NULL,'2023-05-23T16:00:00.000Z',9500.0); +INSERT INTO tbl4undb0lh VALUES(24,'rect5769du8','2023-05-27 18:41:20','usrbuajh55q','2023-05-27 18:41:20','usrbuajh55q',NULL,NULL,'Deal Name 5','opteh974','opty4o0z','2023-05-23T16:00:00.000Z','2023-11-23T16:00:00.000Z',NULL,NULL,'2023-05-23T16:00:00.000Z',9500.0); CREATE TABLE `fldtefbcm18_collaborator` ( `user_id` varchar(255) not null, `record_id` varchar(255) not null, @@ -8127,54 +618,30 @@ CREATE TABLE `fldtefbcm18_collaborator` ( foreign key(`record_id`) references `tbl4undb0lh`(`id`), primary key (`record_id`, `user_id`) ); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recf03f2mz9'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recjpd9hcvj'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rec1mp03meb'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rec4cxfpnno'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recvr6i19an'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recbo0p7q5c'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recll6gqgft'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rec3rjjcwnp'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rec7c7cmxtg'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recdhn2g0rx'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'reci5wlyz4x'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'reczr96nh4u'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rec29ubkfhs'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recotkwjqbx'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recyvrgke91'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recag7todql'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recq9k9x3sq'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recsiu01ui6'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recg8yzwyrt'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rec7rb8xkey'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'recy7j5vxfl'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rec2vi6q7v7'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'reciumd67fb'); -INSERT INTO fldtefbcm18_collaborator -VALUES('usrbuajh55q', 'rect5769du8'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recf03f2mz9'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recjpd9hcvj'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rec1mp03meb'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rec4cxfpnno'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recvr6i19an'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recbo0p7q5c'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recll6gqgft'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rec3rjjcwnp'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rec7c7cmxtg'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recdhn2g0rx'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','reci5wlyz4x'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','reczr96nh4u'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rec29ubkfhs'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recotkwjqbx'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recyvrgke91'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recag7todql'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recq9k9x3sq'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recsiu01ui6'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recg8yzwyrt'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rec7rb8xkey'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','recy7j5vxfl'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rec2vi6q7v7'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','reciumd67fb'); +INSERT INTO fldtefbcm18_collaborator VALUES('usrbuajh55q','rect5769du8'); CREATE TABLE `tblramxgp7z` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -8191,74 +658,10 @@ CREATE TABLE `tblramxgp7z` ( `fldpq4mvj6c` varchar(255), `fldgbowxfbc` varchar(255) ); -INSERT INTO tblramxgp7z -VALUES( - 1, - 'recqymnue1f', - '2023-05-20 16:09:42', - 'usrzvhv8srb', - '2023-05-20 16:27:29', - 'usrzvhv8srb', - NULL, - NULL, - 'Ambrose', - 'opt88amk', - 'Ambrose@email.com', - NULL, - '18765679998', - '' - ); -INSERT INTO tblramxgp7z -VALUES( - 2, - 'recth047g3f', - '2023-05-20 16:09:53', - 'usrzvhv8srb', - '2023-05-20 16:28:16', - 'usrzvhv8srb', - NULL, - NULL, - 'Vincent', - 'opt0ucwc', - 'Vincent@email.com', - NULL, - '13987467822', - '' - ); -INSERT INTO tblramxgp7z -VALUES( - 3, - 'rechywfw24h', - '2023-05-20 16:10:05', - 'usrzvhv8srb', - '2023-05-20 17:16:34', - 'usrzvhv8srb', - NULL, - NULL, - 'James', - 'optqutxq', - 'James@email.com', - NULL, - '17866547899', - '' - ); -INSERT INTO tblramxgp7z -VALUES( - 4, - 'recqjdtn4wj', - '2023-05-20 16:10:31', - 'usrzvhv8srb', - '2023-05-20 17:17:35', - 'usrzvhv8srb', - NULL, - NULL, - 'Bertran', - 'opt88amk', - 'Bertran@email.com', - NULL, - '13336457899', - '' - ); +INSERT INTO tblramxgp7z VALUES(1,'recqymnue1f','2023-05-20 16:09:42','usrzvhv8srb','2023-05-20 16:27:29','usrzvhv8srb',NULL,NULL,'Ambrose','opt88amk','Ambrose@email.com',NULL,'18765679998',''); +INSERT INTO tblramxgp7z VALUES(2,'recth047g3f','2023-05-20 16:09:53','usrzvhv8srb','2023-05-20 16:28:16','usrzvhv8srb',NULL,NULL,'Vincent','opt0ucwc','Vincent@email.com',NULL,'13987467822',''); +INSERT INTO tblramxgp7z VALUES(3,'rechywfw24h','2023-05-20 16:10:05','usrzvhv8srb','2023-05-20 17:16:34','usrzvhv8srb',NULL,NULL,'James','optqutxq','James@email.com',NULL,'17866547899',''); +INSERT INTO tblramxgp7z VALUES(4,'recqjdtn4wj','2023-05-20 16:10:31','usrzvhv8srb','2023-05-20 17:17:35','usrzvhv8srb',NULL,NULL,'Bertran','opt88amk','Bertran@email.com',NULL,'13336457899',''); CREATE TABLE `fld5vld4clt_tblramxgp7z_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -8266,54 +669,30 @@ CREATE TABLE `fld5vld4clt_tblramxgp7z_adjacency_list` ( foreign key(`from_id`) references `tbl4undb0lh`(`id`), primary key (`to_id`, `from_id`) ); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqymnue1f', 'recf03f2mz9'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'recjpd9hcvj'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('rechywfw24h', 'rec1mp03meb'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'rec4cxfpnno'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'recvr6i19an'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'recbo0p7q5c'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('rechywfw24h', 'recll6gqgft'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'rec3rjjcwnp'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'rec7c7cmxtg'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqymnue1f', 'recdhn2g0rx'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'reci5wlyz4x'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'reczr96nh4u'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('rechywfw24h', 'rec29ubkfhs'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'recotkwjqbx'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'recyvrgke91'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'recag7todql'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqjdtn4wj', 'recq9k9x3sq'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqymnue1f', 'recsiu01ui6'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recqymnue1f', 'recg8yzwyrt'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'rec7rb8xkey'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'recy7j5vxfl'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('rechywfw24h', 'rec2vi6q7v7'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'reciumd67fb'); -INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list -VALUES('recth047g3f', 'rect5769du8'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqymnue1f','recf03f2mz9'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','recjpd9hcvj'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('rechywfw24h','rec1mp03meb'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','rec4cxfpnno'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','recvr6i19an'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','recbo0p7q5c'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('rechywfw24h','recll6gqgft'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','rec3rjjcwnp'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','rec7c7cmxtg'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqymnue1f','recdhn2g0rx'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','reci5wlyz4x'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','reczr96nh4u'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('rechywfw24h','rec29ubkfhs'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','recotkwjqbx'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','recyvrgke91'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','recag7todql'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqjdtn4wj','recq9k9x3sq'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqymnue1f','recsiu01ui6'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recqymnue1f','recg8yzwyrt'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','rec7rb8xkey'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','recy7j5vxfl'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('rechywfw24h','rec2vi6q7v7'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','reciumd67fb'); +INSERT INTO fld5vld4clt_tblramxgp7z_adjacency_list VALUES('recth047g3f','rect5769du8'); CREATE TABLE `tblwqjcq0x8` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -8327,62 +706,10 @@ CREATE TABLE `tblwqjcq0x8` ( `fldrlmpebtz` varchar(255), `fldamnv8ghw` varchar(255) ); -INSERT INTO tblwqjcq0x8 -VALUES( - 1, - 'rec16l53qwc', - '2023-05-20 16:10:44', - 'usrzvhv8srb', - '2023-05-20 16:25:06', - 'usrzvhv8srb', - NULL, - NULL, - 'Company Name 1', - 'CEO', - 'CEO' - ); -INSERT INTO tblwqjcq0x8 -VALUES( - 2, - 'recwth68evr', - '2023-05-20 16:11:03', - 'usrzvhv8srb', - '2023-05-20 17:21:07', - 'usrzvhv8srb', - NULL, - NULL, - 'Company Name 2', - 'COO', - 'COO' - ); -INSERT INTO tblwqjcq0x8 -VALUES( - 3, - 'rec4gj4ju56', - '2023-05-20 16:13:45', - 'usrzvhv8srb', - '2023-05-20 17:21:21', - 'usrzvhv8srb', - NULL, - NULL, - 'Company Name 3', - 'CPO', - 'CPO' - ); -INSERT INTO tblwqjcq0x8 -VALUES( - 4, - 'rec4htof4vx', - '2023-05-24 14:18:06', - 'usrbuajh55q', - '2023-05-24 14:20:26', - 'usrbuajh55q', - NULL, - NULL, - 'Company Name 4', - NULL, - 'CTO' - ); +INSERT INTO tblwqjcq0x8 VALUES(1,'rec16l53qwc','2023-05-20 16:10:44','usrzvhv8srb','2023-05-20 16:25:06','usrzvhv8srb',NULL,NULL,'Company Name 1','CEO','CEO'); +INSERT INTO tblwqjcq0x8 VALUES(2,'recwth68evr','2023-05-20 16:11:03','usrzvhv8srb','2023-05-20 17:21:07','usrzvhv8srb',NULL,NULL,'Company Name 2','COO','COO'); +INSERT INTO tblwqjcq0x8 VALUES(3,'rec4gj4ju56','2023-05-20 16:13:45','usrzvhv8srb','2023-05-20 17:21:21','usrzvhv8srb',NULL,NULL,'Company Name 3','CPO','CPO'); +INSERT INTO tblwqjcq0x8 VALUES(4,'rec4htof4vx','2023-05-24 14:18:06','usrbuajh55q','2023-05-24 14:20:26','usrbuajh55q',NULL,NULL,'Company Name 4',NULL,'CTO'); CREATE TABLE `fldtgvzjaoj_tblwqjcq0x8_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -8390,14 +717,10 @@ CREATE TABLE `fldtgvzjaoj_tblwqjcq0x8_adjacency_list` ( foreign key(`from_id`) references `tblramxgp7z`(`id`), primary key (`to_id`, `from_id`) ); -INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list -VALUES('rec16l53qwc', 'recqymnue1f'); -INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list -VALUES('recwth68evr', 'recth047g3f'); -INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list -VALUES('rec4gj4ju56', 'rechywfw24h'); -INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list -VALUES('rec4gj4ju56', 'recqjdtn4wj'); +INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list VALUES('rec16l53qwc','recqymnue1f'); +INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list VALUES('recwth68evr','recth047g3f'); +INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list VALUES('rec4gj4ju56','rechywfw24h'); +INSERT INTO fldtgvzjaoj_tblwqjcq0x8_adjacency_list VALUES('rec4gj4ju56','recqjdtn4wj'); CREATE TABLE `fld6pd0v553_tblwqjcq0x8_closure_table` ( `child_id` varchar(255) not null, `parent_id` varchar(255) not null, @@ -8406,10 +729,8 @@ CREATE TABLE `fld6pd0v553_tblwqjcq0x8_closure_table` ( foreign key(`parent_id`) references `tblwqjcq0x8`(`id`) on delete CASCADE, primary key (`child_id`, `parent_id`) ); -INSERT INTO fld6pd0v553_tblwqjcq0x8_closure_table -VALUES('rec16l53qwc', 'rec16l53qwc', 0); -INSERT INTO fld6pd0v553_tblwqjcq0x8_closure_table -VALUES('recwth68evr', 'recwth68evr', 0); +INSERT INTO fld6pd0v553_tblwqjcq0x8_closure_table VALUES('rec16l53qwc','rec16l53qwc',0); +INSERT INTO fld6pd0v553_tblwqjcq0x8_closure_table VALUES('recwth68evr','recwth68evr',0); CREATE TABLE `tbl4ezqb49a` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -8421,114 +742,15 @@ CREATE TABLE `tbl4ezqb49a` ( `deleted_by` varchar(255), `fldvpb5tbbc` varchar(255) ); -INSERT INTO tbl4ezqb49a -VALUES( - 1, - 'rec2qr07yes', - '2023-05-20 16:14:59', - 'usrzvhv8srb', - '2023-05-20 16:14:59', - 'usrzvhv8srb', - NULL, - NULL, - 'CEO' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 2, - 'rec65i96nud', - '2023-05-20 16:15:04', - 'usrzvhv8srb', - '2023-05-20 16:15:04', - 'usrzvhv8srb', - NULL, - NULL, - 'COO' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 3, - 'reca1g9gntv', - '2023-05-20 16:15:12', - 'usrzvhv8srb', - '2023-05-20 16:15:12', - 'usrzvhv8srb', - NULL, - NULL, - 'CFO' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 4, - 'rec6vxgt0pa', - '2023-05-20 16:15:17', - 'usrzvhv8srb', - '2023-05-20 16:15:17', - 'usrzvhv8srb', - NULL, - NULL, - 'CPO' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 5, - 'recrxmrgqfb', - '2023-05-24 14:18:29', - 'usrbuajh55q', - '2023-05-24 14:18:29', - 'usrbuajh55q', - NULL, - NULL, - 'CTO' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 6, - 'recd9vossil', - '2023-05-24 14:18:35', - 'usrbuajh55q', - '2023-05-24 14:18:35', - 'usrbuajh55q', - NULL, - NULL, - 'IT' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 7, - 'rec1o3gs5gh', - '2023-05-24 14:18:45', - 'usrbuajh55q', - '2023-05-24 14:18:45', - 'usrbuajh55q', - NULL, - NULL, - 'Sales' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 8, - 'recscwm83hu', - '2023-05-24 14:18:56', - 'usrbuajh55q', - '2023-05-24 14:18:56', - 'usrbuajh55q', - NULL, - NULL, - 'Marketing' - ); -INSERT INTO tbl4ezqb49a -VALUES( - 9, - 'rec6h8wqgsm', - '2023-05-24 14:19:38', - 'usrbuajh55q', - '2023-05-24 14:19:38', - 'usrbuajh55q', - NULL, - NULL, - 'Customer support' - ); +INSERT INTO tbl4ezqb49a VALUES(1,'rec2qr07yes','2023-05-20 16:14:59','usrzvhv8srb','2023-05-20 16:14:59','usrzvhv8srb',NULL,NULL,'CEO'); +INSERT INTO tbl4ezqb49a VALUES(2,'rec65i96nud','2023-05-20 16:15:04','usrzvhv8srb','2023-05-20 16:15:04','usrzvhv8srb',NULL,NULL,'COO'); +INSERT INTO tbl4ezqb49a VALUES(3,'reca1g9gntv','2023-05-20 16:15:12','usrzvhv8srb','2023-05-20 16:15:12','usrzvhv8srb',NULL,NULL,'CFO'); +INSERT INTO tbl4ezqb49a VALUES(4,'rec6vxgt0pa','2023-05-20 16:15:17','usrzvhv8srb','2023-05-20 16:15:17','usrzvhv8srb',NULL,NULL,'CPO'); +INSERT INTO tbl4ezqb49a VALUES(5,'recrxmrgqfb','2023-05-24 14:18:29','usrbuajh55q','2023-05-24 14:18:29','usrbuajh55q',NULL,NULL,'CTO'); +INSERT INTO tbl4ezqb49a VALUES(6,'recd9vossil','2023-05-24 14:18:35','usrbuajh55q','2023-05-24 14:18:35','usrbuajh55q',NULL,NULL,'IT'); +INSERT INTO tbl4ezqb49a VALUES(7,'rec1o3gs5gh','2023-05-24 14:18:45','usrbuajh55q','2023-05-24 14:18:45','usrbuajh55q',NULL,NULL,'Sales'); +INSERT INTO tbl4ezqb49a VALUES(8,'recscwm83hu','2023-05-24 14:18:56','usrbuajh55q','2023-05-24 14:18:56','usrbuajh55q',NULL,NULL,'Marketing'); +INSERT INTO tbl4ezqb49a VALUES(9,'rec6h8wqgsm','2023-05-24 14:19:38','usrbuajh55q','2023-05-24 14:19:38','usrbuajh55q',NULL,NULL,'Customer support'); CREATE TABLE `fldlosp8skm_tbl4ezqb49a_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -8536,14 +758,10 @@ CREATE TABLE `fldlosp8skm_tbl4ezqb49a_adjacency_list` ( foreign key(`from_id`) references `tblwqjcq0x8`(`id`), primary key (`to_id`, `from_id`) ); -INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list -VALUES('rec2qr07yes', 'rec16l53qwc'); -INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list -VALUES('rec65i96nud', 'recwth68evr'); -INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list -VALUES('rec6vxgt0pa', 'rec4gj4ju56'); -INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list -VALUES('recrxmrgqfb', 'rec4htof4vx'); +INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list VALUES('rec2qr07yes','rec16l53qwc'); +INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list VALUES('rec65i96nud','recwth68evr'); +INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list VALUES('rec6vxgt0pa','rec4gj4ju56'); +INSERT INTO fldlosp8skm_tbl4ezqb49a_adjacency_list VALUES('recrxmrgqfb','rec4htof4vx'); CREATE TABLE `tbl2za35hbg` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -8569,1774 +787,74 @@ CREATE TABLE `tbl2za35hbg` ( `fldkd8gvemb` float, `fld5pgga2xx` float ); -INSERT INTO tbl2za35hbg -VALUES( - 1, - 'rec6tm3pudz', - '2023-05-21 08:57:05', - 'usrzvhv8srb', - '2023-05-24 14:23:55', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 1', - 'optsgc8w', - 'Employee1@email.com', - '18976548765', - 'Product marketing', - 'opt8h6fl', - '2023-06-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 2, - 'rec4totdobf', - '2023-05-21 08:58:39', - 'usrzvhv8srb', - '2023-05-24 14:24:01', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 2', - 'optsgc8w', - 'Employee2@email.com', - '17887655643', - 'Accountant', - 'opt44dfp', - '2023-08-03T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 3, - 'reclt43wagf', - '2023-05-21 08:58:57', - 'usrzvhv8srb', - '2023-05-24 14:24:11', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 3', - 'opt8ef1v', - 'Employee3@email.com', - '18765983622', - 'Customer support', - 'opts4ao9', - '2023-04-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 4, - 'recbgbz1xcz', - '2023-05-21 08:59:02', - 'usrzvhv8srb', - '2023-05-24 14:24:21', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 4', - 'optgin1z', - 'Employee4@email.com', - '19090909876', - 'Accountant', - 'opt44dfp', - '2023-03-31T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 5, - 'rec6zbygjkn', - '2023-05-21 08:59:07', - 'usrzvhv8srb', - '2023-05-24 14:36:00', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 5', - 'opt8ef1v', - 'Employee5@email.com', - '18790654342', - 'Product marketing', - 'opt8h6fl', - '2023-05-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt27124', - '', - 'optap9r0', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 6, - 'rec7qr912bx', - '2023-05-21 08:59:12', - 'usrzvhv8srb', - '2023-05-24 14:24:41', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 6', - 'optjsdp6', - 'employee6@email.com', - '15647872653', - 'Product marketing', - 'opt8h6fl', - '2023-05-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 0.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 7, - 'recv2huajbe', - '2023-05-21 08:59:17', - 'usrzvhv8srb', - '2023-05-24 14:36:16', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 7', - 'optsgc8w', - 'employee7@email.com', - '', - 'Software developer', - 'optjehd9', - '2023-05-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 8, - 'recus5nov9q', - '2023-05-21 08:59:22', - 'usrzvhv8srb', - '2023-05-24 14:36:24', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 8', - 'optgin1z', - 'employee8@email.com', - '19823456786', - 'UI ', - 'optpg4ya', - '2023-04-09T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optzq9lr', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 9, - 'rechqk7yzm5', - '2023-05-21 08:59:28', - 'usrzvhv8srb', - '2023-05-24 14:36:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 9', - 'optlottl', - 'employee9@email.com', - '12345436765', - 'CTO', - 'opt0g9hh', - '2023-03-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 10, - 'rec794hljl2', - '2023-05-21 08:59:40', - 'usrzvhv8srb', - '2023-05-24 14:36:45', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 10', - 'optlottl', - 'employee9@email.com', - '19654372655', - 'CPO', - 'opt0g9hh', - '2023-02-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 2.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 11, - 'rec8rft252j', - '2023-05-21 08:59:45', - 'usrzvhv8srb', - '2023-05-24 14:36:54', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 11', - 'optlottl', - 'employee11@email.com', - '15467678989', - 'frontend developer', - 'optjehd9', - '2022-12-07T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 4.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 12, - 'rec6fc5uqah', - '2023-05-21 08:59:52', - 'usrzvhv8srb', - '2023-05-24 14:37:06', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 12', - 'optsgc8w', - 'employee12@email.com', - '12345678976', - 'UX', - 'optpg4ya', - '2023-05-22T16:00:00.000Z', - 'optks9w7', - 'opt4ra5l', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 13, - 'rech888ljz8', - '2023-05-21 08:59:57', - 'usrzvhv8srb', - '2023-05-24 14:37:15', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 13', - 'optlottl', - 'Employee13@email.com', - '16666666666', - 'Security', - 'optk8vx1', - '2021-06-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 1.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 14, - 'rec7hkzhrq6', - '2023-05-21 09:00:03', - 'usrzvhv8srb', - '2023-05-24 14:40:00', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 14', - 'optjsdp6', - 'Employee14@email.com', - '15555555555', - 'Backend developer', - 'optjehd9', - '2023-05-18T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 15, - 'rec5w6qead5', - '2023-05-21 09:00:07', - 'usrzvhv8srb', - '2023-05-24 14:37:33', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 15', - 'opt8ef1v', - 'Employee15@email.com', - '17777777777', - 'Sales', - 'optrhqo9', - '2023-05-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 16, - 'rechsnajzjc', - '2023-05-21 09:00:17', - 'usrzvhv8srb', - '2023-05-24 14:37:42', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 16', - 'optgin1z', - 'Employee16@email.com', - '16677778888', - 'IOS', - 'optuieaz', - '2023-04-05T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 17, - 'recy6sdnb04', - '2023-05-21 09:00:23', - 'usrzvhv8srb', - '2023-05-24 14:37:49', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 17', - 'optlottl', - 'Employee17@email.com', - '15454546767', - 'Sales', - 'optrhqo9', - '2023-03-08T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 18, - 'recodej41pa', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 2', - 'optsgc8w', - 'Employee2@email.com', - '17887655643', - 'Accountant', - 'opt44dfp', - '2023-08-03T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 19, - 'recpnpdryn1', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 15', - 'opt8ef1v', - 'Employee15@email.com', - '17777777777', - 'Sales', - 'optrhqo9', - '2023-05-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 20, - 'recqpm1tjzo', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 12', - 'optsgc8w', - 'employee12@email.com', - '12345678976', - 'UX', - 'optpg4ya', - '2023-05-22T16:00:00.000Z', - 'optks9w7', - 'opt4ra5l', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 21, - 'rec37q783fi', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 1', - 'optsgc8w', - 'Employee1@email.com', - '18976548765', - 'Product marketing', - 'opt8h6fl', - '2023-06-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 22, - 'rec2j0qzu4n', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 5', - 'opt8ef1v', - 'Employee5@email.com', - '18790654342', - 'Product marketing', - 'opt8h6fl', - '2023-05-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt27124', - '', - 'optap9r0', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 23, - 'recfuy5ugaj', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 10', - 'optlottl', - 'employee9@email.com', - '19654372655', - 'CPO', - 'opt0g9hh', - '2023-02-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 2.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 24, - 'rec64xl27aw', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 14', - 'optjsdp6', - 'Employee14@email.com', - '15555555555', - 'Backend developer', - 'optjehd9', - '2023-05-18T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 25, - 'rec1rh97pw6', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 6', - 'optjsdp6', - 'employee6@email.com', - '15647872653', - 'Product marketing', - 'opt8h6fl', - '2023-05-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 0.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 26, - 'rec0eu6u7ix', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 11', - 'optlottl', - 'employee11@email.com', - '15467678989', - 'frontend developer', - 'optjehd9', - '2022-12-07T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 4.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 27, - 'rec1mnudfzh', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 4', - 'optgin1z', - 'Employee4@email.com', - '19090909876', - 'Accountant', - 'opt44dfp', - '2023-03-31T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 28, - 'recu0a6zmav', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 13', - 'optlottl', - 'Employee13@email.com', - '16666666666', - 'Security', - 'optk8vx1', - '2021-06-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 1.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 29, - 'rec8gbl15g7', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 9', - 'optlottl', - 'employee9@email.com', - '12345436765', - 'CTO', - 'opt0g9hh', - '2023-03-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 30, - 'rec13tydflw', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 16', - 'optgin1z', - 'Employee16@email.com', - '16677778888', - 'IOS', - 'optuieaz', - '2023-04-05T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 31, - 'rec0deekh0v', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 3', - 'opt8ef1v', - 'Employee3@email.com', - '18765983622', - 'Customer support', - 'opts4ao9', - '2023-04-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 32, - 'recaav8fprj', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 8', - 'optgin1z', - 'employee8@email.com', - '19823456786', - 'UI ', - 'optpg4ya', - '2023-04-09T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optzq9lr', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 33, - 'rec2cdpncrh', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 7', - 'optsgc8w', - 'employee7@email.com', - '', - 'Software developer', - 'optjehd9', - '2023-05-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 34, - 'reck5nnkzdj', - '2023-05-27 18:43:36', - 'usrbuajh55q', - '2023-05-27 18:43:36', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 17', - 'optlottl', - 'Employee17@email.com', - '15454546767', - 'Sales', - 'optrhqo9', - '2023-03-08T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 35, - 'recqdx0thp6', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 3', - 'opt8ef1v', - 'Employee3@email.com', - '18765983622', - 'Customer support', - 'opts4ao9', - '2023-04-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 36, - 'receb3ghosa', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 11', - 'optlottl', - 'employee11@email.com', - '15467678989', - 'frontend developer', - 'optjehd9', - '2022-12-07T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 4.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 37, - 'recx1y3loqg', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 16', - 'optgin1z', - 'Employee16@email.com', - '16677778888', - 'IOS', - 'optuieaz', - '2023-04-05T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 38, - 'recn37pxylw', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 4', - 'optgin1z', - 'Employee4@email.com', - '19090909876', - 'Accountant', - 'opt44dfp', - '2023-03-31T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 39, - 'recxr77cw6k', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 6', - 'optjsdp6', - 'employee6@email.com', - '15647872653', - 'Product marketing', - 'opt8h6fl', - '2023-05-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 0.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 40, - 'rec5wem3q07', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 7', - 'optsgc8w', - 'employee7@email.com', - '', - 'Software developer', - 'optjehd9', - '2023-05-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 41, - 'recw9llfmr8', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 5', - 'opt8ef1v', - 'Employee5@email.com', - '18790654342', - 'Product marketing', - 'opt8h6fl', - '2023-05-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt27124', - '', - 'optap9r0', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 42, - 'rec9kbw4nq1', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 1', - 'optsgc8w', - 'Employee1@email.com', - '18976548765', - 'Product marketing', - 'opt8h6fl', - '2023-06-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 43, - 'recevvam18x', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 2', - 'optsgc8w', - 'Employee2@email.com', - '17887655643', - 'Accountant', - 'opt44dfp', - '2023-08-03T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 44, - 'recvqy14wcq', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 15', - 'opt8ef1v', - 'Employee15@email.com', - '17777777777', - 'Sales', - 'optrhqo9', - '2023-05-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 45, - 'recjv9z2yuk', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 14', - 'optjsdp6', - 'Employee14@email.com', - '15555555555', - 'Backend developer', - 'optjehd9', - '2023-05-18T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 46, - 'recyvxzgb46', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 12', - 'optsgc8w', - 'employee12@email.com', - '12345678976', - 'UX', - 'optpg4ya', - '2023-05-22T16:00:00.000Z', - 'optks9w7', - 'opt4ra5l', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 47, - 'reced6iv1gf', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 1', - 'optsgc8w', - 'Employee1@email.com', - '18976548765', - 'Product marketing', - 'opt8h6fl', - '2023-06-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 48, - 'rec69fxv4wl', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 5', - 'opt8ef1v', - 'Employee5@email.com', - '18790654342', - 'Product marketing', - 'opt8h6fl', - '2023-05-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt27124', - '', - 'optap9r0', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 49, - 'rec1xsgt0ob', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 10', - 'optlottl', - 'employee9@email.com', - '19654372655', - 'CPO', - 'opt0g9hh', - '2023-02-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 2.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 50, - 'recx971jq3x', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 14', - 'optjsdp6', - 'Employee14@email.com', - '15555555555', - 'Backend developer', - 'optjehd9', - '2023-05-18T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 51, - 'recvb51y5az', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 6', - 'optjsdp6', - 'employee6@email.com', - '15647872653', - 'Product marketing', - 'opt8h6fl', - '2023-05-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 0.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 52, - 'reclmgdifan', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 9', - 'optlottl', - 'employee9@email.com', - '12345436765', - 'CTO', - 'opt0g9hh', - '2023-03-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 53, - 'receevmyz9q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 11', - 'optlottl', - 'employee11@email.com', - '15467678989', - 'frontend developer', - 'optjehd9', - '2022-12-07T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 4.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 54, - 'recxh3urir7', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 8', - 'optgin1z', - 'employee8@email.com', - '19823456786', - 'UI ', - 'optpg4ya', - '2023-04-09T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optzq9lr', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 55, - 'recg1wd95od', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 4', - 'optgin1z', - 'Employee4@email.com', - '19090909876', - 'Accountant', - 'opt44dfp', - '2023-03-31T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 56, - 'recmgwh9smy', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 10', - 'optlottl', - 'employee9@email.com', - '19654372655', - 'CPO', - 'opt0g9hh', - '2023-02-21T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 2.0, - 2.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 57, - 'rec6mh7ap8l', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 13', - 'optlottl', - 'Employee13@email.com', - '16666666666', - 'Security', - 'optk8vx1', - '2021-06-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 1.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 58, - 'rec695fqs0e', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 9', - 'optlottl', - 'employee9@email.com', - '12345436765', - 'CTO', - 'opt0g9hh', - '2023-03-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 59, - 'recjoxp05s0', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 16', - 'optgin1z', - 'Employee16@email.com', - '16677778888', - 'IOS', - 'optuieaz', - '2023-04-05T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 60, - 'rec212oxbqb', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 17', - 'optlottl', - 'Employee17@email.com', - '15454546767', - 'Sales', - 'optrhqo9', - '2023-03-08T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 61, - 'recnjamqux6', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 3', - 'opt8ef1v', - 'Employee3@email.com', - '18765983622', - 'Customer support', - 'opts4ao9', - '2023-04-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 62, - 'reco7t6ruyd', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 2', - 'optsgc8w', - 'Employee2@email.com', - '17887655643', - 'Accountant', - 'opt44dfp', - '2023-08-03T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt27124', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 63, - 'recjj3e5h2s', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 15', - 'opt8ef1v', - 'Employee15@email.com', - '17777777777', - 'Sales', - 'optrhqo9', - '2023-05-11T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optz8twl', - 'optukskn', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 64, - 'recfe75a6lj', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 12', - 'optsgc8w', - 'employee12@email.com', - '12345678976', - 'UX', - 'optpg4ya', - '2023-05-22T16:00:00.000Z', - 'optks9w7', - 'opt4ra5l', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 3.0, - 5.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 65, - 'recgqp9cj6y', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 13', - 'optlottl', - 'Employee13@email.com', - '16666666666', - 'Security', - 'optk8vx1', - '2021-06-14T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 3.0, - 1.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 66, - 'recqfvqef5q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 8', - 'optgin1z', - 'employee8@email.com', - '19823456786', - 'UI ', - 'optpg4ya', - '2023-04-09T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optzq9lr', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 67, - 'recdwb7no4g', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 7', - 'optsgc8w', - 'employee7@email.com', - '', - 'Software developer', - 'optjehd9', - '2023-05-30T16:00:00.000Z', - 'opttmurc', - 'optqqamc', - 'opt6moby', - '', - 'optybpi2', - 'optsij84', - 0.0, - 0.0 - ); -INSERT INTO tbl2za35hbg -VALUES( - 68, - 'rec2sqa3v4a', - '2023-05-27 18:43:39', - 'usrbuajh55q', - '2023-05-27 18:43:39', - 'usrbuajh55q', - NULL, - NULL, - 'Employee 17', - 'optlottl', - 'Employee17@email.com', - '15454546767', - 'Sales', - 'optrhqo9', - '2023-03-08T16:00:00.000Z', - 'opt4lu2m', - 'optlhx0u', - 'opt0cxih', - '', - 'optap9r0', - 'optuqbtr', - 5.0, - 5.0 - ); +INSERT INTO tbl2za35hbg VALUES(1,'rec6tm3pudz','2023-05-21 08:57:05','usrzvhv8srb','2023-05-24 14:23:55','usrbuajh55q',NULL,NULL,'Employee 1','optsgc8w','Employee1@email.com','18976548765','Product marketing','opt8h6fl','2023-06-30T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(2,'rec4totdobf','2023-05-21 08:58:39','usrzvhv8srb','2023-05-24 14:24:01','usrbuajh55q',NULL,NULL,'Employee 2','optsgc8w','Employee2@email.com','17887655643','Accountant','opt44dfp','2023-08-03T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(3,'reclt43wagf','2023-05-21 08:58:57','usrzvhv8srb','2023-05-24 14:24:11','usrbuajh55q',NULL,NULL,'Employee 3','opt8ef1v','Employee3@email.com','18765983622','Customer support','opts4ao9','2023-04-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(4,'recbgbz1xcz','2023-05-21 08:59:02','usrzvhv8srb','2023-05-24 14:24:21','usrbuajh55q',NULL,NULL,'Employee 4','optgin1z','Employee4@email.com','19090909876','Accountant','opt44dfp','2023-03-31T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(5,'rec6zbygjkn','2023-05-21 08:59:07','usrzvhv8srb','2023-05-24 14:36:00','usrbuajh55q',NULL,NULL,'Employee 5','opt8ef1v','Employee5@email.com','18790654342','Product marketing','opt8h6fl','2023-05-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt27124','','optap9r0','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(6,'rec7qr912bx','2023-05-21 08:59:12','usrzvhv8srb','2023-05-24 14:24:41','usrbuajh55q',NULL,NULL,'Employee 6','optjsdp6','employee6@email.com','15647872653','Product marketing','opt8h6fl','2023-05-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',0.0,2.0); +INSERT INTO tbl2za35hbg VALUES(7,'recv2huajbe','2023-05-21 08:59:17','usrzvhv8srb','2023-05-24 14:36:16','usrbuajh55q',NULL,NULL,'Employee 7','optsgc8w','employee7@email.com','','Software developer','optjehd9','2023-05-30T16:00:00.000Z','opttmurc','optqqamc','opt6moby','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(8,'recus5nov9q','2023-05-21 08:59:22','usrzvhv8srb','2023-05-24 14:36:24','usrbuajh55q',NULL,NULL,'Employee 8','optgin1z','employee8@email.com','19823456786','UI ','optpg4ya','2023-04-09T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optzq9lr',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(9,'rechqk7yzm5','2023-05-21 08:59:28','usrzvhv8srb','2023-05-24 14:36:36','usrbuajh55q',NULL,NULL,'Employee 9','optlottl','employee9@email.com','12345436765','CTO','opt0g9hh','2023-03-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(10,'rec794hljl2','2023-05-21 08:59:40','usrzvhv8srb','2023-05-24 14:36:45','usrbuajh55q',NULL,NULL,'Employee 10','optlottl','employee9@email.com','19654372655','CPO','opt0g9hh','2023-02-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',2.0,2.0); +INSERT INTO tbl2za35hbg VALUES(11,'rec8rft252j','2023-05-21 08:59:45','usrzvhv8srb','2023-05-24 14:36:54','usrbuajh55q',NULL,NULL,'Employee 11','optlottl','employee11@email.com','15467678989','frontend developer','optjehd9','2022-12-07T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',4.0,2.0); +INSERT INTO tbl2za35hbg VALUES(12,'rec6fc5uqah','2023-05-21 08:59:52','usrzvhv8srb','2023-05-24 14:37:06','usrbuajh55q',NULL,NULL,'Employee 12','optsgc8w','employee12@email.com','12345678976','UX','optpg4ya','2023-05-22T16:00:00.000Z','optks9w7','opt4ra5l','opt6moby','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(13,'rech888ljz8','2023-05-21 08:59:57','usrzvhv8srb','2023-05-24 14:37:15','usrbuajh55q',NULL,NULL,'Employee 13','optlottl','Employee13@email.com','16666666666','Security','optk8vx1','2021-06-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,1.0); +INSERT INTO tbl2za35hbg VALUES(14,'rec7hkzhrq6','2023-05-21 09:00:03','usrzvhv8srb','2023-05-24 14:40:00','usrbuajh55q',NULL,NULL,'Employee 14','optjsdp6','Employee14@email.com','15555555555','Backend developer','optjehd9','2023-05-18T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(15,'rec5w6qead5','2023-05-21 09:00:07','usrzvhv8srb','2023-05-24 14:37:33','usrbuajh55q',NULL,NULL,'Employee 15','opt8ef1v','Employee15@email.com','17777777777','Sales','optrhqo9','2023-05-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(16,'rechsnajzjc','2023-05-21 09:00:17','usrzvhv8srb','2023-05-24 14:37:42','usrbuajh55q',NULL,NULL,'Employee 16','optgin1z','Employee16@email.com','16677778888','IOS','optuieaz','2023-04-05T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(17,'recy6sdnb04','2023-05-21 09:00:23','usrzvhv8srb','2023-05-24 14:37:49','usrbuajh55q',NULL,NULL,'Employee 17','optlottl','Employee17@email.com','15454546767','Sales','optrhqo9','2023-03-08T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(18,'recodej41pa','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 2','optsgc8w','Employee2@email.com','17887655643','Accountant','opt44dfp','2023-08-03T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(19,'recpnpdryn1','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 15','opt8ef1v','Employee15@email.com','17777777777','Sales','optrhqo9','2023-05-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(20,'recqpm1tjzo','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 12','optsgc8w','employee12@email.com','12345678976','UX','optpg4ya','2023-05-22T16:00:00.000Z','optks9w7','opt4ra5l','opt6moby','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(21,'rec37q783fi','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 1','optsgc8w','Employee1@email.com','18976548765','Product marketing','opt8h6fl','2023-06-30T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(22,'rec2j0qzu4n','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 5','opt8ef1v','Employee5@email.com','18790654342','Product marketing','opt8h6fl','2023-05-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt27124','','optap9r0','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(23,'recfuy5ugaj','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 10','optlottl','employee9@email.com','19654372655','CPO','opt0g9hh','2023-02-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',2.0,2.0); +INSERT INTO tbl2za35hbg VALUES(24,'rec64xl27aw','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 14','optjsdp6','Employee14@email.com','15555555555','Backend developer','optjehd9','2023-05-18T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(25,'rec1rh97pw6','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 6','optjsdp6','employee6@email.com','15647872653','Product marketing','opt8h6fl','2023-05-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',0.0,2.0); +INSERT INTO tbl2za35hbg VALUES(26,'rec0eu6u7ix','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 11','optlottl','employee11@email.com','15467678989','frontend developer','optjehd9','2022-12-07T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',4.0,2.0); +INSERT INTO tbl2za35hbg VALUES(27,'rec1mnudfzh','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 4','optgin1z','Employee4@email.com','19090909876','Accountant','opt44dfp','2023-03-31T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(28,'recu0a6zmav','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 13','optlottl','Employee13@email.com','16666666666','Security','optk8vx1','2021-06-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,1.0); +INSERT INTO tbl2za35hbg VALUES(29,'rec8gbl15g7','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 9','optlottl','employee9@email.com','12345436765','CTO','opt0g9hh','2023-03-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(30,'rec13tydflw','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 16','optgin1z','Employee16@email.com','16677778888','IOS','optuieaz','2023-04-05T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(31,'rec0deekh0v','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 3','opt8ef1v','Employee3@email.com','18765983622','Customer support','opts4ao9','2023-04-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(32,'recaav8fprj','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 8','optgin1z','employee8@email.com','19823456786','UI ','optpg4ya','2023-04-09T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optzq9lr',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(33,'rec2cdpncrh','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 7','optsgc8w','employee7@email.com','','Software developer','optjehd9','2023-05-30T16:00:00.000Z','opttmurc','optqqamc','opt6moby','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(34,'reck5nnkzdj','2023-05-27 18:43:36','usrbuajh55q','2023-05-27 18:43:36','usrbuajh55q',NULL,NULL,'Employee 17','optlottl','Employee17@email.com','15454546767','Sales','optrhqo9','2023-03-08T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(35,'recqdx0thp6','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 3','opt8ef1v','Employee3@email.com','18765983622','Customer support','opts4ao9','2023-04-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(36,'receb3ghosa','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 11','optlottl','employee11@email.com','15467678989','frontend developer','optjehd9','2022-12-07T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',4.0,2.0); +INSERT INTO tbl2za35hbg VALUES(37,'recx1y3loqg','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 16','optgin1z','Employee16@email.com','16677778888','IOS','optuieaz','2023-04-05T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(38,'recn37pxylw','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 4','optgin1z','Employee4@email.com','19090909876','Accountant','opt44dfp','2023-03-31T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(39,'recxr77cw6k','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 6','optjsdp6','employee6@email.com','15647872653','Product marketing','opt8h6fl','2023-05-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',0.0,2.0); +INSERT INTO tbl2za35hbg VALUES(40,'rec5wem3q07','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 7','optsgc8w','employee7@email.com','','Software developer','optjehd9','2023-05-30T16:00:00.000Z','opttmurc','optqqamc','opt6moby','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(41,'recw9llfmr8','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 5','opt8ef1v','Employee5@email.com','18790654342','Product marketing','opt8h6fl','2023-05-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt27124','','optap9r0','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(42,'rec9kbw4nq1','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 1','optsgc8w','Employee1@email.com','18976548765','Product marketing','opt8h6fl','2023-06-30T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(43,'recevvam18x','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 2','optsgc8w','Employee2@email.com','17887655643','Accountant','opt44dfp','2023-08-03T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(44,'recvqy14wcq','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 15','opt8ef1v','Employee15@email.com','17777777777','Sales','optrhqo9','2023-05-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(45,'recjv9z2yuk','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 14','optjsdp6','Employee14@email.com','15555555555','Backend developer','optjehd9','2023-05-18T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(46,'recyvxzgb46','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 12','optsgc8w','employee12@email.com','12345678976','UX','optpg4ya','2023-05-22T16:00:00.000Z','optks9w7','opt4ra5l','opt6moby','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(47,'reced6iv1gf','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 1','optsgc8w','Employee1@email.com','18976548765','Product marketing','opt8h6fl','2023-06-30T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(48,'rec69fxv4wl','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 5','opt8ef1v','Employee5@email.com','18790654342','Product marketing','opt8h6fl','2023-05-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt27124','','optap9r0','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(49,'rec1xsgt0ob','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 10','optlottl','employee9@email.com','19654372655','CPO','opt0g9hh','2023-02-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',2.0,2.0); +INSERT INTO tbl2za35hbg VALUES(50,'recx971jq3x','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 14','optjsdp6','Employee14@email.com','15555555555','Backend developer','optjehd9','2023-05-18T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(51,'recvb51y5az','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 6','optjsdp6','employee6@email.com','15647872653','Product marketing','opt8h6fl','2023-05-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',0.0,2.0); +INSERT INTO tbl2za35hbg VALUES(52,'reclmgdifan','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 9','optlottl','employee9@email.com','12345436765','CTO','opt0g9hh','2023-03-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(53,'receevmyz9q','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 11','optlottl','employee11@email.com','15467678989','frontend developer','optjehd9','2022-12-07T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',4.0,2.0); +INSERT INTO tbl2za35hbg VALUES(54,'recxh3urir7','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 8','optgin1z','employee8@email.com','19823456786','UI ','optpg4ya','2023-04-09T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optzq9lr',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(55,'recg1wd95od','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 4','optgin1z','Employee4@email.com','19090909876','Accountant','opt44dfp','2023-03-31T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(56,'recmgwh9smy','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 10','optlottl','employee9@email.com','19654372655','CPO','opt0g9hh','2023-02-21T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',2.0,2.0); +INSERT INTO tbl2za35hbg VALUES(57,'rec6mh7ap8l','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 13','optlottl','Employee13@email.com','16666666666','Security','optk8vx1','2021-06-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,1.0); +INSERT INTO tbl2za35hbg VALUES(58,'rec695fqs0e','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 9','optlottl','employee9@email.com','12345436765','CTO','opt0g9hh','2023-03-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(59,'recjoxp05s0','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 16','optgin1z','Employee16@email.com','16677778888','IOS','optuieaz','2023-04-05T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(60,'rec212oxbqb','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 17','optlottl','Employee17@email.com','15454546767','Sales','optrhqo9','2023-03-08T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); +INSERT INTO tbl2za35hbg VALUES(61,'recnjamqux6','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 3','opt8ef1v','Employee3@email.com','18765983622','Customer support','opts4ao9','2023-04-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(62,'reco7t6ruyd','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 2','optsgc8w','Employee2@email.com','17887655643','Accountant','opt44dfp','2023-08-03T16:00:00.000Z','opttmurc','optqqamc','opt27124','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(63,'recjj3e5h2s','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 15','opt8ef1v','Employee15@email.com','17777777777','Sales','optrhqo9','2023-05-11T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optz8twl','optukskn',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(64,'recfe75a6lj','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 12','optsgc8w','employee12@email.com','12345678976','UX','optpg4ya','2023-05-22T16:00:00.000Z','optks9w7','opt4ra5l','opt6moby','','optybpi2','optsij84',3.0,5.0); +INSERT INTO tbl2za35hbg VALUES(65,'recgqp9cj6y','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 13','optlottl','Employee13@email.com','16666666666','Security','optk8vx1','2021-06-14T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',3.0,1.0); +INSERT INTO tbl2za35hbg VALUES(66,'recqfvqef5q','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 8','optgin1z','employee8@email.com','19823456786','UI ','optpg4ya','2023-04-09T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optzq9lr',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(67,'recdwb7no4g','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 7','optsgc8w','employee7@email.com','','Software developer','optjehd9','2023-05-30T16:00:00.000Z','opttmurc','optqqamc','opt6moby','','optybpi2','optsij84',0.0,0.0); +INSERT INTO tbl2za35hbg VALUES(68,'rec2sqa3v4a','2023-05-27 18:43:39','usrbuajh55q','2023-05-27 18:43:39','usrbuajh55q',NULL,NULL,'Employee 17','optlottl','Employee17@email.com','15454546767','Sales','optrhqo9','2023-03-08T16:00:00.000Z','opt4lu2m','optlhx0u','opt0cxih','','optap9r0','optuqbtr',5.0,5.0); CREATE TABLE `fldd55dsm2m_collaborator` ( `user_id` varchar(255) not null, `record_id` varchar(255) not null, @@ -10344,142 +862,74 @@ CREATE TABLE `fldd55dsm2m_collaborator` ( foreign key(`record_id`) references `tbl2za35hbg`(`id`), primary key (`record_id`, `user_id`) ); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec6tm3pudz'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec4totdobf'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'reclt43wagf'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recbgbz1xcz'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec6zbygjkn'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec7qr912bx'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recv2huajbe'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recus5nov9q'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rechqk7yzm5'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec794hljl2'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec8rft252j'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec6fc5uqah'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rech888ljz8'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec7hkzhrq6'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec5w6qead5'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rechsnajzjc'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recy6sdnb04'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recodej41pa'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recpnpdryn1'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recqpm1tjzo'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec37q783fi'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec2j0qzu4n'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recfuy5ugaj'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec64xl27aw'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec1rh97pw6'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec0eu6u7ix'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec1mnudfzh'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recu0a6zmav'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec8gbl15g7'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec13tydflw'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec0deekh0v'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recaav8fprj'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec2cdpncrh'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'reck5nnkzdj'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recqdx0thp6'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'receb3ghosa'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recx1y3loqg'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recn37pxylw'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recxr77cw6k'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec5wem3q07'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recw9llfmr8'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec9kbw4nq1'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recevvam18x'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recvqy14wcq'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recjv9z2yuk'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recyvxzgb46'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'reced6iv1gf'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec69fxv4wl'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec1xsgt0ob'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recx971jq3x'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recvb51y5az'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'reclmgdifan'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'receevmyz9q'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recxh3urir7'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recg1wd95od'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recmgwh9smy'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec6mh7ap8l'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec695fqs0e'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recjoxp05s0'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec212oxbqb'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recnjamqux6'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'reco7t6ruyd'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recjj3e5h2s'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recfe75a6lj'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recgqp9cj6y'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recqfvqef5q'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'recdwb7no4g'); -INSERT INTO fldd55dsm2m_collaborator -VALUES('usrbuajh55q', 'rec2sqa3v4a'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec6tm3pudz'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec4totdobf'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','reclt43wagf'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recbgbz1xcz'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec6zbygjkn'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec7qr912bx'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recv2huajbe'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recus5nov9q'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rechqk7yzm5'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec794hljl2'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec8rft252j'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec6fc5uqah'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rech888ljz8'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec7hkzhrq6'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec5w6qead5'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rechsnajzjc'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recy6sdnb04'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recodej41pa'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recpnpdryn1'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recqpm1tjzo'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec37q783fi'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec2j0qzu4n'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recfuy5ugaj'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec64xl27aw'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec1rh97pw6'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec0eu6u7ix'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec1mnudfzh'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recu0a6zmav'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec8gbl15g7'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec13tydflw'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec0deekh0v'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recaav8fprj'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec2cdpncrh'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','reck5nnkzdj'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recqdx0thp6'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','receb3ghosa'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recx1y3loqg'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recn37pxylw'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recxr77cw6k'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec5wem3q07'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recw9llfmr8'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec9kbw4nq1'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recevvam18x'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recvqy14wcq'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recjv9z2yuk'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recyvxzgb46'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','reced6iv1gf'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec69fxv4wl'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec1xsgt0ob'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recx971jq3x'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recvb51y5az'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','reclmgdifan'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','receevmyz9q'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recxh3urir7'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recg1wd95od'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recmgwh9smy'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec6mh7ap8l'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec695fqs0e'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recjoxp05s0'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec212oxbqb'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recnjamqux6'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','reco7t6ruyd'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recjj3e5h2s'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recfe75a6lj'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recgqp9cj6y'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recqfvqef5q'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','recdwb7no4g'); +INSERT INTO fldd55dsm2m_collaborator VALUES('usrbuajh55q','rec2sqa3v4a'); CREATE TABLE `tblruubokdc` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -10493,76 +943,11 @@ CREATE TABLE `tblruubokdc` ( `fld0gmmj29q` varchar(255), `fld3814mrgg` float ); -INSERT INTO tblruubokdc -VALUES( - 1, - 'recm1kabi9l', - '2023-05-21 08:54:22', - 'usrzvhv8srb', - '2023-05-27 18:56:08', - 'usrbuajh55q', - NULL, - NULL, - 'Vincent', - 'manager 1', - 3.0 - ); -INSERT INTO tblruubokdc -VALUES( - 2, - 'recjh3moqxr', - '2023-05-21 08:54:46', - 'usrzvhv8srb', - '2023-05-27 18:56:13', - 'usrbuajh55q', - NULL, - NULL, - 'Jason', - 'manager 2', - 3.0 - ); -INSERT INTO tblruubokdc -VALUES( - 3, - 'recsuqouv2q', - '2023-05-27 18:53:28', - 'usrbuajh55q', - '2023-05-27 18:53:28', - 'usrbuajh55q', - NULL, - NULL, - 'King', - 'CEO', - 1.0 - ); -INSERT INTO tblruubokdc -VALUES( - 4, - 'recngzo73ge', - '2023-05-27 18:54:10', - 'usrbuajh55q', - '2023-05-27 18:55:18', - 'usrbuajh55q', - NULL, - NULL, - 'Scott', - 'CPO', - 2.0 - ); -INSERT INTO tblruubokdc -VALUES( - 5, - 'recvpmpb1bv', - '2023-05-27 18:54:54', - 'usrbuajh55q', - '2023-05-27 18:56:39', - 'usrbuajh55q', - NULL, - NULL, - 'Ford', - 'Sales', - 4.0 - ); +INSERT INTO tblruubokdc VALUES(1,'recm1kabi9l','2023-05-21 08:54:22','usrzvhv8srb','2023-05-27 18:56:08','usrbuajh55q',NULL,NULL,'Vincent','manager 1',3.0); +INSERT INTO tblruubokdc VALUES(2,'recjh3moqxr','2023-05-21 08:54:46','usrzvhv8srb','2023-05-27 18:56:13','usrbuajh55q',NULL,NULL,'Jason','manager 2',3.0); +INSERT INTO tblruubokdc VALUES(3,'recsuqouv2q','2023-05-27 18:53:28','usrbuajh55q','2023-05-27 18:53:28','usrbuajh55q',NULL,NULL,'King','CEO',1.0); +INSERT INTO tblruubokdc VALUES(4,'recngzo73ge','2023-05-27 18:54:10','usrbuajh55q','2023-05-27 18:55:18','usrbuajh55q',NULL,NULL,'Scott','CPO',2.0); +INSERT INTO tblruubokdc VALUES(5,'recvpmpb1bv','2023-05-27 18:54:54','usrbuajh55q','2023-05-27 18:56:39','usrbuajh55q',NULL,NULL,'Ford','Sales',4.0); CREATE TABLE `fldfpeufgq3_tblruubokdc_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -10570,126 +955,66 @@ CREATE TABLE `fldfpeufgq3_tblruubokdc_adjacency_list` ( foreign key(`from_id`) references `tbl2za35hbg`(`id`), primary key (`to_id`, `from_id`) ); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec6tm3pudz'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rec4totdobf'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recbgbz1xcz'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec6zbygjkn'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec7qr912bx'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recv2huajbe'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recus5nov9q'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rechqk7yzm5'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec8rft252j'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rec6fc5uqah'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rech888ljz8'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec7hkzhrq6'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec5w6qead5'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rechsnajzjc'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recy6sdnb04'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recodej41pa'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recpnpdryn1'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recqpm1tjzo'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec37q783fi'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec2j0qzu4n'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec64xl27aw'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec1rh97pw6'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec0eu6u7ix'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rec1mnudfzh'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recu0a6zmav'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rec8gbl15g7'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec13tydflw'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recaav8fprj'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec2cdpncrh'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'reck5nnkzdj'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'receb3ghosa'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recx1y3loqg'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recn37pxylw'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recxr77cw6k'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec5wem3q07'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recw9llfmr8'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec9kbw4nq1'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recevvam18x'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recvqy14wcq'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recjv9z2yuk'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recyvxzgb46'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'reced6iv1gf'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec69fxv4wl'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recx971jq3x'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recvb51y5az'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'reclmgdifan'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'receevmyz9q'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recxh3urir7'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recg1wd95od'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rec6mh7ap8l'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'rec695fqs0e'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recjoxp05s0'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec212oxbqb'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'reco7t6ruyd'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recjj3e5h2s'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recfe75a6lj'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recjh3moqxr', 'recgqp9cj6y'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recqfvqef5q'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'recdwb7no4g'); -INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list -VALUES('recm1kabi9l', 'rec2sqa3v4a'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec6tm3pudz'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rec4totdobf'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recbgbz1xcz'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec6zbygjkn'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec7qr912bx'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recv2huajbe'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recus5nov9q'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rechqk7yzm5'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec8rft252j'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rec6fc5uqah'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rech888ljz8'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec7hkzhrq6'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec5w6qead5'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rechsnajzjc'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recy6sdnb04'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recodej41pa'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recpnpdryn1'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recqpm1tjzo'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec37q783fi'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec2j0qzu4n'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec64xl27aw'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec1rh97pw6'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec0eu6u7ix'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rec1mnudfzh'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recu0a6zmav'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rec8gbl15g7'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec13tydflw'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recaav8fprj'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec2cdpncrh'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','reck5nnkzdj'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','receb3ghosa'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recx1y3loqg'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recn37pxylw'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recxr77cw6k'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec5wem3q07'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recw9llfmr8'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec9kbw4nq1'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recevvam18x'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recvqy14wcq'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recjv9z2yuk'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recyvxzgb46'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','reced6iv1gf'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec69fxv4wl'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recx971jq3x'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recvb51y5az'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','reclmgdifan'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','receevmyz9q'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recxh3urir7'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recg1wd95od'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rec6mh7ap8l'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','rec695fqs0e'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recjoxp05s0'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec212oxbqb'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','reco7t6ruyd'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recjj3e5h2s'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recfe75a6lj'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recjh3moqxr','recgqp9cj6y'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recqfvqef5q'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','recdwb7no4g'); +INSERT INTO fldfpeufgq3_tblruubokdc_adjacency_list VALUES('recm1kabi9l','rec2sqa3v4a'); CREATE TABLE `fldng2e0uhl_collaborator` ( `user_id` varchar(255) not null, `record_id` varchar(255) not null, @@ -10697,134 +1022,70 @@ CREATE TABLE `fldng2e0uhl_collaborator` ( foreign key(`record_id`) references `tbl2za35hbg`(`id`), primary key (`record_id`, `user_id`) ); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec6tm3pudz'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'reclt43wagf'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recbgbz1xcz'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec6zbygjkn'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec7qr912bx'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recv2huajbe'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recus5nov9q'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rechqk7yzm5'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec794hljl2'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec8rft252j'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec6fc5uqah'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rech888ljz8'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec7hkzhrq6'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec5w6qead5'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rechsnajzjc'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recy6sdnb04'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recfuy5ugaj'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec0deekh0v'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recpnpdryn1'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recqpm1tjzo'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec37q783fi'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec2j0qzu4n'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec64xl27aw'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec1rh97pw6'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec0eu6u7ix'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec1mnudfzh'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recu0a6zmav'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec8gbl15g7'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec13tydflw'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recaav8fprj'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec2cdpncrh'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'reck5nnkzdj'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recqdx0thp6'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec1xsgt0ob'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recmgwh9smy'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recnjamqux6'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'receb3ghosa'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recx1y3loqg'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recn37pxylw'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recxr77cw6k'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec5wem3q07'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recw9llfmr8'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec9kbw4nq1'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recvqy14wcq'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recjv9z2yuk'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recyvxzgb46'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'reced6iv1gf'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec69fxv4wl'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recx971jq3x'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recvb51y5az'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'reclmgdifan'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'receevmyz9q'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recxh3urir7'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recg1wd95od'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec6mh7ap8l'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec695fqs0e'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recjoxp05s0'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec212oxbqb'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recjj3e5h2s'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recfe75a6lj'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recgqp9cj6y'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recqfvqef5q'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'recdwb7no4g'); -INSERT INTO fldng2e0uhl_collaborator -VALUES('usrbuajh55q', 'rec2sqa3v4a'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec6tm3pudz'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','reclt43wagf'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recbgbz1xcz'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec6zbygjkn'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec7qr912bx'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recv2huajbe'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recus5nov9q'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rechqk7yzm5'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec794hljl2'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec8rft252j'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec6fc5uqah'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rech888ljz8'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec7hkzhrq6'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec5w6qead5'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rechsnajzjc'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recy6sdnb04'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recfuy5ugaj'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec0deekh0v'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recpnpdryn1'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recqpm1tjzo'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec37q783fi'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec2j0qzu4n'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec64xl27aw'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec1rh97pw6'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec0eu6u7ix'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec1mnudfzh'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recu0a6zmav'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec8gbl15g7'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec13tydflw'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recaav8fprj'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec2cdpncrh'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','reck5nnkzdj'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recqdx0thp6'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec1xsgt0ob'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recmgwh9smy'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recnjamqux6'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','receb3ghosa'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recx1y3loqg'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recn37pxylw'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recxr77cw6k'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec5wem3q07'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recw9llfmr8'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec9kbw4nq1'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recvqy14wcq'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recjv9z2yuk'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recyvxzgb46'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','reced6iv1gf'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec69fxv4wl'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recx971jq3x'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recvb51y5az'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','reclmgdifan'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','receevmyz9q'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recxh3urir7'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recg1wd95od'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec6mh7ap8l'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec695fqs0e'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recjoxp05s0'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec212oxbqb'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recjj3e5h2s'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recfe75a6lj'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recgqp9cj6y'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recqfvqef5q'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','recdwb7no4g'); +INSERT INTO fldng2e0uhl_collaborator VALUES('usrbuajh55q','rec2sqa3v4a'); CREATE TABLE `fld56n18njt_tblwqjcq0x8_closure_table` ( `child_id` varchar(255) not null, `parent_id` varchar(255) not null, @@ -10833,16 +1094,11 @@ CREATE TABLE `fld56n18njt_tblwqjcq0x8_closure_table` ( foreign key(`parent_id`) references `tblwqjcq0x8`(`id`) on delete CASCADE, primary key (`child_id`, `parent_id`) ); -INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table -VALUES('rec16l53qwc', 'rec16l53qwc', 0); -INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table -VALUES('rec4gj4ju56', 'rec4gj4ju56', 0); -INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table -VALUES('recwth68evr', 'recwth68evr', 0); -INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table -VALUES('rec4htof4vx', 'rec4htof4vx', 0); -INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table -VALUES('rec16l53qwc', 'rec4htof4vx', 1); +INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table VALUES('rec16l53qwc','rec16l53qwc',0); +INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table VALUES('rec4gj4ju56','rec4gj4ju56',0); +INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table VALUES('recwth68evr','recwth68evr',0); +INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table VALUES('rec4htof4vx','rec4htof4vx',0); +INSERT INTO fld56n18njt_tblwqjcq0x8_closure_table VALUES('rec16l53qwc','rec4htof4vx',1); CREATE TABLE `tblk4h9pgm7` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -10872,636 +1128,27 @@ CREATE TABLE `tblk4h9pgm7` ( `fldn3txeox5` varchar(255), `fldw0xhn5du` varchar(255) ); -INSERT INTO tblk4h9pgm7 -VALUES( - 1, - 'rec3k4cw1m8', - '2023-05-27 07:54:24', - 'usrbuajh55q', - '2023-05-27 17:06:42', - 'usrbuajh55q', - NULL, - NULL, - 'In construction', - 'Address / Unit 3', - '124 Glenridge Drive Spring Valley, CA 91977', - 'opt4kb70', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'opt2gr6e', - 'optbs3h7', - 'opttf21e', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 2, - 'rec1sc83549', - '2023-05-27 16:48:21', - 'usrbuajh55q', - '2023-05-27 18:32:10', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 1', - '9569 Theatre St. Oceanside, CA 92056', - 'optdbss5', - 'optuay9y', - '2023-05-08T16:00:00.000Z', - 'opts4596', - '2023-05-09T16:00:00.000Z', - 'optu5jkw', - '2023-04-19T16:00:00.000Z', - 'opta8zon', - '2023-04-12T16:00:00.000Z', - 'opt4h4tt', - 'opt7i90b', - 'opt530jq', - '2023-03-15T16:00:00.000Z', - '2023-08-29T16:00:00.000Z', - 'optkcpbu', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 3, - 'rec36zg4g7u', - '2023-05-27 17:06:11', - 'usrbuajh55q', - '2023-05-27 18:32:17', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 2', - '177 Griffin St. Los Angeles, CA 90001', - 'opt4kb70', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'opt20hse', - 'optbs3h7', - 'opttf21e', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optegnto' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 4, - 'recj2ca89m4', - '2023-05-27 17:10:51', - 'usrbuajh55q', - '2023-05-27 18:32:25', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 4', - '9569 Theatre St. Oceanside, CA 92056', - 'opt4zoqs', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 5, - 'recwczl6uep', - '2023-05-27 17:15:38', - 'usrbuajh55q', - '2023-05-27 18:32:34', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 5', - '45 Young Street San Jose, CA 95127', - 'opt4zoqs', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optegnto' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 6, - 'rec07dly8bc', - '2023-05-27 17:16:58', - 'usrbuajh55q', - '2023-05-27 18:34:21', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 7', - 'WFG National Title Company, Northeast 8th Street', - 'optbtkxe', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optxuzzu' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 7, - 'recutqc1wlt', - '2023-05-27 17:20:41', - 'usrbuajh55q', - '2023-05-27 18:34:30', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 6', - '9876 Fulton Lane San Jose, CA 95116', - 'optbtkxe', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optt4gtr' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 8, - 'recmghvocq5', - '2023-05-27 17:45:53', - 'usrbuajh55q', - '2023-05-27 18:35:19', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 12', - 'WFG National Title Company, Northeast 8th Street', - 'optbtkxe', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optxuzzu' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 9, - 'reccyhbbf5q', - '2023-05-27 17:45:53', - 'usrbuajh55q', - '2023-05-27 18:34:48', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 9', - '9569 Theatre St. Oceanside, CA 92056', - 'optdbss5', - 'optuay9y', - '2023-05-08T16:00:00.000Z', - 'opts4596', - '2023-05-09T16:00:00.000Z', - 'optu5jkw', - '2023-04-19T16:00:00.000Z', - 'opta8zon', - '2023-04-12T16:00:00.000Z', - 'opt4h4tt', - 'opt7i90b', - 'opt530jq', - '2023-03-15T16:00:00.000Z', - '2023-08-29T16:00:00.000Z', - 'optkcpbu', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 10, - 'recvyuc044p', - '2023-05-27 17:45:53', - 'usrbuajh55q', - '2023-05-27 18:36:11', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 14', - '177 Griffin St. Los Angeles, CA 90001', - 'opt4kb70', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'opt20hse', - 'optbs3h7', - 'opttf21e', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optegnto' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 11, - 'recj2h464yu', - '2023-05-27 17:45:53', - 'usrbuajh55q', - '2023-05-27 18:34:59', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 10', - '124 Glenridge Drive Spring Valley, CA 91977', - 'opt4kb70', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'opt2gr6e', - 'optbs3h7', - 'opttf21e', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 12, - 'rec11ofngc2', - '2023-05-27 17:45:53', - 'usrbuajh55q', - '2023-05-27 18:34:40', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 8', - '9569 Theatre St. Oceanside, CA 92056', - 'opt4zoqs', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 13, - 'recmcfa13pa', - '2023-05-27 17:45:53', - 'usrbuajh55q', - '2023-05-27 18:35:09', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 11', - '9876 Fulton Lane San Jose, CA 95116', - 'optbtkxe', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optt4gtr' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 14, - 'recqoc8f07w', - '2023-05-27 17:45:53', - 'usrbuajh55q', - '2023-05-27 18:35:28', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 13', - '45 Young Street San Jose, CA 95127', - 'opt4zoqs', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optegnto' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 15, - 'recy0gptap1', - '2023-05-27 17:47:12', - 'usrbuajh55q', - '2023-05-27 18:37:05', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 21', - '9569 Theatre St. Oceanside, CA 92056', - 'opt4zoqs', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 16, - 'recw2phx7cz', - '2023-05-27 17:47:12', - 'usrbuajh55q', - '2023-05-27 18:36:56', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 20', - '9569 Theatre St. Oceanside, CA 92056', - 'optdbss5', - 'optuay9y', - '2023-05-08T16:00:00.000Z', - 'opts4596', - '2023-05-09T16:00:00.000Z', - 'optu5jkw', - '2023-04-19T16:00:00.000Z', - 'opta8zon', - '2023-04-12T16:00:00.000Z', - 'opt4h4tt', - 'opt7i90b', - 'opt530jq', - '2023-03-15T16:00:00.000Z', - '2023-08-29T16:00:00.000Z', - 'optkcpbu', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 17, - 'rect5xwmeqn', - '2023-05-27 17:47:12', - 'usrbuajh55q', - '2023-05-27 18:36:48', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 19', - '124 Glenridge Drive Spring Valley, CA 91977', - 'opt4kb70', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'opt2gr6e', - 'optbs3h7', - 'opttf21e', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optbywmt' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 18, - 'recbcwnjg5s', - '2023-05-27 17:47:12', - 'usrbuajh55q', - '2023-05-27 18:36:24', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 16', - '9876 Fulton Lane San Jose, CA 95116', - 'optbtkxe', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optt4gtr' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 19, - 'rec78ri5r2y', - '2023-05-27 17:47:12', - 'usrbuajh55q', - '2023-05-27 18:36:17', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 15', - 'WFG National Title Company, Northeast 8th Street', - 'optbtkxe', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optxuzzu' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 20, - 'reci2l4mi3d', - '2023-05-27 17:47:12', - 'usrbuajh55q', - '2023-05-27 18:36:38', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 18', - '45 Young Street San Jose, CA 95127', - 'opt4zoqs', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'optkns23', - 'opt7i90b', - 'optk9tdr', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optegnto' - ); -INSERT INTO tblk4h9pgm7 -VALUES( - 21, - 'rece4yfbg4j', - '2023-05-27 17:47:12', - 'usrbuajh55q', - '2023-05-27 18:36:30', - 'usrbuajh55q', - NULL, - NULL, - NULL, - 'Address / Unit 17', - '177 Griffin St. Los Angeles, CA 90001', - 'opt4kb70', - 'optuay9y', - '2023-04-23T16:00:00.000Z', - 'opts4596', - '2023-05-11T16:00:00.000Z', - 'optu5jkw', - '2023-05-11T16:00:00.000Z', - 'optqfwlt', - '2023-05-29T16:00:00.000Z', - 'opt20hse', - 'optbs3h7', - 'opttf21e', - '2023-02-26T16:00:00.000Z', - '2023-07-30T16:00:00.000Z', - 'opt8g1l1', - 'optegnto' - ); +INSERT INTO tblk4h9pgm7 VALUES(1,'rec3k4cw1m8','2023-05-27 07:54:24','usrbuajh55q','2023-05-27 17:06:42','usrbuajh55q',NULL,NULL,'In construction','Address / Unit 3','124 Glenridge Drive Spring Valley, CA 91977','opt4kb70','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','opt2gr6e','optbs3h7','opttf21e','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(2,'rec1sc83549','2023-05-27 16:48:21','usrbuajh55q','2023-05-27 18:32:10','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 1','9569 Theatre St. Oceanside, CA 92056','optdbss5','optuay9y','2023-05-08T16:00:00.000Z','opts4596','2023-05-09T16:00:00.000Z','optu5jkw','2023-04-19T16:00:00.000Z','opta8zon','2023-04-12T16:00:00.000Z','opt4h4tt','opt7i90b','opt530jq','2023-03-15T16:00:00.000Z','2023-08-29T16:00:00.000Z','optkcpbu','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(3,'rec36zg4g7u','2023-05-27 17:06:11','usrbuajh55q','2023-05-27 18:32:17','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 2','177 Griffin St. Los Angeles, CA 90001','opt4kb70','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','opt20hse','optbs3h7','opttf21e','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optegnto'); +INSERT INTO tblk4h9pgm7 VALUES(4,'recj2ca89m4','2023-05-27 17:10:51','usrbuajh55q','2023-05-27 18:32:25','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 4','9569 Theatre St. Oceanside, CA 92056','opt4zoqs','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(5,'recwczl6uep','2023-05-27 17:15:38','usrbuajh55q','2023-05-27 18:32:34','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 5','45 Young Street San Jose, CA 95127','opt4zoqs','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optegnto'); +INSERT INTO tblk4h9pgm7 VALUES(6,'rec07dly8bc','2023-05-27 17:16:58','usrbuajh55q','2023-05-27 18:34:21','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 7','WFG National Title Company, Northeast 8th Street','optbtkxe','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optxuzzu'); +INSERT INTO tblk4h9pgm7 VALUES(7,'recutqc1wlt','2023-05-27 17:20:41','usrbuajh55q','2023-05-27 18:34:30','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 6','9876 Fulton Lane San Jose, CA 95116','optbtkxe','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optt4gtr'); +INSERT INTO tblk4h9pgm7 VALUES(8,'recmghvocq5','2023-05-27 17:45:53','usrbuajh55q','2023-05-27 18:35:19','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 12','WFG National Title Company, Northeast 8th Street','optbtkxe','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optxuzzu'); +INSERT INTO tblk4h9pgm7 VALUES(9,'reccyhbbf5q','2023-05-27 17:45:53','usrbuajh55q','2023-05-27 18:34:48','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 9','9569 Theatre St. Oceanside, CA 92056','optdbss5','optuay9y','2023-05-08T16:00:00.000Z','opts4596','2023-05-09T16:00:00.000Z','optu5jkw','2023-04-19T16:00:00.000Z','opta8zon','2023-04-12T16:00:00.000Z','opt4h4tt','opt7i90b','opt530jq','2023-03-15T16:00:00.000Z','2023-08-29T16:00:00.000Z','optkcpbu','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(10,'recvyuc044p','2023-05-27 17:45:53','usrbuajh55q','2023-05-27 18:36:11','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 14','177 Griffin St. Los Angeles, CA 90001','opt4kb70','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','opt20hse','optbs3h7','opttf21e','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optegnto'); +INSERT INTO tblk4h9pgm7 VALUES(11,'recj2h464yu','2023-05-27 17:45:53','usrbuajh55q','2023-05-27 18:34:59','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 10','124 Glenridge Drive Spring Valley, CA 91977','opt4kb70','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','opt2gr6e','optbs3h7','opttf21e','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(12,'rec11ofngc2','2023-05-27 17:45:53','usrbuajh55q','2023-05-27 18:34:40','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 8','9569 Theatre St. Oceanside, CA 92056','opt4zoqs','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(13,'recmcfa13pa','2023-05-27 17:45:53','usrbuajh55q','2023-05-27 18:35:09','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 11','9876 Fulton Lane San Jose, CA 95116','optbtkxe','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optt4gtr'); +INSERT INTO tblk4h9pgm7 VALUES(14,'recqoc8f07w','2023-05-27 17:45:53','usrbuajh55q','2023-05-27 18:35:28','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 13','45 Young Street San Jose, CA 95127','opt4zoqs','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optegnto'); +INSERT INTO tblk4h9pgm7 VALUES(15,'recy0gptap1','2023-05-27 17:47:12','usrbuajh55q','2023-05-27 18:37:05','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 21','9569 Theatre St. Oceanside, CA 92056','opt4zoqs','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(16,'recw2phx7cz','2023-05-27 17:47:12','usrbuajh55q','2023-05-27 18:36:56','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 20','9569 Theatre St. Oceanside, CA 92056','optdbss5','optuay9y','2023-05-08T16:00:00.000Z','opts4596','2023-05-09T16:00:00.000Z','optu5jkw','2023-04-19T16:00:00.000Z','opta8zon','2023-04-12T16:00:00.000Z','opt4h4tt','opt7i90b','opt530jq','2023-03-15T16:00:00.000Z','2023-08-29T16:00:00.000Z','optkcpbu','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(17,'rect5xwmeqn','2023-05-27 17:47:12','usrbuajh55q','2023-05-27 18:36:48','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 19','124 Glenridge Drive Spring Valley, CA 91977','opt4kb70','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','opt2gr6e','optbs3h7','opttf21e','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optbywmt'); +INSERT INTO tblk4h9pgm7 VALUES(18,'recbcwnjg5s','2023-05-27 17:47:12','usrbuajh55q','2023-05-27 18:36:24','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 16','9876 Fulton Lane San Jose, CA 95116','optbtkxe','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optt4gtr'); +INSERT INTO tblk4h9pgm7 VALUES(19,'rec78ri5r2y','2023-05-27 17:47:12','usrbuajh55q','2023-05-27 18:36:17','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 15','WFG National Title Company, Northeast 8th Street','optbtkxe','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optxuzzu'); +INSERT INTO tblk4h9pgm7 VALUES(20,'reci2l4mi3d','2023-05-27 17:47:12','usrbuajh55q','2023-05-27 18:36:38','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 18','45 Young Street San Jose, CA 95127','opt4zoqs','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','optkns23','opt7i90b','optk9tdr','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optegnto'); +INSERT INTO tblk4h9pgm7 VALUES(21,'rece4yfbg4j','2023-05-27 17:47:12','usrbuajh55q','2023-05-27 18:36:30','usrbuajh55q',NULL,NULL,NULL,'Address / Unit 17','177 Griffin St. Los Angeles, CA 90001','opt4kb70','optuay9y','2023-04-23T16:00:00.000Z','opts4596','2023-05-11T16:00:00.000Z','optu5jkw','2023-05-11T16:00:00.000Z','optqfwlt','2023-05-29T16:00:00.000Z','opt20hse','optbs3h7','opttf21e','2023-02-26T16:00:00.000Z','2023-07-30T16:00:00.000Z','opt8g1l1','optegnto'); CREATE TABLE `fld7u72oymt_tblk4h9pgm7_closure_table` ( `child_id` varchar(255) not null, `parent_id` varchar(255) not null, @@ -11510,8 +1157,7 @@ CREATE TABLE `fld7u72oymt_tblk4h9pgm7_closure_table` ( foreign key(`parent_id`) references `tblk4h9pgm7`(`id`) on delete CASCADE, primary key (`child_id`, `parent_id`) ); -INSERT INTO fld7u72oymt_tblk4h9pgm7_closure_table -VALUES('rec3k4cw1m8', 'rec3k4cw1m8', 0); +INSERT INTO fld7u72oymt_tblk4h9pgm7_closure_table VALUES('rec3k4cw1m8','rec3k4cw1m8',0); CREATE TABLE `tblpgqt9f8e` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -11531,646 +1177,38 @@ CREATE TABLE `tblpgqt9f8e` ( `fldu4iy99hy` varchar(255), `fldmv3t03kj` varchar(255) ); -INSERT INTO tblpgqt9f8e -VALUES( - 1, - 'recmqxqukzi', - '2023-05-27 16:49:59', - 'usrbuajh55q', - '2023-05-27 18:03:45', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 1', - 1, - 'optj07q2', - '570 Annadale Lane Hollywood, FL 33024', - '17654467896', - 'ricky@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 2, - 'recxbmwn526', - '2023-05-27 16:50:05', - 'usrbuajh55q', - '2023-05-27 18:03:50', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 2', - 1, - 'optomi94', - '80 Rockwell Street Hialeah, FL 33014', - '17654535432', - 'herio@email.com', - '2023-03-20T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 3, - 'recf66q4c66', - '2023-05-27 16:50:11', - 'usrbuajh55q', - '2023-05-27 18:22:22', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 3', - 1, - 'optomi94', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 4, - 'rechdr1yisr', - '2023-05-27 16:50:18', - 'usrbuajh55q', - '2023-05-27 18:22:28', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 4', - 0, - 'opt5jwgs', - '275 Madison St. Deltona, FL 32738', - '12343566573', - 'jason@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 5, - 'recsphoiqqx', - '2023-05-27 16:50:23', - 'usrbuajh55q', - '2023-05-27 18:22:33', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 5', - 0, - 'opt44e5z', - '93 Roosevelt Street Pompano Beach, FL 33063', - '15463245786', - 'spakins@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 6, - 'reckvboinmy', - '2023-05-27 17:31:26', - 'usrbuajh55q', - '2023-05-27 18:22:40', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 14', - 1, - 'opthy6me', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 7, - 'recn0sdzkyo', - '2023-05-27 17:31:33', - 'usrbuajh55q', - '2023-05-27 18:22:48', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 15', - 1, - 'opt5jwgs', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 8, - 'recfgrtxasi', - '2023-05-27 17:31:37', - 'usrbuajh55q', - '2023-05-27 18:22:53', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 16', - 1, - 'opthy6me', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 9, - 'recimvejs9i', - '2023-05-27 17:31:40', - 'usrbuajh55q', - '2023-05-27 18:22:59', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 17', - 1, - 'optuous4', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 10, - 'recxxwkq3cy', - '2023-05-27 17:31:44', - 'usrbuajh55q', - '2023-05-27 18:23:05', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 20', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 11, - 'rec6o4ikwst', - '2023-05-27 17:31:47', - 'usrbuajh55q', - '2023-05-27 18:24:03', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 10', - 1, - 'opthy6me', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 12, - 'reconl710uy', - '2023-05-27 17:31:50', - 'usrbuajh55q', - '2023-05-27 18:24:10', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 19', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 13, - 'recn6dwtr57', - '2023-05-27 17:31:54', - 'usrbuajh55q', - '2023-05-27 18:24:14', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 35', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 14, - 'rec2mj3ncpd', - '2023-05-27 17:31:57', - 'usrbuajh55q', - '2023-05-27 18:24:19', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 9', - 0, - 'optuous4', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 15, - 'recg6l1mhgw', - '2023-05-27 17:32:00', - 'usrbuajh55q', - '2023-05-27 18:24:24', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 29', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 16, - 'rec9nhv2hfp', - '2023-05-27 17:32:04', - 'usrbuajh55q', - '2023-05-27 18:24:31', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 12', - 1, - 'opt44e5z', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 17, - 'rec0xps5wp7', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:17', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 8', - 1, - 'optomi94', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 18, - 'recslzzs1j7', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:21', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 22', - 1, - 'optj07q2', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 19, - 'recr8tj95zx', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:26', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 21', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 20, - 'recw5uvl3fr', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:31', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 23', - 1, - 'optuous4', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 21, - 'reck80rd3yz', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:36', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 24', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 22, - 'reclg36i38w', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:45', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 25', - 1, - 'optj07q2', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 23, - 'recwv3efxie', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:50', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 33', - 0, - 'opt5jwgs', - '275 Madison St. Deltona, FL 32738', - '12343566573', - 'jason@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 24, - 'reco6exsqfy', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:26:55', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 26', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 25, - 'recagsll0f9', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:09', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 13', - 1, - 'optj07q2', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 26, - 'recvu6izy0x', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:01', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 34', - 0, - 'optj07q2', - '570 Annadale Lane Hollywood, FL 33024', - '17654467896', - 'ricky@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 27, - 'recqxf6vqjf', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:14', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 27', - 1, - 'opt5jwgs', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 28, - 'recuj2x79z2', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:18', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 28', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 29, - 'recyguy1doa', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:24', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 30', - 1, - 'optzeb02', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 30, - 'recep1vxcr3', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:29', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 31', - 0, - 'opt44e5z', - '93 Roosevelt Street Pompano Beach, FL 33063', - '15463245786', - 'spakins@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 31, - 'recy6qugwr5', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:34', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 32', - 1, - 'optomi94', - '80 Rockwell Street Hialeah, FL 33014', - '17654535432', - 'herio@email.com', - '2023-03-20T16:00:00.000Z', - NULL, - 'optednbl' - ); -INSERT INTO tblpgqt9f8e -VALUES( - 32, - 'rec6r3ewvj9', - '2023-05-27 17:32:27', - 'usrbuajh55q', - '2023-05-27 18:27:39', - 'usrbuajh55q', - NULL, - NULL, - 'Subcontractor name 11', - 1, - 'opt5jwgs', - '49 Bridle St. Tampa, FL 33615', - '13125489655', - 'singer@email.com', - '2023-05-27T16:00:00.000Z', - NULL, - 'optqe1bf' - ); +INSERT INTO tblpgqt9f8e VALUES(1,'recmqxqukzi','2023-05-27 16:49:59','usrbuajh55q','2023-05-27 18:03:45','usrbuajh55q',NULL,NULL,'Subcontractor name 1',1,'optj07q2','570 Annadale Lane Hollywood, FL 33024','17654467896','ricky@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(2,'recxbmwn526','2023-05-27 16:50:05','usrbuajh55q','2023-05-27 18:03:50','usrbuajh55q',NULL,NULL,'Subcontractor name 2',1,'optomi94','80 Rockwell Street Hialeah, FL 33014','17654535432','herio@email.com','2023-03-20T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(3,'recf66q4c66','2023-05-27 16:50:11','usrbuajh55q','2023-05-27 18:22:22','usrbuajh55q',NULL,NULL,'Subcontractor name 3',1,'optomi94','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(4,'rechdr1yisr','2023-05-27 16:50:18','usrbuajh55q','2023-05-27 18:22:28','usrbuajh55q',NULL,NULL,'Subcontractor name 4',0,'opt5jwgs','275 Madison St. Deltona, FL 32738','12343566573','jason@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(5,'recsphoiqqx','2023-05-27 16:50:23','usrbuajh55q','2023-05-27 18:22:33','usrbuajh55q',NULL,NULL,'Subcontractor name 5',0,'opt44e5z','93 Roosevelt Street Pompano Beach, FL 33063','15463245786','spakins@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(6,'reckvboinmy','2023-05-27 17:31:26','usrbuajh55q','2023-05-27 18:22:40','usrbuajh55q',NULL,NULL,'Subcontractor name 14',1,'opthy6me','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(7,'recn0sdzkyo','2023-05-27 17:31:33','usrbuajh55q','2023-05-27 18:22:48','usrbuajh55q',NULL,NULL,'Subcontractor name 15',1,'opt5jwgs','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(8,'recfgrtxasi','2023-05-27 17:31:37','usrbuajh55q','2023-05-27 18:22:53','usrbuajh55q',NULL,NULL,'Subcontractor name 16',1,'opthy6me','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(9,'recimvejs9i','2023-05-27 17:31:40','usrbuajh55q','2023-05-27 18:22:59','usrbuajh55q',NULL,NULL,'Subcontractor name 17',1,'optuous4','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(10,'recxxwkq3cy','2023-05-27 17:31:44','usrbuajh55q','2023-05-27 18:23:05','usrbuajh55q',NULL,NULL,'Subcontractor name 20',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(11,'rec6o4ikwst','2023-05-27 17:31:47','usrbuajh55q','2023-05-27 18:24:03','usrbuajh55q',NULL,NULL,'Subcontractor name 10',1,'opthy6me','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(12,'reconl710uy','2023-05-27 17:31:50','usrbuajh55q','2023-05-27 18:24:10','usrbuajh55q',NULL,NULL,'Subcontractor name 19',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(13,'recn6dwtr57','2023-05-27 17:31:54','usrbuajh55q','2023-05-27 18:24:14','usrbuajh55q',NULL,NULL,'Subcontractor name 35',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(14,'rec2mj3ncpd','2023-05-27 17:31:57','usrbuajh55q','2023-05-27 18:24:19','usrbuajh55q',NULL,NULL,'Subcontractor name 9',0,'optuous4','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(15,'recg6l1mhgw','2023-05-27 17:32:00','usrbuajh55q','2023-05-27 18:24:24','usrbuajh55q',NULL,NULL,'Subcontractor name 29',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(16,'rec9nhv2hfp','2023-05-27 17:32:04','usrbuajh55q','2023-05-27 18:24:31','usrbuajh55q',NULL,NULL,'Subcontractor name 12',1,'opt44e5z','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(17,'rec0xps5wp7','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:17','usrbuajh55q',NULL,NULL,'Subcontractor name 8',1,'optomi94','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(18,'recslzzs1j7','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:21','usrbuajh55q',NULL,NULL,'Subcontractor name 22',1,'optj07q2','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(19,'recr8tj95zx','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:26','usrbuajh55q',NULL,NULL,'Subcontractor name 21',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(20,'recw5uvl3fr','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:31','usrbuajh55q',NULL,NULL,'Subcontractor name 23',1,'optuous4','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(21,'reck80rd3yz','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:36','usrbuajh55q',NULL,NULL,'Subcontractor name 24',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(22,'reclg36i38w','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:45','usrbuajh55q',NULL,NULL,'Subcontractor name 25',1,'optj07q2','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(23,'recwv3efxie','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:50','usrbuajh55q',NULL,NULL,'Subcontractor name 33',0,'opt5jwgs','275 Madison St. Deltona, FL 32738','12343566573','jason@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(24,'reco6exsqfy','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:26:55','usrbuajh55q',NULL,NULL,'Subcontractor name 26',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(25,'recagsll0f9','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:09','usrbuajh55q',NULL,NULL,'Subcontractor name 13',1,'optj07q2','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(26,'recvu6izy0x','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:01','usrbuajh55q',NULL,NULL,'Subcontractor name 34',0,'optj07q2','570 Annadale Lane Hollywood, FL 33024','17654467896','ricky@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(27,'recqxf6vqjf','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:14','usrbuajh55q',NULL,NULL,'Subcontractor name 27',1,'opt5jwgs','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(28,'recuj2x79z2','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:18','usrbuajh55q',NULL,NULL,'Subcontractor name 28',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(29,'recyguy1doa','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:24','usrbuajh55q',NULL,NULL,'Subcontractor name 30',1,'optzeb02','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(30,'recep1vxcr3','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:29','usrbuajh55q',NULL,NULL,'Subcontractor name 31',0,'opt44e5z','93 Roosevelt Street Pompano Beach, FL 33063','15463245786','spakins@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); +INSERT INTO tblpgqt9f8e VALUES(31,'recy6qugwr5','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:34','usrbuajh55q',NULL,NULL,'Subcontractor name 32',1,'optomi94','80 Rockwell Street Hialeah, FL 33014','17654535432','herio@email.com','2023-03-20T16:00:00.000Z',NULL,'optednbl'); +INSERT INTO tblpgqt9f8e VALUES(32,'rec6r3ewvj9','2023-05-27 17:32:27','usrbuajh55q','2023-05-27 18:27:39','usrbuajh55q',NULL,NULL,'Subcontractor name 11',1,'opt5jwgs','49 Bridle St. Tampa, FL 33615','13125489655','singer@email.com','2023-05-27T16:00:00.000Z',NULL,'optqe1bf'); CREATE TABLE `fldqetskkmf_tblk4h9pgm7_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -12178,70 +1216,38 @@ CREATE TABLE `fldqetskkmf_tblk4h9pgm7_adjacency_list` ( foreign key(`from_id`) references `tblpgqt9f8e`(`id`), primary key (`to_id`, `from_id`) ); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recf66q4c66'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec07dly8bc', 'rechdr1yisr'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec36zg4g7u', 'recmqxqukzi'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('recutqc1wlt', 'recsphoiqqx'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec36zg4g7u', 'recxbmwn526'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'reckvboinmy'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recn0sdzkyo'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recfgrtxasi'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recimvejs9i'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recxxwkq3cy'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recn6dwtr57'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recg6l1mhgw'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'reck80rd3yz'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec07dly8bc', 'recwv3efxie'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec36zg4g7u', 'recvu6izy0x'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recuj2x79z2'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recyguy1doa'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('recutqc1wlt', 'recep1vxcr3'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec36zg4g7u', 'recy6qugwr5'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'rec0xps5wp7'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('recj2ca89m4', 'rec2mj3ncpd'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('recwczl6uep', 'rec6o4ikwst'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('recutqc1wlt', 'rec6r3ewvj9'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec1sc83549', 'rec9nhv2hfp'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec1sc83549', 'recagsll0f9'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec36zg4g7u', 'reconl710uy'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec07dly8bc', 'recr8tj95zx'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec36zg4g7u', 'recslzzs1j7'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec1sc83549', 'recw5uvl3fr'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('recj2ca89m4', 'reclg36i38w'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('rec1sc83549', 'reco6exsqfy'); -INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list -VALUES('recj2ca89m4', 'recqxf6vqjf'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recf66q4c66'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec07dly8bc','rechdr1yisr'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec36zg4g7u','recmqxqukzi'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('recutqc1wlt','recsphoiqqx'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec36zg4g7u','recxbmwn526'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','reckvboinmy'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recn0sdzkyo'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recfgrtxasi'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recimvejs9i'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recxxwkq3cy'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recn6dwtr57'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recg6l1mhgw'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','reck80rd3yz'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec07dly8bc','recwv3efxie'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec36zg4g7u','recvu6izy0x'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recuj2x79z2'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recyguy1doa'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('recutqc1wlt','recep1vxcr3'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec36zg4g7u','recy6qugwr5'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','rec0xps5wp7'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('recj2ca89m4','rec2mj3ncpd'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('recwczl6uep','rec6o4ikwst'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('recutqc1wlt','rec6r3ewvj9'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec1sc83549','rec9nhv2hfp'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec1sc83549','recagsll0f9'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec36zg4g7u','reconl710uy'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec07dly8bc','recr8tj95zx'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec36zg4g7u','recslzzs1j7'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec1sc83549','recw5uvl3fr'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('recj2ca89m4','reclg36i38w'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('rec1sc83549','reco6exsqfy'); +INSERT INTO fldqetskkmf_tblk4h9pgm7_adjacency_list VALUES('recj2ca89m4','recqxf6vqjf'); CREATE TABLE `tblfx77neny` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -12264,535 +1270,29 @@ CREATE TABLE `tblfx77neny` ( `fldicbkx09x` varchar(255), `fldrwyxeapl` datetime ); -INSERT INTO tblfx77neny -VALUES( - 1, - 'recblayey9u', - '2023-05-27 08:09:37', - 'usrbuajh55q', - '2023-05-27 08:10:25', - 'usrbuajh55q', - 1685175025977, - 'usrbuajh55q', - 'Adress/ Unit 1', - '', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO tblfx77neny -VALUES( - 2, - 'rechppb6411', - '2023-05-27 08:11:39', - 'usrbuajh55q', - '2023-05-27 08:11:52', - 'usrbuajh55q', - 1685175112515, - 'usrbuajh55q', - 'Address / Unit 1', - '', - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL - ); -INSERT INTO tblfx77neny -VALUES( - 3, - 'recx6x4ummz', - '2023-05-27 08:12:22', - 'usrbuajh55q', - '2023-05-27 17:16:25', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 3', - '124 Glenridge Drive Spring Valley, CA 91977', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'optdrqmq', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 4, - 'recnvwfvt2t', - '2023-05-27 16:53:33', - 'usrbuajh55q', - '2023-05-27 16:53:33', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 1', - '177 Griffin St. Los Angeles, CA 90001', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'optektao', - 'optkxfmz', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-03-15T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 5, - 'rect3ufkcmf', - '2023-05-27 17:00:42', - 'usrbuajh55q', - '2023-05-27 17:16:36', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 2', - '97 Old Water St. Los Angeles, CA 90066', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 6, - 'recf6mbeoc2', - '2023-05-27 17:11:51', - 'usrbuajh55q', - '2023-05-27 17:12:46', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 4', - '9569 Theatre St. Oceanside, CA 92056', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 7, - 'rec89s7wu7q', - '2023-05-27 17:15:15', - 'usrbuajh55q', - '2023-05-27 17:18:23', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 6', - '9876 Fulton Lane San Jose, CA 95116', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 8, - 'recoveqhc7w', - '2023-05-27 17:18:06', - 'usrbuajh55q', - '2023-05-27 17:18:06', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 5', - '45 Young Street San Jose, CA 95127', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 9, - 'rec2a2eptuh', - '2023-05-27 17:19:56', - 'usrbuajh55q', - '2023-05-27 17:21:21', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 7', - 'WFG National Title Company, Northeast 8th Street', - 'optk9i7d', - 'optij18u', - 'optppv4b', - 'optkz4m0', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 10, - 'reckcrau21x', - '2023-05-27 17:48:35', - 'usrbuajh55q', - '2023-05-27 17:50:37', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 8', - 'WFG National Title Company, Northeast 8th Street', - 'optk9i7d', - 'optij18u', - 'optppv4b', - 'optkz4m0', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 11, - 'rec0ubntf41', - '2023-05-27 17:48:35', - 'usrbuajh55q', - '2023-05-27 17:50:45', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 9', - '9876 Fulton Lane San Jose, CA 95116', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 12, - 'rec297sk93x', - '2023-05-27 17:48:35', - 'usrbuajh55q', - '2023-05-27 17:50:54', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 10', - '9569 Theatre St. Oceanside, CA 92056', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 13, - 'rec6tnaqs1l', - '2023-05-27 17:48:35', - 'usrbuajh55q', - '2023-05-27 17:51:03', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 11', - '177 Griffin St. Los Angeles, CA 90001', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'optektao', - 'optkxfmz', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-03-15T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 14, - 'recw4knspec', - '2023-05-27 17:48:35', - 'usrbuajh55q', - '2023-05-27 17:51:14', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 12', - '45 Young Street San Jose, CA 95127', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 15, - 'rec80w483it', - '2023-05-27 17:48:35', - 'usrbuajh55q', - '2023-05-27 17:51:22', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 13', - '97 Old Water St. Los Angeles, CA 90066', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 16, - 'recx8wdwctx', - '2023-05-27 17:48:35', - 'usrbuajh55q', - '2023-05-27 17:51:30', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 14', - '124 Glenridge Drive Spring Valley, CA 91977', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'optdrqmq', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 17, - 'reckyuq3lyw', - '2023-05-27 17:49:36', - 'usrbuajh55q', - '2023-05-27 17:51:38', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 15', - '9876 Fulton Lane San Jose, CA 95116', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 18, - 'rech2zlvhgx', - '2023-05-27 17:49:36', - 'usrbuajh55q', - '2023-05-27 17:51:47', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 16', - '9569 Theatre St. Oceanside, CA 92056', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 19, - 'rece5fhnsus', - '2023-05-27 17:49:36', - 'usrbuajh55q', - '2023-05-27 17:51:55', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 17', - '177 Griffin St. Los Angeles, CA 90001', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'optektao', - 'optkxfmz', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-03-15T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 20, - 'recmwb7bkxx', - '2023-05-27 17:49:36', - 'usrbuajh55q', - '2023-05-27 17:52:03', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 18', - '97 Old Water St. Los Angeles, CA 90066', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 21, - 'rec734usgen', - '2023-05-27 17:49:36', - 'usrbuajh55q', - '2023-05-27 17:52:10', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 19', - 'WFG National Title Company, Northeast 8th Street', - 'optk9i7d', - 'optij18u', - 'optppv4b', - 'optkz4m0', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 22, - 'recutcmrgjy', - '2023-05-27 17:49:36', - 'usrbuajh55q', - '2023-05-27 17:52:18', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 20', - '45 Young Street San Jose, CA 95127', - 'optk9i7d', - 'opt4zm1b', - 'optxwahs', - 'optuvv04', - 'opt6eado', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); -INSERT INTO tblfx77neny -VALUES( - 23, - 'rec4f5oh4ao', - '2023-05-27 17:49:36', - 'usrbuajh55q', - '2023-05-27 17:52:28', - 'usrbuajh55q', - NULL, - NULL, - 'Address / Unit 21', - '124 Glenridge Drive Spring Valley, CA 91977', - 'optk9i7d', - 'opt4zm1b', - 'optj31dv', - 'optta5lv', - 'optdrqmq', - 'optzzqb3', - 'optjmdk5', - 'optbh9nh', - 'opt3icrr', - '2023-05-02T16:00:00.000Z' - ); +INSERT INTO tblfx77neny VALUES(1,'recblayey9u','2023-05-27 08:09:37','usrbuajh55q','2023-05-27 08:10:25','usrbuajh55q',1685175025977,'usrbuajh55q','Adress/ Unit 1','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO tblfx77neny VALUES(2,'rechppb6411','2023-05-27 08:11:39','usrbuajh55q','2023-05-27 08:11:52','usrbuajh55q',1685175112515,'usrbuajh55q','Address / Unit 1','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +INSERT INTO tblfx77neny VALUES(3,'recx6x4ummz','2023-05-27 08:12:22','usrbuajh55q','2023-05-27 17:16:25','usrbuajh55q',NULL,NULL,'Address / Unit 3','124 Glenridge Drive Spring Valley, CA 91977','optk9i7d','opt4zm1b','optj31dv','optta5lv','optdrqmq','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(4,'recnvwfvt2t','2023-05-27 16:53:33','usrbuajh55q','2023-05-27 16:53:33','usrbuajh55q',NULL,NULL,'Address / Unit 1','177 Griffin St. Los Angeles, CA 90001','optk9i7d','opt4zm1b','optj31dv','optta5lv','optektao','optkxfmz','optjmdk5','optbh9nh','opt3icrr','2023-03-15T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(5,'rect3ufkcmf','2023-05-27 17:00:42','usrbuajh55q','2023-05-27 17:16:36','usrbuajh55q',NULL,NULL,'Address / Unit 2','97 Old Water St. Los Angeles, CA 90066','optk9i7d','opt4zm1b','optj31dv','optta5lv','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(6,'recf6mbeoc2','2023-05-27 17:11:51','usrbuajh55q','2023-05-27 17:12:46','usrbuajh55q',NULL,NULL,'Address / Unit 4','9569 Theatre St. Oceanside, CA 92056','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(7,'rec89s7wu7q','2023-05-27 17:15:15','usrbuajh55q','2023-05-27 17:18:23','usrbuajh55q',NULL,NULL,'Address / Unit 6','9876 Fulton Lane San Jose, CA 95116','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(8,'recoveqhc7w','2023-05-27 17:18:06','usrbuajh55q','2023-05-27 17:18:06','usrbuajh55q',NULL,NULL,'Address / Unit 5','45 Young Street San Jose, CA 95127','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(9,'rec2a2eptuh','2023-05-27 17:19:56','usrbuajh55q','2023-05-27 17:21:21','usrbuajh55q',NULL,NULL,'Address / Unit 7','WFG National Title Company, Northeast 8th Street','optk9i7d','optij18u','optppv4b','optkz4m0','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(10,'reckcrau21x','2023-05-27 17:48:35','usrbuajh55q','2023-05-27 17:50:37','usrbuajh55q',NULL,NULL,'Address / Unit 8','WFG National Title Company, Northeast 8th Street','optk9i7d','optij18u','optppv4b','optkz4m0','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(11,'rec0ubntf41','2023-05-27 17:48:35','usrbuajh55q','2023-05-27 17:50:45','usrbuajh55q',NULL,NULL,'Address / Unit 9','9876 Fulton Lane San Jose, CA 95116','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(12,'rec297sk93x','2023-05-27 17:48:35','usrbuajh55q','2023-05-27 17:50:54','usrbuajh55q',NULL,NULL,'Address / Unit 10','9569 Theatre St. Oceanside, CA 92056','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(13,'rec6tnaqs1l','2023-05-27 17:48:35','usrbuajh55q','2023-05-27 17:51:03','usrbuajh55q',NULL,NULL,'Address / Unit 11','177 Griffin St. Los Angeles, CA 90001','optk9i7d','opt4zm1b','optj31dv','optta5lv','optektao','optkxfmz','optjmdk5','optbh9nh','opt3icrr','2023-03-15T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(14,'recw4knspec','2023-05-27 17:48:35','usrbuajh55q','2023-05-27 17:51:14','usrbuajh55q',NULL,NULL,'Address / Unit 12','45 Young Street San Jose, CA 95127','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(15,'rec80w483it','2023-05-27 17:48:35','usrbuajh55q','2023-05-27 17:51:22','usrbuajh55q',NULL,NULL,'Address / Unit 13','97 Old Water St. Los Angeles, CA 90066','optk9i7d','opt4zm1b','optj31dv','optta5lv','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(16,'recx8wdwctx','2023-05-27 17:48:35','usrbuajh55q','2023-05-27 17:51:30','usrbuajh55q',NULL,NULL,'Address / Unit 14','124 Glenridge Drive Spring Valley, CA 91977','optk9i7d','opt4zm1b','optj31dv','optta5lv','optdrqmq','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(17,'reckyuq3lyw','2023-05-27 17:49:36','usrbuajh55q','2023-05-27 17:51:38','usrbuajh55q',NULL,NULL,'Address / Unit 15','9876 Fulton Lane San Jose, CA 95116','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(18,'rech2zlvhgx','2023-05-27 17:49:36','usrbuajh55q','2023-05-27 17:51:47','usrbuajh55q',NULL,NULL,'Address / Unit 16','9569 Theatre St. Oceanside, CA 92056','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(19,'rece5fhnsus','2023-05-27 17:49:36','usrbuajh55q','2023-05-27 17:51:55','usrbuajh55q',NULL,NULL,'Address / Unit 17','177 Griffin St. Los Angeles, CA 90001','optk9i7d','opt4zm1b','optj31dv','optta5lv','optektao','optkxfmz','optjmdk5','optbh9nh','opt3icrr','2023-03-15T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(20,'recmwb7bkxx','2023-05-27 17:49:36','usrbuajh55q','2023-05-27 17:52:03','usrbuajh55q',NULL,NULL,'Address / Unit 18','97 Old Water St. Los Angeles, CA 90066','optk9i7d','opt4zm1b','optj31dv','optta5lv','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(21,'rec734usgen','2023-05-27 17:49:36','usrbuajh55q','2023-05-27 17:52:10','usrbuajh55q',NULL,NULL,'Address / Unit 19','WFG National Title Company, Northeast 8th Street','optk9i7d','optij18u','optppv4b','optkz4m0','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(22,'recutcmrgjy','2023-05-27 17:49:36','usrbuajh55q','2023-05-27 17:52:18','usrbuajh55q',NULL,NULL,'Address / Unit 20','45 Young Street San Jose, CA 95127','optk9i7d','opt4zm1b','optxwahs','optuvv04','opt6eado','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); +INSERT INTO tblfx77neny VALUES(23,'rec4f5oh4ao','2023-05-27 17:49:36','usrbuajh55q','2023-05-27 17:52:28','usrbuajh55q',NULL,NULL,'Address / Unit 21','124 Glenridge Drive Spring Valley, CA 91977','optk9i7d','opt4zm1b','optj31dv','optta5lv','optdrqmq','optzzqb3','optjmdk5','optbh9nh','opt3icrr','2023-05-02T16:00:00.000Z'); CREATE TABLE `fldxjfi8nvf_collaborator` ( `user_id` varchar(255) not null, `record_id` varchar(255) not null, @@ -12800,48 +1300,27 @@ CREATE TABLE `fldxjfi8nvf_collaborator` ( foreign key(`record_id`) references `tblfx77neny`(`id`), primary key (`record_id`, `user_id`) ); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recnvwfvt2t'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recx6x4ummz'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rect3ufkcmf'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recf6mbeoc2'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec89s7wu7q'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recoveqhc7w'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec2a2eptuh'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'reckcrau21x'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec0ubntf41'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec297sk93x'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec6tnaqs1l'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recw4knspec'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec80w483it'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recx8wdwctx'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'reckyuq3lyw'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rech2zlvhgx'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rece5fhnsus'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recmwb7bkxx'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec734usgen'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'recutcmrgjy'); -INSERT INTO fldxjfi8nvf_collaborator -VALUES('usrbuajh55q', 'rec4f5oh4ao'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recnvwfvt2t'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recx6x4ummz'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rect3ufkcmf'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recf6mbeoc2'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec89s7wu7q'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recoveqhc7w'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec2a2eptuh'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','reckcrau21x'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec0ubntf41'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec297sk93x'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec6tnaqs1l'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recw4knspec'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec80w483it'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recx8wdwctx'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','reckyuq3lyw'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rech2zlvhgx'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rece5fhnsus'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recmwb7bkxx'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec734usgen'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','recutcmrgjy'); +INSERT INTO fldxjfi8nvf_collaborator VALUES('usrbuajh55q','rec4f5oh4ao'); CREATE TABLE `fldifd9g29a_tblk4h9pgm7_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -12849,48 +1328,27 @@ CREATE TABLE `fldifd9g29a_tblk4h9pgm7_adjacency_list` ( foreign key(`from_id`) references `tblfx77neny`(`id`), primary key (`to_id`, `from_id`) ); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rec1sc83549', 'recnvwfvt2t'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recj2ca89m4', 'recf6mbeoc2'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rec3k4cw1m8', 'recx6x4ummz'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rec36zg4g7u', 'rect3ufkcmf'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recwczl6uep', 'recoveqhc7w'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rec07dly8bc', 'rec89s7wu7q'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rec07dly8bc', 'rec2a2eptuh'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rec11ofngc2', 'reckcrau21x'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('reccyhbbf5q', 'rec0ubntf41'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recj2h464yu', 'rec297sk93x'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recmcfa13pa', 'rec6tnaqs1l'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recmghvocq5', 'recw4knspec'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recqoc8f07w', 'rec80w483it'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recvyuc044p', 'recx8wdwctx'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rec78ri5r2y', 'reckyuq3lyw'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recbcwnjg5s', 'rech2zlvhgx'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rece4yfbg4j', 'rece5fhnsus'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('reci2l4mi3d', 'recmwb7bkxx'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('rect5xwmeqn', 'rec734usgen'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recw2phx7cz', 'recutcmrgjy'); -INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list -VALUES('recy0gptap1', 'rec4f5oh4ao'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rec1sc83549','recnvwfvt2t'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recj2ca89m4','recf6mbeoc2'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rec3k4cw1m8','recx6x4ummz'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rec36zg4g7u','rect3ufkcmf'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recwczl6uep','recoveqhc7w'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rec07dly8bc','rec89s7wu7q'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rec07dly8bc','rec2a2eptuh'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rec11ofngc2','reckcrau21x'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('reccyhbbf5q','rec0ubntf41'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recj2h464yu','rec297sk93x'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recmcfa13pa','rec6tnaqs1l'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recmghvocq5','recw4knspec'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recqoc8f07w','rec80w483it'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recvyuc044p','recx8wdwctx'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rec78ri5r2y','reckyuq3lyw'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recbcwnjg5s','rech2zlvhgx'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rece4yfbg4j','rece5fhnsus'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('reci2l4mi3d','recmwb7bkxx'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('rect5xwmeqn','rec734usgen'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recw2phx7cz','recutcmrgjy'); +INSERT INTO fldifd9g29a_tblk4h9pgm7_adjacency_list VALUES('recy0gptap1','rec4f5oh4ao'); CREATE TABLE `flds4gpji6k_collaborator` ( `user_id` varchar(255) not null, `record_id` varchar(255) not null, @@ -12898,48 +1356,27 @@ CREATE TABLE `flds4gpji6k_collaborator` ( foreign key(`record_id`) references `tblk4h9pgm7`(`id`), primary key (`record_id`, `user_id`) ); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rec3k4cw1m8'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rec1sc83549'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rec36zg4g7u'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recj2ca89m4'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recwczl6uep'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rec07dly8bc'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recutqc1wlt'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recmghvocq5'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'reccyhbbf5q'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recvyuc044p'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recj2h464yu'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rec11ofngc2'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recmcfa13pa'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recqoc8f07w'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recy0gptap1'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recw2phx7cz'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rect5xwmeqn'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'recbcwnjg5s'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rec78ri5r2y'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'reci2l4mi3d'); -INSERT INTO flds4gpji6k_collaborator -VALUES('usrbuajh55q', 'rece4yfbg4j'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rec3k4cw1m8'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rec1sc83549'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rec36zg4g7u'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recj2ca89m4'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recwczl6uep'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rec07dly8bc'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recutqc1wlt'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recmghvocq5'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','reccyhbbf5q'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recvyuc044p'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recj2h464yu'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rec11ofngc2'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recmcfa13pa'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recqoc8f07w'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recy0gptap1'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recw2phx7cz'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rect5xwmeqn'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','recbcwnjg5s'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rec78ri5r2y'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','reci2l4mi3d'); +INSERT INTO flds4gpji6k_collaborator VALUES('usrbuajh55q','rece4yfbg4j'); CREATE TABLE `fldzhfhodco_tblpgqt9f8e_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -12954,48 +1391,27 @@ CREATE TABLE `fld5dje464n_collaborator` ( foreign key(`record_id`) references `tblk4h9pgm7`(`id`), primary key (`record_id`, `user_id`) ); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rec3k4cw1m8'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rec1sc83549'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rec36zg4g7u'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recj2ca89m4'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recwczl6uep'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rec07dly8bc'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recutqc1wlt'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recmghvocq5'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'reccyhbbf5q'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recvyuc044p'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recj2h464yu'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rec11ofngc2'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recmcfa13pa'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recqoc8f07w'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recy0gptap1'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recw2phx7cz'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rect5xwmeqn'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'recbcwnjg5s'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rec78ri5r2y'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'reci2l4mi3d'); -INSERT INTO fld5dje464n_collaborator -VALUES('usrbuajh55q', 'rece4yfbg4j'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rec3k4cw1m8'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rec1sc83549'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rec36zg4g7u'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recj2ca89m4'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recwczl6uep'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rec07dly8bc'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recutqc1wlt'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recmghvocq5'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','reccyhbbf5q'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recvyuc044p'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recj2h464yu'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rec11ofngc2'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recmcfa13pa'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recqoc8f07w'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recy0gptap1'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recw2phx7cz'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rect5xwmeqn'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','recbcwnjg5s'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rec78ri5r2y'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','reci2l4mi3d'); +INSERT INTO fld5dje464n_collaborator VALUES('usrbuajh55q','rece4yfbg4j'); CREATE TABLE `fld4h9alzho_tblfx77neny_adjacency_list` ( `to_id` varchar(255) not null, `from_id` varchar(255) not null, @@ -13003,48 +1419,27 @@ CREATE TABLE `fld4h9alzho_tblfx77neny_adjacency_list` ( foreign key(`from_id`) references `tblk4h9pgm7`(`id`), primary key (`to_id`, `from_id`) ); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recx6x4ummz', 'rec3k4cw1m8'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recnvwfvt2t', 'rec1sc83549'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rect3ufkcmf', 'rec36zg4g7u'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recf6mbeoc2', 'recj2ca89m4'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recoveqhc7w', 'recwczl6uep'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec2a2eptuh', 'rec07dly8bc'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec89s7wu7q', 'recutqc1wlt'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('reckcrau21x', 'rec11ofngc2'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec0ubntf41', 'reccyhbbf5q'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec297sk93x', 'recj2h464yu'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec6tnaqs1l', 'recmcfa13pa'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recw4knspec', 'recmghvocq5'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec80w483it', 'recqoc8f07w'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recx8wdwctx', 'recvyuc044p'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('reckyuq3lyw', 'rec78ri5r2y'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rech2zlvhgx', 'recbcwnjg5s'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rece5fhnsus', 'rece4yfbg4j'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recmwb7bkxx', 'reci2l4mi3d'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec734usgen', 'rect5xwmeqn'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('recutcmrgjy', 'recw2phx7cz'); -INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list -VALUES('rec4f5oh4ao', 'recy0gptap1'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recx6x4ummz','rec3k4cw1m8'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recnvwfvt2t','rec1sc83549'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rect3ufkcmf','rec36zg4g7u'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recf6mbeoc2','recj2ca89m4'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recoveqhc7w','recwczl6uep'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec2a2eptuh','rec07dly8bc'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec89s7wu7q','recutqc1wlt'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('reckcrau21x','rec11ofngc2'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec0ubntf41','reccyhbbf5q'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec297sk93x','recj2h464yu'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec6tnaqs1l','recmcfa13pa'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recw4knspec','recmghvocq5'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec80w483it','recqoc8f07w'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recx8wdwctx','recvyuc044p'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('reckyuq3lyw','rec78ri5r2y'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rech2zlvhgx','recbcwnjg5s'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rece5fhnsus','rece4yfbg4j'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recmwb7bkxx','reci2l4mi3d'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec734usgen','rect5xwmeqn'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('recutcmrgjy','recw2phx7cz'); +INSERT INTO fld4h9alzho_tblfx77neny_adjacency_list VALUES('rec4f5oh4ao','recy0gptap1'); CREATE TABLE `fldome9lb5l_tblk4h9pgm7_closure_table` ( `child_id` varchar(255) not null, `parent_id` varchar(255) not null, @@ -13053,48 +1448,27 @@ CREATE TABLE `fldome9lb5l_tblk4h9pgm7_closure_table` ( foreign key(`parent_id`) references `tblk4h9pgm7`(`id`) on delete CASCADE, primary key (`child_id`, `parent_id`) ); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rec3k4cw1m8', 'rec3k4cw1m8', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rec1sc83549', 'rec1sc83549', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rec36zg4g7u', 'rec36zg4g7u', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recj2ca89m4', 'recj2ca89m4', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recwczl6uep', 'recwczl6uep', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rec07dly8bc', 'rec07dly8bc', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recutqc1wlt', 'recutqc1wlt', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recmghvocq5', 'recmghvocq5', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('reccyhbbf5q', 'reccyhbbf5q', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recvyuc044p', 'recvyuc044p', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recmcfa13pa', 'recmcfa13pa', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recj2h464yu', 'recj2h464yu', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rec11ofngc2', 'rec11ofngc2', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recqoc8f07w', 'recqoc8f07w', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recw2phx7cz', 'recw2phx7cz', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recbcwnjg5s', 'recbcwnjg5s', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rec78ri5r2y', 'rec78ri5r2y', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rece4yfbg4j', 'rece4yfbg4j', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('recy0gptap1', 'recy0gptap1', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('rect5xwmeqn', 'rect5xwmeqn', 0); -INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table -VALUES('reci2l4mi3d', 'reci2l4mi3d', 0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rec3k4cw1m8','rec3k4cw1m8',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rec1sc83549','rec1sc83549',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rec36zg4g7u','rec36zg4g7u',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recj2ca89m4','recj2ca89m4',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recwczl6uep','recwczl6uep',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rec07dly8bc','rec07dly8bc',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recutqc1wlt','recutqc1wlt',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recmghvocq5','recmghvocq5',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('reccyhbbf5q','reccyhbbf5q',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recvyuc044p','recvyuc044p',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recmcfa13pa','recmcfa13pa',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recj2h464yu','recj2h464yu',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rec11ofngc2','rec11ofngc2',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recqoc8f07w','recqoc8f07w',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recw2phx7cz','recw2phx7cz',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recbcwnjg5s','recbcwnjg5s',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rec78ri5r2y','rec78ri5r2y',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rece4yfbg4j','rece4yfbg4j',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('recy0gptap1','recy0gptap1',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('rect5xwmeqn','rect5xwmeqn',0); +INSERT INTO fldome9lb5l_tblk4h9pgm7_closure_table VALUES('reci2l4mi3d','reci2l4mi3d',0); CREATE TABLE `tblq36e537c` ( `auto_increment` integer not null primary key autoincrement, `id` varchar(255) not null, @@ -13106,18 +1480,7 @@ CREATE TABLE `tblq36e537c` ( `deleted_by` varchar(255), `fld3nlurfbt` varchar(255) ); -INSERT INTO tblq36e537c -VALUES( - 1, - 'recmws5sz9d', - '2023-05-27 09:10:24', - 'usrbuajh55q', - '2023-05-27 09:10:24', - 'usrbuajh55q', - NULL, - NULL, - 'a' - ); +INSERT INTO tblq36e537c VALUES(1,'recmws5sz9d','2023-05-27 09:10:24','usrbuajh55q','2023-05-27 09:10:24','usrbuajh55q',NULL,NULL,'a'); CREATE TABLE `fldft7edqw6_tblq36e537c_closure_table` ( `child_id` varchar(255) not null, `parent_id` varchar(255) not null, @@ -13126,8 +1489,7 @@ CREATE TABLE `fldft7edqw6_tblq36e537c_closure_table` ( foreign key(`parent_id`) references `tblq36e537c`(`id`) on delete CASCADE, primary key (`child_id`, `parent_id`) ); -INSERT INTO fldft7edqw6_tblq36e537c_closure_table -VALUES('recmws5sz9d', 'recmws5sz9d', 0); +INSERT INTO fldft7edqw6_tblq36e537c_closure_table VALUES('recmws5sz9d','recmws5sz9d',0); CREATE TABLE `fldq5ohh7hx_tblruubokdc_closure_table` ( `child_id` varchar(255) not null, `parent_id` varchar(255) not null, @@ -13136,55 +1498,57 @@ CREATE TABLE `fldq5ohh7hx_tblruubokdc_closure_table` ( foreign key(`parent_id`) references `tblruubokdc`(`id`) on delete CASCADE, primary key (`child_id`, `parent_id`) ); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recjh3moqxr', 'recjh3moqxr', 0); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recm1kabi9l', 'recm1kabi9l', 0); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recsuqouv2q', 'recsuqouv2q', 0); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recngzo73ge', 'recngzo73ge', 0); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recvpmpb1bv', 'recvpmpb1bv', 0); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recngzo73ge', 'recsuqouv2q', 1); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recjh3moqxr', 'recngzo73ge', 1); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recjh3moqxr', 'recsuqouv2q', 2); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recm1kabi9l', 'recngzo73ge', 1); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recm1kabi9l', 'recsuqouv2q', 2); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recvpmpb1bv', 'recm1kabi9l', 1); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recvpmpb1bv', 'recngzo73ge', 2); -INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table -VALUES('recvpmpb1bv', 'recsuqouv2q', 3); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recjh3moqxr','recjh3moqxr',0); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recm1kabi9l','recm1kabi9l',0); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recsuqouv2q','recsuqouv2q',0); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recngzo73ge','recngzo73ge',0); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recvpmpb1bv','recvpmpb1bv',0); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recngzo73ge','recsuqouv2q',1); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recjh3moqxr','recngzo73ge',1); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recjh3moqxr','recsuqouv2q',2); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recm1kabi9l','recngzo73ge',1); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recm1kabi9l','recsuqouv2q',2); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recvpmpb1bv','recm1kabi9l',1); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recvpmpb1bv','recngzo73ge',2); +INSERT INTO fldq5ohh7hx_tblruubokdc_closure_table VALUES('recvpmpb1bv','recsuqouv2q',3); +CREATE TABLE `undb_outbox` ( + `uuid` text not null, + `created_at` datetime not null, + `updated_at` datetime not null, + `deleted_at` datetime null, + `name` text null, + `operator_id` text null, + `payload` json not null, + primary key (`uuid`) +); +CREATE TABLE `undb_webhook` ( + `id` text not null, + `created_at` datetime not null, + `updated_at` datetime not null, + `deleted_at` datetime null, + `url` text not null, + `name` text not null, + `method` text not null, + `headers` json not null, + `target_id` text null, + `target_type` text null, + `event` text null, + `enabled` integer not null default false, + primary key (`id`) +); +CREATE TABLE `undb_share` (`id` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `target_id` text null, `target_type` text null, `enabled` integer not null default false, primary key (`id`)); DELETE FROM sqlite_sequence; -INSERT INTO sqlite_sequence -VALUES('mikro_orm_migrations', 5); -INSERT INTO sqlite_sequence -VALUES('tbl4undb0lh', 24); -INSERT INTO sqlite_sequence -VALUES('tblramxgp7z', 4); -INSERT INTO sqlite_sequence -VALUES('tblwqjcq0x8', 4); -INSERT INTO sqlite_sequence -VALUES('tbl4ezqb49a', 9); -INSERT INTO sqlite_sequence -VALUES('tblruubokdc', 5); -INSERT INTO sqlite_sequence -VALUES('tbl2za35hbg', 68); -INSERT INTO sqlite_sequence -VALUES('tblk4h9pgm7', 21); -INSERT INTO sqlite_sequence -VALUES('tblfx77neny', 23); -INSERT INTO sqlite_sequence -VALUES('tblq36e537c', 1); -INSERT INTO sqlite_sequence -VALUES('tblpgqt9f8e', 32); +INSERT INTO sqlite_sequence VALUES('mikro_orm_migrations',5); +INSERT INTO sqlite_sequence VALUES('tbl4undb0lh',24); +INSERT INTO sqlite_sequence VALUES('tblramxgp7z',4); +INSERT INTO sqlite_sequence VALUES('tblwqjcq0x8',4); +INSERT INTO sqlite_sequence VALUES('tbl4ezqb49a',9); +INSERT INTO sqlite_sequence VALUES('tblruubokdc',5); +INSERT INTO sqlite_sequence VALUES('tbl2za35hbg',68); +INSERT INTO sqlite_sequence VALUES('tblk4h9pgm7',21); +INSERT INTO sqlite_sequence VALUES('tblfx77neny',23); +INSERT INTO sqlite_sequence VALUES('tblq36e537c',1); +INSERT INTO sqlite_sequence VALUES('tblpgqt9f8e',32); CREATE INDEX `undb_table_deleted_at_index` on `undb_table` (`deleted_at`); CREATE INDEX `undb_field_deleted_at_index` on `undb_field` (`deleted_at`); CREATE INDEX `undb_field_table_id_index` on `undb_field` (`table_id`); @@ -13305,41 +1669,15 @@ END; CREATE UNIQUE INDEX `tblq36e537c_id_unique` on `tblq36e537c` (`id`); CREATE INDEX `fldft7edqw6_tblq36e537c_closure_table_depth_index` on `fldft7edqw6_tblq36e537c_closure_table` (`depth`); CREATE INDEX `fldq5ohh7hx_tblruubokdc_closure_table_depth_index` on `fldq5ohh7hx_tblruubokdc_closure_table` (`depth`); +CREATE INDEX `undb_outbox_deleted_at_index` on `undb_outbox` (`deleted_at`); +CREATE INDEX `undb_option_name_index` on `undb_option` (`name`); +CREATE INDEX `undb_webhook_deleted_at_index` on `undb_webhook` (`deleted_at`); +CREATE INDEX `undb_webhook_url_index` on `undb_webhook` (`url`); +CREATE INDEX `undb_webhook_name_index` on `undb_webhook` (`name`); +CREATE INDEX `undb_webhook_method_index` on `undb_webhook` (`method`); +CREATE INDEX `undb_webhook_target_id_index` on `undb_webhook` (`target_id`); +CREATE INDEX `undb_webhook_event_index` on `undb_webhook` (`event`); +CREATE INDEX `undb_share_deleted_at_index` on `undb_share` (`deleted_at`); +CREATE INDEX `undb_share_target_id_index` on `undb_share` (`target_id`); +CREATE UNIQUE INDEX `undb_share_target_id_unique` on `undb_share` (`target_id`); COMMIT; -create table `undb_outbox` ( - `uuid` text not null, - `created_at` datetime not null, - `updated_at` datetime not null, - `deleted_at` datetime null, - `name` text null, - `operator_id` text null, - `payload` json not null, - primary key (`uuid`) -); -create index `undb_outbox_deleted_at_index` on `undb_outbox` (`deleted_at`); -create index `undb_option_name_index` on `undb_option` (`name`); -create table `undb_webhook` ( - `id` text not null, - `created_at` datetime not null, - `updated_at` datetime not null, - `deleted_at` datetime null, - `url` text not null, - `name` text not null, - `method` text not null, - `headers` json not null, - `target_id` text null, - `target_type` text null, - `event` text null, - `enabled` integer not null default false, - primary key (`id`) -); -create index `undb_webhook_deleted_at_index` on `undb_webhook` (`deleted_at`); -create index `undb_webhook_url_index` on `undb_webhook` (`url`); -create index `undb_webhook_name_index` on `undb_webhook` (`name`); -create index `undb_webhook_method_index` on `undb_webhook` (`method`); -create index `undb_webhook_target_id_index` on `undb_webhook` (`target_id`); -create index `undb_webhook_event_index` on `undb_webhook` (`event`); -create table `undb_share` (`id` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `target_id` text null, `target_type` text null, `enabled` integer not null default false, primary key (`id`)); -create index `undb_share_deleted_at_index` on `undb_share` (`deleted_at`); -create index `undb_share_target_id_index` on `undb_share` (`target_id`); -create unique index `undb_share_target_id_unique` on `undb_share` (`target_id`); diff --git a/package.json b/package.json index 9ee74c2d5..9d2770cab 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "undb", - "version": "0.5.16", + "version": "0.5.17", "devDependencies": { "@commitlint/cli": "^17.6.6", "@commitlint/config-conventional": "^17.6.6", diff --git a/packages/core/src/table/field/field-value.visitor.ts b/packages/core/src/table/field/field-value.visitor.ts index f31e9a424..16ef0a1bd 100644 --- a/packages/core/src/table/field/field-value.visitor.ts +++ b/packages/core/src/table/field/field-value.visitor.ts @@ -1,31 +1,31 @@ -import type { AttachmentFieldValue } from './attachment-field-value.js' -import type { AutoIncrementFieldValue } from './auto-increment-field-value.js' -import type { AverageFieldValue } from './average-field-value.js' -import type { BoolFieldValue } from './bool-field-value.js' -import type { CollaboratorFieldValue } from './collaborator-field-value.js' -import type { ColorFieldValue } from './color-field-value.js' -import type { CountFieldValue } from './count-field-value.js' -import type { CreatedAtFieldValue } from './created-at-field-value.js' -import type { CreatedByFieldValue } from './created-by-field-value.js' -import type { CurrencyFieldValue } from './currency-field-value.js' -import type { DateFieldValue } from './date-field-value.js' -import type { DateRangeFieldValue } from './date-range-field-value.js' -import type { EmailFieldValue } from './email-field-value.js' +import type { AttachmentFieldValue } from './fields/attachment/attachment-field-value.js' +import type { AutoIncrementFieldValue } from './fields/auto-increment/auto-increment-field-value.js' +import type { AverageFieldValue } from './fields/average/average-field-value.js' +import type { BoolFieldValue } from './fields/bool/bool-field-value.js' +import type { CollaboratorFieldValue } from './fields/collaborator/collaborator-field-value.js' +import type { ColorFieldValue } from './fields/color/color-field-value.js' +import type { CountFieldValue } from './fields/count/count-field-value.js' +import type { CreatedAtFieldValue } from './fields/created-at/created-at-field-value.js' +import type { CreatedByFieldValue } from './fields/created-by/created-by-field-value.js' +import type { CurrencyFieldValue } from './fields/currency/currency-field-value.js' +import type { DateRangeFieldValue } from './fields/date-range/date-range-field-value.js' +import type { DateFieldValue } from './fields/date/date-field-value.js' +import type { EmailFieldValue } from './fields/email/email-field-value.js' +import type { IdFieldValue } from './fields/id/id-field-value.js' +import type { JsonFieldValue } from './fields/json/json-field-value.js' +import type { LookupFieldValue } from './fields/lookup/lookup-field-value.js' +import type { MultiSelectFieldValue } from './fields/multi-select/multi-select-field-value.js' +import type { NumberFieldValue } from './fields/number/number-field-value.js' +import type { ParentFieldValue } from './fields/parent/parent-field-value.js' +import type { RatingFieldValue } from './fields/rating/rating-field-value.js' +import type { ReferenceFieldValue } from './fields/reference/reference-field-value.js' +import type { SelectFieldValue } from './fields/select/select-field-value.js' +import type { StringFieldValue } from './fields/string/string-field-value.js' +import type { SumFieldValue } from './fields/sum/sum-field-value.js' +import type { TreeFieldValue } from './fields/tree/tree-field-value.js' +import type { UpdatedAtFieldValue } from './fields/updated-at/updated-at-field-value.js' +import type { UpdatedByFieldValue } from './fields/updated-by/updated-by-field-value.js' import type { UrlFieldValue } from './fields/url/url-field-value.js' -import type { IdFieldValue } from './id-field-value.js' -import type { JsonFieldValue } from './json-field-value.js' -import type { LookupFieldValue } from './lookup-field-value.js' -import type { MultiSelectFieldValue } from './multi-select-field-value.js' -import type { NumberFieldValue } from './number-field-value.js' -import type { ParentFieldValue } from './parent-field-value.js' -import type { RatingFieldValue } from './rating-field-value.js' -import type { ReferenceFieldValue } from './reference-field-value.js' -import type { SelectFieldValue } from './select-field-value.js' -import type { StringFieldValue } from './string-field-value.js' -import type { SumFieldValue } from './sum-field-value.js' -import type { TreeFieldValue } from './tree-field-value.js' -import type { UpdatedAtFieldValue } from './updated-at-field-value.js' -import type { UpdatedByFieldValue } from './updated-by-field-value.js' export interface IFieldValueVisitor { id(value: IdFieldValue): void diff --git a/packages/core/src/table/field/field.base.ts b/packages/core/src/table/field/field.base.ts index 3ed4021cc..0eb269b58 100644 --- a/packages/core/src/table/field/field.base.ts +++ b/packages/core/src/table/field/field.base.ts @@ -43,9 +43,9 @@ import type { } from './field.type.js' import { isAggregate, isControlledFieldType, isFilterable, isNumeric, isSortable } from './field.util.js' import type { IFieldVisitor } from './field.visitor.js' -import type { ReferenceField } from './reference-field.js' +import type { ReferenceField } from './fields/reference/reference-field.js' +import type { TreeField } from './fields/tree/tree-field.js' import { WithNewOption, WithOption, WithOptions, WithoutOption } from './specifications/select-field.specification.js' -import type { TreeField } from './tree-field.js' import { UpdateFieldHelper } from './update-field.helper.js' import { FieldDescription } from './value-objects/field-description.js' import type { DateFormat, TimeFormat } from './value-objects/index.js' diff --git a/packages/core/src/table/field/field.factory.test.ts b/packages/core/src/table/field/field.factory.test.ts index 9727ef9c6..914d56996 100644 --- a/packages/core/src/table/field/field.factory.test.ts +++ b/packages/core/src/table/field/field.factory.test.ts @@ -1,13 +1,13 @@ -import { BoolField } from './bool-field.js' -import { DateField } from './date-field.js' -import { DateRangeField } from './date-range-field.js' import { FieldFactory } from './field.factory.js' import { Field } from './field.type.js' -import { NumberField } from './number-field.js' -import { ParentField } from './parent-field.js' -import { SelectField } from './select-field.js' -import { StringField } from './string-field.js' -import { TreeField } from './tree-field.js' +import { BoolField } from './fields/bool/bool-field.js' +import { DateRangeField } from './fields/date-range/date-range-field.js' +import { DateField } from './fields/date/date-field.js' +import { NumberField } from './fields/number/number-field.js' +import { ParentField } from './fields/parent/parent-field.js' +import { SelectField } from './fields/select/select-field.js' +import { StringField } from './fields/string/string-field.js' +import { TreeField } from './fields/tree/tree-field.js' it('should create string field', () => { const field = FieldFactory.create({ diff --git a/packages/core/src/table/field/field.factory.ts b/packages/core/src/table/field/field.factory.ts index 0c3feac83..448b02c66 100644 --- a/packages/core/src/table/field/field.factory.ts +++ b/packages/core/src/table/field/field.factory.ts @@ -1,32 +1,34 @@ -import { AttachmentField } from './attachment-field.js' -import { AutoIncrementField } from './auto-increment-field.js' -import { AverageField } from './average-field.js' -import { BoolField } from './bool-field.js' -import { CollaboratorField } from './collaborator-field.js' -import { ColorField } from './color-field.js' -import { CountField } from './count-field.js' -import { CreatedAtField } from './created-at-field.js' -import { CreatedByField } from './created-by-field.js' -import { CurrencyField } from './currency-field.js' -import { DateField } from './date-field.js' -import { DateRangeField } from './date-range-field.js' -import { EmailField } from './email-field.js' import type { Field, ICreateFieldSchema } from './field.type.js' -import { UrlField } from './fields/index.js' -import { IdField } from './id-field.js' -import { JsonField } from './json-field.js' -import { LookupField } from './lookup-field.js' -import { MultiSelectField } from './multi-select-field.js' -import { NumberField } from './number-field.js' -import { ParentField } from './parent-field.js' -import { RatingField } from './rating-field.js' -import { ReferenceField } from './reference-field.js' -import { SelectField } from './select-field.js' -import { StringField } from './string-field.js' -import { SumField } from './sum-field.js' -import { TreeField } from './tree-field.js' -import { UpdatedAtField } from './updated-at-field.js' -import { UpdatedByField } from './updated-by-field.js' +import { CountField } from './fields/count/count-field.js' +import { CreatedAtField } from './fields/created-at/created-at-field.js' +import { CreatedByField } from './fields/created-by/created-by-field.js' +import { DateRangeField } from './fields/date-range/date-range-field.js' +import { DateField } from './fields/date/date-field.js' +import { IdField } from './fields/id/id-field.js' +import { + AttachmentField, + AutoIncrementField, + AverageField, + BoolField, + CollaboratorField, + ColorField, + CurrencyField, + EmailField, + StringField, + UrlField, +} from './fields/index.js' +import { JsonField } from './fields/json/json-field.js' +import { LookupField } from './fields/lookup/lookup-field.js' +import { MultiSelectField } from './fields/multi-select/multi-select-field.js' +import { NumberField } from './fields/number/number-field.js' +import { ParentField } from './fields/parent/parent-field.js' +import { RatingField } from './fields/rating/rating-field.js' +import { ReferenceField } from './fields/reference/reference-field.js' +import { SelectField } from './fields/select/select-field.js' +import { SumField } from './fields/sum/sum-field.js' +import { TreeField } from './fields/tree/tree-field.js' +import { UpdatedAtField } from './fields/updated-at/updated-at-field.js' +import { UpdatedByField } from './fields/updated-by/updated-by-field.js' export class FieldFactory { static create(input: ICreateFieldSchema): Field | Field[] { @@ -116,6 +118,9 @@ export class FieldFactory { case 'updated-by': { return UpdatedByField.create(input) } + default: { + throw new Error() + } } } @@ -205,6 +210,9 @@ export class FieldFactory { case 'updated-by': { return UpdatedByField.unsafeCreate(input) } + default: { + throw new Error() + } } } } diff --git a/packages/core/src/table/field/field.type.ts b/packages/core/src/table/field/field.type.ts index 01d543902..502a10556 100644 --- a/packages/core/src/table/field/field.type.ts +++ b/packages/core/src/table/field/field.type.ts @@ -1,14 +1,14 @@ import type { Option } from 'oxide.ts' import * as z from 'zod' -import type { IReferenceFilterValue } from '../filter/reference.filter.js' import type { ICreateOptionSchema, IUpdateOptionSchema } from '../option/option.schema.js' import type { Options } from '../option/options.js' import type { IRecordDisplayValues } from '../record/index.js' -import type { TableId } from '../value-objects/table-id.vo.js' import type { TableSchemaIdMap } from '../value-objects/table-schema.vo.js' -import type { AttachmentFieldValue } from './attachment-field-value.js' -import type { AttachmentField } from './attachment-field.js' -import type { IAttachmentFieldValue } from './attachment-field.type.js' +import type { BaseField } from './field.base.js' +import { FIELD_TYPE_KEY } from './field.constants.js' +import type { AttachmentFieldValue } from './fields/attachment/attachment-field-value.js' +import type { AttachmentField } from './fields/attachment/attachment-field.js' +import type { IAttachmentFieldValue } from './fields/attachment/attachment-field.type.js' import { attachmentFieldQuerySchema, attachmentFieldQueryValue, @@ -16,10 +16,10 @@ import { createAttachmentFieldSchema, createAttachmentFieldValue_internal, updateAttachmentFieldSchema, -} from './attachment-field.type.js' -import type { AutoIncrementFieldValue } from './auto-increment-field-value.js' -import type { AutoIncrementField } from './auto-increment-field.js' -import type { IAutoIncrementFieldValue } from './auto-increment-field.type.js' +} from './fields/attachment/attachment-field.type.js' +import type { AutoIncrementFieldValue } from './fields/auto-increment/auto-increment-field-value.js' +import type { AutoIncrementField } from './fields/auto-increment/auto-increment-field.js' +import type { IAutoIncrementFieldValue } from './fields/auto-increment/auto-increment-field.type.js' import { autoIncrementFieldQuerySchema, autoIncrementQueryValue, @@ -27,10 +27,10 @@ import { createAutoIncrementFieldSchema, createAutoIncrementFieldValue_internal, updateAutoIncrementFieldSchema, -} from './auto-increment-field.type.js' -import type { AverageFieldValue } from './average-field-value.js' -import type { AverageField } from './average-field.js' -import type { IAverageFieldValue } from './average-field.type.js' +} from './fields/auto-increment/auto-increment-field.type.js' +import type { AverageFieldValue } from './fields/average/average-field-value.js' +import type { AverageField } from './fields/average/average-field.js' +import type { IAverageField, IAverageFieldValue } from './fields/average/average-field.type.js' import { averageFieldQuerySchema, averageFieldQueryValue, @@ -38,10 +38,10 @@ import { createAverageFieldSchema, createAverageFieldValue_internal, updateAverageFieldSchema, -} from './average-field.type.js' -import type { BoolFieldValue } from './bool-field-value.js' -import type { BoolField } from './bool-field.js' -import type { IBoolFieldValue } from './bool-field.type.js' +} from './fields/average/average-field.type.js' +import type { BoolFieldValue } from './fields/bool/bool-field-value.js' +import type { BoolField } from './fields/bool/bool-field.js' +import type { IBoolFieldValue } from './fields/bool/bool-field.type.js' import { boolFieldQuerySchema, boolFieldQueryValue, @@ -49,10 +49,10 @@ import { createBoolFieldSchema, createBoolFieldValue_internal, updateBoolFieldSchema, -} from './bool-field.type.js' -import type { CollaboratorFieldValue } from './collaborator-field-value.js' -import type { CollaboratorField } from './collaborator-field.js' -import type { ICollaboratorFieldValue } from './collaborator-field.type.js' +} from './fields/bool/bool-field.type.js' +import type { CollaboratorFieldValue } from './fields/collaborator/collaborator-field-value.js' +import type { CollaboratorField } from './fields/collaborator/collaborator-field.js' +import type { ICollaboratorFieldValue } from './fields/collaborator/collaborator-field.type.js' import { collaboratorFieldQuerySchema, collaboratorFieldQueryValue, @@ -60,10 +60,10 @@ import { createCollaboratorFieldSchema, createCollaboratorFieldValue_internal, updateCollaboratorFieldSchema, -} from './collaborator-field.type.js' -import type { ColorFieldValue } from './color-field-value.js' -import type { ColorField } from './color-field.js' -import type { IColorFieldValue } from './color-field.type.js' +} from './fields/collaborator/collaborator-field.type.js' +import type { ColorFieldValue } from './fields/color/color-field-value.js' +import type { ColorField } from './fields/color/color-field.js' +import type { IColorFieldValue } from './fields/color/color-field.type.js' import { colorFieldQuerySchema, colorFieldQueryValue, @@ -71,10 +71,10 @@ import { createColorFieldSchema, createColorFieldValue_internal, updateColorFieldSchema, -} from './color-field.type.js' -import type { CountFieldValue } from './count-field-value.js' -import type { CountField } from './count-field.js' -import type { ICountFieldValue } from './count-field.type.js' +} from './fields/color/color-field.type.js' +import type { CountFieldValue } from './fields/count/count-field-value.js' +import type { CountField } from './fields/count/count-field.js' +import type { ICountField, ICountFieldValue } from './fields/count/count-field.type.js' import { countFieldQuerySchema, countFieldQueryValue, @@ -82,10 +82,10 @@ import { createCountFieldSchema, createCountFieldValue_internal, updateCountFieldSchema, -} from './count-field.type.js' -import type { CreatedAtFieldValue } from './created-at-field-value.js' -import type { CreatedAtField } from './created-at-field.js' -import type { ICreatedAtFieldValue } from './created-at-field.type.js' +} from './fields/count/count-field.type.js' +import type { CreatedAtFieldValue } from './fields/created-at/created-at-field-value.js' +import type { CreatedAtField } from './fields/created-at/created-at-field.js' +import type { ICreatedAtField, ICreatedAtFieldValue } from './fields/created-at/created-at-field.type.js' import { createCreatedAtFieldSchema, createCreatedAtFieldValue_internal, @@ -93,10 +93,10 @@ import { createdAtFieldQueryValue, createdAtTypeSchema, updateCreatedAtFieldSchema, -} from './created-at-field.type.js' -import type { CreatedByFieldValue } from './created-by-field-value.js' -import type { CreatedByField } from './created-by-field.js' -import type { ICreatedByFieldValue } from './created-by-field.type.js' +} from './fields/created-at/created-at-field.type.js' +import type { CreatedByFieldValue } from './fields/created-by/created-by-field-value.js' +import type { CreatedByField } from './fields/created-by/created-by-field.js' +import type { ICreatedByFieldValue } from './fields/created-by/created-by-field.type.js' import { createCreatedByFieldSchema, createCreatedByFieldValue_internal, @@ -104,10 +104,10 @@ import { createdByFieldQueryValue, createdByTypeSchema, updateCreatedByFieldSchema, -} from './created-by-field.type.js' -import type { CurrencyFieldValue } from './currency-field-value.js' -import type { CurrencyField } from './currency-field.js' -import type { ICurrencyFieldValue } from './currency-field.type.js' +} from './fields/created-by/created-by-field.type.js' +import type { CurrencyFieldValue } from './fields/currency/currency-field-value.js' +import type { CurrencyField } from './fields/currency/currency-field.js' +import type { ICurrencyFieldValue } from './fields/currency/currency-field.type.js' import { createCurrencyFieldSchema, createCurrencyFieldValue_internal, @@ -115,22 +115,10 @@ import { currencyFieldQueryValue, currencyTypeSchema, updateCurrencyFieldSchema, -} from './currency-field.type.js' -import type { CurrencySymbol } from './currency-symbol.vo.js' -import type { DateFieldValue } from './date-field-value.js' -import type { DateField } from './date-field.js' -import type { IDateFieldValue } from './date-field.type.js' -import { - createDateFieldSchema, - createDateFieldValue_internal, - dateFieldQuerySchema, - dateFieldQueryValue, - dateTypeSchema, - updateDateFieldSchema, -} from './date-field.type.js' -import type { DateRangeFieldValue } from './date-range-field-value.js' -import type { DateRangeField } from './date-range-field.js' -import type { IDateRangeFieldValue } from './date-range-field.type.js' +} from './fields/currency/currency-field.type.js' +import type { DateRangeFieldValue } from './fields/date-range/date-range-field-value.js' +import type { DateRangeField } from './fields/date-range/date-range-field.js' +import type { IDateRangeField, IDateRangeFieldValue } from './fields/date-range/date-range-field.type.js' import { createDateRangeFieldSchema, createDateRangeFieldValue_internal, @@ -138,10 +126,21 @@ import { dateRangeFieldQueryValue, dateRangeTypeSchema, updateDateRangeFieldSchema, -} from './date-range-field.type.js' -import type { EmailFieldValue } from './email-field-value.js' -import type { EmailField } from './email-field.js' -import type { IEmailFieldValue } from './email-field.type.js' +} from './fields/date-range/date-range-field.type.js' +import type { DateFieldValue } from './fields/date/date-field-value.js' +import type { DateField } from './fields/date/date-field.js' +import type { IDateField, IDateFieldValue } from './fields/date/date-field.type.js' +import { + createDateFieldSchema, + createDateFieldValue_internal, + dateFieldQuerySchema, + dateFieldQueryValue, + dateTypeSchema, + updateDateFieldSchema, +} from './fields/date/date-field.type.js' +import type { EmailFieldValue } from './fields/email/email-field-value.js' +import type { EmailField } from './fields/email/email-field.js' +import type { IEmailFieldValue } from './fields/email/email-field.type.js' import { createEmailFieldSchema, createEmailFieldValue_internal, @@ -149,23 +148,10 @@ import { emailFieldQueryValue, emailTypeSchema, updateEmailFieldSchema, -} from './email-field.type.js' -import type { BaseField } from './field.base.js' -import { FIELD_TYPE_KEY } from './field.constants.js' -import type { UrlFieldValue } from './fields/url/url-field-value.js' -import type { UrlField } from './fields/url/url-field.js' -import type { IUrlFieldValue } from './fields/url/url-field.type.js' -import { - createUrlFieldSchema, - createUrlFieldValue_internal, - updateUrlFieldSchema, - urlFieldQuerySchema, - urlFieldQueryValue, - urlTypeSchema, -} from './fields/url/url-field.type.js' -import type { IdFieldValue } from './id-field-value.js' -import type { IdField } from './id-field.js' -import type { IIdFieldValue } from './id-field.type.js' +} from './fields/email/email-field.type.js' +import type { IdFieldValue } from './fields/id/id-field-value.js' +import type { IdField } from './fields/id/id-field.js' +import type { IIdFieldValue } from './fields/id/id-field.type.js' import { createIdFieldSchema, createIdFieldValue_internal, @@ -173,10 +159,10 @@ import { idFieldQueryValue, idTypeSchema, updateIdFieldSchema, -} from './id-field.type.js' -import type { JsonFieldValue } from './json-field-value.js' -import type { JsonField } from './json-field.js' -import type { IJsonFieldValue } from './json-field.type.js' +} from './fields/id/id-field.type.js' +import type { JsonFieldValue } from './fields/json/json-field-value.js' +import type { JsonField } from './fields/json/json-field.js' +import type { IJsonFieldValue } from './fields/json/json-field.type.js' import { createJsonFieldSchema, createJsonFieldValue_internal, @@ -184,10 +170,10 @@ import { jsonFieldQueryValue, jsonTypeSchema, updateJsonFieldSchema, -} from './json-field.type.js' -import type { LookupFieldValue } from './lookup-field-value.js' -import type { LookupField } from './lookup-field.js' -import type { ILookupFieldValue } from './lookup-field.type.js' +} from './fields/json/json-field.type.js' +import type { LookupFieldValue } from './fields/lookup/lookup-field-value.js' +import type { LookupField } from './fields/lookup/lookup-field.js' +import type { ILookupField, ILookupFieldValue } from './fields/lookup/lookup-field.type.js' import { createLookupFieldSchema, createLookupFieldValue_internal, @@ -195,10 +181,10 @@ import { lookupFieldQueryValue, lookupTypeSchema, updateLookupFieldSchema, -} from './lookup-field.type.js' -import type { MultiSelectFieldValue } from './multi-select-field-value.js' -import type { MultiSelectField } from './multi-select-field.js' -import type { IMultiSelectFieldValue } from './multi-select-field.type.js' +} from './fields/lookup/lookup-field.type.js' +import type { MultiSelectFieldValue } from './fields/multi-select/multi-select-field-value.js' +import type { MultiSelectField } from './fields/multi-select/multi-select-field.js' +import type { IMultiSelectField, IMultiSelectFieldValue } from './fields/multi-select/multi-select-field.type.js' import { createMultiSelectFieldSchema, createMultiSelectFieldValue_internal, @@ -206,10 +192,10 @@ import { multiSelectFieldQueryValue, multiSelectTypeSchema, updateMultiSelectFieldSchema, -} from './multi-select-field.type.js' -import type { NumberFieldValue } from './number-field-value.js' -import type { NumberField } from './number-field.js' -import type { INumberFieldValue } from './number-field.type.js' +} from './fields/multi-select/multi-select-field.type.js' +import type { NumberFieldValue } from './fields/number/number-field-value.js' +import type { NumberField } from './fields/number/number-field.js' +import type { INumberFieldValue } from './fields/number/number-field.type.js' import { createNumberFieldSchema, createNumberFieldValue_internal, @@ -217,10 +203,10 @@ import { numberFieldQueryValue, numberTypeSchema, updateNumberFieldSchema, -} from './number-field.type.js' -import type { ParentFieldValue } from './parent-field-value.js' -import type { ParentField } from './parent-field.js' -import type { IParentFieldValue } from './parent-field.type.js' +} from './fields/number/number-field.type.js' +import type { ParentFieldValue } from './fields/parent/parent-field-value.js' +import type { ParentField } from './fields/parent/parent-field.js' +import type { IParentField, IParentFieldValue } from './fields/parent/parent-field.type.js' import { createParentFieldSchema, createParentFieldValue_internal, @@ -228,10 +214,10 @@ import { parentFieldQueryValue, parentTypeSchema, updateParentFieldSchema, -} from './parent-field.type.js' -import type { RatingFieldValue } from './rating-field-value.js' -import type { RatingField } from './rating-field.js' -import type { IRatingFieldValue } from './rating-field.type.js' +} from './fields/parent/parent-field.type.js' +import type { RatingFieldValue } from './fields/rating/rating-field-value.js' +import type { RatingField } from './fields/rating/rating-field.js' +import type { IRatingFieldValue } from './fields/rating/rating-field.type.js' import { createRatingFieldSchema, createRatingFieldValue_internal, @@ -239,9 +225,10 @@ import { ratingFieldQueryValue, ratingTypeSchema, updateRatingFieldSchema, -} from './rating-field.type.js' -import type { ReferenceFieldValue } from './reference-field-value.js' -import type { ReferenceField } from './reference-field.js' +} from './fields/rating/rating-field.type.js' +import type { ReferenceFieldValue } from './fields/reference/reference-field-value.js' +import type { ReferenceField } from './fields/reference/reference-field.js' +import type { IReferenceField } from './fields/reference/reference-field.type.js' import { createReferenceFieldSchema, createReferenceFieldValue_internal, @@ -249,10 +236,11 @@ import { referenceFieldQueryValue, referenceTypeSchema, updateReferenceFieldSchema, -} from './reference-field.type.js' -import type { SelectFieldValue } from './select-field-value.js' -import type { SelectField } from './select-field.js' -import type { ISelectFieldValue } from './select-field.type.js' +} from './fields/reference/reference-field.type.js' +import type { IReferenceFilterValue } from './fields/reference/reference.filter.js' +import type { SelectFieldValue } from './fields/select/select-field-value.js' +import type { SelectField } from './fields/select/select-field.js' +import type { ISelectField, ISelectFieldValue } from './fields/select/select-field.type.js' import { createSelectFieldSchema, createSelectFieldValue_internal, @@ -260,16 +248,10 @@ import { selectFieldQueryValue, selectTypeSchema, updateSelectFieldSchema, -} from './select-field.type.js' -import type { - WithNewOption, - WithOption, - WithOptions, - WithoutOption, -} from './specifications/select-field.specification.js' -import type { StringFieldValue } from './string-field-value.js' -import type { StringField } from './string-field.js' -import type { IStringFieldValue } from './string-field.type.js' +} from './fields/select/select-field.type.js' +import type { StringFieldValue } from './fields/string/string-field-value.js' +import type { StringField } from './fields/string/string-field.js' +import type { IStringFieldValue } from './fields/string/string-field.type.js' import { createStringFieldSchema, createStringFieldValue_internal, @@ -277,10 +259,10 @@ import { stringFieldQueryValue, stringTypeSchema, updateStringFieldSchema, -} from './string-field.type.js' -import type { SumFieldValue } from './sum-field-value.js' -import type { SumField } from './sum-field.js' -import type { ISumFieldValue } from './sum-field.type.js' +} from './fields/string/string-field.type.js' +import type { SumFieldValue } from './fields/sum/sum-field-value.js' +import type { SumField } from './fields/sum/sum-field.js' +import type { ISumField, ISumFieldValue } from './fields/sum/sum-field.type.js' import { createSumFieldSchema, createSumFieldValue_internal, @@ -288,10 +270,10 @@ import { sumFieldQueryValue, sumTypeSchema, updateSumFieldSchema, -} from './sum-field.type.js' -import type { TreeFieldValue } from './tree-field-value.js' -import type { TreeField } from './tree-field.js' -import type { ITreeFieldValue } from './tree-field.type.js' +} from './fields/sum/sum-field.type.js' +import type { TreeFieldValue } from './fields/tree/tree-field-value.js' +import type { TreeField } from './fields/tree/tree-field.js' +import type { ITreeField, ITreeFieldValue } from './fields/tree/tree-field.type.js' import { createTreeFieldSchema, createTreeFieldValue_internal, @@ -299,10 +281,10 @@ import { treeFieldQueryValue, treeTypeSchema, updateTreeFieldSchema, -} from './tree-field.type.js' -import type { UpdatedAtFieldValue } from './updated-at-field-value.js' -import type { UpdatedAtField } from './updated-at-field.js' -import type { IUpdatedAtFieldValue } from './updated-at-field.type.js' +} from './fields/tree/tree-field.type.js' +import type { UpdatedAtFieldValue } from './fields/updated-at/updated-at-field-value.js' +import type { UpdatedAtField } from './fields/updated-at/updated-at-field.js' +import type { IUpdatedAtField, IUpdatedAtFieldValue } from './fields/updated-at/updated-at-field.type.js' import { createUpdatedAtFieldSchema, createUpdatedAtFieldValue_internal, @@ -310,10 +292,10 @@ import { updatedAtFieldQuerySchema, updatedAtFieldQueryValue, updatedAtTypeSchema, -} from './updated-at-field.type.js' -import type { UpdatedByFieldValue } from './updated-by-field-value.js' -import type { UpdatedByField } from './updated-by-field.js' -import type { IUpdatedByFieldValue } from './updated-by-field.type.js' +} from './fields/updated-at/updated-at-field.type.js' +import type { UpdatedByFieldValue } from './fields/updated-by/updated-by-field-value.js' +import type { UpdatedByField } from './fields/updated-by/updated-by-field.js' +import type { IUpdatedByFieldValue } from './fields/updated-by/updated-by-field.type.js' import { createUpdatedByFieldSchema, createUpdatedByFieldValue_internal, @@ -321,11 +303,27 @@ import { updatedByFieldQuerySchema, updatedByFieldQueryValue, updatedByTypeSchema, -} from './updated-by-field.type.js' +} from './fields/updated-by/updated-by-field.type.js' +import type { UrlFieldValue } from './fields/url/url-field-value.js' +import type { UrlField } from './fields/url/url-field.js' +import type { IUrlFieldValue } from './fields/url/url-field.type.js' +import { + createUrlFieldSchema, + createUrlFieldValue_internal, + updateUrlFieldSchema, + urlFieldQuerySchema, + urlFieldQueryValue, + urlTypeSchema, +} from './fields/url/url-field.type.js' +import type { + WithNewOption, + WithOption, + WithOptions, + WithoutOption, +} from './specifications/select-field.specification.js' import type { FieldDescription } from './value-objects/field-description.js' import type { DateFormat, - DisplayFields, FieldId, FieldIssue, FieldName, @@ -518,47 +516,6 @@ export interface IBaseField { export type BaseDateField = { format?: DateFormat; timeFormat?: TimeFormat } -export type IIdField = IBaseField -export type ICreatedAtField = IBaseField & BaseDateField -export type ICreatedByField = IBaseField -export type IUpdatedAtField = IBaseField & BaseDateField -export type IUpdatedByField = IBaseField -export type IAutoIncrementField = IBaseField -export type IStringField = IBaseField -export type IEmailField = IBaseField -export type IJsonField = IBaseField -export type IAttachmentField = IBaseField -export type IColorField = IBaseField - -export type INumberField = IBaseField -export type IRatingField = IBaseField & { max?: number } -export type ICurrencyField = IBaseField & { symbol: CurrencySymbol } - -export type IDateField = IBaseField & BaseDateField -export type IDateRangeField = IBaseField & BaseDateField -export type ISelectField = IBaseField & { - options: Options -} -export type IMultiSelectField = IBaseField & { options: Options } - -export type IBoolField = IBaseField - -export type ICollaboratorField = IBaseField - -export type IReferenceField = IBaseField & { - displayFields?: DisplayFields - foreignTableId?: TableId - isOwner?: boolean - symmetricReferenceFieldId?: FieldId -} -export type ITreeField = IBaseField & { parentFieldId?: FieldId; displayFields?: DisplayFields } -export type IParentField = IBaseField & { treeFieldId: FieldId; displayFields?: DisplayFields } - -export type ICountField = IBaseField & { referenceFieldId: FieldId } -export type ISumField = IBaseField & { referenceFieldId: FieldId; aggregateFieldId: FieldId } -export type IAverageField = IBaseField & { referenceFieldId: FieldId; aggregateFieldId: FieldId } -export type ILookupField = IBaseField & { referenceFieldId: FieldId; displayFields?: DisplayFields } - export type SystemField = IdField | CreatedAtField | UpdatedAtField | CreatedByField | UpdatedByField export type IReferenceFieldTypes = IReferenceField | ITreeField | IParentField diff --git a/packages/core/src/table/field/field.util.ts b/packages/core/src/table/field/field.util.ts index c2b4a2dd8..a116f043b 100644 --- a/packages/core/src/table/field/field.util.ts +++ b/packages/core/src/table/field/field.util.ts @@ -4,7 +4,7 @@ import { match } from 'ts-pattern' import { z } from 'zod' import { Options } from '../option' import type { Field, ICreateFieldSchema, IFieldType, SelectFieldTypes } from './field.type' -import type { ICreateSelectFieldSchema } from './select-field.type' +import type { ICreateSelectFieldSchema } from './fields/select/select-field.type' const controlledFieldTypes: Set = new Set([ 'id', @@ -603,3 +603,16 @@ export const inferFieldType = ( ) .otherwise(() => ({ type: 'string' })) } + +export const castFieldValue = (type: IFieldType, value: string | number | null | object | boolean) => { + return match(type) + .with('number', () => Number(value)) + .with('bool', () => + match(value) + .returnType() + .with(['true', 'TRUE'], () => true) + .with(['false', 'FALSE'], () => false) + .otherwise(Boolean), + ) + .otherwise(() => value) +} diff --git a/packages/core/src/table/field/field.visitor.ts b/packages/core/src/table/field/field.visitor.ts index e37deb393..4b68f406b 100644 --- a/packages/core/src/table/field/field.visitor.ts +++ b/packages/core/src/table/field/field.visitor.ts @@ -1,31 +1,33 @@ -import type { AttachmentField } from './attachment-field.js' -import type { AutoIncrementField } from './auto-increment-field.js' -import type { AverageField } from './average-field.js' -import type { BoolField } from './bool-field.js' -import type { CollaboratorField } from './collaborator-field.js' -import type { ColorField } from './color-field.js' -import type { CountField } from './count-field.js' -import type { CreatedAtField } from './created-at-field.js' -import type { CreatedByField } from './created-by-field.js' -import type { CurrencyField } from './currency-field.js' -import type { DateField } from './date-field.js' -import type { DateRangeField } from './date-range-field.js' -import type { EmailField } from './email-field.js' +import type { CountField } from './fields/count/count-field.js' +import type { CreatedAtField } from './fields/created-at/created-at-field.js' +import type { CreatedByField } from './fields/created-by/created-by-field.js' +import type { DateRangeField } from './fields/date-range/date-range-field.js' +import type { DateField } from './fields/date/date-field.js' +import type { IdField } from './fields/id/id-field.js' +import type { + AttachmentField, + AutoIncrementField, + AverageField, + BoolField, + CollaboratorField, + ColorField, + CurrencyField, + EmailField, + StringField, +} from './fields/index.js' +import type { JsonField } from './fields/json/json-field.js' +import type { LookupField } from './fields/lookup/lookup-field.js' +import type { MultiSelectField } from './fields/multi-select/multi-select-field.js' +import type { NumberField } from './fields/number/number-field.js' +import type { ParentField } from './fields/parent/parent-field.js' +import type { RatingField } from './fields/rating/rating-field.js' +import type { ReferenceField } from './fields/reference/reference-field.js' +import type { SelectField } from './fields/select/select-field.js' +import type { SumField } from './fields/sum/sum-field.js' +import type { TreeField } from './fields/tree/tree-field.js' +import type { UpdatedAtField } from './fields/updated-at/updated-at-field.js' +import type { UpdatedByField } from './fields/updated-by/updated-by-field.js' import type { UrlField } from './fields/url/url-field.js' -import type { IdField } from './id-field.js' -import type { JsonField } from './json-field.js' -import type { LookupField } from './lookup-field.js' -import type { MultiSelectField } from './multi-select-field.js' -import type { NumberField } from './number-field.js' -import type { ParentField } from './parent-field.js' -import type { RatingField } from './rating-field.js' -import type { ReferenceField } from './reference-field.js' -import type { SelectField } from './select-field.js' -import type { StringField } from './string-field.js' -import type { SumField } from './sum-field.js' -import type { TreeField } from './tree-field.js' -import type { UpdatedAtField } from './updated-at-field.js' -import type { UpdatedByField } from './updated-by-field.js' export interface IFieldVisitor { id(field: IdField): void diff --git a/packages/core/src/table/field/attachment-field-value.ts b/packages/core/src/table/field/fields/attachment/attachment-field-value.ts similarity index 87% rename from packages/core/src/table/field/attachment-field-value.ts rename to packages/core/src/table/field/fields/attachment/attachment-field-value.ts index 815415981..df276935f 100644 --- a/packages/core/src/table/field/attachment-field-value.ts +++ b/packages/core/src/table/field/fields/attachment/attachment-field-value.ts @@ -1,8 +1,8 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import { getExtension, getMimeType } from './attachment-field-value.util.js' import type { IAttachmentFieldValue } from './attachment-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class AttachmentFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/attachment-field-value.util.ts b/packages/core/src/table/field/fields/attachment/attachment-field-value.util.ts similarity index 100% rename from packages/core/src/table/field/attachment-field-value.util.ts rename to packages/core/src/table/field/fields/attachment/attachment-field-value.util.ts diff --git a/packages/core/src/table/field/attachment-field.ts b/packages/core/src/table/field/fields/attachment/attachment-field.ts similarity index 82% rename from packages/core/src/table/field/attachment-field.ts rename to packages/core/src/table/field/fields/attachment/attachment-field.ts index 46977afa5..0574eb874 100644 --- a/packages/core/src/table/field/attachment-field.ts +++ b/packages/core/src/table/field/fields/attachment/attachment-field.ts @@ -1,18 +1,17 @@ import { z } from 'zod' -import type { IAttachmentFilter, IAttachmentFilterOperator } from '../filter/attachment.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' +import type { IRecordDisplayValues, RecordValueJSON } from '../../../record/index.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/index.js' import { AttachmentFieldValue } from './attachment-field-value.js' import type { AttachmentFieldType, + IAttachmentField, IAttachmentItem, ICreateAttachmentFieldInput, ICreateAttachmentFieldValue, } from './attachment-field.type.js' -import { BaseField } from './field.base.js' -import type { IAttachmentField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { IAttachmentFilter, IAttachmentFilterOperator } from './attachment.filter.js' export class AttachmentField extends BaseField { duplicate(name: string): AttachmentField { diff --git a/packages/core/src/table/field/attachment-field.type.ts b/packages/core/src/table/field/fields/attachment/attachment-field.type.ts similarity index 90% rename from packages/core/src/table/field/attachment-field.type.ts rename to packages/core/src/table/field/fields/attachment/attachment-field.type.ts index 4e09c447d..2bbf0dbdf 100644 --- a/packages/core/src/table/field/attachment-field.type.ts +++ b/packages/core/src/table/field/fields/attachment/attachment-field.type.ts @@ -1,7 +1,8 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { AttachmentField } from './attachment-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' export const attachmentTypeSchema = z.literal('attachment') export type AttachmentFieldType = z.infer @@ -44,3 +45,5 @@ export const createAttachmentFieldValue_internal = z export type ICreateAttachmentFieldValue_internal = z.infer export const attachmentReadableValueSchema = attachmentFieldQueryValue + +export type IAttachmentField = IBaseField diff --git a/packages/core/src/table/filter/attachment.filter.ts b/packages/core/src/table/field/fields/attachment/attachment.filter.ts similarity index 69% rename from packages/core/src/table/filter/attachment.filter.ts rename to packages/core/src/table/field/fields/attachment/attachment.filter.ts index f68af8444..63f9618db 100644 --- a/packages/core/src/table/filter/attachment.filter.ts +++ b/packages/core/src/table/field/fields/attachment/attachment.filter.ts @@ -1,6 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { attachmentFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $has_file_extension, $has_file_type, $is_empty, $is_not_empty } from '../../../filter/operators.js' + +export const attachmentFilterOperators = z.union([$has_file_type, $is_empty, $is_not_empty, $has_file_extension]) const attachmentFilterTypeValue = z.enum(['image', 'video', 'text', 'document', 'excel', 'ppt', 'pdf']) export type IAttachmentFilterTypeValue = z.infer diff --git a/packages/core/src/table/field/fields/attachment/index.ts b/packages/core/src/table/field/fields/attachment/index.ts new file mode 100644 index 000000000..0c71f3bca --- /dev/null +++ b/packages/core/src/table/field/fields/attachment/index.ts @@ -0,0 +1,5 @@ +export * from './attachment-field-value.js' +export * from './attachment-field-value.util.js' +export * from './attachment-field.js' +export * from './attachment-field.type.js' +export * from './attachment.filter.js' diff --git a/packages/core/src/table/field/auto-increment-field-value.ts b/packages/core/src/table/field/fields/auto-increment/auto-increment-field-value.ts similarity index 76% rename from packages/core/src/table/field/auto-increment-field-value.ts rename to packages/core/src/table/field/fields/auto-increment/auto-increment-field-value.ts index a78de7083..081170cef 100644 --- a/packages/core/src/table/field/auto-increment-field-value.ts +++ b/packages/core/src/table/field/fields/auto-increment/auto-increment-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IAutoIncrementFieldValue } from './auto-increment-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class AutoIncrementFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/auto-increment-field.ts b/packages/core/src/table/field/fields/auto-increment/auto-increment-field.ts similarity index 72% rename from packages/core/src/table/field/auto-increment-field.ts rename to packages/core/src/table/field/fields/auto-increment/auto-increment-field.ts index 980d06f70..500c86f79 100644 --- a/packages/core/src/table/field/auto-increment-field.ts +++ b/packages/core/src/table/field/fields/auto-increment/auto-increment-field.ts @@ -1,19 +1,18 @@ import { z } from 'zod' -import type { IAutoIncrementFilter } from '../filter/auto-increment.filter.js' -import type { IAutoIncrementFilterOperator } from '../filter/operators.js' -import type { IRecordDisplayValues } from '../record/index.js' -import type { RecordValueJSON } from '../record/record.schema.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import { INTERNAL_INCREAMENT_ID_NAME } from '../../field.constants.js' +import { FieldCannotBeDuplicated } from '../../field.errors.js' +import type { IFieldVisitor } from '../../field.visitor.js' import { AutoIncrementFieldValue } from './auto-increment-field-value.js' import type { AutoIncrementFieldType, + IAutoIncrementField, ICreateAutoIncrementFieldInput, ICreateAutoIncrementFieldValue, } from './auto-increment-field.type.js' -import { BaseField } from './field.base.js' -import { INTERNAL_INCREAMENT_ID_NAME } from './field.constants.js' -import { FieldCannotBeDuplicated } from './field.errors.js' -import type { IAutoIncrementField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { IAutoIncrementFilter, IAutoIncrementFilterOperator } from './auto-increment.filter.js' export class AutoIncrementField extends BaseField { duplicate(name: string): AutoIncrementField { diff --git a/packages/core/src/table/field/auto-increment-field.type.ts b/packages/core/src/table/field/fields/auto-increment/auto-increment-field.type.ts similarity index 89% rename from packages/core/src/table/field/auto-increment-field.type.ts rename to packages/core/src/table/field/fields/auto-increment/auto-increment-field.type.ts index 39b51d005..1df69bbd9 100644 --- a/packages/core/src/table/field/auto-increment-field.type.ts +++ b/packages/core/src/table/field/fields/auto-increment/auto-increment-field.type.ts @@ -1,7 +1,8 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { AutoIncrementField } from './auto-increment-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' export const autoIncrementTypeSchema = z.literal('auto-increment') export type AutoIncrementFieldType = z.infer @@ -32,3 +33,5 @@ export const createAutoIncrementFieldValue_internal = z export type ICreateAutoIncrementFieldValue_internal = z.infer export const autoIncrementReadableValueSchema = autoIncrementQueryValue + +export type IAutoIncrementField = IBaseField diff --git a/packages/core/src/table/filter/auto-increment.filter.ts b/packages/core/src/table/field/fields/auto-increment/auto-increment.filter.ts similarity index 52% rename from packages/core/src/table/filter/auto-increment.filter.ts rename to packages/core/src/table/field/fields/auto-increment/auto-increment.filter.ts index 39a5333c7..88f30302c 100644 --- a/packages/core/src/table/filter/auto-increment.filter.ts +++ b/packages/core/src/table/field/fields/auto-increment/auto-increment.filter.ts @@ -1,6 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { autoIncrementFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $gt, $gte, $lt, $lte, $neq } from '../../../filter/operators.js' + +export const autoIncrementFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) export const autoIncrementFilterValue = z.number().nullable() export const autoIncrementFilter = z @@ -12,3 +14,4 @@ export const autoIncrementFilter = z .merge(baseFilter) export type IAutoIncrementFilter = z.infer +export type IAutoIncrementFilterOperator = z.infer diff --git a/packages/core/src/table/field/fields/auto-increment/index.ts b/packages/core/src/table/field/fields/auto-increment/index.ts new file mode 100644 index 000000000..73c8c9946 --- /dev/null +++ b/packages/core/src/table/field/fields/auto-increment/index.ts @@ -0,0 +1,4 @@ +export * from './auto-increment-field-value.js' +export * from './auto-increment-field.js' +export * from './auto-increment-field.type.js' +export * from './auto-increment.filter.js' diff --git a/packages/core/src/table/field/average-field-value.ts b/packages/core/src/table/field/fields/average/average-field-value.ts similarity index 75% rename from packages/core/src/table/field/average-field-value.ts rename to packages/core/src/table/field/fields/average/average-field-value.ts index f43ec0b27..201bebc8f 100644 --- a/packages/core/src/table/field/average-field-value.ts +++ b/packages/core/src/table/field/fields/average/average-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IAverageFieldValue } from './average-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class AverageFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/average-field.ts b/packages/core/src/table/field/fields/average/average-field.ts similarity index 78% rename from packages/core/src/table/field/average-field.ts rename to packages/core/src/table/field/fields/average/average-field.ts index cdf2511bf..367b2b5c7 100644 --- a/packages/core/src/table/field/average-field.ts +++ b/packages/core/src/table/field/fields/average/average-field.ts @@ -1,14 +1,18 @@ import { Mixin } from 'ts-mixer' import { z } from 'zod' -import type { IAverageFilter, IAverageFilterOperator } from '../filter/average.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { AbstractAggregateField, AbstractLookupField, BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { AverageFieldValue } from './average-field-value.js' -import type { AverageType, ICreateAverageFieldInput, ICreateAverageFieldValue } from './average-field.type.js' -import { AbstractAggregateField, AbstractLookupField, BaseField } from './field.base.js' -import type { IAverageField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { + AverageType, + IAverageField, + ICreateAverageFieldInput, + ICreateAverageFieldValue, +} from './average-field.type.js' +import type { IAverageFilter, IAverageFilterOperator } from './average.filter.js' export class AverageField extends Mixin(AbstractAggregateField, AbstractLookupField) { type: AverageType = 'average' diff --git a/packages/core/src/table/field/average-field.type.ts b/packages/core/src/table/field/fields/average/average-field.type.ts similarity index 83% rename from packages/core/src/table/field/average-field.type.ts rename to packages/core/src/table/field/fields/average/average-field.type.ts index c055896c9..45670c421 100644 --- a/packages/core/src/table/field/average-field.type.ts +++ b/packages/core/src/table/field/fields/average/average-field.type.ts @@ -1,8 +1,10 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldId } from '../../value-objects/field-id.vo.js' import { AverageField } from './average-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' export const averageTypeSchema = z.literal('average') export type AverageType = z.infer @@ -54,3 +56,5 @@ export const createAverageFieldValue_internal = z export type ICreateAverageFieldValue_internal = z.infer export const averageReadableValueSchema = averageFieldQueryValue + +export type IAverageField = IBaseField & { referenceFieldId: FieldId; aggregateFieldId: FieldId } diff --git a/packages/core/src/table/filter/average.filter.ts b/packages/core/src/table/field/fields/average/average.filter.ts similarity index 63% rename from packages/core/src/table/filter/average.filter.ts rename to packages/core/src/table/field/fields/average/average.filter.ts index a04181e9a..a0bfb6360 100644 --- a/packages/core/src/table/filter/average.filter.ts +++ b/packages/core/src/table/field/fields/average/average.filter.ts @@ -1,6 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { averageFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $gt, $gte, $lt, $lte, $neq } from '../../../filter/operators.js' + +export const averageFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) export const averageFilterValue = z.number().nullable() export const averageFilter = z diff --git a/packages/core/src/table/field/fields/average/index.ts b/packages/core/src/table/field/fields/average/index.ts new file mode 100644 index 000000000..46dd74c0c --- /dev/null +++ b/packages/core/src/table/field/fields/average/index.ts @@ -0,0 +1,4 @@ +export * from './average-field-value.js' +export * from './average-field.js' +export * from './average-field.type.js' +export * from './average.filter.js' diff --git a/packages/core/src/table/field/bool-field-value.test.ts b/packages/core/src/table/field/fields/bool/bool-field-value.test.ts similarity index 100% rename from packages/core/src/table/field/bool-field-value.test.ts rename to packages/core/src/table/field/fields/bool/bool-field-value.test.ts diff --git a/packages/core/src/table/field/bool-field-value.ts b/packages/core/src/table/field/fields/bool/bool-field-value.ts similarity index 79% rename from packages/core/src/table/field/bool-field-value.ts rename to packages/core/src/table/field/fields/bool/bool-field-value.ts index 051110faa..dff6b13b8 100644 --- a/packages/core/src/table/field/bool-field-value.ts +++ b/packages/core/src/table/field/fields/bool/bool-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IBoolFieldValue } from './bool-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class BoolFieldValue extends FieldValueBase { constructor(value: IBoolFieldValue) { diff --git a/packages/core/src/table/field/bool-field.ts b/packages/core/src/table/field/fields/bool/bool-field.ts similarity index 69% rename from packages/core/src/table/field/bool-field.ts rename to packages/core/src/table/field/fields/bool/bool-field.ts index 90a2668d5..3b3027282 100644 --- a/packages/core/src/table/field/bool-field.ts +++ b/packages/core/src/table/field/fields/bool/bool-field.ts @@ -1,15 +1,13 @@ import { isBoolean } from 'lodash-es' import { z } from 'zod' -import type { IBoolFilter } from '../filter/bool.filter.js' -import type { IBoolFilterOperator } from '../filter/operators.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { BoolFieldValue } from './bool-field-value.js' -import type { BoolFieldType, ICreateBoolFieldInput, ICreateBoolFieldValue } from './bool-field.type.js' -import { BaseField } from './field.base.js' -import type { IBoolField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { BoolFieldType, IBoolField, ICreateBoolFieldInput, ICreateBoolFieldValue } from './bool-field.type.js' +import type { IBoolFilter, IBoolFilterOperator } from './bool.filter.js' export class BoolField extends BaseField { duplicate(name: string): BoolField { diff --git a/packages/core/src/table/field/bool-field.type.ts b/packages/core/src/table/field/fields/bool/bool-field.type.ts similarity index 88% rename from packages/core/src/table/field/bool-field.type.ts rename to packages/core/src/table/field/fields/bool/bool-field.type.ts index 6192f4e92..de766e6d6 100644 --- a/packages/core/src/table/field/bool-field.type.ts +++ b/packages/core/src/table/field/fields/bool/bool-field.type.ts @@ -1,7 +1,8 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { BoolField } from './bool-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' export const boolTypeSchema = z.literal('bool') export type BoolFieldType = z.infer @@ -32,3 +33,5 @@ export const createBoolFieldValue_internal = z export type ICreateBoolFieldValue_internal = z.infer export const boolReadableValueSchema = boolFieldQueryValue + +export type IBoolField = IBaseField diff --git a/packages/core/src/table/filter/bool.filter.ts b/packages/core/src/table/field/fields/bool/bool.filter.ts similarity index 52% rename from packages/core/src/table/filter/bool.filter.ts rename to packages/core/src/table/field/fields/bool/bool.filter.ts index f123cd51a..cc47bae01 100644 --- a/packages/core/src/table/filter/bool.filter.ts +++ b/packages/core/src/table/field/fields/bool/bool.filter.ts @@ -1,6 +1,9 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { boolFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $is_false, $is_true } from '../../../filter/operators.js' + +export const boolFilterOperators = z.union([$is_true, $is_false]) +export type IBoolFilterOperator = z.infer export const boolFilterValue = z.boolean().nullable() export const boolFilter = z diff --git a/packages/core/src/table/field/fields/bool/index.ts b/packages/core/src/table/field/fields/bool/index.ts new file mode 100644 index 000000000..179912c60 --- /dev/null +++ b/packages/core/src/table/field/fields/bool/index.ts @@ -0,0 +1,4 @@ +export * from './bool-field-value.js' +export * from './bool-field.js' +export * from './bool-field.type.js' +export * from './bool.filter.js' diff --git a/packages/core/src/table/field/collaborator-field-value.ts b/packages/core/src/table/field/fields/collaborator/collaborator-field-value.ts similarity index 80% rename from packages/core/src/table/field/collaborator-field-value.ts rename to packages/core/src/table/field/fields/collaborator/collaborator-field-value.ts index 4def2ad0c..f3db92059 100644 --- a/packages/core/src/table/field/collaborator-field-value.ts +++ b/packages/core/src/table/field/fields/collaborator/collaborator-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ICollaboratorFieldValue } from './collaborator-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class CollaboratorFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/collaborator-field.ts b/packages/core/src/table/field/fields/collaborator/collaborator-field.ts similarity index 77% rename from packages/core/src/table/field/collaborator-field.ts rename to packages/core/src/table/field/fields/collaborator/collaborator-field.ts index 1ed87fd21..a345a0c44 100644 --- a/packages/core/src/table/field/collaborator-field.ts +++ b/packages/core/src/table/field/fields/collaborator/collaborator-field.ts @@ -1,22 +1,21 @@ import { unzip } from 'lodash-es' import { z } from 'zod' -import type { ICollaboratorFilter } from '../filter/collaborator.filter.js' -import type { ICollaboratorFilterOperator } from '../filter/operators.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { CollaboratorFieldValue } from './collaborator-field-value.js' import type { CollaboratorFieldType, + ICollaboratorField, ICreateCollaboratorFieldInput, ICreateCollaboratorFieldValue, } from './collaborator-field.type.js' -import { BaseField } from './field.base.js' -import type { Field, ICollaboratorField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { ICollaboratorFilter, ICollaboratorFilterOperator } from './collaborator.filter.js' export class CollaboratorField extends BaseField { - duplicate(name: string): Field { + duplicate(name: string): CollaboratorField { return CollaboratorField.create({ ...this.json, id: FieldId.createId(), diff --git a/packages/core/src/table/field/collaborator-field.type.ts b/packages/core/src/table/field/fields/collaborator/collaborator-field.type.ts similarity index 83% rename from packages/core/src/table/field/collaborator-field.type.ts rename to packages/core/src/table/field/fields/collaborator/collaborator-field.type.ts index deeb91944..e72be89aa 100644 --- a/packages/core/src/table/field/collaborator-field.type.ts +++ b/packages/core/src/table/field/fields/collaborator/collaborator-field.type.ts @@ -1,12 +1,13 @@ import * as z from 'zod' -import { colorsSchema } from '../../common/color.js' -import { userIdSchema } from '../../user/value-objects/user-id.vo.js' -import { tableIdSchema } from '../value-objects/table-id.vo.js' +import { colorsSchema } from '../../../../common/color.js' +import { userIdSchema } from '../../../../user/value-objects/user-id.vo.js' +import { tableIdSchema } from '../../../value-objects/table-id.vo.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldIssue } from '../../value-objects/field-issue.vo.js' import { CollaboratorField } from './collaborator-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' -import type { FieldIssue } from './value-objects/field-issue.vo.js' export const collaboratorTypeSchema = z.literal('collaborator') export type CollaboratorFieldType = z.infer @@ -67,3 +68,5 @@ export const collaboratorProfile = z.object({ export type ICollaboratorProfile = z.infer export const collaboratorReadableValueSchema = z.object({ id: userIdSchema }).merge(collaboratorProfile).array() + +export type ICollaboratorField = IBaseField diff --git a/packages/core/src/table/filter/collaborator.filter.ts b/packages/core/src/table/field/fields/collaborator/collaborator.filter.ts similarity index 52% rename from packages/core/src/table/filter/collaborator.filter.ts rename to packages/core/src/table/field/fields/collaborator/collaborator.filter.ts index baf1ea65f..671b3d59b 100644 --- a/packages/core/src/table/filter/collaborator.filter.ts +++ b/packages/core/src/table/field/fields/collaborator/collaborator.filter.ts @@ -1,8 +1,11 @@ import { z } from 'zod' -import { userIdSchema } from '../../user/value-objects/user-id.vo.js' -import { collaboratorFieldValue } from '../field/collaborator-field.type.js' -import { baseFilter } from './filter.base.js' -import { collaboratorFilterOperators } from './operators.js' +import { userIdSchema } from '../../../../user/value-objects/user-id.vo.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $in, $is_empty, $is_not_empty, $neq, $nin } from '../../../filter/operators.js' +import { collaboratorFieldValue } from './collaborator-field.type.js' + +export const collaboratorFilterOperators = z.union([$eq, $neq, $in, $nin, $is_empty, $is_not_empty]) +export type ICollaboratorFilterOperator = z.infer export const collaboratorFilterValue = collaboratorFieldValue.or(userIdSchema) export const collaboratorFilter = z @@ -14,4 +17,3 @@ export const collaboratorFilter = z .merge(baseFilter) export type ICollaboratorFilter = z.infer -export type ICollaboratorFilterOperator = z.infer diff --git a/packages/core/src/table/field/fields/collaborator/index.ts b/packages/core/src/table/field/fields/collaborator/index.ts new file mode 100644 index 000000000..84f74c033 --- /dev/null +++ b/packages/core/src/table/field/fields/collaborator/index.ts @@ -0,0 +1,4 @@ +export * from './collaborator-field-value.js' +export * from './collaborator-field.js' +export * from './collaborator-field.type.js' +export * from './collaborator.filter.js' diff --git a/packages/core/src/table/field/color-field-value.ts b/packages/core/src/table/field/fields/color/color-field-value.ts similarity index 76% rename from packages/core/src/table/field/color-field-value.ts rename to packages/core/src/table/field/fields/color/color-field-value.ts index a39fe5670..cf42e14a9 100644 --- a/packages/core/src/table/field/color-field-value.ts +++ b/packages/core/src/table/field/fields/color/color-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IColorFieldValue } from './color-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export const DEFAULT_COLOR = '#5C7CFA' diff --git a/packages/core/src/table/field/color-field.ts b/packages/core/src/table/field/fields/color/color-field.ts similarity index 69% rename from packages/core/src/table/field/color-field.ts rename to packages/core/src/table/field/fields/color/color-field.ts index 2f3dfa6ab..3334e7b9c 100644 --- a/packages/core/src/table/field/color-field.ts +++ b/packages/core/src/table/field/fields/color/color-field.ts @@ -1,13 +1,13 @@ import { z } from 'zod' -import type { IColorFilter, IColorFilterOperator } from '../filter/color.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import type { Field } from '../../field.type.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { ColorFieldValue } from './color-field-value.js' -import type { ColorFieldType, ICreateColorFieldInput, ICreateColorFieldValue } from './color-field.type.js' -import { BaseField } from './field.base.js' -import type { Field, IColorField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { ColorFieldType, IColorField, ICreateColorFieldInput, ICreateColorFieldValue } from './color-field.type.js' +import type { IColorFilter, IColorFilterOperator } from './color.filter.js' export class ColorField extends BaseField { duplicate(name: string): Field { diff --git a/packages/core/src/table/field/color-field.type.ts b/packages/core/src/table/field/fields/color/color-field.type.ts similarity index 88% rename from packages/core/src/table/field/color-field.type.ts rename to packages/core/src/table/field/fields/color/color-field.type.ts index 1d2fd7aa7..7bd6b3976 100644 --- a/packages/core/src/table/field/color-field.type.ts +++ b/packages/core/src/table/field/fields/color/color-field.type.ts @@ -1,7 +1,8 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { ColorField } from './color-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' export const colorTypeSchema = z.literal('color') export type ColorFieldType = z.infer @@ -32,3 +33,5 @@ export const createColorFieldValue_internal = z export type ICreateColorFieldValue_internal = z.infer export const colorReadableValueSchema = colorFieldQueryValue + +export type IColorField = IBaseField diff --git a/packages/core/src/table/filter/color.filter.ts b/packages/core/src/table/field/fields/color/color.filter.ts similarity index 56% rename from packages/core/src/table/filter/color.filter.ts rename to packages/core/src/table/field/fields/color/color.filter.ts index 08c64a89d..cfe62e21d 100644 --- a/packages/core/src/table/filter/color.filter.ts +++ b/packages/core/src/table/field/fields/color/color.filter.ts @@ -1,7 +1,9 @@ import { z } from 'zod' -import { colorFieldValue } from '../field/color-field.type.js' -import { baseFilter } from './filter.base.js' -import { colorFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $is_empty, $is_not_empty, $neq } from '../../../filter/operators.js' +import { colorFieldValue } from './color-field.type.js' + +export const colorFilterOperators = z.union([$is_empty, $is_not_empty, $eq, $neq]) export const colorFilterValue = colorFieldValue export const colorFilter = z diff --git a/packages/core/src/table/field/fields/color/index.ts b/packages/core/src/table/field/fields/color/index.ts new file mode 100644 index 000000000..272383dd8 --- /dev/null +++ b/packages/core/src/table/field/fields/color/index.ts @@ -0,0 +1,4 @@ +export * from './color-field-value.js' +export * from './color-field.js' +export * from './color-field.type.js' +export * from './color.filter.js' diff --git a/packages/core/src/table/field/count-field-value.ts b/packages/core/src/table/field/fields/count/count-field-value.ts similarity index 74% rename from packages/core/src/table/field/count-field-value.ts rename to packages/core/src/table/field/fields/count/count-field-value.ts index 66c791119..350875919 100644 --- a/packages/core/src/table/field/count-field-value.ts +++ b/packages/core/src/table/field/fields/count/count-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ICountFieldValue } from './count-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class CountFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/count-field.ts b/packages/core/src/table/field/fields/count/count-field.ts similarity index 75% rename from packages/core/src/table/field/count-field.ts rename to packages/core/src/table/field/fields/count/count-field.ts index 9c310bc82..2c79cecd1 100644 --- a/packages/core/src/table/field/count-field.ts +++ b/packages/core/src/table/field/fields/count/count-field.ts @@ -1,12 +1,12 @@ import { z } from 'zod' -import type { ICountFilter, ICountFilterOperator } from '../filter/count.filter.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' +import type { IRecordDisplayValues, RecordValueJSON } from '../../../record/index.js' +import { AbstractLookupField, BaseField } from '../../field.base.js' +import type { Field } from '../../field.type.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { CountFieldValue } from './count-field-value.js' -import type { CountType, ICreateCountFieldInput, ICreateCountFieldValue } from './count-field.type.js' -import { AbstractLookupField, BaseField } from './field.base.js' -import type { Field, ICountField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { CountType, ICountField, ICreateCountFieldInput, ICreateCountFieldValue } from './count-field.type.js' +import type { ICountFilter, ICountFilterOperator } from './count.filter.js' export class CountField extends AbstractLookupField { duplicate(name: string): Field { diff --git a/packages/core/src/table/field/count-field.type.ts b/packages/core/src/table/field/fields/count/count-field.type.ts similarity index 82% rename from packages/core/src/table/field/count-field.type.ts rename to packages/core/src/table/field/fields/count/count-field.type.ts index 271fab22b..1303ea6ab 100644 --- a/packages/core/src/table/field/count-field.type.ts +++ b/packages/core/src/table/field/fields/count/count-field.type.ts @@ -1,8 +1,10 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldId } from '../../value-objects/field-id.vo.js' import { CountField } from './count-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' export const countTypeSchema = z.literal('count') export type CountType = z.infer @@ -49,3 +51,5 @@ export const createCountFieldValue_internal = z export type ICreateCountFieldValue_internal = z.infer export const countReadableValueSchema = countFieldQueryValue + +export type ICountField = IBaseField & { referenceFieldId: FieldId } diff --git a/packages/core/src/table/filter/count.filter.ts b/packages/core/src/table/field/fields/count/count.filter.ts similarity index 62% rename from packages/core/src/table/filter/count.filter.ts rename to packages/core/src/table/field/fields/count/count.filter.ts index 9a544d6d0..b08b3c351 100644 --- a/packages/core/src/table/filter/count.filter.ts +++ b/packages/core/src/table/field/fields/count/count.filter.ts @@ -1,6 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { countFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $gt, $gte, $lt, $lte, $neq } from '../../../filter/operators.js' + +export const countFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) export const countFilterValue = z.number().nullable() export const countFilter = z @@ -10,5 +12,6 @@ export const countFilter = z value: countFilterValue, }) .merge(baseFilter) + export type ICountFilter = z.infer export type ICountFilterOperator = z.infer diff --git a/packages/core/src/table/field/fields/count/index.ts b/packages/core/src/table/field/fields/count/index.ts new file mode 100644 index 000000000..957e382f1 --- /dev/null +++ b/packages/core/src/table/field/fields/count/index.ts @@ -0,0 +1,4 @@ +export * from './count-field-value.js' +export * from './count-field.js' +export * from './count-field.type.js' +export * from './count.filter.js' diff --git a/packages/core/src/table/field/created-at-field-value.ts b/packages/core/src/table/field/fields/created-at/created-at-field-value.ts similarity index 81% rename from packages/core/src/table/field/created-at-field-value.ts rename to packages/core/src/table/field/fields/created-at/created-at-field-value.ts index 927fbd3aa..1f7fe2f81 100644 --- a/packages/core/src/table/field/created-at-field-value.ts +++ b/packages/core/src/table/field/fields/created-at/created-at-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ICreatedAtFieldQueryValue, ICreatedAtFieldValue } from './created-at-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class CreatedAtFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/created-at-field.ts b/packages/core/src/table/field/fields/created-at/created-at-field.ts similarity index 75% rename from packages/core/src/table/field/created-at-field.ts rename to packages/core/src/table/field/fields/created-at/created-at-field.ts index b6db34e26..11ba0d5f8 100644 --- a/packages/core/src/table/field/created-at-field.ts +++ b/packages/core/src/table/field/fields/created-at/created-at-field.ts @@ -1,23 +1,22 @@ import { format } from 'date-fns' import type { ZodTypeAny } from 'zod' import { z } from 'zod' -import type { ICreatedAtFilter } from '../filter/created-at.filter.js' -import type { ICreatedAtFilterOperator } from '../filter/operators.js' -import type { IRecordDisplayValues } from '../record/index.js' -import type { RecordValueJSON } from '../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/index.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import { AbstractDateField } from '../../field.base.js' +import { INTERNAL_COLUMN_CREATED_AT_NAME } from '../../field.constants.js' +import { FieldCannotBeDuplicated } from '../../field.errors.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DateFormat } from '../../value-objects/date-format.vo.js' +import { TimeFormat } from '../../value-objects/time-format.vo.js' import { CreatedAtFieldValue } from './created-at-field-value.js' import type { CreatedAtFieldType, ICreateCreatedAtFieldInput, + ICreatedAtField, ICreatedAtFieldQueryValue, } from './created-at-field.type.js' -import { AbstractDateField } from './field.base.js' -import { INTERNAL_COLUMN_CREATED_AT_NAME } from './field.constants.js' -import { FieldCannotBeDuplicated } from './field.errors.js' -import { type ICreatedAtField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { DateFormat } from './value-objects/date-format.vo.js' -import { TimeFormat } from './value-objects/time-format.vo.js' +import type { ICreatedAtFilter, ICreatedAtFilterOperator } from './created-at.filter.js' export class CreatedAtField extends AbstractDateField { duplicate(name: string): CreatedAtField { diff --git a/packages/core/src/table/field/created-at-field.type.ts b/packages/core/src/table/field/fields/created-at/created-at-field.type.ts similarity index 86% rename from packages/core/src/table/field/created-at-field.type.ts rename to packages/core/src/table/field/fields/created-at/created-at-field.type.ts index 5d275a076..396754fba 100644 --- a/packages/core/src/table/field/created-at-field.type.ts +++ b/packages/core/src/table/field/fields/created-at/created-at-field.type.ts @@ -1,8 +1,9 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { BaseDateField, IBaseField } from '../../field.type.js' +import { timeFormat } from '../../value-objects/time-format.vo.js' import { CreatedAtField } from './created-at-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' -import { timeFormat } from './value-objects/time-format.vo.js' export const createdAtTypeSchema = z.literal('created-at') export type CreatedAtFieldType = z.infer @@ -41,3 +42,5 @@ export const createCreatedAtFieldValue_internal = z export type ICreateCreatedAtFieldValue_internal = z.infer export const createdAtReadableValueSchema = createdAtFieldQueryValue + +export type ICreatedAtField = IBaseField & BaseDateField diff --git a/packages/core/src/table/field/fields/created-at/created-at.filter.ts b/packages/core/src/table/field/fields/created-at/created-at.filter.ts new file mode 100644 index 000000000..34688915e --- /dev/null +++ b/packages/core/src/table/field/fields/created-at/created-at.filter.ts @@ -0,0 +1,17 @@ +import { z } from 'zod' +import { baseFilter } from '../../../filter/filter.base.js' +import { $between, $eq, $gt, $gte, $is_today, $lt, $lte, $neq } from '../../../filter/operators.js' + +export const createdAtFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte, $between, $is_today]) +export type ICreatedAtFilterOperator = z.infer + +export const createdAtFilterValue = z.string().nullable() +export const createdAtFilter = z + .object({ + type: z.literal('created-at'), + operator: createdAtFilterOperators, + value: createdAtFilterValue, + }) + .merge(baseFilter) + +export type ICreatedAtFilter = z.infer diff --git a/packages/core/src/table/field/fields/created-at/index.ts b/packages/core/src/table/field/fields/created-at/index.ts new file mode 100644 index 000000000..1fb3c314d --- /dev/null +++ b/packages/core/src/table/field/fields/created-at/index.ts @@ -0,0 +1,4 @@ +export * from './created-at-field-value.js' +export * from './created-at-field.js' +export * from './created-at-field.type.js' +export * from './created-at.filter.js' diff --git a/packages/core/src/table/field/created-by-field-value.ts b/packages/core/src/table/field/fields/created-by/created-by-field-value.ts similarity index 80% rename from packages/core/src/table/field/created-by-field-value.ts rename to packages/core/src/table/field/fields/created-by/created-by-field-value.ts index 159c5c25f..d4c2b23eb 100644 --- a/packages/core/src/table/field/created-by-field-value.ts +++ b/packages/core/src/table/field/fields/created-by/created-by-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ICreatedByFieldQueryValue, ICreatedByFieldValue } from './created-by-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class CreatedByFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/created-by-field.ts b/packages/core/src/table/field/fields/created-by/created-by-field.ts similarity index 73% rename from packages/core/src/table/field/created-by-field.ts rename to packages/core/src/table/field/fields/created-by/created-by-field.ts index bd08ad6fc..f26fa2106 100644 --- a/packages/core/src/table/field/created-by-field.ts +++ b/packages/core/src/table/field/fields/created-by/created-by-field.ts @@ -1,20 +1,20 @@ import type { ZodTypeAny } from 'zod' import { z } from 'zod' -import type { ICreatedByFilter } from '../filter/created-by.filter.js' -import type { ICreatedByFilterOperator } from '../filter/operators.js' -import type { IRecordDisplayValues } from '../record/index.js' -import type { RecordValueJSON } from '../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/index.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import { BaseField } from '../../field.base.js' +import { INTERNAL_COLUMN_CREATED_BY_PROFILE_NAME } from '../../field.constants.js' +import { FieldCannotBeDuplicated } from '../../field.errors.js' +import type { Field } from '../../field.type.js' +import type { IFieldVisitor } from '../../field.visitor.js' import { CreatedByFieldValue } from './created-by-field-value.js' import type { CreatedByFieldType, ICreateCreatedByFieldInput, + ICreatedByField, ICreatedByFieldQueryValue, } from './created-by-field.type.js' -import { BaseField } from './field.base.js' -import { INTERNAL_COLUMN_CREATED_BY_PROFILE_NAME } from './field.constants.js' -import { FieldCannotBeDuplicated } from './field.errors.js' -import type { Field, ICreatedByField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { ICreatedByFilter, ICreatedByFilterOperator } from './created-by.filter.js' export class CreatedByField extends BaseField { duplicate(name: string): Field { diff --git a/packages/core/src/table/field/created-by-field.type.ts b/packages/core/src/table/field/fields/created-by/created-by-field.type.ts similarity index 83% rename from packages/core/src/table/field/created-by-field.type.ts rename to packages/core/src/table/field/fields/created-by/created-by-field.type.ts index 3d5bae611..5678ca8b0 100644 --- a/packages/core/src/table/field/created-by-field.type.ts +++ b/packages/core/src/table/field/fields/created-by/created-by-field.type.ts @@ -1,9 +1,10 @@ import * as z from 'zod' -import { userIdSchema } from '../../user/value-objects/user-id.vo.js' -import { collaboratorProfile } from './collaborator-field.type.js' +import { userIdSchema } from '../../../../user/value-objects/user-id.vo.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import { collaboratorProfile } from '../collaborator/collaborator-field.type.js' import { CreatedByField } from './created-by-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' export const createdByTypeSchema = z.literal('created-by') export type CreatedByFieldType = z.infer @@ -42,3 +43,5 @@ export const createCreatedByFieldValue_internal = z export type ICreateCreatedByFieldValue_internal = z.infer export const createdByReadableValueSchema = z.object({ id: userIdSchema }).merge(collaboratorProfile) + +export type ICreatedByField = IBaseField diff --git a/packages/core/src/table/field/fields/created-by/created-by.filter.ts b/packages/core/src/table/field/fields/created-by/created-by.filter.ts new file mode 100644 index 000000000..fa4737aa8 --- /dev/null +++ b/packages/core/src/table/field/fields/created-by/created-by.filter.ts @@ -0,0 +1,18 @@ +import { z } from 'zod' +import { userIdSchema } from '../../../../user/value-objects/user-id.vo.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $in, $is_empty, $is_not_empty, $neq, $nin } from '../../../filter/operators.js' + +export const createdByFilterOperators = z.union([$eq, $neq, $in, $nin, $is_empty, $is_not_empty]) +export type ICreatedByFilterOperator = z.infer + +export const createdByFilterValue = userIdSchema +export const createdByFilter = z + .object({ + type: z.literal('created-by'), + operator: createdByFilterOperators, + value: createdByFilterValue, + }) + .merge(baseFilter) + +export type ICreatedByFilter = z.infer diff --git a/packages/core/src/table/field/fields/created-by/index.ts b/packages/core/src/table/field/fields/created-by/index.ts new file mode 100644 index 000000000..0edf2271e --- /dev/null +++ b/packages/core/src/table/field/fields/created-by/index.ts @@ -0,0 +1,4 @@ +export * from './created-by-field-value.js' +export * from './created-by-field.js' +export * from './created-by-field.type.js' +export * from './created-by.filter.js' diff --git a/packages/core/src/table/field/currency-field-value.ts b/packages/core/src/table/field/fields/currency/currency-field-value.ts similarity index 75% rename from packages/core/src/table/field/currency-field-value.ts rename to packages/core/src/table/field/fields/currency/currency-field-value.ts index 31fca4f23..69b216973 100644 --- a/packages/core/src/table/field/currency-field-value.ts +++ b/packages/core/src/table/field/fields/currency/currency-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ICurrencyFieldValue } from './currency-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class CurrencyFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/currency-field.ts b/packages/core/src/table/field/fields/currency/currency-field.ts similarity index 80% rename from packages/core/src/table/field/currency-field.ts rename to packages/core/src/table/field/fields/currency/currency-field.ts index 5fb018278..0884d5380 100644 --- a/packages/core/src/table/field/currency-field.ts +++ b/packages/core/src/table/field/fields/currency/currency-field.ts @@ -1,22 +1,24 @@ import { isString } from 'lodash-es' import { None, Some, type Option } from 'oxide.ts' import { z } from 'zod' -import type { ICurrencyFilter, ICurrencyFilterOperator } from '../filter/currency.filter.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' -import type { TableCompositeSpecificaiton } from '../specifications/interface.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import type { TableCompositeSpecificaiton } from '../../../specifications/index.js' +import { BaseField } from '../../field.base.js' +import type { Field } from '../../field.type.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { WithCurrencySymbol } from '../../specifications/currency-field.specification.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { CurrencyFieldValue } from './currency-field-value.js' import type { CurrencyFieldType, ICreateCurrencyFieldInput, ICreateCurrencyFieldValue, + ICurrencyField, IUpdateCurrencyFieldInput, } from './currency-field.type.js' import { CurrencySymbol } from './currency-symbol.vo.js' -import { BaseField } from './field.base.js' -import type { Field, ICurrencyField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { WithCurrencySymbol } from './specifications/currency-field.specification.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { ICurrencyFilter, ICurrencyFilterOperator } from './currency.filter.js' export class CurrencyField extends BaseField { duplicate(name: string): Field { diff --git a/packages/core/src/table/field/currency-field.type.ts b/packages/core/src/table/field/fields/currency/currency-field.type.ts similarity index 86% rename from packages/core/src/table/field/currency-field.type.ts rename to packages/core/src/table/field/fields/currency/currency-field.type.ts index 24dd1e316..9c73fb362 100644 --- a/packages/core/src/table/field/currency-field.type.ts +++ b/packages/core/src/table/field/fields/currency/currency-field.type.ts @@ -1,8 +1,10 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { CurrencyField } from './currency-field.js' +import type { CurrencySymbol } from './currency-symbol.vo.js' import { currencySymbol } from './currency-symbol.vo.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' export const currencyTypeSchema = z.literal('currency') export type CurrencyFieldType = z.infer @@ -41,3 +43,5 @@ export const createCurrencyFieldValue_internal = z export type ICreateCurrencyFieldValue_internal = z.infer export const currencyReadableValueSchema = currencyFieldQueryValue + +export type ICurrencyField = IBaseField & { symbol: CurrencySymbol } diff --git a/packages/core/src/table/field/currency-symbol.vo.ts b/packages/core/src/table/field/fields/currency/currency-symbol.vo.ts similarity index 100% rename from packages/core/src/table/field/currency-symbol.vo.ts rename to packages/core/src/table/field/fields/currency/currency-symbol.vo.ts diff --git a/packages/core/src/table/filter/currency.filter.ts b/packages/core/src/table/field/fields/currency/currency.filter.ts similarity index 58% rename from packages/core/src/table/filter/currency.filter.ts rename to packages/core/src/table/field/fields/currency/currency.filter.ts index 011e2ff5b..9324882a1 100644 --- a/packages/core/src/table/filter/currency.filter.ts +++ b/packages/core/src/table/field/fields/currency/currency.filter.ts @@ -1,7 +1,9 @@ import { z } from 'zod' -import { currencyFieldValue } from '../field/currency-field.type.js' -import { baseFilter } from './filter.base.js' -import { currencyFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $gt, $gte, $lt, $lte, $neq } from '../../../filter/operators.js' +import { currencyFieldValue } from './currency-field.type.js' + +export const currencyFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) export const currencyFilterValue = currencyFieldValue export const currencyFilter = z diff --git a/packages/core/src/table/field/fields/currency/index.ts b/packages/core/src/table/field/fields/currency/index.ts new file mode 100644 index 000000000..8789075d3 --- /dev/null +++ b/packages/core/src/table/field/fields/currency/index.ts @@ -0,0 +1,5 @@ +export * from './currency-field-value.js' +export * from './currency-field.js' +export * from './currency-field.type.js' +export * from './currency-symbol.vo.js' +export * from './currency.filter.js' diff --git a/packages/core/src/table/field/__snapshots__/date-range-field.type.test.ts.snap b/packages/core/src/table/field/fields/date-range/__snapshots__/date-range-field.type.test.ts.snap similarity index 100% rename from packages/core/src/table/field/__snapshots__/date-range-field.type.test.ts.snap rename to packages/core/src/table/field/fields/date-range/__snapshots__/date-range-field.type.test.ts.snap diff --git a/packages/core/src/table/field/date-range-field-value.ts b/packages/core/src/table/field/fields/date-range/date-range-field-value.ts similarity index 88% rename from packages/core/src/table/field/date-range-field-value.ts rename to packages/core/src/table/field/fields/date-range/date-range-field-value.ts index f05168666..01e9f99a0 100644 --- a/packages/core/src/table/field/date-range-field-value.ts +++ b/packages/core/src/table/field/fields/date-range/date-range-field-value.ts @@ -1,8 +1,8 @@ import { Option } from 'oxide.ts' import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IDateRangeFieldQueryValue, IDateRangeFieldValue } from './date-range-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class DateRangeFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/date-range-field.ts b/packages/core/src/table/field/fields/date-range/date-range-field.ts similarity index 77% rename from packages/core/src/table/field/date-range-field.ts rename to packages/core/src/table/field/fields/date-range/date-range-field.ts index 5f7a3bb54..e80e97348 100644 --- a/packages/core/src/table/field/date-range-field.ts +++ b/packages/core/src/table/field/fields/date-range/date-range-field.ts @@ -1,17 +1,20 @@ import { format } from 'date-fns' import { isArray } from 'lodash-es' import { z } from 'zod' -import type { IDateRangeFilter } from '../filter/date-range.filter.js' -import type { IDateRangeFilterOperator } from '../filter/index.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' +import type { IRecordDisplayValues, RecordValueJSON } from '../../../record/index.js' +import { AbstractDateField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DateFormat } from '../../value-objects/date-format.vo.js' +import { FieldId } from '../../value-objects/field-id.vo.js' +import { TimeFormat } from '../../value-objects/time-format.vo.js' import { DateRangeFieldValue } from './date-range-field-value.js' -import type { DateRangeType, ICreateDateRangeFieldSchema, IDateRangeFieldQueryValue } from './date-range-field.type.js' -import { AbstractDateField } from './field.base.js' -import type { IDateRangeField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { DateFormat } from './value-objects/date-format.vo.js' -import { FieldId } from './value-objects/field-id.vo.js' -import { TimeFormat } from './value-objects/time-format.vo.js' +import type { + DateRangeType, + ICreateDateRangeFieldSchema, + IDateRangeField, + IDateRangeFieldQueryValue, +} from './date-range-field.type.js' +import type { IDateRangeFilter, IDateRangeFilterOperator } from './date-range.filter.js' export class DateRangeField extends AbstractDateField { duplicate(name: string): DateRangeField { diff --git a/packages/core/src/table/field/date-range-field.type.test.ts b/packages/core/src/table/field/fields/date-range/date-range-field.type.test.ts similarity index 100% rename from packages/core/src/table/field/date-range-field.type.test.ts rename to packages/core/src/table/field/fields/date-range/date-range-field.type.test.ts diff --git a/packages/core/src/table/field/date-range-field.type.ts b/packages/core/src/table/field/fields/date-range/date-range-field.type.ts similarity index 88% rename from packages/core/src/table/field/date-range-field.type.ts rename to packages/core/src/table/field/fields/date-range/date-range-field.type.ts index d776452bc..6ee01fb7b 100644 --- a/packages/core/src/table/field/date-range-field.type.ts +++ b/packages/core/src/table/field/fields/date-range/date-range-field.type.ts @@ -1,9 +1,10 @@ import { isAfter } from 'date-fns' import { z } from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { BaseDateField, IBaseField } from '../../field.type.js' +import { timeFormat } from '../../value-objects/time-format.vo.js' import { DateRangeField } from './date-range-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' -import { timeFormat } from './value-objects/time-format.vo.js' export const dateRangeTypeSchema = z.literal('date-range') export type DateRangeType = z.infer @@ -60,3 +61,5 @@ export type ICreateDateRangeFieldValue_internal = z.infer + +export type IDateRangeFilterOperator = z.infer diff --git a/packages/core/src/table/field/fields/date-range/index.ts b/packages/core/src/table/field/fields/date-range/index.ts new file mode 100644 index 000000000..dec6a7091 --- /dev/null +++ b/packages/core/src/table/field/fields/date-range/index.ts @@ -0,0 +1,4 @@ +export * from './date-range-field-value.js' +export * from './date-range-field.js' +export * from './date-range-field.type.js' +export * from './date-range.filter.js' diff --git a/packages/core/src/table/field/date-field-value.ts b/packages/core/src/table/field/fields/date/date-field-value.ts similarity index 89% rename from packages/core/src/table/field/date-field-value.ts rename to packages/core/src/table/field/fields/date/date-field-value.ts index 5779cb463..e3596b2f1 100644 --- a/packages/core/src/table/field/date-field-value.ts +++ b/packages/core/src/table/field/fields/date/date-field-value.ts @@ -1,9 +1,9 @@ import type { ValueObject } from '@undb/domain' import { isEqual } from 'date-fns' import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IDateFieldValue } from './date-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class DateFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/date-field.ts b/packages/core/src/table/field/fields/date/date-field.ts similarity index 72% rename from packages/core/src/table/field/date-field.ts rename to packages/core/src/table/field/fields/date/date-field.ts index 72fa8e21e..ef8154276 100644 --- a/packages/core/src/table/field/date-field.ts +++ b/packages/core/src/table/field/fields/date/date-field.ts @@ -1,18 +1,15 @@ import { format } from 'date-fns' import { z } from 'zod' -import type { IDateFilter } from '../filter/date.filter.js' -import type { IDateFilterOperator } from '../filter/index.js' -import { dateBuiltInOperators } from '../filter/operators.js' -import type { IRecordDisplayValues } from '../record/index.js' -import type { RecordValueJSON } from '../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/index.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import { AbstractDateField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DateFormat } from '../../value-objects/date-format.vo.js' +import { FieldId } from '../../value-objects/field-id.vo.js' +import { TimeFormat } from '../../value-objects/time-format.vo.js' import { DateFieldValue } from './date-field-value.js' -import type { DateType, ICreateDateFieldSchema, IDateFieldQueryValue } from './date-field.type.js' -import { AbstractDateField } from './field.base.js' -import type { IDateField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { DateFormat } from './value-objects/date-format.vo.js' -import { FieldId } from './value-objects/field-id.vo.js' -import { TimeFormat } from './value-objects/time-format.vo.js' +import type { DateType, ICreateDateFieldSchema, IDateField, IDateFieldQueryValue } from './date-field.type.js' +import { dateBuiltInOperators, type IDateFilter, type IDateFilterOperator } from './date.filter.js' export class DateField extends AbstractDateField { duplicate(name: string): DateField { diff --git a/packages/core/src/table/field/date-field.type.ts b/packages/core/src/table/field/fields/date/date-field.type.ts similarity index 85% rename from packages/core/src/table/field/date-field.type.ts rename to packages/core/src/table/field/fields/date/date-field.type.ts index d870f171e..eba1aabb1 100644 --- a/packages/core/src/table/field/date-field.type.ts +++ b/packages/core/src/table/field/fields/date/date-field.type.ts @@ -1,8 +1,9 @@ import { z } from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { BaseDateField, IBaseField } from '../../field.type.js' +import { timeFormat } from '../../value-objects/time-format.vo.js' import { DateField } from './date-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' -import { timeFormat } from './value-objects/time-format.vo.js' export const dateTypeSchema = z.literal('date') export type DateType = z.infer @@ -37,3 +38,5 @@ export type ICreateDateFieldValue_internal = z.infer + +export type IDateFilterOperator = z.infer + +/** + * built in date operators + */ +export const dateBuiltInOperators = new Set([$is_today.value]) + +export const isBuiltInDateOperator = (operator: IDateFilterOperator) => dateBuiltInOperators.has(operator) diff --git a/packages/core/src/table/field/fields/date/index.ts b/packages/core/src/table/field/fields/date/index.ts new file mode 100644 index 000000000..8608ad05b --- /dev/null +++ b/packages/core/src/table/field/fields/date/index.ts @@ -0,0 +1,4 @@ +export * from './date-field-value.js' +export * from './date-field.js' +export * from './date-field.type.js' +export * from './date.filter.js' diff --git a/packages/core/src/table/field/email-field-value.ts b/packages/core/src/table/field/fields/email/email-field-value.ts similarity index 74% rename from packages/core/src/table/field/email-field-value.ts rename to packages/core/src/table/field/fields/email/email-field-value.ts index b8738c653..d4aa7b9ba 100644 --- a/packages/core/src/table/field/email-field-value.ts +++ b/packages/core/src/table/field/fields/email/email-field-value.ts @@ -1,7 +1,7 @@ import type { JsonValue } from 'type-fest' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IEmailFieldValue } from './email-field.type.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' export class EmailFieldValue extends FieldValueBase { get json(): JsonValue { diff --git a/packages/core/src/table/field/email-field.ts b/packages/core/src/table/field/fields/email/email-field.ts similarity index 74% rename from packages/core/src/table/field/email-field.ts rename to packages/core/src/table/field/fields/email/email-field.ts index dd4ede208..8891b3dbc 100644 --- a/packages/core/src/table/field/email-field.ts +++ b/packages/core/src/table/field/fields/email/email-field.ts @@ -1,12 +1,12 @@ import { z } from 'zod' -import type { IEmailFilter, IEmailFilterOperator } from '../filter/email.filter.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { EmailFieldValue } from './email-field-value.js' -import type { EmailFieldType, ICreateEmailFieldInput, ICreateEmailFieldValue } from './email-field.type.js' -import { BaseField } from './field.base.js' -import type { IEmailField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { EmailFieldType, ICreateEmailFieldInput, ICreateEmailFieldValue, IEmailField } from './email-field.type.js' +import type { IEmailFilter, IEmailFilterOperator } from './email.filter.js' export class EmailField extends BaseField { duplicate(name: string): EmailField { diff --git a/packages/core/src/table/field/email-field.type.ts b/packages/core/src/table/field/fields/email/email-field.type.ts similarity index 88% rename from packages/core/src/table/field/email-field.type.ts rename to packages/core/src/table/field/fields/email/email-field.type.ts index 9f91632c2..599b58e2a 100644 --- a/packages/core/src/table/field/email-field.type.ts +++ b/packages/core/src/table/field/fields/email/email-field.type.ts @@ -1,7 +1,8 @@ import * as z from 'zod' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { EmailField } from './email-field.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' export const emailTypeSchema = z.literal('email') export type EmailFieldType = z.infer @@ -32,3 +33,5 @@ export const createEmailFieldValue_internal = z export type ICreateEmailFieldValue_internal = z.infer export const emailReadableValueSchema = emailFieldQueryValue + +export type IEmailField = IBaseField diff --git a/packages/core/src/table/filter/email.filter.ts b/packages/core/src/table/field/fields/email/email.filter.ts similarity index 55% rename from packages/core/src/table/filter/email.filter.ts rename to packages/core/src/table/field/fields/email/email.filter.ts index 287e70a3f..0f85d2cb7 100644 --- a/packages/core/src/table/filter/email.filter.ts +++ b/packages/core/src/table/field/fields/email/email.filter.ts @@ -1,6 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { emailFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $contains, $ends_with, $eq, $is_empty, $is_not_empty, $neq, $starts_with } from '../../../filter/operators.js' + +export const emailFilterOperators = z.union([$eq, $neq, $starts_with, $ends_with, $contains, $is_empty, $is_not_empty]) export const emailFilterValue = z.string().nullable() export const emailFilter = z diff --git a/packages/core/src/table/field/fields/email/index.ts b/packages/core/src/table/field/fields/email/index.ts new file mode 100644 index 000000000..46807387a --- /dev/null +++ b/packages/core/src/table/field/fields/email/index.ts @@ -0,0 +1,4 @@ +export * from './email-field-value.js' +export * from './email-field.js' +export * from './email-field.type.js' +export * from './email.filter.js' diff --git a/packages/core/src/table/field/id-field-value.ts b/packages/core/src/table/field/fields/id/id-field-value.ts similarity index 70% rename from packages/core/src/table/field/id-field-value.ts rename to packages/core/src/table/field/fields/id/id-field-value.ts index 2dd792016..337d2d75d 100644 --- a/packages/core/src/table/field/id-field-value.ts +++ b/packages/core/src/table/field/fields/id/id-field-value.ts @@ -1,5 +1,5 @@ -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IIdFieldValue } from './id-field.type.js' export class IdFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/id-field.ts b/packages/core/src/table/field/fields/id/id-field.ts similarity index 64% rename from packages/core/src/table/field/id-field.ts rename to packages/core/src/table/field/fields/id/id-field.ts index 799581eeb..bc8aea39f 100644 --- a/packages/core/src/table/field/id-field.ts +++ b/packages/core/src/table/field/fields/id/id-field.ts @@ -1,15 +1,13 @@ import { z } from 'zod' -import type { IIdFilter } from '../filter/id.filter.js' -import type { IIdFilterOperator } from '../filter/operators.js' -import type { IRecordDisplayValues } from '../record/index.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import { BaseField } from './field.base.js' -import { INTERNAL_COLUMN_ID_NAME } from './field.constants.js' -import { FieldCannotBeDuplicated } from './field.errors.js' -import type { IIdField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { IRecordDisplayValues } from '../../../record/index.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import { BaseField } from '../../field.base.js' +import { INTERNAL_COLUMN_ID_NAME } from '../../field.constants.js' +import { FieldCannotBeDuplicated } from '../../field.errors.js' +import type { IFieldVisitor } from '../../field.visitor.js' import { IdFieldValue } from './id-field-value.js' -import type { ICreateIdFieldInput, ICreateIdFieldValue, IdFieldType } from './id-field.type.js' +import type { ICreateIdFieldInput, ICreateIdFieldValue, IIdField, IdFieldType } from './id-field.type.js' +import type { IIdFilter, IIdFilterOperator } from './id.filter.js' export class IdField extends BaseField { duplicate(name: string): IdField { diff --git a/packages/core/src/table/field/id-field.type.ts b/packages/core/src/table/field/fields/id/id-field.type.ts similarity index 83% rename from packages/core/src/table/field/id-field.type.ts rename to packages/core/src/table/field/fields/id/id-field.type.ts index ac06d0a0e..ea96a51b6 100644 --- a/packages/core/src/table/field/id-field.type.ts +++ b/packages/core/src/table/field/fields/id/id-field.type.ts @@ -1,7 +1,8 @@ import * as z from 'zod' -import { recordIdSchema } from '../record/value-objects/record-id.schema.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { recordIdSchema } from '../../../record/value-objects/record-id.schema.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { IdField } from './id-field.js' export const idTypeSchema = z.literal('id') @@ -33,3 +34,5 @@ export const createIdFieldValue_internal = z export type ICreateIdFieldValue_internal = z.infer export const idReadableValueSchema = idFieldQueryValue + +export type IIdField = IBaseField diff --git a/packages/core/src/table/field/fields/id/id.filter.ts b/packages/core/src/table/field/fields/id/id.filter.ts new file mode 100644 index 000000000..883004cdd --- /dev/null +++ b/packages/core/src/table/field/fields/id/id.filter.ts @@ -0,0 +1,18 @@ +import { z } from 'zod' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $in, $neq, $nin } from '../../../filter/operators.js' +import { recordIdSchema } from '../../../record/value-objects/record-id.schema.js' + +export const idFilterOperators = z.union([$eq, $neq, $in, $nin]) +export type IIdFilterOperator = z.infer + +export const idFilterValue = recordIdSchema +export const idFilter = z + .object({ + type: z.literal('id'), + operator: idFilterOperators, + value: idFilterValue.or(recordIdSchema.array()), + }) + .merge(baseFilter) + +export type IIdFilter = z.infer diff --git a/packages/core/src/table/field/fields/id/index.ts b/packages/core/src/table/field/fields/id/index.ts new file mode 100644 index 000000000..6457d4dbb --- /dev/null +++ b/packages/core/src/table/field/fields/id/index.ts @@ -0,0 +1,4 @@ +export * from './id-field-value.js' +export * from './id-field.js' +export * from './id-field.type.js' +export * from './id.filter.js' diff --git a/packages/core/src/table/field/fields/index.ts b/packages/core/src/table/field/fields/index.ts index ee21a5152..9adbf2950 100644 --- a/packages/core/src/table/field/fields/index.ts +++ b/packages/core/src/table/field/fields/index.ts @@ -1 +1,28 @@ +export * from './attachment/index.js' +export * from './auto-increment/index.js' +export * from './average/index.js' +export * from './bool/index.js' +export * from './collaborator/index.js' +export * from './color/index.js' +export * from './count/index.js' +export * from './created-at/index.js' +export * from './created-by/index.js' +export * from './currency/index.js' +export * from './date-range/index.js' +export * from './date/index.js' +export * from './email/index.js' +export * from './id/index.js' +export * from './json/index.js' +export * from './lookup/index.js' +export * from './multi-select/index.js' +export * from './number/index.js' +export * from './parent/index.js' +export * from './rating/index.js' +export * from './reference/index.js' +export * from './select/index.js' +export * from './string/index.js' +export * from './sum/index.js' +export * from './tree/index.js' +export * from './updated-at/index.js' +export * from './updated-by/index.js' export * from './url/index.js' diff --git a/packages/core/src/table/field/fields/json/index.ts b/packages/core/src/table/field/fields/json/index.ts new file mode 100644 index 000000000..b4d6d441d --- /dev/null +++ b/packages/core/src/table/field/fields/json/index.ts @@ -0,0 +1,4 @@ +export * from './json-field-value.js' +export * from './json-field.js' +export * from './json-field.type.js' +export * from './json.filter.js' diff --git a/packages/core/src/table/field/json-field-value.ts b/packages/core/src/table/field/fields/json/json-field-value.ts similarity index 78% rename from packages/core/src/table/field/json-field-value.ts rename to packages/core/src/table/field/fields/json/json-field-value.ts index ecf93bcaf..74d5beabd 100644 --- a/packages/core/src/table/field/json-field-value.ts +++ b/packages/core/src/table/field/fields/json/json-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IJsonFieldValue } from './json-field.type.js' export class JsonFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/json-field.ts b/packages/core/src/table/field/fields/json/json-field.ts similarity index 72% rename from packages/core/src/table/field/json-field.ts rename to packages/core/src/table/field/fields/json/json-field.ts index 89ed60de3..18ff9b679 100644 --- a/packages/core/src/table/field/json-field.ts +++ b/packages/core/src/table/field/fields/json/json-field.ts @@ -1,12 +1,11 @@ import { z } from 'zod' -import type { IJsonFilter, IJsonFilterOperator } from '../filter/json.filter.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' -import { BaseField } from './field.base.js' -import type { IJsonField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { IRecordDisplayValues, RecordValueJSON } from '../../../record/index.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { JsonFieldValue } from './json-field-value.js' -import type { ICreateJsonFieldInput, ICreateJsonFieldValue, JsonFieldType } from './json-field.type.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { ICreateJsonFieldInput, ICreateJsonFieldValue, IJsonField, JsonFieldType } from './json-field.type.js' +import type { IJsonFilter, IJsonFilterOperator } from './json.filter.js' export class JsonField extends BaseField { duplicate(name: string): JsonField { diff --git a/packages/core/src/table/field/json-field.type.ts b/packages/core/src/table/field/fields/json/json-field.type.ts similarity index 90% rename from packages/core/src/table/field/json-field.type.ts rename to packages/core/src/table/field/fields/json/json-field.type.ts index a674552f0..c16a04ae9 100644 --- a/packages/core/src/table/field/json-field.type.ts +++ b/packages/core/src/table/field/fields/json/json-field.type.ts @@ -1,6 +1,7 @@ import * as z from 'zod' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { JsonField } from './json-field.js' export const jsonTypeSchema = z.literal('json') @@ -39,3 +40,5 @@ export const createJsonFieldValue_internal = z export type ICreateJsonFieldValue_internal = z.infer export const jsonReadableValueSchema = z.record(z.any()).or(z.array(z.any())).or(z.string()).or(z.null()).or(z.number()) + +export type IJsonField = IBaseField diff --git a/packages/core/src/table/filter/json.filter.ts b/packages/core/src/table/field/fields/json/json.filter.ts similarity index 63% rename from packages/core/src/table/filter/json.filter.ts rename to packages/core/src/table/field/fields/json/json.filter.ts index 375726d6f..766da0f6b 100644 --- a/packages/core/src/table/filter/json.filter.ts +++ b/packages/core/src/table/field/fields/json/json.filter.ts @@ -1,7 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { jsonFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $is_empty, $is_not_empty } from '../../../filter/operators.js' +export const jsonFilterOperators = z.union([$is_empty, $is_not_empty]) export const jsonFilterValue = z.null() export const jsonFilter = z .object({ diff --git a/packages/core/src/table/field/fields/lookup/index.ts b/packages/core/src/table/field/fields/lookup/index.ts new file mode 100644 index 000000000..459e3d823 --- /dev/null +++ b/packages/core/src/table/field/fields/lookup/index.ts @@ -0,0 +1,4 @@ +export * from './lookup-field-value.js' +export * from './lookup-field.js' +export * from './lookup-field.type.js' +export * from './lookup.filter.js' diff --git a/packages/core/src/table/field/lookup-field-value.ts b/packages/core/src/table/field/fields/lookup/lookup-field-value.ts similarity index 77% rename from packages/core/src/table/field/lookup-field-value.ts rename to packages/core/src/table/field/fields/lookup/lookup-field-value.ts index 99e925b39..e52ddb0d0 100644 --- a/packages/core/src/table/field/lookup-field-value.ts +++ b/packages/core/src/table/field/fields/lookup/lookup-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ILookupFieldValue } from './lookup-field.type.js' export class LookupFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/lookup-field.ts b/packages/core/src/table/field/fields/lookup/lookup-field.ts similarity index 81% rename from packages/core/src/table/field/lookup-field.ts rename to packages/core/src/table/field/fields/lookup/lookup-field.ts index 3ca348c6f..b08f316ba 100644 --- a/packages/core/src/table/field/lookup-field.ts +++ b/packages/core/src/table/field/fields/lookup/lookup-field.ts @@ -1,15 +1,13 @@ import { Mixin } from 'ts-mixer' import { z } from 'zod' -import type { ILookupFilter } from '../filter/lookup.filter.js' -import type { ILookupFilterOperator } from '../filter/operators.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' -import { AbstractLookingField, AbstractLookupField, BaseField } from './field.base.js' -import type { ILookupField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { IRecordDisplayValues, RecordValueJSON } from '../../../record/index.js' +import { AbstractLookingField, AbstractLookupField, BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DisplayFields } from '../../value-objects/display-fields.vo.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { LookupFieldValue } from './lookup-field-value.js' -import type { ICreateLookupFieldInput, ICreateLookupFieldValue, LookupType } from './lookup-field.type.js' -import { DisplayFields } from './value-objects/display-fields.vo.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { ICreateLookupFieldInput, ICreateLookupFieldValue, ILookupField, LookupType } from './lookup-field.type.js' +import type { ILookupFilter, ILookupFilterOperator } from './lookup.filter.js' export class LookupField extends Mixin(AbstractLookingField, AbstractLookupField) { duplicate(name: string): LookupField { diff --git a/packages/core/src/table/field/lookup-field.type.ts b/packages/core/src/table/field/fields/lookup/lookup-field.type.ts similarity index 80% rename from packages/core/src/table/field/lookup-field.type.ts rename to packages/core/src/table/field/fields/lookup/lookup-field.type.ts index bf1406d75..8831ad9c1 100644 --- a/packages/core/src/table/field/lookup-field.type.ts +++ b/packages/core/src/table/field/fields/lookup/lookup-field.type.ts @@ -1,8 +1,11 @@ import * as z from 'zod' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import type { DisplayFields } from '../../value-objects/display-fields.vo.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldId } from '../../value-objects/field-id.vo.js' import { LookupField } from './lookup-field.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' export const lookupTypeSchema = z.literal('lookup') export type LookupType = z.infer @@ -53,3 +56,5 @@ export const createLookupFieldValue_internal = z export type ICreateLookupFieldValue_internal = z.infer export const lookupReadableValueSchema = lookupFieldQueryValue + +export type ILookupField = IBaseField & { referenceFieldId: FieldId; displayFields?: DisplayFields } diff --git a/packages/core/src/table/filter/lookup.filter.ts b/packages/core/src/table/field/fields/lookup/lookup.filter.ts similarity index 57% rename from packages/core/src/table/filter/lookup.filter.ts rename to packages/core/src/table/field/fields/lookup/lookup.filter.ts index 720fac1f5..5ad6e12e3 100644 --- a/packages/core/src/table/filter/lookup.filter.ts +++ b/packages/core/src/table/field/fields/lookup/lookup.filter.ts @@ -1,7 +1,10 @@ import { z } from 'zod' -import { lookupFieldValue } from '../field/lookup-field.type.js' -import { baseFilter } from './filter.base.js' -import { lookupFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $neq } from '../../../filter/operators.js' +import { lookupFieldValue } from './lookup-field.type.js' + +export const lookupFilterOperators = z.union([$eq, $neq]) +export type ILookupFilterOperator = z.infer export const lookupFilterValue = lookupFieldValue.or(lookupFieldValue.unwrap()).nullable() export type ILookupFilterValue = z.infer diff --git a/packages/core/src/table/field/fields/multi-select/index.ts b/packages/core/src/table/field/fields/multi-select/index.ts new file mode 100644 index 000000000..6fb6248ec --- /dev/null +++ b/packages/core/src/table/field/fields/multi-select/index.ts @@ -0,0 +1,4 @@ +export * from './multi-select-field-value.js' +export * from './multi-select-field.js' +export * from './multi-select-field.type.js' +export * from './multi-select.filter.js' diff --git a/packages/core/src/table/field/multi-select-field-value.ts b/packages/core/src/table/field/fields/multi-select/multi-select-field-value.ts similarity index 76% rename from packages/core/src/table/field/multi-select-field-value.ts rename to packages/core/src/table/field/fields/multi-select/multi-select-field-value.ts index 3a9a28746..0eac1a40c 100644 --- a/packages/core/src/table/field/multi-select-field-value.ts +++ b/packages/core/src/table/field/fields/multi-select/multi-select-field-value.ts @@ -1,8 +1,8 @@ import type { JsonValue } from 'type-fest' -import type { Option } from '../option/index.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' -import type { FieldValue } from './field.type.js' +import type { Option } from '../../../option/index.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' +import type { FieldValue } from '../../field.type.js' import type { IMultiSelectFieldValue } from './multi-select-field.type.js' export class MultiSelectFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/multi-select-field.ts b/packages/core/src/table/field/fields/multi-select/multi-select-field.ts similarity index 80% rename from packages/core/src/table/field/multi-select-field.ts rename to packages/core/src/table/field/fields/multi-select/multi-select-field.ts index 08ee4b3a1..ed18c3505 100644 --- a/packages/core/src/table/field/multi-select-field.ts +++ b/packages/core/src/table/field/fields/multi-select/multi-select-field.ts @@ -1,20 +1,19 @@ import { isArray } from 'lodash-es' import { z } from 'zod' -import type { IMultiSelectFilter, IMultiSelectFilterValue } from '../filter/multi-select.filter.js' -import type { IMultiSelectFilterOperator } from '../filter/operators.js' -import type { Option } from '../option/option.js' -import { Options } from '../option/options.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' -import { AbstractSelectField } from './field.base.js' -import type { IMultiSelectField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { Option } from '../../../option/option.js' +import { Options } from '../../../option/options.js' +import type { IRecordDisplayValues, RecordValueJSON } from '../../../record/index.js' +import { AbstractSelectField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { MultiSelectFieldValue } from './multi-select-field-value.js' import type { ICreateMultiSelectFieldSchema, ICreateMultiSelectFieldValue, + IMultiSelectField, MultiSelectFieldType, } from './multi-select-field.type.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { IMultiSelectFilter, IMultiSelectFilterOperator, IMultiSelectFilterValue } from './multi-select.filter.js' export class MultiSelectField extends AbstractSelectField { duplicate(name: string): MultiSelectField { diff --git a/packages/core/src/table/field/multi-select-field.type.ts b/packages/core/src/table/field/fields/multi-select/multi-select-field.type.ts similarity index 86% rename from packages/core/src/table/field/multi-select-field.type.ts rename to packages/core/src/table/field/fields/multi-select/multi-select-field.type.ts index 1fa19af54..64bcf8b57 100644 --- a/packages/core/src/table/field/multi-select-field.type.ts +++ b/packages/core/src/table/field/fields/multi-select/multi-select-field.type.ts @@ -5,9 +5,11 @@ import { optionIdSchema, optionsSchema, readableOptionSchema, -} from '../option/option.schema.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +} from '../../../option/option.schema.js' +import type { Options } from '../../../option/options.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { MultiSelectField } from './multi-select-field.js' export const multiSelectTypeSchema = z.literal('multi-select') @@ -54,3 +56,5 @@ export type ICreateMultiSelectFieldValue_internal = z.infer diff --git a/packages/core/src/table/field/fields/number/index.ts b/packages/core/src/table/field/fields/number/index.ts new file mode 100644 index 000000000..aeb9b55f5 --- /dev/null +++ b/packages/core/src/table/field/fields/number/index.ts @@ -0,0 +1,4 @@ +export * from './number-field-value.js' +export * from './number-field.js' +export * from './number-field.type.js' +export * from './number.filter.js' diff --git a/packages/core/src/table/field/number-field-value.ts b/packages/core/src/table/field/fields/number/number-field-value.ts similarity index 74% rename from packages/core/src/table/field/number-field-value.ts rename to packages/core/src/table/field/fields/number/number-field-value.ts index 1c1e98858..12354ae7c 100644 --- a/packages/core/src/table/field/number-field-value.ts +++ b/packages/core/src/table/field/fields/number/number-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { INumberFieldValue } from './number-field.type.js' export class NumberFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/number-field.ts b/packages/core/src/table/field/fields/number/number-field.ts similarity index 75% rename from packages/core/src/table/field/number-field.ts rename to packages/core/src/table/field/fields/number/number-field.ts index e065ac738..425de88c9 100644 --- a/packages/core/src/table/field/number-field.ts +++ b/packages/core/src/table/field/fields/number/number-field.ts @@ -1,12 +1,11 @@ import { z } from 'zod' -import type { INumberFilter, INumberFilterOperator } from '../filter/number.filter.js' -import type { IRecordDisplayValues, RecordValueJSON } from '../record/index.js' -import { BaseField } from './field.base.js' -import type { INumberField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { IRecordDisplayValues, RecordValueJSON } from '../../../record/index.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { NumberFieldValue } from './number-field-value.js' -import type { ICreateNumberFieldInput, ICreateNumberFieldValue, NumberType } from './number-field.type.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { ICreateNumberFieldInput, ICreateNumberFieldValue, INumberField, NumberType } from './number-field.type.js' +import type { INumberFilter, INumberFilterOperator } from './number.filter.js' export class NumberField extends BaseField { duplicate(name: string): NumberField { diff --git a/packages/core/src/table/field/number-field.type.ts b/packages/core/src/table/field/fields/number/number-field.type.ts similarity index 88% rename from packages/core/src/table/field/number-field.type.ts rename to packages/core/src/table/field/fields/number/number-field.type.ts index 5e7a4174c..3d66477f7 100644 --- a/packages/core/src/table/field/number-field.type.ts +++ b/packages/core/src/table/field/fields/number/number-field.type.ts @@ -1,6 +1,7 @@ import * as z from 'zod' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { NumberField } from './number-field.js' export const numberTypeSchema = z.literal('number') @@ -34,3 +35,5 @@ export const createNumberFieldValue_internal = z export type ICreateNumberFieldValue_internal = z.infer export const numberReadableValueSchema = numberFieldQueryValue + +export type INumberField = IBaseField diff --git a/packages/core/src/table/filter/number.filter.ts b/packages/core/src/table/field/fields/number/number.filter.ts similarity index 63% rename from packages/core/src/table/filter/number.filter.ts rename to packages/core/src/table/field/fields/number/number.filter.ts index f2ebe9efe..336cb6e81 100644 --- a/packages/core/src/table/filter/number.filter.ts +++ b/packages/core/src/table/field/fields/number/number.filter.ts @@ -1,6 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { numberFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $gt, $gte, $lt, $lte, $neq } from '../../../filter/operators.js' + +export const numberFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) export const numberFilterValue = z.number().nullable() export const numberFilter = z diff --git a/packages/core/src/table/field/fields/parent/index.ts b/packages/core/src/table/field/fields/parent/index.ts new file mode 100644 index 000000000..1854cc572 --- /dev/null +++ b/packages/core/src/table/field/fields/parent/index.ts @@ -0,0 +1,4 @@ +export * from './parent-field-value.js' +export * from './parent-field.js' +export * from './parent-field.type.js' +export * from './parent.filter.js' diff --git a/packages/core/src/table/field/parent-field-value.ts b/packages/core/src/table/field/fields/parent/parent-field-value.ts similarity index 74% rename from packages/core/src/table/field/parent-field-value.ts rename to packages/core/src/table/field/fields/parent/parent-field-value.ts index c36ce2d51..8fe2eb470 100644 --- a/packages/core/src/table/field/parent-field-value.ts +++ b/packages/core/src/table/field/fields/parent/parent-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IParentFieldValue } from './parent-field.type.js' export class ParentFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/parent-field.ts b/packages/core/src/table/field/fields/parent/parent-field.ts similarity index 73% rename from packages/core/src/table/field/parent-field.ts rename to packages/core/src/table/field/fields/parent/parent-field.ts index ad09dec4f..a85f5463a 100644 --- a/packages/core/src/table/field/parent-field.ts +++ b/packages/core/src/table/field/fields/parent/parent-field.ts @@ -1,16 +1,19 @@ import { Mixin } from 'ts-mixer' import { z } from 'zod' -import type { IParentFilterOperator } from '../filter/operators.js' -import type { IParentFilter } from '../filter/parent.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' -import { AbstractLookingField, AbstractReferenceField } from './field.base.js' -import { FieldCannotBeDuplicated } from './field.errors.js' -import type { IParentField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { AbstractLookingField, AbstractReferenceField } from '../../field.base.js' +import { FieldCannotBeDuplicated } from '../../field.errors.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DisplayFields, FieldId } from '../../value-objects/index.js' import { ParentFieldValue } from './parent-field-value.js' -import type { ICreateParentFieldInput, ICreateParentFieldValue, ParentFieldType } from './parent-field.type.js' -import { DisplayFields, FieldId } from './value-objects/index.js' +import type { + ICreateParentFieldInput, + ICreateParentFieldValue, + IParentField, + ParentFieldType, +} from './parent-field.type.js' +import type { IParentFilter, IParentFilterOperator } from './parent.filter.js' export class ParentField extends Mixin(AbstractReferenceField, AbstractLookingField) { duplicate(name: string): ParentField { diff --git a/packages/core/src/table/field/parent-field.type.ts b/packages/core/src/table/field/fields/parent/parent-field.type.ts similarity index 77% rename from packages/core/src/table/field/parent-field.type.ts rename to packages/core/src/table/field/fields/parent/parent-field.type.ts index 664a01297..7c8e556af 100644 --- a/packages/core/src/table/field/parent-field.type.ts +++ b/packages/core/src/table/field/fields/parent/parent-field.type.ts @@ -1,9 +1,12 @@ import * as z from 'zod' -import { recordIdSchema } from '../record/value-objects/record-id.schema.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { recordIdSchema } from '../../../record/value-objects/record-id.schema.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import type { DisplayFields } from '../../value-objects/display-fields.vo.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldId } from '../../value-objects/field-id.vo.js' import { ParentField } from './parent-field.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' export const parentTypeSchema = z.literal('parent') export type ParentFieldType = z.infer @@ -51,3 +54,5 @@ export const parentReadableValueSchema = z.object({ id: recordIdSchema, value: z.any().array(), }) + +export type IParentField = IBaseField & { treeFieldId: FieldId; displayFields?: DisplayFields } diff --git a/packages/core/src/table/filter/parent.filter.ts b/packages/core/src/table/field/fields/parent/parent.filter.ts similarity index 56% rename from packages/core/src/table/filter/parent.filter.ts rename to packages/core/src/table/field/fields/parent/parent.filter.ts index d227dd153..887b16dad 100644 --- a/packages/core/src/table/filter/parent.filter.ts +++ b/packages/core/src/table/field/fields/parent/parent.filter.ts @@ -1,7 +1,10 @@ import { z } from 'zod' -import { parentFieldValue } from '../field/parent-field.type.js' -import { baseFilter } from './filter.base.js' -import { parentFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $neq } from '../../../filter/operators.js' +import { parentFieldValue } from './parent-field.type.js' + +export const parentFilterOperators = z.union([$eq, $neq]) +export type IParentFilterOperator = z.infer export const parentFilterValue = parentFieldValue.or(parentFieldValue.array()).nullable() export type IParentFilterValue = z.infer diff --git a/packages/core/src/table/field/fields/rating/index.ts b/packages/core/src/table/field/fields/rating/index.ts new file mode 100644 index 000000000..5a9ad4dae --- /dev/null +++ b/packages/core/src/table/field/fields/rating/index.ts @@ -0,0 +1,4 @@ +export * from './rating-field-value.js' +export * from './rating-field.js' +export * from './rating-field.type.js' +export * from './rating.filter.js' diff --git a/packages/core/src/table/field/rating-field-value.ts b/packages/core/src/table/field/fields/rating/rating-field-value.ts similarity index 74% rename from packages/core/src/table/field/rating-field-value.ts rename to packages/core/src/table/field/fields/rating/rating-field-value.ts index e05098cd4..93131faf0 100644 --- a/packages/core/src/table/field/rating-field-value.ts +++ b/packages/core/src/table/field/fields/rating/rating-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IRatingFieldValue } from './rating-field.type.js' export class RatingFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/rating-field.ts b/packages/core/src/table/field/fields/rating/rating-field.ts similarity index 74% rename from packages/core/src/table/field/rating-field.ts rename to packages/core/src/table/field/fields/rating/rating-field.ts index 45a4ccb59..e02a96aa0 100644 --- a/packages/core/src/table/field/rating-field.ts +++ b/packages/core/src/table/field/fields/rating/rating-field.ts @@ -1,13 +1,17 @@ import { z } from 'zod' -import type { IRatingFilter, IRatingFilterOperator } from '../filter/rating.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' -import { BaseField } from './field.base.js' -import type { IRatingField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { RatingFieldValue } from './rating-field-value.js' -import type { ICreateRatingFieldInput, ICreateRatingFieldValue, RatingFieldType } from './rating-field.type.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { + ICreateRatingFieldInput, + ICreateRatingFieldValue, + IRatingField, + RatingFieldType, +} from './rating-field.type.js' +import type { IRatingFilter, IRatingFilterOperator } from './rating.filter.js' export class RatingField extends BaseField { duplicate(name: string): RatingField { diff --git a/packages/core/src/table/field/rating-field.type.ts b/packages/core/src/table/field/fields/rating/rating-field.type.ts similarity index 89% rename from packages/core/src/table/field/rating-field.type.ts rename to packages/core/src/table/field/fields/rating/rating-field.type.ts index dd946b890..2c58ebf3c 100644 --- a/packages/core/src/table/field/rating-field.type.ts +++ b/packages/core/src/table/field/fields/rating/rating-field.type.ts @@ -1,6 +1,7 @@ import * as z from 'zod' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { RatingField } from './rating-field.js' export const RATING_MAX = 10 @@ -45,3 +46,5 @@ export const createRatingFieldValue_internal = z export type ICreateRatingFieldValue_internal = z.infer export const ratingReadableValueSchema = ratingFieldQueryValue + +export type IRatingField = IBaseField & { max?: number } diff --git a/packages/core/src/table/filter/rating.filter.ts b/packages/core/src/table/field/fields/rating/rating.filter.ts similarity index 57% rename from packages/core/src/table/filter/rating.filter.ts rename to packages/core/src/table/field/fields/rating/rating.filter.ts index 4200650cc..d98e780f3 100644 --- a/packages/core/src/table/filter/rating.filter.ts +++ b/packages/core/src/table/field/fields/rating/rating.filter.ts @@ -1,7 +1,9 @@ import { z } from 'zod' -import { ratingFieldValue } from '../field/rating-field.type.js' -import { baseFilter } from './filter.base.js' -import { ratingFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $gt, $gte, $lt, $lte, $neq } from '../../../filter/operators.js' +import { ratingFieldValue } from './rating-field.type.js' + +export const ratingFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) export const ratingFilterValue = ratingFieldValue export const ratingFilter = z diff --git a/packages/core/src/table/field/fields/reference/index.ts b/packages/core/src/table/field/fields/reference/index.ts new file mode 100644 index 000000000..5df8a88c1 --- /dev/null +++ b/packages/core/src/table/field/fields/reference/index.ts @@ -0,0 +1,4 @@ +export * from './reference-field-value.js' +export * from './reference-field.js' +export * from './reference-field.type.js' +export * from './reference.filter.js' diff --git a/packages/core/src/table/field/reference-field-value.ts b/packages/core/src/table/field/fields/reference/reference-field-value.ts similarity index 79% rename from packages/core/src/table/field/reference-field-value.ts rename to packages/core/src/table/field/fields/reference/reference-field-value.ts index 41e92d661..6671b347f 100644 --- a/packages/core/src/table/field/reference-field-value.ts +++ b/packages/core/src/table/field/fields/reference/reference-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IReferenceFieldValue } from './reference-field.type.js' export class ReferenceFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/reference-field.ts b/packages/core/src/table/field/fields/reference/reference-field.ts similarity index 84% rename from packages/core/src/table/field/reference-field.ts rename to packages/core/src/table/field/fields/reference/reference-field.ts index 4f1459a89..93ed63344 100644 --- a/packages/core/src/table/field/reference-field.ts +++ b/packages/core/src/table/field/fields/reference/reference-field.ts @@ -1,25 +1,24 @@ import { Option } from 'oxide.ts' import { Mixin } from 'ts-mixer' import { z } from 'zod' -import type { IReferenceFilterOperator } from '../filter/operators.js' -import type { IReferenceFilter } from '../filter/reference.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' -import { TableId } from '../value-objects/table-id.vo.js' -import { AbstractLookingField, AbstractReferenceField } from './field.base.js' -import type { IReferenceField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { TableId } from '../../../value-objects/table-id.vo.js' +import { AbstractLookingField, AbstractReferenceField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DisplayFields } from '../../value-objects/display-fields.vo.js' +import { FieldId } from '../../value-objects/field-id.vo.js' +import { FieldIssue } from '../../value-objects/field-issue.vo.js' import { ReferenceFieldValue } from './reference-field-value.js' import type { ICreateReferenceFieldInput, ICreateReferenceFieldValue, + IReferenceField, IReferenceFieldIssues, ReferenceFieldIssue, ReferenceFieldType, } from './reference-field.type.js' -import { DisplayFields } from './value-objects/display-fields.vo.js' -import { FieldId } from './value-objects/field-id.vo.js' -import { FieldIssue } from './value-objects/field-issue.vo.js' +import type { IReferenceFilter, IReferenceFilterOperator } from './reference.filter.js' export class ReferenceField extends Mixin( AbstractReferenceField, diff --git a/packages/core/src/table/field/reference-field.type.ts b/packages/core/src/table/field/fields/reference/reference-field.type.ts similarity index 75% rename from packages/core/src/table/field/reference-field.type.ts rename to packages/core/src/table/field/fields/reference/reference-field.type.ts index 6715f3294..013aa6a1c 100644 --- a/packages/core/src/table/field/reference-field.type.ts +++ b/packages/core/src/table/field/fields/reference/reference-field.type.ts @@ -1,11 +1,15 @@ import * as z from 'zod' -import { recordIdSchema } from '../record/value-objects/record-id.schema.js' -import { tableIdSchema } from '../value-objects/table-id.vo.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { recordIdSchema } from '../../../record/value-objects/record-id.schema.js' +import type { TableId } from '../../../value-objects/table-id.vo.js' +import { tableIdSchema } from '../../../value-objects/table-id.vo.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import type { DisplayFields } from '../../value-objects/display-fields.vo.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldId } from '../../value-objects/field-id.vo.js' +import type { FieldIssue } from '../../value-objects/field-issue.vo.js' import { ReferenceField } from './reference-field.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' -import type { FieldIssue } from './value-objects/field-issue.vo.js' export const referenceTypeSchema = z.literal('reference') export type ReferenceFieldType = z.infer @@ -65,3 +69,10 @@ export const referenceReadableValueSchema = z value: z.any().array(), }) .array() + +export type IReferenceField = IBaseField & { + displayFields?: DisplayFields + foreignTableId?: TableId + isOwner?: boolean + symmetricReferenceFieldId?: FieldId +} diff --git a/packages/core/src/table/filter/reference.filter.ts b/packages/core/src/table/field/fields/reference/reference.filter.ts similarity index 57% rename from packages/core/src/table/filter/reference.filter.ts rename to packages/core/src/table/field/fields/reference/reference.filter.ts index 865b6b5b1..6f24ded25 100644 --- a/packages/core/src/table/filter/reference.filter.ts +++ b/packages/core/src/table/field/fields/reference/reference.filter.ts @@ -1,7 +1,10 @@ import { z } from 'zod' -import { referenceFieldValue } from '../field/reference-field.type.js' -import { baseFilter } from './filter.base.js' -import { referenceFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $neq } from '../../../filter/operators.js' +import { referenceFieldValue } from './reference-field.type.js' + +export const referenceFilterOperators = z.union([$eq, $neq]) +export type IReferenceFilterOperator = z.infer export const referenceFilterValue = referenceFieldValue.or(referenceFieldValue.array()).nullable() export type IReferenceFilterValue = z.infer diff --git a/packages/core/src/table/field/fields/select/index.ts b/packages/core/src/table/field/fields/select/index.ts new file mode 100644 index 000000000..9d02940eb --- /dev/null +++ b/packages/core/src/table/field/fields/select/index.ts @@ -0,0 +1,4 @@ +export * from './select-field-value.js' +export * from './select-field.js' +export * from './select-field.type.js' +export * from './select.filter.js' diff --git a/packages/core/src/table/field/select-field-value.ts b/packages/core/src/table/field/fields/select/select-field-value.ts similarity index 79% rename from packages/core/src/table/field/select-field-value.ts rename to packages/core/src/table/field/fields/select/select-field-value.ts index cdd881720..8438bce32 100644 --- a/packages/core/src/table/field/select-field-value.ts +++ b/packages/core/src/table/field/fields/select/select-field-value.ts @@ -1,10 +1,10 @@ import type { Option as O } from 'oxide.ts' import { None } from 'oxide.ts' import type { JsonValue } from 'type-fest' -import type { Option } from '../option/index.js' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' -import type { FieldValue } from './field.type.js' +import type { Option } from '../../../option/index.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' +import type { FieldValue } from '../../field.type.js' import type { SelectField } from './select-field.js' import type { ISelectFieldValue } from './select-field.type.js' diff --git a/packages/core/src/table/field/select-field.ts b/packages/core/src/table/field/fields/select/select-field.ts similarity index 75% rename from packages/core/src/table/field/select-field.ts rename to packages/core/src/table/field/fields/select/select-field.ts index 94c80e2cd..4d3806b1d 100644 --- a/packages/core/src/table/field/select-field.ts +++ b/packages/core/src/table/field/fields/select/select-field.ts @@ -1,15 +1,18 @@ import { z } from 'zod' -import type { ISelectFilterOperator } from '../filter/operators.js' -import type { ISelectFilter, ISelectFilterValue } from '../filter/select.filter.js' -import { Options } from '../option/options.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' -import { AbstractSelectField } from './field.base.js' -import type { ISelectField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import { Options } from '../../../option/options.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { AbstractSelectField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { SelectFieldValue } from './select-field-value.js' -import type { ICreateSelectFieldSchema, ICreateSelectFieldValue, SelectFieldType } from './select-field.type.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { + ICreateSelectFieldSchema, + ICreateSelectFieldValue, + ISelectField, + SelectFieldType, +} from './select-field.type.js' +import type { ISelectFilter, ISelectFilterOperator, ISelectFilterValue } from './select.filter.js' export class SelectField extends AbstractSelectField { type: SelectFieldType = 'select' diff --git a/packages/core/src/table/field/select-field.type.ts b/packages/core/src/table/field/fields/select/select-field.type.ts similarity index 84% rename from packages/core/src/table/field/select-field.type.ts rename to packages/core/src/table/field/fields/select/select-field.type.ts index bf331a298..bddfd6517 100644 --- a/packages/core/src/table/field/select-field.type.ts +++ b/packages/core/src/table/field/fields/select/select-field.type.ts @@ -5,11 +5,13 @@ import { optionIdSchema, optionsSchema, readableOptionSchema, -} from '../option/option.schema.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +} from '../../../option/option.schema.js' +import type { Options } from '../../../option/options.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' import { SelectField } from './select-field.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' export const selectTypeSchema = z.literal('select') export type SelectFieldType = z.infer @@ -63,3 +65,7 @@ export type IReorderOptionsSchema = z.infer export const isSelectField = z.instanceof(SelectField) export const selectReadableValueSchema = readableOptionSchema + +export type ISelectField = IBaseField & { + options: Options +} diff --git a/packages/core/src/table/field/select.field.test.ts b/packages/core/src/table/field/fields/select/select.field.test.ts similarity index 100% rename from packages/core/src/table/field/select.field.test.ts rename to packages/core/src/table/field/fields/select/select.field.test.ts diff --git a/packages/core/src/table/filter/select.filter.ts b/packages/core/src/table/field/fields/select/select.filter.ts similarity index 55% rename from packages/core/src/table/filter/select.filter.ts rename to packages/core/src/table/field/fields/select/select.filter.ts index e73f7a55d..78c24349e 100644 --- a/packages/core/src/table/filter/select.filter.ts +++ b/packages/core/src/table/field/fields/select/select.filter.ts @@ -1,7 +1,10 @@ import { z } from 'zod' -import { selectFieldValue } from '../field/select-field.type.js' -import { baseFilter } from './filter.base.js' -import { selectFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $in, $neq, $nin } from '../../../filter/operators.js' +import { selectFieldValue } from './select-field.type.js' + +export const selectFilterOperators = z.union([$eq, $neq, $in, $nin]) +export type ISelectFilterOperator = z.infer export const selectFilterValue = selectFieldValue.or(selectFieldValue.array()).nullable() export type ISelectFilterValue = z.infer diff --git a/packages/core/src/table/field/fields/string/index.ts b/packages/core/src/table/field/fields/string/index.ts new file mode 100644 index 000000000..e253b4b6f --- /dev/null +++ b/packages/core/src/table/field/fields/string/index.ts @@ -0,0 +1,4 @@ +export * from './string-field-value.js' +export * from './string-field.js' +export * from './string-field.type.js' +export * from './string.filter.js' diff --git a/packages/core/src/table/field/string-field-value.ts b/packages/core/src/table/field/fields/string/string-field-value.ts similarity index 74% rename from packages/core/src/table/field/string-field-value.ts rename to packages/core/src/table/field/fields/string/string-field-value.ts index 6230e2039..5453f4adf 100644 --- a/packages/core/src/table/field/string-field-value.ts +++ b/packages/core/src/table/field/fields/string/string-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IStringFieldValue } from './string-field.type.js' export class StringFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/string-field.ts b/packages/core/src/table/field/fields/string/string-field.ts similarity index 69% rename from packages/core/src/table/field/string-field.ts rename to packages/core/src/table/field/fields/string/string-field.ts index 7f16f06dd..d0d03660b 100644 --- a/packages/core/src/table/field/string-field.ts +++ b/packages/core/src/table/field/fields/string/string-field.ts @@ -1,13 +1,17 @@ import { z } from 'zod' -import type { IStringFilter, IStringFilterOperator } from '../filter/string.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' -import { BaseField } from './field.base.js' -import type { IStringField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { StringFieldValue } from './string-field-value.js' -import type { ICreateStringFieldInput, ICreateStringFieldValue, StringFieldType } from './string-field.type.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { + ICreateStringFieldInput, + ICreateStringFieldValue, + IStringField, + StringFieldType, +} from './string-field.type.js' +import type { IStringFilter, IStringFilterOperator } from './string.filter.js' export class StringField extends BaseField { duplicate(name: string): StringField { diff --git a/packages/core/src/table/field/string-field.type.ts b/packages/core/src/table/field/fields/string/string-field.type.ts similarity index 88% rename from packages/core/src/table/field/string-field.type.ts rename to packages/core/src/table/field/fields/string/string-field.type.ts index 45322c6d7..3925902fb 100644 --- a/packages/core/src/table/field/string-field.type.ts +++ b/packages/core/src/table/field/fields/string/string-field.type.ts @@ -1,6 +1,7 @@ import * as z from 'zod' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' import { StringField } from './string-field.js' export const stringTypeSchema = z.literal('string') @@ -32,3 +33,5 @@ export const createStringFieldValue_internal = z export type ICreateStringFieldValue_internal = z.infer export const stringReadableValueSchema = stringFieldQueryValue + +export type IStringField = IBaseField diff --git a/packages/core/src/table/field/string.field.test.ts b/packages/core/src/table/field/fields/string/string.field.test.ts similarity index 100% rename from packages/core/src/table/field/string.field.test.ts rename to packages/core/src/table/field/fields/string/string.field.test.ts diff --git a/packages/core/src/table/filter/string.filter.ts b/packages/core/src/table/field/fields/string/string.filter.ts similarity index 51% rename from packages/core/src/table/filter/string.filter.ts rename to packages/core/src/table/field/fields/string/string.filter.ts index 28300488a..8787164ee 100644 --- a/packages/core/src/table/filter/string.filter.ts +++ b/packages/core/src/table/field/fields/string/string.filter.ts @@ -1,6 +1,26 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { stringFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { + $contains, + $ends_with, + $eq, + $is_empty, + $is_not_empty, + $neq, + $regex, + $starts_with, +} from '../../../filter/operators.js' + +export const stringFilterOperators = z.union([ + $eq, + $neq, + $contains, + $starts_with, + $ends_with, + $regex, + $is_empty, + $is_not_empty, +]) export const stringFilterValue = z.string().nullable() export const stringFilter = z diff --git a/packages/core/src/table/field/fields/sum/index.ts b/packages/core/src/table/field/fields/sum/index.ts new file mode 100644 index 000000000..8abf540c6 --- /dev/null +++ b/packages/core/src/table/field/fields/sum/index.ts @@ -0,0 +1,4 @@ +export * from './sum-field-value.js' +export * from './sum-field.js' +export * from './sum-field.type.js' +export * from './sum.filter.js' diff --git a/packages/core/src/table/field/sum-field-value.ts b/packages/core/src/table/field/fields/sum/sum-field-value.ts similarity index 73% rename from packages/core/src/table/field/sum-field-value.ts rename to packages/core/src/table/field/fields/sum/sum-field-value.ts index 532773fd1..61ec54c2d 100644 --- a/packages/core/src/table/field/sum-field-value.ts +++ b/packages/core/src/table/field/fields/sum/sum-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ISumFieldValue } from './sum-field.type.js' export class SumFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/sum-field.ts b/packages/core/src/table/field/fields/sum/sum-field.ts similarity index 78% rename from packages/core/src/table/field/sum-field.ts rename to packages/core/src/table/field/fields/sum/sum-field.ts index ff966dbea..1aedeaeba 100644 --- a/packages/core/src/table/field/sum-field.ts +++ b/packages/core/src/table/field/fields/sum/sum-field.ts @@ -1,14 +1,13 @@ import { Mixin } from 'ts-mixer' import { z } from 'zod' -import type { ISumFilter, ISumFilterOperator } from '../filter/sum.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' -import { AbstractAggregateField, AbstractLookupField, BaseField } from './field.base.js' -import type { ISumField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { AbstractAggregateField, AbstractLookupField, BaseField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { FieldId } from '../../value-objects/field-id.vo.js' import { SumFieldValue } from './sum-field-value.js' -import type { ICreateSumFieldInput, ICreateSumFieldValue, SumType } from './sum-field.type.js' -import { FieldId } from './value-objects/field-id.vo.js' +import type { ICreateSumFieldInput, ICreateSumFieldValue, ISumField, SumType } from './sum-field.type.js' +import type { ISumFilter, ISumFilterOperator } from './sum.filter.js' export class SumField extends Mixin(AbstractAggregateField, AbstractLookupField) { duplicate(name: string): SumField { diff --git a/packages/core/src/table/field/sum-field.type.ts b/packages/core/src/table/field/fields/sum/sum-field.type.ts similarity index 82% rename from packages/core/src/table/field/sum-field.type.ts rename to packages/core/src/table/field/fields/sum/sum-field.type.ts index 9a3c7c68b..289b94058 100644 --- a/packages/core/src/table/field/sum-field.type.ts +++ b/packages/core/src/table/field/fields/sum/sum-field.type.ts @@ -1,8 +1,10 @@ import * as z from 'zod' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldId } from '../../value-objects/field-id.vo.js' import { SumField } from './sum-field.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' export const sumTypeSchema = z.literal('sum') export type SumType = z.infer @@ -54,3 +56,5 @@ export const createSumFieldValue_internal = z export type ICreateSumFieldValue_internal = z.infer export const sumReadableValueSchema = sumFieldQueryValue + +export type ISumField = IBaseField & { referenceFieldId: FieldId; aggregateFieldId: FieldId } diff --git a/packages/core/src/table/filter/sum.filter.ts b/packages/core/src/table/field/fields/sum/sum.filter.ts similarity index 61% rename from packages/core/src/table/filter/sum.filter.ts rename to packages/core/src/table/field/fields/sum/sum.filter.ts index e62f946ff..ef63ec0c8 100644 --- a/packages/core/src/table/filter/sum.filter.ts +++ b/packages/core/src/table/field/fields/sum/sum.filter.ts @@ -1,6 +1,8 @@ import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { sumFilterOperators } from './operators.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $gt, $gte, $lt, $lte, $neq } from '../../../filter/operators.js' + +export const sumFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) export const sumFilterValue = z.number().nullable() export const sumFilter = z diff --git a/packages/core/src/table/field/fields/tree/index.ts b/packages/core/src/table/field/fields/tree/index.ts new file mode 100644 index 000000000..96665dd24 --- /dev/null +++ b/packages/core/src/table/field/fields/tree/index.ts @@ -0,0 +1,4 @@ +export * from './tree-field-value.js' +export * from './tree-field.js' +export * from './tree-field.type.js' +export * from './tree.filter.js' diff --git a/packages/core/src/table/field/tree-field-value.ts b/packages/core/src/table/field/fields/tree/tree-field-value.ts similarity index 78% rename from packages/core/src/table/field/tree-field-value.ts rename to packages/core/src/table/field/fields/tree/tree-field-value.ts index 2ddbd1ca6..2ebb95912 100644 --- a/packages/core/src/table/field/tree-field-value.ts +++ b/packages/core/src/table/field/fields/tree/tree-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { ITreeFieldValue } from './tree-field.type.js' export class TreeFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/tree-field.test.ts b/packages/core/src/table/field/fields/tree/tree-field.test.ts similarity index 89% rename from packages/core/src/table/field/tree-field.test.ts rename to packages/core/src/table/field/fields/tree/tree-field.test.ts index b49ff3ca8..9afb71ced 100644 --- a/packages/core/src/table/field/tree-field.test.ts +++ b/packages/core/src/table/field/fields/tree/tree-field.test.ts @@ -1,4 +1,4 @@ -import { ParentField } from './parent-field.js' +import { ParentField } from '../parent/parent-field.js' import { TreeField } from './tree-field.js' describe('TreeField', () => { diff --git a/packages/core/src/table/field/tree-field.ts b/packages/core/src/table/field/fields/tree/tree-field.ts similarity index 77% rename from packages/core/src/table/field/tree-field.ts rename to packages/core/src/table/field/fields/tree/tree-field.ts index 283c2f17a..788bbd385 100644 --- a/packages/core/src/table/field/tree-field.ts +++ b/packages/core/src/table/field/fields/tree/tree-field.ts @@ -1,16 +1,14 @@ import { Mixin } from 'ts-mixer' import { z } from 'zod' -import type { ITreeFilterOperator } from '../filter/operators.js' -import type { ITreeFilter } from '../filter/tree.filter.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import type { IRecordDisplayValues } from '../record/record.type.js' -import { AbstractLookingField, AbstractReferenceField } from './field.base.js' -import type { ITreeField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' -import { ParentField } from './parent-field.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { AbstractLookingField, AbstractReferenceField } from '../../field.base.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DisplayFields, FieldId } from '../../value-objects/index.js' +import { ParentField } from '../parent/parent-field.js' import { TreeFieldValue } from './tree-field-value.js' -import type { ICreateTreeFieldSchema, ICreateTreeFieldValue, TreeFieldType } from './tree-field.type.js' -import { DisplayFields, FieldId } from './value-objects/index.js' +import type { ICreateTreeFieldSchema, ICreateTreeFieldValue, ITreeField, TreeFieldType } from './tree-field.type.js' +import type { ITreeFilter, ITreeFilterOperator } from './tree.filter.js' export class TreeField extends Mixin(AbstractReferenceField, AbstractLookingField) { duplicate(name: string): TreeField { diff --git a/packages/core/src/table/field/tree-field.type.ts b/packages/core/src/table/field/fields/tree/tree-field.type.ts similarity index 75% rename from packages/core/src/table/field/tree-field.type.ts rename to packages/core/src/table/field/fields/tree/tree-field.type.ts index fca5da6a5..f45e025d1 100644 --- a/packages/core/src/table/field/tree-field.type.ts +++ b/packages/core/src/table/field/fields/tree/tree-field.type.ts @@ -1,10 +1,13 @@ import * as z from 'zod' -import { recordIdSchema } from '../record/value-objects/record-id.schema.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { recordIdSchema } from '../../../record/value-objects/record-id.schema.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import type { DisplayFields } from '../../value-objects/display-fields.vo.js' +import { fieldIdSchema } from '../../value-objects/field-id.schema.js' +import type { FieldId } from '../../value-objects/field-id.vo.js' +import { fieldNameSchema } from '../../value-objects/field-name.schema.js' import { TreeField } from './tree-field.js' -import { fieldIdSchema } from './value-objects/field-id.schema.js' -import { fieldNameSchema } from './value-objects/field-name.schema.js' export const treeTypeSchema = z.literal('tree') export type TreeFieldType = z.infer @@ -55,3 +58,5 @@ export const treeReadableValueSchema = z value: z.any().array(), }) .array() + +export type ITreeField = IBaseField & { parentFieldId?: FieldId; displayFields?: DisplayFields } diff --git a/packages/core/src/table/field/fields/tree/tree.filter.ts b/packages/core/src/table/field/fields/tree/tree.filter.ts new file mode 100644 index 000000000..ae0c73463 --- /dev/null +++ b/packages/core/src/table/field/fields/tree/tree.filter.ts @@ -0,0 +1,20 @@ +import { z } from 'zod' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $is_root, $neq } from '../../../filter/operators.js' +import { treeFieldValue } from './tree-field.type.js' + +export const treeFilterOperators = z.union([$eq, $neq, $is_root]) +export type ITreeFilterOperator = z.infer +export const treeBuiltInOperators = new Set([$is_root.value]) + +export const treeFilterValue = treeFieldValue.or(treeFieldValue.array()).nullable() +export type ITreeFilterValue = z.infer +export const treeFilter = z + .object({ + type: z.literal('tree'), + operator: treeFilterOperators, + value: treeFilterValue, + }) + .merge(baseFilter) + +export type ITreeFilter = z.infer diff --git a/packages/core/src/table/field/fields/updated-at/index.ts b/packages/core/src/table/field/fields/updated-at/index.ts new file mode 100644 index 000000000..dff249e19 --- /dev/null +++ b/packages/core/src/table/field/fields/updated-at/index.ts @@ -0,0 +1,4 @@ +export * from './updated-at-field-value.js' +export * from './updated-at-field.js' +export * from './updated-at-field.type.js' +export * from './updated-at.filter.js' diff --git a/packages/core/src/table/field/updated-at-field-value.ts b/packages/core/src/table/field/fields/updated-at/updated-at-field-value.ts similarity index 81% rename from packages/core/src/table/field/updated-at-field-value.ts rename to packages/core/src/table/field/fields/updated-at/updated-at-field-value.ts index 5ede38d43..a8230354b 100644 --- a/packages/core/src/table/field/updated-at-field-value.ts +++ b/packages/core/src/table/field/fields/updated-at/updated-at-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IUpdatedAtFieldQueryValue, IUpdatedAtFieldValue } from './updated-at-field.type.js' export class UpdatedAtFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/updated-at-field.ts b/packages/core/src/table/field/fields/updated-at/updated-at-field.ts similarity index 75% rename from packages/core/src/table/field/updated-at-field.ts rename to packages/core/src/table/field/fields/updated-at/updated-at-field.ts index db51f78ad..dd37fc22e 100644 --- a/packages/core/src/table/field/updated-at-field.ts +++ b/packages/core/src/table/field/fields/updated-at/updated-at-field.ts @@ -1,22 +1,21 @@ import { format } from 'date-fns' import { z } from 'zod' -import type { IUpdatedAtFilterOperator } from '../filter/operators.js' -import type { IUpdatedAtFilter } from '../filter/updated-at.filter.js' -import type { IRecordDisplayValues } from '../record/index.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import { AbstractDateField } from './field.base.js' -import { INTERNAL_COLUMN_UPDATED_AT_NAME } from './field.constants.js' -import { FieldCannotBeDuplicated } from './field.errors.js' -import { type IUpdatedAtField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { IRecordDisplayValues } from '../../../record/index.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import { AbstractDateField } from '../../field.base.js' +import { INTERNAL_COLUMN_UPDATED_AT_NAME } from '../../field.constants.js' +import { FieldCannotBeDuplicated } from '../../field.errors.js' +import type { IFieldVisitor } from '../../field.visitor.js' +import { DateFormat } from '../../value-objects/date-format.vo.js' +import { TimeFormat } from '../../value-objects/time-format.vo.js' import { UpdatedAtFieldValue } from './updated-at-field-value.js' import type { ICreateUpdatedAtFieldInput, + IUpdatedAtField, IUpdatedAtFieldQueryValue, UpdatedAtFieldType, } from './updated-at-field.type.js' -import { DateFormat } from './value-objects/date-format.vo.js' -import { TimeFormat } from './value-objects/time-format.vo.js' +import type { IUpdatedAtFilter, IUpdatedAtFilterOperator } from './updated-at.filter.js' export class UpdatedAtField extends AbstractDateField { duplicate(name: string): UpdatedAtField { diff --git a/packages/core/src/table/field/updated-at-field.type.ts b/packages/core/src/table/field/fields/updated-at/updated-at-field.type.ts similarity index 86% rename from packages/core/src/table/field/updated-at-field.type.ts rename to packages/core/src/table/field/fields/updated-at/updated-at-field.type.ts index d9a6f2362..938ec1e7d 100644 --- a/packages/core/src/table/field/updated-at-field.type.ts +++ b/packages/core/src/table/field/fields/updated-at/updated-at-field.type.ts @@ -1,8 +1,9 @@ import * as z from 'zod' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { BaseDateField, IBaseField } from '../../field.type.js' +import { timeFormat } from '../../value-objects/time-format.vo.js' import { UpdatedAtField } from './updated-at-field.js' -import { timeFormat } from './value-objects/time-format.vo.js' export const updatedAtTypeSchema = z.literal('updated-at') export type UpdatedAtFieldType = z.infer @@ -40,3 +41,5 @@ export const createUpdatedAtFieldValue_internal = z export type ICreateUpdatedAtFieldValue_internal = z.infer export const updatedAtReadableValueSchema = updatedAtFieldQueryValue + +export type IUpdatedAtField = IBaseField & BaseDateField diff --git a/packages/core/src/table/field/fields/updated-at/updated-at.filter.ts b/packages/core/src/table/field/fields/updated-at/updated-at.filter.ts new file mode 100644 index 000000000..297db5310 --- /dev/null +++ b/packages/core/src/table/field/fields/updated-at/updated-at.filter.ts @@ -0,0 +1,18 @@ +import { z } from 'zod' +import { baseFilter } from '../../../filter/filter.base.js' +import { $between, $eq, $gt, $gte, $is_today, $lt, $lte, $neq } from '../../../filter/operators.js' + +export const updatedAtFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte, $between, $is_today]) +export type IUpdatedAtFilterOperator = z.infer +export const updatedAtBuiltInOperators = new Set([$is_today.value]) + +export const updatedAtFilterValue = z.string().nullable() +export const updatedAtFilter = z + .object({ + type: z.literal('updated-at'), + operator: updatedAtFilterOperators, + value: updatedAtFilterValue, + }) + .merge(baseFilter) + +export type IUpdatedAtFilter = z.infer diff --git a/packages/core/src/table/field/fields/updated-by/index.ts b/packages/core/src/table/field/fields/updated-by/index.ts new file mode 100644 index 000000000..d9e5e50e8 --- /dev/null +++ b/packages/core/src/table/field/fields/updated-by/index.ts @@ -0,0 +1 @@ +export * from './updated-by-field.js' diff --git a/packages/core/src/table/field/updated-by-field-value.ts b/packages/core/src/table/field/fields/updated-by/updated-by-field-value.ts similarity index 80% rename from packages/core/src/table/field/updated-by-field-value.ts rename to packages/core/src/table/field/fields/updated-by/updated-by-field-value.ts index 5ff59e4fc..4d2602e16 100644 --- a/packages/core/src/table/field/updated-by-field-value.ts +++ b/packages/core/src/table/field/fields/updated-by/updated-by-field-value.ts @@ -1,6 +1,6 @@ import type { JsonValue } from 'type-fest' -import { FieldValueBase } from './field-value.base.js' -import type { IFieldValueVisitor } from './field-value.visitor.js' +import { FieldValueBase } from '../../field-value.base.js' +import type { IFieldValueVisitor } from '../../field-value.visitor.js' import type { IUpdatedByFieldQueryValue, IUpdatedByFieldValue } from './updated-by-field.type.js' export class UpdatedByFieldValue extends FieldValueBase { diff --git a/packages/core/src/table/field/updated-by-field.ts b/packages/core/src/table/field/fields/updated-by/updated-by-field.ts similarity index 73% rename from packages/core/src/table/field/updated-by-field.ts rename to packages/core/src/table/field/fields/updated-by/updated-by-field.ts index b860636e3..0b96b1428 100644 --- a/packages/core/src/table/field/updated-by-field.ts +++ b/packages/core/src/table/field/fields/updated-by/updated-by-field.ts @@ -1,20 +1,19 @@ import type { ZodTypeAny } from 'zod' import { z } from 'zod' -import type { IUpdatedByFilterOperator } from '../filter/operators.js' -import type { IUpdatedByFilter } from '../filter/updated-by.filter.js' -import type { IRecordDisplayValues } from '../record/index.js' -import type { RecordValueJSON } from '../record/record.schema.js' -import { BaseField } from './field.base.js' -import { INTERNAL_COLUMN_UPDATED_BY_PROFILE_NAME } from './field.constants.js' -import { FieldCannotBeDuplicated } from './field.errors.js' -import type { IUpdatedByField } from './field.type.js' -import type { IFieldVisitor } from './field.visitor.js' +import type { RecordValueJSON } from '../../../record/record.schema.js' +import type { IRecordDisplayValues } from '../../../record/record.type.js' +import { BaseField } from '../../field.base.js' +import { INTERNAL_COLUMN_UPDATED_BY_PROFILE_NAME } from '../../field.constants.js' +import { FieldCannotBeDuplicated } from '../../field.errors.js' +import type { IFieldVisitor } from '../../field.visitor.js' import { UpdatedByFieldValue } from './updated-by-field-value.js' import type { ICreateUpdatedByFieldInput, + IUpdatedByField, IUpdatedByFieldQueryValue, UpdatedByFieldType, } from './updated-by-field.type.js' +import type { IUpdatedByFilter, IUpdatedByFilterOperator } from './updated-by.filter.js' export class UpdatedByField extends BaseField { duplicate(name: string): UpdatedByField { diff --git a/packages/core/src/table/field/updated-by-field.type.ts b/packages/core/src/table/field/fields/updated-by/updated-by-field.type.ts similarity index 84% rename from packages/core/src/table/field/updated-by-field.type.ts rename to packages/core/src/table/field/fields/updated-by/updated-by-field.type.ts index 4870889b8..59e365bee 100644 --- a/packages/core/src/table/field/updated-by-field.type.ts +++ b/packages/core/src/table/field/fields/updated-by/updated-by-field.type.ts @@ -1,8 +1,9 @@ import * as z from 'zod' -import { userIdSchema } from '../../user/value-objects/user-id.vo.js' -import { collaboratorProfile } from './collaborator-field.type.js' -import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from './field-base.schema.js' -import { FIELD_TYPE_KEY } from './field.constants.js' +import { userIdSchema } from '../../../../user/value-objects/index.js' +import { baseFieldQuerySchema, createBaseFieldSchema, updateBaseFieldSchema } from '../../field-base.schema.js' +import { FIELD_TYPE_KEY } from '../../field.constants.js' +import type { IBaseField } from '../../field.type.js' +import { collaboratorProfile } from '../collaborator/index.js' import { UpdatedByField } from './updated-by-field.js' export const updatedByTypeSchema = z.literal('updated-by') @@ -42,3 +43,5 @@ export const createUpdatedByFieldValue_internal = z export type ICreateUpdatedByFieldValue_internal = z.infer export const updatedByReadableValueSchema = z.object({ id: userIdSchema }).merge(collaboratorProfile) + +export type IUpdatedByField = IBaseField diff --git a/packages/core/src/table/field/fields/updated-by/updated-by.filter.ts b/packages/core/src/table/field/fields/updated-by/updated-by.filter.ts new file mode 100644 index 000000000..f454955dd --- /dev/null +++ b/packages/core/src/table/field/fields/updated-by/updated-by.filter.ts @@ -0,0 +1,18 @@ +import { z } from 'zod' +import { userIdSchema } from '../../../../user/value-objects/user-id.vo.js' +import { baseFilter } from '../../../filter/filter.base.js' +import { $eq, $in, $is_empty, $is_not_empty, $neq, $nin } from '../../../filter/operators.js' + +export const updatedByFilterOperators = z.union([$eq, $neq, $in, $nin, $is_empty, $is_not_empty]) +export type IUpdatedByFilterOperator = z.infer + +export const updatedByFilterValue = userIdSchema +export const updatedByFilter = z + .object({ + type: z.literal('updated-by'), + operator: updatedByFilterOperators, + value: updatedByFilterValue, + }) + .merge(baseFilter) + +export type IUpdatedByFilter = z.infer diff --git a/packages/core/src/table/field/index.ts b/packages/core/src/table/field/index.ts index f76eb92d8..e8bcd451a 100644 --- a/packages/core/src/table/field/index.ts +++ b/packages/core/src/table/field/index.ts @@ -1,47 +1,3 @@ -import { createNumberFieldSchema } from './number-field.type.js' -import { createStringFieldSchema } from './string-field.type.js' - -export * from './attachment-field-value.js' -export * from './attachment-field-value.util.js' -export * from './attachment-field.js' -export * from './attachment-field.type.js' -export * from './auto-increment-field-value.js' -export * from './auto-increment-field.js' -export * from './auto-increment-field.type.js' -export * from './average-field-value.js' -export * from './average-field.js' -export * from './average-field.type.js' -export * from './bool-field-value.js' -export * from './bool-field.js' -export * from './bool-field.type.js' -export * from './collaborator-field-value.js' -export * from './collaborator-field.js' -export * from './collaborator-field.type.js' -export * from './color-field-value.js' -export * from './color-field.js' -export * from './color-field.type.js' -export * from './count-field-value.js' -export * from './count-field.js' -export * from './count-field.type.js' -export * from './created-at-field-value.js' -export * from './created-at-field.js' -export * from './created-at-field.type.js' -export * from './created-by-field-value.js' -export * from './created-by-field.js' -export * from './created-by-field.type.js' -export * from './currency-field-value.js' -export * from './currency-field.js' -export * from './currency-field.type.js' -export * from './currency-symbol.vo.js' -export * from './date-field-value.js' -export * from './date-field.js' -export * from './date-field.type.js' -export * from './date-range-field-value.js' -export * from './date-range-field.js' -export * from './date-range-field.type.js' -export * from './email-field-value.js' -export * from './email-field.js' -export * from './email-field.type.js' export * from './field-type.handler.js' export * from './field-value.visitor.js' export * from './field.base.js' @@ -52,48 +8,11 @@ export * from './field.type.js' export * from './field.util.js' export * from './field.visitor.js' export * from './fields/index.js' -export * from './id-field-value.js' -export * from './id-field.js' -export * from './id-field.type.js' -export * from './json-field-value.js' -export * from './json-field.js' -export * from './json-field.type.js' -export * from './lookup-field-value.js' -export * from './lookup-field.js' -export * from './lookup-field.type.js' -export * from './multi-select-field-value.js' -export * from './multi-select-field.js' -export * from './multi-select-field.type.js' -export * from './number-field-value.js' -export * from './number-field.js' -export * from './number-field.type.js' -export * from './parent-field-value.js' -export * from './parent-field.js' -export * from './parent-field.type.js' -export * from './rating-field-value.js' -export * from './rating-field.js' -export * from './rating-field.type.js' -export * from './reference-field-value.js' -export * from './reference-field.js' -export * from './reference-field.type.js' -export * from './select-field-value.js' -export * from './select-field.js' -export * from './select-field.type.js' +export * from './fields/updated-at/updated-at-field-value.js' +export * from './fields/updated-at/updated-at-field.js' +export * from './fields/updated-at/updated-at-field.type.js' +export * from './fields/updated-by/updated-by-field-value.js' +export * from './fields/updated-by/updated-by-field.js' +export * from './fields/updated-by/updated-by-field.type.js' export * from './specifications/index.js' -export * from './string-field-value.js' -export * from './string-field.js' -export * from './string-field.type.js' -export * from './sum-field-value.js' -export * from './sum-field.js' -export * from './sum-field.type.js' -export * from './tree-field-value.js' -export * from './tree-field.js' -export * from './tree-field.type.js' -export * from './updated-at-field-value.js' -export * from './updated-at-field.js' -export * from './updated-at-field.type.js' -export * from './updated-by-field-value.js' -export * from './updated-by-field.js' -export * from './updated-by-field.type.js' export * from './value-objects/index.js' -export { createNumberFieldSchema, createStringFieldSchema } diff --git a/packages/core/src/table/field/specifications/currency-field.specification.ts b/packages/core/src/table/field/specifications/currency-field.specification.ts index f724b87ec..cca07660a 100644 --- a/packages/core/src/table/field/specifications/currency-field.specification.ts +++ b/packages/core/src/table/field/specifications/currency-field.specification.ts @@ -3,9 +3,9 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' import type { ITableSpecVisitor } from '../../specifications/index.js' import type { Table } from '../../table.js' -import type { CurrencyField } from '../currency-field.js' -import type { CurrencyFieldType } from '../currency-field.type.js' -import type { CurrencySymbol } from '../currency-symbol.vo.js' +import type { CurrencyField } from '../fields/currency/currency-field.js' +import type { CurrencyFieldType } from '../fields/currency/currency-field.type.js' +import type { CurrencySymbol } from '../fields/currency/currency-symbol.vo.js' export class WithCurrencySymbol extends CompositeSpecification { constructor( diff --git a/packages/core/src/table/field/specifications/rating-field.specification.ts b/packages/core/src/table/field/specifications/rating-field.specification.ts index 55c9683b4..68e9d9290 100644 --- a/packages/core/src/table/field/specifications/rating-field.specification.ts +++ b/packages/core/src/table/field/specifications/rating-field.specification.ts @@ -3,8 +3,8 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' import type { ITableSpecVisitor } from '../../specifications/index.js' import type { Table } from '../../table.js' -import type { RatingField } from '../rating-field.js' -import type { RatingFieldType } from '../rating-field.type.js' +import type { RatingField } from '../fields/rating/rating-field.js' +import type { RatingFieldType } from '../fields/rating/rating-field.type.js' export class WithRatingMax extends CompositeSpecification { constructor(public readonly type: RatingFieldType, public readonly fieldId: string, public readonly max: number) { diff --git a/packages/core/src/table/field/specifications/reference-field.specification.ts b/packages/core/src/table/field/specifications/reference-field.specification.ts index df0fab256..597c69694 100644 --- a/packages/core/src/table/field/specifications/reference-field.specification.ts +++ b/packages/core/src/table/field/specifications/reference-field.specification.ts @@ -6,8 +6,8 @@ import type { ITableSpecVisitor } from '../../specifications/index.js' import type { Table } from '../../table.js' import { TableId } from '../../value-objects/table-id.vo.js' import { type IAbstractLookingField, type ILookingFieldType } from '../field.type.js' -import type { ReferenceField } from '../reference-field.js' -import type { ReferenceFieldType } from '../reference-field.type.js' +import type { ReferenceField } from '../fields/reference/reference-field.js' +import type { ReferenceFieldType } from '../fields/reference/reference-field.type.js' import { FieldId } from '../value-objects/field-id.vo.js' export class WithDisplayFields extends CompositeSpecification { diff --git a/packages/core/src/table/field/update-field.helper.ts b/packages/core/src/table/field/update-field.helper.ts index 77380118a..015482ba3 100644 --- a/packages/core/src/table/field/update-field.helper.ts +++ b/packages/core/src/table/field/update-field.helper.ts @@ -5,11 +5,11 @@ import { OptionKey } from '../option/option-key.vo.js' import { Option } from '../option/option.js' import { Options } from '../option/options.js' import type { TableCompositeSpecificaiton } from '../specifications/index.js' -import { CurrencySymbol } from './currency-symbol.vo.js' import type { BaseField } from './field.base.js' import type { IUpdateFieldSchema, SelectFieldTypes } from './field.type.js' import { canDisplay, isControlledFieldType } from './field.util.js' -import type { ReferenceField } from './reference-field.js' +import { CurrencySymbol } from './fields/currency/currency-symbol.vo.js' +import type { ReferenceField } from './fields/reference/reference-field.js' import { WithAggregateFieldId } from './specifications/aggregate-field.specification.js' import { WithFieldDescription, WithFieldDisplay, WithFieldName } from './specifications/base-field.specification.js' import { WithCurrencySymbol } from './specifications/currency-field.specification.js' diff --git a/packages/core/src/table/filter/created-at.filter.ts b/packages/core/src/table/filter/created-at.filter.ts deleted file mode 100644 index 6ef510aed..000000000 --- a/packages/core/src/table/filter/created-at.filter.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { createdAtFilterOperators } from './operators.js' - -export const createdAtFilterValue = z.string().nullable() -export const createdAtFilter = z - .object({ - type: z.literal('created-at'), - operator: createdAtFilterOperators, - value: createdAtFilterValue, - }) - .merge(baseFilter) - -export type ICreatedAtFilter = z.infer diff --git a/packages/core/src/table/filter/created-by.filter.ts b/packages/core/src/table/filter/created-by.filter.ts deleted file mode 100644 index ba4491066..000000000 --- a/packages/core/src/table/filter/created-by.filter.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { z } from 'zod' -import { userIdSchema } from '../../user/value-objects/user-id.vo.js' -import { baseFilter } from './filter.base.js' -import { createdByFilterOperators } from './operators.js' - -export const createdByFilterValue = userIdSchema -export const createdByFilter = z - .object({ - type: z.literal('created-by'), - operator: createdByFilterOperators, - value: createdByFilterValue, - }) - .merge(baseFilter) - -export type ICreatedByFilter = z.infer diff --git a/packages/core/src/table/filter/date.filter.ts b/packages/core/src/table/filter/date.filter.ts deleted file mode 100644 index c08c66a61..000000000 --- a/packages/core/src/table/filter/date.filter.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { dateFilterOperators } from './operators.js' - -export const dateFilterValue = z - .string() - .nullable() - .or(z.tuple([z.string(), z.string()])) -export const dateFilter = z - .object({ - type: z.literal('date'), - operator: dateFilterOperators, - value: dateFilterValue, - }) - .merge(baseFilter) -export type IDateFilter = z.infer diff --git a/packages/core/src/table/filter/filter.ts b/packages/core/src/table/filter/filter.ts index 518fd0c51..a1ad26127 100644 --- a/packages/core/src/table/filter/filter.ts +++ b/packages/core/src/table/filter/filter.ts @@ -2,11 +2,111 @@ import type { CompositeSpecification } from '@undb/domain' import type { Option } from 'oxide.ts' import { None, Some } from 'oxide.ts' import { z } from 'zod' -import { colorFieldValue } from '../field/color-field.type.js' +import type { IAttachmentFilter, IAttachmentFilterTypeValue } from '../field/fields/attachment/attachment.filter.js' +import { + attachmentFilter, + attachmentFilterOperators, + attachmentFilterValue, +} from '../field/fields/attachment/attachment.filter.js' +import type { IAutoIncrementFilter } from '../field/fields/auto-increment/auto-increment.filter.js' +import { + autoIncrementFilter, + autoIncrementFilterOperators, + autoIncrementFilterValue, +} from '../field/fields/auto-increment/auto-increment.filter.js' +import type { IAverageFilter } from '../field/fields/average/average.filter.js' +import { averageFilter, averageFilterOperators, averageFilterValue } from '../field/fields/average/average.filter.js' +import type { IBoolFilter } from '../field/fields/bool/bool.filter.js' +import { boolFilter, boolFilterOperators, boolFilterValue } from '../field/fields/bool/bool.filter.js' +import type { ICollaboratorFilter } from '../field/fields/collaborator/collaborator.filter.js' +import { + collaboratorFilter, + collaboratorFilterOperators, + collaboratorFilterValue, +} from '../field/fields/collaborator/collaborator.filter.js' +import type { IColorFilter } from '../field/fields/color/color.filter.js' +import { colorFilter, colorFilterOperators } from '../field/fields/color/color.filter.js' +import type { ICountFilter } from '../field/fields/count/count.filter.js' +import { countFilter, countFilterOperators, countFilterValue } from '../field/fields/count/count.filter.js' +import type { ICreatedAtFilter } from '../field/fields/created-at/created-at.filter.js' +import { + createdAtFilter, + createdAtFilterOperators, + createdAtFilterValue, +} from '../field/fields/created-at/created-at.filter.js' +import type { ICreatedByFilter } from '../field/fields/created-by/created-by.filter.js' +import { + createdByFilter, + createdByFilterOperators, + createdByFilterValue, +} from '../field/fields/created-by/created-by.filter.js' +import type { ICurrencyFilter } from '../field/fields/currency/currency.filter.js' +import { + currencyFilter, + currencyFilterOperators, + currencyFilterValue, +} from '../field/fields/currency/currency.filter.js' +import type { IDateRangeFilter } from '../field/fields/date-range/date-range.filter.js' +import { + dateRangeFilter, + dateRangeFilterOperators, + dateRangeFilterValue, +} from '../field/fields/date-range/date-range.filter.js' +import type { IDateFilter } from '../field/fields/date/date.filter.js' +import { dateFilter, dateFilterOperators, dateFilterValue } from '../field/fields/date/date.filter.js' +import type { IEmailFilter } from '../field/fields/email/email.filter.js' +import { emailFilter, emailFilterOperators, emailFilterValue } from '../field/fields/email/email.filter.js' +import type { IIdFilter } from '../field/fields/id/id.filter.js' +import { idFilter, idFilterOperators, idFilterValue } from '../field/fields/id/id.filter.js' +import type { IJsonFilter } from '../field/fields/json/json.filter.js' +import { jsonFilter, jsonFilterOperators, jsonFilterValue } from '../field/fields/json/json.filter.js' +import { lookupFilter, lookupFilterOperators, lookupFilterValue } from '../field/fields/lookup/lookup.filter.js' +import type { IMultiSelectFilter } from '../field/fields/multi-select/multi-select.filter.js' +import { + multiSelectFilter, + multiSelectFilterOperators, + multiSelectFilterValue, +} from '../field/fields/multi-select/multi-select.filter.js' +import type { INumberFilter } from '../field/fields/number/number.filter.js' +import { numberFilter, numberFilterOperators, numberFilterValue } from '../field/fields/number/number.filter.js' +import { parentFilter, parentFilterOperators, parentFilterValue } from '../field/fields/parent/parent.filter.js' +import type { IRatingFilter } from '../field/fields/rating/rating.filter.js' +import { ratingFilter, ratingFilterOperators, ratingFilterValue } from '../field/fields/rating/rating.filter.js' +import { + referenceFilter, + referenceFilterOperators, + referenceFilterValue, +} from '../field/fields/reference/reference.filter.js' +import type { ISelectFieldValue } from '../field/fields/select/select-field.type.js' +import type { ISelectFilter } from '../field/fields/select/select.filter.js' +import { selectFilter, selectFilterOperators, selectFilterValue } from '../field/fields/select/select.filter.js' +import type { IStringFilter } from '../field/fields/string/string.filter.js' +import { stringFilter, stringFilterOperators, stringFilterValue } from '../field/fields/string/string.filter.js' +import type { ISumFilter } from '../field/fields/sum/sum.filter.js' +import { sumFilter, sumFilterOperators, sumFilterValue } from '../field/fields/sum/sum.filter.js' +import type { ITreeFilter } from '../field/fields/tree/tree.filter.js' +import { treeFilter, treeFilterOperators, treeFilterValue } from '../field/fields/tree/tree.filter.js' +import type { IUpdatedAtFilter } from '../field/fields/updated-at/updated-at.filter.js' +import { + updatedAtFilter, + updatedAtFilterOperators, + updatedAtFilterValue, +} from '../field/fields/updated-at/updated-at.filter.js' +import type { IUpdatedByFilter } from '../field/fields/updated-by/updated-by.filter.js' +import { + updatedByFilter, + updatedByFilterOperators, + updatedByFilterValue, +} from '../field/fields/updated-by/updated-by.filter.js' import type { IUrlFilter } from '../field/fields/url/url.filter.js' import { urlFilter, urlFilterOperators, urlFilterValue } from '../field/fields/url/url.filter.js' -import { DateFieldValue, NumberFieldValue, SelectFieldValue, StringFieldValue } from '../field/index.js' -import type { ISelectFieldValue } from '../field/select-field.type.js' +import { + DateFieldValue, + NumberFieldValue, + SelectFieldValue, + StringFieldValue, + colorFieldValue, +} from '../field/index.js' import { BoolIsFalse, BoolIsTrue, @@ -42,97 +142,9 @@ import { StringStartsWith, WithRecordIds, } from '../record/index.js' -import type { IAttachmentFilter, IAttachmentFilterTypeValue } from './attachment.filter.js' -import { attachmentFilter, attachmentFilterValue } from './attachment.filter.js' -import type { IAutoIncrementFilter } from './auto-increment.filter.js' -import { autoIncrementFilter, autoIncrementFilterValue } from './auto-increment.filter.js' -import type { IAverageFilter } from './average.filter.js' -import { averageFilter, averageFilterValue } from './average.filter.js' -import type { IBoolFilter } from './bool.filter.js' -import { boolFilter, boolFilterValue } from './bool.filter.js' -import type { ICollaboratorFilter } from './collaborator.filter.js' -import { collaboratorFilter, collaboratorFilterValue } from './collaborator.filter.js' -import type { IColorFilter } from './color.filter.js' -import { colorFilter } from './color.filter.js' import type { IConjunction } from './conjunction.js' import { conjunctions } from './conjunction.js' -import type { ICountFilter } from './count.filter.js' -import { countFilter, countFilterValue } from './count.filter.js' -import type { ICreatedAtFilter } from './created-at.filter.js' -import { createdAtFilter, createdAtFilterValue } from './created-at.filter.js' -import type { ICreatedByFilter } from './created-by.filter.js' -import { createdByFilter, createdByFilterValue } from './created-by.filter.js' -import type { ICurrencyFilter } from './currency.filter.js' -import { currencyFilter, currencyFilterValue } from './currency.filter.js' -import type { IDateRangeFilter } from './date-range.filter.js' -import { dateRangeFilter, dateRangeFilterValue } from './date-range.filter.js' -import type { IDateFilter } from './date.filter.js' -import { dateFilter, dateFilterValue } from './date.filter.js' -import type { IEmailFilter } from './email.filter.js' -import { emailFilter, emailFilterValue } from './email.filter.js' -import type { IIdFilter } from './id.filter.js' -import { idFilter, idFilterValue } from './id.filter.js' -import type { IJsonFilter } from './json.filter.js' -import { jsonFilter, jsonFilterValue } from './json.filter.js' -import { lookupFilter, lookupFilterValue } from './lookup.filter.js' -import type { IMultiSelectFilter } from './multi-select.filter.js' -import { multiSelectFilter, multiSelectFilterValue } from './multi-select.filter.js' -import type { INumberFilter } from './number.filter.js' -import { numberFilter, numberFilterValue } from './number.filter.js' -import { - $between, - $eq, - $is_empty, - $is_false, - $is_not_empty, - $is_root, - $is_today, - $is_true, - $neq, - attachmentFilterOperators, - autoIncrementFilterOperators, - averageFilterOperators, - boolFilterOperators, - collaboratorFilterOperators, - colorFilterOperators, - countFilterOperators, - createdAtFilterOperators, - createdByFilterOperators, - currencyFilterOperators, - dateFilterOperators, - dateRangeFilterOperators, - emailFilterOperators, - idFilterOperators, - jsonFilterOperators, - lookupFilterOperators, - multiSelectFilterOperators, - numberFilterOperators, - parentFilterOperators, - ratingFilterOperators, - referenceFilterOperators, - selectFilterOperators, - stringFilterOperators, - sumFilterOperators, - treeFilterOperators, - updatedAtFilterOperators, - updatedByFilterOperators, -} from './operators.js' -import { parentFilter, parentFilterValue } from './parent.filter.js' -import type { IRatingFilter } from './rating.filter.js' -import { ratingFilter, ratingFilterValue } from './rating.filter.js' -import { referenceFilter, referenceFilterValue } from './reference.filter.js' -import type { ISelectFilter } from './select.filter.js' -import { selectFilter, selectFilterValue } from './select.filter.js' -import type { IStringFilter } from './string.filter.js' -import { stringFilter, stringFilterValue } from './string.filter.js' -import type { ISumFilter } from './sum.filter.js' -import { sumFilter, sumFilterValue } from './sum.filter.js' -import type { ITreeFilter } from './tree.filter.js' -import { treeFilter, treeFilterValue } from './tree.filter.js' -import type { IUpdatedAtFilter } from './updated-at.filter.js' -import { updatedAtFilter, updatedAtFilterValue } from './updated-at.filter.js' -import type { IUpdatedByFilter } from './updated-by.filter.js' -import { updatedByFilter, updatedByFilterValue } from './updated-by.filter.js' +import { $between, $eq, $is_empty, $is_false, $is_not_empty, $is_root, $is_today, $is_true, $neq } from './operators.js' export const filterValue = z.union([ idFilterValue, diff --git a/packages/core/src/table/filter/id.filter.ts b/packages/core/src/table/filter/id.filter.ts deleted file mode 100644 index 3c2b722ce..000000000 --- a/packages/core/src/table/filter/id.filter.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { z } from 'zod' -import { recordIdSchema } from '../record/value-objects/record-id.schema.js' -import { baseFilter } from './filter.base.js' -import { idFilterOperators } from './operators.js' - -export const idFilterValue = recordIdSchema -export const idFilter = z - .object({ - type: z.literal('id'), - operator: idFilterOperators, - value: idFilterValue.or(recordIdSchema.array()), - }) - .merge(baseFilter) - -export type IIdFilter = z.infer diff --git a/packages/core/src/table/filter/operators.ts b/packages/core/src/table/filter/operators.ts index 898007265..836715748 100644 --- a/packages/core/src/table/filter/operators.ts +++ b/packages/core/src/table/filter/operators.ts @@ -1,4 +1,5 @@ import { z } from 'zod' +import type { ICreatedAtFilterOperator } from '../field' export const $eq = z.literal('$eq') export const $neq = z.literal('$neq') @@ -27,107 +28,9 @@ export const $between = z.literal('$between') export const $has_file_type = z.literal('$has_file_type') export const $has_file_extension = z.literal('$has_file_extension') -export const idFilterOperators = z.union([$eq, $neq, $in, $nin]) -export type IIdFilterOperator = z.infer - -export const stringFilterOperators = z.union([ - $eq, - $neq, - $contains, - $starts_with, - $ends_with, - $regex, - $is_empty, - $is_not_empty, -]) -export type IStringFilterOperator = z.infer - -export const emailFilterOperators = z.union([$eq, $neq, $starts_with, $ends_with, $contains, $is_empty, $is_not_empty]) -export type IEmailFilterOperator = z.infer - -export const jsonFilterOperators = z.union([$is_empty, $is_not_empty]) -export type IJsonFilterOperator = z.infer - -export const attachmentFilterOperators = z.union([$has_file_type, $is_empty, $is_not_empty, $has_file_extension]) -export type IAttachmentFilterOperator = z.infer - -export const colorFilterOperators = z.union([$is_empty, $is_not_empty, $eq, $neq]) -export type IColorFilterOperator = z.infer - -export const numberFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) -export type INumberFilterOperator = z.infer - -export const ratingFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) -export type IRatingFilterOperator = z.infer - -export const currencyFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) -export type ICurrencyFilterOperator = z.infer - -export const countFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) -export type ICountFilterOperator = z.infer - -export const sumFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) -export type ISumFilterOperator = z.infer - -export const averageFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte]) -export type IAverageFilterOperator = z.infer - -export const boolFilterOperators = z.union([$is_true, $is_false]) -export type IBoolFilterOperator = z.infer - -export const selectFilterOperators = z.union([$eq, $neq, $in, $nin]) -export type ISelectFilterOperator = z.infer - -export const dateFilterOperators = z.union([$eq, $neq, $gt, $gte, $lt, $lte, $between, $is_today]) -export type IDateFilterOperator = z.infer - -/** - * built in date operators - */ -export const dateBuiltInOperators = new Set([$is_today.value]) - -export const isBuiltInDateOperator = (operator: IDateFilterOperator) => dateBuiltInOperators.has(operator) - -export const referenceFilterOperators = z.union([$eq, $neq]) -export type IReferenceFilterOperator = z.infer - -export const collaboratorFilterOperators = z.union([$eq, $neq, $in, $nin, $is_empty, $is_not_empty]) -export type ICollaboratorFilterOperator = z.infer - -export const multiSelectFilterOperators = z.union([$eq, $neq, $in, $nin, $is_empty, $is_not_empty]) -export type IMultiSelectFilterOperator = z.infer - -export const lookupFilterOperators = z.union([$eq, $neq]) -export type ILookupFilterOperator = z.infer - export const $is_root = z.literal('$is_root') -export const treeFilterOperators = z.union([$eq, $neq, $is_root]) -export type ITreeFilterOperator = z.infer -export const treeBuiltInOperators = new Set([$is_root.value]) - -export const parentFilterOperators = z.union([$eq, $neq]) -export type IParentFilterOperator = z.infer - -export const dateRangeFilterOperators = z.union([$eq, $neq, $between]) -export type IDateRangeFilterOperator = z.infer - -export const createdAtFilterOperators = dateFilterOperators -export type ICreatedAtFilterOperator = z.infer -export const createdAtBuiltInOperators = dateBuiltInOperators - -export const updatedAtFilterOperators = dateFilterOperators -export type IUpdatedAtFilterOperator = z.infer -export const updatedAtBuiltInOperators = dateBuiltInOperators - -export const createdByFilterOperators = collaboratorFilterOperators -export type ICreatedByFilterOperator = z.infer - -export const updatedByFilterOperators = collaboratorFilterOperators -export type IUpdatedByFilterOperator = z.infer - -export const autoIncrementFilterOperators = numberFilterOperators -export type IAutoIncrementFilterOperator = z.infer +export const createdAtBuiltInOperators = new Set([$is_today.value]) export const operatorsWihtoutValue = z.union([$is_empty, $is_not_empty, $is_today, $is_root]) export const isOperatorWithoutValue = (value: string): boolean => operatorsWihtoutValue.safeParse(value).success diff --git a/packages/core/src/table/filter/tree.filter.ts b/packages/core/src/table/filter/tree.filter.ts deleted file mode 100644 index 98ec21f33..000000000 --- a/packages/core/src/table/filter/tree.filter.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { z } from 'zod' -import { treeFieldValue } from '../field/tree-field.type.js' -import { baseFilter } from './filter.base.js' -import { treeFilterOperators } from './operators.js' - -export const treeFilterValue = treeFieldValue.or(treeFieldValue.array()).nullable() -export type ITreeFilterValue = z.infer -export const treeFilter = z - .object({ - type: z.literal('tree'), - operator: treeFilterOperators, - value: treeFilterValue, - }) - .merge(baseFilter) - -export type ITreeFilter = z.infer diff --git a/packages/core/src/table/filter/updated-at.filter.ts b/packages/core/src/table/filter/updated-at.filter.ts deleted file mode 100644 index 1aa06101c..000000000 --- a/packages/core/src/table/filter/updated-at.filter.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { z } from 'zod' -import { baseFilter } from './filter.base.js' -import { updatedAtFilterOperators } from './operators.js' - -export const updatedAtFilterValue = z.string().nullable() -export const updatedAtFilter = z - .object({ - type: z.literal('updated-at'), - operator: updatedAtFilterOperators, - value: updatedAtFilterValue, - }) - .merge(baseFilter) - -export type IUpdatedAtFilter = z.infer diff --git a/packages/core/src/table/filter/updated-by.filter.ts b/packages/core/src/table/filter/updated-by.filter.ts deleted file mode 100644 index 748f87fa4..000000000 --- a/packages/core/src/table/filter/updated-by.filter.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { z } from 'zod' -import { userIdSchema } from '../../user/value-objects/user-id.vo.js' -import { baseFilter } from './filter.base.js' -import { updatedByFilterOperators } from './operators.js' - -export const updatedByFilterValue = userIdSchema -export const updatedByFilter = z - .object({ - type: z.literal('updated-by'), - operator: updatedByFilterOperators, - value: updatedByFilterValue, - }) - .merge(baseFilter) - -export type IUpdatedByFilter = z.infer diff --git a/packages/core/src/table/record/record.readable.ts b/packages/core/src/table/record/record.readable.ts index 056aa208a..648afc5c2 100644 --- a/packages/core/src/table/record/record.readable.ts +++ b/packages/core/src/table/record/record.readable.ts @@ -2,9 +2,15 @@ import { zipObject } from 'lodash-es' import type { ZodRawShape, ZodType } from 'zod' import { z } from 'zod' -import type { CollaboratorField } from '../field/collaborator-field.js' import type { Field, IFieldType } from '../field/field.type.js' +import type { LookupField } from '../field/fields/lookup/lookup-field.js' +import type { MultiSelectField } from '../field/fields/multi-select/multi-select-field.js' +import { multiSelectReadableValueSchema } from '../field/fields/multi-select/multi-select-field.type.js' +import type { ParentField } from '../field/fields/parent/parent-field.js' +import type { SelectField } from '../field/fields/select/select-field.js' +import type { TreeField } from '../field/fields/tree/tree-field.js' import { urlReadableValueSchema } from '../field/fields/url/url-field.type.js' +import type { CollaboratorField } from '../field/index.js' import { attachmentReadableValueSchema, autoIncrementReadableValueSchema, @@ -22,7 +28,6 @@ import { idReadableValueSchema, jsonReadableValueSchema, lookupReadableValueSchema, - multiSelectReadableValueSchema, numberReadableValueSchema, parentReadableValueSchema, ratingReadableValueSchema, @@ -35,11 +40,6 @@ import { updatedByReadableValueSchema, type ReferenceField, } from '../field/index.js' -import type { LookupField } from '../field/lookup-field.js' -import type { MultiSelectField } from '../field/multi-select-field.js' -import type { ParentField } from '../field/parent-field.js' -import type { SelectField } from '../field/select-field.js' -import type { TreeField } from '../field/tree-field.js' import type { Table } from '../table.js' import type { IQueryRecordSchema } from './record.type.js' diff --git a/packages/core/src/table/record/record.ts b/packages/core/src/table/record/record.ts index 1a7688003..69bbec2dc 100644 --- a/packages/core/src/table/record/record.ts +++ b/packages/core/src/table/record/record.ts @@ -1,6 +1,6 @@ import { DateVO } from '@undb/domain' import type { JsonObject } from 'type-fest' -import type { ICollaboratorProfile } from '../field/collaborator-field.type.js' +import type { ICollaboratorProfile } from '../field/index.js' import type { Table } from '../table.js' import type { TableId, TableSchema, TableSchemaIdMap } from '../value-objects/index.js' import type { IRecordDisplayValues } from './index.js' diff --git a/packages/core/src/table/record/specifications/attachment.specification.ts b/packages/core/src/table/record/specifications/attachment.specification.ts index b619840a5..29d37e161 100644 --- a/packages/core/src/table/record/specifications/attachment.specification.ts +++ b/packages/core/src/table/record/specifications/attachment.specification.ts @@ -1,7 +1,7 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' import { AttachmentFieldValue } from '../../field' -import type { IAttachmentFilterTypeValue } from '../../filter/attachment.filter' +import type { IAttachmentFilterTypeValue } from '../../field/fields/attachment/attachment.filter' import type { Record } from '../record' import type { IRecordVisitor } from './interface' import { BaseRecordQuerySpecification } from './record-specification.base' diff --git a/packages/core/src/table/record/specifications/bool.specification.ts b/packages/core/src/table/record/specifications/bool.specification.ts index 0d3ba1536..0f2a6685a 100644 --- a/packages/core/src/table/record/specifications/bool.specification.ts +++ b/packages/core/src/table/record/specifications/bool.specification.ts @@ -1,6 +1,6 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import { BoolFieldValue } from '../../field/bool-field-value.js' +import { BoolFieldValue } from '../../field/index.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' import { BaseRecordSpecification } from './record-specification.base.js' diff --git a/packages/core/src/table/record/specifications/collaborator.specification.ts b/packages/core/src/table/record/specifications/collaborator.specification.ts index d3160363c..0ea4e3f3b 100644 --- a/packages/core/src/table/record/specifications/collaborator.specification.ts +++ b/packages/core/src/table/record/specifications/collaborator.specification.ts @@ -1,6 +1,6 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import { CollaboratorFieldValue } from '../../field/collaborator-field-value.js' +import { CollaboratorFieldValue } from '../../field/fields/collaborator/collaborator-field-value.js' import type { ICollaboratorFieldValue } from '../../field/index.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' diff --git a/packages/core/src/table/record/specifications/date-range.specification.ts b/packages/core/src/table/record/specifications/date-range.specification.ts index e60b768b7..073d1a4df 100644 --- a/packages/core/src/table/record/specifications/date-range.specification.ts +++ b/packages/core/src/table/record/specifications/date-range.specification.ts @@ -1,6 +1,6 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import { DateRangeFieldValue } from '../../field/date-range-field-value.js' +import { DateRangeFieldValue } from '../../field/fields/date-range/date-range-field-value.js' import type { IDateRangeFieldValue } from '../../field/index.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' diff --git a/packages/core/src/table/record/specifications/multi-select.specification.ts b/packages/core/src/table/record/specifications/multi-select.specification.ts index 89fbecd74..dc7440355 100644 --- a/packages/core/src/table/record/specifications/multi-select.specification.ts +++ b/packages/core/src/table/record/specifications/multi-select.specification.ts @@ -1,7 +1,7 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' +import { MultiSelectFieldValue } from '../../field/fields/multi-select/multi-select-field-value.js' import type { IMultiSelectFieldValue } from '../../field/index.js' -import { MultiSelectFieldValue } from '../../field/multi-select-field-value.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' import { BaseRecordSpecification } from './record-specification.base.js' diff --git a/packages/core/src/table/record/specifications/number.specification.ts b/packages/core/src/table/record/specifications/number.specification.ts index 4fdb3a136..d45488a0d 100644 --- a/packages/core/src/table/record/specifications/number.specification.ts +++ b/packages/core/src/table/record/specifications/number.specification.ts @@ -1,6 +1,6 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import { NumberFieldValue } from '../../field/number-field-value.js' +import { NumberFieldValue } from '../../field/fields/number/number-field-value.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' import { BaseRecordSpecification } from './record-specification.base.js' diff --git a/packages/core/src/table/record/specifications/record-created-by.specification.ts b/packages/core/src/table/record/specifications/record-created-by.specification.ts index d7ef1b3e3..3875ff332 100644 --- a/packages/core/src/table/record/specifications/record-created-by.specification.ts +++ b/packages/core/src/table/record/specifications/record-created-by.specification.ts @@ -1,7 +1,7 @@ import { CompositeSpecification } from '@undb/domain' import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import type { ICollaboratorProfile } from '../../field/collaborator-field.type.js' +import type { ICollaboratorProfile } from '../../field/fields/collaborator/collaborator-field.type.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' diff --git a/packages/core/src/table/record/specifications/record-updated-by.specification.ts b/packages/core/src/table/record/specifications/record-updated-by.specification.ts index b9470b243..c6dc08a2e 100644 --- a/packages/core/src/table/record/specifications/record-updated-by.specification.ts +++ b/packages/core/src/table/record/specifications/record-updated-by.specification.ts @@ -1,7 +1,7 @@ import { CompositeSpecification } from '@undb/domain' import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import type { ICollaboratorProfile } from '../../field/collaborator-field.type.js' +import type { ICollaboratorProfile } from '../../field/fields/collaborator/collaborator-field.type.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' diff --git a/packages/core/src/table/record/specifications/reference.specification.ts b/packages/core/src/table/record/specifications/reference.specification.ts index f6447fa08..2be5abe42 100644 --- a/packages/core/src/table/record/specifications/reference.specification.ts +++ b/packages/core/src/table/record/specifications/reference.specification.ts @@ -1,6 +1,6 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import { ReferenceFieldValue } from '../../field/index.js' +import { ReferenceFieldValue } from '../../field/fields/reference/reference-field-value.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' import { BaseRecordSpecification } from './record-specification.base.js' diff --git a/packages/core/src/table/record/specifications/select.specification.ts b/packages/core/src/table/record/specifications/select.specification.ts index 54aa0881f..72cde6c06 100644 --- a/packages/core/src/table/record/specifications/select.specification.ts +++ b/packages/core/src/table/record/specifications/select.specification.ts @@ -1,6 +1,6 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import { SelectFieldValue } from '../../field/select-field-value.js' +import { SelectFieldValue } from '../../field/fields/select/select-field-value.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' import { BaseRecordQuerySpecification, BaseRecordSpecification } from './record-specification.base.js' diff --git a/packages/core/src/table/record/specifications/string.specification.ts b/packages/core/src/table/record/specifications/string.specification.ts index e9e090c69..a0d74b31d 100644 --- a/packages/core/src/table/record/specifications/string.specification.ts +++ b/packages/core/src/table/record/specifications/string.specification.ts @@ -1,6 +1,6 @@ import type { Result } from 'oxide.ts' import { Ok } from 'oxide.ts' -import { StringFieldValue } from '../../field/string-field-value.js' +import { StringFieldValue } from '../../field/fields/string/string-field-value.js' import type { Record } from '../record.js' import type { IRecordVisitor } from './interface.js' import { BaseRecordSpecification } from './record-specification.base.js' diff --git a/packages/core/src/table/services/abstract-reference-field-spec.visitor.ts b/packages/core/src/table/services/abstract-reference-field-spec.visitor.ts index 0559cc0d4..c26e19118 100644 --- a/packages/core/src/table/services/abstract-reference-field-spec.visitor.ts +++ b/packages/core/src/table/services/abstract-reference-field-spec.visitor.ts @@ -1,12 +1,10 @@ /* eslint-disable @typescript-eslint/no-empty-function */ -/* eslint-disable @typescript-eslint/no-unused-vars */ -import type { AverageField } from '../field/average-field.js' -import type { CollaboratorField } from '../field/collaborator-field.js' -import type { UrlField } from '../field/fields/url/url-field.js' import type { AttachmentField, AutoIncrementField, + AverageField, BoolField, + CollaboratorField, ColorField, CountField, CreatedAtField, @@ -30,6 +28,7 @@ import type { TreeField, UpdatedAtField, UpdatedByField, + UrlField, WithAggregateFieldId, WithCurrencySymbol, WithDisplayFields, @@ -73,6 +72,7 @@ import type { WithFieldOption, WithFieldVisibility, WithFieldWidth, + WithGanttField, WithKanbanField, WithNewView, WithoutView, @@ -151,6 +151,7 @@ export abstract class AbstractReferenceFieldSpecVisitor implements ITableSpecVis pinnedFields(s: WithViewPinnedFields): void {} displayTypeEqual(s: WithDisplayType): void {} kanbanFieldEqual(s: WithKanbanField): void {} + ganttFieldEqual(s: WithGanttField): void {} calendarFieldEqual(s: WithCalendarField): void {} treeViewFieldEqual(s: WithTreeViewField): void {} newField(s: WithNewField): void { diff --git a/packages/core/src/table/services/abstract-reference-field.visitor.ts b/packages/core/src/table/services/abstract-reference-field.visitor.ts index 9a2342e9e..f1532ef12 100644 --- a/packages/core/src/table/services/abstract-reference-field.visitor.ts +++ b/packages/core/src/table/services/abstract-reference-field.visitor.ts @@ -1,9 +1,10 @@ /* eslint-disable @typescript-eslint/no-empty-function */ -/* eslint-disable @typescript-eslint/no-unused-vars */ import type { AttachmentField, AutoIncrementField, + AverageField, BoolField, + CollaboratorField, ColorField, CountField, CreatedAtField, @@ -27,10 +28,8 @@ import type { TreeField, UpdatedAtField, UpdatedByField, -} from '../field' -import type { AverageField } from '../field/average-field' -import type { CollaboratorField } from '../field/collaborator-field' -import type { UrlField } from '../field/fields/url' + UrlField, +} from '../field/index.js' export abstract class AbstractReferenceFieldVisitor implements IFieldVisitor { id(field: IdField): void {} diff --git a/packages/core/src/table/specifications/interface.ts b/packages/core/src/table/specifications/interface.ts index 356ee7ef6..86a68318c 100644 --- a/packages/core/src/table/specifications/interface.ts +++ b/packages/core/src/table/specifications/interface.ts @@ -33,7 +33,7 @@ import type { WithWidgetsLayout, WithoutWidgetSpecification, } from '../view/dashboard/specifications/widget.specification.js' -import type { WithKanbanField, WithViewsOrder } from '../view/index.js' +import type { WithGanttField, WithKanbanField, WithViewsOrder } from '../view/index.js' import type { WithCalendarField } from '../view/specifications/calendar.specification.js' import type { WithDisplayType } from '../view/specifications/display-type.specification.js' import type { WithFilter } from '../view/specifications/filters.specificaiton.js' @@ -63,7 +63,7 @@ import type { WithNewField } from './table-field.specification.js' import type { WithTableId } from './table-id.specification.js' import type { WithTableName } from './table-name.specification.js' import type { WithTableSchema } from './table-schema.specification.js' -import { WithTableViewId } from './table-view-id.specification.js' +import type { WithTableViewId } from './table-view-id.specification.js' export interface ITableSpecVisitor extends ISpecVisitor { idEqual(s: WithTableId): void @@ -94,6 +94,7 @@ export interface ITableSpecVisitor extends ISpecVisitor { rowHeightEqual(s: WithRowHeight): void displayTypeEqual(s: WithDisplayType): void kanbanFieldEqual(s: WithKanbanField): void + ganttFieldEqual(s: WithGanttField): void calendarFieldEqual(s: WithCalendarField): void treeViewFieldEqual(s: WithTreeViewField): void diff --git a/packages/core/src/table/table.ts b/packages/core/src/table/table.ts index 224c0ac6b..2e9dcf452 100644 --- a/packages/core/src/table/table.ts +++ b/packages/core/src/table/table.ts @@ -38,6 +38,7 @@ import type { ISetCalendarFieldSchema, ISetFieldVisibilitySchema, ISetFieldWidthSchema, + ISetGanttFieldSchema, ISetKanbanFieldSchema, ISetPinnedFieldsSchema, ISetRowHeight, @@ -441,6 +442,14 @@ export class Table { return spec } + public setGanttField(input: ISetGanttFieldSchema): TableCompositeSpecificaiton { + const view = this.mustGetView(input.viewId) + const field = this.schema.getFieldById(input.field).unwrap() + const spec = view.setGanttFieldSpec(field.id) + spec.mutate(this) + return spec + } + public setCalendarField(input: ISetCalendarFieldSchema): TableCompositeSpecificaiton { const view = this.mustGetView(input.viewId) const field = this.schema.getFieldById(input.field).unwrap() diff --git a/packages/core/src/table/value-objects/table-schema.vo.ts b/packages/core/src/table/value-objects/table-schema.vo.ts index ad4685661..1dd928581 100644 --- a/packages/core/src/table/value-objects/table-schema.vo.ts +++ b/packages/core/src/table/value-objects/table-schema.vo.ts @@ -4,9 +4,10 @@ import { Option } from 'oxide.ts' import type { Class } from 'type-fest' import * as z from 'zod' import type { ClsStore } from '../../cls/cls.js' -import { CreatedAtField } from '../field/created-at-field.js' import { FieldFactory } from '../field/field.factory.js' -import { IdField } from '../field/id-field.js' +import { CreatedAtField } from '../field/fields/created-at/created-at-field.js' +import { IdField } from '../field/fields/id/id-field.js' +import { UpdatedAtField } from '../field/fields/updated-at/updated-at-field.js' import type { AggregateFieldType, Field, @@ -29,11 +30,10 @@ import { getNextFieldName, isSearchable, } from '../field/index.js' -import { UpdatedAtField } from '../field/updated-at-field.js' import { fieldNameSchema } from '../field/value-objects/field-name.schema.js' import { WithNewField } from '../specifications/table-field.specification.js' import type { ICalendarField } from '../view/calendar/index.js' -import type { IKanbanField, ITreeViewField } from '../view/index.js' +import type { IGanttField, IKanbanField, ITreeViewField } from '../view/index.js' import { ViewFieldsOrder } from '../view/view-fields-order.vo.js' function hasDuplicates(names: string[]): boolean { @@ -114,6 +114,10 @@ export class TableSchema extends ValueObject { return this.fields.filter((f) => f instanceof SelectField || f instanceof DateField) as IKanbanField[] } + public get ganttFields(): IGanttField[] { + return this.fields.filter((f) => f instanceof DateRangeField) as IGanttField[] + } + public get searchableFields(): Field[] { return this.fields.filter((f) => isSearchable(f.type)) } diff --git a/packages/core/src/table/view/calendar/calendar.schema.ts b/packages/core/src/table/view/calendar/calendar.schema.ts index ab12da487..d9dbf3d48 100644 --- a/packages/core/src/table/view/calendar/calendar.schema.ts +++ b/packages/core/src/table/view/calendar/calendar.schema.ts @@ -1,6 +1,6 @@ import { z } from 'zod' -import { isDateField } from '../../field/date-field.type.js' -import { isDateRangeField } from '../../field/date-range-field.type.js' +import { isDateRangeField } from '../../field/fields/date-range/date-range-field.type.js' +import { isDateField } from '../../field/fields/date/date-field.type.js' import { fieldIdSchema } from '../../field/value-objects/field-id.schema.js' export const calendarSchema = z.object({ diff --git a/packages/core/src/table/view/gantt/gantt.schema.ts b/packages/core/src/table/view/gantt/gantt.schema.ts new file mode 100644 index 000000000..9855494cc --- /dev/null +++ b/packages/core/src/table/view/gantt/gantt.schema.ts @@ -0,0 +1,13 @@ +import { z } from 'zod' +import { DateRangeField } from '../../field/index.js' +import { fieldIdSchema } from '../../field/value-objects/field-id.schema.js' + +export const ganttSchema = z.object({ + fieldId: fieldIdSchema.optional(), +}) + +export const ganttField = z.instanceof(DateRangeField) + +export type IGanttField = z.infer + +export type IGanttSchema = z.infer diff --git a/packages/core/src/table/view/gantt/gantt.ts b/packages/core/src/table/view/gantt/gantt.ts new file mode 100644 index 000000000..2d1596589 --- /dev/null +++ b/packages/core/src/table/view/gantt/gantt.ts @@ -0,0 +1,37 @@ +import { ValueObject } from '@undb/domain' +import type { Option } from 'oxide.ts' +import { None, Some } from 'oxide.ts' +import { FieldId } from '../../field/index.js' +import type { IGanttSchema } from './gantt.schema.js' +import type { IGantt } from './gantt.type.js' + +export class Gantt extends ValueObject { + static from(input: IGanttSchema) { + return new this({ + fieldId: input.fieldId ? FieldId.fromString(input.fieldId) : undefined, + }) + } + + public get fieldId() { + return this.props.fieldId + } + + public set fieldId(fieldId: FieldId | undefined) { + this.props.fieldId = fieldId + } + + public removeField(fieldId: FieldId): Option { + if (this.fieldId?.equals(fieldId)) { + const gantt = new Gantt({ ...this, fieldId: undefined }) + return Some(gantt) + } + + return None + } + + public toJSON() { + return { + fieldId: this.fieldId?.value, + } + } +} diff --git a/packages/core/src/table/view/gantt/gantt.type.ts b/packages/core/src/table/view/gantt/gantt.type.ts new file mode 100644 index 000000000..6a2d6dc18 --- /dev/null +++ b/packages/core/src/table/view/gantt/gantt.type.ts @@ -0,0 +1,5 @@ +import type { FieldId } from '../../field/index.js' + +export interface IGantt { + fieldId?: FieldId +} diff --git a/packages/core/src/table/view/gantt/index.ts b/packages/core/src/table/view/gantt/index.ts new file mode 100644 index 000000000..3bb40614a --- /dev/null +++ b/packages/core/src/table/view/gantt/index.ts @@ -0,0 +1,3 @@ +export * from './gantt.js' +export * from './gantt.schema.js' +export * from './gantt.type.js' diff --git a/packages/core/src/table/view/index.ts b/packages/core/src/table/view/index.ts index b8a9ffb3a..25b0cac0a 100644 --- a/packages/core/src/table/view/index.ts +++ b/packages/core/src/table/view/index.ts @@ -1,6 +1,7 @@ export * from '../visualization/index.js' export * from './calendar/index.js' export * from './dashboard/index.js' +export * from './gantt/index.js' export * from './kanban/index.js' export * from './sort/index.js' export * from './specifications/index.js' diff --git a/packages/core/src/table/view/specifications/gantt.specification.ts b/packages/core/src/table/view/specifications/gantt.specification.ts new file mode 100644 index 000000000..bc86680ee --- /dev/null +++ b/packages/core/src/table/view/specifications/gantt.specification.ts @@ -0,0 +1,27 @@ +import type { Result } from 'oxide.ts' +import { Ok } from 'oxide.ts' +import type { FieldId } from '../../field/index.js' +import type { ITableSpecVisitor } from '../../specifications/index.js' +import type { Table } from '../../table.js' +import type { ViewVO } from '../view.vo.js' +import { BaseViewSpecification } from './base-view-specification.js' + +export class WithGanttField extends BaseViewSpecification { + constructor(public readonly view: ViewVO, public readonly fieldId: FieldId | null) { + super(view) + } + + isSatisfiedBy(): boolean { + return this.view.ganttFieldId.mapOr(false, (fieldId) => !!this.fieldId && fieldId.equals(this.fieldId)) + } + + mutate(t: Table): Result { + this.view.getOrCreateGantt().fieldId = this.fieldId ?? undefined + return Ok(t) + } + + accept(v: ITableSpecVisitor): Result { + v.ganttFieldEqual(this) + return Ok(undefined) + } +} diff --git a/packages/core/src/table/view/specifications/index.ts b/packages/core/src/table/view/specifications/index.ts index 3ee7f7e48..789bd0868 100644 --- a/packages/core/src/table/view/specifications/index.ts +++ b/packages/core/src/table/view/specifications/index.ts @@ -1,6 +1,7 @@ export * from './calendar.specification.js' export * from './display-type.specification.js' export * from './filters.specificaiton.js' +export * from './gantt.specification.js' export * from './kanban.specification.js' export * from './row-height.specification.js' export * from './show-system-fields.specification.js' diff --git a/packages/core/src/table/view/view.schema.ts b/packages/core/src/table/view/view.schema.ts index 1c1aba22e..d5ece6466 100644 --- a/packages/core/src/table/view/view.schema.ts +++ b/packages/core/src/table/view/view.schema.ts @@ -4,6 +4,7 @@ import { fieldNameSchema } from '../field/value-objects/field-name.schema.js' import { rootFilter } from '../filter/filter.js' import { calendarSchema } from './calendar/index.js' import { createDashboardSchema, dashboardSchema } from './dashboard/dashboard.type.js' +import { ganttSchema } from './gantt/gantt.schema.js' import { kanbanSchema } from './kanban/index.js' import { sortsSchema } from './sort/sort.schema.js' import { treeViewSchema } from './tree-view/index.js' @@ -13,7 +14,7 @@ import { viewNameSchema } from './view-name.vo.js' import { viewPinnedFields } from './view-pinned-fields.js' import { viewRowHeightSchema } from './view-row-height.vo.js' -export const viewDisplayType = z.enum(['grid', 'kanban', 'calendar', 'tree', 'dashboard']) +export const viewDisplayType = z.enum(['grid', 'kanban', 'gantt', 'calendar', 'tree', 'dashboard']) export const createViewSchema = z.object({ id: viewIdSchema.optional(), @@ -36,6 +37,7 @@ export const createViewInput_internal = z.object({ showSystemFields: z.boolean().optional(), sorts: sortsSchema.optional(), kanban: kanbanSchema.optional(), + gantt: ganttSchema.optional(), calendar: calendarSchema.optional(), dashboard: createDashboardSchema.optional(), tree: treeViewSchema.optional(), @@ -53,6 +55,7 @@ export const queryView = z.object({ showSystemFields: z.boolean().optional(), sorts: sortsSchema.optional(), kanban: kanbanSchema.optional(), + gantt: ganttSchema.optional(), calendar: calendarSchema.optional(), dashboard: dashboardSchema.optional(), tree: treeViewSchema.optional(), @@ -119,6 +122,12 @@ export const setCalendarFieldSchema = z.object({ }) export type ISetCalendarFieldSchema = z.infer +export const setGanttFieldSchema = z.object({ + viewId: viewIdSchema.optional(), + field: fieldIdSchema, +}) +export type ISetGanttFieldSchema = z.infer + export const setTreeViewFieldSchema = z.object({ viewId: viewIdSchema.optional(), field: fieldIdSchema, diff --git a/packages/core/src/table/view/view.type.ts b/packages/core/src/table/view/view.type.ts index 25e9a8ac6..f0d44282e 100644 --- a/packages/core/src/table/view/view.type.ts +++ b/packages/core/src/table/view/view.type.ts @@ -4,6 +4,8 @@ import type { RootFilter } from '../filter/root-filter.js' import type { Calendar, ICalendarSchema } from './calendar/index.js' import type { IDashboardSchema } from './dashboard/dashboard.type.js' import type { Dashboard } from './dashboard/dashboard.vo.js' +import type { Gantt } from './gantt/gantt.js' +import type { IGanttSchema } from './gantt/gantt.schema.js' import type { IKanbanSchema, Kanban } from './kanban/index.js' import type { ISorts } from './sort/sort.schema.js' import type { Sorts } from './sort/sorts.js' @@ -23,6 +25,7 @@ export interface IView { showSystemFields?: boolean sorts?: Sorts kanban?: Kanban + gantt?: Gantt calendar?: Calendar dashboard?: Dashboard tree?: TreeView @@ -39,6 +42,7 @@ export interface IQueryView { showSystemFields?: boolean sorts?: ISorts kanban?: IKanbanSchema + gantt?: IGanttSchema tree?: ITreeViewSchema calendar?: ICalendarSchema dashboard?: IDashboardSchema diff --git a/packages/core/src/table/view/view.vo.ts b/packages/core/src/table/view/view.vo.ts index 007f3733c..865993ea5 100644 --- a/packages/core/src/table/view/view.vo.ts +++ b/packages/core/src/table/view/view.vo.ts @@ -18,12 +18,14 @@ import { } from './dashboard/specifications/widget.specification.js' import type { ICreateWidgetSchema, IRelayoutWidgetSchema } from './dashboard/widget.schema.js' import { Widget } from './dashboard/widget.vo.js' +import { Gantt } from './gantt/gantt.js' import { Kanban } from './kanban/index.js' import type { ISortDirection } from './sort/sort.schema.js' import { Sorts } from './sort/sorts.js' import { WithDisplayType } from './specifications/display-type.specification.js' import { WithCalendarField, + WithGanttField, WithKanbanField, WithRowHeight, WithTreeViewField, @@ -155,6 +157,31 @@ export class ViewVO extends ValueObject { } } + public get gantt(): Option { + return Option(this.props.gantt) + } + + public set gantt(gantt: Option) { + this.props.gantt = gantt.into() + } + + public get ganttFieldId(): Option { + return this.gantt.mapOr(None, (gantt) => Option(gantt.fieldId)) + } + + public get ganttFieldIdString() { + return this.gantt.into()?.fieldId?.value + } + + public set ganttFieldIdString(fieldId: string | undefined) { + const gantt = this.gantt.into() + if (gantt) { + gantt.fieldId = fieldId ? FieldId.fromString(fieldId) : undefined + } else if (fieldId) { + this.gantt = Some(new Gantt({ fieldId: FieldId.fromString(fieldId) })) + } + } + public get treeView(): Option { return Option(this.props.tree) } @@ -245,6 +272,14 @@ export class ViewVO extends ValueObject { return this.props.calendar } + public getOrCreateGantt(): Gantt { + const gantt = this.gantt + if (gantt.isSome()) return gantt.unwrap() + + this.props.gantt = new Kanban({}) + return this.props.gantt + } + public getOrCreateTreeView(): Kanban { const treeView = this.treeView if (treeView.isSome()) return treeView.unwrap() @@ -289,6 +324,10 @@ export class ViewVO extends ValueObject { return new WithKanbanField(this, fieldId) } + public setGanttFieldSpec(fieldId: FieldId): TableCompositeSpecificaiton { + return new WithGanttField(this, fieldId) + } + public setCalendarFieldSpec(fieldId: FieldId): TableCompositeSpecificaiton { return new WithCalendarField(this, fieldId) } @@ -420,6 +459,7 @@ export class ViewVO extends ValueObject { sorts: this.sorts?.toArray(), showSystemFields: this.showSystemFields, kanban: this.kanban?.into()?.toJSON(), + gantt: this.gantt?.into()?.toJSON(), calendar: this.calendar?.into()?.toJSON(), tree: this.treeView?.into()?.toJSON(), dashboard: this.dashboard?.into()?.toJSON(), @@ -444,6 +484,7 @@ export class ViewVO extends ValueObject { showSystemFields: input.showSystemFields, sorts: input.sorts ? new Sorts(input.sorts) : undefined, kanban: input.kanban ? Kanban.from(input.kanban) : undefined, + gantt: input.gantt ? Gantt.from(input.gantt) : undefined, calendar: input.calendar ? Calendar.from(input.calendar) : undefined, tree: input.tree ? TreeView.from(input.tree) : undefined, displayType: parsed.displayType || defaultViewDiaplyType, diff --git a/packages/cqrs/src/commands/index.ts b/packages/cqrs/src/commands/index.ts index 9380f7def..78f954235 100644 --- a/packages/cqrs/src/commands/index.ts +++ b/packages/cqrs/src/commands/index.ts @@ -32,6 +32,7 @@ export * from './set-field-sort/index.js' export * from './set-field-visibility/index.js' export * from './set-field-width/index.js' export * from './set-filters/index.js' +export * from './set-gantt-field/index.js' export * from './set-kanban-field/index.js' export * from './set-pinned-fields/index.js' export * from './set-row-height/index.js' diff --git a/packages/cqrs/src/commands/set-gantt-field/index.ts b/packages/cqrs/src/commands/set-gantt-field/index.ts new file mode 100644 index 000000000..0449e3206 --- /dev/null +++ b/packages/cqrs/src/commands/set-gantt-field/index.ts @@ -0,0 +1,4 @@ +export * from './set-gantt-field.command.handler.js' +export * from './set-gantt-field.command.input.js' +export * from './set-gantt-field.command.interface.js' +export * from './set-gantt-field.command.js' diff --git a/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.handler.ts b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.handler.ts new file mode 100644 index 000000000..1924db952 --- /dev/null +++ b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.handler.ts @@ -0,0 +1,17 @@ +import type { ITableRepository } from '@undb/core' +import type { ICommandHandler } from '@undb/domain' +import type { SetGanttFieldCommand } from './set-gantt-field.command.js' + +type ISetGanttFieldCommandHandler = ICommandHandler + +export class SetGanttFieldCommandHandler implements ISetGanttFieldCommandHandler { + constructor(protected readonly repo: ITableRepository) {} + + async execute(command: SetGanttFieldCommand): Promise { + const table = (await this.repo.findOneById(command.tableId)).unwrap() + + const spec = table.setGanttField(command) + + await this.repo.updateOneById(table.id.value, spec) + } +} diff --git a/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.input.ts b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.input.ts new file mode 100644 index 000000000..5eb0c9a2d --- /dev/null +++ b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.input.ts @@ -0,0 +1,9 @@ +import { setGanttFieldSchema, tableIdSchema, viewIdSchema } from '@undb/core' +import { z } from 'zod' + +export const setGanttFieldCommandInput = z + .object({ + tableId: tableIdSchema, + viewId: viewIdSchema.optional(), + }) + .merge(setGanttFieldSchema) diff --git a/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.interface.ts b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.interface.ts new file mode 100644 index 000000000..6f4f38001 --- /dev/null +++ b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.interface.ts @@ -0,0 +1,4 @@ +import type { z } from 'zod' +import type { setGanttFieldCommandInput } from './set-gantt-field.command.input.js' + +export type ISetGanttFieldCommandInput = z.infer diff --git a/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.ts b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.ts new file mode 100644 index 000000000..f8721fc7d --- /dev/null +++ b/packages/cqrs/src/commands/set-gantt-field/set-gantt-field.command.ts @@ -0,0 +1,16 @@ +import type { CommandProps } from '@undb/domain' +import { Command } from '@undb/domain' +import type { ISetGanttFieldCommandInput } from './set-gantt-field.command.interface.js' + +export class SetGanttFieldCommand extends Command implements ISetGanttFieldCommandInput { + readonly tableId: string + readonly viewId?: string + readonly field: string + + constructor(props: CommandProps) { + super(props) + this.tableId = props.tableId + this.viewId = props.viewId + this.field = props.field + } +} diff --git a/packages/cqrs/src/commands/update-record/update-record.command.input.ts b/packages/cqrs/src/commands/update-record/update-record.command.input.ts index d0e3f2883..b0ea53ea0 100644 --- a/packages/cqrs/src/commands/update-record/update-record.command.input.ts +++ b/packages/cqrs/src/commands/update-record/update-record.command.input.ts @@ -1,11 +1,17 @@ -import { createMutateRecordValuesSchema, Field, recordIdSchema, tableIdSchema } from '@undb/core' +import type { Field } from '@undb/core' +import { createMutateRecordValuesSchema, recordIdSchema, tableIdSchema } from '@undb/core' import * as z from 'zod' +export const baseUpdateRecordCommandInput = z.object({ + tableId: tableIdSchema, + id: recordIdSchema, +}) + export const createUpdateRecordCommandInput = (fields: Field[]) => - z.object({ - tableId: tableIdSchema, - id: recordIdSchema, - values: createMutateRecordValuesSchema(fields), - }) + baseUpdateRecordCommandInput.merge( + z.object({ + values: createMutateRecordValuesSchema(fields), + }), + ) export type IUpdateRecordCommandInput = z.infer> diff --git a/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.handler.ts b/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.handler.ts index bc35552e3..2b48fc13b 100644 --- a/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.handler.ts +++ b/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.handler.ts @@ -21,7 +21,7 @@ export class GetShareViewRecordsQueryHandler const table = (await this.tableQueryModel.findOne(WithTableViewId.fromString(query.viewId))).unwrap() const tb = TableFactory.fromQuery(table) - const spec = withTableRecordsSpec(tb, query.viewId) + const spec = withTableRecordsSpec(tb, query.viewId, query.filter, query.q) const records = await this.rm.find(table.id, ViewId.fromString(query.viewId), spec) return { diff --git a/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.input.ts b/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.input.ts index 8edd709d0..c4e257bed 100644 --- a/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.input.ts +++ b/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.input.ts @@ -1,6 +1,8 @@ -import { viewIdSchema } from '@undb/core' +import { rootFilter, viewIdSchema } from '@undb/core' import * as z from 'zod' export const getShareViewRecordsQueryInput = z.object({ viewId: viewIdSchema, + filter: rootFilter.optional(), + q: z.string().nonempty().optional(), }) diff --git a/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.ts b/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.ts index 7be2099ac..e1a951bdd 100644 --- a/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.ts +++ b/packages/cqrs/src/queries/get-share-view-records/get-share-view-records.query.ts @@ -1,10 +1,15 @@ +import type { IRootFilter } from '@undb/core' import { Query } from '@undb/domain' import type { IGetShareViewRecordsQuery } from './get-share-view-records.query.interface.js' export class GetShareViewRecordsQuery extends Query implements IGetShareViewRecordsQuery { readonly viewId: string + readonly filter?: IRootFilter + readonly q?: string constructor(query: IGetShareViewRecordsQuery) { super() this.viewId = query.viewId + this.filter = query.filter + this.q = query.q } } diff --git a/packages/database/sqlite/src/create-mikro-orm-config.ts b/packages/database/sqlite/src/create-mikro-orm-config.ts index 968edcaca..a2312b1aa 100644 --- a/packages/database/sqlite/src/create-mikro-orm-config.ts +++ b/packages/database/sqlite/src/create-mikro-orm-config.ts @@ -4,8 +4,7 @@ import { SqlHighlighter } from '@mikro-orm/sql-highlighter' import path from 'path' import { entities } from './entity/index.js' import { SqliteLogger } from './logger.js' -import { Migration20230616021158 } from './migrations/Migration20230616021158.js' -import { Migration20230627044903 } from './migrations/Migration20230627044903.js' +import { Migration20230705012944 } from './migrations/Migration20230705012944.js' export const createConfig = (data: string, env = 'development') => defineConfig({ @@ -25,11 +24,7 @@ export const createConfig = (data: string, env = 'development') => migrationsList: [ { name: 'initial', - class: Migration20230616021158, - }, - { - name: 'share', - class: Migration20230627044903, + class: Migration20230705012944, }, ], }, diff --git a/packages/database/sqlite/src/entity/view.ts b/packages/database/sqlite/src/entity/view.ts index 58f48b4b5..65b6a60b2 100644 --- a/packages/database/sqlite/src/entity/view.ts +++ b/packages/database/sqlite/src/entity/view.ts @@ -12,11 +12,13 @@ import { OneToMany, PrimaryKey, Property, + StringType, } from '@mikro-orm/core' import type { IViewRowHeight } from '@undb/core' import { viewRowHeights, type Calendar as CoreCalendar, + type Gantt as CoreGantt, type Kanban as CoreKanban, type TreeView as CoreTreeView, type ViewVO as CoreView, @@ -45,6 +47,20 @@ export class Kanban { this.fieldId = kanban.fieldId?.value } } +@Embeddable() +export class Gantt { + @Property({ + nullable: true, + serializer(value) { + return value || undefined + }, + }) + fieldId?: string + + constructor(gantt: CoreGantt) { + this.fieldId = gantt.fieldId?.value + } +} @Embeddable() export class Calendar { @@ -90,7 +106,7 @@ export class View extends BaseEntity { @Property({ type: 'boolean', default: false, nullable: false }) showSystemFields = false - @Enum({ items: ['kanban', 'calendar', 'grid', 'tree', 'dashboard'] }) + @Property({ type: StringType }) displayType: IViewDisplayType @Property({ type: JsonType, nullable: true }) @@ -99,6 +115,9 @@ export class View extends BaseEntity { @Embedded({ nullable: true }) kanban?: Kanban + @Embedded({ nullable: true }) + gantt?: Gantt + @Embedded({ nullable: true }) calendar?: Calendar @@ -163,4 +182,4 @@ export class View extends BaseEntity { } } -export const viewEntities = [View, Kanban, Calendar, Tree] +export const viewEntities = [View, Kanban, Calendar, Tree, Gantt] diff --git a/packages/database/sqlite/src/migrations/.snapshot-undb.db.json b/packages/database/sqlite/src/migrations/.snapshot-undb.db.json index 1cbc08ebe..aa734dd36 100644 --- a/packages/database/sqlite/src/migrations/.snapshot-undb.db.json +++ b/packages/database/sqlite/src/migrations/.snapshot-undb.db.json @@ -431,7 +431,8 @@ "attachment", "collaborator", "created-by", - "updated-by" + "updated-by", + "url" ], "mappedType": "text" }, @@ -1442,14 +1443,7 @@ "autoincrement": false, "primary": false, "nullable": false, - "enumItems": [ - "kanban", - "calendar", - "grid", - "tree", - "dashboard" - ], - "mappedType": "enum" + "mappedType": "text" }, "sorts": { "name": "sorts", @@ -1469,6 +1463,15 @@ "nullable": true, "mappedType": "text" }, + "gantt_field_id": { + "name": "gantt_field_id", + "type": "text", + "unsigned": false, + "autoincrement": false, + "primary": false, + "nullable": true, + "mappedType": "text" + }, "calendar_field_id": { "name": "calendar_field_id", "type": "text", diff --git a/packages/database/sqlite/src/migrations/Migration20230627044903.ts b/packages/database/sqlite/src/migrations/Migration20230627044903.ts deleted file mode 100644 index a29a0bae8..000000000 --- a/packages/database/sqlite/src/migrations/Migration20230627044903.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Migration } from '@mikro-orm/migrations' - -export class Migration20230627044903 extends Migration { - async up(): Promise { - this.addSql( - 'create table `undb_share` (`id` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `target_id` text null, `target_type` text null, `enabled` integer not null default false, primary key (`id`));', - ) - this.addSql('create index `undb_share_deleted_at_index` on `undb_share` (`deleted_at`);') - this.addSql('create index `undb_share_target_id_index` on `undb_share` (`target_id`);') - this.addSql('create unique index `undb_share_target_id_unique` on `undb_share` (`target_id`);') - } -} diff --git a/packages/database/sqlite/src/migrations/Migration20230616021158.ts b/packages/database/sqlite/src/migrations/Migration20230705012944.ts similarity index 90% rename from packages/database/sqlite/src/migrations/Migration20230616021158.ts rename to packages/database/sqlite/src/migrations/Migration20230705012944.ts index 54eeeea07..3c1b875c5 100644 --- a/packages/database/sqlite/src/migrations/Migration20230616021158.ts +++ b/packages/database/sqlite/src/migrations/Migration20230705012944.ts @@ -1,12 +1,19 @@ import { Migration } from '@mikro-orm/migrations' -export class Migration20230616021158 extends Migration { +export class Migration20230705012944 extends Migration { async up(): Promise { this.addSql( 'create table `undb_outbox` (`uuid` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `name` text null, `operator_id` text null, `payload` json not null, primary key (`uuid`));', ) this.addSql('create index `undb_outbox_deleted_at_index` on `undb_outbox` (`deleted_at`);') + this.addSql( + 'create table `undb_share` (`id` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `target_id` text null, `target_type` text null, `enabled` integer not null default false, primary key (`id`));', + ) + this.addSql('create index `undb_share_deleted_at_index` on `undb_share` (`deleted_at`);') + this.addSql('create index `undb_share_target_id_index` on `undb_share` (`target_id`);') + this.addSql('create unique index `undb_share_target_id_unique` on `undb_share` (`target_id`);') + this.addSql( 'create table `undb_table` (`id` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `name` text not null, `emoji` text not null, `views_order` text null, primary key (`id`));', ) @@ -73,7 +80,7 @@ export class Migration20230616021158 extends Migration { this.addSql('create unique index `undb_user_email_unique` on `undb_user` (`email`);') this.addSql( - "create table `undb_view` (`id` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `table_id` text null, `name` text not null, `show_system_fields` integer not null default false, `display_type` text check (`display_type` in ('kanban', 'calendar', 'grid', 'tree', 'dashboard')) not null, `sorts` json null, `kanban_field_id` text null, `calendar_field_id` text null, `tree_field_id` text null, `filter` json null, `field_options` json null, `fields_order` text null, `pinned_fields` json null, `row_height` text check (`row_height` in ('short', 'medium', 'tall')) null, constraint `undb_view_table_id_foreign` foreign key(`table_id`) references `undb_table`(`id`) on delete cascade on update cascade, primary key (`id`));", + "create table `undb_view` (`id` text not null, `created_at` datetime not null, `updated_at` datetime not null, `deleted_at` datetime null, `table_id` text null, `name` text not null, `show_system_fields` integer not null default false, `display_type` text not null, `sorts` json null, `kanban_field_id` text null, `gantt_field_id` text null, `calendar_field_id` text null, `tree_field_id` text null, `filter` json null, `field_options` json null, `fields_order` text null, `pinned_fields` json null, `row_height` text check (`row_height` in ('short', 'medium', 'tall')) null, constraint `undb_view_table_id_foreign` foreign key(`table_id`) references `undb_table`(`id`) on delete cascade on update cascade, primary key (`id`));", ) this.addSql('create index `undb_view_deleted_at_index` on `undb_view` (`deleted_at`);') this.addSql('create index `undb_view_table_id_index` on `undb_view` (`table_id`);') diff --git a/packages/database/sqlite/src/repository/table/table-sqlite.mapper.ts b/packages/database/sqlite/src/repository/table/table-sqlite.mapper.ts index e7a708b51..767eb5a8a 100644 --- a/packages/database/sqlite/src/repository/table/table-sqlite.mapper.ts +++ b/packages/database/sqlite/src/repository/table/table-sqlite.mapper.ts @@ -22,6 +22,7 @@ export class TableSqliteMapper { fieldOptions: view.fieldOptions, fieldsOrder: view.fieldsOrder, kanban: view.kanban, + gantt: view.gantt, tree: view.tree, calendar: view.calendar, sorts: view.sorts, @@ -53,6 +54,7 @@ export class TableSqliteMapper { fieldOptions: view.fieldOptions, fieldsOrder: view.fieldsOrder, kanban: view.kanban, + gantt: view.gantt, tree: view.tree, calendar: view.calendar, sorts: view.sorts, diff --git a/packages/database/sqlite/src/repository/table/table-sqlite.mutation-visitor.ts b/packages/database/sqlite/src/repository/table/table-sqlite.mutation-visitor.ts index fb34104c1..2be7f2b08 100644 --- a/packages/database/sqlite/src/repository/table/table-sqlite.mutation-visitor.ts +++ b/packages/database/sqlite/src/repository/table/table-sqlite.mutation-visitor.ts @@ -7,6 +7,7 @@ import type { WithCurrencySymbol, WithDuplicatedField, WithForeignTableId, + WithGanttField, WithNewFieldType, WithOption, WithReferenceFieldId, @@ -290,6 +291,11 @@ export class TableSqliteMutationVisitor extends BaseEntityManager implements ITa wrap(view).assign({ kanban: { fieldId: s.fieldId?.value ?? '' } }) this.em.persist(view) } + ganttFieldEqual(s: WithGanttField): void { + const view = this.getView(s.view.id.value) + wrap(view).assign({ gantt: { fieldId: s.fieldId?.value ?? '' } }) + this.em.persist(view) + } treeViewFieldEqual(s: WithTreeViewField): void { const view = this.getView(s.view.id.value) wrap(view).assign({ tree: { fieldId: s.fieldId?.value ?? '' } }) diff --git a/packages/database/sqlite/src/repository/table/table-sqlite.query-visitor.ts b/packages/database/sqlite/src/repository/table/table-sqlite.query-visitor.ts index 63aaaef4b..b8e141eff 100644 --- a/packages/database/sqlite/src/repository/table/table-sqlite.query-visitor.ts +++ b/packages/database/sqlite/src/repository/table/table-sqlite.query-visitor.ts @@ -19,6 +19,7 @@ import type { WithFilter, WithForeignTableId, WithFormat, + WithGanttField, WithKanbanField, WithNewField, WithNewFieldType, @@ -130,6 +131,9 @@ export class TableSqliteQueryVisitor implements ITableSpecVisitor { kanbanFieldEqual(s: WithKanbanField): void { throw new Error('Method not implemented.') } + ganttFieldEqual(s: WithGanttField): void { + throw new Error('Method not implemented.') + } treeViewFieldEqual(s: WithTreeViewField): void { throw new Error('Method not implemented.') } diff --git a/packages/database/sqlite/src/underlying-table/underlying-table-sqlite.manager-visitor.ts b/packages/database/sqlite/src/underlying-table/underlying-table-sqlite.manager-visitor.ts index c6e5c6bf3..204b07008 100644 --- a/packages/database/sqlite/src/underlying-table/underlying-table-sqlite.manager-visitor.ts +++ b/packages/database/sqlite/src/underlying-table/underlying-table-sqlite.manager-visitor.ts @@ -4,6 +4,7 @@ import type { ITableSpecVisitor, WithDuplicatedField, WithForeignTableId, + WithGanttField, WithNewFieldType, WithRatingMax, WithTableSchema, @@ -133,6 +134,7 @@ export class UnderlyingTableSqliteManagerVisitor implements ITableSpecVisitor { fieldVisibility(): void {} displayTypeEqual(): void {} kanbanFieldEqual(): void {} + ganttFieldEqual(s: WithGanttField): void {} treeViewFieldEqual(): void {} calendarFieldEqual(): void {} optionsEqual(): void {} diff --git a/packages/database/sqlite/test/vitest.setup.ts b/packages/database/sqlite/test/vitest.setup.ts index 5fd0768d1..df184253b 100644 --- a/packages/database/sqlite/test/vitest.setup.ts +++ b/packages/database/sqlite/test/vitest.setup.ts @@ -1,7 +1,7 @@ import { BetterSqliteDriver, MikroORM } from '@mikro-orm/better-sqlite' import { defineConfig } from '@mikro-orm/core' import { TsMorphMetadataProvider } from '@mikro-orm/reflection' -import { Migration20230616021158 } from '../src/migrations/Migration20230616021158.js' +import { Migration20230705012944 } from '../src/migrations/Migration20230705012944.js' beforeAll(async () => { const { entities } = await import('../src/entity/index.js') @@ -15,7 +15,7 @@ beforeAll(async () => { migrationsList: [ { name: 'initial', - class: Migration20230616021158, + class: Migration20230705012944, }, ], }, diff --git a/packages/i18n/src/index.ts b/packages/i18n/src/index.ts index f35474772..1c7eb4dbe 100644 --- a/packages/i18n/src/index.ts +++ b/packages/i18n/src/index.ts @@ -12,7 +12,8 @@ export const config: InitOptions = { auth: { login: 'Login', logout: 'Logout', - 'light/dark': 'Light/Dark', + 'Dark Mode': 'Dark Mode', + 'Light Mode': 'Light Mode', 'login to undb': 'Login to undb', 'register to undb': 'register to undb', register: 'Register', @@ -22,7 +23,7 @@ export const config: InitOptions = { 'password placeholder': 'Password', 'has no account': "Don't have an account yet?", 'has account': 'Already have an account?', - Setting: 'Setting', + Settings: 'Settings', Profile: 'Profile', username: 'Username', avatar: 'Avatar', @@ -46,6 +47,7 @@ export const config: InitOptions = { Done: 'Done', Update: 'Update', Name: 'Name', + Label: 'Label', Description: 'Description', Type: 'Type', asc: 'A → Z', @@ -135,6 +137,7 @@ export const config: InitOptions = { 'Select Display Type': 'Select Display Type', grid: 'Grid', kanban: 'Kanban', + gantt: 'Gantt', dashboard: 'Dashboard', calendar: 'Calendar', treeView: 'Tree', @@ -143,6 +146,7 @@ export const config: InitOptions = { 'Select View': 'Select View', 'Update View Name': 'Update View Name', 'Duplicate View': 'Duplicate View', + Export: 'Export', 'Export CSV': 'Export CSV', 'Export Excel': 'Export Excel', 'Export Json': 'Export Json', @@ -324,7 +328,8 @@ export const config: InitOptions = { auth: { login: '登录', logout: '退出登录', - 'light/dark': '白昼模式/黑暗模式', + 'Dark Mode': '黑暗模式', + 'Light Mode': '白昼模式', register: '注册', email: '邮箱', 'email placeholder': '邮箱地址', @@ -334,7 +339,7 @@ export const config: InitOptions = { 'has account': '已有账号?', 'login to undb': '登录到 undb', 'register to undb': '注册 undb 账号', - Setting: '设置账号', + Settings: '设置账号', Profile: '简介', username: '用户名', avatar: '头像', @@ -358,6 +363,7 @@ export const config: InitOptions = { Done: '完成', Update: '更新', Name: '名称', + Label: '标签', Description: '描述', Type: '类型', asc: '正序', @@ -449,6 +455,7 @@ export const config: InitOptions = { 'Select Display Type': '切换视图类型', grid: '表格', kanban: '看板', + gantt: '甘特图', dashboard: '仪表盘', calendar: '日历', treeView: '树形', @@ -457,6 +464,7 @@ export const config: InitOptions = { 'Select View': '选择视图', 'Update View Name': '更新视图名称', 'Duplicate View': '复制视图', + Export: '导出', 'Export CSV': '导出 CSV', 'Export Excel': '导出 Excel', 'Export Json': '导出 Json', diff --git a/packages/trpc/src/router/gantt.router.ts b/packages/trpc/src/router/gantt.router.ts new file mode 100644 index 000000000..6be17aafd --- /dev/null +++ b/packages/trpc/src/router/gantt.router.ts @@ -0,0 +1,16 @@ +import { SetGanttFieldCommand, setGanttFieldCommandInput } from '@undb/cqrs' +import type { ICommandBus } from '@undb/domain' +import { z } from 'zod' +import type { publicProcedure } from '../trpc.js' +import { router } from '../trpc.js' + +export const createGanttRouter = (procedure: typeof publicProcedure) => (commandBus: ICommandBus) => + router({ + setField: procedure + .input(setGanttFieldCommandInput) + .output(z.void()) + .mutation(({ input }) => { + const cmd = new SetGanttFieldCommand(input) + return commandBus.execute(cmd) + }), + }) diff --git a/packages/trpc/src/router/view.router.ts b/packages/trpc/src/router/view.router.ts index d4c4f0294..a58789deb 100644 --- a/packages/trpc/src/router/view.router.ts +++ b/packages/trpc/src/router/view.router.ts @@ -23,6 +23,7 @@ import { router } from '../trpc.js' import { createCalendarRouter } from './calendar.router.js' import { createDashboardRouter } from './dashboard.router.js' import { createFilterRouter } from './filter.router.js' +import { createGanttRouter } from './gantt.router.js' import { createKanbanRouter } from './kanban.router.js' import { createSortRouter } from './sort.router.js' import { createTreeViewRouter } from './tree-view.router.js' @@ -90,6 +91,7 @@ export const createViewRouter = (procedure: typeof publicProcedure) => (commandB filter: createFilterRouter(procedure)(commandBus), sort: createSortRouter(procedure)(commandBus), kanban: createKanbanRouter(procedure)(commandBus), + gantt: createGanttRouter(procedure)(commandBus), calendar: createCalendarRouter(procedure)(commandBus), dashboard: createDashboardRouter(procedure)(commandBus), tree: createTreeViewRouter(procedure)(commandBus), diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f5be8fee5..939013e6b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -583,6 +583,9 @@ importers: svelte-dnd-action: specifier: ^0.9.22 version: 0.9.22(svelte@4.0.1) + svelte-gantt: + specifier: 4.0.9-beta + version: 4.0.9-beta(moment@2.29.4) svelte-grid: specifier: ^5.1.1 version: 5.1.1 @@ -608,8 +611,8 @@ importers: specifier: ^2.0.5 version: 2.0.5 sveltekit-superforms: - specifier: ^1.1.2 - version: 1.1.2(@sveltejs/kit@1.21.0)(svelte@4.0.1)(zod@3.21.4) + specifier: ^0.8.7 + version: 0.8.7(@sveltejs/kit@1.21.0)(svelte@4.0.1)(zod@3.21.4) svelvet: specifier: ^8.0.8 version: 8.0.8(svelte@4.0.1) @@ -7298,6 +7301,11 @@ packages: /consola@2.15.3: resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==} + /console-clear@1.1.1: + resolution: {integrity: sha512-pMD+MVR538ipqkG5JXeOEbKWS5um1H4LUUccUQG68qpeqBYbzYy79Gh55jkd2TtPdRfUaLWdv6LPP//5Zt0aPQ==} + engines: {node: '>=4'} + dev: true + /console-control-strings@1.1.0: resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} @@ -9122,6 +9130,11 @@ packages: /get-port-please@3.0.1: resolution: {integrity: sha512-R5pcVO8Z1+pVDu8Ml3xaJCEkBiiy1VQN9za0YqH8GIi1nIqD4IzQhzY6dDzMRtdS1lyiGlucRzm8IN8wtLIXng==} + /get-port@3.2.0: + resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==} + engines: {node: '>=4'} + dev: true + /get-stream@3.0.0: resolution: {integrity: sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==} engines: {node: '>=4'} @@ -10919,6 +10932,11 @@ packages: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} + /local-access@1.1.0: + resolution: {integrity: sha512-XfegD5pyTAfb+GY6chk283Ox5z8WexG56OvM06RWLpAc/UHozO8X6xAxEkIitZOtsSMM1Yr3DkHgW5W+onLhCw==} + engines: {node: '>=6'} + dev: true + /local-pkg@0.4.3: resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} engines: {node: '>=14'} @@ -11512,6 +11530,10 @@ packages: ufo: 1.1.2 dev: true + /moment@2.29.4: + resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==} + dev: true + /mongodb-connection-string-url@2.6.0: resolution: {integrity: sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==} dependencies: @@ -13465,6 +13487,11 @@ packages: resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} dev: false + /semiver@1.1.0: + resolution: {integrity: sha512-QNI2ChmuioGC1/xjyYwyZYADILWyW6AmS1UH6gDj/SFUUUS4MBAWs/7mxnkRPc/F4iHezDP+O8t0dO8WHiEOdg==} + engines: {node: '>=6'} + dev: true + /semver-compare@1.0.0: resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==} dev: true @@ -13713,6 +13740,30 @@ packages: semver: 7.0.0 dev: true + /sirv-cli@1.0.14: + resolution: {integrity: sha512-yyUTNr984ANKDloqepkYbBSqvx3buwYg2sQKPWjSU+IBia5loaoka2If8N9CMwt8AfP179cdEl7kYJ//iWJHjQ==} + engines: {node: '>= 10'} + hasBin: true + dependencies: + console-clear: 1.1.1 + get-port: 3.2.0 + kleur: 3.0.3 + local-access: 1.1.0 + sade: 1.8.1 + semiver: 1.1.0 + sirv: 1.0.19 + tinydate: 1.3.0 + dev: true + + /sirv@1.0.19: + resolution: {integrity: sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==} + engines: {node: '>= 10'} + dependencies: + '@polka/url': 1.0.0-next.21 + mrmime: 1.0.1 + totalist: 1.1.0 + dev: true + /sirv@2.0.3: resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} engines: {node: '>= 10'} @@ -14320,6 +14371,15 @@ packages: '@floating-ui/dom': 1.2.9 dev: true + /svelte-gantt@4.0.9-beta(moment@2.29.4): + resolution: {integrity: sha512-uWFKUekZH3xYechaLuPwQ8HMDzL5XRLJiQzy4Iz97dbVC+scFlPnjqesWSeoGQhDFxPtnrB45nqf9n+Qp6MYJw==} + peerDependencies: + moment: ^2.22.2 + dependencies: + moment: 2.29.4 + sirv-cli: 1.0.14 + dev: true + /svelte-grid@5.1.1: resolution: {integrity: sha512-PJTC4PUejb8RzcUjymWnf1HALqseUBwxl+p+i5uJlDIC1+zXKok1J16IDoHQxXhNj+INcF9KHE7hIm++NurSAQ==} dev: true @@ -14490,11 +14550,11 @@ packages: periscopic: 3.1.0 dev: true - /sveltekit-superforms@1.1.2(@sveltejs/kit@1.21.0)(svelte@4.0.1)(zod@3.21.4): - resolution: {integrity: sha512-oWW3+Phcs/CkUKGEx0IsCr6Dw3a22/MVs4Tvi8k/jh66pqwP/jOZu3/dT367pkbIh5T7NK20yrnbHu8nm2E7pQ==} + /sveltekit-superforms@0.8.7(@sveltejs/kit@1.21.0)(svelte@4.0.1)(zod@3.21.4): + resolution: {integrity: sha512-0aFK31TNz4AM3N7dzL99QUXlVF2O+W/TNVU+M41VVaAKtJKFNasbv8GNLd5wrhN7UWN6kNJnt4MlZBPISkIQ6w==} peerDependencies: '@sveltejs/kit': 1.x - svelte: 3.x || 4.x + svelte: 3.x zod: 3.x dependencies: '@sveltejs/kit': 1.21.0(svelte@4.0.1)(vite@4.3.9) @@ -14753,6 +14813,11 @@ packages: resolution: {integrity: sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA==} dev: true + /tinydate@1.3.0: + resolution: {integrity: sha512-7cR8rLy2QhYHpsBDBVYnnWXm8uRTr38RoZakFSW7Bs7PzfMPNZthuMLkwqZv7MTu8lhQ91cOFYS5a7iFj2oR3w==} + engines: {node: '>=4'} + dev: true + /tinypool@0.5.0: resolution: {integrity: sha512-paHQtnrlS1QZYKF/GnLoOM/DN9fqaGOFbCbxzAhwniySnzl9Ebk8w73/dd34DAhe/obUbPAOldTyYXQZxnPBPQ==} engines: {node: '>=14.0.0'} @@ -14810,6 +14875,11 @@ packages: ieee754: 1.2.1 dev: true + /totalist@1.1.0: + resolution: {integrity: sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==} + engines: {node: '>=6'} + dev: true + /totalist@3.0.1: resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'}