@sankhyalabs/core
Advanced tools
Comparing version 1.0.50 to 1.0.51
@@ -33,2 +33,3 @@ import { UnitMetadata, FieldDescriptor, SortingProvider, FilterProvider, Sort, Filter } from "./metadata/UnitMetadata.js"; | ||
get records(): Array<Record>; | ||
getModifiedRecords(): Array<Record>; | ||
getField(fieldName: string): FieldDescriptor | undefined; | ||
@@ -35,0 +36,0 @@ addRecord(): void; |
@@ -20,3 +20,3 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
import { AddedRecordsReducer, prepareAddedRecordId } from "./state/slice/AddedRecordsSlice.js"; | ||
import { CurrentRecordsReducer, getCurrentRecords, getFieldValue } from "./state/slice/CurrentRecordsSlice.js"; | ||
import { CurrentRecordsReducer, getCurrentRecords, getFieldValue, getModifiedRecords } from "./state/slice/CurrentRecordsSlice.js"; | ||
import { getWaitingChanges, WaitingChangesReducer } from "./state/slice/WaitingChangesSlice.js"; | ||
@@ -174,2 +174,6 @@ export default class DataUnit { | ||
} | ||
getModifiedRecords() { | ||
const modified = getModifiedRecords(this._stateManager); | ||
return modified || []; | ||
} | ||
getField(fieldName) { | ||
@@ -176,0 +180,0 @@ return getField(this._stateManager, fieldName); |
@@ -33,2 +33,5 @@ export var DataType; | ||
} | ||
else if (dataType === DataType.DATE) { | ||
return value.toISOString(); | ||
} | ||
else { | ||
@@ -35,0 +38,0 @@ return value.toString(); |
@@ -31,2 +31,3 @@ import { DataType } from "./DataType.js"; | ||
name: string; | ||
dataType: DataType; | ||
value: any; | ||
@@ -33,0 +34,0 @@ } |
@@ -10,3 +10,4 @@ import { ActionReducer } from "../StateManager.js"; | ||
export declare const getCurrentRecords: (stateManager: StateManager) => Map<string, Record>; | ||
export declare const getModifiedRecords: (stateManager: StateManager) => Array<Record> | undefined; | ||
export declare const getFieldValue: (stateManager: StateManager, fieldName: string) => any; | ||
export {}; |
@@ -35,2 +35,18 @@ import { getRecords } from "./RecordsSlice.js"; | ||
}; | ||
export const getModifiedRecords = (stateManager) => { | ||
const currentRecords = getCurrentRecords(stateManager); | ||
if (!currentRecords) { | ||
return undefined; | ||
} | ||
const changes = getChanges(stateManager); | ||
const added = getAddedRecords(stateManager); | ||
if (!changes && !added) { | ||
return undefined; | ||
} | ||
let modifiedIDs = changes ? Array.from(changes.keys()) : []; | ||
if (added) { | ||
modifiedIDs = modifiedIDs.concat(added.map(r => r.__record__id__)); | ||
} | ||
return Array.from(currentRecords.values()).filter(r => modifiedIDs.includes(r.__record__id__)); | ||
}; | ||
export const getFieldValue = (stateManager, fieldName) => { | ||
@@ -37,0 +53,0 @@ const selection = getSelection(stateManager); |
{ | ||
"name": "@sankhyalabs/core", | ||
"version": "1.0.50", | ||
"version": "1.0.51", | ||
"description": "Modulo core JavaScript da Sankhya.", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
@@ -14,3 +14,3 @@ import { UnitMetadata, FieldDescriptor, SortingProvider, FilterProvider, Sort, Filter } from "./metadata/UnitMetadata.js"; | ||
import { AddedRecordsReducer, prepareAddedRecordId } from "./state/slice/AddedRecordsSlice.js"; | ||
import { CurrentRecordsReducer, getCurrentRecords, getFieldValue } from "./state/slice/CurrentRecordsSlice.js"; | ||
import { CurrentRecordsReducer, getCurrentRecords, getFieldValue, getModifiedRecords } from "./state/slice/CurrentRecordsSlice.js"; | ||
import { getWaitingChanges, WaitingChangesReducer } from "./state/slice/WaitingChangesSlice.js"; | ||
@@ -202,2 +202,7 @@ | ||
public getModifiedRecords(): Array<Record> { | ||
const modified = getModifiedRecords(this._stateManager); | ||
return modified || []; | ||
} | ||
public getField(fieldName: string): FieldDescriptor | undefined { | ||
@@ -204,0 +209,0 @@ return getField(this._stateManager, fieldName); |
@@ -35,2 +35,4 @@ export enum DataType{ | ||
return JSON.stringify(value); | ||
} else if(dataType === DataType.DATE){ | ||
return (value as Date).toISOString(); | ||
} else { | ||
@@ -37,0 +39,0 @@ return value.toString(); |
@@ -36,2 +36,3 @@ import { DataType } from "./DataType.js"; | ||
name: string | ||
dataType: DataType | ||
value: any | ||
@@ -38,0 +39,0 @@ } |
@@ -44,2 +44,24 @@ | ||
export const getModifiedRecords = (stateManager: StateManager): Array<Record> | undefined => { | ||
const currentRecords = getCurrentRecords(stateManager); | ||
if(!currentRecords){ | ||
return undefined | ||
} | ||
const changes = getChanges(stateManager); | ||
const added = getAddedRecords(stateManager); | ||
if(!changes && !added){ | ||
return undefined | ||
} | ||
let modifiedIDs = changes ? Array.from(changes.keys()) : []; | ||
if(added){ | ||
modifiedIDs = modifiedIDs.concat(added.map(r=>r.__record__id__)); | ||
} | ||
return Array.from(currentRecords.values()).filter(r=>modifiedIDs.includes(r.__record__id__)); | ||
} | ||
export const getFieldValue = (stateManager: StateManager, fieldName: string): any => { | ||
@@ -46,0 +68,0 @@ const selection = getSelection(stateManager); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
312426
5999