@sankhyalabs/core 0.0.0-bugfix-dev-KB-6165.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/.nojekyll +1 -0
- package/.docs/README.md +63 -0
- package/.docs/classes/ApplicationContext.md +90 -0
- package/.docs/classes/ArrayUtils.md +99 -0
- package/.docs/classes/AuthorizedServiceCaller.md +76 -0
- package/.docs/classes/Change.md +190 -0
- package/.docs/classes/DataUnit.md +2453 -0
- package/.docs/classes/DataUnitAction.md +96 -0
- package/.docs/classes/DataUnitStorage.md +116 -0
- package/.docs/classes/DateUtils.md +327 -0
- package/.docs/classes/ElementIDUtils.md +308 -0
- package/.docs/classes/ErrorException.md +214 -0
- package/.docs/classes/ErrorTracking.md +62 -0
- package/.docs/classes/FloatingManager.md +530 -0
- package/.docs/classes/HTMLBuilder.md +45 -0
- package/.docs/classes/HttpProvider.md +96 -0
- package/.docs/classes/JSUtils.md +115 -0
- package/.docs/classes/MaskFormatter-1.md +347 -0
- package/.docs/classes/NumberUtils.md +335 -0
- package/.docs/classes/ObjectUtils.md +160 -0
- package/.docs/classes/OnboardingUtils.md +126 -0
- package/.docs/classes/PromiseSync.md +91 -0
- package/.docs/classes/ReadyUtil.md +115 -0
- package/.docs/classes/RequestMetadata.md +84 -0
- package/.docs/classes/SelectionInfo.md +168 -0
- package/.docs/classes/SkwHttpProvider.md +109 -0
- package/.docs/classes/StringUtils.md +562 -0
- package/.docs/classes/TimeFormatter.md +98 -0
- package/.docs/classes/UserAgentUtils.md +58 -0
- package/.docs/classes/VersionUtils.md +42 -0
- package/.docs/classes/WaitingChangeException.md +200 -0
- package/.docs/classes/WarningException.md +214 -0
- package/.docs/enums/Action.md +294 -0
- package/.docs/enums/ChangeOperation.md +52 -0
- package/.docs/enums/DataType.md +63 -0
- package/.docs/enums/DependencyType.md +41 -0
- package/.docs/enums/SelectionMode.md +30 -0
- package/.docs/enums/SortMode.md +30 -0
- package/.docs/enums/UserInterface.md +195 -0
- package/.docs/interfaces/ChildDescriptor.md +41 -0
- package/.docs/interfaces/ChildLink.md +30 -0
- package/.docs/interfaces/DUActionInterceptor.md +29 -0
- package/.docs/interfaces/ExecutionContext.md +58 -0
- package/.docs/interfaces/FieldDescriptor.md +140 -0
- package/.docs/interfaces/Filter.md +41 -0
- package/.docs/interfaces/IElementIDInfo.md +30 -0
- package/.docs/interfaces/LoadDataRequest.md +101 -0
- package/.docs/interfaces/LoadDataResponse.md +36 -0
- package/.docs/interfaces/PageRequest.md +41 -0
- package/.docs/interfaces/PaginationInfo.md +75 -0
- package/.docs/interfaces/PromiseSyncCallback.md +39 -0
- package/.docs/interfaces/QuickFilter.md +41 -0
- package/.docs/interfaces/Record.md +62 -0
- package/.docs/interfaces/SavedRecord.md +85 -0
- package/.docs/interfaces/Sort.md +41 -0
- package/.docs/interfaces/SortingProvider.md +29 -0
- package/.docs/interfaces/UnitMetadata.md +52 -0
- package/.docs/interfaces/WaitingChange.md +41 -0
- package/.docs/modules/MaskFormatter.md +37 -0
- package/.docs/modules.md +74 -0
- package/.docs/package.json +15 -0
- package/.eslintignore +2 -0
- package/.eslintrc.cjs +35 -0
- package/.husky/commit-msg +4 -0
- package/.releaserc +58 -0
- package/README.md +62 -0
- package/commitlint.config.cjs +14 -0
- package/dist/async/PromiseSync.d.ts +29 -0
- package/dist/async/PromiseSync.js +31 -0
- package/dist/async/PromiseSync.js.map +1 -0
- package/dist/dataunit/DataUnit.d.ts +924 -0
- package/dist/dataunit/DataUnit.js +1621 -0
- package/dist/dataunit/DataUnit.js.map +1 -0
- package/dist/dataunit/DataUnitStorage.d.ts +24 -0
- package/dist/dataunit/DataUnitStorage.js +39 -0
- package/dist/dataunit/DataUnitStorage.js.map +1 -0
- package/dist/dataunit/formatting/PrettyFormatter.d.ts +2 -0
- package/dist/dataunit/formatting/PrettyFormatter.js +94 -0
- package/dist/dataunit/formatting/PrettyFormatter.js.map +1 -0
- package/dist/dataunit/loading/LoadDataRequest.d.ts +19 -0
- package/dist/dataunit/loading/LoadDataRequest.js +2 -0
- package/dist/dataunit/loading/LoadDataRequest.js.map +1 -0
- package/dist/dataunit/loading/LoadDataResponse.d.ts +9 -0
- package/dist/dataunit/loading/LoadDataResponse.js +2 -0
- package/dist/dataunit/loading/LoadDataResponse.js.map +1 -0
- package/dist/dataunit/loading/PaginationInfo.d.ts +13 -0
- package/dist/dataunit/loading/PaginationInfo.js +2 -0
- package/dist/dataunit/loading/PaginationInfo.js.map +1 -0
- package/dist/dataunit/metadata/DataType.d.ts +54 -0
- package/dist/dataunit/metadata/DataType.js +124 -0
- package/dist/dataunit/metadata/DataType.js.map +1 -0
- package/dist/dataunit/metadata/UnitMetadata.d.ts +88 -0
- package/dist/dataunit/metadata/UnitMetadata.js +36 -0
- package/dist/dataunit/metadata/UnitMetadata.js.map +1 -0
- package/dist/dataunit/state/HistReducer.d.ts +10 -0
- package/dist/dataunit/state/HistReducer.js +28 -0
- package/dist/dataunit/state/HistReducer.js.map +1 -0
- package/dist/dataunit/state/StateManager.d.ts +57 -0
- package/dist/dataunit/state/StateManager.js +97 -0
- package/dist/dataunit/state/StateManager.js.map +1 -0
- package/dist/dataunit/state/action/DataUnitAction.d.ts +40 -0
- package/dist/dataunit/state/action/DataUnitAction.js +42 -0
- package/dist/dataunit/state/action/DataUnitAction.js.map +1 -0
- package/dist/dataunit/state/slice/AddedRecordsSlice.d.ts +12 -0
- package/dist/dataunit/state/slice/AddedRecordsSlice.js +30 -0
- package/dist/dataunit/state/slice/AddedRecordsSlice.js.map +1 -0
- package/dist/dataunit/state/slice/ChangesSlice.d.ts +13 -0
- package/dist/dataunit/state/slice/ChangesSlice.js +105 -0
- package/dist/dataunit/state/slice/ChangesSlice.js.map +1 -0
- package/dist/dataunit/state/slice/InvalidFieldsSlice.d.ts +10 -0
- package/dist/dataunit/state/slice/InvalidFieldsSlice.js +66 -0
- package/dist/dataunit/state/slice/InvalidFieldsSlice.js.map +1 -0
- package/dist/dataunit/state/slice/LoadingControlSlice.d.ts +19 -0
- package/dist/dataunit/state/slice/LoadingControlSlice.js +45 -0
- package/dist/dataunit/state/slice/LoadingControlSlice.js.map +1 -0
- package/dist/dataunit/state/slice/RecordsSlice.d.ts +11 -0
- package/dist/dataunit/state/slice/RecordsSlice.js +62 -0
- package/dist/dataunit/state/slice/RecordsSlice.js.map +1 -0
- package/dist/dataunit/state/slice/RemovedRecordsSlice.d.ts +9 -0
- package/dist/dataunit/state/slice/RemovedRecordsSlice.js +25 -0
- package/dist/dataunit/state/slice/RemovedRecordsSlice.js.map +1 -0
- package/dist/dataunit/state/slice/SelectionSlice.d.ts +19 -0
- package/dist/dataunit/state/slice/SelectionSlice.js +155 -0
- package/dist/dataunit/state/slice/SelectionSlice.js.map +1 -0
- package/dist/dataunit/state/slice/SnapshotSlice.d.ts +19 -0
- package/dist/dataunit/state/slice/SnapshotSlice.js +106 -0
- package/dist/dataunit/state/slice/SnapshotSlice.js.map +1 -0
- package/dist/dataunit/state/slice/UnitMetadataSlice.d.ts +11 -0
- package/dist/dataunit/state/slice/UnitMetadataSlice.js +21 -0
- package/dist/dataunit/state/slice/UnitMetadataSlice.js.map +1 -0
- package/dist/dataunit/state/slice/WaitingChangesSlice.d.ts +12 -0
- package/dist/dataunit/state/slice/WaitingChangesSlice.js +56 -0
- package/dist/dataunit/state/slice/WaitingChangesSlice.js.map +1 -0
- package/dist/exceptions/ErrorException.d.ts +14 -0
- package/dist/exceptions/ErrorException.js +13 -0
- package/dist/exceptions/ErrorException.js.map +1 -0
- package/dist/exceptions/WaitingChangeException.d.ts +12 -0
- package/dist/exceptions/WaitingChangeException.js +12 -0
- package/dist/exceptions/WaitingChangeException.js.map +1 -0
- package/dist/exceptions/WarningException.d.ts +14 -0
- package/dist/exceptions/WarningException.js +13 -0
- package/dist/exceptions/WarningException.js.map +1 -0
- package/dist/html/HTMLBuilder.d.ts +3 -0
- package/dist/html/HTMLBuilder.js +9 -0
- package/dist/html/HTMLBuilder.js.map +1 -0
- package/dist/http/AuthorizedServiceCaller.d.ts +11 -0
- package/dist/http/AuthorizedServiceCaller.js +54 -0
- package/dist/http/AuthorizedServiceCaller.js.map +1 -0
- package/dist/http/HttpProvider.d.ts +25 -0
- package/dist/http/HttpProvider.js +74 -0
- package/dist/http/HttpProvider.js.map +1 -0
- package/dist/http/RequestMetadata.d.ts +30 -0
- package/dist/http/RequestMetadata.js +25 -0
- package/dist/http/RequestMetadata.js.map +1 -0
- package/dist/http/SkwHttpProvider.d.ts +9 -0
- package/dist/http/SkwHttpProvider.js +67 -0
- package/dist/http/SkwHttpProvider.js.map +1 -0
- package/dist/index.d.ts +34 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -0
- package/dist/traking/ErrorTraking.d.ts +19 -0
- package/dist/traking/ErrorTraking.js +34 -0
- package/dist/traking/ErrorTraking.js.map +1 -0
- package/dist/ui/FloatingManager.d.ts +164 -0
- package/dist/ui/FloatingManager.js +358 -0
- package/dist/ui/FloatingManager.js.map +1 -0
- package/dist/utils/ApplicationContext.d.ts +26 -0
- package/dist/utils/ApplicationContext.js +38 -0
- package/dist/utils/ApplicationContext.js.map +1 -0
- package/dist/utils/ArrayUtils.d.ts +29 -0
- package/dist/utils/ArrayUtils.js +57 -0
- package/dist/utils/ArrayUtils.js.map +1 -0
- package/dist/utils/CriteriaModel.d.ts +107 -0
- package/dist/utils/CriteriaModel.js +172 -0
- package/dist/utils/CriteriaModel.js.map +1 -0
- package/dist/utils/CriteriaParameter.d.ts +69 -0
- package/dist/utils/CriteriaParameter.js +83 -0
- package/dist/utils/CriteriaParameter.js.map +1 -0
- package/dist/utils/DateUtils.d.ts +97 -0
- package/dist/utils/DateUtils.js +171 -0
- package/dist/utils/DateUtils.js.map +1 -0
- package/dist/utils/ElementIDUtils.d.ts +72 -0
- package/dist/utils/ElementIDUtils.js +161 -0
- package/dist/utils/ElementIDUtils.js.map +1 -0
- package/dist/utils/JSUtils.d.ts +36 -0
- package/dist/utils/JSUtils.js +66 -0
- package/dist/utils/JSUtils.js.map +1 -0
- package/dist/utils/MaskFormatter.d.ts +148 -0
- package/dist/utils/MaskFormatter.js +356 -0
- package/dist/utils/MaskFormatter.js.map +1 -0
- package/dist/utils/NumberUtils.d.ts +127 -0
- package/dist/utils/NumberUtils.js +245 -0
- package/dist/utils/NumberUtils.js.map +1 -0
- package/dist/utils/ObjectUtils.d.ts +47 -0
- package/dist/utils/ObjectUtils.js +68 -0
- package/dist/utils/ObjectUtils.js.map +1 -0
- package/dist/utils/OnboardingUtils.d.ts +17 -0
- package/dist/utils/OnboardingUtils.js +41 -0
- package/dist/utils/OnboardingUtils.js.map +1 -0
- package/dist/utils/ReadyUtil.d.ts +24 -0
- package/dist/utils/ReadyUtil.js +41 -0
- package/dist/utils/ReadyUtil.js.map +1 -0
- package/dist/utils/StringUtils.d.ts +167 -0
- package/dist/utils/StringUtils.js +328 -0
- package/dist/utils/StringUtils.js.map +1 -0
- package/dist/utils/TimeFormatter.d.ts +33 -0
- package/dist/utils/TimeFormatter.js +98 -0
- package/dist/utils/TimeFormatter.js.map +1 -0
- package/dist/utils/UserAgentUtils/index.d.ts +15 -0
- package/dist/utils/UserAgentUtils/index.js +48 -0
- package/dist/utils/UserAgentUtils/index.js.map +1 -0
- package/dist/utils/UserAgentUtils/navigatorAgentList.d.ts +17 -0
- package/dist/utils/UserAgentUtils/navigatorAgentList.js +40 -0
- package/dist/utils/UserAgentUtils/navigatorAgentList.js.map +1 -0
- package/dist/utils/VersionUtils.d.ts +7 -0
- package/dist/utils/VersionUtils.js +31 -0
- package/dist/utils/VersionUtils.js.map +1 -0
- package/jest.config.ts +17 -0
- package/mock/http/XMLHttpRequest-mock.js +26 -0
- package/package.json +52 -0
- package/scripts/runlink.bat +1 -0
- package/scripts/runlink.sh +1 -0
- package/src/async/PromiseSync.ts +49 -0
- package/src/dataunit/DataUnit.ts +1835 -0
- package/src/dataunit/DataUnitStorage.ts +43 -0
- package/src/dataunit/formatting/PrettyFormatter.ts +113 -0
- package/src/dataunit/loading/LoadDataRequest.ts +26 -0
- package/src/dataunit/loading/LoadDataResponse.ts +11 -0
- package/src/dataunit/loading/PaginationInfo.ts +18 -0
- package/src/dataunit/metadata/DataType.ts +127 -0
- package/src/dataunit/metadata/UnitMetadata.ts +102 -0
- package/src/dataunit/state/HistReducer.ts +34 -0
- package/src/dataunit/state/StateManager.ts +142 -0
- package/src/dataunit/state/action/DataUnitAction.ts +67 -0
- package/src/dataunit/state/slice/AddedRecordsSlice.ts +48 -0
- package/src/dataunit/state/slice/ChangesSlice.ts +125 -0
- package/src/dataunit/state/slice/InvalidFieldsSlice.ts +85 -0
- package/src/dataunit/state/slice/LoadingControlSlice.ts +60 -0
- package/src/dataunit/state/slice/RecordsSlice.ts +74 -0
- package/src/dataunit/state/slice/RemovedRecordsSlice.ts +30 -0
- package/src/dataunit/state/slice/SelectionSlice.ts +193 -0
- package/src/dataunit/state/slice/SnapshotSlice.ts +139 -0
- package/src/dataunit/state/slice/UnitMetadataSlice.ts +30 -0
- package/src/dataunit/state/slice/WaitingChangesSlice.ts +74 -0
- package/src/exceptions/ErrorException.ts +25 -0
- package/src/exceptions/WaitingChangeException.ts +21 -0
- package/src/exceptions/WarningException.ts +26 -0
- package/src/html/HTMLBuilder.ts +8 -0
- package/src/http/AuthorizedServiceCaller.ts +58 -0
- package/src/http/HttpProvider.ts +94 -0
- package/src/http/RequestMetadata.ts +42 -0
- package/src/http/SkwHttpProvider.ts +78 -0
- package/src/index.ts +93 -0
- package/src/traking/ErrorTraking.ts +37 -0
- package/src/ui/FloatingManager.ts +417 -0
- package/src/utils/ApplicationContext.ts +42 -0
- package/src/utils/ArrayUtils.ts +61 -0
- package/src/utils/CriteriaModel.ts +205 -0
- package/src/utils/CriteriaParameter.ts +108 -0
- package/src/utils/DateUtils.ts +195 -0
- package/src/utils/ElementIDUtils.ts +184 -0
- package/src/utils/JSUtils.ts +69 -0
- package/src/utils/MaskFormatter.ts +407 -0
- package/src/utils/NumberUtils.ts +283 -0
- package/src/utils/ObjectUtils.ts +76 -0
- package/src/utils/OnboardingUtils.ts +46 -0
- package/src/utils/ReadyUtil.ts +45 -0
- package/src/utils/StringUtils.ts +359 -0
- package/src/utils/TimeFormatter.ts +98 -0
- package/src/utils/UserAgentUtils/index.ts +62 -0
- package/src/utils/UserAgentUtils/navigatorAgentList.ts +39 -0
- package/src/utils/VersionUtils.ts +37 -0
- package/test/http/HttpProvider.spec.ts +35 -0
- package/test/http/SkwHttpProvider.ts.spec.ts +34 -0
- package/test/util/CriteriaModel.spec.ts +232 -0
- package/test/util/CriteriaParameter.spec.ts +52 -0
- package/test/util/DataUnitStorage.spec.ts +63 -0
- package/test/util/ElementIDUtils.spec.ts +272 -0
- package/test/util/MaskFormatter.spec.ts +138 -0
- package/test/util/NumberUtils.spec.ts +182 -0
- package/test/util/StringUtils.spec.ts +51 -0
- package/test/util/TimeFormatter.spec.ts +26 -0
- package/tsconfig.json +16 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { StringUtils } from "./StringUtils.js";
|
|
2
|
+
import { NumberUtils } from './NumberUtils.js';
|
|
3
|
+
/**
|
|
4
|
+
* `ArrayUtils`: Utilitário com a responsabilidade de manipular Arrays.
|
|
5
|
+
*/
|
|
6
|
+
export default class ArrayUtils {
|
|
7
|
+
/**
|
|
8
|
+
* Filtra um array a partir de um critério textual.
|
|
9
|
+
*
|
|
10
|
+
* @param argument - Texto a ser usado no filtro.
|
|
11
|
+
* @param originalArray - Array no formato original.
|
|
12
|
+
* @param alphabeticalSorting - Determina se o resultado deve ser ordenado ou mantido na ordem original. Por padrão ordena.
|
|
13
|
+
* @param fieldName - Caso o objeto deva ser filtrado por um campo diferente de "label", pode-se usar esse parâmetro.
|
|
14
|
+
* @returns - Um array filtrado e ordenado conforme necessidade..
|
|
15
|
+
*/
|
|
16
|
+
static applyStringFilter(argument, originalArray, alphabeticalSorting = true, fieldName = "label") {
|
|
17
|
+
if (!argument) {
|
|
18
|
+
return originalArray;
|
|
19
|
+
}
|
|
20
|
+
const normalizedArgument = ArrayUtils.normalizeSearchString(argument);
|
|
21
|
+
const filteredArray = originalArray.filter(item => {
|
|
22
|
+
const itemValue = ArrayUtils.normalizeSearchString(item[fieldName]);
|
|
23
|
+
return itemValue.includes(normalizedArgument);
|
|
24
|
+
});
|
|
25
|
+
return alphabeticalSorting ? ArrayUtils.sortAlphabetically(filteredArray, fieldName) : filteredArray;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Converte texto para caixa alta e substitui caracteres acentuados.
|
|
29
|
+
*
|
|
30
|
+
* @param original - Texto a ser convertido.
|
|
31
|
+
* @returns - Texto com as letras acentuadas sem os acentos e em caixa alta.
|
|
32
|
+
*/
|
|
33
|
+
static normalizeSearchString(original) {
|
|
34
|
+
return StringUtils.replaceAccentuatedCharsKeepSymbols(original.toUpperCase());
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Ordena valores de um array alfabeticamente.
|
|
38
|
+
*
|
|
39
|
+
* @param originalArray - Array a ser ordenado.
|
|
40
|
+
* @returns - Array ordenado alfabeticamente..
|
|
41
|
+
*/
|
|
42
|
+
static sortAlphabetically(originalArray, fieldName = "label") {
|
|
43
|
+
return originalArray.sort((fieldA, fieldB) => {
|
|
44
|
+
const valueStringA = fieldA[fieldName];
|
|
45
|
+
const valueStringB = fieldB[fieldName];
|
|
46
|
+
const valueIntA = NumberUtils.stringToNumber(valueStringA);
|
|
47
|
+
const valueIntB = NumberUtils.stringToNumber(valueStringB);
|
|
48
|
+
if (isNaN(valueIntA) || isNaN(valueIntB)) {
|
|
49
|
+
return StringUtils.compare(valueStringA, valueStringB);
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
return NumberUtils.compare(valueIntA, valueIntB);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=ArrayUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArrayUtils.js","sourceRoot":"","sources":["../../src/utils/ArrayUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAU;IAC3B;;;;;;;;OAQG;IACH,MAAM,CAAC,iBAAiB,CAAC,QAAgB,EAAE,aAAyB,EAAE,sBAA+B,IAAI,EAAE,YAAoB,OAAO;QACnI,IAAG,CAAC,QAAQ,EAAC;YACR,OAAO,aAAa,CAAC;SACxB;QACD,MAAM,kBAAkB,GAAG,UAAU,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC9C,MAAM,SAAS,GAAW,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5E,OAAO,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,OAAO,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IACzG,CAAC;IAED;;;;;OAKG;IACK,MAAM,CAAC,qBAAqB,CAAC,QAAe;QAChD,OAAO,WAAW,CAAC,kCAAkC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CAAC,aAAyB,EAAE,YAAoB,OAAO;QAC5E,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YAE3C,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;YAEvC,MAAM,SAAS,GAAG,WAAW,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,WAAW,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAE3D,IAAG,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,EAAC;gBACtC,OAAO,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;aACvD;iBAAM;gBACL,OAAO,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;aAClD;QACH,CAAC,CAAC,CAAC;IACP,CAAC;CACJ"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { CriteriaParameter, InputCriteria } from './CriteriaParameter.js';
|
|
2
|
+
interface OutputJSON {
|
|
3
|
+
expression: string | undefined;
|
|
4
|
+
parameters: Array<InputCriteria>;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* `CriteriaParameter`: Utilizado para validar e manipular os critérios da requisição.
|
|
8
|
+
*
|
|
9
|
+
*/
|
|
10
|
+
export declare class Criteria {
|
|
11
|
+
private _expression;
|
|
12
|
+
private _parameters;
|
|
13
|
+
constructor(exp?: string, params?: Array<CriteriaParameter>);
|
|
14
|
+
/**
|
|
15
|
+
* @ngdoc
|
|
16
|
+
* @Setter_______________
|
|
17
|
+
* @name sankhyalabs.core.src:Criteria#parameters
|
|
18
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
19
|
+
* @description Setter para "parameters". Trata-se de uma Array de parametros da classe Criteria.
|
|
20
|
+
* @param {Array<CriteriaParameter>} [parameters] Array de parametros da classe Criteria.
|
|
21
|
+
*/
|
|
22
|
+
set parameters(parameters: Array<CriteriaParameter>);
|
|
23
|
+
/**
|
|
24
|
+
* @ngdoc
|
|
25
|
+
* @Getter_______________
|
|
26
|
+
* @name sankhyalabs.core.src:Criteria#parameters
|
|
27
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
28
|
+
* @description Getter para parameters
|
|
29
|
+
* @returns {Array<CriteriaParameter>}
|
|
30
|
+
*/
|
|
31
|
+
get parameters(): Array<CriteriaParameter>;
|
|
32
|
+
/**
|
|
33
|
+
* @ngdoc
|
|
34
|
+
* @Setter_______________
|
|
35
|
+
* @name sankhyalabs.core.src:Criteria#expression
|
|
36
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
37
|
+
* @description Setter para "expression". Trata-se do expressão da classe Criteria.
|
|
38
|
+
* @param {string} [expression] Expressão da classe Criteria.
|
|
39
|
+
*/
|
|
40
|
+
set expression(expression: string | undefined);
|
|
41
|
+
/**
|
|
42
|
+
* @ngdoc
|
|
43
|
+
* @Getter_______________
|
|
44
|
+
* @name sankhyalabs.core.src:Criteria#expression
|
|
45
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
46
|
+
* @description Getter para expression
|
|
47
|
+
* @returns {string} expression em formato string.
|
|
48
|
+
*/
|
|
49
|
+
get expression(): string | undefined;
|
|
50
|
+
/**
|
|
51
|
+
* @ngdoc
|
|
52
|
+
* @name sankhyalabs.core.src:Criteria#getSize
|
|
53
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
54
|
+
* @description Método que retorna o Número de caracteres da expressão da classe Criteria.
|
|
55
|
+
* @returns {number} Número de caracteres da expressão da classe Criteria.
|
|
56
|
+
*/
|
|
57
|
+
getSize: () => number;
|
|
58
|
+
/**
|
|
59
|
+
* @ngdoc
|
|
60
|
+
* @name sankhyalabs.core.src:Criteria#or
|
|
61
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
62
|
+
* @description Concatena a expressão ' OR ' ao critério.
|
|
63
|
+
* @param {Criteria | string} [exp] Expressão a ser concatenada
|
|
64
|
+
* @param {Array<CriteriaParameter>} [param] Parâmetros a serem concatenados.
|
|
65
|
+
* @returns {Criteria} Retorna a própria instância do Criterio para encadeamento.
|
|
66
|
+
*/
|
|
67
|
+
or: (exp: Criteria | string, param?: Array<CriteriaParameter>) => Criteria;
|
|
68
|
+
/**
|
|
69
|
+
* @ngdoc
|
|
70
|
+
* @name sankhyalabs.core.src:Criteria#and
|
|
71
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
72
|
+
* @description Concatena a expressão ' AND ' ao critério.
|
|
73
|
+
* @param {Criteria | string} [exp] Expressão a ser concatenada
|
|
74
|
+
* @param {Array<CriteriaParameter>} [param] Parâmetros a serem concatenados.
|
|
75
|
+
* @returns {Criteria} Retorna a própria instância do Criterio para encadeamento.
|
|
76
|
+
*/
|
|
77
|
+
and: (exp: Criteria | string, param?: Array<CriteriaParameter>) => Criteria;
|
|
78
|
+
/**
|
|
79
|
+
* @ngdoc
|
|
80
|
+
* @name sankhyalabs.core.src:Criteria#toJSON
|
|
81
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
82
|
+
* @description Retorna um JSON que representa o objeto Criteria.
|
|
83
|
+
* @returns {Object} Retorna um JSON que representa o objeto Criteria.
|
|
84
|
+
*/
|
|
85
|
+
toJSON: () => OutputJSON | undefined;
|
|
86
|
+
/**
|
|
87
|
+
* @ngdoc
|
|
88
|
+
* @name sankhyalabs.core.src:Criteria#append
|
|
89
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
90
|
+
* @description Concatena uma expressão e parâmetros ao critério.
|
|
91
|
+
* @param {string} [exp=undefined] Expressão a ser concatenada
|
|
92
|
+
* @param {array} [param=undefined] Parâmetros a serem concatenados.
|
|
93
|
+
* @returns {Criteria} Retorna a própria instância do Criterio para encadeamento.
|
|
94
|
+
*/
|
|
95
|
+
append(exp: Criteria | string, param?: Array<CriteriaParameter>): Criteria;
|
|
96
|
+
/**
|
|
97
|
+
* @ngdoc
|
|
98
|
+
* @name sankhyalabs.core.src:Criteria#addParameter
|
|
99
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
100
|
+
* @description Concatena parâmetros ao critério.
|
|
101
|
+
* - Se passado um array, o metodo iterará no array e adicionará cada um dos itens.
|
|
102
|
+
* - É possível passar um Objeto CriteriaParameter, um número, string ou uma instancia de data, eles serão inferidos para o tipo certo.
|
|
103
|
+
* @param {CriteriaParameter} Parâmetro a ser adicionado.
|
|
104
|
+
*/
|
|
105
|
+
private addParameter;
|
|
106
|
+
}
|
|
107
|
+
export {};
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `CriteriaParameter`: Utilizado para validar e manipular os critérios da requisição.
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
export class Criteria {
|
|
6
|
+
//Constructor
|
|
7
|
+
//================================================================
|
|
8
|
+
constructor(exp, params) {
|
|
9
|
+
//Internal Properties
|
|
10
|
+
//================================================================
|
|
11
|
+
this._expression = undefined;
|
|
12
|
+
this._parameters = [];
|
|
13
|
+
//Methods
|
|
14
|
+
//================================================================
|
|
15
|
+
/**
|
|
16
|
+
* @ngdoc
|
|
17
|
+
* @name sankhyalabs.core.src:Criteria#getSize
|
|
18
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
19
|
+
* @description Método que retorna o Número de caracteres da expressão da classe Criteria.
|
|
20
|
+
* @returns {number} Número de caracteres da expressão da classe Criteria.
|
|
21
|
+
*/
|
|
22
|
+
this.getSize = () => {
|
|
23
|
+
return this._expression === undefined ? 0 : this._expression.length;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* @ngdoc
|
|
27
|
+
* @name sankhyalabs.core.src:Criteria#or
|
|
28
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
29
|
+
* @description Concatena a expressão ' OR ' ao critério.
|
|
30
|
+
* @param {Criteria | string} [exp] Expressão a ser concatenada
|
|
31
|
+
* @param {Array<CriteriaParameter>} [param] Parâmetros a serem concatenados.
|
|
32
|
+
* @returns {Criteria} Retorna a própria instância do Criterio para encadeamento.
|
|
33
|
+
*/
|
|
34
|
+
this.or = (exp, param) => {
|
|
35
|
+
if (this.getSize() > 0) {
|
|
36
|
+
this.append(' OR ');
|
|
37
|
+
}
|
|
38
|
+
this.append(exp, param);
|
|
39
|
+
return this;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* @ngdoc
|
|
43
|
+
* @name sankhyalabs.core.src:Criteria#and
|
|
44
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
45
|
+
* @description Concatena a expressão ' AND ' ao critério.
|
|
46
|
+
* @param {Criteria | string} [exp] Expressão a ser concatenada
|
|
47
|
+
* @param {Array<CriteriaParameter>} [param] Parâmetros a serem concatenados.
|
|
48
|
+
* @returns {Criteria} Retorna a própria instância do Criterio para encadeamento.
|
|
49
|
+
*/
|
|
50
|
+
this.and = (exp, param) => {
|
|
51
|
+
if (this.getSize() > 0) {
|
|
52
|
+
this.append(' AND ');
|
|
53
|
+
}
|
|
54
|
+
this.append(exp, param);
|
|
55
|
+
return this;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* @ngdoc
|
|
59
|
+
* @name sankhyalabs.core.src:Criteria#toJSON
|
|
60
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
61
|
+
* @description Retorna um JSON que representa o objeto Criteria.
|
|
62
|
+
* @returns {Object} Retorna um JSON que representa o objeto Criteria.
|
|
63
|
+
*/
|
|
64
|
+
this.toJSON = () => {
|
|
65
|
+
const parametersArray = [];
|
|
66
|
+
this.parameters.map(function (param) {
|
|
67
|
+
parametersArray.push(param.buildParam());
|
|
68
|
+
});
|
|
69
|
+
let result = undefined;
|
|
70
|
+
if (this.getSize() > 0) {
|
|
71
|
+
result = {
|
|
72
|
+
expression: this.expression,
|
|
73
|
+
parameters: parametersArray,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
return result;
|
|
77
|
+
};
|
|
78
|
+
this._expression = exp ? exp : undefined;
|
|
79
|
+
this._parameters = params ? params : [];
|
|
80
|
+
}
|
|
81
|
+
//Getters and Setters
|
|
82
|
+
//================================================================
|
|
83
|
+
/**
|
|
84
|
+
* @ngdoc
|
|
85
|
+
* @Setter_______________
|
|
86
|
+
* @name sankhyalabs.core.src:Criteria#parameters
|
|
87
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
88
|
+
* @description Setter para "parameters". Trata-se de uma Array de parametros da classe Criteria.
|
|
89
|
+
* @param {Array<CriteriaParameter>} [parameters] Array de parametros da classe Criteria.
|
|
90
|
+
*/
|
|
91
|
+
set parameters(parameters) {
|
|
92
|
+
this._parameters = parameters;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* @ngdoc
|
|
96
|
+
* @Getter_______________
|
|
97
|
+
* @name sankhyalabs.core.src:Criteria#parameters
|
|
98
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
99
|
+
* @description Getter para parameters
|
|
100
|
+
* @returns {Array<CriteriaParameter>}
|
|
101
|
+
*/
|
|
102
|
+
get parameters() {
|
|
103
|
+
return this._parameters;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* @ngdoc
|
|
107
|
+
* @Setter_______________
|
|
108
|
+
* @name sankhyalabs.core.src:Criteria#expression
|
|
109
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
110
|
+
* @description Setter para "expression". Trata-se do expressão da classe Criteria.
|
|
111
|
+
* @param {string} [expression] Expressão da classe Criteria.
|
|
112
|
+
*/
|
|
113
|
+
set expression(expression) {
|
|
114
|
+
this._expression = expression;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* @ngdoc
|
|
118
|
+
* @Getter_______________
|
|
119
|
+
* @name sankhyalabs.core.src:Criteria#expression
|
|
120
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
121
|
+
* @description Getter para expression
|
|
122
|
+
* @returns {string} expression em formato string.
|
|
123
|
+
*/
|
|
124
|
+
get expression() {
|
|
125
|
+
return this._expression;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* @ngdoc
|
|
129
|
+
* @name sankhyalabs.core.src:Criteria#append
|
|
130
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
131
|
+
* @description Concatena uma expressão e parâmetros ao critério.
|
|
132
|
+
* @param {string} [exp=undefined] Expressão a ser concatenada
|
|
133
|
+
* @param {array} [param=undefined] Parâmetros a serem concatenados.
|
|
134
|
+
* @returns {Criteria} Retorna a própria instância do Criterio para encadeamento.
|
|
135
|
+
*/
|
|
136
|
+
append(exp, param) {
|
|
137
|
+
if (exp instanceof Criteria) {
|
|
138
|
+
if (exp.getSize() > 0) {
|
|
139
|
+
param = exp.parameters;
|
|
140
|
+
exp = '(' + exp.expression + ')';
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
return this;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
if (this.expression === undefined) {
|
|
147
|
+
this.expression = exp;
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
this.expression += exp;
|
|
151
|
+
}
|
|
152
|
+
if (param) {
|
|
153
|
+
this.addParameter(param);
|
|
154
|
+
}
|
|
155
|
+
return this;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* @ngdoc
|
|
159
|
+
* @name sankhyalabs.core.src:Criteria#addParameter
|
|
160
|
+
* @methodOf sankhyalabs.core.src:Criteria
|
|
161
|
+
* @description Concatena parâmetros ao critério.
|
|
162
|
+
* - Se passado um array, o metodo iterará no array e adicionará cada um dos itens.
|
|
163
|
+
* - É possível passar um Objeto CriteriaParameter, um número, string ou uma instancia de data, eles serão inferidos para o tipo certo.
|
|
164
|
+
* @param {CriteriaParameter} Parâmetro a ser adicionado.
|
|
165
|
+
*/
|
|
166
|
+
addParameter(param) {
|
|
167
|
+
for (const index in param) {
|
|
168
|
+
this.parameters.push(param[index]);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=CriteriaModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CriteriaModel.js","sourceRoot":"","sources":["../../src/utils/CriteriaModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Possible values of CriteriaType
|
|
3
|
+
*/
|
|
4
|
+
export declare enum CriteriaType {
|
|
5
|
+
TYPE_STRING = "S",
|
|
6
|
+
TYPE_DATE = "D",
|
|
7
|
+
TYPE_NUMBER = "N"
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Interface: return of method "buildParam" of CriteriaParameter class
|
|
11
|
+
*/
|
|
12
|
+
export interface InputCriteria {
|
|
13
|
+
type: CriteriaType;
|
|
14
|
+
value: any;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* CriteriaParameter:
|
|
18
|
+
*/
|
|
19
|
+
export declare class CriteriaParameter {
|
|
20
|
+
private _type;
|
|
21
|
+
private _value;
|
|
22
|
+
constructor(type: CriteriaType, value: any);
|
|
23
|
+
/**
|
|
24
|
+
* @ngdoc
|
|
25
|
+
* @Getter_______________
|
|
26
|
+
* @name sankhyalabs.core.src:CriteriaParameter#value
|
|
27
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
28
|
+
* @description Setter para "value". Trata-se do valor do Parâmetro.
|
|
29
|
+
* @param {any} [value] Valor do Parâmetro.
|
|
30
|
+
* @returns {void}
|
|
31
|
+
*/
|
|
32
|
+
set value(value: any);
|
|
33
|
+
/**
|
|
34
|
+
* @ngdoc
|
|
35
|
+
* @Setter_______________
|
|
36
|
+
* @name sankhyalabs.core.src:CriteriaParameter#value
|
|
37
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
38
|
+
* @description Getter para "value". Trata-se do valor do Parâmetro.
|
|
39
|
+
* @returns {any} Retorna valor do Parâmetro da classe Criteria
|
|
40
|
+
*/
|
|
41
|
+
get value(): any;
|
|
42
|
+
/**
|
|
43
|
+
* @ngdoc
|
|
44
|
+
* @Getter_______________
|
|
45
|
+
* @name sankhyalabs.core.src:CriteriaParameter#type
|
|
46
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
47
|
+
* @description Setter para "type". Trata-se do tipo do valor do Parâmetro.
|
|
48
|
+
* @param {CriteriaType} [type] Tipo do valor do Parâmetro.
|
|
49
|
+
* @returns {void}
|
|
50
|
+
*/
|
|
51
|
+
set type(type: CriteriaType);
|
|
52
|
+
/**
|
|
53
|
+
* @ngdoc
|
|
54
|
+
* @Setter_______________
|
|
55
|
+
* @name sankhyalabs.core.src:CriteriaParameter#type
|
|
56
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
57
|
+
* @description Getter para "type". Trata-se do valor do Parâmetro.
|
|
58
|
+
* @returns {CriteriaType} Retorna o tipo do Parâmetro da classe Criteria
|
|
59
|
+
*/
|
|
60
|
+
get type(): CriteriaType;
|
|
61
|
+
/**
|
|
62
|
+
* @sankhyalabscore
|
|
63
|
+
* @name sankhyalabs.core.src:CriteriaParameter#buildParam
|
|
64
|
+
* @methodOf sankhyalabscore src.utils.CriteriaParameter
|
|
65
|
+
* @description Cria um JSON/Objeto de acordo com as propriedades internas "value" e "type" da classe CriteriaParameter
|
|
66
|
+
* @returns {InputCriteria} Retorna JSON/Objeto no formato InputCriteria.
|
|
67
|
+
*/
|
|
68
|
+
buildParam: () => InputCriteria;
|
|
69
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Possible values of CriteriaType
|
|
3
|
+
*/
|
|
4
|
+
export var CriteriaType;
|
|
5
|
+
(function (CriteriaType) {
|
|
6
|
+
CriteriaType["TYPE_STRING"] = "S";
|
|
7
|
+
CriteriaType["TYPE_DATE"] = "D";
|
|
8
|
+
CriteriaType["TYPE_NUMBER"] = "N";
|
|
9
|
+
})(CriteriaType || (CriteriaType = {}));
|
|
10
|
+
/**
|
|
11
|
+
* CriteriaParameter:
|
|
12
|
+
*/
|
|
13
|
+
export class CriteriaParameter {
|
|
14
|
+
//Constructor
|
|
15
|
+
//================================================================
|
|
16
|
+
constructor(type, value) {
|
|
17
|
+
/**
|
|
18
|
+
* @sankhyalabscore
|
|
19
|
+
* @name sankhyalabs.core.src:CriteriaParameter#buildParam
|
|
20
|
+
* @methodOf sankhyalabscore src.utils.CriteriaParameter
|
|
21
|
+
* @description Cria um JSON/Objeto de acordo com as propriedades internas "value" e "type" da classe CriteriaParameter
|
|
22
|
+
* @returns {InputCriteria} Retorna JSON/Objeto no formato InputCriteria.
|
|
23
|
+
*/
|
|
24
|
+
this.buildParam = () => {
|
|
25
|
+
const paramObj = {
|
|
26
|
+
type: this._type,
|
|
27
|
+
value: this._value,
|
|
28
|
+
};
|
|
29
|
+
return paramObj;
|
|
30
|
+
};
|
|
31
|
+
this._type = type;
|
|
32
|
+
this._value = value;
|
|
33
|
+
}
|
|
34
|
+
//Getters and Setters
|
|
35
|
+
//================================================================
|
|
36
|
+
/**
|
|
37
|
+
* @ngdoc
|
|
38
|
+
* @Getter_______________
|
|
39
|
+
* @name sankhyalabs.core.src:CriteriaParameter#value
|
|
40
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
41
|
+
* @description Setter para "value". Trata-se do valor do Parâmetro.
|
|
42
|
+
* @param {any} [value] Valor do Parâmetro.
|
|
43
|
+
* @returns {void}
|
|
44
|
+
*/
|
|
45
|
+
set value(value) {
|
|
46
|
+
this._value = value;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* @ngdoc
|
|
50
|
+
* @Setter_______________
|
|
51
|
+
* @name sankhyalabs.core.src:CriteriaParameter#value
|
|
52
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
53
|
+
* @description Getter para "value". Trata-se do valor do Parâmetro.
|
|
54
|
+
* @returns {any} Retorna valor do Parâmetro da classe Criteria
|
|
55
|
+
*/
|
|
56
|
+
get value() {
|
|
57
|
+
return this._value;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* @ngdoc
|
|
61
|
+
* @Getter_______________
|
|
62
|
+
* @name sankhyalabs.core.src:CriteriaParameter#type
|
|
63
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
64
|
+
* @description Setter para "type". Trata-se do tipo do valor do Parâmetro.
|
|
65
|
+
* @param {CriteriaType} [type] Tipo do valor do Parâmetro.
|
|
66
|
+
* @returns {void}
|
|
67
|
+
*/
|
|
68
|
+
set type(type) {
|
|
69
|
+
this._type = type;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* @ngdoc
|
|
73
|
+
* @Setter_______________
|
|
74
|
+
* @name sankhyalabs.core.src:CriteriaParameter#type
|
|
75
|
+
* @methodOf sankhyalabs.core.src:CriteriaProvider
|
|
76
|
+
* @description Getter para "type". Trata-se do valor do Parâmetro.
|
|
77
|
+
* @returns {CriteriaType} Retorna o tipo do Parâmetro da classe Criteria
|
|
78
|
+
*/
|
|
79
|
+
get type() {
|
|
80
|
+
return this._type;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=CriteriaParameter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CriteriaParameter.js","sourceRoot":"","sources":["../../src/utils/CriteriaParameter.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,YAIX;AAJD,WAAY,YAAY;IACpB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,iCAAiB,CAAA;AACrB,CAAC,EAJW,YAAY,KAAZ,YAAY,QAIvB;AAYD;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAQ1B,aAAa;IACb,kEAAkE;IAClE,YAAY,IAAkB,EAAE,KAAU;QA4D1C;;;;;;WAMG;QACI,eAAU,GAAG,GAAkB,EAAE;YACpC,MAAM,QAAQ,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,KAAK;gBAChB,KAAK,EAAE,IAAI,CAAC,MAAM;aACrB,CAAA;YACD,OAAO,QAAQ,CAAC;QACpB,CAAC,CAAA;QAxEG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,qBAAqB;IACrB,kEAAkE;IAElE;;;;;;;;OAQG;IACH,IAAW,KAAK,CAAC,KAAU;QACvB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACxB,CAAC;IAED;;;;;;;OAOG;IACH,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAGD;;;;;;;;OAQG;IACH,IAAW,IAAI,CAAC,IAAkB;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IAED;;;;;;;OAOG;IACH,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;CAkBJ"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `DateUtils`: Utilizado para formatação, padronização e cálculos de datas.
|
|
3
|
+
*/
|
|
4
|
+
export default class DateUtils {
|
|
5
|
+
/**
|
|
6
|
+
* Zerar o horário de uma data.
|
|
7
|
+
*
|
|
8
|
+
* @param date - Data a ser manipulada.
|
|
9
|
+
* @param adjustDayLightSavingTime - Ajusta horário de verão na data recebida.
|
|
10
|
+
* @returns - Data sem as informações de horário.
|
|
11
|
+
* @example
|
|
12
|
+
* Informo: 2023-03-09 12:42:40 | Obtenho: 2023-03-09 00:00:00
|
|
13
|
+
*/
|
|
14
|
+
static clearTime(date: Date, adjustDayLightSavingTime?: boolean): Date;
|
|
15
|
+
/**
|
|
16
|
+
* Converte data para uma string no formato pt-BR.
|
|
17
|
+
*
|
|
18
|
+
* @param date - Data a ser convertida.
|
|
19
|
+
* @param options - Opções de formatação da data.
|
|
20
|
+
* @returns - Uma string com a data no formato pt-BR DD/MM/YYYY.
|
|
21
|
+
*/
|
|
22
|
+
static formatDate(date: Date, options?: Intl.DateTimeFormatOptions): string;
|
|
23
|
+
/**
|
|
24
|
+
* Converte as horas de uma data para uma string pt-BR.
|
|
25
|
+
*
|
|
26
|
+
* @param date - Data a ser convertida.
|
|
27
|
+
* @param showSeconds - define se devemos considerar os segundos.
|
|
28
|
+
* @returns - Uma string com as horas no formato HH:MM ou HH:MM:SS.
|
|
29
|
+
*/
|
|
30
|
+
static formatTime(date: Date, showSeconds?: boolean): string;
|
|
31
|
+
/**
|
|
32
|
+
* Converte a data e hora para uma string no formato pt-BR.
|
|
33
|
+
*
|
|
34
|
+
* @param date - Data a ser convertida.
|
|
35
|
+
* @param showSeconds - define se devemos considerar os segundos.
|
|
36
|
+
* @returns - Uma string com as horas no formato DD/MM/YYYY HH:MM ou DD/MM/YYYY HH:MM:SS.
|
|
37
|
+
*/
|
|
38
|
+
static formatDateTime(date: Date, showSeconds?: boolean): string;
|
|
39
|
+
/**
|
|
40
|
+
* Converte String para Date.
|
|
41
|
+
*
|
|
42
|
+
* @param strValue - Texto a ser convertido para data.
|
|
43
|
+
* @param adjustDayLightSavingTime - Se verdadeiro, ativa regra de horário de verão.
|
|
44
|
+
* @param monthYearMode - Quando ativado, retorna o primeiro dia do mês apenas para construir a data.
|
|
45
|
+
* @returns - Data sem as informações de horário.
|
|
46
|
+
*/
|
|
47
|
+
static strToDate(strValue: string, adjustDayLightSavingTime?: boolean, monthYearMode?: boolean): Date | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* Obtém a data atual.
|
|
50
|
+
*
|
|
51
|
+
* @param withTime - Caso true retorna a data com informações de horário.
|
|
52
|
+
* @returns - Data atual sem informação de horário.
|
|
53
|
+
*/
|
|
54
|
+
static getToday(withTime?: boolean): Date;
|
|
55
|
+
/**
|
|
56
|
+
* Retorna se a data é válida.
|
|
57
|
+
*
|
|
58
|
+
* @param value - Data a ser validada.
|
|
59
|
+
* @param hasTime - Determina se a data retornada deve conter informação de horário ou não. Por padrão não retorna a hora.
|
|
60
|
+
* @returns - Caso válida, retorna a própria data.
|
|
61
|
+
*/
|
|
62
|
+
static validateDate(value: Date, hasTime?: boolean): Date | undefined;
|
|
63
|
+
/**
|
|
64
|
+
* Realiza correção do horário de verão.
|
|
65
|
+
*
|
|
66
|
+
* @param date - Data a ser ajustada.
|
|
67
|
+
* @returns - Data informada ajustada para horário de verão.
|
|
68
|
+
*/
|
|
69
|
+
private static adjustDLST;
|
|
70
|
+
/**
|
|
71
|
+
* Adiciona uma casa decimal a esquerda de uma unidade.
|
|
72
|
+
*
|
|
73
|
+
* @param n - Número a ser ajustado
|
|
74
|
+
* @returns - O número informado, com uma casa decimal a esquerda.
|
|
75
|
+
* @example
|
|
76
|
+
* Informo: 15 | Obtenho: 15
|
|
77
|
+
* @example
|
|
78
|
+
* Informo: 2 | Obtenho: "02"
|
|
79
|
+
*/
|
|
80
|
+
private static pad;
|
|
81
|
+
/**
|
|
82
|
+
* Retorna timezone da data.
|
|
83
|
+
*
|
|
84
|
+
* @param offset - Valor do timezone desejado.
|
|
85
|
+
* @returns Timezone da data.
|
|
86
|
+
*/
|
|
87
|
+
private static timezoneOffset;
|
|
88
|
+
/**
|
|
89
|
+
* Converte a data para o formato RFC3339.
|
|
90
|
+
*
|
|
91
|
+
* @param date - Data a ser convertida
|
|
92
|
+
* @returns - Data informada no formato RFC3339.
|
|
93
|
+
* * @example
|
|
94
|
+
* Informo: 2023-03-09 12:42:40 | Obtenho: 2023-03-09T12:42:47-03:00
|
|
95
|
+
*/
|
|
96
|
+
static formatRfc3339(date: Date): string;
|
|
97
|
+
}
|