@jooler/inputs 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 (44) hide show
  1. package/README.md +24 -0
  2. package/esm2020/inputs.mjs +5 -0
  3. package/esm2020/lib/inputs/choose-enum/choose-enum.component.mjs +107 -0
  4. package/esm2020/lib/inputs/choose-enum-renderer/choose-enum-renderer.component.mjs +27 -0
  5. package/esm2020/lib/inputs/choose-general-item/choose-general-item.component.mjs +122 -0
  6. package/esm2020/lib/inputs/choose-general-item/choose-general-item.service.mjs +34 -0
  7. package/esm2020/lib/inputs/choose-line-type/choose-line-type.component.mjs +52 -0
  8. package/esm2020/lib/inputs/choose-yes-or-no/choose-yes-or-no.component.mjs +56 -0
  9. package/esm2020/lib/inputs/choose-yes-or-no-renderer/choose-yes-or-no-renderer.component.mjs +27 -0
  10. package/esm2020/lib/inputs/editable-savable-input/dynamicPipe.mjs +20 -0
  11. package/esm2020/lib/inputs/editable-savable-input/dynamicPipeMapping.mjs +5 -0
  12. package/esm2020/lib/inputs/editable-savable-input/editable-savable-input.component.mjs +123 -0
  13. package/esm2020/lib/inputs/general-input-renderer/general-input-renderer.component.mjs +61 -0
  14. package/esm2020/lib/inputs/models/enum-helper.model.mjs +2 -0
  15. package/esm2020/lib/inputs/models/label-and-field.model.mjs +3 -0
  16. package/esm2020/lib/inputs/models/line-type-model-helper.mjs +47 -0
  17. package/esm2020/lib/inputs/models/line-type.model.mjs +6 -0
  18. package/esm2020/lib/inputs/models/yes-or-no.model.mjs +3 -0
  19. package/esm2020/lib/inputs.module.mjs +82 -0
  20. package/esm2020/public-api.mjs +14 -0
  21. package/fesm2015/inputs.mjs +724 -0
  22. package/fesm2015/inputs.mjs.map +1 -0
  23. package/fesm2020/inputs.mjs +724 -0
  24. package/fesm2020/inputs.mjs.map +1 -0
  25. package/inputs.d.ts +5 -0
  26. package/lib/inputs/choose-enum/choose-enum.component.d.ts +38 -0
  27. package/lib/inputs/choose-enum-renderer/choose-enum-renderer.component.d.ts +15 -0
  28. package/lib/inputs/choose-general-item/choose-general-item.component.d.ts +46 -0
  29. package/lib/inputs/choose-general-item/choose-general-item.service.d.ts +18 -0
  30. package/lib/inputs/choose-line-type/choose-line-type.component.d.ts +19 -0
  31. package/lib/inputs/choose-yes-or-no/choose-yes-or-no.component.d.ts +24 -0
  32. package/lib/inputs/choose-yes-or-no-renderer/choose-yes-or-no-renderer.component.d.ts +16 -0
  33. package/lib/inputs/editable-savable-input/dynamicPipe.d.ts +7 -0
  34. package/lib/inputs/editable-savable-input/dynamicPipeMapping.d.ts +5 -0
  35. package/lib/inputs/editable-savable-input/editable-savable-input.component.d.ts +37 -0
  36. package/lib/inputs/general-input-renderer/general-input-renderer.component.d.ts +25 -0
  37. package/lib/inputs/models/enum-helper.model.d.ts +6 -0
  38. package/lib/inputs/models/label-and-field.model.d.ts +4 -0
  39. package/lib/inputs/models/line-type-model-helper.d.ts +12 -0
  40. package/lib/inputs/models/line-type.model.d.ts +4 -0
  41. package/lib/inputs/models/yes-or-no.model.d.ts +5 -0
  42. package/lib/inputs.module.d.ts +20 -0
  43. package/package.json +45 -0
  44. package/public-api.d.ts +10 -0
package/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # Inputs
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.3.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project inputs` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project inputs`.
8
+ > Note: Don't forget to add `--project inputs` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build inputs` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build inputs`, go to the dist folder `cd dist/inputs` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test inputs` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9pbnB1dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,107 @@
1
+ import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@ng-select/ng-select";
5
+ import * as i2 from "@jooler/shared-general-components";
6
+ import * as i3 from "@angular/common";
7
+ import * as i4 from "@angular/forms";
8
+ export class ChooseEnumComponent {
9
+ constructor() {
10
+ this.change = new EventEmitter();
11
+ this.width = 200;
12
+ this.labelTextAlign = 'left';
13
+ this.indexesToDisable = [];
14
+ this.disable = false;
15
+ this.propagateChange = (_) => { };
16
+ this.propogateTouch = () => { };
17
+ }
18
+ ngOnInit() {
19
+ this.enumHelperItems = this.enumHelperItems.getItems();
20
+ if (this.indexesToDisable.length > 0) {
21
+ for (let index of this.indexesToDisable) {
22
+ this.enumHelperItems[index].disabled = true;
23
+ }
24
+ }
25
+ }
26
+ writeValue(type) {
27
+ if (type != undefined || type != null) {
28
+ this.selectedItem = type;
29
+ }
30
+ }
31
+ registerOnChange(fn) {
32
+ this.propagateChange = fn;
33
+ }
34
+ registerOnTouched(fn) {
35
+ this.propogateTouch = fn;
36
+ }
37
+ updateBlur() {
38
+ this.propogateTouch();
39
+ }
40
+ onSelectedItemChanged() {
41
+ this.propagateChange(this.selectedItem);
42
+ this.change.emit(this.selectedItem);
43
+ }
44
+ clear() {
45
+ this.selectedItem = null;
46
+ }
47
+ setStyles() {
48
+ let style = {
49
+ width: this.width + 'px',
50
+ paddingTop: this.paddingTop + 'px'
51
+ };
52
+ return style;
53
+ }
54
+ setLabelStyle() {
55
+ let style = {
56
+ textAlign: this.labelTextAlign,
57
+ fontWeight: this.labelTextFontWeight,
58
+ fontSize: this.labelTextFontSize + 'px'
59
+ };
60
+ return style;
61
+ }
62
+ }
63
+ ChooseEnumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseEnumComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
64
+ ChooseEnumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: ChooseEnumComponent, selector: "choose-enum", inputs: { label: "label", enumHelperItems: "enumHelperItems", isChip: "isChip", placeholder: "placeholder", width: "width", paddingTop: "paddingTop", labelTextAlign: "labelTextAlign", labelTextFontWeight: "labelTextFontWeight", labelTextFontSize: "labelTextFontSize", selectedItem: "selectedItem", indexesToDisable: "indexesToDisable", disable: "disable" }, outputs: { change: "change" }, providers: [
65
+ {
66
+ provide: NG_VALUE_ACCESSOR,
67
+ useExisting: forwardRef(() => ChooseEnumComponent),
68
+ multi: true,
69
+ },
70
+ ], ngImport: i0, template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setStyles()\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"value\"\r\n [items]=\"enumHelperItems\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\"\r\n [(ngModel)]=\"selectedItem\" [disabled]=\"disable\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <div *ngIf=\"isChip\">\r\n <ng-chip class=\"chip\" [backgroundColor]=\"item.color\" [label]=\"item.label\" [width]=\"110\">\r\n </ng-chip>\r\n </div>\r\n <div [ngStyle]=\"setLabelStyle()\" *ngIf=\"!isChip\">{{item.label}}</div>\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [""], components: [{ type: i1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i2.NgChipComponent, selector: "ng-chip", inputs: ["value", "label", "backgroundColor", "textColor", "width", "item", "clear", "withCross"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { type: i1.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseEnumComponent, decorators: [{
72
+ type: Component,
73
+ args: [{ selector: 'choose-enum', providers: [
74
+ {
75
+ provide: NG_VALUE_ACCESSOR,
76
+ useExisting: forwardRef(() => ChooseEnumComponent),
77
+ multi: true,
78
+ },
79
+ ], template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setStyles()\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"value\"\r\n [items]=\"enumHelperItems\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\"\r\n [(ngModel)]=\"selectedItem\" [disabled]=\"disable\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <div *ngIf=\"isChip\">\r\n <ng-chip class=\"chip\" [backgroundColor]=\"item.color\" [label]=\"item.label\" [width]=\"110\">\r\n </ng-chip>\r\n </div>\r\n <div [ngStyle]=\"setLabelStyle()\" *ngIf=\"!isChip\">{{item.label}}</div>\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [""] }]
80
+ }], ctorParameters: function () { return []; }, propDecorators: { change: [{
81
+ type: Output
82
+ }], label: [{
83
+ type: Input
84
+ }], enumHelperItems: [{
85
+ type: Input
86
+ }], isChip: [{
87
+ type: Input
88
+ }], placeholder: [{
89
+ type: Input
90
+ }], width: [{
91
+ type: Input
92
+ }], paddingTop: [{
93
+ type: Input
94
+ }], labelTextAlign: [{
95
+ type: Input
96
+ }], labelTextFontWeight: [{
97
+ type: Input
98
+ }], labelTextFontSize: [{
99
+ type: Input
100
+ }], selectedItem: [{
101
+ type: Input
102
+ }], indexesToDisable: [{
103
+ type: Input
104
+ }], disable: [{
105
+ type: Input
106
+ }] } });
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvb3NlLWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9saWIvaW5wdXRzL2Nob29zZS1lbnVtL2Nob29zZS1lbnVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy9jaG9vc2UtZW51bS9jaG9vc2UtZW51bS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBZW5ELE1BQU0sT0FBTyxtQkFBbUI7SUFlOUI7UUFkVSxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUs3QixVQUFLLEdBQVcsR0FBRyxDQUFDO1FBRXBCLG1CQUFjLEdBQVcsTUFBTSxDQUFDO1FBSWhDLHFCQUFnQixHQUFhLEVBQUUsQ0FBQztRQUNoQyxZQUFPLEdBQVksS0FBSyxDQUFDO1FBMEIxQixvQkFBZSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDbEMsbUJBQWMsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUF6Qm5CLENBQUM7SUFFakIsUUFBUTtRQUNOLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN2RCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3BDLEtBQUssSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUN2QyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7YUFDN0M7U0FDRjtJQUNILENBQUM7SUFDRCxVQUFVLENBQUMsSUFBWTtRQUNyQixJQUFJLElBQUksSUFBSSxTQUFTLElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUNyQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxFQUFPO1FBQzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxFQUFPO1FBQzlCLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFLRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLEtBQUssR0FBRztZQUNWLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUk7WUFDeEIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSTtTQUNuQyxDQUFBO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksS0FBSyxHQUFHO1lBQ1YsU0FBUyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQzlCLFVBQVUsRUFBRSxJQUFJLENBQUMsbUJBQW1CO1lBQ3BDLFFBQVEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSTtTQUN4QyxDQUFBO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOztnSEF0RVUsbUJBQW1CO29HQUFuQixtQkFBbUIsMmFBVG5CO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7WUFDbEQsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLDBCQ2JILHF6QkFhTTsyRkRHTyxtQkFBbUI7a0JBYi9CLFNBQVM7K0JBQ0UsYUFBYSxhQUdaO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDOzRCQUNsRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjswRUFJUyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0UsS0FBSztzQkFBYixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Nob29zZS1lbnVtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2hvb3NlLWVudW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Nob29zZS1lbnVtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaG9vc2VFbnVtQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQ2hvb3NlRW51bUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGVudW1IZWxwZXJJdGVtczogYW55O1xyXG4gIEBJbnB1dCgpIGlzQ2hpcDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHdpZHRoOiBudW1iZXIgPSAyMDA7XHJcbiAgQElucHV0KCkgcGFkZGluZ1RvcDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGxhYmVsVGV4dEFsaWduOiBzdHJpbmcgPSAnbGVmdCc7XHJcbiAgQElucHV0KCkgbGFiZWxUZXh0Rm9udFdlaWdodDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGxhYmVsVGV4dEZvbnRTaXplOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtOiBhbnk7XHJcbiAgQElucHV0KCkgaW5kZXhlc1RvRGlzYWJsZTogbnVtYmVyW10gPSBbXTtcclxuICBASW5wdXQoKSBkaXNhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5lbnVtSGVscGVySXRlbXMgPSB0aGlzLmVudW1IZWxwZXJJdGVtcy5nZXRJdGVtcygpO1xyXG4gICAgaWYgKHRoaXMuaW5kZXhlc1RvRGlzYWJsZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGZvciAobGV0IGluZGV4IG9mIHRoaXMuaW5kZXhlc1RvRGlzYWJsZSkge1xyXG4gICAgICAgIHRoaXMuZW51bUhlbHBlckl0ZW1zW2luZGV4XS5kaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgd3JpdGVWYWx1ZSh0eXBlOiBudW1iZXIpIHtcclxuICAgIGlmICh0eXBlICE9IHVuZGVmaW5lZCB8fCB0eXBlICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSB0eXBlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XHJcbiAgICB0aGlzLnByb3BvZ2F0ZVRvdWNoID0gZm47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcclxuICBwcml2YXRlIHByb3BvZ2F0ZVRvdWNoID0gKCkgPT4geyB9O1xyXG5cclxuICB1cGRhdGVCbHVyKCkge1xyXG4gICAgdGhpcy5wcm9wb2dhdGVUb3VjaCgpO1xyXG4gIH1cclxuXHJcbiAgb25TZWxlY3RlZEl0ZW1DaGFuZ2VkKCkge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3RlZEl0ZW0pO1xyXG4gICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkSXRlbSk7XHJcbiAgfVxyXG5cclxuICBjbGVhcigpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gbnVsbDtcclxuICB9XHJcblxyXG4gIHNldFN0eWxlcygpIHtcclxuICAgIGxldCBzdHlsZSA9IHtcclxuICAgICAgd2lkdGg6IHRoaXMud2lkdGggKyAncHgnLFxyXG4gICAgICBwYWRkaW5nVG9wOiB0aGlzLnBhZGRpbmdUb3AgKyAncHgnXHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3R5bGU7XHJcbiAgfVxyXG5cclxuICBzZXRMYWJlbFN0eWxlKCkge1xyXG4gICAgbGV0IHN0eWxlID0ge1xyXG4gICAgICB0ZXh0QWxpZ246IHRoaXMubGFiZWxUZXh0QWxpZ24sXHJcbiAgICAgIGZvbnRXZWlnaHQ6IHRoaXMubGFiZWxUZXh0Rm9udFdlaWdodCxcclxuICAgICAgZm9udFNpemU6IHRoaXMubGFiZWxUZXh0Rm9udFNpemUgKyAncHgnXHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3R5bGU7XHJcbiAgfVxyXG59XHJcblxyXG4iLCI8ZGl2IGNsYXNzPVwic2VsZWN0XCI+XHJcbiAgICA8bmctc2VsZWN0IFtuZ1N0eWxlXT1cInNldFN0eWxlcygpXCIgYXBwZW5kVG89XCJib2R5XCIgKGJsdXIpPVwidXBkYXRlQmx1cigpXCIgYmluZExhYmVsPVwibGFiZWxcIiBiaW5kVmFsdWU9XCJ2YWx1ZVwiXHJcbiAgICAgICAgW2l0ZW1zXT1cImVudW1IZWxwZXJJdGVtc1wiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIChjaGFuZ2UpPVwib25TZWxlY3RlZEl0ZW1DaGFuZ2VkKClcIlxyXG4gICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWRJdGVtXCIgW2Rpc2FibGVkXT1cImRpc2FibGVcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgY2xhc3M9XCJ0ZW1wbGF0ZVwiIG5nLW9wdGlvbi10bXAgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1pbmRleD1cImluZGV4XCJcclxuICAgICAgICAgICAgbGV0LXNlYXJjaD1cInNlYXJjaFRlcm1cIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlzQ2hpcFwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNoaXAgY2xhc3M9XCJjaGlwXCIgW2JhY2tncm91bmRDb2xvcl09XCJpdGVtLmNvbG9yXCIgW2xhYmVsXT1cIml0ZW0ubGFiZWxcIiBbd2lkdGhdPVwiMTEwXCI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNoaXA+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IFtuZ1N0eWxlXT1cInNldExhYmVsU3R5bGUoKVwiICpuZ0lmPVwiIWlzQ2hpcFwiPnt7aXRlbS5sYWJlbH19PC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvbmctc2VsZWN0PlxyXG48L2Rpdj4iXX0=
@@ -0,0 +1,27 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../choose-enum/choose-enum.component";
4
+ export class ChooseEnumRendererComponent {
5
+ constructor() { }
6
+ agInit(params) {
7
+ this.params = params;
8
+ this.enumValue = params.value; //empty in create mode
9
+ this.key = params.context.createKey(params.columnApi, params.column);
10
+ this.rowId = params.node.id; //at which index
11
+ }
12
+ onCellDataChanged($event) {
13
+ let value = $event;
14
+ this.formControlValue = this.params.context.formGroup.get("entries").at(this.rowId); //get the changed row
15
+ this.formControlValue.get(this.key).setValue(value);
16
+ }
17
+ refresh(params) {
18
+ return false;
19
+ }
20
+ }
21
+ ChooseEnumRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseEnumRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ ChooseEnumRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: ChooseEnumRendererComponent, selector: "choose-enum-renderer", ngImport: i0, template: "<choose-enum [enumHelperItems]=\"params.enumChoices\"\r\n[placeholder]=\"params.placeholder\" [width]=\"params.width\" [isChip]=\"params.isChip\" [paddingTop]=\"params.paddingTop\" (change)=\"onCellDataChanged($event)\"></choose-enum>\r\n", styles: [""], components: [{ type: i1.ChooseEnumComponent, selector: "choose-enum", inputs: ["label", "enumHelperItems", "isChip", "placeholder", "width", "paddingTop", "labelTextAlign", "labelTextFontWeight", "labelTextFontSize", "selectedItem", "indexesToDisable", "disable"], outputs: ["change"] }] });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseEnumRendererComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'choose-enum-renderer', template: "<choose-enum [enumHelperItems]=\"params.enumChoices\"\r\n[placeholder]=\"params.placeholder\" [width]=\"params.width\" [isChip]=\"params.isChip\" [paddingTop]=\"params.paddingTop\" (change)=\"onCellDataChanged($event)\"></choose-enum>\r\n", styles: [""] }]
26
+ }], ctorParameters: function () { return []; } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvb3NlLWVudW0tcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9saWIvaW5wdXRzL2Nob29zZS1lbnVtLXJlbmRlcmVyL2Nob29zZS1lbnVtLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy9jaG9vc2UtZW51bS1yZW5kZXJlci9jaG9vc2UtZW51bS1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRMUMsTUFBTSxPQUFPLDJCQUEyQjtJQU90QyxnQkFBZ0IsQ0FBQztJQUVqQixNQUFNLENBQUMsTUFBVztRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxzQkFBc0I7UUFDckQsSUFBSSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsZ0JBQWdCO0lBQy9DLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUFNO1FBQ3RCLElBQUksS0FBSyxHQUFRLE1BQU0sQ0FBQztRQUN4QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUEscUJBQXFCO1FBQ3pHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsT0FBTyxDQUFDLE1BQVc7UUFDakIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzt3SEF4QlUsMkJBQTJCOzRHQUEzQiwyQkFBMkIsNERDUnhDLGdQQUVBOzJGRE1hLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY2hvb3NlLWVudW0tcmVuZGVyZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jaG9vc2UtZW51bS1yZW5kZXJlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2hvb3NlLWVudW0tcmVuZGVyZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvb3NlRW51bVJlbmRlcmVyQ29tcG9uZW50IGltcGxlbWVudHMgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIHtcclxuICBwYXJhbXM6IGFueTtcclxuICBmb3JtQ29udHJvbFZhbHVlO1xyXG4gIGtleTtcclxuICBlbnVtVmFsdWU6IG51bWJlcjtcclxuICByb3dJZDogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBhZ0luaXQocGFyYW1zOiBhbnkpIHtcclxuICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xyXG4gICAgdGhpcy5lbnVtVmFsdWUgPSBwYXJhbXMudmFsdWU7IC8vZW1wdHkgaW4gY3JlYXRlIG1vZGVcclxuICAgIHRoaXMua2V5ID0gcGFyYW1zLmNvbnRleHQuY3JlYXRlS2V5KHBhcmFtcy5jb2x1bW5BcGksIHBhcmFtcy5jb2x1bW4pO1xyXG4gICAgdGhpcy5yb3dJZCA9IHBhcmFtcy5ub2RlLmlkOyAvL2F0IHdoaWNoIGluZGV4XHJcbiAgfVxyXG5cclxuICBvbkNlbGxEYXRhQ2hhbmdlZCgkZXZlbnQpIHtcclxuICAgIGxldCB2YWx1ZTogYW55ID0gJGV2ZW50O1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbHVlID0gdGhpcy5wYXJhbXMuY29udGV4dC5mb3JtR3JvdXAuZ2V0KFwiZW50cmllc1wiKS5hdCh0aGlzLnJvd0lkKTsvL2dldCB0aGUgY2hhbmdlZCByb3dcclxuICAgIHRoaXMuZm9ybUNvbnRyb2xWYWx1ZS5nZXQodGhpcy5rZXkpLnNldFZhbHVlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIHJlZnJlc2gocGFyYW1zOiBhbnkpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIiwiPGNob29zZS1lbnVtIFtlbnVtSGVscGVySXRlbXNdPVwicGFyYW1zLmVudW1DaG9pY2VzXCJcclxuW3BsYWNlaG9sZGVyXT1cInBhcmFtcy5wbGFjZWhvbGRlclwiIFt3aWR0aF09XCJwYXJhbXMud2lkdGhcIiBbaXNDaGlwXT1cInBhcmFtcy5pc0NoaXBcIiBbcGFkZGluZ1RvcF09XCJwYXJhbXMucGFkZGluZ1RvcFwiIChjaGFuZ2UpPVwib25DZWxsRGF0YUNoYW5nZWQoJGV2ZW50KVwiPjwvY2hvb3NlLWVudW0+XHJcbiJdfQ==
@@ -0,0 +1,122 @@
1
+ import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./choose-general-item.service";
5
+ import * as i2 from "@ng-select/ng-select";
6
+ import * as i3 from "@jooler/shared-general-components";
7
+ import * as i4 from "@angular/common";
8
+ import * as i5 from "@angular/forms";
9
+ export class ChooseGeneralItemComponent {
10
+ constructor(_ChooseGeneralItemService) {
11
+ this._ChooseGeneralItemService = _ChooseGeneralItemService;
12
+ this.change = new EventEmitter();
13
+ this.width = 200;
14
+ this.isChip = false;
15
+ this.chipColor = 'black';
16
+ this.chipTextColor = 'white';
17
+ this.chipWidth = 110;
18
+ this.propagateChange = (_) => { };
19
+ this.propogateTouch = () => { };
20
+ }
21
+ ngOnInit() {
22
+ this.getData();
23
+ }
24
+ writeValue(item) {
25
+ if (item != undefined || item != null) {
26
+ this.selectedItemId = item;
27
+ }
28
+ }
29
+ registerOnChange(fn) {
30
+ this.propagateChange = fn;
31
+ }
32
+ registerOnTouched(fn) {
33
+ this.propogateTouch = fn;
34
+ }
35
+ updateBlur() {
36
+ this.propogateTouch();
37
+ }
38
+ onSelectedItemChanged() {
39
+ this.propagateChange(this.selectedItemId);
40
+ this.change.emit(this.selectedItemId);
41
+ }
42
+ getData() {
43
+ if (this.apiPath) {
44
+ this._ChooseGeneralItemService.getData(this.apiPath).subscribe({
45
+ next: (response) => {
46
+ this.items = response;
47
+ },
48
+ error: (error) => console.error("error", error)
49
+ });
50
+ }
51
+ }
52
+ setWidth() {
53
+ let style = {
54
+ width: this.width + "px"
55
+ };
56
+ return style;
57
+ }
58
+ setFontStyles() {
59
+ let fontStyle = {
60
+ fontWeight: this.fontWeight,
61
+ fontSize: this.fontSize + "px",
62
+ };
63
+ return fontStyle;
64
+ }
65
+ }
66
+ ChooseGeneralItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseGeneralItemComponent, deps: [{ token: i1.ChooseGeneralItemService }], target: i0.ɵɵFactoryTarget.Component });
67
+ ChooseGeneralItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: ChooseGeneralItemComponent, selector: "choose-general-item", inputs: { items: "items", label: "label", placeholder: "placeholder", apiPath: "apiPath", isMultiple: "isMultiple", objects: "objects", showLabel: "showLabel", separator: "separator", width: "width", fontWeight: "fontWeight", fontSize: "fontSize", isChip: "isChip", isTypeDate: "isTypeDate", chipColor: "chipColor", chipTextColor: "chipTextColor", chipWidth: "chipWidth", selectedItemId: "selectedItemId", disabled: "disabled" }, outputs: { change: "change" }, providers: [
68
+ {
69
+ provide: NG_VALUE_ACCESSOR,
70
+ useExisting: forwardRef(() => ChooseGeneralItemComponent),
71
+ multi: true,
72
+ },
73
+ ], ngImport: i0, template: "<div class=\"select\">\r\n <ng-select [closeOnSelect]=\"!isMultiple\" [ngStyle]=\"setWidth()\" class=\"component\" [disabled]=\"disabled\"\r\n appendTo=\"body\" (blur)=\"updateBlur()\" [bindLabel]=\"label\" bindValue=\"id\" [items]=\"items\"\r\n [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItemId\"\r\n [multiple]=\"isMultiple\">\r\n <ng-template *ngIf=\"!isChip\" class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <span [ngStyle]=\"setFontStyles()\" *ngFor=\"let object of objects let isLast = last\">\r\n <span *ngIf=\"showLabel && !isTypeDate\">\r\n {{object.label}}: {{item[object.field]}} {{isLast ? \"\" : separator}}\r\n </span>\r\n <span *ngIf=\"showLabel && isTypeDate\">\r\n {{object.label}}: {{item[object.field]| date: 'mediumDate'}} {{isLast ? \"\" : separator}}\r\n </span>\r\n <span *ngIf=\"!showLabel && isTypeDate\">\r\n {{item[object.field]| date: 'mediumDate'}} {{isLast ? \"\" : separator}}\r\n </span>\r\n <span *ngIf=\"!showLabel && !isTypeDate\">{{item[object.field]}}{{isLast ? \"\" : separator}}\r\n </span>\r\n </span>\r\n </ng-template>\r\n <ng-template *ngIf=\"isChip\" ng-label-tmp let-item=\"item\" let-clear=\"clear\">\r\n <ng-chip (mousedown)=\"$event.stopPropagation()\" [clear]=\"clear\" [withCross]=\"isMultiple\" [item]=\"item\"\r\n class=\"chip\" [backgroundColor]=\"chipColor\" [textColor]=\"chipTextColor\" [label]=\"item[objects[0].field]\"\r\n [width]=\"chipWidth\">\r\n </ng-chip>\r\n </ng-template>\r\n <ng-template *ngIf=\"isChip\" ng-option-tmp let-clear=\"clear\" let-item=\"item\">\r\n <ng-chip (mousedown)=\"$event.stopPropagation()\" [clear]=\"clear\" [withCross]=\"false\" [item]=\"item\"\r\n class=\"chip\" [backgroundColor]=\"chipColor\" [textColor]=\"chipTextColor\" [label]=\"item[objects[0].field]\"\r\n [width]=\"chipWidth\">\r\n </ng-chip>\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [".component{width:150px}.select{height:100px;align-self:flex-end;padding-top:9px}\n"], components: [{ type: i2.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i3.NgChipComponent, selector: "ng-chip", inputs: ["value", "label", "backgroundColor", "textColor", "width", "item", "clear", "withCross"] }], directives: [{ type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { type: i2.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "date": i4.DatePipe } });
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseGeneralItemComponent, decorators: [{
75
+ type: Component,
76
+ args: [{ selector: 'choose-general-item', providers: [
77
+ {
78
+ provide: NG_VALUE_ACCESSOR,
79
+ useExisting: forwardRef(() => ChooseGeneralItemComponent),
80
+ multi: true,
81
+ },
82
+ ], template: "<div class=\"select\">\r\n <ng-select [closeOnSelect]=\"!isMultiple\" [ngStyle]=\"setWidth()\" class=\"component\" [disabled]=\"disabled\"\r\n appendTo=\"body\" (blur)=\"updateBlur()\" [bindLabel]=\"label\" bindValue=\"id\" [items]=\"items\"\r\n [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItemId\"\r\n [multiple]=\"isMultiple\">\r\n <ng-template *ngIf=\"!isChip\" class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <span [ngStyle]=\"setFontStyles()\" *ngFor=\"let object of objects let isLast = last\">\r\n <span *ngIf=\"showLabel && !isTypeDate\">\r\n {{object.label}}: {{item[object.field]}} {{isLast ? \"\" : separator}}\r\n </span>\r\n <span *ngIf=\"showLabel && isTypeDate\">\r\n {{object.label}}: {{item[object.field]| date: 'mediumDate'}} {{isLast ? \"\" : separator}}\r\n </span>\r\n <span *ngIf=\"!showLabel && isTypeDate\">\r\n {{item[object.field]| date: 'mediumDate'}} {{isLast ? \"\" : separator}}\r\n </span>\r\n <span *ngIf=\"!showLabel && !isTypeDate\">{{item[object.field]}}{{isLast ? \"\" : separator}}\r\n </span>\r\n </span>\r\n </ng-template>\r\n <ng-template *ngIf=\"isChip\" ng-label-tmp let-item=\"item\" let-clear=\"clear\">\r\n <ng-chip (mousedown)=\"$event.stopPropagation()\" [clear]=\"clear\" [withCross]=\"isMultiple\" [item]=\"item\"\r\n class=\"chip\" [backgroundColor]=\"chipColor\" [textColor]=\"chipTextColor\" [label]=\"item[objects[0].field]\"\r\n [width]=\"chipWidth\">\r\n </ng-chip>\r\n </ng-template>\r\n <ng-template *ngIf=\"isChip\" ng-option-tmp let-clear=\"clear\" let-item=\"item\">\r\n <ng-chip (mousedown)=\"$event.stopPropagation()\" [clear]=\"clear\" [withCross]=\"false\" [item]=\"item\"\r\n class=\"chip\" [backgroundColor]=\"chipColor\" [textColor]=\"chipTextColor\" [label]=\"item[objects[0].field]\"\r\n [width]=\"chipWidth\">\r\n </ng-chip>\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [".component{width:150px}.select{height:100px;align-self:flex-end;padding-top:9px}\n"] }]
83
+ }], ctorParameters: function () { return [{ type: i1.ChooseGeneralItemService }]; }, propDecorators: { change: [{
84
+ type: Output
85
+ }], items: [{
86
+ type: Input
87
+ }], label: [{
88
+ type: Input
89
+ }], placeholder: [{
90
+ type: Input
91
+ }], apiPath: [{
92
+ type: Input
93
+ }], isMultiple: [{
94
+ type: Input
95
+ }], objects: [{
96
+ type: Input
97
+ }], showLabel: [{
98
+ type: Input
99
+ }], separator: [{
100
+ type: Input
101
+ }], width: [{
102
+ type: Input
103
+ }], fontWeight: [{
104
+ type: Input
105
+ }], fontSize: [{
106
+ type: Input
107
+ }], isChip: [{
108
+ type: Input
109
+ }], isTypeDate: [{
110
+ type: Input
111
+ }], chipColor: [{
112
+ type: Input
113
+ }], chipTextColor: [{
114
+ type: Input
115
+ }], chipWidth: [{
116
+ type: Input
117
+ }], selectedItemId: [{
118
+ type: Input
119
+ }], disabled: [{
120
+ type: Input
121
+ }] } });
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvb3NlLWdlbmVyYWwtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2xpYi9pbnB1dHMvY2hvb3NlLWdlbmVyYWwtaXRlbS9jaG9vc2UtZ2VuZXJhbC1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy9jaG9vc2UtZ2VuZXJhbC1pdGVtL2Nob29zZS1nZW5lcmFsLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBZ0J6RSxNQUFNLE9BQU8sMEJBQTBCO0lBcUJyQyxZQUFvQix5QkFBbUQ7UUFBbkQsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEwQjtRQXBCN0QsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFTN0IsVUFBSyxHQUFXLEdBQUcsQ0FBQztRQUdwQixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLGNBQVMsR0FBVyxPQUFPLENBQUM7UUFDNUIsa0JBQWEsR0FBVyxPQUFPLENBQUM7UUFDaEMsY0FBUyxHQUFXLEdBQUcsQ0FBQztRQXdCekIsb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBckJ3QyxDQUFDO0lBRTVFLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTO1FBQ2xCLElBQUksSUFBSSxJQUFJLFNBQVMsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQU87UUFDN0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEVBQU87UUFDOUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUtELFVBQVU7UUFDUixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUM3RCxJQUFJLEVBQUUsQ0FBQyxRQUFlLEVBQUUsRUFBRTtvQkFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7Z0JBQ3hCLENBQUM7Z0JBQ0QsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7YUFDaEQsQ0FBQyxDQUFBO1NBQ0g7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksS0FBSyxHQUFHO1lBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSTtTQUN6QixDQUFBO1FBQ0QsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksU0FBUyxHQUFHO1lBQ2QsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUk7U0FDL0IsQ0FBQTtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7O3VIQTdFVSwwQkFBMEI7MkdBQTFCLDBCQUEwQiwyZkFSMUI7UUFDVDtZQUNFLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztZQUN6RCxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsMEJDZkgscXlFQWtDTTsyRkRqQk8sMEJBQTBCO2tCQVp0QyxTQUFTOytCQUNFLHFCQUFxQixhQUdwQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwyQkFBMkIsQ0FBQzs0QkFDekQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7K0dBR1MsTUFBTTtzQkFBZixNQUFNO2dCQUNFLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IExhYmVsQW5kRmllbGQgfSBmcm9tICcuLi9tb2RlbHMvbGFiZWwtYW5kLWZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgQ2hvb3NlR2VuZXJhbEl0ZW1TZXJ2aWNlIH0gZnJvbSAnLi9jaG9vc2UtZ2VuZXJhbC1pdGVtLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjaG9vc2UtZ2VuZXJhbC1pdGVtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2hvb3NlLWdlbmVyYWwtaXRlbS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2hvb3NlLWdlbmVyYWwtaXRlbS5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2hvb3NlR2VuZXJhbEl0ZW1Db21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENob29zZUdlbmVyYWxJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBASW5wdXQoKSBpdGVtczogYW55W107XHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGFwaVBhdGg6IHN0cmluZztcclxuICBASW5wdXQoKSBpc011bHRpcGxlOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIG9iamVjdHM6IExhYmVsQW5kRmllbGRbXTtcclxuICBASW5wdXQoKSBzaG93TGFiZWw6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VwYXJhdG9yOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgd2lkdGg6IG51bWJlciA9IDIwMDtcclxuICBASW5wdXQoKSBmb250V2VpZ2h0OiBudW1iZXI7XHJcbiAgQElucHV0KCkgZm9udFNpemU6IG51bWJlcjtcclxuICBASW5wdXQoKSBpc0NoaXA6IEJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc1R5cGVEYXRlOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGNoaXBDb2xvcjogc3RyaW5nID0gJ2JsYWNrJztcclxuICBASW5wdXQoKSBjaGlwVGV4dENvbG9yOiBzdHJpbmcgPSAnd2hpdGUnO1xyXG4gIEBJbnB1dCgpIGNoaXBXaWR0aDogbnVtYmVyID0gMTEwO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkSXRlbUlkOiBudW1iZXIgfCBudW1iZXJbXTtcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfQ2hvb3NlR2VuZXJhbEl0ZW1TZXJ2aWNlOiBDaG9vc2VHZW5lcmFsSXRlbVNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZShpdGVtOiBhbnkpIHtcclxuICAgIGlmIChpdGVtICE9IHVuZGVmaW5lZCB8fCBpdGVtICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1JZCA9IGl0ZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcclxuICAgIHRoaXMucHJvcG9nYXRlVG91Y2ggPSBmbjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xyXG4gIHByaXZhdGUgcHJvcG9nYXRlVG91Y2ggPSAoKSA9PiB7IH07XHJcblxyXG4gIHVwZGF0ZUJsdXIoKSB7XHJcbiAgICB0aGlzLnByb3BvZ2F0ZVRvdWNoKCk7XHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkSXRlbUNoYW5nZWQoKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnNlbGVjdGVkSXRlbUlkKTtcclxuICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZEl0ZW1JZCk7XHJcbiAgfVxyXG5cclxuICBnZXREYXRhKCkge1xyXG4gICAgaWYgKHRoaXMuYXBpUGF0aCkge1xyXG4gICAgICB0aGlzLl9DaG9vc2VHZW5lcmFsSXRlbVNlcnZpY2UuZ2V0RGF0YSh0aGlzLmFwaVBhdGgpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlc3BvbnNlOiBhbnlbXSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5pdGVtcyA9IHJlc3BvbnNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnJvcikgPT4gY29uc29sZS5lcnJvcihcImVycm9yXCIsIGVycm9yKVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0V2lkdGgoKSB7XHJcbiAgICBsZXQgc3R5bGUgPSB7XHJcbiAgICAgIHdpZHRoOiB0aGlzLndpZHRoICsgXCJweFwiXHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3R5bGVcclxuICB9XHJcblxyXG4gIHNldEZvbnRTdHlsZXMoKSB7XHJcbiAgICBsZXQgZm9udFN0eWxlID0ge1xyXG4gICAgICBmb250V2VpZ2h0OiB0aGlzLmZvbnRXZWlnaHQsXHJcbiAgICAgIGZvbnRTaXplOiB0aGlzLmZvbnRTaXplICsgXCJweFwiLFxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZvbnRTdHlsZTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNlbGVjdFwiPlxyXG4gICAgPG5nLXNlbGVjdCBbY2xvc2VPblNlbGVjdF09XCIhaXNNdWx0aXBsZVwiIFtuZ1N0eWxlXT1cInNldFdpZHRoKClcIiBjbGFzcz1cImNvbXBvbmVudFwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgYXBwZW5kVG89XCJib2R5XCIgKGJsdXIpPVwidXBkYXRlQmx1cigpXCIgW2JpbmRMYWJlbF09XCJsYWJlbFwiIGJpbmRWYWx1ZT1cImlkXCIgW2l0ZW1zXT1cIml0ZW1zXCJcclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiAoY2hhbmdlKT1cIm9uU2VsZWN0ZWRJdGVtQ2hhbmdlZCgpXCIgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEl0ZW1JZFwiXHJcbiAgICAgICAgW211bHRpcGxlXT1cImlzTXVsdGlwbGVcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCIhaXNDaGlwXCIgY2xhc3M9XCJ0ZW1wbGF0ZVwiIG5nLW9wdGlvbi10bXAgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1pbmRleD1cImluZGV4XCJcclxuICAgICAgICAgICAgbGV0LXNlYXJjaD1cInNlYXJjaFRlcm1cIj5cclxuICAgICAgICAgICAgPHNwYW4gW25nU3R5bGVdPVwic2V0Rm9udFN0eWxlcygpXCIgKm5nRm9yPVwibGV0IG9iamVjdCBvZiBvYmplY3RzIGxldCBpc0xhc3QgPSBsYXN0XCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNob3dMYWJlbCAmJiAhaXNUeXBlRGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7b2JqZWN0LmxhYmVsfX06IHt7aXRlbVtvYmplY3QuZmllbGRdfX0ge3tpc0xhc3QgPyBcIlwiIDogc2VwYXJhdG9yfX1cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic2hvd0xhYmVsICYmIGlzVHlwZURhdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICB7e29iamVjdC5sYWJlbH19OiB7e2l0ZW1bb2JqZWN0LmZpZWxkXXwgZGF0ZTogJ21lZGl1bURhdGUnfX0ge3tpc0xhc3QgPyBcIlwiIDogc2VwYXJhdG9yfX1cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIXNob3dMYWJlbCAmJiBpc1R5cGVEYXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3tpdGVtW29iamVjdC5maWVsZF18IGRhdGU6ICdtZWRpdW1EYXRlJ319IHt7aXNMYXN0ID8gXCJcIiA6IHNlcGFyYXRvcn19XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFzaG93TGFiZWwgJiYgIWlzVHlwZURhdGVcIj57e2l0ZW1bb2JqZWN0LmZpZWxkXX19e3tpc0xhc3QgPyBcIlwiIDogc2VwYXJhdG9yfX1cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiaXNDaGlwXCIgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1jbGVhcj1cImNsZWFyXCI+XHJcbiAgICAgICAgICAgIDxuZy1jaGlwIChtb3VzZWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCIgW2NsZWFyXT1cImNsZWFyXCIgW3dpdGhDcm9zc109XCJpc011bHRpcGxlXCIgW2l0ZW1dPVwiaXRlbVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNoaXBcIiBbYmFja2dyb3VuZENvbG9yXT1cImNoaXBDb2xvclwiIFt0ZXh0Q29sb3JdPVwiY2hpcFRleHRDb2xvclwiIFtsYWJlbF09XCJpdGVtW29iamVjdHNbMF0uZmllbGRdXCJcclxuICAgICAgICAgICAgICAgIFt3aWR0aF09XCJjaGlwV2lkdGhcIj5cclxuICAgICAgICAgICAgPC9uZy1jaGlwPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiaXNDaGlwXCIgbmctb3B0aW9uLXRtcCBsZXQtY2xlYXI9XCJjbGVhclwiIGxldC1pdGVtPVwiaXRlbVwiPlxyXG4gICAgICAgICAgICA8bmctY2hpcCAobW91c2Vkb3duKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiIFtjbGVhcl09XCJjbGVhclwiIFt3aXRoQ3Jvc3NdPVwiZmFsc2VcIiBbaXRlbV09XCJpdGVtXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hpcFwiIFtiYWNrZ3JvdW5kQ29sb3JdPVwiY2hpcENvbG9yXCIgW3RleHRDb2xvcl09XCJjaGlwVGV4dENvbG9yXCIgW2xhYmVsXT1cIml0ZW1bb2JqZWN0c1swXS5maWVsZF1cIlxyXG4gICAgICAgICAgICAgICAgW3dpZHRoXT1cImNoaXBXaWR0aFwiPlxyXG4gICAgICAgICAgICA8L25nLWNoaXA+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvbmctc2VsZWN0PlxyXG48L2Rpdj4iXX0=
@@ -0,0 +1,34 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { HttpHeaders } from '@angular/common/http';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class ChooseGeneralItemService {
6
+ constructor(http) {
7
+ this.http = http;
8
+ this.baseUrl = 'http://127.0.0.1:8000/';
9
+ }
10
+ getHeaders() {
11
+ const httpHeaders = new HttpHeaders({
12
+ 'Content-Type': "application/json"
13
+ });
14
+ return { headers: httpHeaders };
15
+ }
16
+ getAuthenticationHeadersWithQueryParams(params) {
17
+ const httpHeaders = new HttpHeaders({
18
+ 'Content-Type': 'application/json; charset-utf-8',
19
+ });
20
+ return { headers: httpHeaders, params: params };
21
+ }
22
+ getData(apiPath) {
23
+ return this.http.get(this.baseUrl + apiPath, this.getHeaders());
24
+ }
25
+ }
26
+ ChooseGeneralItemService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseGeneralItemService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
27
+ ChooseGeneralItemService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseGeneralItemService, providedIn: 'root' });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseGeneralItemService, decorators: [{
29
+ type: Injectable,
30
+ args: [{
31
+ providedIn: 'root'
32
+ }]
33
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvb3NlLWdlbmVyYWwtaXRlbS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9saWIvaW5wdXRzL2Nob29zZS1nZW5lcmFsLWl0ZW0vY2hvb3NlLWdlbmVyYWwtaXRlbS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFNL0QsTUFBTSxPQUFPLHdCQUF3QjtJQW1CbkMsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQWxCcEMsWUFBTyxHQUFXLHdCQUF3QixDQUFDO0lBa0JILENBQUM7SUFoQnpDLFVBQVU7UUFDUixNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FDakM7WUFDRSxjQUFjLEVBQUUsa0JBQWtCO1NBQ25DLENBQUMsQ0FBQztRQUNMLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELHVDQUF1QyxDQUFDLE1BQU07UUFDNUMsTUFBTSxXQUFXLEdBQUcsSUFBSSxXQUFXLENBQ2pDO1lBQ0UsY0FBYyxFQUFFLGlDQUFpQztTQUNsRCxDQUNGLENBQUM7UUFDRixPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDbEQsQ0FBQztJQUlELE9BQU8sQ0FBQyxPQUFlO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7SUFDakUsQ0FBQzs7cUhBeEJVLHdCQUF3Qjt5SEFBeEIsd0JBQXdCLGNBRnZCLE1BQU07MkZBRVAsd0JBQXdCO2tCQUhwQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDaG9vc2VHZW5lcmFsSXRlbVNlcnZpY2Uge1xuICBiYXNlVXJsOiBzdHJpbmcgPSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwLyc7XG5cbiAgZ2V0SGVhZGVycygpIHtcbiAgICBjb25zdCBodHRwSGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyhcbiAgICAgIHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6IFwiYXBwbGljYXRpb24vanNvblwiXG4gICAgICB9KTtcbiAgICByZXR1cm4geyBoZWFkZXJzOiBodHRwSGVhZGVycyB9O1xuICB9XG5cbiAgZ2V0QXV0aGVudGljYXRpb25IZWFkZXJzV2l0aFF1ZXJ5UGFyYW1zKHBhcmFtcykge1xuICAgIGNvbnN0IGh0dHBIZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKFxuICAgICAge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQtdXRmLTgnLFxuICAgICAgfVxuICAgICk7XG4gICAgcmV0dXJuIHsgaGVhZGVyczogaHR0cEhlYWRlcnMsIHBhcmFtczogcGFyYW1zIH07XG4gIH1cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7IH1cblxuXG4gIGdldERhdGEoYXBpUGF0aDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLmJhc2VVcmwgKyBhcGlQYXRoLCB0aGlzLmdldEhlYWRlcnMoKSlcbiAgfVxufVxuIl19
@@ -0,0 +1,52 @@
1
+ import { Component, forwardRef } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { LineTypeModelHelper } from '../models/line-type-model-helper';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@ng-select/ng-select";
6
+ import * as i2 from "@angular/forms";
7
+ export class ChooseLineTypeComponent {
8
+ constructor() {
9
+ this.items = LineTypeModelHelper;
10
+ this.propagateChange = (_) => { };
11
+ this.propogateTouch = () => { };
12
+ }
13
+ ngOnInit() {
14
+ this.types = this.items.getItems();
15
+ }
16
+ writeValue(type) {
17
+ if (type != undefined || type != null) {
18
+ this.selectedItem = type;
19
+ }
20
+ }
21
+ registerOnChange(fn) {
22
+ this.propagateChange = fn;
23
+ }
24
+ registerOnTouched(fn) {
25
+ this.propogateTouch = fn;
26
+ }
27
+ updateBlur() {
28
+ this.propogateTouch();
29
+ }
30
+ onSelectedItemChanged() {
31
+ this.propagateChange(this.selectedItem);
32
+ }
33
+ }
34
+ ChooseLineTypeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseLineTypeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
35
+ ChooseLineTypeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: ChooseLineTypeComponent, selector: "choose-line-type", providers: [
36
+ {
37
+ provide: NG_VALUE_ACCESSOR,
38
+ useExisting: forwardRef(() => ChooseLineTypeComponent),
39
+ multi: true,
40
+ },
41
+ ], ngImport: i0, template: "<div class=\"select\">\r\n <ng-select class=\"type\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"label\" [items]=\"types\"\r\n [placeholder]=\"'Choose A Component'\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItem\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\">\r\n {{item.label}}\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [".type{width:250px}\n"], components: [{ type: i1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], directives: [{ type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { type: i1.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }] });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseLineTypeComponent, decorators: [{
43
+ type: Component,
44
+ args: [{ selector: 'choose-line-type', providers: [
45
+ {
46
+ provide: NG_VALUE_ACCESSOR,
47
+ useExisting: forwardRef(() => ChooseLineTypeComponent),
48
+ multi: true,
49
+ },
50
+ ], template: "<div class=\"select\">\r\n <ng-select class=\"type\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"label\" [items]=\"types\"\r\n [placeholder]=\"'Choose A Component'\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItem\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\">\r\n {{item.label}}\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [".type{width:250px}\n"] }]
51
+ }], ctorParameters: function () { return []; } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvb3NlLWxpbmUtdHlwZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2xpYi9pbnB1dHMvY2hvb3NlLWxpbmUtdHlwZS9jaG9vc2UtbGluZS10eXBlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy9jaG9vc2UtbGluZS10eXBlL2Nob29zZS1saW5lLXR5cGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7QUFjdkUsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQztRQUpBLFVBQUssR0FBRyxtQkFBbUIsQ0FBQztRQXdCcEIsb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBckJuQixDQUFDO0lBRWpCLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTO1FBQ2xCLElBQUksSUFBSSxJQUFJLFNBQVMsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQU87UUFDN0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEVBQU87UUFDOUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUtELFVBQVU7UUFDUixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMxQyxDQUFDOztvSEFsQ1UsdUJBQXVCO3dHQUF2Qix1QkFBdUIsMkNBUnZCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7WUFDdEQsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLDBCQ2RILHFkQU9NOzJGRFNPLHVCQUF1QjtrQkFabkMsU0FBUzsrQkFDRSxrQkFBa0IsYUFHakI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLENBQUM7NEJBQ3RELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IExpbmVUeXBlTW9kZWxIZWxwZXIgfSBmcm9tICcuLi9tb2RlbHMvbGluZS10eXBlLW1vZGVsLWhlbHBlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Nob29zZS1saW5lLXR5cGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jaG9vc2UtbGluZS10eXBlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jaG9vc2UtbGluZS10eXBlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaG9vc2VMaW5lVHlwZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvb3NlTGluZVR5cGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGl0ZW1zID0gTGluZVR5cGVNb2RlbEhlbHBlcjtcclxuICBzZWxlY3RlZEl0ZW06IGFueTtcclxuICB0eXBlczogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudHlwZXMgPSB0aGlzLml0ZW1zLmdldEl0ZW1zKCk7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHR5cGU6IGFueSkge1xyXG4gICAgaWYgKHR5cGUgIT0gdW5kZWZpbmVkIHx8IHR5cGUgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IHR5cGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcclxuICAgIHRoaXMucHJvcG9nYXRlVG91Y2ggPSBmbjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xyXG4gIHByaXZhdGUgcHJvcG9nYXRlVG91Y2ggPSAoKSA9PiB7IH07XHJcblxyXG4gIHVwZGF0ZUJsdXIoKSB7XHJcbiAgICB0aGlzLnByb3BvZ2F0ZVRvdWNoKCk7XHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkSXRlbUNoYW5nZWQoKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnNlbGVjdGVkSXRlbSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzZWxlY3RcIj5cclxuICAgIDxuZy1zZWxlY3QgY2xhc3M9XCJ0eXBlXCIgYXBwZW5kVG89XCJib2R5XCIgKGJsdXIpPVwidXBkYXRlQmx1cigpXCIgYmluZExhYmVsPVwibGFiZWxcIiBiaW5kVmFsdWU9XCJsYWJlbFwiIFtpdGVtc109XCJ0eXBlc1wiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDaG9vc2UgQSBDb21wb25lbnQnXCIgKGNoYW5nZSk9XCJvblNlbGVjdGVkSXRlbUNoYW5nZWQoKVwiIFsobmdNb2RlbCldPVwic2VsZWN0ZWRJdGVtXCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIGNsYXNzPVwidGVtcGxhdGVcIiBuZy1vcHRpb24tdG1wIG5nLWxhYmVsLXRtcCBsZXQtaXRlbT1cIml0ZW1cIiBsZXQtaW5kZXg9XCJpbmRleFwiPlxyXG4gICAgICAgICAgICB7e2l0ZW0ubGFiZWx9fVxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L25nLXNlbGVjdD5cclxuPC9kaXY+Il19
@@ -0,0 +1,56 @@
1
+ import { Component, Output, EventEmitter, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@ng-select/ng-select";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "@angular/forms";
6
+ export class ChooseYesOrNoComponent {
7
+ constructor() {
8
+ this.change = new EventEmitter();
9
+ this.items = [{ value: true, label: "Yes", color: "green" }, { value: false, label: "No", color: "red" }];
10
+ this.width = 200;
11
+ this.placeholder = "Choose either Yes or No";
12
+ this.propagateChange = (_) => { };
13
+ this.propogateTouch = () => { };
14
+ }
15
+ ngOnInit() {
16
+ }
17
+ writeValue(item) {
18
+ if (item != undefined || item != null) {
19
+ this.selectedItemValue = item;
20
+ }
21
+ }
22
+ registerOnChange(fn) {
23
+ this.propagateChange = fn;
24
+ }
25
+ registerOnTouched(fn) {
26
+ this.propogateTouch = fn;
27
+ }
28
+ updateBlur() {
29
+ this.propogateTouch();
30
+ }
31
+ onSelectedItemChanged() {
32
+ this.propagateChange(this.selectedItemValue);
33
+ this.change.emit(this.selectedItemValue);
34
+ }
35
+ setWidth() {
36
+ let style = {
37
+ width: this.width + "px"
38
+ };
39
+ return style;
40
+ }
41
+ }
42
+ ChooseYesOrNoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseYesOrNoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
43
+ ChooseYesOrNoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: ChooseYesOrNoComponent, selector: "choose-yes-or-no", inputs: { width: "width", selectedItemValue: "selectedItemValue", placeholder: "placeholder" }, outputs: { change: "change" }, ngImport: i0, template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setWidth()\" class=\"component\" appendTo=\"body\" (blur)=\"updateBlur()\" [placeholder]=\"placeholder\" bindLabel=\"label\"\r\n bindValue=\"value\" [items]=\"items\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\"\r\n [(ngModel)]=\"selectedItemValue\" >\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <span [style.color]=\"item.color\">\r\n {{item.label}}\r\n </span>\r\n </ng-template>\r\n </ng-select>\r\n</div>\r\n", styles: [""], components: [{ type: i1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], directives: [{ type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { type: i1.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }] });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseYesOrNoComponent, decorators: [{
45
+ type: Component,
46
+ args: [{ selector: 'choose-yes-or-no', template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setWidth()\" class=\"component\" appendTo=\"body\" (blur)=\"updateBlur()\" [placeholder]=\"placeholder\" bindLabel=\"label\"\r\n bindValue=\"value\" [items]=\"items\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\"\r\n [(ngModel)]=\"selectedItemValue\" >\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <span [style.color]=\"item.color\">\r\n {{item.label}}\r\n </span>\r\n </ng-template>\r\n </ng-select>\r\n</div>\r\n", styles: [""] }]
47
+ }], ctorParameters: function () { return []; }, propDecorators: { change: [{
48
+ type: Output
49
+ }], width: [{
50
+ type: Input
51
+ }], selectedItemValue: [{
52
+ type: Input
53
+ }], placeholder: [{
54
+ type: Input
55
+ }] } });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvb3NlLXllcy1vci1uby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2xpYi9pbnB1dHMvY2hvb3NlLXllcy1vci1uby9jaG9vc2UteWVzLW9yLW5vLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy9jaG9vc2UteWVzLW9yLW5vL2Nob29zZS15ZXMtb3Itbm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFRL0UsTUFBTSxPQUFPLHNCQUFzQjtJQVFqQztRQU5VLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3RDLFVBQUssR0FBYyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNyRyxVQUFLLEdBQVcsR0FBRyxDQUFDO1FBRXBCLGdCQUFXLEdBQVUseUJBQXlCLENBQUM7UUFxQmhELG9CQUFlLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNsQyxtQkFBYyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQXBCbkIsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFhO1FBQ3RCLElBQUksSUFBSSxJQUFJLFNBQVMsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsRUFBTztRQUM3QixJQUFJLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0saUJBQWlCLENBQUMsRUFBTztRQUM5QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBS0QsVUFBVTtRQUNSLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLEtBQUssR0FBRztZQUNWLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUk7U0FDekIsQ0FBQTtRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQzs7bUhBNUNVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHVMQ1JuQyxzcEJBWUE7MkZESmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLGtCQUFrQjswRUFNbEIsTUFBTTtzQkFBZixNQUFNO2dCQUVFLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWWVzT3JObyB9IGZyb20gJy4uL21vZGVscy95ZXMtb3Itbm8ubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjaG9vc2UteWVzLW9yLW5vJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2hvb3NlLXllcy1vci1uby5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2hvb3NlLXllcy1vci1uby5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaG9vc2VZZXNPck5vQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBcclxuICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGl0ZW1zOiBZZXNPck5vW10gPSBbeyB2YWx1ZTogdHJ1ZSwgbGFiZWw6IFwiWWVzXCIsIGNvbG9yOlwiZ3JlZW5cIiB9LCB7IHZhbHVlOiBmYWxzZSwgbGFiZWw6IFwiTm9cIiwgY29sb3I6XCJyZWRcIiB9XTtcclxuICBASW5wdXQoKSB3aWR0aDogbnVtYmVyID0gMjAwO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkSXRlbVZhbHVlOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPVwiQ2hvb3NlIGVpdGhlciBZZXMgb3IgTm9cIjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuICBcclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUoaXRlbTogYm9vbGVhbikge1xyXG4gICAgaWYgKGl0ZW0gIT0gdW5kZWZpbmVkIHx8IGl0ZW0gIT0gbnVsbCkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtVmFsdWUgPSBpdGVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XHJcbiAgICB0aGlzLnByb3BvZ2F0ZVRvdWNoID0gZm47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcclxuICBwcml2YXRlIHByb3BvZ2F0ZVRvdWNoID0gKCkgPT4geyB9O1xyXG5cclxuICB1cGRhdGVCbHVyKCkge1xyXG4gICAgdGhpcy5wcm9wb2dhdGVUb3VjaCgpO1xyXG4gIH1cclxuXHJcbiAgb25TZWxlY3RlZEl0ZW1DaGFuZ2VkKCkge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3RlZEl0ZW1WYWx1ZSk7XHJcbiAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtVmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc2V0V2lkdGgoKSB7XHJcbiAgICBsZXQgc3R5bGUgPSB7XHJcbiAgICAgIHdpZHRoOiB0aGlzLndpZHRoICsgXCJweFwiXHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3R5bGVcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNlbGVjdFwiPlxyXG4gICAgPG5nLXNlbGVjdCBbbmdTdHlsZV09XCJzZXRXaWR0aCgpXCIgY2xhc3M9XCJjb21wb25lbnRcIiBhcHBlbmRUbz1cImJvZHlcIiAoYmx1cik9XCJ1cGRhdGVCbHVyKClcIiAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgYmluZExhYmVsPVwibGFiZWxcIlxyXG4gICAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCIgW2l0ZW1zXT1cIml0ZW1zXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgKGNoYW5nZSk9XCJvblNlbGVjdGVkSXRlbUNoYW5nZWQoKVwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEl0ZW1WYWx1ZVwiID5cclxuICAgICAgICA8bmctdGVtcGxhdGUgY2xhc3M9XCJ0ZW1wbGF0ZVwiIG5nLW9wdGlvbi10bXAgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1pbmRleD1cImluZGV4XCJcclxuICAgICAgICAgICAgbGV0LXNlYXJjaD1cInNlYXJjaFRlcm1cIj5cclxuICAgICAgICAgICAgPHNwYW4gIFtzdHlsZS5jb2xvcl09XCJpdGVtLmNvbG9yXCI+XHJcbiAgICAgICAgICAgICAgICB7e2l0ZW0ubGFiZWx9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvbmctc2VsZWN0PlxyXG48L2Rpdj5cclxuIl19
@@ -0,0 +1,27 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../choose-yes-or-no/choose-yes-or-no.component";
4
+ export class ChooseYesOrNoRendererComponent {
5
+ constructor() { }
6
+ agInit(params) {
7
+ this.params = params;
8
+ this.booleanValue = params.value;
9
+ this.key = params.context.createKey(params.columnApi, params.column);
10
+ this.rowId = params.node.id;
11
+ }
12
+ onCellDataChanged($event) {
13
+ let value = $event;
14
+ this.formControlValue = this.params.context.formGroup.get("entries").at(this.rowId);
15
+ this.formControlValue.get(this.key).setValue(value);
16
+ }
17
+ refresh(params) {
18
+ return false;
19
+ }
20
+ }
21
+ ChooseYesOrNoRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseYesOrNoRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ ChooseYesOrNoRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: ChooseYesOrNoRendererComponent, selector: "choose-yes-or-no-renderer", ngImport: i0, template: "<choose-yes-or-no [selectedItemValue]=\"booleanValue\" [width]=\"params.width\" (change) =\"onCellDataChanged($event)\" [placeholder]=\"params.placeholder\" ></choose-yes-or-no>", styles: [""], components: [{ type: i1.ChooseYesOrNoComponent, selector: "choose-yes-or-no", inputs: ["width", "selectedItemValue", "placeholder"], outputs: ["change"] }] });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: ChooseYesOrNoRendererComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'choose-yes-or-no-renderer', template: "<choose-yes-or-no [selectedItemValue]=\"booleanValue\" [width]=\"params.width\" (change) =\"onCellDataChanged($event)\" [placeholder]=\"params.placeholder\" ></choose-yes-or-no>", styles: [""] }]
26
+ }], ctorParameters: function () { return []; } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvb3NlLXllcy1vci1uby1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2xpYi9pbnB1dHMvY2hvb3NlLXllcy1vci1uby1yZW5kZXJlci9jaG9vc2UteWVzLW9yLW5vLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy9jaG9vc2UteWVzLW9yLW5vLXJlbmRlcmVyL2Nob29zZS15ZXMtb3Itbm8tcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUTFDLE1BQU0sT0FBTyw4QkFBOEI7SUFRekMsZ0JBQWdCLENBQUM7SUFHakIsTUFBTSxDQUFDLE1BQVc7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBTTtRQUN0QixJQUFJLEtBQUssR0FBUSxNQUFNLENBQUM7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUFXO1FBQ2pCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7MkhBMUJVLDhCQUE4QjsrR0FBOUIsOEJBQThCLGlFQ1IzQyxzTEFBNEs7MkZEUS9KLDhCQUE4QjtrQkFMMUMsU0FBUzsrQkFDRSwyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY2hvb3NlLXllcy1vci1uby1yZW5kZXJlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Nob29zZS15ZXMtb3Itbm8tcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Nob29zZS15ZXMtb3Itbm8tcmVuZGVyZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvb3NlWWVzT3JOb1JlbmRlcmVyQ29tcG9uZW50IGltcGxlbWVudHMgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIHtcclxuICBwYXJhbXM6IGFueTtcclxuICBmb3JtQ29udHJvbFZhbHVlO1xyXG4gIGtleTtcclxuICBib29sZWFuVmFsdWU6IGJvb2xlYW47XHJcbiAgY29sdW1uTmFtZTogc3RyaW5nO1xyXG4gIHJvd0lkOiBudW1iZXI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gXHJcbiAgYWdJbml0KHBhcmFtczogYW55KSB7XHJcbiAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcclxuICAgIHRoaXMuYm9vbGVhblZhbHVlID0gcGFyYW1zLnZhbHVlOyBcclxuICAgIHRoaXMua2V5ID0gcGFyYW1zLmNvbnRleHQuY3JlYXRlS2V5KHBhcmFtcy5jb2x1bW5BcGksIHBhcmFtcy5jb2x1bW4pO1xyXG4gICAgdGhpcy5yb3dJZCA9IHBhcmFtcy5ub2RlLmlkO1xyXG4gIH1cclxuXHJcbiAgb25DZWxsRGF0YUNoYW5nZWQoJGV2ZW50KSB7XHJcbiAgICBsZXQgdmFsdWU6IGFueSA9ICRldmVudDtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2xWYWx1ZSA9IHRoaXMucGFyYW1zLmNvbnRleHQuZm9ybUdyb3VwLmdldChcImVudHJpZXNcIikuYXQodGhpcy5yb3dJZCk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sVmFsdWUuZ2V0KHRoaXMua2V5KS5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoKHBhcmFtczogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8Y2hvb3NlLXllcy1vci1ubyBbc2VsZWN0ZWRJdGVtVmFsdWVdPVwiYm9vbGVhblZhbHVlXCIgW3dpZHRoXT1cInBhcmFtcy53aWR0aFwiIChjaGFuZ2UpID1cIm9uQ2VsbERhdGFDaGFuZ2VkKCRldmVudClcIiAgICBbcGxhY2Vob2xkZXJdPVwicGFyYW1zLnBsYWNlaG9sZGVyXCIgPjwvY2hvb3NlLXllcy1vci1ubz4iXX0=
@@ -0,0 +1,20 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { PIPEMAPPINGS } from './dynamicPipeMapping';
3
+ import * as i0 from "@angular/core";
4
+ export class DynamicPipe {
5
+ transform(value, args) {
6
+ for (let val of PIPEMAPPINGS) {
7
+ if (val.value === args) {
8
+ return val.pipe.transform(value);
9
+ }
10
+ }
11
+ return '';
12
+ }
13
+ }
14
+ DynamicPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: DynamicPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
+ DynamicPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: DynamicPipe, name: "dynamicPipe" });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: DynamicPipe, decorators: [{
17
+ type: Pipe,
18
+ args: [{ name: 'dynamicPipe' }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pY1BpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2xpYi9pbnB1dHMvZWRpdGFibGUtc2F2YWJsZS1pbnB1dC9keW5hbWljUGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBR3BELE1BQU0sT0FBTyxXQUFXO0lBQ3BCLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBUztRQUN0QixLQUFLLElBQUksR0FBRyxJQUFJLFlBQVksRUFBRTtZQUMxQixJQUFJLEdBQUcsQ0FBQyxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUNwQixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3BDO1NBQ0o7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7O3dHQVJRLFdBQVc7c0dBQVgsV0FBVzsyRkFBWCxXQUFXO2tCQUR2QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUElQRU1BUFBJTkdTIH0gZnJvbSAnLi9keW5hbWljUGlwZU1hcHBpbmcnO1xyXG5cclxuQFBpcGUoeyBuYW1lOiAnZHluYW1pY1BpcGUnIH0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICAgdHJhbnNmb3JtKHZhbHVlLCBhcmdzOiBhbnkpOiBhbnkge1xyXG4gICAgICAgIGZvciAobGV0IHZhbCBvZiBQSVBFTUFQUElOR1MpIHtcclxuICAgICAgICAgICAgaWYgKHZhbC52YWx1ZSA9PT0gYXJncykge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbC5waXBlLnRyYW5zZm9ybSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG59Il19
@@ -0,0 +1,5 @@
1
+ import { CurrencyPipe } from '@angular/common';
2
+ export const PIPEMAPPINGS = [
3
+ { value: '$', pipe: new CurrencyPipe('en-US') }
4
+ ];
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pY1BpcGVNYXBwaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9saWIvaW5wdXRzL2VkaXRhYmxlLXNhdmFibGUtaW5wdXQvZHluYW1pY1BpcGVNYXBwaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDeEIsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRTtDQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmV4cG9ydCBjb25zdCBQSVBFTUFQUElOR1MgPSBbXHJcbiAgICB7IHZhbHVlOiAnJCcsIHBpcGU6IG5ldyBDdXJyZW5jeVBpcGUoJ2VuLVVTJykgfVxyXG5dOyJdfQ==