11import { DatabaseColumn } from "cdm/DatabaseModel" ;
2- import { InitialState , RowDataType , TableDataType } from "cdm/FolderModel" ;
2+ import {
3+ InitialType ,
4+ RowDataType ,
5+ TableColumn ,
6+ TableDataType ,
7+ } from "cdm/FolderModel" ;
8+ import { TableStateInterface } from "cdm/TableStateInterface" ;
39import {
410 obtainColumnsFromFolder ,
511 obtainMetadataColumns ,
612} from "components/Columns" ;
713import { createDatabase } from "components/index/Database" ;
814import { DbFolderException } from "errors/AbstractException" ;
915import { DatabaseCore , InputType , StyleClasses } from "helpers/Constants" ;
10- import obtainInitialState from "helpers/InitialState " ;
16+ import obtainInitialType from "helpers/InitialType " ;
1117import { adapterTFilesToRows , isDatabaseNote } from "helpers/VaultManagement" ;
1218import DBFolderPlugin from "main" ;
1319
@@ -23,6 +29,12 @@ import { createRoot, Root } from "react-dom/client";
2329import DatabaseInfo from "services/DatabaseInfo" ;
2430import { LOGGER } from "services/Logger" ;
2531import { SettingsModal } from "Settings" ;
32+ import useColumnsStore from "stateManagement/useColumnsStore" ;
33+ import useConfigStore from "stateManagement/useConfigStore" ;
34+ import useDataStore from "stateManagement/useDataStore" ;
35+ import useInitialTypeStore from "stateManagement/useInitialTypeStore" ;
36+ import useRowTemplateStore from "stateManagement/useRowTemplateStore" ;
37+ import useSortingStore from "stateManagement/useSortingStore" ;
2638import StateManager from "StateManager" ;
2739export const databaseIcon = "blocks" ;
2840
@@ -33,6 +45,10 @@ export class DatabaseView extends TextFileView implements HoverParent {
3345 rootContainer : Root | null = null ;
3446 diskConfig : DatabaseInfo ;
3547 rows : Array < RowDataType > ;
48+ columns : Array < TableColumn > ;
49+ shadowColumns : Array < TableColumn > ;
50+ initial : InitialType ;
51+
3652 constructor ( leaf : WorkspaceLeaf , plugin : DBFolderPlugin ) {
3753 super ( leaf ) ;
3854 this . plugin = plugin ;
@@ -127,29 +143,27 @@ export class DatabaseView extends TextFileView implements HoverParent {
127143 ) ;
128144 let yamlColumns : Record < string , DatabaseColumn > =
129145 this . diskConfig . yaml . columns ;
146+ this . diskConfig . yaml . config ;
130147 // Complete the columns with the metadata columns
131148 yamlColumns = await obtainMetadataColumns (
132149 yamlColumns ,
133150 this . diskConfig . yaml . config
134151 ) ;
135152 // Obtain base information about columns
136- const columns = await obtainColumnsFromFolder ( yamlColumns ) ;
153+ this . columns = await obtainColumnsFromFolder ( yamlColumns ) ;
137154 this . rows = await adapterTFilesToRows (
138155 this . file . parent . path ,
139- columns ,
156+ this . columns ,
140157 this . diskConfig . yaml
141158 ) ;
142- const initialState : InitialState = obtainInitialState ( columns , this . rows ) ;
159+ this . initial = obtainInitialType ( this . columns , this . rows ) ;
143160 // Define table properties
161+ this . shadowColumns = this . columns . filter ( ( col ) => col . skipPersist ) ;
144162 const tableProps : TableDataType = {
145- columns : columns ,
146- shadowColumns : columns . filter ( ( col ) => col . skipPersist ) ,
147163 skipReset : false ,
148164 view : this ,
149165 stateManager : this . plugin . getStateManager ( this . file ) ,
150- initialState : initialState ,
151166 } ;
152-
153167 // Render database
154168 const table = createDatabase ( tableProps ) ;
155169 this . rootContainer . render ( table ) ;
0 commit comments