Full Pocketbase Integration
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
import { createSignal } from 'solid-js';
|
||||
import { createStore } from 'solid-js/store';
|
||||
import type { ExtractedItem } from '../utils/csv-parser';
|
||||
import type { TemplateItem, Scope, SubScope, EstimateItem, JobInfo } from '../types';
|
||||
|
||||
// Raw CSV Data
|
||||
const [activeItems, setActiveItems] = createSignal<ExtractedItem[]>([]);
|
||||
const [activeIgnoredLines, setActiveIgnoredLines] = createSignal<string[][]>([]);
|
||||
|
||||
// Estimate Metadata
|
||||
const [activeEstimateId, setActiveEstimateId] = createSignal<string | null>(null);
|
||||
const [activeEstimateName, setActiveEstimateName] = createSignal('');
|
||||
|
||||
// Estimate Builder State
|
||||
const [scopes, setScopes] = createStore<Scope[]>([]);
|
||||
const [subScopes, setSubScopes] = createStore<SubScope[]>([]);
|
||||
const [estimateItems, setEstimateItems] = createStore<EstimateItem[]>([]);
|
||||
|
||||
const [clientInfo, setClientInfo] = createStore({
|
||||
name: '',
|
||||
address: '',
|
||||
phone: '',
|
||||
fax: ''
|
||||
});
|
||||
|
||||
const [jobInfo, setJobInfo] = createStore<JobInfo>({
|
||||
number: '',
|
||||
name: '',
|
||||
address: '',
|
||||
workOrder: ''
|
||||
});
|
||||
|
||||
const [generalEstimateNotes, setGeneralEstimateNotes] = createSignal('');
|
||||
const [generalPreNotes, setGeneralPreNotes] = createSignal('');
|
||||
|
||||
// Template Creator State
|
||||
const [activeTemplateName, setActiveTemplateName] = createSignal('');
|
||||
const [activeTemplateItems, setActiveTemplateItems] = createSignal<TemplateItem[]>([]);
|
||||
|
||||
export const appStore = {
|
||||
// Raw CSV Extraction
|
||||
items: activeItems,
|
||||
setItems: setActiveItems,
|
||||
ignoredLines: activeIgnoredLines,
|
||||
setIgnoredLines: setActiveIgnoredLines,
|
||||
|
||||
// Estimate Meta
|
||||
estimateId: activeEstimateId,
|
||||
setEstimateId: setActiveEstimateId,
|
||||
estimateName: activeEstimateName,
|
||||
setEstimateName: setActiveEstimateName,
|
||||
|
||||
// Estimate Builder
|
||||
scopes, setScopes,
|
||||
subScopes, setSubScopes,
|
||||
estimateItems, setEstimateItems,
|
||||
clientInfo, setClientInfo,
|
||||
jobInfo, setJobInfo,
|
||||
generalEstimateNotes, setGeneralEstimateNotes,
|
||||
generalPreNotes, setGeneralPreNotes,
|
||||
|
||||
// Templates
|
||||
templateName: activeTemplateName,
|
||||
setTemplateName: setActiveTemplateName,
|
||||
templateItems: activeTemplateItems,
|
||||
setTemplateItems: setActiveTemplateItems
|
||||
};
|
||||
Reference in New Issue
Block a user