bpm-core 0.0.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 (186) hide show
  1. package/README.md +30 -0
  2. package/esm2022/bpm-core.mjs +5 -0
  3. package/esm2022/lib/classes/form-validation.mjs +80 -0
  4. package/esm2022/lib/classes/index.mjs +2 -0
  5. package/esm2022/lib/components/app-component-sections/activities/activities.component.mjs +51 -0
  6. package/esm2022/lib/components/app-component-sections/comment-section/comment-section.component.mjs +66 -0
  7. package/esm2022/lib/components/app-component-sections/faq-sidenav/faq-sidenav.component.mjs +29 -0
  8. package/esm2022/lib/components/app-component-sections/faqs/faqs.component.mjs +32 -0
  9. package/esm2022/lib/components/app-component-sections/faqs/index.mjs +2 -0
  10. package/esm2022/lib/components/app-component-sections/feedback-section/feedback-section.component.mjs +236 -0
  11. package/esm2022/lib/components/app-component-sections/form-section/form-section.component.mjs +270 -0
  12. package/esm2022/lib/components/app-component-sections/index.mjs +9 -0
  13. package/esm2022/lib/components/app-component-sections/main-request-details/main-request-details.component.mjs +34 -0
  14. package/esm2022/lib/components/app-component-sections/profile-section/profile-section.component.mjs +45 -0
  15. package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs +162 -0
  16. package/esm2022/lib/components/app-component-sections/status/status.component.mjs +38 -0
  17. package/esm2022/lib/components/app-component-sections/workflow-section/workflow-section.component.mjs +162 -0
  18. package/esm2022/lib/components/shared-components/confirmation-popup/confirmation-popup.component.mjs +39 -0
  19. package/esm2022/lib/components/shared-components/delete-popup/delete-popup.component.mjs +19 -0
  20. package/esm2022/lib/components/shared-components/dialogs/confirm-dialog/confirm-dialog.component.mjs +30 -0
  21. package/esm2022/lib/components/shared-components/dialogs/delete-dialog/delete-dialog.component.mjs +28 -0
  22. package/esm2022/lib/components/shared-components/dialogs/submit-dialog/submit-dialog.component.mjs +72 -0
  23. package/esm2022/lib/components/shared-components/doc-uploader/docs-uploader.component.mjs +686 -0
  24. package/esm2022/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.mjs +77 -0
  25. package/esm2022/lib/components/shared-components/form-field/attachment-section/attachment-section.component.mjs +181 -0
  26. package/esm2022/lib/components/shared-components/form-field/base-component/base-component.component.mjs +198 -0
  27. package/esm2022/lib/components/shared-components/form-field/checkbox/checkbox.component.mjs +69 -0
  28. package/esm2022/lib/components/shared-components/form-field/custom-searchable-autocomplete/custom-searchable.component.mjs +201 -0
  29. package/esm2022/lib/components/shared-components/form-field/date-picker/date-format.mjs +31 -0
  30. package/esm2022/lib/components/shared-components/form-field/date-picker/date-picker.component.mjs +244 -0
  31. package/esm2022/lib/components/shared-components/form-field/date-range-picker/date-range-picker.component.mjs +26 -0
  32. package/esm2022/lib/components/shared-components/form-field/form-label/form-label.component.mjs +31 -0
  33. package/esm2022/lib/components/shared-components/form-field/index.mjs +25 -0
  34. package/esm2022/lib/components/shared-components/form-field/info-item/info-item.component.mjs +72 -0
  35. package/esm2022/lib/components/shared-components/form-field/input/input.component.mjs +155 -0
  36. package/esm2022/lib/components/shared-components/form-field/input-autocomplete/index.mjs +3 -0
  37. package/esm2022/lib/components/shared-components/form-field/input-autocomplete/input-autocomplete.model.mjs +2 -0
  38. package/esm2022/lib/components/shared-components/form-field/input-currency/input-currency.component.mjs +157 -0
  39. package/esm2022/lib/components/shared-components/form-field/input-email/input-email.component.mjs +114 -0
  40. package/esm2022/lib/components/shared-components/form-field/input-mask/input-mask.component.mjs +111 -0
  41. package/esm2022/lib/components/shared-components/form-field/input-number/input-number.component.mjs +153 -0
  42. package/esm2022/lib/components/shared-components/form-field/input-telephone/input-telephone.component.mjs +176 -0
  43. package/esm2022/lib/components/shared-components/form-field/radio/radio.component.mjs +38 -0
  44. package/esm2022/lib/components/shared-components/form-field/repeated-list/repeated-list.component.mjs +32 -0
  45. package/esm2022/lib/components/shared-components/form-field/search-employee/search-employee.component.mjs +228 -0
  46. package/esm2022/lib/components/shared-components/form-field/select/select.component.mjs +191 -0
  47. package/esm2022/lib/components/shared-components/form-field/table-list/table-list.component.mjs +116 -0
  48. package/esm2022/lib/components/shared-components/form-field/textarea/special-chars.directive.mjs +39 -0
  49. package/esm2022/lib/components/shared-components/form-field/textarea/textarea.component.mjs +88 -0
  50. package/esm2022/lib/components/shared-components/form-field/toggle-button/toggle-button.component.mjs +75 -0
  51. package/esm2022/lib/components/shared-components/index.mjs +10 -0
  52. package/esm2022/lib/components/shared-components/terms-conditions/terms-conditions.component.mjs +31 -0
  53. package/esm2022/lib/components/shared-components/title-section/title-section.component.mjs +31 -0
  54. package/esm2022/lib/constants/constants.mjs +144 -0
  55. package/esm2022/lib/constants/index.mjs +2 -0
  56. package/esm2022/lib/environments/environment.local.mjs +27 -0
  57. package/esm2022/lib/functions/data-to-blob.mjs +12 -0
  58. package/esm2022/lib/functions/encode-password.mjs +14 -0
  59. package/esm2022/lib/functions/handel-error-response.mjs +12 -0
  60. package/esm2022/lib/functions/index.mjs +5 -0
  61. package/esm2022/lib/functions/is-valid-data.mjs +42 -0
  62. package/esm2022/lib/hooks/index.mjs +3 -0
  63. package/esm2022/lib/hooks/load-form.mjs +13 -0
  64. package/esm2022/lib/hooks/save-form.mjs +18 -0
  65. package/esm2022/lib/i18n/ar.mjs +183 -0
  66. package/esm2022/lib/i18n/en.mjs +187 -0
  67. package/esm2022/lib/i18n/index.mjs +3 -0
  68. package/esm2022/lib/interfaces/api-response.interface.mjs +2 -0
  69. package/esm2022/lib/interfaces/document-file.interface.mjs +2 -0
  70. package/esm2022/lib/interfaces/form-items.interface.mjs +2 -0
  71. package/esm2022/lib/interfaces/form.interface.mjs +150 -0
  72. package/esm2022/lib/interfaces/igate-user.interface.mjs +2 -0
  73. package/esm2022/lib/interfaces/index.mjs +8 -0
  74. package/esm2022/lib/interfaces/lov-list.interface.mjs +2 -0
  75. package/esm2022/lib/interfaces/lov.interface.mjs +2 -0
  76. package/esm2022/lib/interfaces/shared.interface.mjs +2 -0
  77. package/esm2022/lib/pipes/currency.pipe.mjs +66 -0
  78. package/esm2022/lib/pipes/format-as-password.pipe.mjs +19 -0
  79. package/esm2022/lib/pipes/index.mjs +3 -0
  80. package/esm2022/lib/services/feedBack.service.mjs +80 -0
  81. package/esm2022/lib/services/i18n.service.mjs +36 -0
  82. package/esm2022/lib/services/index.mjs +3 -0
  83. package/esm2022/lib/services/sidenav.service.mjs +69 -0
  84. package/esm2022/lib/validators/ar.directive.mjs +53 -0
  85. package/esm2022/lib/validators/currency.directive.mjs +74 -0
  86. package/esm2022/lib/validators/en.directive.mjs +50 -0
  87. package/esm2022/lib/validators/id.validator.mjs +66 -0
  88. package/esm2022/lib/validators/index.mjs +8 -0
  89. package/esm2022/lib/validators/string-to-boolean.pipe.mjs +16 -0
  90. package/esm2022/lib/validators/text.directive.mjs +50 -0
  91. package/esm2022/lib/validators/timer.pipe.mjs +19 -0
  92. package/esm2022/public-api.mjs +16 -0
  93. package/fesm2022/bpm-core.mjs +6005 -0
  94. package/fesm2022/bpm-core.mjs.map +1 -0
  95. package/index.d.ts +5 -0
  96. package/lib/classes/form-validation.d.ts +19 -0
  97. package/lib/classes/index.d.ts +1 -0
  98. package/lib/components/app-component-sections/activities/activities.component.d.ts +22 -0
  99. package/lib/components/app-component-sections/comment-section/comment-section.component.d.ts +19 -0
  100. package/lib/components/app-component-sections/faq-sidenav/faq-sidenav.component.d.ts +13 -0
  101. package/lib/components/app-component-sections/faqs/faqs.component.d.ts +17 -0
  102. package/lib/components/app-component-sections/faqs/index.d.ts +1 -0
  103. package/lib/components/app-component-sections/feedback-section/feedback-section.component.d.ts +38 -0
  104. package/lib/components/app-component-sections/form-section/form-section.component.d.ts +58 -0
  105. package/lib/components/app-component-sections/index.d.ts +8 -0
  106. package/lib/components/app-component-sections/main-request-details/main-request-details.component.d.ts +13 -0
  107. package/lib/components/app-component-sections/profile-section/profile-section.component.d.ts +17 -0
  108. package/lib/components/app-component-sections/service-header/service-header.component.d.ts +35 -0
  109. package/lib/components/app-component-sections/status/status.component.d.ts +23 -0
  110. package/lib/components/app-component-sections/workflow-section/workflow-section.component.d.ts +29 -0
  111. package/lib/components/shared-components/confirmation-popup/confirmation-popup.component.d.ts +25 -0
  112. package/lib/components/shared-components/delete-popup/delete-popup.component.d.ts +6 -0
  113. package/lib/components/shared-components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +11 -0
  114. package/lib/components/shared-components/dialogs/delete-dialog/delete-dialog.component.d.ts +11 -0
  115. package/lib/components/shared-components/dialogs/submit-dialog/submit-dialog.component.d.ts +15 -0
  116. package/lib/components/shared-components/doc-uploader/docs-uploader.component.d.ts +144 -0
  117. package/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.d.ts +16 -0
  118. package/lib/components/shared-components/form-field/attachment-section/attachment-section.component.d.ts +30 -0
  119. package/lib/components/shared-components/form-field/base-component/base-component.component.d.ts +63 -0
  120. package/lib/components/shared-components/form-field/checkbox/checkbox.component.d.ts +18 -0
  121. package/lib/components/shared-components/form-field/custom-searchable-autocomplete/custom-searchable.component.d.ts +29 -0
  122. package/lib/components/shared-components/form-field/date-picker/date-format.d.ts +17 -0
  123. package/lib/components/shared-components/form-field/date-picker/date-picker.component.d.ts +41 -0
  124. package/lib/components/shared-components/form-field/date-range-picker/date-range-picker.component.d.ts +10 -0
  125. package/lib/components/shared-components/form-field/form-label/form-label.component.d.ts +12 -0
  126. package/lib/components/shared-components/form-field/index.d.ts +24 -0
  127. package/lib/components/shared-components/form-field/info-item/info-item.component.d.ts +23 -0
  128. package/lib/components/shared-components/form-field/input/input.component.d.ts +32 -0
  129. package/lib/components/shared-components/form-field/input-autocomplete/index.d.ts +1 -0
  130. package/lib/components/shared-components/form-field/input-autocomplete/input-autocomplete.model.d.ts +6 -0
  131. package/lib/components/shared-components/form-field/input-currency/input-currency.component.d.ts +31 -0
  132. package/lib/components/shared-components/form-field/input-email/input-email.component.d.ts +27 -0
  133. package/lib/components/shared-components/form-field/input-mask/input-mask.component.d.ts +27 -0
  134. package/lib/components/shared-components/form-field/input-number/input-number.component.d.ts +30 -0
  135. package/lib/components/shared-components/form-field/input-telephone/input-telephone.component.d.ts +45 -0
  136. package/lib/components/shared-components/form-field/radio/radio.component.d.ts +10 -0
  137. package/lib/components/shared-components/form-field/repeated-list/repeated-list.component.d.ts +9 -0
  138. package/lib/components/shared-components/form-field/search-employee/search-employee.component.d.ts +44 -0
  139. package/lib/components/shared-components/form-field/select/select.component.d.ts +36 -0
  140. package/lib/components/shared-components/form-field/table-list/table-list.component.d.ts +26 -0
  141. package/lib/components/shared-components/form-field/textarea/special-chars.directive.d.ts +10 -0
  142. package/lib/components/shared-components/form-field/textarea/textarea.component.d.ts +20 -0
  143. package/lib/components/shared-components/form-field/toggle-button/toggle-button.component.d.ts +20 -0
  144. package/lib/components/shared-components/index.d.ts +9 -0
  145. package/lib/components/shared-components/terms-conditions/terms-conditions.component.d.ts +12 -0
  146. package/lib/components/shared-components/title-section/title-section.component.d.ts +13 -0
  147. package/lib/constants/constants.d.ts +122 -0
  148. package/lib/constants/index.d.ts +1 -0
  149. package/lib/environments/environment.local.d.ts +26 -0
  150. package/lib/functions/data-to-blob.d.ts +1 -0
  151. package/lib/functions/encode-password.d.ts +1 -0
  152. package/lib/functions/handel-error-response.d.ts +4 -0
  153. package/lib/functions/index.d.ts +4 -0
  154. package/lib/functions/is-valid-data.d.ts +1 -0
  155. package/lib/hooks/index.d.ts +2 -0
  156. package/lib/hooks/load-form.d.ts +10 -0
  157. package/lib/hooks/save-form.d.ts +15 -0
  158. package/lib/i18n/ar.d.ts +170 -0
  159. package/lib/i18n/en.d.ts +174 -0
  160. package/lib/i18n/index.d.ts +2 -0
  161. package/lib/interfaces/api-response.interface.d.ts +5 -0
  162. package/lib/interfaces/document-file.interface.d.ts +12 -0
  163. package/lib/interfaces/form-items.interface.d.ts +14 -0
  164. package/lib/interfaces/form.interface.d.ts +95 -0
  165. package/lib/interfaces/igate-user.interface.d.ts +16 -0
  166. package/lib/interfaces/index.d.ts +7 -0
  167. package/lib/interfaces/lov-list.interface.d.ts +10 -0
  168. package/lib/interfaces/lov.interface.d.ts +19 -0
  169. package/lib/interfaces/shared.interface.d.ts +21 -0
  170. package/lib/pipes/currency.pipe.d.ts +13 -0
  171. package/lib/pipes/format-as-password.pipe.d.ts +7 -0
  172. package/lib/pipes/index.d.ts +2 -0
  173. package/lib/services/feedBack.service.d.ts +21 -0
  174. package/lib/services/i18n.service.d.ts +10 -0
  175. package/lib/services/index.d.ts +2 -0
  176. package/lib/services/sidenav.service.d.ts +28 -0
  177. package/lib/validators/ar.directive.d.ts +11 -0
  178. package/lib/validators/currency.directive.d.ts +16 -0
  179. package/lib/validators/en.directive.d.ts +11 -0
  180. package/lib/validators/id.validator.d.ts +3 -0
  181. package/lib/validators/index.d.ts +7 -0
  182. package/lib/validators/string-to-boolean.pipe.d.ts +7 -0
  183. package/lib/validators/text.directive.d.ts +12 -0
  184. package/lib/validators/timer.pipe.d.ts +7 -0
  185. package/package.json +26 -0
  186. package/public-api.d.ts +13 -0
@@ -0,0 +1,74 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /* eslint-disable @angular-eslint/directive-selector */
3
+ import { Directive, HostListener, Input } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../pipes";
6
+ export class MycurrencyDirective {
7
+ elementRef;
8
+ formatcurrencypipe;
9
+ el;
10
+ decimals;
11
+ constructor(elementRef, formatcurrencypipe) {
12
+ this.elementRef = elementRef;
13
+ this.formatcurrencypipe = formatcurrencypipe;
14
+ this.el = this.elementRef.nativeElement;
15
+ }
16
+ ngOnInit() {
17
+ this.el.value = this.formatcurrencypipe.transform(this.el.value);
18
+ }
19
+ onFocus(value, event) {
20
+ this.el.value = this.formatcurrencypipe.parse(value); // opossite of transform
21
+ if (event.which == 9) {
22
+ return false;
23
+ }
24
+ return this.el.select();
25
+ }
26
+ onBlur(value) {
27
+ this.el.value = this.formatcurrencypipe.transform(value);
28
+ }
29
+ onKeyDown(event) {
30
+ const e = event;
31
+ if (e.key == 'و' || e.key == 'ز') {
32
+ e.preventDefault();
33
+ }
34
+ if ([46, 8, 9, 27, 13, 110, 190].indexOf(e.keyCode) !== -1 ||
35
+ // Allow: Ctrl+A
36
+ (e.keyCode === 65 && (e.ctrlKey || e.metaKey)) ||
37
+ // Allow: Ctrl+C
38
+ (e.keyCode === 67 && (e.ctrlKey || e.metaKey)) ||
39
+ // Allow: Ctrl+V
40
+ (e.keyCode === 86 && (e.ctrlKey || e.metaKey)) ||
41
+ // Allow: Ctrl+X
42
+ (e.keyCode === 88 && (e.ctrlKey || e.metaKey)) ||
43
+ (e.keyCode === 188) ||
44
+ // Allow: home, end, left, right
45
+ (e.keyCode >= 35 && e.keyCode <= 39)) {
46
+ // let it happen, don't do anything
47
+ return;
48
+ }
49
+ // Ensure that it is a number and stop the keypress
50
+ if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
51
+ e.preventDefault();
52
+ }
53
+ }
54
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MycurrencyDirective, deps: [{ token: i0.ElementRef }, { token: i1.MycurrencyPipe }], target: i0.ɵɵFactoryTarget.Directive });
55
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: MycurrencyDirective, selector: "[appMycurrency]", inputs: { decimals: "decimals" }, host: { listeners: { "focus": "onFocus($event.target.value,$event)", "blur": "onBlur($event.target.value)", "keydown": "onKeyDown($event)" } }, ngImport: i0 });
56
+ }
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MycurrencyDirective, decorators: [{
58
+ type: Directive,
59
+ args: [{
60
+ selector: '[appMycurrency]'
61
+ }]
62
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MycurrencyPipe }], propDecorators: { decimals: [{
63
+ type: Input
64
+ }], onFocus: [{
65
+ type: HostListener,
66
+ args: ["focus", ["$event.target.value", "$event"]]
67
+ }], onBlur: [{
68
+ type: HostListener,
69
+ args: ["blur", ["$event.target.value"]]
70
+ }], onKeyDown: [{
71
+ type: HostListener,
72
+ args: ['keydown', ['$event']]
73
+ }] } });
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi92YWxpZGF0b3JzL2N1cnJlbmN5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsdURBQXVEO0FBQ3ZELE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFzQixLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQUtqRixNQUFNLE9BQU8sbUJBQW1CO0lBS3BCO0lBQ0E7SUFMRixFQUFFLENBQU07SUFDUCxRQUFRLENBQVU7SUFFM0IsWUFDVSxVQUFxQixFQUNyQixrQkFBaUM7UUFEakMsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUNyQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWU7UUFFekMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQUssRUFBQyxLQUFLO1FBQ2pCLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyx3QkFBd0I7UUFDOUUsSUFBRyxLQUFLLENBQUMsS0FBSyxJQUFHLENBQUMsRUFDbEIsQ0FBQztZQUNHLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7SUFFMUIsQ0FBQztJQUdELE1BQU0sQ0FBQyxLQUFLO1FBQ1YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBQ29DLFNBQVMsQ0FBQyxLQUFLO1FBQ2xELE1BQU0sQ0FBQyxHQUFtQixLQUFLLENBQUM7UUFDOUIsSUFBRyxDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsRUFBQyxDQUFDO1lBQzNCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN6QixDQUFDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hELGdCQUFnQjtZQUNoQixDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUMsZ0JBQWdCO1lBQ2hCLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5QyxnQkFBZ0I7WUFDaEIsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzlDLGdCQUFnQjtZQUNoQixDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLEdBQUcsQ0FBRTtZQUNwQixnQ0FBZ0M7WUFDaEMsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDckMsbUNBQW1DO1lBQ25DLE9BQU87UUFDVCxDQUFDO1FBQ0QsbURBQW1EO1FBQ25ELElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUUsRUFBRSxDQUFDO1lBQzdGLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQzt1R0FwRFUsbUJBQW1COzJGQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7NEdBR1UsUUFBUTtzQkFBaEIsS0FBSztnQkFZTixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyxFQUFDLENBQUMscUJBQXFCLEVBQUMsUUFBUSxDQUFDO2dCQVl0RCxNQUFNO3NCQURMLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMscUJBQXFCLENBQUM7Z0JBSVIsU0FBUztzQkFBN0MsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXHJcbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3IgKi9cclxuaW1wb3J0IHtEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgRWxlbWVudFJlZiwgT25Jbml0LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7TXljdXJyZW5jeVBpcGV9IGZyb20gXCIuLi9waXBlc1wiO1xyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1thcHBNeWN1cnJlbmN5XSdcclxufSlcclxuZXhwb3J0IGNsYXNzIE15Y3VycmVuY3lEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXR7XHJcbiAgcHJpdmF0ZSBlbDogYW55O1xyXG4gIEBJbnB1dCgpIGRlY2ltYWxzITogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWxlbWVudFJlZjpFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBmb3JtYXRjdXJyZW5jeXBpcGU6TXljdXJyZW5jeVBpcGVcclxuICApIHtcclxuICAgIHRoaXMuZWwgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbiAgbmdPbkluaXQoKXtcclxuICAgIHRoaXMuZWwudmFsdWUgPSB0aGlzLmZvcm1hdGN1cnJlbmN5cGlwZS50cmFuc2Zvcm0odGhpcy5lbC52YWx1ZSk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoXCJmb2N1c1wiLFtcIiRldmVudC50YXJnZXQudmFsdWVcIixcIiRldmVudFwiXSlcclxuICBvbkZvY3VzKHZhbHVlLGV2ZW50KSB7XHJcbiAgICB0aGlzLmVsLnZhbHVlID0gdGhpcy5mb3JtYXRjdXJyZW5jeXBpcGUucGFyc2UodmFsdWUpOyAvLyBvcG9zc2l0ZSBvZiB0cmFuc2Zvcm1cclxuICAgIGlmKGV2ZW50LndoaWNoPT0gOSlcclxuICAgIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5lbC5zZWxlY3QoKTtcclxuXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKFwiYmx1clwiLCBbXCIkZXZlbnQudGFyZ2V0LnZhbHVlXCJdKVxyXG4gIG9uQmx1cih2YWx1ZSkge1xyXG4gICAgdGhpcy5lbC52YWx1ZSA9IHRoaXMuZm9ybWF0Y3VycmVuY3lwaXBlLnRyYW5zZm9ybSh2YWx1ZSk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKSBvbktleURvd24oZXZlbnQpIHtcclxuICAgIGNvbnN0IGUgPSA8S2V5Ym9hcmRFdmVudD4gZXZlbnQ7XHJcbiAgICAgIGlmKGUua2V5ID09ICfZiCcgfHwgZS5rZXkgPT0gJ9iyJyl7XHJcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoWzQ2LCA4LCA5LCAyNywgMTMsIDExMCwgMTkwXS5pbmRleE9mKGUua2V5Q29kZSkgIT09IC0xIHx8XHJcbiAgICAgICAgLy8gQWxsb3c6IEN0cmwrQVxyXG4gICAgICAgIChlLmtleUNvZGUgPT09IDY1ICYmIChlLmN0cmxLZXkgfHwgZS5tZXRhS2V5KSkgfHxcclxuICAgICAgICAvLyBBbGxvdzogQ3RybCtDXHJcbiAgICAgICAgKGUua2V5Q29kZSA9PT0gNjcgJiYgKGUuY3RybEtleSB8fCBlLm1ldGFLZXkpKSB8fFxyXG4gICAgICAgIC8vIEFsbG93OiBDdHJsK1ZcclxuICAgICAgICAoZS5rZXlDb2RlID09PSA4NiAmJiAoZS5jdHJsS2V5IHx8IGUubWV0YUtleSkpIHx8XHJcbiAgICAgICAgLy8gQWxsb3c6IEN0cmwrWFxyXG4gICAgICAgIChlLmtleUNvZGUgPT09IDg4ICYmIChlLmN0cmxLZXkgfHwgZS5tZXRhS2V5KSkgfHxcclxuICAgICAgICAoZS5rZXlDb2RlID09PSAxODggKSB8fFxyXG4gICAgICAgIC8vIEFsbG93OiBob21lLCBlbmQsIGxlZnQsIHJpZ2h0XHJcbiAgICAgICAgKGUua2V5Q29kZSA+PSAzNSAmJiBlLmtleUNvZGUgPD0gMzkpKSB7XHJcbiAgICAgICAgICAvLyBsZXQgaXQgaGFwcGVuLCBkb24ndCBkbyBhbnl0aGluZ1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBFbnN1cmUgdGhhdCBpdCBpcyBhIG51bWJlciBhbmQgc3RvcCB0aGUga2V5cHJlc3NcclxuICAgICAgICBpZiAoKGUuc2hpZnRLZXkgfHwgKGUua2V5Q29kZSA8IDQ4IHx8IGUua2V5Q29kZSA+IDU3KSkgJiYgKGUua2V5Q29kZSA8IDk2IHx8IGUua2V5Q29kZSA+IDEwNSApKSB7XHJcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,50 @@
1
+ /* eslint-disable @angular-eslint/directive-selector */
2
+ /* eslint-disable @typescript-eslint/no-empty-function */
3
+ import { Directive, HostListener } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ export class EnOnlyDirective {
6
+ specialKeys = ['Backspace', 'ArrowRight', 'ArrowLeft', 'ArrowUp', 'ArrowDown', 'Control'];
7
+ constructor() {
8
+ }
9
+ regex = /^[~`!@#$%^&*()_+=[\]\{}|;':",.\/<>?a-zA-Z0-9- ]+$/;
10
+ onKeyDown(event) {
11
+ const text = event.key;
12
+ const english = /^[a-zA-Z ]*$/;
13
+ if (this.regex.test(text) || text == " " || text == 'Backspace' || (event.ctrlKey && (text == 'c' || text == 'ؤ' || text == 'v' || text == 'ر' || text == 'x' || text == 'ء' || text == 'a' || text == 'ش' || text == 'z' || text == 'ئ'))) {
14
+ return;
15
+ }
16
+ else {
17
+ event.preventDefault();
18
+ }
19
+ }
20
+ onPaste(event) {
21
+ const data = event.clipboardData.getData('text/plain');
22
+ if (!(this.regex.test(data))) {
23
+ event.preventDefault();
24
+ }
25
+ }
26
+ onDrop(event) {
27
+ const data = event.dataTransfer.getData("text/plain");
28
+ if (!(this.regex.test(data))) {
29
+ event.preventDefault();
30
+ }
31
+ }
32
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EnOnlyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
33
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: EnOnlyDirective, selector: "[enOnly]", host: { listeners: { "keydown": "onKeyDown($event)", "paste": "onPaste($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EnOnlyDirective, decorators: [{
36
+ type: Directive,
37
+ args: [{
38
+ selector: '[enOnly]'
39
+ }]
40
+ }], ctorParameters: () => [], propDecorators: { onKeyDown: [{
41
+ type: HostListener,
42
+ args: ['keydown', ['$event']]
43
+ }], onPaste: [{
44
+ type: HostListener,
45
+ args: ['paste', ['$event']]
46
+ }], onDrop: [{
47
+ type: HostListener,
48
+ args: ['drop', ['$event']]
49
+ }] } });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi92YWxpZGF0b3JzL2VuLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQseURBQXlEO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUt4RCxNQUFNLE9BQU8sZUFBZTtJQUNsQixXQUFXLEdBQUcsQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBRWpHO0lBRUEsQ0FBQztJQUVBLEtBQUssR0FBRyxtREFBbUQsQ0FBQztJQUc3RCxTQUFTLENBQUMsS0FBSztRQUNiLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDdkIsTUFBTSxPQUFPLEdBQUcsY0FBYyxDQUFDO1FBQy9CLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUssSUFBSSxJQUFJLEdBQUcsSUFBSyxJQUFJLElBQUksV0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSyxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFLLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFLLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDaFAsT0FBTztRQUNULENBQUM7YUFDSSxDQUFDO1lBQ0osS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3pCLENBQUM7SUFFSCxDQUFDO0lBTUQsT0FBTyxDQUFDLEtBQUs7UUFDWCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2RCxJQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFHLENBQUM7WUFDbEMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3pCLENBQUM7SUFFSCxDQUFDO0lBT0QsTUFBTSxDQUFDLEtBQUs7UUFDVixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDN0IsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDO3VHQTVDVSxlQUFlOzJGQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSDNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7aUJBQ3JCO3dEQVdDLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBaUJuQyxPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWNqQyxNQUFNO3NCQURMLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvciAqL1xyXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24gKi9cclxuaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2VuT25seV0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbk9ubHlEaXJlY3RpdmUge1xyXG4gIHByaXZhdGUgc3BlY2lhbEtleXMgPSBbJ0JhY2tzcGFjZScsICdBcnJvd1JpZ2h0JywgJ0Fycm93TGVmdCcsICdBcnJvd1VwJywgJ0Fycm93RG93bicsICdDb250cm9sJ11cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgIHJlZ2V4ID0gL15bfmAhQCMkJV4mKigpXys9W1xcXVxce318Oyc6XCIsLlxcLzw+P2EtekEtWjAtOS0gXSskLztcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25LZXlEb3duKGV2ZW50KSB7XHJcbiAgICBjb25zdCB0ZXh0ID0gZXZlbnQua2V5OyBcclxuICAgIGNvbnN0IGVuZ2xpc2ggPSAvXlthLXpBLVogXSokLztcclxuICAgIGlmICh0aGlzLnJlZ2V4LnRlc3QodGV4dCkgfHwgIHRleHQgPT0gXCIgXCIgfHwgIHRleHQgPT0gJ0JhY2tzcGFjZScgfHwgKGV2ZW50LmN0cmxLZXkgJiYgKHRleHQgPT0gJ2MnIHx8IHRleHQgPT0gJ9ikJyAgfHwgdGV4dCA9PSAndicgfHwgdGV4dCA9PSAn2LEnIHx8IHRleHQgPT0gJ3gnIHx8IHRleHQgPT0gJ9ihJyAgfHwgdGV4dCA9PSAnYScgfHwgdGV4dCA9PSAn2LQnIHx8IHRleHQgPT0gJ3onICB8fCB0ZXh0ID09ICfYpicpKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuIFxyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKVxyXG4gIG9uUGFzdGUoZXZlbnQpIHtcclxuICAgIGNvbnN0IGRhdGEgPSBldmVudC5jbGlwYm9hcmREYXRhLmdldERhdGEoJ3RleHQvcGxhaW4nKTtcclxuICAgIGlmICggICAgISh0aGlzLnJlZ2V4LnRlc3QoZGF0YSkpICkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG5cclxuXHJcblxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkcm9wJywgWyckZXZlbnQnXSlcclxuICBvbkRyb3AoZXZlbnQpIHtcclxuICAgIGNvbnN0IGRhdGEgPSBldmVudC5kYXRhVHJhbnNmZXIuZ2V0RGF0YShcInRleHQvcGxhaW5cIik7XHJcbiAgICBpZiAoISh0aGlzLnJlZ2V4LnRlc3QoZGF0YSkpKSB7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,66 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ export function validateSAID() {
3
+ if (this?.personalInfoFormTemp) {
4
+ let id = this?.personalInfoFormTemp?.get?.('elmIdNum')?.value;
5
+ const selectedType = this?.personalInfoFormTemp?.get?.('elmIdType')?.value?.value;
6
+ id = id.trim();
7
+ if (id.length > 0 && (selectedType == 'IQAMA' || selectedType == 'NATIONAL ID')) {
8
+ if (Number(id) === null) {
9
+ // return { idInvalid: true };
10
+ return false;
11
+ }
12
+ if (id.length !== 10) {
13
+ return { idInvalid: true };
14
+ // return false;
15
+ }
16
+ const type = id.substr(0, 1);
17
+ if (type !== '2' && type !== '1') {
18
+ return { idInvalid: true };
19
+ // return false;
20
+ }
21
+ let idType;
22
+ if (selectedType == 'IQAMA') {
23
+ idType = '2';
24
+ }
25
+ else if (selectedType == 'NATIONAL ID') {
26
+ idType = '1';
27
+ }
28
+ if (idType !== type) {
29
+ return { idInvalid: true };
30
+ // return false;
31
+ }
32
+ let sum = 0;
33
+ for (let i = 0; i < 10; i++) {
34
+ if (i % 2 === 0) {
35
+ const ZFOdd = String('00' + String(Number(id.substr(i, 1)) * 2)).slice(-2);
36
+ sum += Number(ZFOdd.substr(0, 1)) + Number(ZFOdd.substr(1, 1));
37
+ }
38
+ else {
39
+ sum += Number(id.substr(i, 1));
40
+ }
41
+ }
42
+ return { idInvalid: (sum % 10 !== 0) ? true : false };
43
+ // return (sum % 10 !== 0) ? false : true;
44
+ }
45
+ else if (id.length > 0 && selectedType == 'PASSPORT') {
46
+ const nameWithNumbersRegex = '^[\u0600-\u065F\u066A-\u06EF\u06FA-\u06FFa-zA-Z0-9]+[\u0600-\u065F\u066A-\u06EF\u06FA-\u06FFa-zA-Z0-9-_ ]*$';
47
+ if (!RegExp(nameWithNumbersRegex).test(id)) {
48
+ return { idInvalid: true };
49
+ // return false;
50
+ }
51
+ else {
52
+ return { idInvalid: false };
53
+ // return true;
54
+ }
55
+ }
56
+ else {
57
+ return { idInvalid: false };
58
+ // return true;
59
+ }
60
+ }
61
+ else {
62
+ return { idInvalid: false };
63
+ // return true;
64
+ }
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi92YWxpZGF0b3JzL2lkLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFFdkQsTUFBTSxVQUFVLFlBQVk7SUFFMUIsSUFBSSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQztRQUMvQixJQUFJLEVBQUUsR0FBRyxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSyxDQUFBO1FBQzdELE1BQU0sWUFBWSxHQUFHLElBQUksRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFBO1FBQ2pGLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZixJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLE9BQU8sSUFBSSxZQUFZLElBQUksYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNoRixJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDeEIsOEJBQThCO2dCQUM5QixPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7WUFDRCxJQUFJLEVBQUUsQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7Z0JBQ3JCLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQzNCLGdCQUFnQjtZQUNsQixDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDN0IsSUFBSSxJQUFJLEtBQUssR0FBRyxJQUFJLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQztnQkFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDM0IsZ0JBQWdCO1lBQ2xCLENBQUM7WUFDRCxJQUFJLE1BQU0sQ0FBQTtZQUNWLElBQUksWUFBWSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixNQUFNLEdBQUcsR0FBRyxDQUFBO1lBQ2QsQ0FBQztpQkFBTSxJQUFJLFlBQVksSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDekMsTUFBTSxHQUFHLEdBQUcsQ0FBQTtZQUNkLENBQUM7WUFDRCxJQUFJLE1BQU0sS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDcEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDM0IsZ0JBQWdCO1lBQ2xCLENBQUM7WUFFRCxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDWixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDaEIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDM0UsR0FBRyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqRSxDQUFDO3FCQUFNLENBQUM7b0JBQ04sR0FBRyxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqQyxDQUFDO1lBRUgsQ0FBQztZQUNELE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3RELDBDQUEwQztRQUM1QyxDQUFDO2FBQ0ksSUFBSSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxZQUFZLElBQUksVUFBVSxFQUFFLENBQUM7WUFDckQsTUFBTSxvQkFBb0IsR0FBRyw2R0FBNkcsQ0FBQTtZQUMxSSxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQzNCLGdCQUFnQjtZQUNsQixDQUFDO2lCQUNJLENBQUM7Z0JBQ0osT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztnQkFDNUIsZUFBZTtZQUNqQixDQUFDO1FBQ0gsQ0FBQzthQUNJLENBQUM7WUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQzVCLGVBQWU7UUFDakIsQ0FBQztJQUNILENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUM1QixlQUFlO0lBQ2pCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU0FJRCh0aGlzOiBhbnkpIHtcclxuXHJcbiAgaWYgKHRoaXM/LnBlcnNvbmFsSW5mb0Zvcm1UZW1wKSB7XHJcbiAgICBsZXQgaWQgPSB0aGlzPy5wZXJzb25hbEluZm9Gb3JtVGVtcD8uZ2V0Py4oJ2VsbUlkTnVtJyk/LnZhbHVlXHJcbiAgICBjb25zdCBzZWxlY3RlZFR5cGUgPSB0aGlzPy5wZXJzb25hbEluZm9Gb3JtVGVtcD8uZ2V0Py4oJ2VsbUlkVHlwZScpPy52YWx1ZT8udmFsdWVcclxuICAgIGlkID0gaWQudHJpbSgpO1xyXG4gICAgaWYgKGlkLmxlbmd0aCA+IDAgJiYgKHNlbGVjdGVkVHlwZSA9PSAnSVFBTUEnIHx8IHNlbGVjdGVkVHlwZSA9PSAnTkFUSU9OQUwgSUQnKSkge1xyXG4gICAgICBpZiAoTnVtYmVyKGlkKSA9PT0gbnVsbCkge1xyXG4gICAgICAgIC8vIHJldHVybiB7IGlkSW52YWxpZDogdHJ1ZSB9O1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoaWQubGVuZ3RoICE9PSAxMCkge1xyXG4gICAgICAgIHJldHVybiB7IGlkSW52YWxpZDogdHJ1ZSB9O1xyXG4gICAgICAgIC8vIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCB0eXBlID0gaWQuc3Vic3RyKDAsIDEpO1xyXG4gICAgICBpZiAodHlwZSAhPT0gJzInICYmIHR5cGUgIT09ICcxJykge1xyXG4gICAgICAgIHJldHVybiB7IGlkSW52YWxpZDogdHJ1ZSB9O1xyXG4gICAgICAgIC8vIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgaWRUeXBlXHJcbiAgICAgIGlmIChzZWxlY3RlZFR5cGUgPT0gJ0lRQU1BJykge1xyXG4gICAgICAgIGlkVHlwZSA9ICcyJ1xyXG4gICAgICB9IGVsc2UgaWYgKHNlbGVjdGVkVHlwZSA9PSAnTkFUSU9OQUwgSUQnKSB7XHJcbiAgICAgICAgaWRUeXBlID0gJzEnXHJcbiAgICAgIH1cclxuICAgICAgaWYgKGlkVHlwZSAhPT0gdHlwZSkge1xyXG4gICAgICAgIHJldHVybiB7IGlkSW52YWxpZDogdHJ1ZSB9O1xyXG4gICAgICAgIC8vIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGV0IHN1bSA9IDA7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTA7IGkrKykge1xyXG4gICAgICAgIGlmIChpICUgMiA9PT0gMCkge1xyXG4gICAgICAgICAgY29uc3QgWkZPZGQgPSBTdHJpbmcoJzAwJyArIFN0cmluZyhOdW1iZXIoaWQuc3Vic3RyKGksIDEpKSAqIDIpKS5zbGljZSgtMik7XHJcbiAgICAgICAgICBzdW0gKz0gTnVtYmVyKFpGT2RkLnN1YnN0cigwLCAxKSkgKyBOdW1iZXIoWkZPZGQuc3Vic3RyKDEsIDEpKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgc3VtICs9IE51bWJlcihpZC5zdWJzdHIoaSwgMSkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHsgaWRJbnZhbGlkOiAoc3VtICUgMTAgIT09IDApID8gdHJ1ZSA6IGZhbHNlIH07XHJcbiAgICAgIC8vIHJldHVybiAoc3VtICUgMTAgIT09IDApID8gZmFsc2UgOiB0cnVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoaWQubGVuZ3RoID4gMCAmJiBzZWxlY3RlZFR5cGUgPT0gJ1BBU1NQT1JUJykge1xyXG4gICAgICBjb25zdCBuYW1lV2l0aE51bWJlcnNSZWdleCA9ICdeW1xcdTA2MDAtXFx1MDY1RlxcdTA2NkEtXFx1MDZFRlxcdTA2RkEtXFx1MDZGRmEtekEtWjAtOV0rW1xcdTA2MDAtXFx1MDY1RlxcdTA2NkEtXFx1MDZFRlxcdTA2RkEtXFx1MDZGRmEtekEtWjAtOS1fIF0qJCdcclxuICAgICAgaWYgKCFSZWdFeHAobmFtZVdpdGhOdW1iZXJzUmVnZXgpLnRlc3QoaWQpKSB7XHJcbiAgICAgICAgcmV0dXJuIHsgaWRJbnZhbGlkOiB0cnVlIH07XHJcbiAgICAgICAgLy8gcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB7IGlkSW52YWxpZDogZmFsc2UgfTtcclxuICAgICAgICAvLyByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiB7IGlkSW52YWxpZDogZmFsc2UgfTtcclxuICAgICAgLy8gcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiB7IGlkSW52YWxpZDogZmFsc2UgfTtcclxuICAgIC8vIHJldHVybiB0cnVlO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,8 @@
1
+ export * from './ar.directive';
2
+ export * from './en.directive';
3
+ export * from './id.validator';
4
+ export * from './text.directive';
5
+ export * from './string-to-boolean.pipe';
6
+ export * from './timer.pipe';
7
+ export * from './currency.directive';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL3ZhbGlkYXRvcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FyLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZW4uZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pZC52YWxpZGF0b3InO1xyXG5leHBvcnQgKiBmcm9tICcuL3RleHQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zdHJpbmctdG8tYm9vbGVhbi5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi90aW1lci5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jdXJyZW5jeS5kaXJlY3RpdmUnO1xyXG4iXX0=
@@ -0,0 +1,16 @@
1
+ import { Pipe } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class stringToBooleanPipe {
4
+ transform(value) {
5
+ return Boolean(value);
6
+ }
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: stringToBooleanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
8
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: stringToBooleanPipe, name: "stringToBoolean" });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: stringToBooleanPipe, decorators: [{
11
+ type: Pipe,
12
+ args: [{
13
+ name: "stringToBoolean"
14
+ }]
15
+ }] });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXRvLWJvb2xlYW4ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvdmFsaWRhdG9ycy9zdHJpbmctdG8tYm9vbGVhbi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUtwRCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFNBQVMsQ0FBQyxLQUFhO1FBQ3RCLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3RCLENBQUM7dUdBSFUsbUJBQW1CO3FHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBSC9CLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGlCQUFpQjtpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiBcInN0cmluZ1RvQm9vbGVhblwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBzdHJpbmdUb0Jvb2xlYW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgcmV0dXJuIEJvb2xlYW4odmFsdWUpXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,50 @@
1
+ /* eslint-disable @typescript-eslint/no-unused-vars */
2
+ /* eslint-disable @angular-eslint/directive-selector */
3
+ import { Directive, HostListener, Input } from "@angular/core";
4
+ import * as i0 from "@angular/core";
5
+ export class TextDirective {
6
+ el;
7
+ decimals = 0;
8
+ constructor(el) {
9
+ this.el = el;
10
+ }
11
+ check(value) {
12
+ value.replace(/[\u0000-\u001F\u007F-\u009F]/g, "");
13
+ const arabicAlphabetDigits = /[\u0600-\u06ff]|[\u0750-\u077f]|[\ufb50-\ufc3f]|[\ufe70-\ufefc]|[\u0200]|[\u00A0]/g;
14
+ return (String(value).match(new RegExp('^[a-zA-Z ]*$')) || arabicAlphabetDigits.test(value));
15
+ // return String(value).match(new RegExp('^[a-zA-Z ]*$'));
16
+ }
17
+ onKeyDown(event) {
18
+ console.log("keydown", event);
19
+ const text = event.key;
20
+ if (this.check(this.el.nativeElement.value + (event.key != 'Backspace' ? event.key : '')) || text == " " || text == 'Backspace' || (event.ctrlKey && (text == 'c' || text == 'ؤ' || text == 'v' || text == 'ر' || text == 'x' || text == 'ء' || text == 'a' || text == 'ش' || text == 'z' || text == 'ئ'))) {
21
+ return;
22
+ }
23
+ else {
24
+ event.preventDefault();
25
+ }
26
+ }
27
+ onPaste(event) {
28
+ const data = event.clipboardData.getData('text/plain');
29
+ if (!this.check(data)) {
30
+ event.preventDefault();
31
+ }
32
+ }
33
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: TextDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
34
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: TextDirective, selector: "[textOnly]", inputs: { decimals: "decimals" }, host: { listeners: { "keydown": "onKeyDown($event)", "paste": "onPaste($event)" } }, ngImport: i0 });
35
+ }
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: TextDirective, decorators: [{
37
+ type: Directive,
38
+ args: [{
39
+ selector: "[textOnly]"
40
+ }]
41
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { decimals: [{
42
+ type: Input
43
+ }], onKeyDown: [{
44
+ type: HostListener,
45
+ args: ["keydown", ["$event"]]
46
+ }], onPaste: [{
47
+ type: HostListener,
48
+ args: ["paste", ["$event"]]
49
+ }] } });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL3ZhbGlkYXRvcnMvdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0RBQXNEO0FBQ3RELHVEQUF1RDtBQUV2RCxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ04sTUFBTSxlQUFlLENBQUM7O0FBS3ZCLE1BQU0sT0FBTyxhQUFhO0lBR0o7SUFGWCxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBRXRCLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUksQ0FBQztJQUUvQixLQUFLLENBQUMsS0FBYTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLCtCQUErQixFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBQ2xELE1BQU0sb0JBQW9CLEdBQUcsb0ZBQW9GLENBQUM7UUFFbEgsT0FBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUksQ0FBRTtRQUNsRywwREFBMEQ7SUFDNUQsQ0FBQztJQUtELFNBQVMsQ0FBQyxLQUFvQjtRQUM1QixPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUM3QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxXQUFXLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUMzUyxPQUFPO1FBQ1QsQ0FBQzthQUNJLENBQUM7WUFDSixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFHRCxPQUFPLENBQUMsS0FBcUI7UUFDM0IsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN0QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUE7UUFFeEIsQ0FBQztJQUNILENBQUM7dUdBbENVLGFBQWE7MkZBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFIekIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsWUFBWTtpQkFDdkI7K0VBRVUsUUFBUTtzQkFBaEIsS0FBSztnQkFlTixTQUFTO3NCQURSLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWFuQyxPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzICovXHJcbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3IgKi9cclxuXHJcbmltcG9ydCB7XHJcbiAgRGlyZWN0aXZlLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0XHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBcIlt0ZXh0T25seV1cIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGV4dERpcmVjdGl2ZSB7XHJcbiAgQElucHV0KCkgZGVjaW1hbHMgPSAwO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7IH1cclxuXHJcbiAgcHJpdmF0ZSBjaGVjayh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB2YWx1ZS5yZXBsYWNlKC9bXFx1MDAwMC1cXHUwMDFGXFx1MDA3Ri1cXHUwMDlGXS9nLCBcIlwiKVxyXG4gICAgY29uc3QgYXJhYmljQWxwaGFiZXREaWdpdHMgPSAvW1xcdTA2MDAtXFx1MDZmZl18W1xcdTA3NTAtXFx1MDc3Zl18W1xcdWZiNTAtXFx1ZmMzZl18W1xcdWZlNzAtXFx1ZmVmY118W1xcdTAyMDBdfFtcXHUwMEEwXS9nO1xyXG5cclxuICAgIHJldHVybiAgKFN0cmluZyh2YWx1ZSkubWF0Y2gobmV3IFJlZ0V4cCgnXlthLXpBLVogXSokJykpIHx8IGFyYWJpY0FscGhhYmV0RGlnaXRzLnRlc3QodmFsdWUpICAgKSA7XHJcbiAgICAvLyByZXR1cm4gU3RyaW5nKHZhbHVlKS5tYXRjaChuZXcgUmVnRXhwKCdeW2EtekEtWiBdKiQnKSk7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoXCJrZXlkb3duXCIsIFtcIiRldmVudFwiXSlcclxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGNvbnNvbGUubG9nKFwia2V5ZG93blwiLCBldmVudClcclxuICAgIGNvbnN0IHRleHQgPSBldmVudC5rZXk7XHJcbiAgICBpZiAodGhpcy5jaGVjayh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgKyAoZXZlbnQua2V5ICE9ICdCYWNrc3BhY2UnID8gZXZlbnQua2V5IDogJycpKSB8fCB0ZXh0ID09IFwiIFwiIHx8IHRleHQgPT0gJ0JhY2tzcGFjZScgfHwgKGV2ZW50LmN0cmxLZXkgJiYgKHRleHQgPT0gJ2MnIHx8IHRleHQgPT0gJ9ikJyB8fCB0ZXh0ID09ICd2JyB8fCB0ZXh0ID09ICfYsScgfHwgdGV4dCA9PSAneCcgfHwgdGV4dCA9PSAn2KEnIHx8IHRleHQgPT0gJ2EnIHx8IHRleHQgPT0gJ9i0JyB8fCB0ZXh0ID09ICd6JyB8fCB0ZXh0ID09ICfYpicpKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoXCJwYXN0ZVwiLCBbXCIkZXZlbnRcIl0pXHJcbiAgb25QYXN0ZShldmVudDogQ2xpcGJvYXJkRXZlbnQpIHtcclxuICAgIGNvbnN0IGRhdGEgPSBldmVudC5jbGlwYm9hcmREYXRhLmdldERhdGEoJ3RleHQvcGxhaW4nKTtcclxuICAgIGlmICghdGhpcy5jaGVjayhkYXRhKSkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXHJcblxyXG4gICAgfVxyXG4gIH1cclxufSJdfQ==
@@ -0,0 +1,19 @@
1
+ import { Pipe } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class FormatTimePipe {
4
+ transform(value) {
5
+ const minutes = Math.floor(value / 60);
6
+ return (("00" + minutes).slice(-2) +
7
+ ":" +
8
+ ("00" + Math.floor(value - minutes * 60)).slice(-2));
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: FormatTimePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
11
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: FormatTimePipe, name: "formatTime" });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: FormatTimePipe, decorators: [{
14
+ type: Pipe,
15
+ args: [{
16
+ name: "formatTime"
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvdmFsaWRhdG9ycy90aW1lci5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUtwRCxNQUFNLE9BQU8sY0FBYztJQUN6QixTQUFTLENBQUMsS0FBYTtRQUNyQixNQUFNLE9BQU8sR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsQ0FBQztRQUMvQyxPQUFPLENBQ0wsQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFCLEdBQUc7WUFDSCxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDcEQsQ0FBQztJQUNKLENBQUM7dUdBUlUsY0FBYztxR0FBZCxjQUFjOzsyRkFBZCxjQUFjO2tCQUgxQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxZQUFZO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6IFwiZm9ybWF0VGltZVwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtYXRUaW1lUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IG1pbnV0ZXM6IG51bWJlciA9IE1hdGguZmxvb3IodmFsdWUgLyA2MCk7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAoXCIwMFwiICsgbWludXRlcykuc2xpY2UoLTIpICtcclxuICAgICAgXCI6XCIgK1xyXG4gICAgICAoXCIwMFwiICsgTWF0aC5mbG9vcih2YWx1ZSAtIG1pbnV0ZXMgKiA2MCkpLnNsaWNlKC0yKVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,16 @@
1
+ /*
2
+ * Public API Surface of bpm-core
3
+ */
4
+ import { InjectionToken } from '@angular/core';
5
+ export * from './lib/components/shared-components';
6
+ export * from './lib/components/app-component-sections';
7
+ export * from './lib/pipes';
8
+ export * from './lib/i18n';
9
+ export * from './lib/constants';
10
+ export * from './lib/interfaces';
11
+ export * from './lib/classes';
12
+ export * from './lib/hooks';
13
+ export * from './lib/functions';
14
+ export * from './lib/validators';
15
+ export const MY_LIB_CONFIG_TOKEN = new InjectionToken('MyLibConfig');
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvQyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxrQkFBa0IsQ0FBQztBQUdqQyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FBYyxhQUFhLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBicG0tY29yZVxyXG4gKi9cclxuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtNeUxpYkNvbmZpZ30gZnJvbSBcIi4vbGliL2ludGVyZmFjZXMvc2hhcmVkLmludGVyZmFjZVwiO1xyXG5cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2kxOG4nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2hvb2tzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZnVuY3Rpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmFsaWRhdG9ycyc7XHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IE1ZX0xJQl9DT05GSUdfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TXlMaWJDb25maWc+KCdNeUxpYkNvbmZpZycpO1xyXG4iXX0=