ngx-bimplus-components 0.0.159-29471-1 → 0.0.160

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 (158) hide show
  1. package/esm2022/lib/components/bimplus-buttons-row/bimplus-buttons-row.component.mjs +5 -40
  2. package/esm2022/lib/components/bimplus-buttons-row/bimplus-buttons-row.interface.mjs +2 -5
  3. package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.component.mjs +5 -5
  4. package/esm2022/lib/components/bimplus-connection-designer-results/bimplus-connection-designer-results.component.mjs +3 -3
  5. package/esm2022/lib/components/bimplus-flat-tree/bimplus-flat-tree.component.mjs +7 -115
  6. package/esm2022/lib/components/bimplus-flat-tree/bimplus-flat-tree.interface.mjs +1 -1
  7. package/esm2022/lib/components/bimplus-floating-bar-header-logo/bimplus-floating-bar-header-logo.component.mjs +1 -1
  8. package/esm2022/lib/components/bimplus-general-overlay-dialog/bimplus-general-dialog-config-settings.mjs +1 -1
  9. package/esm2022/lib/components/bimplus-general-overlay-dialog/bimplus-general-overlay-dialog.component.mjs +3 -3
  10. package/esm2022/lib/components/bimplus-object-complex-properties/bimplus-object-complex-properties.component.mjs +3 -3
  11. package/esm2022/lib/components/bimplus-object-navigator/bimplus-object-navigator.component.mjs +32 -12
  12. package/esm2022/lib/components/bimplus-object-navigator/criteria-select-object-properties/criteria-select-object-properties.component.mjs +3 -3
  13. package/esm2022/lib/components/bimplus-object-navigator/criteria-select-object-properties/criteria-select-object-properties.interface.mjs +1 -1
  14. package/esm2022/lib/components/bimplus-object-navigator/object-filter-result/object-filter-result.component.mjs +7 -3
  15. package/esm2022/lib/components/bimplus-object-structure/bimplus-object-structure.component.mjs +4 -42
  16. package/esm2022/lib/components/bimplus-object-structure/bimplus-object-structure.interface.mjs +2 -4
  17. package/esm2022/lib/components/bimplus-overlay-dialog-error/bimplus-overlay-dialog-error.component.mjs +8 -31
  18. package/esm2022/lib/components/bimplus-overlay-dialog-warning/bimplus-overlay-dialog-warning.component.mjs +8 -34
  19. package/esm2022/lib/components/bimplus-scrollable-container/bimplus-scrollable-container.component.mjs +1 -1
  20. package/esm2022/lib/components/object-properties-header/object-properties-header.component.mjs +6 -48
  21. package/esm2022/lib/components/object-properties-header/object-properties-header.interface.mjs +1 -1
  22. package/esm2022/lib/components/resizable-panel/resizable-panel.component.mjs +10 -54
  23. package/esm2022/public-api.mjs +1 -22
  24. package/fesm2022/ngx-bimplus-components.mjs +112 -4329
  25. package/fesm2022/ngx-bimplus-components.mjs.map +1 -1
  26. package/lib/components/bimplus-buttons-row/bimplus-buttons-row.component.d.ts +3 -14
  27. package/lib/components/bimplus-buttons-row/bimplus-buttons-row.interface.d.ts +1 -7
  28. package/lib/components/bimplus-flat-tree/bimplus-flat-tree.component.d.ts +3 -16
  29. package/lib/components/bimplus-flat-tree/bimplus-flat-tree.interface.d.ts +0 -4
  30. package/lib/components/bimplus-floating-bar-header-logo/bimplus-floating-bar-header-logo.component.d.ts +1 -1
  31. package/lib/components/bimplus-general-overlay-dialog/bimplus-general-dialog-config-settings.d.ts +3 -3
  32. package/lib/components/bimplus-object-navigator/bimplus-object-navigator.component.d.ts +7 -5
  33. package/lib/components/bimplus-object-navigator/criteria-select-object-properties/criteria-select-object-properties.component.d.ts +12 -12
  34. package/lib/components/bimplus-object-navigator/criteria-select-object-properties/criteria-select-object-properties.interface.d.ts +3 -3
  35. package/lib/components/bimplus-object-navigator/object-filter-result/object-filter-result.component.d.ts +1 -0
  36. package/lib/components/bimplus-object-structure/bimplus-object-structure.component.d.ts +1 -5
  37. package/lib/components/bimplus-object-structure/bimplus-object-structure.interface.d.ts +0 -2
  38. package/lib/components/bimplus-overlay-dialog-error/bimplus-overlay-dialog-error.component.d.ts +1 -8
  39. package/lib/components/bimplus-overlay-dialog-warning/bimplus-overlay-dialog-warning.component.d.ts +1 -11
  40. package/lib/components/bimplus-scrollable-container/bimplus-scrollable-container.component.d.ts +1 -1
  41. package/lib/components/object-properties-header/object-properties-header.component.d.ts +4 -13
  42. package/lib/components/object-properties-header/object-properties-header.interface.d.ts +0 -8
  43. package/lib/components/resizable-panel/resizable-panel.component.d.ts +3 -12
  44. package/package.json +4 -12
  45. package/public-api.d.ts +0 -21
  46. package/assets/images/default/Attachment_18_gray.svg +0 -1
  47. package/assets/images/default/Attachment_18_maincolor.svg +0 -3
  48. package/assets/images/default/Attachmentlink_18_gray.svg +0 -7
  49. package/assets/images/default/Attachmentlink_18_maincolor.svg +0 -7
  50. package/assets/images/default/Comments_18_gray.svg +0 -1
  51. package/assets/images/default/Comments_18_maincolor.svg +0 -4
  52. package/assets/images/default/Links_18_gray.svg +0 -1
  53. package/assets/images/default/Links_18_maincolor.svg +0 -4
  54. package/assets/images/default/Refresh_18_gray.svg +0 -1
  55. package/assets/images/default/bimplus_WebIcons_Cross_Disabled.svg +0 -1
  56. package/assets/images/default/ic_models.svg +0 -3
  57. package/assets/images/default/ic_models_maincolor.svg +0 -3
  58. package/assets/images/default/icn_grid_attachments.png +0 -0
  59. package/assets/images/default/icn_grid_hyperlinks.png +0 -0
  60. package/assets/images/default/progress-spinner.svg +0 -1
  61. package/esm2022/lib/components/bimplus-attachments/bimplus-attachments.component.mjs +0 -114
  62. package/esm2022/lib/components/bimplus-attachments/bimplus-attachments.interface.mjs +0 -38
  63. package/esm2022/lib/components/bimplus-attachments/components/bimplus-attachment-item/bimplus-attachment-item.component.mjs +0 -95
  64. package/esm2022/lib/components/bimplus-attachments/services/bimplus-attachments.service.mjs +0 -32
  65. package/esm2022/lib/components/bimplus-comment/IComment.mjs +0 -2
  66. package/esm2022/lib/components/bimplus-comment/bimplus-comment.component.mjs +0 -118
  67. package/esm2022/lib/components/bimplus-input-checkbox/bimplus-input-checkbox.component.mjs +0 -64
  68. package/esm2022/lib/components/bimplus-input-combobox/bimplus-input-combobox.component.mjs +0 -161
  69. package/esm2022/lib/components/bimplus-input-number/bimplus-input-number.component.mjs +0 -85
  70. package/esm2022/lib/components/bimplus-input-text-field/bimplus-input-text-field.component.mjs +0 -92
  71. package/esm2022/lib/components/bimplus-link-tooltip-message/bimplus-link-tooltip-message.component.mjs +0 -78
  72. package/esm2022/lib/components/bimplus-object-comments-list/bimplus-object-comments-list.component.mjs +0 -385
  73. package/esm2022/lib/components/bimplus-object-comments-list/bimplus-object-comments-list.interface.mjs +0 -3
  74. package/esm2022/lib/components/bimplus-object-comments-list/bimplus-object-comments-list.service.mjs +0 -104
  75. package/esm2022/lib/components/bimplus-object-comments-list/bimplusObjectCommentsI.mjs +0 -2
  76. package/esm2022/lib/components/bimplus-overlay-dialog-confirm/bimplus-overlay-dialog-confirm.component.mjs +0 -77
  77. package/esm2022/lib/components/bimplus-overlay-dialog-delete/bimplus-overlay-dialog-delete.component.mjs +0 -83
  78. package/esm2022/lib/components/bimplus-status-bar/bimplus-status-bar.component.mjs +0 -35
  79. package/esm2022/lib/components/bimplus-status-bar/bimplus-status-bar.service.mjs +0 -35
  80. package/esm2022/lib/components/bimplus-status-bar/statusBar.mjs +0 -2
  81. package/esm2022/lib/components/bimplus-tabs-switcher/bimplus-tabs-switcher.component.mjs +0 -38
  82. package/esm2022/lib/components/bimplus-tabs-switcher/bimplus-tabs-switcher.interface.mjs +0 -10
  83. package/esm2022/lib/components/bimplus-tabs-switcher/components/bimplus-tab/bimplus-tab.component.mjs +0 -89
  84. package/esm2022/lib/components/bimplus-tabs-switcher/services/bimplus-tabs-switcher.service.mjs +0 -33
  85. package/esm2022/lib/components/bimplus-textarea/autoResizeTextarea.directive.mjs +0 -83
  86. package/esm2022/lib/components/bimplus-textarea/bimplus-textarea.component.mjs +0 -128
  87. package/esm2022/lib/components/links-to-documents/links-to-documents.component.mjs +0 -373
  88. package/esm2022/lib/components/object-hyperlinks/object-hyperlinks.component.mjs +0 -145
  89. package/esm2022/lib/components/object-hyperlinks-item/object-hyperlinks-item.component.mjs +0 -36
  90. package/esm2022/lib/components/object-preview/object-preview.component.mjs +0 -284
  91. package/esm2022/lib/components/object-preview/object-preview.interface.mjs +0 -2
  92. package/esm2022/lib/components/object-properties/object-properties.component.mjs +0 -536
  93. package/esm2022/lib/components/object-properties/object-properties.interface.mjs +0 -2
  94. package/esm2022/lib/components/object-properties/object-properties.service.mjs +0 -26
  95. package/esm2022/lib/components/object-properties-group/object-properties-group.component.mjs +0 -124
  96. package/esm2022/lib/components/object-properties-group/object-property-value/object-property-value.component.mjs +0 -55
  97. package/esm2022/lib/pipes/bit-converter.pipe.mjs +0 -46
  98. package/esm2022/lib/pipes/get-attribute-value-as-string.pipe.mjs +0 -173
  99. package/esm2022/lib/pipes/get-attribute-value.pipe.mjs +0 -162
  100. package/esm2022/lib/pipes/round.pipe.mjs +0 -20
  101. package/esm2022/lib/services/decorators.service.mjs +0 -65
  102. package/esm2022/lib/utils/objectProperties.mjs +0 -9
  103. package/esm2022/lib/validators/double-enum.validator.mjs +0 -17
  104. package/esm2022/lib/validators/double.validator.mjs +0 -23
  105. package/esm2022/lib/validators/guid-enum.validator.mjs +0 -17
  106. package/esm2022/lib/validators/guid.validator.mjs +0 -11
  107. package/esm2022/lib/validators/integer.validator.mjs +0 -20
  108. package/esm2022/lib/validators/string-combobox.validator.mjs +0 -17
  109. package/esm2022/lib/validators/string-enum.validator.mjs +0 -17
  110. package/lib/components/bimplus-attachments/bimplus-attachments.component.d.ts +0 -39
  111. package/lib/components/bimplus-attachments/bimplus-attachments.interface.d.ts +0 -33
  112. package/lib/components/bimplus-attachments/components/bimplus-attachment-item/bimplus-attachment-item.component.d.ts +0 -30
  113. package/lib/components/bimplus-attachments/services/bimplus-attachments.service.d.ts +0 -8
  114. package/lib/components/bimplus-comment/IComment.d.ts +0 -4
  115. package/lib/components/bimplus-comment/bimplus-comment.component.d.ts +0 -39
  116. package/lib/components/bimplus-input-checkbox/bimplus-input-checkbox.component.d.ts +0 -18
  117. package/lib/components/bimplus-input-combobox/bimplus-input-combobox.component.d.ts +0 -41
  118. package/lib/components/bimplus-input-number/bimplus-input-number.component.d.ts +0 -26
  119. package/lib/components/bimplus-input-text-field/bimplus-input-text-field.component.d.ts +0 -28
  120. package/lib/components/bimplus-link-tooltip-message/bimplus-link-tooltip-message.component.d.ts +0 -22
  121. package/lib/components/bimplus-object-comments-list/bimplus-object-comments-list.component.d.ts +0 -87
  122. package/lib/components/bimplus-object-comments-list/bimplus-object-comments-list.interface.d.ts +0 -10
  123. package/lib/components/bimplus-object-comments-list/bimplus-object-comments-list.service.d.ts +0 -20
  124. package/lib/components/bimplus-object-comments-list/bimplusObjectCommentsI.d.ts +0 -11
  125. package/lib/components/bimplus-overlay-dialog-confirm/bimplus-overlay-dialog-confirm.component.d.ts +0 -29
  126. package/lib/components/bimplus-overlay-dialog-delete/bimplus-overlay-dialog-delete.component.d.ts +0 -24
  127. package/lib/components/bimplus-status-bar/bimplus-status-bar.component.d.ts +0 -14
  128. package/lib/components/bimplus-status-bar/bimplus-status-bar.service.d.ts +0 -14
  129. package/lib/components/bimplus-status-bar/statusBar.d.ts +0 -4
  130. package/lib/components/bimplus-tabs-switcher/bimplus-tabs-switcher.component.d.ts +0 -16
  131. package/lib/components/bimplus-tabs-switcher/bimplus-tabs-switcher.interface.d.ts +0 -18
  132. package/lib/components/bimplus-tabs-switcher/components/bimplus-tab/bimplus-tab.component.d.ts +0 -36
  133. package/lib/components/bimplus-tabs-switcher/services/bimplus-tabs-switcher.service.d.ts +0 -15
  134. package/lib/components/bimplus-textarea/autoResizeTextarea.directive.d.ts +0 -24
  135. package/lib/components/bimplus-textarea/bimplus-textarea.component.d.ts +0 -42
  136. package/lib/components/links-to-documents/links-to-documents.component.d.ts +0 -68
  137. package/lib/components/object-hyperlinks/object-hyperlinks.component.d.ts +0 -32
  138. package/lib/components/object-hyperlinks-item/object-hyperlinks-item.component.d.ts +0 -15
  139. package/lib/components/object-preview/object-preview.component.d.ts +0 -45
  140. package/lib/components/object-preview/object-preview.interface.d.ts +0 -5
  141. package/lib/components/object-properties/object-properties.component.d.ts +0 -78
  142. package/lib/components/object-properties/object-properties.interface.d.ts +0 -22
  143. package/lib/components/object-properties/object-properties.service.d.ts +0 -12
  144. package/lib/components/object-properties-group/object-properties-group.component.d.ts +0 -29
  145. package/lib/components/object-properties-group/object-property-value/object-property-value.component.d.ts +0 -14
  146. package/lib/pipes/bit-converter.pipe.d.ts +0 -17
  147. package/lib/pipes/get-attribute-value-as-string.pipe.d.ts +0 -35
  148. package/lib/pipes/get-attribute-value.pipe.d.ts +0 -35
  149. package/lib/pipes/round.pipe.d.ts +0 -7
  150. package/lib/services/decorators.service.d.ts +0 -12
  151. package/lib/utils/objectProperties.d.ts +0 -2
  152. package/lib/validators/double-enum.validator.d.ts +0 -2
  153. package/lib/validators/double.validator.d.ts +0 -2
  154. package/lib/validators/guid-enum.validator.d.ts +0 -2
  155. package/lib/validators/guid.validator.d.ts +0 -2
  156. package/lib/validators/integer.validator.d.ts +0 -2
  157. package/lib/validators/string-combobox.validator.d.ts +0 -2
  158. package/lib/validators/string-enum.validator.d.ts +0 -2
@@ -1,162 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import { RoundPipe } from './round.pipe';
3
- import moment from 'moment';
4
- import 'moment/min/locales';
5
- import * as i0 from "@angular/core";
6
- export class GetAttributeValue {
7
- constructor() {
8
- const locale = window.navigator.language;
9
- moment.locale(locale);
10
- }
11
- _transformDouble(value) {
12
- return new RoundPipe().transform(value.value, value.decimal || 2);
13
- }
14
- _transformDoubleEnumeration(value) {
15
- return this._transformDouble(value);
16
- }
17
- _transformDatetime(value) {
18
- moment.locale(window.navigator.language);
19
- const localeDate = moment(value.value).format('L');
20
- console.log(localeDate);
21
- if (localeDate) {
22
- return localeDate;
23
- }
24
- return value.value;
25
- }
26
- _transformGUID(value) {
27
- return value.value;
28
- }
29
- _transformGUIDEnumeration(value) {
30
- return `${value.value}`;
31
- }
32
- _transformInt(value) {
33
- return value.value;
34
- }
35
- _transformIntEnumeration(value) {
36
- return `${value.value}`;
37
- }
38
- _transformString(value) {
39
- return value.value;
40
- }
41
- _transformStringEnumeration(value) {
42
- return `${value.value}`;
43
- }
44
- _transformStringCombobox(value) {
45
- if (value.control && /^combobox$/i.test(value.control)) {
46
- return value.value;
47
- }
48
- return '';
49
- }
50
- _transformBooleanToBoolean(value) {
51
- if (value.value === '1'
52
- || /^true$/i.test(value.value)) {
53
- return true;
54
- }
55
- return false;
56
- }
57
- _transformBooleanToString(value) {
58
- if (value.value === '1'
59
- || /^true$/i.test(value.value)) {
60
- return "True";
61
- }
62
- return "False";
63
- }
64
- transform(value) {
65
- const _value = value.value;
66
- if (this.isEmpty(_value)) {
67
- return '';
68
- }
69
- if (this.isDouble(value)) {
70
- return this._transformDouble(value);
71
- }
72
- if (this.isDoubleEnumeration(value)) {
73
- return this._transformDoubleEnumeration(value);
74
- }
75
- if (this.isDatetime(value)) {
76
- return this._transformDatetime(value);
77
- }
78
- if (this.isGUID(value)) {
79
- return this._transformGUID(value);
80
- }
81
- if (this.isGUIDEnumeration(value)) {
82
- return this._transformGUIDEnumeration(value);
83
- }
84
- if (this.isInt(value)) {
85
- return this._transformInt(value);
86
- }
87
- if (this.isIntEnumeration(value)) {
88
- return this._transformIntEnumeration(value);
89
- }
90
- if (this.isString(value)) {
91
- return this._transformString(value);
92
- }
93
- if (this.isStringEnumeration(value)) {
94
- return this._transformStringEnumeration(value);
95
- }
96
- if (this.isStringCombobox(value)) {
97
- return this._transformStringCombobox(value);
98
- }
99
- if (this.isBooleanCheckbox(value)) {
100
- return this._transformBooleanToBoolean(value);
101
- }
102
- if (this.isBooleanTextbox(value)) {
103
- return this._transformBooleanToString(value);
104
- }
105
- return value.value;
106
- }
107
- isEmpty(value) {
108
- return value === undefined || value === null || value === '';
109
- }
110
- isDouble(value) {
111
- return typeof value.type === 'string' && /^double$/i.test(value.type) && !value.control;
112
- }
113
- isDoubleEnumeration(value) {
114
- return typeof value.type === 'string' && /^double$/i.test(value.type)
115
- && typeof value.control === 'string' && /^enumeration$/i.test(value.control);
116
- }
117
- isDatetime(value) {
118
- return typeof value.type === 'string' && /^datetime$/i.test(value.type) && !value.control;
119
- }
120
- isGUID(value) {
121
- return typeof value.type === 'string' && /^guid$/i.test(value.type) && !value.control;
122
- }
123
- isGUIDEnumeration(value) {
124
- return typeof value.type === 'string' && /^guid$/i.test(value.type)
125
- && typeof value.control === 'string' && /^enumeration$/i.test(value.control);
126
- }
127
- isInt(value) {
128
- return typeof value.type === 'string' && /^int(32)?$/i.test(value.type) && !value.control;
129
- }
130
- isIntEnumeration(value) {
131
- return typeof value.type === 'string' && /^int(32)?$/i.test(value.type)
132
- && typeof value.control === 'string' && /^enumeration$/i.test(value.control);
133
- }
134
- isString(value) {
135
- return typeof value.type === 'string' && /^string$/i.test(value.type) && !value.control;
136
- }
137
- isStringEnumeration(value) {
138
- return typeof value.type === 'string' && /^string$/i.test(value.type)
139
- && typeof value.control === 'string' && /^enumeration$/i.test(value.control);
140
- }
141
- isStringCombobox(value) {
142
- return typeof value.type === 'string' && /^string$/i.test(value.type)
143
- && typeof value.control === 'string' && /^combobox$/i.test(value.control);
144
- }
145
- isBooleanCheckbox(value) {
146
- return typeof value.type === 'string' && /^boolean$/i.test(value.type)
147
- && typeof value.control === 'string' && /^checkbox$/i.test(value.control);
148
- }
149
- isBooleanTextbox(value) {
150
- return typeof value.type === 'string' && /^boolean$/i.test(value.type) && !value.control;
151
- }
152
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: GetAttributeValue, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
153
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: GetAttributeValue, isStandalone: true, name: "getAttributeValue" }); }
154
- }
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: GetAttributeValue, decorators: [{
156
- type: Pipe,
157
- args: [{
158
- name: 'getAttributeValue',
159
- standalone: true
160
- }]
161
- }], ctorParameters: () => [] });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWF0dHJpYnV0ZS12YWx1ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3BpcGVzL2dldC1hdHRyaWJ1dGUtdmFsdWUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLG9CQUFvQixDQUFDOztBQU81QixNQUFNLE9BQU8saUJBQWlCO0lBRTVCO1FBQ0UsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7UUFDekMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBc0I7UUFDckMsT0FBTyxJQUFJLFNBQVMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELDJCQUEyQixDQUFDLEtBQXNCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFzQjtRQUN2QyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekMsTUFBTSxVQUFVLEdBQVcsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDMUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4QixJQUFHLFVBQVUsRUFBRSxD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LENBQUMsSUFBSSxDQUFDO2VBQ2pFLE9BQU8sS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQXNCO1FBQzdDLE9BQU8sT0FBTyxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7SUFDM0YsQ0FBQzsrR0F6TFUsaUJBQWlCOzZHQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBSjdCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYmplY3RBdHRyaWJ1dGUgfSBmcm9tICcuLi9jb21wb25lbnRzL29iamVjdC1wcm9wZXJ0aWVzL29iamVjdC1wcm9wZXJ0aWVzLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFJvdW5kUGlwZSB9IGZyb20gJy4vcm91bmQucGlwZSc7XHJcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuaW1wb3J0ICdtb21lbnQvbWluL2xvY2FsZXMnO1xyXG5cclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnZ2V0QXR0cmlidXRlVmFsdWUnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIEdldEF0dHJpYnV0ZVZhbHVlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgY29uc3QgbG9jYWxlID0gd2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZTtcclxuICAgIG1vbWVudC5sb2NhbGUobG9jYWxlKTtcclxuICB9XHJcblxyXG4gIF90cmFuc2Zvcm1Eb3VibGUodmFsdWU6IE9iamVjdEF0dHJpYnV0ZSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbmV3IFJvdW5kUGlwZSgpLnRyYW5zZm9ybSh2YWx1ZS52YWx1ZSwgdmFsdWUuZGVjaW1hbCB8fCAyKTtcclxuICB9XHJcblxyXG4gIF90cmFuc2Zvcm1Eb3VibGVFbnVtZXJhdGlvbih2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1Eb3VibGUodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgX3RyYW5zZm9ybURhdGV0aW1lKHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBzdHJpbmcge1xyXG4gICAgbW9tZW50LmxvY2FsZSh3aW5kb3cubmF2aWdhdG9yLmxhbmd1YWdlKTtcclxuICAgIGNvbnN0IGxvY2FsZURhdGU6IHN0cmluZyA9IG1vbWVudCh2YWx1ZS52YWx1ZSkuZm9ybWF0KCdMJylcclxuICAgIGNvbnNvbGUubG9nKGxvY2FsZURhdGUpO1xyXG4gICAgaWYobG9jYWxlRGF0ZSkge1xyXG4gICAgICByZXR1cm4gbG9jYWxlRGF0ZTtcclxuICAgIH1cclxuICAgIHJldHVybiB2YWx1ZS52YWx1ZTtcclxuICB9XHJcblxyXG4gIF90cmFuc2Zvcm1HVUlEKHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHZhbHVlLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgX3RyYW5zZm9ybUdVSURFbnVtZXJhdGlvbih2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt2YWx1ZS52YWx1ZX1gO1xyXG4gIH1cclxuXHJcbiAgX3RyYW5zZm9ybUludCh2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB2YWx1ZS52YWx1ZTtcclxuICB9XHJcblxyXG4gIF90cmFuc2Zvcm1JbnRFbnVtZXJhdGlvbih2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt2YWx1ZS52YWx1ZX1gO1xyXG4gIH1cclxuXHJcbiAgX3RyYW5zZm9ybVN0cmluZyh2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB2YWx1ZS52YWx1ZTtcclxuICB9XHJcblxyXG4gIF90cmFuc2Zvcm1TdHJpbmdFbnVtZXJhdGlvbih2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt2YWx1ZS52YWx1ZX1gO1xyXG4gIH1cclxuXHJcbiAgX3RyYW5zZm9ybVN0cmluZ0NvbWJvYm94KHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBzdHJpbmcge1xyXG4gICAgaWYodmFsdWUuY29udHJvbCAmJiAvXmNvbWJvYm94JC9pLnRlc3QodmFsdWUuY29udHJvbCkpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlLnZhbHVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgX3RyYW5zZm9ybUJvb2xlYW5Ub0Jvb2xlYW4odmFsdWU6IE9iamVjdEF0dHJpYnV0ZSk6IGJvb2xlYW4ge1xyXG4gICAgaWYodmFsdWUudmFsdWUgPT09ICcxJ1xyXG4gICAgICB8fCAvXnRydWUkL2kudGVzdCh2YWx1ZS52YWx1ZSkpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBfdHJhbnNmb3JtQm9vbGVhblRvU3RyaW5nKHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBzdHJpbmcge1xyXG4gICAgaWYodmFsdWUudmFsdWUgPT09ICcxJ1xyXG4gICAgICB8fCAvXnRydWUkL2kudGVzdCh2YWx1ZS52YWx1ZSkpIHtcclxuICAgICAgICByZXR1cm4gXCJUcnVlXCI7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIFwiRmFsc2VcIjtcclxuICB9XHJcblxyXG4gIHRyYW5zZm9ybSh2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogc3RyaW5nIHwgYm9vbGVhbiB7XHJcbiAgICBjb25zdCBfdmFsdWUgPSB2YWx1ZS52YWx1ZTtcclxuICAgIGlmICh0aGlzLmlzRW1wdHkoX3ZhbHVlKSkge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNEb3VibGUodmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1Eb3VibGUodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmlzRG91YmxlRW51bWVyYXRpb24odmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1Eb3VibGVFbnVtZXJhdGlvbih2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNEYXRldGltZSh2YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zZm9ybURhdGV0aW1lKHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5pc0dVSUQodmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1HVUlEKHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5pc0dVSURFbnVtZXJhdGlvbih2YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zZm9ybUdVSURFbnVtZXJhdGlvbih2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNJbnQodmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1JbnQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmlzSW50RW51bWVyYXRpb24odmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1JbnRFbnVtZXJhdGlvbih2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNTdHJpbmcodmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1TdHJpbmcodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmlzU3RyaW5nRW51bWVyYXRpb24odmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1TdHJpbmdFbnVtZXJhdGlvbih2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNTdHJpbmdDb21ib2JveCh2YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zZm9ybVN0cmluZ0NvbWJvYm94KHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5pc0Jvb2xlYW5DaGVja2JveCh2YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zZm9ybUJvb2xlYW5Ub0Jvb2xlYW4odmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmlzQm9vbGVhblRleHRib3godmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1Cb29sZWFuVG9TdHJpbmcodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB2YWx1ZS52YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNFbXB0eSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09ICcnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0RvdWJsZSh2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlLnR5cGUgPT09ICdzdHJpbmcnICYmIC9eZG91YmxlJC9pLnRlc3QodmFsdWUudHlwZSkgJiYgIXZhbHVlLmNvbnRyb2w7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzRG91YmxlRW51bWVyYXRpb24odmFsdWU6IE9iamVjdEF0dHJpYnV0ZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZS50eXBlID09PSAnc3RyaW5nJyAmJiAvXmRvdWJsZSQvaS50ZXN0KHZhbHVlLnR5cGUpXHJcbiAgICAgICYmIHR5cGVvZiB2YWx1ZS5jb250cm9sID09PSAnc3RyaW5nJyAmJiAvXmVudW1lcmF0aW9uJC9pLnRlc3QodmFsdWUuY29udHJvbCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzRGF0ZXRpbWUodmFsdWU6IE9iamVjdEF0dHJpYnV0ZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZS50eXBlID09PSAnc3RyaW5nJyAmJiAvXmRhdGV0aW1lJC9pLnRlc3QodmFsdWUudHlwZSkgJiYgIXZhbHVlLmNvbnRyb2w7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzR1VJRCh2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlLnR5cGUgPT09ICdzdHJpbmcnICYmIC9eZ3VpZCQvaS50ZXN0KHZhbHVlLnR5cGUpICYmICF2YWx1ZS5jb250cm9sO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0dVSURFbnVtZXJhdGlvbih2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlLnR5cGUgPT09ICdzdHJpbmcnICYmIC9eZ3VpZCQvaS50ZXN0KHZhbHVlLnR5cGUpXHJcbiAgICAgICYmIHR5cGVvZiB2YWx1ZS5jb250cm9sID09PSAnc3RyaW5nJyAmJiAvXmVudW1lcmF0aW9uJC9pLnRlc3QodmFsdWUuY29udHJvbCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzSW50KHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0eXBlb2YgdmFsdWUudHlwZSA9PT0gJ3N0cmluZycgJiYgL15pbnQoMzIpPyQvaS50ZXN0KHZhbHVlLnR5cGUpICYmICF2YWx1ZS5jb250cm9sO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0ludEVudW1lcmF0aW9uKHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0eXBlb2YgdmFsdWUudHlwZSA9PT0gJ3N0cmluZycgJiYgL15pbnQoMzIpPyQvaS50ZXN0KHZhbHVlLnR5cGUpXHJcbiAgICAgICYmIHR5cGVvZiB2YWx1ZS5jb250cm9sID09PSAnc3RyaW5nJyAmJiAvXmVudW1lcmF0aW9uJC9pLnRlc3QodmFsdWUuY29udHJvbCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzU3RyaW5nKHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0eXBlb2YgdmFsdWUudHlwZSA9PT0gJ3N0cmluZycgJiYgL15zdHJpbmckL2kudGVzdCh2YWx1ZS50eXBlKSAmJiAhdmFsdWUuY29udHJvbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNTdHJpbmdFbnVtZXJhdGlvbih2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlLnR5cGUgPT09ICdzdHJpbmcnICYmIC9ec3RyaW5nJC9pLnRlc3QodmFsdWUudHlwZSlcclxuICAgICAgJiYgdHlwZW9mIHZhbHVlLmNvbnRyb2wgPT09ICdzdHJpbmcnICYmIC9eZW51bWVyYXRpb24kL2kudGVzdCh2YWx1ZS5jb250cm9sKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNTdHJpbmdDb21ib2JveCh2YWx1ZTogT2JqZWN0QXR0cmlidXRlKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlLnR5cGUgPT09ICdzdHJpbmcnICYmIC9ec3RyaW5nJC9pLnRlc3QodmFsdWUudHlwZSlcclxuICAgICAgJiYgdHlwZW9mIHZhbHVlLmNvbnRyb2wgPT09ICdzdHJpbmcnICYmIC9eY29tYm9ib3gkL2kudGVzdCh2YWx1ZS5jb250cm9sKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNCb29sZWFuQ2hlY2tib3godmFsdWU6IE9iamVjdEF0dHJpYnV0ZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZS50eXBlID09PSAnc3RyaW5nJyAmJiAvXmJvb2xlYW4kL2kudGVzdCh2YWx1ZS50eXBlKVxyXG4gICAgICAmJiB0eXBlb2YgdmFsdWUuY29udHJvbCA9PT0gJ3N0cmluZycgJiYgL15jaGVja2JveCQvaS50ZXN0KHZhbHVlLmNvbnRyb2wpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0Jvb2xlYW5UZXh0Ym94KHZhbHVlOiBPYmplY3RBdHRyaWJ1dGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0eXBlb2YgdmFsdWUudHlwZSA9PT0gJ3N0cmluZycgJiYgL15ib29sZWFuJC9pLnRlc3QodmFsdWUudHlwZSkgJiYgIXZhbHVlLmNvbnRyb2w7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,20 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class RoundPipe {
4
- transform(value, decimal) {
5
- const num = parseFloat(value);
6
- const dec = decimal;
7
- const mult = Math.pow(10, dec);
8
- return "" + Math.round(num * mult) / mult;
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RoundPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
11
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: RoundPipe, isStandalone: true, name: "round" }); }
12
- }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RoundPipe, decorators: [{
14
- type: Pipe,
15
- args: [{
16
- name: 'round',
17
- standalone: true
18
- }]
19
- }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91bmQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi9waXBlcy9yb3VuZC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sU0FBUztJQUVwQixTQUFTLENBQUMsS0FBYSxFQUFFLE9BQWU7UUFDdEMsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQztRQUVwQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUUvQixPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDNUMsQ0FBQzsrR0FUVSxTQUFTOzZHQUFULFNBQVM7OzRGQUFULFNBQVM7a0JBSnJCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLE9BQU87b0JBQ2IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdyb3VuZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUm91bmRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nLCBkZWNpbWFsOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbnVtID0gcGFyc2VGbG9hdCh2YWx1ZSk7XHJcbiAgICBjb25zdCBkZWMgPSBkZWNpbWFsO1xyXG5cclxuICAgIGNvbnN0IG11bHQgPSBNYXRoLnBvdygxMCwgZGVjKTtcclxuXHJcbiAgICByZXR1cm4gXCJcIiArIE1hdGgucm91bmQobnVtICogbXVsdCkgLyBtdWx0O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,65 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class DecoratorsService {
4
- constructor() { }
5
- fmt(string, ...formats) {
6
- let index = 0;
7
- return string.replace(/%@(\d+)?/g, (match, argumentIndex) => {
8
- const argumentIndexN = argumentIndex ? parseInt(argumentIndex, 10) - 1 : index++;
9
- const _match = formats[argumentIndexN];
10
- if (_match === null) {
11
- return '(null)';
12
- }
13
- if (_match === undefined) {
14
- return '';
15
- }
16
- return _match.toString();
17
- });
18
- }
19
- /**--------------------------------------------------------------------------
20
- * decorate link
21
- --------------------------------------------------------------------------*/
22
- decorateLink(api, link, objectIds) {
23
- const retval = {
24
- id: link.id,
25
- name: link.name,
26
- fileName: link.fileName,
27
- size: link.size,
28
- link: link.link,
29
- fileNameShort: '',
30
- extension: '',
31
- objectIds: objectIds,
32
- version: link.version,
33
- sizeMB: ""
34
- };
35
- const access_token = api.getAccessToken();
36
- const attVersion = "attachments/%@/versions/%@/download";
37
- const url = api.getApiTeamUrl() + attVersion;
38
- const isEmbeddedAllplanMode = false;
39
- retval.size = parseFloat((link.size / 1000).toFixed(2));
40
- retval.link = `${this.fmt(url, link.id, link.version)}?api-token=${access_token}${isEmbeddedAllplanMode ? '' : '&openInBrowser=true'}`;
41
- if (link.fileName.length > 20) {
42
- const fileParts = link.fileName.split('.');
43
- if (fileParts.length > 1) {
44
- retval.fileNameShort = fileParts.slice(0, -1).join('.');
45
- retval.extension = "." + fileParts.slice(-1);
46
- }
47
- else {
48
- retval.fileNameShort = link.fileName;
49
- }
50
- }
51
- else {
52
- retval.fileNameShort = link.fileName;
53
- }
54
- return retval;
55
- }
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DecoratorsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
57
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DecoratorsService, providedIn: 'root' }); }
58
- }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DecoratorsService, decorators: [{
60
- type: Injectable,
61
- args: [{
62
- providedIn: 'root'
63
- }]
64
- }], ctorParameters: () => [] });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2RlY29yYXRvcnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8saUJBQWlCO0lBRTVCLGdCQUFnQixDQUFDO0lBRWpCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsR0FBRyxPQUFrQjtRQUN2QyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFFZCxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBYSxFQUFFLGFBQXFCLEVBQUUsRUFBRTtZQUMxRSxNQUFNLGNBQWMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNqRixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7WUFFdkMsSUFBSSxNQUFNLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ3BCLE9BQU8sUUFBUSxDQUFDO1lBQ2xCLENBQUM7WUFDRCxJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDekIsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDO1lBQ0QsT0FBTyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0g7O2tGQUU4RTtJQUM1RSxZQUFZLENBQUMsR0FBYyxFQUFDLElBQTBCLEVBQUMsU0FBa0I7UUFFdkUsTUFBTSxNQUFNLEdBQXlCO1lBQ25DLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixhQUFhLEVBQUUsRUFBRTtZQUNqQixTQUFTLEVBQUUsRUFBRTtZQUNiLFNBQVMsRUFBRSxTQUFTO1lBQ3BCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUM7UUFDRixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDMUMsTUFBTSxVQUFVLEdBQUcscUNBQXFDLENBQUM7UUFDekQsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLGFBQWEsRUFBRSxHQUFDLFVBQVUsQ0FBQztRQUMzQyxNQUFNLHFCQUFxQixHQUFHLEtBQUssQ0FBQztRQUNwQyxNQUFNLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEQsTUFBTSxDQUFDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLFlBQVksR0FBSSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3hJLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFLENBQUM7WUFDOUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDM0MsSUFBSSxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN6QixNQUFNLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN4RCxNQUFNLENBQUMsU0FBUyxHQUFHLEdBQUcsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0MsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU0sQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUN2QyxDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdkMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7K0dBdkRVLGlCQUFpQjttSEFBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIFdlYlNkayBmcm9tICdiaW1wbHVzLXdlYnNkayc7XHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIERlY29yYXRvcnNTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuICBcclxuICBmbXQoc3RyaW5nOiBzdHJpbmcsIC4uLmZvcm1hdHM6IHVua25vd25bXSk6IHN0cmluZyB7XHJcbiAgICBsZXQgaW5kZXggPSAwO1xyXG5cclxuICAgIHJldHVybiBzdHJpbmcucmVwbGFjZSgvJUAoXFxkKyk/L2csIChtYXRjaDogc3RyaW5nLCBhcmd1bWVudEluZGV4OiBzdHJpbmcpID0+IHtcclxuICAgICAgY29uc3QgYXJndW1lbnRJbmRleE4gPSBhcmd1bWVudEluZGV4ID8gcGFyc2VJbnQoYXJndW1lbnRJbmRleCwgMTApIC0gMSA6IGluZGV4Kys7XHJcbiAgICAgIGNvbnN0IF9tYXRjaCA9IGZvcm1hdHNbYXJndW1lbnRJbmRleE5dO1xyXG5cclxuICAgICAgaWYgKF9tYXRjaCA9PT0gbnVsbCkge1xyXG4gICAgICAgIHJldHVybiAnKG51bGwpJztcclxuICAgICAgfVxyXG4gICAgICBpZiAoX21hdGNoID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIF9tYXRjaC50b1N0cmluZygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4vKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAqIGRlY29yYXRlIGxpbmtcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgZGVjb3JhdGVMaW5rKGFwaTpXZWJTZGsuQXBpLGxpbms6V2ViU2RrLkF0dGFjaG1lbnRMaW5rLG9iamVjdElkczpbc3RyaW5nXSk6V2ViU2RrLkF0dGFjaG1lbnRMaW5re1xyXG5cclxuICAgIGNvbnN0IHJldHZhbDpXZWJTZGsuQXR0YWNobWVudExpbmsgPSB7XHJcbiAgICAgIGlkOiBsaW5rLmlkLFxyXG4gICAgICBuYW1lOiBsaW5rLm5hbWUsXHJcbiAgICAgIGZpbGVOYW1lOiBsaW5rLmZpbGVOYW1lLFxyXG4gICAgICBzaXplOiBsaW5rLnNpemUsXHJcbiAgICAgIGxpbms6IGxpbmsubGluayxcclxuICAgICAgZmlsZU5hbWVTaG9ydDogJycsXHJcbiAgICAgIGV4dGVuc2lvbjogJycsXHJcbiAgICAgIG9iamVjdElkczogb2JqZWN0SWRzLFxyXG4gICAgICB2ZXJzaW9uOiBsaW5rLnZlcnNpb24sXHJcbiAgICAgIHNpemVNQjogXCJcIlxyXG4gICAgfTtcclxuICAgIGNvbnN0IGFjY2Vzc190b2tlbiA9IGFwaS5nZXRBY2Nlc3NUb2tlbigpO1xyXG4gICAgY29uc3QgYXR0VmVyc2lvbiA9IFwiYXR0YWNobWVudHMvJUAvdmVyc2lvbnMvJUAvZG93bmxvYWRcIjtcclxuICAgIGNvbnN0IHVybCA9IGFwaS5nZXRBcGlUZWFtVXJsKCkrYXR0VmVyc2lvbjtcclxuICAgIGNvbnN0IGlzRW1iZWRkZWRBbGxwbGFuTW9kZSA9IGZhbHNlO1xyXG4gICAgcmV0dmFsLnNpemUgPSBwYXJzZUZsb2F0KChsaW5rLnNpemUgLyAxMDAwKS50b0ZpeGVkKDIpKTtcclxuICAgIHJldHZhbC5saW5rID0gYCR7dGhpcy5mbXQodXJsLCBsaW5rLmlkLCBsaW5rLnZlcnNpb24pfT9hcGktdG9rZW49JHthY2Nlc3NfdG9rZW59JHsgaXNFbWJlZGRlZEFsbHBsYW5Nb2RlID8gJycgOiAnJm9wZW5JbkJyb3dzZXI9dHJ1ZSd9YDtcclxuICAgIGlmIChsaW5rLmZpbGVOYW1lLmxlbmd0aCA+IDIwKSB7XHJcbiAgICAgIGNvbnN0IGZpbGVQYXJ0cyA9IGxpbmsuZmlsZU5hbWUuc3BsaXQoJy4nKTtcclxuICAgICAgaWYgKGZpbGVQYXJ0cy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgcmV0dmFsLmZpbGVOYW1lU2hvcnQgPSBmaWxlUGFydHMuc2xpY2UoMCwgLTEpLmpvaW4oJy4nKTtcclxuICAgICAgICByZXR2YWwuZXh0ZW5zaW9uID0gXCIuXCIgKyBmaWxlUGFydHMuc2xpY2UoLTEpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHZhbC5maWxlTmFtZVNob3J0ID0gbGluay5maWxlTmFtZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dmFsLmZpbGVOYW1lU2hvcnQgPSBsaW5rLmZpbGVOYW1lO1xyXG4gICAgfSAgICBcclxuICAgIHJldHVybiByZXR2YWw7XHJcbiAgfSAgXHJcbn1cclxuIl19
@@ -1,9 +0,0 @@
1
- export function isObjectPropertyValueBlank(attrib) {
2
- return attrib.value === undefined
3
- || attrib.value === null
4
- || attrib.value === ''
5
- || attrib.value === '\n\t'
6
- || attrib.value === '\n'
7
- || attrib.value === '\t';
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0UHJvcGVydGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi91dGlscy9vYmplY3RQcm9wZXJ0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxNQUF1QjtJQUNoRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLEtBQUssU0FBUztXQUM1QixNQUFNLENBQUMsS0FBSyxLQUFLLElBQUk7V0FDckIsTUFBTSxDQUFDLEtBQUssS0FBSyxFQUFFO1dBQ25CLE1BQU0sQ0FBQyxLQUFLLEtBQUssTUFBTTtXQUN2QixNQUFNLENBQUMsS0FBSyxLQUFLLElBQUk7V0FDckIsTUFBTSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9iamVjdEF0dHJpYnV0ZSB9IGZyb20gJy4uL2NvbXBvbmVudHMvb2JqZWN0LXByb3BlcnRpZXMvb2JqZWN0LXByb3BlcnRpZXMuaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdFByb3BlcnR5VmFsdWVCbGFuayhhdHRyaWI6IE9iamVjdEF0dHJpYnV0ZSk6IGJvb2xlYW4ge1xyXG4gIHJldHVybiBhdHRyaWIudmFsdWUgPT09IHVuZGVmaW5lZFxyXG4gICAgfHwgYXR0cmliLnZhbHVlID09PSBudWxsXHJcbiAgICB8fCBhdHRyaWIudmFsdWUgPT09ICcnXHJcbiAgICB8fCBhdHRyaWIudmFsdWUgPT09ICdcXG5cXHQnXHJcbiAgICB8fCBhdHRyaWIudmFsdWUgPT09ICdcXG4nXHJcbiAgICB8fCBhdHRyaWIudmFsdWUgPT09ICdcXHQnO1xyXG59Il19
@@ -1,17 +0,0 @@
1
- export function doubleEnumValidator(enumData) {
2
- return (control) => {
3
- if (!enumData) {
4
- return null;
5
- }
6
- if (Array.isArray(enumData)) {
7
- return null;
8
- }
9
- const value = control.value;
10
- const isValueFromEnum = Object.keys(enumData).includes(value);
11
- if (!isValueFromEnum) {
12
- return { invalidGuid: { value: value, message: `Invalid value: ${value}.` } };
13
- }
14
- return null;
15
- };
16
- }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG91YmxlLWVudW0udmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3ZhbGlkYXRvcnMvZG91YmxlLWVudW0udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxRQUFxRTtJQUN2RyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxJQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDYixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxJQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUMzQixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzVCLE1BQU0sZUFBZSxHQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9ELElBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNwQixPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEtBQUssR0FBRyxFQUFFLEVBQUUsQ0FBQztRQUNoRixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkb3VibGVFbnVtVmFsaWRhdG9yKGVudW1EYXRhOiBSZWNvcmQ8bnVtYmVyIHwgc3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkIHwgQXJyYXk8c3RyaW5nPik6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgIGlmKCFlbnVtRGF0YSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmKEFycmF5LmlzQXJyYXkoZW51bURhdGEpKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgY29uc3QgaXNWYWx1ZUZyb21FbnVtID0gIE9iamVjdC5rZXlzKGVudW1EYXRhKS5pbmNsdWRlcyh2YWx1ZSk7XHJcblxyXG4gICAgaWYoIWlzVmFsdWVGcm9tRW51bSkge1xyXG4gICAgICByZXR1cm4geyBpbnZhbGlkR3VpZDogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBJbnZhbGlkIHZhbHVlOiAke3ZhbHVlfS5gIH0gfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9O1xyXG59Il19
@@ -1,23 +0,0 @@
1
- export function doubleValidator(minValue, maxValue) {
2
- return (control) => {
3
- if (control.value === null || control.value === undefined || control.value === '') {
4
- return null;
5
- }
6
- const value = control.value;
7
- const isValidDouble = /^[-+]?\d*?\.?\d+?([eE][-+]?\d+?)?$/.test(value); //Regex for a double
8
- if (!isValidDouble) {
9
- return { invalidDouble: { value: value, message: `Invalid number format: ${value}.` } };
10
- }
11
- if (isNaN(parseFloat(value))) {
12
- return { invalidDouble: { value: value, message: `Invalid number format: ${value}.` } };
13
- }
14
- if (minValue && parseFloat(value) < parseFloat(minValue)) {
15
- return { invalidDouble: { value: value, message: `Value must be greater than or equal to ${minValue}.` } };
16
- }
17
- if (maxValue && parseFloat(value) > parseFloat(maxValue)) {
18
- return { invalidDouble: { value: value, message: `Value must be less than or equal to ${maxValue}.` } };
19
- }
20
- return null;
21
- };
22
- }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG91YmxlLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi92YWxpZGF0b3JzL2RvdWJsZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLGVBQWUsQ0FBQyxRQUFnQixFQUFFLFFBQWdCO0lBQ2hFLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQzNELElBQUcsT0FBTyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNqRixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzVCLE1BQU0sYUFBYSxHQUFHLG9DQUFvQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLG9CQUFvQjtRQUU1RixJQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLDBCQUEwQixLQUFLLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDMUYsQ0FBQztRQUVELElBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLDBCQUEwQixLQUFLLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDMUYsQ0FBQztRQUVELElBQUksUUFBUSxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsMENBQTBDLFFBQVEsR0FBRyxFQUFFLEVBQUUsQ0FBQztRQUM3RyxDQUFDO1FBQ0QsSUFBSSxRQUFRLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSx1Q0FBdUMsUUFBUSxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQzFHLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRvdWJsZVZhbGlkYXRvcihtaW5WYWx1ZTogc3RyaW5nLCBtYXhWYWx1ZTogc3RyaW5nKTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG4gICAgaWYoY29udHJvbC52YWx1ZSA9PT0gbnVsbCB8fCBjb250cm9sLnZhbHVlID09PSB1bmRlZmluZWQgfHwgY29udHJvbC52YWx1ZSA9PT0gJycpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgY29uc3QgaXNWYWxpZERvdWJsZSA9IC9eWy0rXT9cXGQqP1xcLj9cXGQrPyhbZUVdWy0rXT9cXGQrPyk/JC8udGVzdCh2YWx1ZSk7IC8vUmVnZXggZm9yIGEgZG91YmxlXHJcblxyXG4gICAgaWYoIWlzVmFsaWREb3VibGUpIHtcclxuICAgICAgcmV0dXJuIHsgaW52YWxpZERvdWJsZTogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBJbnZhbGlkIG51bWJlciBmb3JtYXQ6ICR7dmFsdWV9LmAgfSB9O1xyXG4gICAgfVxyXG5cclxuICAgIGlmKGlzTmFOKHBhcnNlRmxvYXQodmFsdWUpKSkge1xyXG4gICAgICByZXR1cm4geyBpbnZhbGlkRG91YmxlOiB7IHZhbHVlOiB2YWx1ZSwgbWVzc2FnZTogYEludmFsaWQgbnVtYmVyIGZvcm1hdDogJHt2YWx1ZX0uYCB9IH07XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG1pblZhbHVlICYmIHBhcnNlRmxvYXQodmFsdWUpIDwgcGFyc2VGbG9hdChtaW5WYWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHsgaW52YWxpZERvdWJsZTogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBWYWx1ZSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAke21pblZhbHVlfS5gIH0gfTtcclxuICAgIH1cclxuICAgIGlmIChtYXhWYWx1ZSAmJiBwYXJzZUZsb2F0KHZhbHVlKSA+IHBhcnNlRmxvYXQobWF4VmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB7IGludmFsaWREb3VibGU6IHsgdmFsdWU6IHZhbHVlLCBtZXNzYWdlOiBgVmFsdWUgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHttYXhWYWx1ZX0uYCB9IH07XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -1,17 +0,0 @@
1
- export function guidEnumValidator(enumData) {
2
- return (control) => {
3
- if (!enumData) {
4
- return null;
5
- }
6
- if (Array.isArray(enumData)) {
7
- return null;
8
- }
9
- const value = control.value;
10
- const isValueFromEnum = Object.keys(enumData).includes(value);
11
- if (!isValueFromEnum) {
12
- return { invalidGuid: { value: value, message: `Invalid value: ${value}.` } };
13
- }
14
- return null;
15
- };
16
- }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZC1lbnVtLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi92YWxpZGF0b3JzL2d1aWQtZW51bS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFFBQXFFO0lBQ3JHLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQzNELElBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNiLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQzNCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDNUIsTUFBTSxlQUFlLEdBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0QsSUFBRyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLE9BQU8sRUFBRSxXQUFXLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsS0FBSyxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQ2hGLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGd1aWRFbnVtVmFsaWRhdG9yKGVudW1EYXRhOiBSZWNvcmQ8bnVtYmVyIHwgc3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkIHwgQXJyYXk8c3RyaW5nPik6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgIGlmKCFlbnVtRGF0YSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmKEFycmF5LmlzQXJyYXkoZW51bURhdGEpKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgY29uc3QgaXNWYWx1ZUZyb21FbnVtID0gIE9iamVjdC5rZXlzKGVudW1EYXRhKS5pbmNsdWRlcyh2YWx1ZSk7XHJcblxyXG4gICAgaWYoIWlzVmFsdWVGcm9tRW51bSkge1xyXG4gICAgICByZXR1cm4geyBpbnZhbGlkR3VpZDogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBJbnZhbGlkIHZhbHVlOiAke3ZhbHVlfS5gIH0gfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9O1xyXG59Il19
@@ -1,11 +0,0 @@
1
- export function guidValidator() {
2
- return (control) => {
3
- const value = control.value;
4
- const isValidGuid = /^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$/.test(value); //Regex for a guid
5
- if (!isValidGuid) {
6
- return { invalidGuid: { value: value, message: `Invalid guid format: ${value}.` } };
7
- }
8
- return null;
9
- };
10
- }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZC52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvdmFsaWRhdG9ycy9ndWlkLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsYUFBYTtJQUMzQixPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzVCLE1BQU0sV0FBVyxHQUFJLHNEQUFzRCxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGtCQUFrQjtRQUUzRyxJQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDaEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLHdCQUF3QixLQUFLLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDdEYsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ3VpZFZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XHJcbiAgICBjb25zdCBpc1ZhbGlkR3VpZCA9ICAvXlswLTlhLWZBLUZdezh9KC1bMC05YS1mQS1GXXs0fSl7M30tWzAtOWEtZkEtRl17MTJ9JC8udGVzdCh2YWx1ZSk7IC8vUmVnZXggZm9yIGEgZ3VpZFxyXG5cclxuICAgIGlmKCFpc1ZhbGlkR3VpZCkge1xyXG4gICAgICByZXR1cm4geyBpbnZhbGlkR3VpZDogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBJbnZhbGlkIGd1aWQgZm9ybWF0OiAke3ZhbHVlfS5gIH0gfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9O1xyXG59Il19
@@ -1,20 +0,0 @@
1
- export function integerValidator(minValue, maxValue) {
2
- return (control) => {
3
- const value = control.value;
4
- const isValidInteger = /^[+-]?\d+$/.test(value); //Regex for a integer
5
- if (!isValidInteger) {
6
- return { invalidInteger: { value: value, message: `Invalid number format: ${value}.` } };
7
- }
8
- if (isNaN(parseInt(value))) {
9
- return { invalidInteger: { value: value, message: `Invalid number format: ${value}.` } };
10
- }
11
- if (minValue && parseInt(value) < parseInt(minValue)) {
12
- return { invalidInteger: { value: value, message: `Value must be greater than or equal to ${minValue}.` } };
13
- }
14
- if (maxValue && parseInt(value) > parseInt(maxValue)) {
15
- return { invalidInteger: { value: value, message: `Value must be less than or equal to ${maxValue}.` } };
16
- }
17
- return null;
18
- };
19
- }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdlci52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvdmFsaWRhdG9ycy9pbnRlZ2VyLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsUUFBZ0IsRUFBRSxRQUFnQjtJQUNqRSxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzVCLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxxQkFBcUI7UUFFdEUsSUFBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ25CLE9BQU8sRUFBRSxjQUFjLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSwwQkFBMEIsS0FBSyxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQzNGLENBQUM7UUFFRCxJQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzFCLE9BQU8sRUFBRSxjQUFjLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSwwQkFBMEIsS0FBSyxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQzNGLENBQUM7UUFFRCxJQUFJLFFBQVEsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLDBDQUEwQyxRQUFRLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDOUcsQ0FBQztRQUNELElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsdUNBQXVDLFFBQVEsR0FBRyxFQUFFLEVBQUUsQ0FBQztRQUMzRyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpbnRlZ2VyVmFsaWRhdG9yKG1pblZhbHVlOiBzdHJpbmcsIG1heFZhbHVlOiBzdHJpbmcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XHJcbiAgICBjb25zdCBpc1ZhbGlkSW50ZWdlciA9IC9eWystXT9cXGQrJC8udGVzdCh2YWx1ZSk7IC8vUmVnZXggZm9yIGEgaW50ZWdlclxyXG5cclxuICAgIGlmKCFpc1ZhbGlkSW50ZWdlcikge1xyXG4gICAgICByZXR1cm4geyBpbnZhbGlkSW50ZWdlcjogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBJbnZhbGlkIG51bWJlciBmb3JtYXQ6ICR7dmFsdWV9LmAgfSB9O1xyXG4gICAgfVxyXG5cclxuICAgIGlmKGlzTmFOKHBhcnNlSW50KHZhbHVlKSkpIHtcclxuICAgICAgcmV0dXJuIHsgaW52YWxpZEludGVnZXI6IHsgdmFsdWU6IHZhbHVlLCBtZXNzYWdlOiBgSW52YWxpZCBudW1iZXIgZm9ybWF0OiAke3ZhbHVlfS5gIH0gfTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAobWluVmFsdWUgJiYgcGFyc2VJbnQodmFsdWUpIDwgcGFyc2VJbnQobWluVmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB7IGludmFsaWRJbnRlZ2VyOiB7IHZhbHVlOiB2YWx1ZSwgbWVzc2FnZTogYFZhbHVlIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICR7bWluVmFsdWV9LmAgfSB9O1xyXG4gICAgfVxyXG4gICAgaWYgKG1heFZhbHVlICYmIHBhcnNlSW50KHZhbHVlKSA+IHBhcnNlSW50KG1heFZhbHVlKSkge1xyXG4gICAgICByZXR1cm4geyBpbnZhbGlkSW50ZWdlcjogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBWYWx1ZSBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAke21heFZhbHVlfS5gIH0gfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9O1xyXG59Il19
@@ -1,17 +0,0 @@
1
- export function stringComboboxValidator(arrayData) {
2
- return (control) => {
3
- if (!arrayData) {
4
- return null;
5
- }
6
- if (!Array.isArray(arrayData)) {
7
- return null;
8
- }
9
- const value = control.value;
10
- const isValueFromEnum = arrayData.includes(value);
11
- if (!isValueFromEnum) {
12
- return { invalidGuid: { value: value, message: `Invalid value: ${value}.` } };
13
- }
14
- return null;
15
- };
16
- }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWNvbWJvYm94LnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi92YWxpZGF0b3JzL3N0cmluZy1jb21ib2JveC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLHVCQUF1QixDQUFDLFNBQXNFO0lBQzVHLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQzNELElBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNkLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDN0IsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUM1QixNQUFNLGVBQWUsR0FBSSxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRW5ELElBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNwQixPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEtBQUssR0FBRyxFQUFFLEVBQUUsQ0FBQztRQUNoRixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdDb21ib2JveFZhbGlkYXRvcihhcnJheURhdGE6IFJlY29yZDxudW1iZXIgfCBzdHJpbmcsIHN0cmluZz4gfCB1bmRlZmluZWQgfCBBcnJheTxzdHJpbmc+KTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG4gICAgaWYoIWFycmF5RGF0YSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmKCFBcnJheS5pc0FycmF5KGFycmF5RGF0YSkpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XHJcbiAgICBjb25zdCBpc1ZhbHVlRnJvbUVudW0gPSAgYXJyYXlEYXRhLmluY2x1ZGVzKHZhbHVlKTtcclxuXHJcbiAgICBpZighaXNWYWx1ZUZyb21FbnVtKSB7XHJcbiAgICAgIHJldHVybiB7IGludmFsaWRHdWlkOiB7IHZhbHVlOiB2YWx1ZSwgbWVzc2FnZTogYEludmFsaWQgdmFsdWU6ICR7dmFsdWV9LmAgfSB9O1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH07XHJcbn0iXX0=
@@ -1,17 +0,0 @@
1
- export function stringEnumValidator(enumData) {
2
- return (control) => {
3
- if (!enumData) {
4
- return null;
5
- }
6
- if (Array.isArray(enumData)) {
7
- return null;
8
- }
9
- const value = control.value;
10
- const isValueFromEnum = Object.keys(enumData).includes(value);
11
- if (!isValueFromEnum) {
12
- return { invalidGuid: { value: value, message: `Invalid value: ${value}.` } };
13
- }
14
- return null;
15
- };
16
- }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWVudW0udmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3ZhbGlkYXRvcnMvc3RyaW5nLWVudW0udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxRQUFxRTtJQUN2RyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxJQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDYixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxJQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUMzQixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzVCLE1BQU0sZUFBZSxHQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9ELElBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNwQixPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEtBQUssR0FBRyxFQUFFLEVBQUUsQ0FBQztRQUNoRixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdFbnVtVmFsaWRhdG9yKGVudW1EYXRhOiBSZWNvcmQ8bnVtYmVyIHwgc3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkIHwgQXJyYXk8c3RyaW5nPik6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgIGlmKCFlbnVtRGF0YSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmKEFycmF5LmlzQXJyYXkoZW51bURhdGEpKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgY29uc3QgaXNWYWx1ZUZyb21FbnVtID0gIE9iamVjdC5rZXlzKGVudW1EYXRhKS5pbmNsdWRlcyh2YWx1ZSk7XHJcblxyXG4gICAgaWYoIWlzVmFsdWVGcm9tRW51bSkge1xyXG4gICAgICByZXR1cm4geyBpbnZhbGlkR3VpZDogeyB2YWx1ZTogdmFsdWUsIG1lc3NhZ2U6IGBJbnZhbGlkIHZhbHVlOiAke3ZhbHVlfS5gIH0gfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9O1xyXG59Il19
@@ -1,39 +0,0 @@
1
- import { AfterViewInit, ElementRef, EventEmitter, OnDestroy, TemplateRef } from '@angular/core';
2
- import { BimplusLocalizedWidgetComponent } from '../bimplus-localized-widget/bimplus-localized-widget.component';
3
- import { BimplusButtonRowItem } from '../bimplus-buttons-row/bimplus-buttons-row.interface';
4
- import { Attachment } from './bimplus-attachments.interface';
5
- import * as WebSdk from 'bimplus-websdk';
6
- import * as i0 from "@angular/core";
7
- export declare class BimplusAttachmentsComponent extends BimplusLocalizedWidgetComponent implements AfterViewInit, OnDestroy {
8
- api: WebSdk.Api | null;
9
- /** Attribute for attachments which were saved to server. */
10
- attachments: Attachment[];
11
- closeIconTemplate?: TemplateRef<unknown>;
12
- /** Attribute to set if should button display or no. */
13
- listOnly: boolean;
14
- attachmentListRef: ElementRef<HTMLElement>;
15
- fileInput: ElementRef<HTMLInputElement>;
16
- deleteAttachment: EventEmitter<Attachment>;
17
- addAttachment: EventEmitter<File>;
18
- getAttachment: EventEmitter<Attachment>;
19
- private resizeObserver;
20
- /** Configuration token. */
21
- protected readonly config: import("./bimplus-attachments.interface").BimplusAttachmentsConfig | null;
22
- /** Attachments buttons. */
23
- protected readonly buttons: BimplusButtonRowItem[];
24
- /** Width size of file name line. */
25
- protected readonly attachmentListWidth: import("@angular/core").WritableSignal<number | undefined>;
26
- /**
27
- * Will open window to select File.
28
- * @return void
29
- * @public
30
- */
31
- open(): void;
32
- ngAfterViewInit(): void;
33
- ngOnDestroy(): void;
34
- protected onFileChanged(files: File[] | Event, inputElement?: HTMLInputElement): void;
35
- private createResizeObserver;
36
- static ɵfac: i0.ɵɵFactoryDeclaration<BimplusAttachmentsComponent, never>;
37
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusAttachmentsComponent, "lib-bimplus-attachments", never, { "api": { "alias": "api"; "required": false; }; "attachments": { "alias": "attachments"; "required": false; }; "closeIconTemplate": { "alias": "closeIconTemplate"; "required": false; }; "listOnly": { "alias": "listOnly"; "required": false; }; }, { "deleteAttachment": "deleteAttachment"; "addAttachment": "addAttachment"; "getAttachment": "getAttachment"; }, never, never, true, never>;
38
- static ngAcceptInputType_listOnly: unknown;
39
- }
@@ -1,33 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { BimplusButtonRowItem } from '../bimplus-buttons-row/bimplus-buttons-row.interface';
3
- export type BimplusAttachmentsConfig = {
4
- buttons?: BimplusButtonRowItem[];
5
- hideDeleteAttachmentButton?: boolean;
6
- showNoAttachmentsFound?: boolean;
7
- hideAttachmentSize?: boolean;
8
- };
9
- export declare const BIMPLUS_ATTACHMENTS_CONFIG: InjectionToken<BimplusAttachmentsConfig>;
10
- export interface IAttachment {
11
- id: string;
12
- fileName: string;
13
- size: number | undefined;
14
- file?: File;
15
- }
16
- export declare class Attachment implements Partial<IAttachment> {
17
- id: string;
18
- fileName: string;
19
- size: number | undefined;
20
- file?: File;
21
- constructor(data: Partial<IAttachment>);
22
- }
23
- type Builder = typeof AttachmentBuilder;
24
- export declare abstract class AttachmentBuilder {
25
- private static attachment;
26
- static create(value: Attachment): Builder;
27
- static setId(id: string): Builder;
28
- static setFileName(name: string): Builder;
29
- static setSize(size: number): Builder;
30
- static setFile(file: File): Builder;
31
- static build(): Attachment;
32
- }
33
- export {};
@@ -1,30 +0,0 @@
1
- import { AfterViewInit, ElementRef, EventEmitter, OnDestroy, TemplateRef } from '@angular/core';
2
- import { Attachment } from '../../bimplus-attachments.interface';
3
- import * as i0 from "@angular/core";
4
- export declare class BimplusAttachmentItemComponent implements AfterViewInit, OnDestroy {
5
- closeIconTemplate?: TemplateRef<unknown>;
6
- attachmentSizeRef?: ElementRef<HTMLElement>;
7
- attachmentNameRef: ElementRef<HTMLElement>;
8
- attachment: Attachment;
9
- set parentWidth(value: number | undefined);
10
- deleteAttachment: EventEmitter<Attachment>;
11
- getAttachment: EventEmitter<Attachment>;
12
- get type(): string;
13
- private intersectionObserver?;
14
- /** Parent element width. */
15
- private readonly parentWidthSignal;
16
- /** Attachment size text width. */
17
- private readonly attachmentSizeWidth;
18
- /** Wheter name is fully visible or not based on parent width. */
19
- protected readonly nameIsFullyVisible: import("@angular/core").WritableSignal<boolean>;
20
- protected readonly config: import("../../bimplus-attachments.interface").BimplusAttachmentsConfig | null;
21
- /** Attribute to indicate if show/hide size of File. */
22
- protected readonly hideSize: boolean;
23
- /** Width size of file name line. */
24
- protected readonly nameInfoLineWidth: import("@angular/core").Signal<number>;
25
- ngAfterViewInit(): void;
26
- ngOnDestroy(): void;
27
- private createIntersectionObserver;
28
- static ɵfac: i0.ɵɵFactoryDeclaration<BimplusAttachmentItemComponent, never>;
29
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusAttachmentItemComponent, "lib-bimplus-attachment-item", never, { "closeIconTemplate": { "alias": "closeIconTemplate"; "required": false; }; "attachment": { "alias": "attachment"; "required": true; }; "parentWidth": { "alias": "parentWidth"; "required": false; }; }, { "deleteAttachment": "deleteAttachment"; "getAttachment": "getAttachment"; }, never, never, true, never>;
30
- }
@@ -1,8 +0,0 @@
1
- import { Attachment } from '../bimplus-attachments.interface';
2
- import * as i0 from "@angular/core";
3
- export declare class BimplusAttachmentsService {
4
- getAttachment(value: Attachment | File): Attachment;
5
- download(href: string, fileName: string): void;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<BimplusAttachmentsService, never>;
7
- static ɵprov: i0.ɵɵInjectableDeclaration<BimplusAttachmentsService>;
8
- }
@@ -1,4 +0,0 @@
1
- export interface CommentOutputData {
2
- action: string;
3
- data: unknown;
4
- }
@@ -1,39 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import WebSdk from "bimplus-websdk";
3
- import { Attachment } from '../bimplus-attachments/bimplus-attachments.interface';
4
- import { CommentOutputData } from './IComment';
5
- import * as i0 from "@angular/core";
6
- export declare class BimplusCommentComponent {
7
- outputActionCommentEvent: EventEmitter<CommentOutputData>;
8
- getAttachment: EventEmitter<Attachment>;
9
- private _message;
10
- api: WebSdk.Api | null;
11
- /** Attachments links to particular comment. */
12
- attachmentLinkItems: WebSdk.AttachmentLink[];
13
- set message(value: string | undefined);
14
- get message(): string | undefined;
15
- private _date;
16
- set date(value: string);
17
- get date(): string;
18
- private _action;
19
- set action(value: string);
20
- get action(): string;
21
- private _commentId;
22
- set commentId(value: string);
23
- get commentId(): string;
24
- private _isActUserAuthor;
25
- set isActUserAuthor(value: boolean);
26
- get isActUserAuthor(): boolean;
27
- private _displayname;
28
- set displayname(value: string);
29
- get displayname(): string;
30
- hyperlinks: WebSdk.Hyperlink[] | undefined;
31
- /** Attachments related to particular comment. */
32
- attachments: WebSdk.Attachment[];
33
- emitAction(data: CommentOutputData): void;
34
- close(): void;
35
- onKeyPress(event: KeyboardEvent): void;
36
- formatTime(date: string): string;
37
- static ɵfac: i0.ɵɵFactoryDeclaration<BimplusCommentComponent, never>;
38
- static ɵcmp: i0.ɵɵComponentDeclaration<BimplusCommentComponent, "lib-bimplus-comment", never, { "api": { "alias": "api"; "required": false; }; "attachmentLinkItems": { "alias": "attachmentLinkItems"; "required": false; }; "message": { "alias": "message"; "required": false; }; "date": { "alias": "date"; "required": false; }; "action": { "alias": "action"; "required": false; }; "commentId": { "alias": "commentId"; "required": false; }; "isActUserAuthor": { "alias": "isActUserAuthor"; "required": false; }; "displayname": { "alias": "displayname"; "required": false; }; "hyperlinks": { "alias": "hyperlinks"; "required": false; }; "attachments": { "alias": "attachments"; "required": false; }; }, { "outputActionCommentEvent": "outputActionCommentEvent"; "getAttachment": "getAttachment"; }, never, never, true, never>;
39
- }