@sankhyalabs/core
Advanced tools
@@ -61,3 +61,3 @@ [**@sankhyalabs/core**](../README.md) • **Docs** | ||
src/dataunit/sorting/FieldComparator.ts:26 | ||
src/dataunit/sorting/FieldComparator.ts:19 | ||
@@ -84,2 +84,2 @@ *** | ||
src/dataunit/sorting/FieldComparator.ts:16 | ||
src/dataunit/sorting/FieldComparator.ts:14 |
@@ -19,2 +19,3 @@ [**@sankhyalabs/core**](README.md) • **Docs** | ||
- [OverflowDirection](enumerations/OverflowDirection.md) | ||
- [RECORD\_DATE\_FORMAT](enumerations/RECORD_DATE_FORMAT.md) | ||
- [SelectionMode](enumerations/SelectionMode.md) | ||
@@ -31,4 +32,7 @@ - [SortMode](enumerations/SortMode.md) | ||
- [Change](classes/Change.md) | ||
- [ColumnFilterManager](classes/ColumnFilterManager.md) | ||
- [DataUnit](classes/DataUnit.md) | ||
- [DataUnitAction](classes/DataUnitAction.md) | ||
- [DataUnitInMemoryLoader](classes/DataUnitInMemoryLoader.md) | ||
- [DataUnitLoaderUtils](classes/DataUnitLoaderUtils.md) | ||
- [DataUnitStorage](classes/DataUnitStorage.md) | ||
@@ -73,2 +77,3 @@ - [DateUtils](classes/DateUtils.md) | ||
- [DUActionInterceptor](interfaces/DUActionInterceptor.md) | ||
- [DataUnitInMemoryLoaderConfig](interfaces/DataUnitInMemoryLoaderConfig.md) | ||
- [ExecutionContext](interfaces/ExecutionContext.md) | ||
@@ -86,2 +91,3 @@ - [FieldDescriptor](interfaces/FieldDescriptor.md) | ||
- [PaginationInfo](interfaces/PaginationInfo.md) | ||
- [PaginationInfoBuilderParams](interfaces/PaginationInfoBuilderParams.md) | ||
- [PromiseSyncCallback](interfaces/PromiseSyncCallback.md) | ||
@@ -88,0 +94,0 @@ - [QuickFilter](interfaces/QuickFilter.md) |
@@ -1,3 +0,3 @@ | ||
import { Record } from "../DataUnit.js"; | ||
import { FieldDescriptor } from "../metadata/UnitMetadata.js"; | ||
import { Record } from '../DataUnit.js'; | ||
import { FieldDescriptor } from '../metadata/UnitMetadata.js'; | ||
export declare class FieldComparator { | ||
@@ -4,0 +4,0 @@ static compare(field: FieldDescriptor, recordA: Record, recordB: Record, asc?: boolean): number; |
@@ -1,2 +0,2 @@ | ||
import { compareValues } from "../metadata/DataType.js"; | ||
import { compareValues } from '../metadata/DataType.js'; | ||
export class FieldComparator { | ||
@@ -10,14 +10,9 @@ static compare(field, recordA, recordB, asc = true) { | ||
const undefinedComparison = this.compareUndefined(valueA == undefined, valueB == undefined); | ||
if (undefinedComparison != undefined) { | ||
return undefinedComparison; | ||
} | ||
return compareValues(valueA, valueB, descriptor); | ||
return (undefinedComparison != undefined) ? undefinedComparison : compareValues(valueA, valueB, descriptor); | ||
} | ||
static compareUndefined(isUndefinedA, isUndefinedB) { | ||
if (!isUndefinedA && !isUndefinedB) { | ||
if (!isUndefinedA && !isUndefinedB) | ||
return; | ||
} | ||
if (isUndefinedA && isUndefinedB) { | ||
if (isUndefinedA && isUndefinedB) | ||
return 0; | ||
} | ||
return isUndefinedA ? -1 : 1; | ||
@@ -24,0 +19,0 @@ } |
@@ -48,2 +48,6 @@ import { StringUtils } from "./utils/StringUtils.js"; | ||
import { LockManager, LockManagerOperation } from "./utils/LockManager.js"; | ||
export { LockManager, LockManagerOperation, StringUtils, MaskFormatter, NumberUtils, FloatingManager, DateUtils, ArrayUtils, TimeFormatter, SkwHttpProvider, HttpProvider, RequestMetadata, AuthorizedServiceCaller, DataUnit, DataUnitStorage, Record, SavedRecord, DataType, UnitMetadata, FieldDescriptor, UserInterface, DependencyType, ChildDescriptor, ChildLink, DataUnitAction, Action, Change, Sort, Filter, ChangeOperation, DUActionInterceptor, ApplicationContext, WaitingChange, PageRequest, QuickFilter, ReadyUtil, ObjectUtils, WarningException, WaitingChangeException, ErrorException, ErrorTracking, ExecutionContext, PaginationInfo, SortingProvider, SortMode, LoadDataRequest, LoadDataResponse, SelectionInfo, SelectionMode, ElementIDUtils, IElementIDInfo, UserAgentUtils, JSUtils, VersionUtils, OnboardingUtils, PromiseSync, PromiseSyncCallback, HTMLBuilder, IRepository, IDBRepository, ILoadResult, IRepositoryIndex, FieldComparator, defaultDataLoader, KeyboardManager, SearchUtils, ServiceUtils, StorageType, OverflowWatcher, OnOverflowCallBack, OverflowDirection, OverFlowWatcherParams, OVERFLOWED_CLASS_NAME, DataUnitEventOptions, ServiceCanceledException, SilentException }; | ||
import { DataUnitInMemoryLoader } from "./dataunit/loader/dataUnitInMemoryLoader.js"; | ||
import { DataUnitLoaderUtils, PaginationInfoBuilderParams } from "./dataunit/loader/utils/dataUnitLoaderUtils.js"; | ||
import { ColumnFilterManager } from "./utils/ColumnFilterManager.js"; | ||
import { DataUnitInMemoryLoaderConfig, RECORD_DATE_FORMAT } from "./dataunit/loader/DataUnitInMemoryLoaderConfig.js"; | ||
export { LockManager, LockManagerOperation, StringUtils, MaskFormatter, NumberUtils, FloatingManager, DateUtils, ArrayUtils, TimeFormatter, SkwHttpProvider, HttpProvider, RequestMetadata, AuthorizedServiceCaller, DataUnit, DataUnitStorage, Record, SavedRecord, DataType, UnitMetadata, FieldDescriptor, UserInterface, DependencyType, ChildDescriptor, ChildLink, DataUnitAction, Action, Change, Sort, Filter, ChangeOperation, DUActionInterceptor, ApplicationContext, WaitingChange, PageRequest, QuickFilter, ReadyUtil, ObjectUtils, WarningException, WaitingChangeException, ErrorException, ErrorTracking, ExecutionContext, PaginationInfo, SortingProvider, SortMode, LoadDataRequest, LoadDataResponse, SelectionInfo, SelectionMode, ElementIDUtils, IElementIDInfo, UserAgentUtils, JSUtils, VersionUtils, OnboardingUtils, PromiseSync, PromiseSyncCallback, HTMLBuilder, IRepository, IDBRepository, ILoadResult, IRepositoryIndex, FieldComparator, defaultDataLoader, KeyboardManager, SearchUtils, ServiceUtils, StorageType, OverflowWatcher, OnOverflowCallBack, OverflowDirection, OverFlowWatcherParams, OVERFLOWED_CLASS_NAME, DataUnitEventOptions, ServiceCanceledException, SilentException, DataUnitInMemoryLoader, DataUnitLoaderUtils, PaginationInfoBuilderParams, ColumnFilterManager, DataUnitInMemoryLoaderConfig, RECORD_DATE_FORMAT }; |
@@ -42,4 +42,8 @@ import { StringUtils } from "./utils/StringUtils.js"; | ||
import { LockManager, LockManagerOperation } from "./utils/LockManager.js"; | ||
import { DataUnitInMemoryLoader } from "./dataunit/loader/dataUnitInMemoryLoader.js"; | ||
import { DataUnitLoaderUtils } from "./dataunit/loader/utils/dataUnitLoaderUtils.js"; | ||
import { ColumnFilterManager } from "./utils/ColumnFilterManager.js"; | ||
import { RECORD_DATE_FORMAT } from "./dataunit/loader/DataUnitInMemoryLoaderConfig.js"; | ||
/*Classes públicas no pacote*/ | ||
export { LockManager, LockManagerOperation, StringUtils, MaskFormatter, NumberUtils, FloatingManager, DateUtils, ArrayUtils, TimeFormatter, SkwHttpProvider, HttpProvider, RequestMetadata, AuthorizedServiceCaller, DataUnit, DataUnitStorage, DataType, UserInterface, DependencyType, DataUnitAction, Action, Change, ChangeOperation, ApplicationContext, ReadyUtil, ObjectUtils, WarningException, WaitingChangeException, ErrorException, ErrorTracking, SortMode, SelectionInfo, SelectionMode, ElementIDUtils, UserAgentUtils, JSUtils, VersionUtils, OnboardingUtils, PromiseSync, HTMLBuilder, IDBRepository, FieldComparator, defaultDataLoader, KeyboardManager, SearchUtils, ServiceUtils, StorageType, OverflowWatcher, OverflowDirection, OVERFLOWED_CLASS_NAME, ServiceCanceledException, SilentException }; | ||
export { LockManager, LockManagerOperation, StringUtils, MaskFormatter, NumberUtils, FloatingManager, DateUtils, ArrayUtils, TimeFormatter, SkwHttpProvider, HttpProvider, RequestMetadata, AuthorizedServiceCaller, DataUnit, DataUnitStorage, DataType, UserInterface, DependencyType, DataUnitAction, Action, Change, ChangeOperation, ApplicationContext, ReadyUtil, ObjectUtils, WarningException, WaitingChangeException, ErrorException, ErrorTracking, SortMode, SelectionInfo, SelectionMode, ElementIDUtils, UserAgentUtils, JSUtils, VersionUtils, OnboardingUtils, PromiseSync, HTMLBuilder, IDBRepository, FieldComparator, defaultDataLoader, KeyboardManager, SearchUtils, ServiceUtils, StorageType, OverflowWatcher, OverflowDirection, OVERFLOWED_CLASS_NAME, ServiceCanceledException, SilentException, DataUnitInMemoryLoader, DataUnitLoaderUtils, ColumnFilterManager, RECORD_DATE_FORMAT }; | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "@sankhyalabs/core", | ||
"version": "5.20.0-dev.69", | ||
"version": "5.20.0-dev.70", | ||
"description": "Modulo core JavaScript da Sankhya.", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
@@ -1,38 +0,24 @@ | ||
import { Record } from "../DataUnit.js"; | ||
import { compareValues } from "../metadata/DataType.js"; | ||
import { FieldDescriptor } from "../metadata/UnitMetadata.js"; | ||
import { Record } from '../DataUnit.js'; | ||
import { compareValues } from '../metadata/DataType.js'; | ||
import { FieldDescriptor } from '../metadata/UnitMetadata.js'; | ||
export class FieldComparator{ | ||
export class FieldComparator { | ||
public static compare(field: FieldDescriptor, recordA: Record, recordB: Record, asc: boolean = true): number{ | ||
public static compare(field: FieldDescriptor, recordA: Record, recordB: Record, asc: boolean = true): number { | ||
const valueA = (asc ? recordA : recordB)[field.name]; | ||
const valueB = (asc ? recordB : recordA)[field.name]; | ||
const valueA = (asc ? recordA : recordB)[field.name]; | ||
const valueB = (asc ? recordB : recordA)[field.name]; | ||
return FieldComparator.compareValues(field, valueA, valueB); | ||
} | ||
return FieldComparator.compareValues(field, valueA, valueB); | ||
} | ||
public static compareValues(descriptor: FieldDescriptor, valueA: any, valueB: any): number{ | ||
const undefinedComparison = this.compareUndefined(valueA == undefined, valueB == undefined); | ||
if(undefinedComparison != undefined){ | ||
return undefinedComparison; | ||
} | ||
public static compareValues(descriptor: FieldDescriptor, valueA: any, valueB: any): number { | ||
const undefinedComparison = this.compareUndefined(valueA == undefined, valueB == undefined); | ||
return (undefinedComparison != undefined) ? undefinedComparison : compareValues(valueA, valueB, descriptor); | ||
} | ||
return compareValues(valueA, valueB, descriptor) | ||
} | ||
public static compareUndefined(isUndefinedA: boolean, isUndefinedB: boolean): number | undefined { | ||
if(!isUndefinedA && !isUndefinedB){ | ||
return; | ||
} | ||
if(isUndefinedA && isUndefinedB){ | ||
return 0; | ||
} | ||
return isUndefinedA ? -1 : 1; | ||
} | ||
public static compareUndefined(isUndefinedA: boolean, isUndefinedB: boolean): number | undefined { | ||
if (!isUndefinedA && !isUndefinedB) return; | ||
if (isUndefinedA && isUndefinedB) return 0; | ||
return isUndefinedA ? -1 : 1; | ||
} | ||
} |
@@ -48,2 +48,6 @@ import { StringUtils } from "./utils/StringUtils.js"; | ||
import {LockManager, LockManagerOperation} from "./utils/LockManager.js"; | ||
import { DataUnitInMemoryLoader } from "./dataunit/loader/dataUnitInMemoryLoader.js"; | ||
import { DataUnitLoaderUtils, PaginationInfoBuilderParams } from "./dataunit/loader/utils/dataUnitLoaderUtils.js"; | ||
import { ColumnFilterManager } from "./utils/ColumnFilterManager.js"; | ||
import { DataUnitInMemoryLoaderConfig, RECORD_DATE_FORMAT } from "./dataunit/loader/DataUnitInMemoryLoaderConfig.js"; | ||
@@ -127,3 +131,9 @@ /*Classes públicas no pacote*/ | ||
ServiceCanceledException, | ||
SilentException | ||
SilentException, | ||
DataUnitInMemoryLoader, | ||
DataUnitLoaderUtils, | ||
PaginationInfoBuilderParams, | ||
ColumnFilterManager, | ||
DataUnitInMemoryLoaderConfig, | ||
RECORD_DATE_FORMAT | ||
}; |
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
1806510
4.48%459
5.76%25198
4.32%