@acorex/core 7.22.0 → 7.23.1

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.
Files changed (138) hide show
  1. package/{dateTime → date-time}/README.md +2 -2
  2. package/{dateTime → date-time}/lib/datetime.class.d.ts +1 -0
  3. package/{dateTime → date-time}/lib/formatters/datetime-formatter.d.ts +1 -1
  4. package/{dateTime → date-time}/lib/formatters/timeleft-formatter.d.ts +1 -1
  5. package/esm2022/acorex-core.mjs +1 -1
  6. package/esm2022/config/lib/configs.mjs +1 -1
  7. package/esm2022/config/lib/configs.service.mjs +3 -3
  8. package/esm2022/date-time/acorex-core-date-time.mjs +5 -0
  9. package/esm2022/date-time/index.mjs +11 -0
  10. package/esm2022/date-time/lib/calendar.service.mjs +100 -0
  11. package/esm2022/date-time/lib/dateTime.config.mjs +50 -0
  12. package/esm2022/date-time/lib/datetime.class.mjs +337 -0
  13. package/esm2022/date-time/lib/datetime.module.mjs +27 -0
  14. package/esm2022/date-time/lib/datetime.pipe.mjs +29 -0
  15. package/esm2022/date-time/lib/formatters/datetime-formatter.mjs +32 -0
  16. package/esm2022/date-time/lib/formatters/timeleft-formatter.mjs +91 -0
  17. package/esm2022/date-time/lib/georgian.calendar.mjs +203 -0
  18. package/esm2022/date-time/lib/holidays.loader.mjs +13 -0
  19. package/esm2022/date-time/lib/jalali.calendar.mjs +440 -0
  20. package/esm2022/events/lib/event.service.mjs +4 -4
  21. package/esm2022/events/lib/event.type.mjs +1 -1
  22. package/esm2022/file/lib/file-download-ref.class.mjs +1 -1
  23. package/esm2022/file/lib/file-size-formatter.mjs +4 -4
  24. package/esm2022/file/lib/file-upload-ref.class.mjs +1 -1
  25. package/esm2022/file/lib/file.module.mjs +6 -6
  26. package/esm2022/file/lib/file.service.mjs +5 -5
  27. package/esm2022/format/lib/format.config.mjs +1 -1
  28. package/esm2022/format/lib/format.module.mjs +13 -16
  29. package/esm2022/format/lib/format.pipe.mjs +10 -6
  30. package/esm2022/format/lib/format.service.mjs +19 -16
  31. package/esm2022/format/lib/format.types.mjs +1 -1
  32. package/esm2022/format/lib/formatters/number-formatter.mjs +6 -7
  33. package/esm2022/format/lib/formatters/string-formatter.mjs +1 -1
  34. package/esm2022/image/lib/image.service.mjs +4 -4
  35. package/esm2022/index.mjs +2 -2
  36. package/esm2022/memorize/lib/memorize.decorator.mjs +1 -1
  37. package/esm2022/pipes/lib/safe/safe.pipe.mjs +4 -4
  38. package/esm2022/platform/lib/platform.service.mjs +47 -42
  39. package/esm2022/storage/cookie-storage.service.mjs +15 -8
  40. package/esm2022/storage/local-storage.service.mjs +46 -10
  41. package/esm2022/storage/session-storage.service.mjs +3 -3
  42. package/esm2022/translation/lib/translation-scope.resolver.mjs +4 -4
  43. package/esm2022/translation/lib/translation.config.mjs +2 -2
  44. package/esm2022/translation/lib/translation.loader.mjs +3 -3
  45. package/esm2022/translation/lib/translation.module.mjs +10 -10
  46. package/esm2022/translation/lib/translation.service.mjs +19 -11
  47. package/esm2022/translation/lib/translation.types.mjs +1 -1
  48. package/esm2022/translation/lib/translator.directive.mjs +5 -5
  49. package/esm2022/translation/lib/translator.pipe.mjs +4 -4
  50. package/esm2022/utils/lib/auto-unsubscribe.mjs +4 -4
  51. package/esm2022/utils/lib/color-util.mjs +4 -2
  52. package/esm2022/utils/lib/drawing-util.mjs +6 -3
  53. package/esm2022/utils/lib/html-util.mjs +17 -3
  54. package/esm2022/utils/lib/string-util.mjs +1 -1
  55. package/esm2022/validation/lib/rules/between-rule.mjs +7 -7
  56. package/esm2022/validation/lib/rules/callback-rule.mjs +10 -7
  57. package/esm2022/validation/lib/rules/equal-rule.mjs +7 -7
  58. package/esm2022/validation/lib/rules/greater-than.mjs +12 -8
  59. package/esm2022/validation/lib/rules/length-rule.mjs +10 -7
  60. package/esm2022/validation/lib/rules/less-than-rule.mjs +12 -8
  61. package/esm2022/validation/lib/rules/maxlength-rule.mjs +12 -9
  62. package/esm2022/validation/lib/rules/minlength-rule.mjs +12 -9
  63. package/esm2022/validation/lib/rules/regex-rule.mjs +15 -12
  64. package/esm2022/validation/lib/rules/required-rule.mjs +14 -14
  65. package/esm2022/validation/lib/validation.config.mjs +3 -3
  66. package/esm2022/validation/lib/validation.module.mjs +15 -19
  67. package/esm2022/validation/lib/validation.service.mjs +19 -16
  68. package/esm2022/validation/lib/validation.types.mjs +1 -1
  69. package/fesm2022/acorex-core-config.mjs +3 -3
  70. package/fesm2022/acorex-core-config.mjs.map +1 -1
  71. package/fesm2022/{acorex-core-dateTime.mjs → acorex-core-date-time.mjs} +96 -45
  72. package/fesm2022/acorex-core-date-time.mjs.map +1 -0
  73. package/fesm2022/acorex-core-events.mjs +3 -3
  74. package/fesm2022/acorex-core-events.mjs.map +1 -1
  75. package/fesm2022/acorex-core-file.mjs +12 -12
  76. package/fesm2022/acorex-core-file.mjs.map +1 -1
  77. package/fesm2022/acorex-core-format.mjs +43 -40
  78. package/fesm2022/acorex-core-format.mjs.map +1 -1
  79. package/fesm2022/acorex-core-image.mjs +3 -3
  80. package/fesm2022/acorex-core-image.mjs.map +1 -1
  81. package/fesm2022/acorex-core-memorize.mjs.map +1 -1
  82. package/fesm2022/acorex-core-pipes.mjs +3 -3
  83. package/fesm2022/acorex-core-pipes.mjs.map +1 -1
  84. package/fesm2022/acorex-core-platform.mjs +46 -41
  85. package/fesm2022/acorex-core-platform.mjs.map +1 -1
  86. package/fesm2022/acorex-core-storage.mjs +63 -20
  87. package/fesm2022/acorex-core-storage.mjs.map +1 -1
  88. package/fesm2022/acorex-core-translation.mjs +31 -23
  89. package/fesm2022/acorex-core-translation.mjs.map +1 -1
  90. package/fesm2022/acorex-core-utils.mjs +27 -8
  91. package/fesm2022/acorex-core-utils.mjs.map +1 -1
  92. package/fesm2022/acorex-core-validation.mjs +110 -88
  93. package/fesm2022/acorex-core-validation.mjs.map +1 -1
  94. package/fesm2022/acorex-core.mjs +3 -1
  95. package/fesm2022/acorex-core.mjs.map +1 -1
  96. package/file/lib/file-size-formatter.d.ts +1 -1
  97. package/format/lib/format.config.d.ts +1 -1
  98. package/format/lib/format.service.d.ts +5 -5
  99. package/format/lib/formatters/number-formatter.d.ts +1 -1
  100. package/format/lib/formatters/string-formatter.d.ts +1 -1
  101. package/index.d.ts +1 -2
  102. package/package.json +16 -15
  103. package/storage/local-storage.service.d.ts +6 -0
  104. package/translation/lib/translation-scope.resolver.d.ts +1 -1
  105. package/translation/lib/translation.config.d.ts +2 -2
  106. package/translation/lib/translation.loader.d.ts +3 -3
  107. package/validation/lib/rules/between-rule.d.ts +2 -2
  108. package/validation/lib/rules/callback-rule.d.ts +2 -2
  109. package/validation/lib/rules/equal-rule.d.ts +2 -2
  110. package/validation/lib/rules/greater-than.d.ts +2 -2
  111. package/validation/lib/rules/length-rule.d.ts +2 -2
  112. package/validation/lib/rules/less-than-rule.d.ts +2 -2
  113. package/validation/lib/rules/maxlength-rule.d.ts +2 -2
  114. package/validation/lib/rules/minlength-rule.d.ts +2 -2
  115. package/validation/lib/rules/regex-rule.d.ts +2 -2
  116. package/validation/lib/rules/required-rule.d.ts +2 -2
  117. package/validation/lib/validation.service.d.ts +4 -4
  118. package/esm2022/dateTime/acorex-core-dateTime.mjs +0 -5
  119. package/esm2022/dateTime/index.mjs +0 -11
  120. package/esm2022/dateTime/lib/calendar.service.mjs +0 -91
  121. package/esm2022/dateTime/lib/dateTime.config.mjs +0 -50
  122. package/esm2022/dateTime/lib/datetime.class.mjs +0 -325
  123. package/esm2022/dateTime/lib/datetime.module.mjs +0 -21
  124. package/esm2022/dateTime/lib/datetime.pipe.mjs +0 -29
  125. package/esm2022/dateTime/lib/formatters/datetime-formatter.mjs +0 -30
  126. package/esm2022/dateTime/lib/formatters/timeleft-formatter.mjs +0 -91
  127. package/esm2022/dateTime/lib/georgian.calendar.mjs +0 -198
  128. package/esm2022/dateTime/lib/holidays.loader.mjs +0 -13
  129. package/esm2022/dateTime/lib/jalali.calendar.mjs +0 -423
  130. package/fesm2022/acorex-core-dateTime.mjs.map +0 -1
  131. /package/{dateTime → date-time}/index.d.ts +0 -0
  132. /package/{dateTime → date-time}/lib/calendar.service.d.ts +0 -0
  133. /package/{dateTime → date-time}/lib/dateTime.config.d.ts +0 -0
  134. /package/{dateTime → date-time}/lib/datetime.module.d.ts +0 -0
  135. /package/{dateTime → date-time}/lib/datetime.pipe.d.ts +0 -0
  136. /package/{dateTime → date-time}/lib/georgian.calendar.d.ts +0 -0
  137. /package/{dateTime → date-time}/lib/holidays.loader.d.ts +0 -0
  138. /package/{dateTime → date-time}/lib/jalali.calendar.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-core.mjs","sources":["../../../../libs/core/index.ts","../../../../libs/core/acorex-core.ts"],"sourcesContent":["export default {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA,YAAe,EAAE;;ACAjB;;AAEG"}
1
+ {"version":3,"file":"acorex-core.mjs","sources":["../../../../libs/core/src/index.ts","../../../../libs/core/src/acorex-core.ts"],"sourcesContent":["export const AX_CORE = 'ACOREX_CORE';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAO,MAAM,OAAO,GAAG;;ACAvB;;AAEG;;;;"}
@@ -5,7 +5,7 @@ export interface AXFileSizeFormatterOptions extends AXFormatOptions {
5
5
  }
6
6
  declare module '@acorex/core/format' {
7
7
  interface AXFormatOptionsMap {
8
- 'filesize': AXFileSizeFormatterOptions;
8
+ filesize: AXFileSizeFormatterOptions;
9
9
  }
10
10
  }
11
11
  export declare class AXFileSizeFormatter implements AXFormatter {
@@ -1,4 +1,4 @@
1
- import { AXFormatOptions } from "./format.types";
1
+ import { AXFormatOptions } from './format.types';
2
2
  export declare abstract class AXFormatter {
3
3
  abstract get name(): string;
4
4
  abstract format(value: unknown, options?: AXFormatOptions | string): string;
@@ -33,11 +33,11 @@ declare class AXFormatFluent {
33
33
  private initialValue;
34
34
  constructor(formatService: AXFormatService, initialValue: unknown);
35
35
  /**
36
- * Formats the value using the specified formatter and options.
37
- * @param formatter The name of the formatter to use.
38
- * @param options The options to pass to the formatter.
39
- * @returns The formatted string.
40
- */
36
+ * Formats the value using the specified formatter and options.
37
+ * @param formatter The name of the formatter to use.
38
+ * @param options The options to pass to the formatter.
39
+ * @returns The formatted string.
40
+ */
41
41
  to<K extends keyof AXFormatOptionsMap>(formatter: K, options?: AXFormatOptionsMap[K]): string;
42
42
  }
43
43
  export {};
@@ -10,7 +10,7 @@ export interface AXNumberFormatterOptions extends AXFormatOptions {
10
10
  }
11
11
  declare module '../format.types' {
12
12
  interface AXFormatOptionsMap {
13
- 'number': AXNumberFormatterOptions;
13
+ number: AXNumberFormatterOptions;
14
14
  }
15
15
  }
16
16
  export declare class AXNumberFormatter implements AXFormatter {
@@ -5,7 +5,7 @@ export interface AXStringFormatterOptions extends AXFormatOptions {
5
5
  }
6
6
  declare module '../format.types' {
7
7
  interface AXFormatOptionsMap {
8
- 'string': AXStringFormatterOptions;
8
+ string: AXStringFormatterOptions;
9
9
  }
10
10
  }
11
11
  export declare class AXStringFormatter implements AXFormatter {
package/index.d.ts CHANGED
@@ -1,2 +1 @@
1
- declare const _default: {};
2
- export default _default;
1
+ export declare const AX_CORE = "ACOREX_CORE";
package/package.json CHANGED
@@ -1,15 +1,19 @@
1
1
  {
2
2
  "name": "@acorex/core",
3
- "version": "7.22.0",
4
- "sideEffects": false,
3
+ "version": "7.23.1",
5
4
  "peerDependencies": {
6
- "@angular/common": ">=17.0.3",
7
- "@angular/core": ">=17.0.3",
5
+ "@angular/common": "^17.2.0",
6
+ "@angular/core": "^17.2.0",
8
7
  "lodash-es": ">=4.17.21",
9
- "tinycolor2": ">=1.6.0",
10
- "tinygradient-es": ">=1.0.0",
11
- "memoizee": ">=0.4.15"
8
+ "memoizee": ">=0.4.15",
9
+ "crypto-js": "^4.2.0",
10
+ "wavesurfer.js": "^7.7.5",
11
+ "tinygradient-es": "^1.0.0"
12
+ },
13
+ "dependencies": {
14
+ "tslib": "^2.3.0"
12
15
  },
16
+ "sideEffects": false,
13
17
  "module": "fesm2022/acorex-core.mjs",
14
18
  "typings": "index.d.ts",
15
19
  "exports": {
@@ -28,11 +32,11 @@
28
32
  "esm": "./esm2022/config/acorex-core-config.mjs",
29
33
  "default": "./fesm2022/acorex-core-config.mjs"
30
34
  },
31
- "./dateTime": {
32
- "types": "./dateTime/index.d.ts",
33
- "esm2022": "./esm2022/dateTime/acorex-core-dateTime.mjs",
34
- "esm": "./esm2022/dateTime/acorex-core-dateTime.mjs",
35
- "default": "./fesm2022/acorex-core-dateTime.mjs"
35
+ "./date-time": {
36
+ "types": "./date-time/index.d.ts",
37
+ "esm2022": "./esm2022/date-time/acorex-core-date-time.mjs",
38
+ "esm": "./esm2022/date-time/acorex-core-date-time.mjs",
39
+ "default": "./fesm2022/acorex-core-date-time.mjs"
36
40
  },
37
41
  "./events": {
38
42
  "types": "./events/index.d.ts",
@@ -106,8 +110,5 @@
106
110
  "esm": "./esm2022/validation/acorex-core-validation.mjs",
107
111
  "default": "./fesm2022/acorex-core-validation.mjs"
108
112
  }
109
- },
110
- "dependencies": {
111
- "tslib": "^2.3.0"
112
113
  }
113
114
  }
@@ -1,10 +1,16 @@
1
+ import { InjectionToken } from '@angular/core';
1
2
  import { AXStorage } from './storage.interface';
2
3
  import * as i0 from "@angular/core";
4
+ export declare const AX_LOCALSTORAGE_SECRET_KEY: InjectionToken<string>;
3
5
  export declare class AXLocalStorageService implements AXStorage {
6
+ private secret_key;
7
+ constructor(secret_key: string);
4
8
  get<T = unknown>(key: string): T;
5
9
  set<T = unknown>(key: string, value: T): void;
6
10
  clear(): void;
7
11
  removeItem(key: string): void;
12
+ setWithEncryption<T = unknown>(key: string, value: T): void;
13
+ getWithEncription<T = unknown>(key: string): T;
8
14
  static ɵfac: i0.ɵɵFactoryDeclaration<AXLocalStorageService, never>;
9
15
  static ɵprov: i0.ɵɵInjectableDeclaration<AXLocalStorageService>;
10
16
  }
@@ -1,2 +1,2 @@
1
- import { ResolveFn } from "@angular/router";
1
+ import { ResolveFn } from '@angular/router';
2
2
  export declare const loadTranslationScope: ResolveFn<unknown>;
@@ -1,5 +1,5 @@
1
- import { InjectionToken } from "@angular/core";
2
- import { AXTranslateLang, AXTranslateScope } from "./translation.types";
1
+ import { InjectionToken } from '@angular/core';
2
+ import { AXTranslateLang, AXTranslateScope } from './translation.types';
3
3
  export interface AXTranslationConfig {
4
4
  defaultLang: AXTranslateLang;
5
5
  defaultScope: AXTranslateScope;
@@ -1,6 +1,6 @@
1
- import { InjectionToken } from "@angular/core";
2
- import { AXTranslateLang, AXTranslateScope, AXTranslation } from "./translation.types";
3
- import { Observable } from "rxjs";
1
+ import { InjectionToken } from '@angular/core';
2
+ import { AXTranslateLang, AXTranslateScope, AXTranslation } from './translation.types';
3
+ import { Observable } from 'rxjs';
4
4
  export interface AXTranslationLoaderOptions {
5
5
  lang: AXTranslateLang;
6
6
  scope?: AXTranslateScope;
@@ -1,4 +1,4 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXBetweenValidationRuleOptions<T = number | Date> extends AXValidationRuleOptions {
4
4
  lowerValue: T;
@@ -7,7 +7,7 @@ export interface AXBetweenValidationRuleOptions<T = number | Date> extends AXVal
7
7
  }
8
8
  declare module '../validation.types' {
9
9
  interface AXValidationRuleOptionsMap {
10
- 'between': AXBetweenValidationRuleOptions;
10
+ between: AXBetweenValidationRuleOptions;
11
11
  }
12
12
  }
13
13
  export declare class AXBetweenValidationRule<T = number | Date> implements AXValidationRule {
@@ -1,4 +1,4 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export type AXCallbackValidation<T> = (value: T, options?: AXCallbackValidationRuleOptions<T>) => Promise<{
4
4
  result: boolean;
@@ -12,7 +12,7 @@ export interface AXCallbackValidationRuleOptions<T> extends AXValidationRuleOpti
12
12
  }
13
13
  declare module '../validation.types' {
14
14
  interface AXValidationRuleOptionsMap {
15
- 'callback': AXCallbackValidationRuleOptions<unknown>;
15
+ callback: AXCallbackValidationRuleOptions<unknown>;
16
16
  }
17
17
  }
18
18
  export declare class AXCallbackValidationRule<T> implements AXValidationRule {
@@ -1,4 +1,4 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXEqualValidationRuleOptions extends AXValidationRuleOptions {
4
4
  value: any;
@@ -6,7 +6,7 @@ export interface AXEqualValidationRuleOptions extends AXValidationRuleOptions {
6
6
  }
7
7
  declare module '../validation.types' {
8
8
  interface AXValidationRuleOptionsMap {
9
- 'equal': AXEqualValidationRuleOptions;
9
+ equal: AXEqualValidationRuleOptions;
10
10
  }
11
11
  }
12
12
  export declare class AXEqualValidationRule implements AXValidationRule {
@@ -1,4 +1,4 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXGreaterThanValidationRuleOptions extends AXValidationRuleOptions {
4
4
  value: number;
@@ -6,7 +6,7 @@ export interface AXGreaterThanValidationRuleOptions extends AXValidationRuleOpti
6
6
  }
7
7
  declare module '../validation.types' {
8
8
  interface AXValidationRuleOptionsMap {
9
- 'greaterThan': AXGreaterThanValidationRuleOptions;
9
+ greaterThan: AXGreaterThanValidationRuleOptions;
10
10
  }
11
11
  }
12
12
  export declare class AXGreaterThanValidationRule implements AXValidationRule {
@@ -1,4 +1,4 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXLengthValidationRuleOptions extends AXValidationRuleOptions {
4
4
  min: number;
@@ -6,7 +6,7 @@ export interface AXLengthValidationRuleOptions extends AXValidationRuleOptions {
6
6
  }
7
7
  declare module '../validation.types' {
8
8
  interface AXValidationRuleOptionsMap {
9
- 'length': AXLengthValidationRuleOptions;
9
+ length: AXLengthValidationRuleOptions;
10
10
  }
11
11
  }
12
12
  export declare class AXLengthValidationRule implements AXValidationRule {
@@ -1,4 +1,4 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXLessThanValidationRuleOptions extends AXValidationRuleOptions {
4
4
  value: number;
@@ -6,7 +6,7 @@ export interface AXLessThanValidationRuleOptions extends AXValidationRuleOptions
6
6
  }
7
7
  declare module '../validation.types' {
8
8
  interface AXValidationRuleOptionsMap {
9
- 'lessThan': AXLessThanValidationRuleOptions;
9
+ lessThan: AXLessThanValidationRuleOptions;
10
10
  }
11
11
  }
12
12
  export declare class AXLessThanValidationRule implements AXValidationRule {
@@ -1,11 +1,11 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXMaxLengthValidationRuleOptions extends AXValidationRuleOptions {
4
4
  value: number;
5
5
  }
6
6
  declare module '../validation.types' {
7
7
  interface AXValidationRuleOptionsMap {
8
- 'maxLength': AXMaxLengthValidationRuleOptions;
8
+ maxLength: AXMaxLengthValidationRuleOptions;
9
9
  }
10
10
  }
11
11
  export declare class AXMaxLengthValidationRule implements AXValidationRule {
@@ -1,11 +1,11 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXMinLengthValidationRuleOptions extends AXValidationRuleOptions {
4
4
  value: number;
5
5
  }
6
6
  declare module '../validation.types' {
7
7
  interface AXValidationRuleOptionsMap {
8
- 'minLength': AXMinLengthValidationRuleOptions;
8
+ minLength: AXMinLengthValidationRuleOptions;
9
9
  }
10
10
  }
11
11
  export declare class AXMinLengthValidationRule implements AXValidationRule {
@@ -1,11 +1,11 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXRegexValidationRuleOptions extends AXValidationRuleOptions {
4
4
  pattern: string | RegExp;
5
5
  }
6
6
  declare module '../validation.types' {
7
7
  interface AXValidationRuleOptionsMap {
8
- 'regex': AXRegexValidationRuleOptions;
8
+ regex: AXRegexValidationRuleOptions;
9
9
  }
10
10
  }
11
11
  export declare class AXRegexValidationRule implements AXValidationRule {
@@ -1,10 +1,10 @@
1
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from "../validation.types";
1
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleResult } from '../validation.types';
2
2
  import * as i0 from "@angular/core";
3
3
  export interface AXRequiredValidationRuleOptions extends AXValidationRuleOptions {
4
4
  }
5
5
  declare module '../validation.types' {
6
6
  interface AXValidationRuleOptionsMap {
7
- 'required': AXRequiredValidationRuleOptions;
7
+ required: AXRequiredValidationRuleOptions;
8
8
  }
9
9
  }
10
10
  export declare class AXRequiredValidationRule implements AXValidationRule {
@@ -1,7 +1,7 @@
1
- import { Injector } from "@angular/core";
2
- import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleOptionsMap, AXValidationRuleResult, AXValidationSummary } from "./validation.types";
3
- import { AXValidationConfigRules } from "./validation.config";
4
- import { AXTranslationService } from "@acorex/core/translation";
1
+ import { Injector } from '@angular/core';
2
+ import { AXValidationRule, AXValidationRuleOptions, AXValidationRuleOptionsMap, AXValidationRuleResult, AXValidationSummary } from './validation.types';
3
+ import { AXValidationConfigRules } from './validation.config';
4
+ import { AXTranslationService } from '@acorex/core/translation';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class AXValidationRegistryService {
7
7
  private plugins;
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvcmUtZGF0ZVRpbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZGF0ZVRpbWUvc3JjL2Fjb3JleC1jb3JlLWRhdGVUaW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -1,11 +0,0 @@
1
- export * from './lib/formatters/datetime-formatter';
2
- export * from './lib/formatters/timeleft-formatter';
3
- export * from './lib/calendar.service';
4
- export * from './lib/dateTime.config';
5
- export * from './lib/datetime.class';
6
- export * from './lib/datetime.module';
7
- export * from './lib/datetime.pipe';
8
- export * from './lib/georgian.calendar';
9
- export * from './lib/holidays.loader';
10
- export * from './lib/jalali.calendar';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZGF0ZVRpbWUvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtYXR0ZXJzL2RhdGV0aW1lLWZvcm1hdHRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtYXR0ZXJzL3RpbWVsZWZ0LWZvcm1hdHRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jYWxlbmRhci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGVUaW1lLmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRldGltZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRldGltZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXRpbWUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9nZW9yZ2lhbi5jYWxlbmRhcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ob2xpZGF5cy5sb2FkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvamFsYWxpLmNhbGVuZGFyJztcbiJdfQ==
@@ -1,91 +0,0 @@
1
- import { Injectable, inject } from '@angular/core';
2
- import { BehaviorSubject, Subject } from 'rxjs';
3
- import { AX_DATETIME_CONFIG } from './dateTime.config';
4
- import { AXDateTime } from './datetime.class';
5
- import { AX_DATETIME_HOLIDAYS_LOADER } from './holidays.loader';
6
- import { AXEventService, AXEventTypes } from '@acorex/core/events';
7
- import * as i0 from "@angular/core";
8
- export class AXCalendarService {
9
- get calendar() {
10
- return this.getActiveCalendar();
11
- }
12
- getDefaultCalendar() {
13
- return this.config.calendars[this.config.calendar];
14
- }
15
- getActiveCalendar() {
16
- return this.activeCalendar.getValue();
17
- }
18
- setActiveCalendar(name) {
19
- if (name != this.calendar.name()) {
20
- const calendar = this.resolveCalendar(name);
21
- this.activeCalendar.next(calendar);
22
- this.eventService.emitEvent({ type: AXEventTypes.AXCalendarChanged, payload: this.getActiveCalendar() });
23
- }
24
- }
25
- get holidays() {
26
- return this._holidays;
27
- }
28
- constructor() {
29
- this.config = inject(AX_DATETIME_CONFIG);
30
- this._holidaysLoader = inject(AX_DATETIME_HOLIDAYS_LOADER);
31
- this.eventService = inject(AXEventService);
32
- this.activeCalendar = new BehaviorSubject(this.getDefaultCalendar());
33
- this.calendarChanges$ = this.activeCalendar.asObservable();
34
- this.onHolidaysChanged = new Subject();
35
- this._holidays = [];
36
- this.loadHolidays();
37
- }
38
- loadHolidays(options) {
39
- return this._holidaysLoader.getHolidays(options).then((value) => {
40
- this._holidays = value;
41
- this.onHolidaysChanged.next(this._holidays);
42
- });
43
- }
44
- create(value, calendarName) {
45
- const calendar = calendarName ? this.resolveCalendar(calendarName) : this.calendar;
46
- if (value instanceof Date) {
47
- return new AXDateTime(value, calendar);
48
- }
49
- else if (value?.year && value?.month) {
50
- return calendar.create(value);
51
- }
52
- return this.now();
53
- }
54
- now(calendarName) {
55
- const calendar = calendarName ? this.resolveCalendar(calendarName) : this.calendar;
56
- return new AXDateTime(new Date(), calendar);
57
- }
58
- resolveCalendar(name) {
59
- const c = this.config.calendars[name];
60
- if (!c) {
61
- console.error(`"${name}" is not a valid calendar name!`);
62
- return this.calendar;
63
- }
64
- return c;
65
- }
66
- convert(value, calendarName) {
67
- const isISOString = (str) => {
68
- if (!/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(.\d{3}Z)?/.test(str))
69
- return false;
70
- const d = new Date(str);
71
- return d instanceof Date && !isNaN(d.getTime()); // valid date
72
- };
73
- //
74
- const calendar = calendarName ? this.resolveCalendar(calendarName) : this.calendar;
75
- if (typeof value === 'string') {
76
- if (isISOString(value))
77
- return new AXDateTime(new Date(value), calendar);
78
- else
79
- return calendar.parse(value);
80
- }
81
- const date = value instanceof AXDateTime ? value.date : value;
82
- return new AXDateTime(date, calendar);
83
- }
84
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AXCalendarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
85
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AXCalendarService, providedIn: 'root' }); }
86
- }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AXCalendarService, decorators: [{
88
- type: Injectable,
89
- args: [{ providedIn: 'root' }]
90
- }], ctorParameters: () => [] });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9kYXRlVGltZS9zcmMvbGliL2NhbGVuZGFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFvQixrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pFLE9BQU8sRUFBYyxVQUFVLEVBQWUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2RSxPQUFPLEVBQTBDLDJCQUEyQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDeEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFHbkUsTUFBTSxPQUFPLGlCQUFpQjtJQU01QixJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBS00sa0JBQWtCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRU0saUJBQWlCLENBQUMsSUFBWTtRQUNuQyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbkMsSUFB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WSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhO1FBQ2hFLENBQUMsQ0FBQztRQUNGLEVBQUU7UUFDRixNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDbkYsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDN0IsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDO2dCQUFFLE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7O2dCQUNwRSxPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbkM7UUFDRCxNQUFNLElBQUksR0FBRyxLQUFLLFlBQVksVUFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBRSxLQUFjLENBQUM7UUFDeEUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDeEMsQ0FBQzs4R0F0RlUsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FESixNQUFNOzsyRkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWERhdGVUaW1lQ29uZmlnLCBBWF9EQVRFVElNRV9DT05GSUcgfSBmcm9tICcuL2RhdGVUaW1lLmNvbmZpZyc7XG5pbXBvcnQgeyBBWENhbGVuZGFyLCBBWERhdGVUaW1lLCBBWERhdGVWYWx1ZSB9IGZyb20gJy4vZGF0ZXRpbWUuY2xhc3MnO1xuaW1wb3J0IHsgQVhIb2xpZGF5RGF0ZSwgQVhIb2xpZGF5c0xvYWRlck9wdGlvbnMsIEFYX0RBVEVUSU1FX0hPTElEQVlTX0xPQURFUiB9IGZyb20gJy4vaG9saWRheXMubG9hZGVyJztcbmltcG9ydCB7IEFYRXZlbnRTZXJ2aWNlLCBBWEV2ZW50VHlwZXMgfSBmcm9tICdAYWNvcmV4L2NvcmUvZXZlbnRzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBWENhbGVuZGFyU2VydmljZSB7XG4gIHByaXZhdGUgY29uZmlnOiBBWERhdGVUaW1lQ29uZmlnID0gaW5qZWN0KEFYX0RBVEVUSU1FX0NPTkZJRyk7XG4gIHByaXZhdGUgX2hvbGlkYXlzTG9hZGVyID0gaW5qZWN0KEFYX0RBVEVUSU1FX0hPTElEQVlTX0xPQURFUik7XG4gIHByaXZhdGUgZXZlbnRTZXJ2aWNlID0gaW5qZWN0KEFYRXZlbnRTZXJ2aWNlKTtcblxuXG4gIHB1YmxpYyBnZXQgY2FsZW5kYXIoKTogQVhDYWxlbmRhciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWN0aXZlQ2FsZW5kYXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgYWN0aXZlQ2FsZW5kYXIgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFYQ2FsZW5kYXI+KHRoaXMuZ2V0RGVmYXVsdENhbGVuZGFyKCkpO1xuICBjYWxlbmRhckNoYW5nZXMkID0gdGhpcy5hY3RpdmVDYWxlbmRhci5hc09ic2VydmFibGUoKTtcblxuICBwdWJsaWMgZ2V0RGVmYXVsdENhbGVuZGFyKCk6IEFYQ2FsZW5kYXIge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5jYWxlbmRhcnNbdGhpcy5jb25maWcuY2FsZW5kYXJdO1xuICB9XG5cbiAgcHVibGljIGdldEFjdGl2ZUNhbGVuZGFyKCk6IEFYQ2FsZW5kYXIge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUNhbGVuZGFyLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0QWN0aXZlQ2FsZW5kYXIobmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKG5hbWUgIT0gdGhpcy5jYWxlbmRhci5uYW1lKCkpIHtcbiAgICAgIGNvbnN0IGNhbGVuZGFyID0gdGhpcy5yZXNvbHZlQ2FsZW5kYXIobmFtZSk7XG4gICAgICB0aGlzLmFjdGl2ZUNhbGVuZGFyLm5leHQoY2FsZW5kYXIpO1xuICAgICAgdGhpcy5ldmVudFNlcnZpY2UuZW1pdEV2ZW50KHsgdHlwZTogQVhFdmVudFR5cGVzLkFYQ2FsZW5kYXJDaGFuZ2VkLCBwYXlsb2FkOiB0aGlzLmdldEFjdGl2ZUNhbGVuZGFyKCkgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uSG9saWRheXNDaGFuZ2VkOiBTdWJqZWN0PEFYSG9saWRheURhdGVbXT4gPSBuZXcgU3ViamVjdDxBWEhvbGlkYXlEYXRlW10+KCk7XG4gIHByaXZhdGUgX2hvbGlkYXlzOiBBWEhvbGlkYXlEYXRlW10gPSBbXTtcbiAgcHVibGljIGdldCBob2xpZGF5cygpOiBBWEhvbGlkYXlEYXRlW10ge1xuICAgIHJldHVybiB0aGlzLl9ob2xpZGF5cztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMubG9hZEhvbGlkYXlzKCk7XG4gIH1cblxuICBwdWJsaWMgbG9hZEhvbGlkYXlzKG9wdGlvbnM/OiBBWEhvbGlkYXlzTG9hZGVyT3B0aW9ucykge1xuICAgIHJldHVybiB0aGlzLl9ob2xpZGF5c0xvYWRlci5nZXRIb2xpZGF5cyhvcHRpb25zKS50aGVuKCh2YWx1ZSkgPT4ge1xuICAgICAgdGhpcy5faG9saWRheXMgPSB2YWx1ZTtcbiAgICAgIHRoaXMub25Ib2xpZGF5c0NoYW5nZWQubmV4dCh0aGlzLl9ob2xpZGF5cyk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlKHZhbHVlOiBBWERhdGVWYWx1ZSwgY2FsZW5kYXJOYW1lPzogc3RyaW5nKTogQVhEYXRlVGltZTtcbiAgcHVibGljIGNyZWF0ZSh2YWx1ZTogRGF0ZSwgY2FsZW5kYXJOYW1lPzogc3RyaW5nKTogQVhEYXRlVGltZTtcbiAgcHVibGljIGNyZWF0ZSh2YWx1ZTogQVhEYXRlVmFsdWUgfCBEYXRlLCBjYWxlbmRhck5hbWU/OiBzdHJpbmcpOiBBWERhdGVUaW1lIHtcbiAgICBjb25zdCBjYWxlbmRhciA9IGNhbGVuZGFyTmFtZSA/IHRoaXMucmVzb2x2ZUNhbGVuZGFyKGNhbGVuZGFyTmFtZSkgOiB0aGlzLmNhbGVuZGFyO1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgIHJldHVybiBuZXcgQVhEYXRlVGltZSh2YWx1ZSwgY2FsZW5kYXIpO1xuICAgIH0gZWxzZSBpZiAodmFsdWU/LnllYXIgJiYgdmFsdWU/Lm1vbnRoKSB7XG4gICAgICByZXR1cm4gY2FsZW5kYXIuY3JlYXRlKHZhbHVlIGFzIEFYRGF0ZVZhbHVlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubm93KCk7XG4gIH1cblxuICBwdWJsaWMgbm93KGNhbGVuZGFyTmFtZT86IHN0cmluZyk6IEFYRGF0ZVRpbWUge1xuICAgIGNvbnN0IGNhbGVuZGFyID0gY2FsZW5kYXJOYW1lID8gdGhpcy5yZXNvbHZlQ2FsZW5kYXIoY2FsZW5kYXJOYW1lKSA6IHRoaXMuY2FsZW5kYXI7XG4gICAgcmV0dXJuIG5ldyBBWERhdGVUaW1lKG5ldyBEYXRlKCksIGNhbGVuZGFyKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNvbHZlQ2FsZW5kYXIobmFtZTogc3RyaW5nKTogQVhDYWxlbmRhciB7XG4gICAgY29uc3QgYyA9IHRoaXMuY29uZmlnLmNhbGVuZGFyc1tuYW1lXTtcbiAgICBpZiAoIWMpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFwiJHtuYW1lfVwiIGlzIG5vdCBhIHZhbGlkIGNhbGVuZGFyIG5hbWUhYCk7XG4gICAgICByZXR1cm4gdGhpcy5jYWxlbmRhcjtcbiAgICB9XG4gICAgcmV0dXJuIGM7XG4gIH1cblxuICBwdWJsaWMgY29udmVydCh2YWx1ZTogRGF0ZSB8IEFYRGF0ZVRpbWUgfCBzdHJpbmcsIGNhbGVuZGFyTmFtZT86IHN0cmluZyk6IEFYRGF0ZVRpbWUge1xuICAgIGNvbnN0IGlzSVNPU3RyaW5nID0gKHN0cikgPT4ge1xuICAgICAgaWYgKCEvXFxkezR9LVxcZHsyfS1cXGR7Mn1UXFxkezJ9OlxcZHsyfTpcXGR7Mn0oLlxcZHszfVopPy8udGVzdChzdHIpKSByZXR1cm4gZmFsc2U7XG4gICAgICBjb25zdCBkID0gbmV3IERhdGUoc3RyKTtcbiAgICAgIHJldHVybiBkIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4oZC5nZXRUaW1lKCkpOyAvLyB2YWxpZCBkYXRlXG4gICAgfTtcbiAgICAvL1xuICAgIGNvbnN0IGNhbGVuZGFyID0gY2FsZW5kYXJOYW1lID8gdGhpcy5yZXNvbHZlQ2FsZW5kYXIoY2FsZW5kYXJOYW1lKSA6IHRoaXMuY2FsZW5kYXI7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmIChpc0lTT1N0cmluZyh2YWx1ZSkpIHJldHVybiBuZXcgQVhEYXRlVGltZShuZXcgRGF0ZSh2YWx1ZSksIGNhbGVuZGFyKTtcbiAgICAgIGVsc2UgcmV0dXJuIGNhbGVuZGFyLnBhcnNlKHZhbHVlKTtcbiAgICB9XG4gICAgY29uc3QgZGF0ZSA9IHZhbHVlIGluc3RhbmNlb2YgQVhEYXRlVGltZSA/IHZhbHVlLmRhdGUgOiAodmFsdWUgYXMgRGF0ZSk7XG4gICAgcmV0dXJuIG5ldyBBWERhdGVUaW1lKGRhdGUsIGNhbGVuZGFyKTtcbiAgfVxufVxuIl19
@@ -1,50 +0,0 @@
1
- import { AX_GLOBAL_CONFIG } from '@acorex/core/config';
2
- import { InjectionToken, inject } from '@angular/core';
3
- import { set } from 'lodash-es';
4
- import { GeorgianCalendar } from './georgian.calendar';
5
- import { JalaliCalendar } from './jalali.calendar';
6
- export const AX_DATETIME_CONFIG = new InjectionToken('AX_DATETIME_CONFIG', {
7
- providedIn: 'root',
8
- factory: () => {
9
- const global = inject(AX_GLOBAL_CONFIG);
10
- set(global, 'dateTime', AX_DATETIME_CONFIG);
11
- return AXDateTimeDefaultConfig;
12
- },
13
- });
14
- export const AXDateTimeDefaultConfig = {
15
- calendar: 'georgian',
16
- calendars: {
17
- georgian: new GeorgianCalendar({
18
- weekdays: [0, 1, 2, 3, 4, 5, 6],
19
- weekend: [5, 6],
20
- formats: {
21
- dateInput: 'yyyy/MM/dd',
22
- timeInput: 'HH:mm',
23
- dateTimeInput: 'yyyy/MM/dd HH:mm',
24
- dateDisplay: 'DDDD, d MMM yyyy',
25
- timeDisplay: 'HH:mm',
26
- dateTimeDisplay: 'DDDD, d MMM yyyy HH:mm',
27
- },
28
- }),
29
- jalali: new JalaliCalendar({
30
- weekdays: [6, 0, 1, 2, 3, 4, 5],
31
- weekend: [6],
32
- formats: {
33
- dateInput: 'yyyy/MM/dd',
34
- timeInput: 'HH:mm',
35
- dateTimeInput: 'yyyy/MM/dd HH:mm',
36
- dateDisplay: 'DDDD, d MMM yyyy',
37
- timeDisplay: 'HH:mm',
38
- dateTimeDisplay: 'DDDD, d MMM yyyy HH:mm',
39
- },
40
- }),
41
- },
42
- };
43
- export function dateTimeConfig(config = {}) {
44
- const result = {
45
- ...AXDateTimeDefaultConfig,
46
- ...config,
47
- };
48
- return result;
49
- }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZVRpbWUuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2RhdGVUaW1lL3NyYy9saWIvZGF0ZVRpbWUuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFaEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBU25ELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFtQixvQkFBb0IsRUFBRTtJQUMzRixVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ1osTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDeEMsR0FBRyxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUM1QyxPQUFPLHVCQUF1QixDQUFDO0lBQ2pDLENBQUM7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBcUI7SUFDdkQsUUFBUSxFQUFFLFVBQVU7SUFDcEIsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLElBQUksZ0JBQWdCLENBQUM7WUFDN0IsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDZixPQUFPLEVBQUU7Z0JBQ1AsU0FBUyxFQUFFLFlBQVk7Z0JBQ3ZCLFNBQVMsRUFBRSxPQUFPO2dCQUNsQixhQUFhLEVBQUUsa0JBQWtCO2dCQUNqQyxXQUFXLEVBQUUsa0JBQWtCO2dCQUMvQixXQUFXLEVBQUUsT0FBTztnQkFDcEIsZUFBZSxFQUFFLHdCQUF3QjthQUMxQztTQUNGLENBQUM7UUFDRixNQUFNLEVBQUUsSUFBSSxjQUFjLENBQUM7WUFDekIsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNaLE9BQU8sRUFBRTtnQkFDUCxTQUFTLEVBQUUsWUFBWTtnQkFDdkIsU0FBUyxFQUFFLE9BQU87Z0JBQ2xCLGFBQWEsRUFBRSxrQkFBa0I7Z0JBQ2pDLFdBQVcsRUFBRSxrQkFBa0I7Z0JBQy9CLFdBQVcsRUFBRSxPQUFPO2dCQUNwQixlQUFlLEVBQUUsd0JBQXdCO2FBQzFDO1NBQ0YsQ0FBQztLQUNIO0NBQ0YsQ0FBQztBQUlGLE1BQU0sVUFBVSxjQUFjLENBQUMsU0FBZ0MsRUFBRTtJQUMvRCxNQUFNLE1BQU0sR0FBRztRQUNiLEdBQUcsdUJBQXVCO1FBQzFCLEdBQUcsTUFBTTtLQUNWLENBQUM7SUFDRixPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhfR0xPQkFMX0NPTkZJRyB9IGZyb20gJ0BhY29yZXgvY29yZS9jb25maWcnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEFYQ2FsZW5kYXIgfSBmcm9tICcuL2RhdGV0aW1lLmNsYXNzJztcbmltcG9ydCB7IEdlb3JnaWFuQ2FsZW5kYXIgfSBmcm9tICcuL2dlb3JnaWFuLmNhbGVuZGFyJztcbmltcG9ydCB7IEphbGFsaUNhbGVuZGFyIH0gZnJvbSAnLi9qYWxhbGkuY2FsZW5kYXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYRGF0ZVRpbWVDb25maWcge1xuICBjYWxlbmRhcjogc3RyaW5nO1xuICBjYWxlbmRhcnM6IHtcbiAgICBba2V5OiBzdHJpbmddOiBBWENhbGVuZGFyO1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgQVhfREFURVRJTUVfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPEFYRGF0ZVRpbWVDb25maWc+KCdBWF9EQVRFVElNRV9DT05GSUcnLCB7XG4gIHByb3ZpZGVkSW46ICdyb290JyxcbiAgZmFjdG9yeTogKCkgPT4ge1xuICAgIGNvbnN0IGdsb2JhbCA9IGluamVjdChBWF9HTE9CQUxfQ09ORklHKTtcbiAgICBzZXQoZ2xvYmFsLCAnZGF0ZVRpbWUnLCBBWF9EQVRFVElNRV9DT05GSUcpO1xuICAgIHJldHVybiBBWERhdGVUaW1lRGVmYXVsdENvbmZpZztcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgQVhEYXRlVGltZURlZmF1bHRDb25maWc6IEFYRGF0ZVRpbWVDb25maWcgPSB7XG4gIGNhbGVuZGFyOiAnZ2VvcmdpYW4nLFxuICBjYWxlbmRhcnM6IHtcbiAgICBnZW9yZ2lhbjogbmV3IEdlb3JnaWFuQ2FsZW5kYXIoe1xuICAgICAgd2Vla2RheXM6IFswLCAxLCAyLCAzLCA0LCA1LCA2XSxcbiAgICAgIHdlZWtlbmQ6IFs1LCA2XSxcbiAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgZGF0ZUlucHV0OiAneXl5eS9NTS9kZCcsXG4gICAgICAgIHRpbWVJbnB1dDogJ0hIOm1tJyxcbiAgICAgICAgZGF0ZVRpbWVJbnB1dDogJ3l5eXkvTU0vZGQgSEg6bW0nLFxuICAgICAgICBkYXRlRGlzcGxheTogJ0REREQsIGQgTU1NIHl5eXknLFxuICAgICAgICB0aW1lRGlzcGxheTogJ0hIOm1tJyxcbiAgICAgICAgZGF0ZVRpbWVEaXNwbGF5OiAnRERERCwgZCBNTU0geXl5eSBISDptbScsXG4gICAgICB9LFxuICAgIH0pLFxuICAgIGphbGFsaTogbmV3IEphbGFsaUNhbGVuZGFyKHtcbiAgICAgIHdlZWtkYXlzOiBbNiwgMCwgMSwgMiwgMywgNCwgNV0sXG4gICAgICB3ZWVrZW5kOiBbNl0sXG4gICAgICBmb3JtYXRzOiB7XG4gICAgICAgIGRhdGVJbnB1dDogJ3l5eXkvTU0vZGQnLFxuICAgICAgICB0aW1lSW5wdXQ6ICdISDptbScsXG4gICAgICAgIGRhdGVUaW1lSW5wdXQ6ICd5eXl5L01NL2RkIEhIOm1tJyxcbiAgICAgICAgZGF0ZURpc3BsYXk6ICdERERELCBkIE1NTSB5eXl5JyxcbiAgICAgICAgdGltZURpc3BsYXk6ICdISDptbScsXG4gICAgICAgIGRhdGVUaW1lRGlzcGxheTogJ0REREQsIGQgTU1NIHl5eXkgSEg6bW0nLFxuICAgICAgfSxcbiAgICB9KSxcbiAgfSxcbn07XG5cbmV4cG9ydCB0eXBlIFBhcnRpYWxEYXRlVGltZUNvbmZpZyA9IFBhcnRpYWw8QVhEYXRlVGltZUNvbmZpZz47XG5cbmV4cG9ydCBmdW5jdGlvbiBkYXRlVGltZUNvbmZpZyhjb25maWc6IFBhcnRpYWxEYXRlVGltZUNvbmZpZyA9IHt9KTogQVhEYXRlVGltZUNvbmZpZyB7XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAuLi5BWERhdGVUaW1lRGVmYXVsdENvbmZpZyxcbiAgICAuLi5jb25maWcsXG4gIH07XG4gIHJldHVybiByZXN1bHQ7XG59XG4iXX0=