@kms-ngx-ui/presentational 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.
- package/README.md +24 -0
- package/bundles/kms-ngx-ui-presentational.umd.js +2441 -0
- package/bundles/kms-ngx-ui-presentational.umd.js.map +1 -0
- package/bundles/kms-ngx-ui-presentational.umd.min.js +38 -0
- package/bundles/kms-ngx-ui-presentational.umd.min.js.map +1 -0
- package/esm2015/kms-ngx-ui-presentational.js +37 -0
- package/esm2015/lib/kms-ngx-ui-presentational.component.js +18 -0
- package/esm2015/lib/kms-ngx-ui-presentational.module.js +98 -0
- package/esm2015/lib/kms-ngx-ui-presentational.service.js +13 -0
- package/esm2015/lib/models/address.model.js +6 -0
- package/esm2015/lib/models/iconSize.enum.js +17 -0
- package/esm2015/lib/models/index.js +5 -0
- package/esm2015/lib/models/is-value.function.js +17 -0
- package/esm2015/lib/models/salutation.enum.js +8 -0
- package/esm2015/lib/models/types/attached-file-dto.model.js +6 -0
- package/esm2015/lib/models/types/nullable.type.js +5 -0
- package/esm2015/lib/parent-components/actions.component.js +48 -0
- package/esm2015/lib/parent-components/form-control.component.js +73 -0
- package/esm2015/lib/parent-components/form.component.js +77 -0
- package/esm2015/lib/pipes/custom-pipes.module.js +45 -0
- package/esm2015/lib/pipes/decode-uri.pipe.js +15 -0
- package/esm2015/lib/pipes/encode-uri.pipe.js +15 -0
- package/esm2015/lib/pipes/integer-currency.pipe.js +29 -0
- package/esm2015/lib/pipes/safe-html.pipe.js +22 -0
- package/esm2015/lib/pipes/safe-style.pipe.js +22 -0
- package/esm2015/lib/pipes/safe-url.pipe.js +22 -0
- package/esm2015/lib/pipes/to-number.pipe.js +19 -0
- package/esm2015/lib/pipes/trim.pipe.js +16 -0
- package/esm2015/lib/pipes/typeof.pipe.js +12 -0
- package/esm2015/lib/services/viewport.service.js +213 -0
- package/esm2015/lib/ui/back-to-top/back-to-top.component.js +46 -0
- package/esm2015/lib/ui/button-with-confirm-dialog/button-response-types.enum.js +6 -0
- package/esm2015/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.js +56 -0
- package/esm2015/lib/ui/button-with-confirm-dialog/dialog-data.model.js +2 -0
- package/esm2015/lib/ui/checkbox/checkbox.component.js +63 -0
- package/esm2015/lib/ui/color-input/color-input.component.js +63 -0
- package/esm2015/lib/ui/enum-radiogroup/enum-radiogroup.component.js +46 -0
- package/esm2015/lib/ui/file-input/file-input.component.js +215 -0
- package/esm2015/lib/ui/flyout/flyout.component.js +84 -0
- package/esm2015/lib/ui/generic-dialog/generic-dialog.component.js +54 -0
- package/esm2015/lib/ui/icon/icon.component.js +47 -0
- package/esm2015/lib/ui/icon/iconSize.enum.js +17 -0
- package/esm2015/lib/ui/kms-accordion-item/kms-accordion-item.component.js +36 -0
- package/esm2015/lib/ui/loader/loader.component.js +21 -0
- package/esm2015/lib/ui/map/map.component.js +137 -0
- package/esm2015/lib/ui/radiobutton/radiobutton.component.js +66 -0
- package/esm2015/lib/ui/salutation-dropdown/salutation-dropdown.component.js +49 -0
- package/esm2015/lib/ui/salutation-radiogroup/salutation-radiogroup.component.js +44 -0
- package/esm2015/lib/ui/time-input/time-input.component.js +80 -0
- package/esm2015/lib/ui/tooltip/tooltip.component.js +17 -0
- package/esm2015/lib/ui/tooltip-icon/tooltip-icon.component.js +29 -0
- package/esm2015/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.js +74 -0
- package/esm2015/public-api.js +12 -0
- package/fesm2015/kms-ngx-ui-presentational.js +1962 -0
- package/fesm2015/kms-ngx-ui-presentational.js.map +1 -0
- package/kms-ngx-ui-presentational.d.ts +37 -0
- package/kms-ngx-ui-presentational.metadata.json +1 -0
- package/lib/kms-ngx-ui-presentational.component.d.ts +5 -0
- package/lib/kms-ngx-ui-presentational.module.d.ts +2 -0
- package/lib/kms-ngx-ui-presentational.service.d.ts +3 -0
- package/lib/models/address.model.d.ts +14 -0
- package/lib/models/iconSize.enum.d.ts +15 -0
- package/lib/models/index.d.ts +4 -0
- package/lib/models/is-value.function.d.ts +9 -0
- package/lib/models/salutation.enum.d.ts +5 -0
- package/lib/models/types/attached-file-dto.model.d.ts +11 -0
- package/lib/models/types/nullable.type.d.ts +4 -0
- package/lib/parent-components/actions.component.d.ts +28 -0
- package/lib/parent-components/form-control.component.d.ts +24 -0
- package/lib/parent-components/form.component.d.ts +31 -0
- package/lib/pipes/custom-pipes.module.d.ts +5 -0
- package/lib/pipes/decode-uri.pipe.d.ts +7 -0
- package/lib/pipes/encode-uri.pipe.d.ts +7 -0
- package/lib/pipes/integer-currency.pipe.d.ts +10 -0
- package/lib/pipes/safe-html.pipe.d.ts +10 -0
- package/lib/pipes/safe-style.pipe.d.ts +10 -0
- package/lib/pipes/safe-url.pipe.d.ts +10 -0
- package/lib/pipes/to-number.pipe.d.ts +7 -0
- package/lib/pipes/trim.pipe.d.ts +7 -0
- package/lib/pipes/typeof.pipe.d.ts +4 -0
- package/lib/services/viewport.service.d.ts +74 -0
- package/lib/ui/back-to-top/back-to-top.component.d.ts +10 -0
- package/lib/ui/button-with-confirm-dialog/button-response-types.enum.d.ts +4 -0
- package/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.d.ts +16 -0
- package/lib/ui/button-with-confirm-dialog/dialog-data.model.d.ts +9 -0
- package/lib/ui/checkbox/checkbox.component.d.ts +28 -0
- package/lib/ui/color-input/color-input.component.d.ts +15 -0
- package/lib/ui/enum-radiogroup/enum-radiogroup.component.d.ts +14 -0
- package/lib/ui/file-input/file-input.component.d.ts +86 -0
- package/lib/ui/flyout/flyout.component.d.ts +32 -0
- package/lib/ui/generic-dialog/generic-dialog.component.d.ts +23 -0
- package/lib/ui/icon/icon.component.d.ts +39 -0
- package/lib/ui/icon/iconSize.enum.d.ts +15 -0
- package/lib/ui/kms-accordion-item/kms-accordion-item.component.d.ts +18 -0
- package/lib/ui/loader/loader.component.d.ts +6 -0
- package/lib/ui/map/map.component.d.ts +70 -0
- package/lib/ui/radiobutton/radiobutton.component.d.ts +23 -0
- package/lib/ui/salutation-dropdown/salutation-dropdown.component.d.ts +14 -0
- package/lib/ui/salutation-radiogroup/salutation-radiogroup.component.d.ts +12 -0
- package/lib/ui/time-input/time-input.component.d.ts +19 -0
- package/lib/ui/tooltip/tooltip.component.d.ts +3 -0
- package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +10 -0
- package/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.d.ts +24 -0
- package/package.json +25 -0
- package/public-api.d.ts +6 -0
- package/src/lib/ui/back-to-top/back-to-top.component.scss +47 -0
- package/src/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.scss +0 -0
- package/src/lib/ui/checkbox/checkbox.component.scss +57 -0
- package/src/lib/ui/color-input/color-input.component.scss +38 -0
- package/src/lib/ui/file-input/file-input.component.scss +0 -0
- package/src/lib/ui/flyout/flyout.component.scss +34 -0
- package/src/lib/ui/generic-dialog/generic-dialog.component.scss +59 -0
- package/src/lib/ui/icon/icon.component.scss +149 -0
- package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.scss +95 -0
- package/src/lib/ui/loader/loader.component.scss +0 -0
- package/src/lib/ui/map/map.component.scss +0 -0
- package/src/lib/ui/radiobutton/radiobutton.component.scss +30 -0
- package/src/lib/ui/time-input/time-input.component.scss +10 -0
- package/src/lib/ui/tooltip/tooltip.component.scss +27 -0
- package/src/lib/ui/tooltip-icon/tooltip-icon.component.scss +2 -0
- package/src/styles/mixins.scss +9 -0
- package/src/styles/styles.scss +30 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @copyright FLYACTS GmbH 2019
|
|
3
|
+
*/
|
|
4
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
5
|
+
export class ActionsParentComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
/**
|
|
8
|
+
* Defines the disabled property
|
|
9
|
+
*/
|
|
10
|
+
this.disabled = false;
|
|
11
|
+
/**
|
|
12
|
+
* Set button as selected. F.e. in multiselect component
|
|
13
|
+
*/
|
|
14
|
+
this.checked = false;
|
|
15
|
+
/**
|
|
16
|
+
* Displayed label.
|
|
17
|
+
*/
|
|
18
|
+
this.label = '';
|
|
19
|
+
/**
|
|
20
|
+
* Link
|
|
21
|
+
*/
|
|
22
|
+
this.link = '';
|
|
23
|
+
/**
|
|
24
|
+
* Internal value that will be send if a form is submitted.
|
|
25
|
+
*/
|
|
26
|
+
this.initialValue = '';
|
|
27
|
+
this.select = new EventEmitter();
|
|
28
|
+
}
|
|
29
|
+
selectAction(id) {
|
|
30
|
+
this.checked = !this.checked;
|
|
31
|
+
this.select.emit(id);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
ActionsParentComponent.decorators = [
|
|
35
|
+
{ type: Component, args: [{
|
|
36
|
+
selector: 'kms-actions',
|
|
37
|
+
template: ''
|
|
38
|
+
},] }
|
|
39
|
+
];
|
|
40
|
+
ActionsParentComponent.propDecorators = {
|
|
41
|
+
disabled: [{ type: Input }],
|
|
42
|
+
checked: [{ type: Input }],
|
|
43
|
+
label: [{ type: Input }],
|
|
44
|
+
link: [{ type: Input }],
|
|
45
|
+
initialValue: [{ type: Input }],
|
|
46
|
+
select: [{ type: Output }]
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvcGFyZW50LWNvbXBvbmVudHMvYWN0aW9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTXZFLE1BQU0sT0FBTyxzQkFBc0I7SUFKbkM7UUFLSTs7V0FFRztRQUNNLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFMUI7O1dBRUc7UUFDTSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXpCOztXQUVHO1FBQ00sVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVwQjs7V0FFRztRQUNNLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFbkI7O1dBRUc7UUFDTSxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUVqQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQU0xQyxDQUFDO0lBSkcsWUFBWSxDQUFDLEVBQVU7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekIsQ0FBQzs7O1lBbkNKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsUUFBUSxFQUFFLEVBQUU7YUFDZjs7O3VCQUtJLEtBQUs7c0JBS0wsS0FBSztvQkFLTCxLQUFLO21CQUtMLEtBQUs7MkJBS0wsS0FBSztxQkFFTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAY29weXJpZ2h0IEZMWUFDVFMgR21iSCAyMDE5XG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrbXMtYWN0aW9ucycsXG4gICAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpb25zUGFyZW50Q29tcG9uZW50IHtcbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIHRoZSBkaXNhYmxlZCBwcm9wZXJ0eVxuICAgICAqL1xuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBTZXQgYnV0dG9uIGFzIHNlbGVjdGVkLiBGLmUuIGluIG11bHRpc2VsZWN0IGNvbXBvbmVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpIGNoZWNrZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIERpc3BsYXllZCBsYWJlbC5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBsYWJlbCA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogTGlua1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGxpbmsgPSAnJztcblxuICAgIC8qKlxuICAgICAqIEludGVybmFsIHZhbHVlIHRoYXQgd2lsbCBiZSBzZW5kIGlmIGEgZm9ybSBpcyBzdWJtaXR0ZWQuXG4gICAgICovXG4gICAgQElucHV0KCkgaW5pdGlhbFZhbHVlID0gJyc7XG5cbiAgICBAT3V0cHV0KCkgc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgc2VsZWN0QWN0aW9uKGlkOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5jaGVja2VkID0gIXRoaXMuY2hlY2tlZDtcbiAgICAgICAgdGhpcy5zZWxlY3QuZW1pdChpZCk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Component, Input, EventEmitter, Output, ViewChild, Renderer2 } from '@angular/core';
|
|
2
|
+
import { FormBuilder } from '@angular/forms';
|
|
3
|
+
import { FormParentComponent } from './form.component';
|
|
4
|
+
export class FormControlParentComponent extends FormParentComponent {
|
|
5
|
+
constructor(formBuilder, renderer) {
|
|
6
|
+
super(formBuilder);
|
|
7
|
+
this.formBuilder = formBuilder;
|
|
8
|
+
this.renderer = renderer;
|
|
9
|
+
this.defaultDataOverride = ''; // when we have NO form around, get default via input to set it manually
|
|
10
|
+
this.onSelectItemEmitter = new EventEmitter();
|
|
11
|
+
this.internalValue = '';
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
13
|
+
this.onChange = () => { };
|
|
14
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
15
|
+
this.onTouch = () => { };
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
17
|
+
this.onTouched = () => { };
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
super.ngOnInit();
|
|
21
|
+
}
|
|
22
|
+
change(value) {
|
|
23
|
+
this.onChange(value);
|
|
24
|
+
this.onTouched();
|
|
25
|
+
}
|
|
26
|
+
get value() {
|
|
27
|
+
return this.internalValue;
|
|
28
|
+
}
|
|
29
|
+
set value(value) {
|
|
30
|
+
this.internalValue = value;
|
|
31
|
+
if (value !== undefined && this.internalValue !== value) {
|
|
32
|
+
if (!this.internalValue && this.defaultDataOverride) {
|
|
33
|
+
this.internalValue = this.defaultDataOverride;
|
|
34
|
+
}
|
|
35
|
+
this.onChange(value);
|
|
36
|
+
this.onTouch(value);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
writeValue(value) {
|
|
40
|
+
this.internalValue = value;
|
|
41
|
+
this.value = value;
|
|
42
|
+
}
|
|
43
|
+
registerOnChange(fn) {
|
|
44
|
+
this.onChange = fn;
|
|
45
|
+
}
|
|
46
|
+
registerOnTouched(fn) {
|
|
47
|
+
this.onTouch = fn;
|
|
48
|
+
}
|
|
49
|
+
setDisabledState(isDisabled) {
|
|
50
|
+
if (this.child) {
|
|
51
|
+
this.renderer.setProperty(this.child.nativeElement, 'disabled', isDisabled);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
validate(_) {
|
|
55
|
+
return this.form.valid ? null : false;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
FormControlParentComponent.decorators = [
|
|
59
|
+
{ type: Component, args: [{
|
|
60
|
+
selector: 'kms-formControlParent',
|
|
61
|
+
template: ''
|
|
62
|
+
},] }
|
|
63
|
+
];
|
|
64
|
+
FormControlParentComponent.ctorParameters = () => [
|
|
65
|
+
{ type: FormBuilder },
|
|
66
|
+
{ type: Renderer2 }
|
|
67
|
+
];
|
|
68
|
+
FormControlParentComponent.propDecorators = {
|
|
69
|
+
defaultDataOverride: [{ type: Input }],
|
|
70
|
+
onSelectItemEmitter: [{ type: Output }],
|
|
71
|
+
child: [{ type: ViewChild, args: ['child',] }]
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi9wYXJlbnQtY29tcG9uZW50cy9mb3JtLWNvbnRyb2wuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFNdkQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLG1CQUFtQjtJQVEvRCxZQUFtQixXQUF3QixFQUFTLFFBQW1CO1FBQ25FLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQURKLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQVA5RCx3QkFBbUIsR0FBRyxFQUFFLENBQUMsQ0FBQyx3RUFBd0U7UUFDakcsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUlwRCxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQWUxQixnRUFBZ0U7UUFDekQsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUVoQyxnRUFBZ0U7UUFDaEUsWUFBTyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUV4QixnRUFBZ0U7UUFDaEUsY0FBUyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQWxCMUIsQ0FBQztJQUVELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFhO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFXRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDM0IsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssS0FBSyxFQUFFO1lBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtnQkFDakQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7YUFDakQ7WUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDdkI7SUFDTCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQixDQUFFLFVBQW1CO1FBQ2pDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNaLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUMvRTtJQUNMLENBQUM7SUFFRCxRQUFRLENBQUMsQ0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUMxQyxDQUFDOzs7WUF0RUosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLFFBQVEsRUFBRSxFQUFFO2FBQ2Y7OztZQU5RLFdBQVc7WUFEb0QsU0FBUzs7O2tDQVM1RSxLQUFLO2tDQUNMLE1BQU07b0JBRU4sU0FBUyxTQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgVmlld0NoaWxkLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1QYXJlbnRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrbXMtZm9ybUNvbnRyb2xQYXJlbnQnLFxuICAgIHRlbXBsYXRlOiAnJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUNvbnRyb2xQYXJlbnRDb21wb25lbnQgZXh0ZW5kcyBGb3JtUGFyZW50Q29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBkZWZhdWx0RGF0YU92ZXJyaWRlID0gJyc7IC8vIHdoZW4gd2UgaGF2ZSBOTyBmb3JtIGFyb3VuZCwgZ2V0IGRlZmF1bHQgdmlhIGlucHV0IHRvIHNldCBpdCBtYW51YWxseVxuICAgIEBPdXRwdXQoKSBvblNlbGVjdEl0ZW1FbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdjaGlsZCcpIHB1YmxpYyBjaGlsZD86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgICBwdWJsaWMgaW50ZXJuYWxWYWx1ZSA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcbiAgICAgICAgc3VwZXIoZm9ybUJ1aWxkZXIpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCl7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgfVxuXG4gICAgY2hhbmdlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgIHB1YmxpYyBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fTtcblxuICAgIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbFZhbHVlO1xuICAgIH1cblxuICAgIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZSA9IHZhbHVlO1xuICAgICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmludGVybmFsVmFsdWUgIT09IHZhbHVlKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaW50ZXJuYWxWYWx1ZSAmJiB0aGlzLmRlZmF1bHREYXRhT3ZlcnJpZGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmludGVybmFsVmFsdWUgPSB0aGlzLmRlZmF1bHREYXRhT3ZlcnJpZGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMub25Ub3VjaCh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbFZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5jaGlsZCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmNoaWxkLm5hdGl2ZUVsZW1lbnQsICdkaXNhYmxlZCcsIGlzRGlzYWJsZWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdmFsaWRhdGUoXzogRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS52YWxpZCA/IG51bGwgOiBmYWxzZTtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @copyright FLYACTS GmbH 2019
|
|
3
|
+
*/
|
|
4
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
5
|
+
import { FormBuilder } from '@angular/forms';
|
|
6
|
+
export class FormParentComponent {
|
|
7
|
+
constructor(formBuilder) {
|
|
8
|
+
this.formBuilder = formBuilder;
|
|
9
|
+
this.formInitialized = false;
|
|
10
|
+
this.allowedCharsOnlyNumbers = new Set('0123456789'.split('').map(c => c.charCodeAt(0)));
|
|
11
|
+
this.formDataChanged = new EventEmitter();
|
|
12
|
+
this.disabled = false;
|
|
13
|
+
}
|
|
14
|
+
// TODO make a service or make own compoennt etc.
|
|
15
|
+
/**
|
|
16
|
+
* Returns if a number was pressed
|
|
17
|
+
* @param e
|
|
18
|
+
* @returns
|
|
19
|
+
*/
|
|
20
|
+
checkIfKeyWasNumber(e, allowDelete = true, allowArrows = true, allowCutCopyPaste = true) {
|
|
21
|
+
// returns if keycode of numbers-row or numberpad. Or if parameter set, allow delete/backspace key
|
|
22
|
+
const isNumberRow = e.keyCode >= 48 && e.keyCode <= 57;
|
|
23
|
+
const isNumberPad = e.keyCode >= 96 && e.keyCode <= 105;
|
|
24
|
+
const isArrows = e.keyCode >= 37 && e.keyCode <= 40;
|
|
25
|
+
const isDelete = e.keyCode == 8 || e.keyCode == 46;
|
|
26
|
+
const isCutCopyOrPaste = (e.ctrlKey || e.metaKey) && (e.keyCode == 86 || e.keyCode == 88 || e.keyCode == 67);
|
|
27
|
+
return (isNumberRow) || (isNumberPad) || (allowDelete && isDelete) || (allowArrows && isArrows) || (allowCutCopyPaste && isCutCopyOrPaste);
|
|
28
|
+
}
|
|
29
|
+
// TODO make a service or make own compoennt etc.
|
|
30
|
+
/**
|
|
31
|
+
* Prevents to input other chars than numbers in input
|
|
32
|
+
* @param event
|
|
33
|
+
*/
|
|
34
|
+
removeNumbersOnType(event) {
|
|
35
|
+
// only allow keydown from numbers-row or numberpad of keybard and block other chars than numbers
|
|
36
|
+
if (!this.checkIfKeyWasNumber(event) && !this.allowedCharsOnlyNumbers.has(event.keyCode)) {
|
|
37
|
+
event.preventDefault();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// TODO make a service or make own compoennt etc.
|
|
41
|
+
/**
|
|
42
|
+
* Prevents input when pasting which is not number
|
|
43
|
+
* @param event
|
|
44
|
+
*/
|
|
45
|
+
removeNumbersOnPaste(event) {
|
|
46
|
+
const clipboardData = event.clipboardData;
|
|
47
|
+
if (clipboardData) {
|
|
48
|
+
const pastedText = clipboardData.getData('text');
|
|
49
|
+
if (pastedText) {
|
|
50
|
+
const isnum = /^\d+$/.test(pastedText);
|
|
51
|
+
if (!isnum) {
|
|
52
|
+
event.preventDefault();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
ngOnInit() {
|
|
58
|
+
this.formDataChanged.emit(this.form);
|
|
59
|
+
this.form.valueChanges.subscribe(() => {
|
|
60
|
+
this.formDataChanged.emit(this.form);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
FormParentComponent.decorators = [
|
|
65
|
+
{ type: Component, args: [{
|
|
66
|
+
selector: 'kms-form',
|
|
67
|
+
template: ''
|
|
68
|
+
},] }
|
|
69
|
+
];
|
|
70
|
+
FormParentComponent.ctorParameters = () => [
|
|
71
|
+
{ type: FormBuilder }
|
|
72
|
+
];
|
|
73
|
+
FormParentComponent.propDecorators = {
|
|
74
|
+
formDataChanged: [{ type: Output }],
|
|
75
|
+
disabled: [{ type: Input }]
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvcGFyZW50LWNvbXBvbmVudHMvZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQU14RCxNQUFNLE9BQU8sbUJBQW1CO0lBUzVCLFlBQ1csV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFSNUIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDdkIsNEJBQXVCLEdBQUcsSUFBSSxHQUFHLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVsRixvQkFBZSxHQUE0QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRS9ELGFBQVEsR0FBRyxLQUFLLENBQUM7SUFNMUIsQ0FBQztJQUVELGlEQUFpRDtJQUNqRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsQ0FBZ0IsRUFBRSxXQUFXLEdBQUcsSUFBSSxFQUFFLFdBQVcsR0FBRyxJQUFJLEVBQUUsaUJBQWlCLEdBQUcsSUFBSTtRQUNsRyxrR0FBa0c7UUFDbEcsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDdkQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxHQUFHLENBQUM7UUFDeEQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDcEQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDbkQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLGdCQUFnQixDQUFDLENBQUM7SUFDL0ksQ0FBQztJQUVELGlEQUFpRDtJQUNqRDs7O09BR0c7SUFDSCxtQkFBbUIsQ0FBQyxLQUFvQjtRQUNwQyxpR0FBaUc7UUFDakcsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RGLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUMxQjtJQUNMLENBQUM7SUFFRCxpREFBaUQ7SUFDakQ7OztPQUdHO0lBQ0gsb0JBQW9CLENBQUMsS0FBcUI7UUFDdEMsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFHLGFBQWEsRUFBQztZQUNiLE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDakQsSUFBRyxVQUFVLEVBQUM7Z0JBQ1YsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDdkMsSUFBRyxDQUFDLEtBQUssRUFBRTtvQkFDUCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7aUJBQzFCO2FBQ0o7U0FDSjtJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7O1lBdEVKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsVUFBVTtnQkFDcEIsUUFBUSxFQUFFLEVBQUU7YUFDZjs7O1lBTFEsV0FBVzs7OzhCQVdmLE1BQU07dUJBRU4sS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGNvcHlyaWdodCBGTFlBQ1RTIEdtYkggMjAxOVxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna21zLWZvcm0nLFxuICAgIHRlbXBsYXRlOiAnJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybVBhcmVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHVibGljIGZvcm0hOiBGb3JtR3JvdXA7XG4gICAgcHVibGljIGZvcm1Jbml0aWFsaXplZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgYWxsb3dlZENoYXJzT25seU51bWJlcnMgPSBuZXcgU2V0KCcwMTIzNDU2Nzg5Jy5zcGxpdCgnJykubWFwKGMgPT4gYy5jaGFyQ29kZUF0KDApKSk7XG5cbiAgICBAT3V0cHV0KCkgZm9ybURhdGFDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Rm9ybUdyb3VwPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlclxuICAgICkge1xuXG4gICAgfVxuXG4gICAgLy8gVE9ETyBtYWtlIGEgc2VydmljZSBvciBtYWtlIG93biBjb21wb2VubnQgZXRjLlxuICAgIC8qKlxuICAgICAqIFJldHVybnMgaWYgYSBudW1iZXIgd2FzIHByZXNzZWRcbiAgICAgKiBAcGFyYW0gZSBcbiAgICAgKiBAcmV0dXJucyBcbiAgICAgKi9cbiAgICBjaGVja0lmS2V5V2FzTnVtYmVyKGU6IEtleWJvYXJkRXZlbnQsIGFsbG93RGVsZXRlID0gdHJ1ZSwgYWxsb3dBcnJvd3MgPSB0cnVlLCBhbGxvd0N1dENvcHlQYXN0ZSA9IHRydWUpe1xuICAgICAgICAvLyByZXR1cm5zIGlmIGtleWNvZGUgb2YgbnVtYmVycy1yb3cgb3IgbnVtYmVycGFkLiBPciBpZiBwYXJhbWV0ZXIgc2V0LCBhbGxvdyBkZWxldGUvYmFja3NwYWNlIGtleVxuICAgICAgICBjb25zdCBpc051bWJlclJvdyA9IGUua2V5Q29kZSA+PSA0OCAmJiBlLmtleUNvZGUgPD0gNTc7XG4gICAgICAgIGNvbnN0IGlzTnVtYmVyUGFkID0gZS5rZXlDb2RlID49IDk2ICYmIGUua2V5Q29kZSA8PSAxMDU7XG4gICAgICAgIGNvbnN0IGlzQXJyb3dzID0gZS5rZXlDb2RlID49IDM3ICYmIGUua2V5Q29kZSA8PSA0MDtcbiAgICAgICAgY29uc3QgaXNEZWxldGUgPSBlLmtleUNvZGUgPT0gOCB8fCBlLmtleUNvZGUgPT0gNDY7XG4gICAgICAgIGNvbnN0IGlzQ3V0Q29weU9yUGFzdGUgPSAoZS5jdHJsS2V5IHx8IGUubWV0YUtleSkgJiYgKGUua2V5Q29kZSA9PSA4NiB8fCBlLmtleUNvZGUgPT0gODggfHwgZS5rZXlDb2RlID09IDY3KTtcbiAgICAgICAgcmV0dXJuIChpc051bWJlclJvdykgfHwgKGlzTnVtYmVyUGFkKSB8fCAoYWxsb3dEZWxldGUgJiYgaXNEZWxldGUpIHx8IChhbGxvd0Fycm93cyAmJiBpc0Fycm93cykgfHwgKGFsbG93Q3V0Q29weVBhc3RlICYmIGlzQ3V0Q29weU9yUGFzdGUpO1xuICAgIH1cblxuICAgIC8vIFRPRE8gbWFrZSBhIHNlcnZpY2Ugb3IgbWFrZSBvd24gY29tcG9lbm50IGV0Yy5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50cyB0byBpbnB1dCBvdGhlciBjaGFycyB0aGFuIG51bWJlcnMgaW4gaW5wdXRcbiAgICAgKiBAcGFyYW0gZXZlbnQgXG4gICAgICovXG4gICAgcmVtb3ZlTnVtYmVyc09uVHlwZShldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICAvLyBvbmx5IGFsbG93IGtleWRvd24gZnJvbSBudW1iZXJzLXJvdyBvciBudW1iZXJwYWQgb2Yga2V5YmFyZCBhbmQgYmxvY2sgb3RoZXIgY2hhcnMgdGhhbiBudW1iZXJzXG4gICAgICAgIGlmICghdGhpcy5jaGVja0lmS2V5V2FzTnVtYmVyKGV2ZW50KSAmJiAhdGhpcy5hbGxvd2VkQ2hhcnNPbmx5TnVtYmVycy5oYXMoZXZlbnQua2V5Q29kZSkpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUT0RPIG1ha2UgYSBzZXJ2aWNlIG9yIG1ha2Ugb3duIGNvbXBvZW5udCBldGMuXG4gICAgLyoqXG4gICAgICogUHJldmVudHMgaW5wdXQgd2hlbiBwYXN0aW5nIHdoaWNoIGlzIG5vdCBudW1iZXJcbiAgICAgKiBAcGFyYW0gZXZlbnRcbiAgICAgKi9cbiAgICByZW1vdmVOdW1iZXJzT25QYXN0ZShldmVudDogQ2xpcGJvYXJkRXZlbnQpe1xuICAgICAgICBjb25zdCBjbGlwYm9hcmREYXRhID0gZXZlbnQuY2xpcGJvYXJkRGF0YTtcbiAgICAgICAgaWYoY2xpcGJvYXJkRGF0YSl7XG4gICAgICAgICAgICBjb25zdCBwYXN0ZWRUZXh0ID0gY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0Jyk7XG4gICAgICAgICAgICBpZihwYXN0ZWRUZXh0KXtcbiAgICAgICAgICAgICAgICBjb25zdCBpc251bSA9IC9eXFxkKyQvLnRlc3QocGFzdGVkVGV4dCk7XG4gICAgICAgICAgICAgICAgaWYoIWlzbnVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuZm9ybURhdGFDaGFuZ2VkLmVtaXQodGhpcy5mb3JtKTtcbiAgICAgICAgdGhpcy5mb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YUNoYW5nZWQuZW1pdCh0aGlzLmZvcm0pO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { CommonModule, CurrencyPipe } from '@angular/common';
|
|
5
|
+
import { NgModule } from '@angular/core';
|
|
6
|
+
import { IntegerCurrency } from './integer-currency.pipe';
|
|
7
|
+
import { DecodeUriPipe } from './decode-uri.pipe';
|
|
8
|
+
import { EncodeUriPipe } from './encode-uri.pipe';
|
|
9
|
+
import { SafeHtmlPipe } from './safe-html.pipe';
|
|
10
|
+
import { SafeStylePipe } from './safe-style.pipe';
|
|
11
|
+
import { SafeUrlPipe } from './safe-url.pipe';
|
|
12
|
+
import { TypeofPipe } from './typeof.pipe';
|
|
13
|
+
import { TrimPipe } from './trim.pipe';
|
|
14
|
+
import { ToNumberPipe } from './to-number.pipe';
|
|
15
|
+
export class CustomPipesModule {
|
|
16
|
+
}
|
|
17
|
+
CustomPipesModule.decorators = [
|
|
18
|
+
{ type: NgModule, args: [{
|
|
19
|
+
declarations: [
|
|
20
|
+
IntegerCurrency,
|
|
21
|
+
SafeHtmlPipe,
|
|
22
|
+
SafeStylePipe,
|
|
23
|
+
SafeUrlPipe,
|
|
24
|
+
EncodeUriPipe,
|
|
25
|
+
DecodeUriPipe,
|
|
26
|
+
TypeofPipe,
|
|
27
|
+
TrimPipe,
|
|
28
|
+
ToNumberPipe,
|
|
29
|
+
],
|
|
30
|
+
imports: [CommonModule],
|
|
31
|
+
exports: [
|
|
32
|
+
IntegerCurrency,
|
|
33
|
+
SafeHtmlPipe,
|
|
34
|
+
SafeStylePipe,
|
|
35
|
+
SafeUrlPipe,
|
|
36
|
+
EncodeUriPipe,
|
|
37
|
+
DecodeUriPipe,
|
|
38
|
+
TypeofPipe,
|
|
39
|
+
TrimPipe,
|
|
40
|
+
ToNumberPipe,
|
|
41
|
+
],
|
|
42
|
+
providers: [CurrencyPipe],
|
|
43
|
+
},] }
|
|
44
|
+
];
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXBpcGVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi9waXBlcy9jdXN0b20tcGlwZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUYsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUE0QmhELE1BQU0sT0FBTyxpQkFBaUI7OztZQTFCN0IsUUFBUSxTQUFDO2dCQUNOLFlBQVksRUFBRTtvQkFDVixlQUFlO29CQUNmLFlBQVk7b0JBQ1osYUFBYTtvQkFDYixXQUFXO29CQUNYLGFBQWE7b0JBQ2IsYUFBYTtvQkFDYixVQUFVO29CQUNWLFFBQVE7b0JBQ1IsWUFBWTtpQkFDZjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZCLE9BQU8sRUFBRTtvQkFDTCxlQUFlO29CQUNmLFlBQVk7b0JBQ1osYUFBYTtvQkFDYixXQUFXO29CQUNYLGFBQWE7b0JBQ2IsYUFBYTtvQkFDYixVQUFVO29CQUNWLFFBQVE7b0JBQ1IsWUFBWTtpQkFDZjtnQkFDRCxTQUFTLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG4gaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBDdXJyZW5jeVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuIGltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4gXG4gaW1wb3J0IHsgSW50ZWdlckN1cnJlbmN5IH0gZnJvbSAnLi9pbnRlZ2VyLWN1cnJlbmN5LnBpcGUnO1xuIGltcG9ydCB7IERlY29kZVVyaVBpcGUgfSBmcm9tICcuL2RlY29kZS11cmkucGlwZSc7XG4gaW1wb3J0IHsgRW5jb2RlVXJpUGlwZSB9IGZyb20gJy4vZW5jb2RlLXVyaS5waXBlJztcbiBpbXBvcnQgeyBTYWZlSHRtbFBpcGUgfSBmcm9tICcuL3NhZmUtaHRtbC5waXBlJztcbiBpbXBvcnQgeyBTYWZlU3R5bGVQaXBlIH0gZnJvbSAnLi9zYWZlLXN0eWxlLnBpcGUnO1xuIGltcG9ydCB7IFNhZmVVcmxQaXBlIH0gZnJvbSAnLi9zYWZlLXVybC5waXBlJztcbiBpbXBvcnQgeyBUeXBlb2ZQaXBlIH0gZnJvbSAnLi90eXBlb2YucGlwZSc7XG4gaW1wb3J0IHsgVHJpbVBpcGUgfSBmcm9tICcuL3RyaW0ucGlwZSc7XG4gaW1wb3J0IHsgVG9OdW1iZXJQaXBlIH0gZnJvbSAnLi90by1udW1iZXIucGlwZSc7XG4gXG4gQE5nTW9kdWxlKHtcbiAgICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgICBJbnRlZ2VyQ3VycmVuY3ksXG4gICAgICAgICBTYWZlSHRtbFBpcGUsXG4gICAgICAgICBTYWZlU3R5bGVQaXBlLFxuICAgICAgICAgU2FmZVVybFBpcGUsXG4gICAgICAgICBFbmNvZGVVcmlQaXBlLFxuICAgICAgICAgRGVjb2RlVXJpUGlwZSxcbiAgICAgICAgIFR5cGVvZlBpcGUsXG4gICAgICAgICBUcmltUGlwZSxcbiAgICAgICAgIFRvTnVtYmVyUGlwZSxcbiAgICAgXSxcbiAgICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gICAgIGV4cG9ydHM6IFtcbiAgICAgICAgIEludGVnZXJDdXJyZW5jeSxcbiAgICAgICAgIFNhZmVIdG1sUGlwZSxcbiAgICAgICAgIFNhZmVTdHlsZVBpcGUsXG4gICAgICAgICBTYWZlVXJsUGlwZSxcbiAgICAgICAgIEVuY29kZVVyaVBpcGUsXG4gICAgICAgICBEZWNvZGVVcmlQaXBlLFxuICAgICAgICAgVHlwZW9mUGlwZSxcbiAgICAgICAgIFRyaW1QaXBlLFxuICAgICAgICAgVG9OdW1iZXJQaXBlLFxuICAgICBdLFxuICAgICBwcm92aWRlcnM6IFtDdXJyZW5jeVBpcGVdLFxuIH0pXG4gZXhwb3J0IGNsYXNzIEN1c3RvbVBpcGVzTW9kdWxlIHt9XG4gIl19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @copyright FLYACTS GmbH 2019
|
|
3
|
+
*/
|
|
4
|
+
import { Pipe } from '@angular/core';
|
|
5
|
+
export class DecodeUriPipe {
|
|
6
|
+
transform(value, _args) {
|
|
7
|
+
return decodeURI(value);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
DecodeUriPipe.decorators = [
|
|
11
|
+
{ type: Pipe, args: [{
|
|
12
|
+
name: 'kmsDecodeUri',
|
|
13
|
+
},] }
|
|
14
|
+
];
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb2RlLXVyaS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3BpcGVzL2RlY29kZS11cmkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBS3BELE1BQU0sT0FBTyxhQUFhO0lBRXRCLFNBQVMsQ0FBQyxLQUFVLEVBQUUsS0FBVztRQUM3QixPQUFPLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOzs7WUFQSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLGNBQWM7YUFDdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBjb3B5cmlnaHQgRkxZQUNUUyBHbWJIIDIwMTlcbiAqL1xuXG5pbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAna21zRGVjb2RlVXJpJyxcbn0pXG5leHBvcnQgY2xhc3MgRGVjb2RlVXJpUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnksIF9hcmdzPzogYW55KTogYW55IHtcbiAgICAgICAgcmV0dXJuIGRlY29kZVVSSSh2YWx1ZSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @copyright FLYACTS GmbH 2019
|
|
3
|
+
*/
|
|
4
|
+
import { Pipe } from '@angular/core';
|
|
5
|
+
export class EncodeUriPipe {
|
|
6
|
+
transform(value, _args) {
|
|
7
|
+
return encodeURI(value);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
EncodeUriPipe.decorators = [
|
|
11
|
+
{ type: Pipe, args: [{
|
|
12
|
+
name: 'kmsEncodeUri',
|
|
13
|
+
},] }
|
|
14
|
+
];
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RlLXVyaS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3BpcGVzL2VuY29kZS11cmkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBS3BELE1BQU0sT0FBTyxhQUFhO0lBQ3RCLFNBQVMsQ0FBQyxLQUFVLEVBQUUsS0FBVztRQUM3QixPQUFPLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOzs7WUFOSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLGNBQWM7YUFDdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBjb3B5cmlnaHQgRkxZQUNUUyBHbWJIIDIwMTlcbiAqL1xuXG5pbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAna21zRW5jb2RlVXJpJyxcbn0pXG5leHBvcnQgY2xhc3MgRW5jb2RlVXJpUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBfYXJncz86IGFueSk6IGFueSB7XG4gICAgICAgIHJldHVybiBlbmNvZGVVUkkodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { CurrencyPipe } from '@angular/common';
|
|
5
|
+
import { Pipe } from '@angular/core';
|
|
6
|
+
export class IntegerCurrency {
|
|
7
|
+
constructor(cp) {
|
|
8
|
+
this.cp = cp;
|
|
9
|
+
}
|
|
10
|
+
transform(value, currencyCode, display, digitsInfo) {
|
|
11
|
+
const currencyPipeValue = this.cp.transform(value, currencyCode, display, digitsInfo);
|
|
12
|
+
if (currencyPipeValue) {
|
|
13
|
+
const convertedValue = currencyPipeValue.split(',')[0] + ' ' + currencyPipeValue.slice(-1);
|
|
14
|
+
return convertedValue;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
throw new Error("No value provided");
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
IntegerCurrency.decorators = [
|
|
22
|
+
{ type: Pipe, args: [{
|
|
23
|
+
name: 'kmsIntegerCurrency',
|
|
24
|
+
},] }
|
|
25
|
+
];
|
|
26
|
+
IntegerCurrency.ctorParameters = () => [
|
|
27
|
+
{ type: CurrencyPipe }
|
|
28
|
+
];
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdlci1jdXJyZW5jeS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3BpcGVzL2ludGVnZXItY3VycmVuY3kucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUtwRCxNQUFNLE9BQU8sZUFBZTtJQUN4QixZQUFvQixFQUFnQjtRQUFoQixPQUFFLEdBQUYsRUFBRSxDQUFjO0lBQUcsQ0FBQztJQUN4QyxTQUFTLENBQUMsS0FBVSxFQUFFLFlBQXFCLEVBQUUsT0FBaUIsRUFBRSxVQUFtQjtRQUMvRSxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQ3JGLElBQUksaUJBQWlCLEVBQUU7WUFDbkIsTUFBTSxjQUFjLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUMxRixPQUFPLGNBQWMsQ0FBQTtTQUN4QjthQUFNO1lBQ0gsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQ3hDO0lBQ0wsQ0FBQzs7O1lBYkosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxvQkFBb0I7YUFDN0I7OztZQUxRLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG5pbXBvcnQgeyBDdXJyZW5jeVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ2ttc0ludGVnZXJDdXJyZW5jeScsXG59KVxuZXhwb3J0IGNsYXNzIEludGVnZXJDdXJyZW5jeSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY3A6IEN1cnJlbmN5UGlwZSkge31cbiAgICB0cmFuc2Zvcm0odmFsdWU6IGFueSwgY3VycmVuY3lDb2RlPzogc3RyaW5nLCBkaXNwbGF5PzogYm9vbGVhbiwgZGlnaXRzSW5mbz86IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBjb25zdCBjdXJyZW5jeVBpcGVWYWx1ZSA9IHRoaXMuY3AudHJhbnNmb3JtKHZhbHVlLCBjdXJyZW5jeUNvZGUsIGRpc3BsYXksIGRpZ2l0c0luZm8pXG4gICAgICAgIGlmIChjdXJyZW5jeVBpcGVWYWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSBjdXJyZW5jeVBpcGVWYWx1ZS5zcGxpdCgnLCcpWzBdICsgJyAnICsgY3VycmVuY3lQaXBlVmFsdWUuc2xpY2UoLTEpXG4gICAgICAgICAgICByZXR1cm4gY29udmVydGVkVmFsdWVcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIk5vIHZhbHVlIHByb3ZpZGVkXCIpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @copyright FLYACTS GmbH 2019
|
|
3
|
+
*/
|
|
4
|
+
import { Pipe } from '@angular/core';
|
|
5
|
+
import { DomSanitizer } from '@angular/platform-browser';
|
|
6
|
+
export class SafeHtmlPipe {
|
|
7
|
+
constructor(sanitizer) {
|
|
8
|
+
this.sanitizer = sanitizer;
|
|
9
|
+
}
|
|
10
|
+
transform(html) {
|
|
11
|
+
return this.sanitizer.bypassSecurityTrustHtml(html);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
SafeHtmlPipe.decorators = [
|
|
15
|
+
{ type: Pipe, args: [{
|
|
16
|
+
name: 'kmsSafeHtml',
|
|
17
|
+
},] }
|
|
18
|
+
];
|
|
19
|
+
SafeHtmlPipe.ctorParameters = () => [
|
|
20
|
+
{ type: DomSanitizer }
|
|
21
|
+
];
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1odG1sLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvcGlwZXMvc2FmZS1odG1sLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFZLE1BQU0sMkJBQTJCLENBQUM7QUFLbkUsTUFBTSxPQUFPLFlBQVk7SUFDckIsWUFBb0IsU0FBdUI7UUFBdkIsY0FBUyxHQUFULFNBQVMsQ0FBYztJQUFJLENBQUM7SUFFaEQsU0FBUyxDQUFDLElBQVk7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hELENBQUM7OztZQVJKLElBQUksU0FBQztnQkFDRixJQUFJLEVBQUUsYUFBYTthQUN0Qjs7O1lBSlEsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGNvcHlyaWdodCBGTFlBQ1RTIEdtYkggMjAxOVxuICovXG5cbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdrbXNTYWZlSHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNhZmVIdG1sUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHsgfVxuXG4gICAgdHJhbnNmb3JtKGh0bWw6IHN0cmluZyk6IFNhZmVIdG1sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGh0bWwpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { Pipe } from '@angular/core';
|
|
5
|
+
import { DomSanitizer } from '@angular/platform-browser';
|
|
6
|
+
export class SafeStylePipe {
|
|
7
|
+
constructor(sanitizer) {
|
|
8
|
+
this.sanitizer = sanitizer;
|
|
9
|
+
}
|
|
10
|
+
transform(style) {
|
|
11
|
+
return this.sanitizer.bypassSecurityTrustStyle(style);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
SafeStylePipe.decorators = [
|
|
15
|
+
{ type: Pipe, args: [{
|
|
16
|
+
name: 'kmsSafeStyle',
|
|
17
|
+
},] }
|
|
18
|
+
];
|
|
19
|
+
SafeStylePipe.ctorParameters = () => [
|
|
20
|
+
{ type: DomSanitizer }
|
|
21
|
+
];
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1zdHlsZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3BpcGVzL3NhZmUtc3R5bGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQVcsTUFBTSwyQkFBMkIsQ0FBQztBQUtsRSxNQUFNLE9BQU8sYUFBYTtJQUN0QixZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO0lBQUksQ0FBQztJQUVoRCxTQUFTLENBQUMsS0FBYTtRQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQzs7O1lBUkosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxjQUFjO2FBQ3ZCOzs7WUFKUSxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAY29weXJpZ2h0IEtNUyBHbWJIXG4gKi9cblxuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAna21zU2FmZVN0eWxlJyxcbn0pXG5leHBvcnQgY2xhc3MgU2FmZVN0eWxlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHsgfVxuXG4gICAgdHJhbnNmb3JtKHN0eWxlOiBzdHJpbmcpOiBTYWZlVXJsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTdHlsZShzdHlsZSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { Pipe } from '@angular/core';
|
|
5
|
+
import { DomSanitizer } from '@angular/platform-browser';
|
|
6
|
+
export class SafeUrlPipe {
|
|
7
|
+
constructor(sanitizer) {
|
|
8
|
+
this.sanitizer = sanitizer;
|
|
9
|
+
}
|
|
10
|
+
transform(style) {
|
|
11
|
+
return this.sanitizer.bypassSecurityTrustUrl(style);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
SafeUrlPipe.decorators = [
|
|
15
|
+
{ type: Pipe, args: [{
|
|
16
|
+
name: 'kmsSafeSUrl',
|
|
17
|
+
},] }
|
|
18
|
+
];
|
|
19
|
+
SafeUrlPipe.ctorParameters = () => [
|
|
20
|
+
{ type: DomSanitizer }
|
|
21
|
+
];
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS11cmwucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi9waXBlcy9zYWZlLXVybC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBVyxNQUFNLDJCQUEyQixDQUFDO0FBS2xFLE1BQU0sT0FBTyxXQUFXO0lBQ3BCLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7SUFBRyxDQUFDO0lBRS9DLFNBQVMsQ0FBQyxLQUFhO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4RCxDQUFDOzs7WUFSSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLGFBQWE7YUFDdEI7OztZQUpRLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG5pbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdrbXNTYWZlU1VybCcsXG59KVxuZXhwb3J0IGNsYXNzIFNhZmVVcmxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICAgIHRyYW5zZm9ybShzdHlsZTogc3RyaW5nKTogU2FmZVVybCB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKHN0eWxlKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { Pipe } from '@angular/core';
|
|
5
|
+
export class ToNumberPipe {
|
|
6
|
+
transform(items) {
|
|
7
|
+
if (!items) {
|
|
8
|
+
return 0;
|
|
9
|
+
}
|
|
10
|
+
return parseInt(items, 10);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
ToNumberPipe.decorators = [
|
|
14
|
+
{ type: Pipe, args: [{
|
|
15
|
+
name: 'kmsToNumber',
|
|
16
|
+
pure: false
|
|
17
|
+
},] }
|
|
18
|
+
];
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG8tbnVtYmVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvcGlwZXMvdG8tbnVtYmVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQU9wRCxNQUFNLE9BQU8sWUFBWTtJQUNyQixTQUFTLENBQUMsS0FBVTtRQUNoQixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1IsT0FBTyxDQUFDLENBQUM7U0FDWjtRQUNELE9BQU8sUUFBUSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDOzs7WUFYSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLGFBQWE7Z0JBQ25CLElBQUksRUFBRSxLQUFLO2FBRWQiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG5pbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAna21zVG9OdW1iZXInLFxuICAgIHB1cmU6IGZhbHNlXG4gICAgXG59KVxuZXhwb3J0IGNsYXNzIFRvTnVtYmVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybShpdGVtczogYW55KTogYW55IHtcbiAgICAgICAgaWYgKCFpdGVtcykge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBhcnNlSW50KGl0ZW1zLCAxMCk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { Pipe } from "@angular/core";
|
|
5
|
+
export class TrimPipe {
|
|
6
|
+
transform(value) {
|
|
7
|
+
if (!value) {
|
|
8
|
+
return '';
|
|
9
|
+
}
|
|
10
|
+
return value.trim();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
TrimPipe.decorators = [
|
|
14
|
+
{ type: Pipe, args: [{ name: 'kmsTrim' },] }
|
|
15
|
+
];
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpbS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3BpcGVzL3RyaW0ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBR3BELE1BQU0sT0FBTyxRQUFRO0lBQ2pCLFNBQVMsQ0FBQyxLQUFVO1FBQ2hCLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDUixPQUFPLEVBQUUsQ0FBQztTQUNiO1FBRUQsT0FBTyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7O1lBUkosSUFBSSxTQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AUGlwZSh7IG5hbWU6ICdrbXNUcmltJyB9KVxuZXhwb3J0IGNsYXNzIFRyaW1QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHZhbHVlLnRyaW0oKTtcbiAgICB9XG59Il19
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
export class TypeofPipe {
|
|
3
|
+
transform(value) {
|
|
4
|
+
return typeof value;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
TypeofPipe.decorators = [
|
|
8
|
+
{ type: Pipe, args: [{
|
|
9
|
+
name: 'kmsTypeOf',
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZW9mLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvcGlwZXMvdHlwZW9mLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFLcEQsTUFBTSxPQUFPLFVBQVU7SUFDbkIsU0FBUyxDQUFDLEtBQVU7UUFDaEIsT0FBTyxPQUFPLEtBQUssQ0FBQztJQUN4QixDQUFDOzs7WUFOSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLFdBQVc7YUFDcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAna21zVHlwZU9mJyxcbn0pXG5leHBvcnQgY2xhc3MgVHlwZW9mUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTtcbiAgICB9XG59XG4iXX0=
|