ngx-techlify-core 11.3.8 → 11.4.2
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/bundles/ngx-techlify-core.umd.js +432 -253
- package/bundles/ngx-techlify-core.umd.js.map +1 -1
- package/bundles/ngx-techlify-core.umd.min.js +2 -2
- package/bundles/ngx-techlify-core.umd.min.js.map +1 -1
- package/esm2015/lib/audit-log/audit-log-view/audit-log-view.component.js +7 -9
- package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.component.js +7 -9
- package/esm2015/lib/import-csv/data-import/data-import.component.js +18 -0
- package/esm2015/lib/import-csv/failed-items-list/failed-items-list.component.js +33 -0
- package/esm2015/lib/import-csv/field-mapping/field-mapping.component.js +148 -0
- package/esm2015/lib/import-csv/import-csv-config.js +2 -0
- package/esm2015/lib/import-csv/import-csv.component.js +143 -59
- package/esm2015/lib/import-csv/import-csv.module.js +32 -13
- package/esm2015/lib/import-csv/import-history-list/import-history-list.component.js +70 -0
- package/esm2015/lib/import-csv/import-success/import-success.component.js +19 -0
- package/esm2015/lib/searchable-selector/searchable-selector.component.js +39 -7
- package/esm2015/lib/techlify-feature/techlify-feature-enabled.directive.js +3 -2
- package/esm2015/lib/techlify-feature/techlify-feature-listing.component.js +5 -2
- package/esm2015/lib/timeline-filter/timeline-filter.component.js +1 -2
- package/esm2015/ngx-techlify-core.js +11 -4
- package/esm2015/public-api.js +2 -9
- package/fesm2015/ngx-techlify-core.js +387 -206
- package/fesm2015/ngx-techlify-core.js.map +1 -1
- package/lib/import-csv/data-import/data-import.component.d.ts +6 -0
- package/lib/import-csv/failed-items-list/failed-items-list.component.d.ts +12 -0
- package/lib/import-csv/{import-items/import-items.component.d.ts → field-mapping/field-mapping.component.d.ts} +11 -7
- package/lib/import-csv/import-csv-config.d.ts +17 -0
- package/lib/import-csv/import-csv.component.d.ts +17 -11
- package/lib/import-csv/import-history-list/import-history-list.component.d.ts +20 -0
- package/lib/import-csv/import-success/import-success.component.d.ts +8 -0
- package/lib/searchable-selector/searchable-selector.component.d.ts +6 -0
- package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts +2 -1
- package/lib/techlify-feature/techlify-feature-listing.component.d.ts +4 -1
- package/ngx-techlify-core.d.ts +10 -3
- package/ngx-techlify-core.metadata.json +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -8
- package/esm2015/lib/import-csv/failed-items/failed-items-routing.module.js +0 -12
- package/esm2015/lib/import-csv/failed-items/failed-items.component.js +0 -23
- package/esm2015/lib/import-csv/failed-items/failed-items.module.js +0 -21
- package/esm2015/lib/import-csv/import-config.js +0 -3
- package/esm2015/lib/import-csv/import-csv-routing.module.js +0 -12
- package/esm2015/lib/import-csv/import-items/import-items-routing.module.js +0 -12
- package/esm2015/lib/import-csv/import-items/import-items.component.js +0 -139
- package/esm2015/lib/import-csv/import-items/import-items.module.js +0 -23
- package/lib/import-csv/failed-items/failed-items-routing.module.d.ts +0 -2
- package/lib/import-csv/failed-items/failed-items.component.d.ts +0 -8
- package/lib/import-csv/failed-items/failed-items.module.d.ts +0 -2
- package/lib/import-csv/import-config.d.ts +0 -5
- package/lib/import-csv/import-csv-routing.module.d.ts +0 -2
- package/lib/import-csv/import-items/import-items-routing.module.d.ts +0 -2
- package/lib/import-csv/import-items/import-items.module.d.ts +0 -2
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -73,15 +73,8 @@ export * from './lib/audit-log/audit-log.module';
|
|
|
73
73
|
export * from './lib/audit-log/audit-log-routing.module';
|
|
74
74
|
export * from './lib/date-validator';
|
|
75
75
|
export * from './lib/import-csv/import-csv.module';
|
|
76
|
-
export * from './lib/import-csv/import-csv-routing.module';
|
|
77
76
|
export * from './lib/import-csv/import-csv.component';
|
|
78
|
-
export * from './lib/import-csv/import-config';
|
|
79
|
-
export * from './lib/import-csv/import-items/import-items-routing.module';
|
|
80
|
-
export * from './lib/import-csv/import-items/import-items.component';
|
|
81
|
-
export * from './lib/import-csv/import-items/import-items.module';
|
|
82
|
-
export * from './lib/import-csv/failed-items/failed-items-routing.module';
|
|
83
|
-
export * from './lib/import-csv/failed-items/failed-items.component';
|
|
84
|
-
export * from './lib/import-csv/failed-items/failed-items.module';
|
|
77
|
+
export * from './lib/import-csv/import-csv-config';
|
|
85
78
|
export * from './lib/login-history-for-user/login-history-for-user.module';
|
|
86
79
|
export * from './lib/login-history-for-user/login-history-for-user-routing.module';
|
|
87
80
|
export * from './lib/login-history-for-user/login-history-for-user.component';
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { RouterModule } from '@angular/router';
|
|
3
|
-
const routes = [];
|
|
4
|
-
export class FailedItemsRoutingModule {
|
|
5
|
-
}
|
|
6
|
-
FailedItemsRoutingModule.decorators = [
|
|
7
|
-
{ type: NgModule, args: [{
|
|
8
|
-
imports: [RouterModule.forChild(routes)],
|
|
9
|
-
exports: [RouterModule]
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbGVkLWl0ZW1zLXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9pbXBvcnQtY3N2L2ZhaWxlZC1pdGVtcy9mYWlsZWQtaXRlbXMtcm91dGluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQVUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkQsTUFBTSxNQUFNLEdBQVcsRUFBRSxDQUFDO0FBTTFCLE1BQU0sT0FBTyx3QkFBd0I7OztZQUpwQyxRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDeEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2FBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlcywgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgRmFpbGVkSXRlbXNSb3V0aW5nTW9kdWxlIHsgfVxuIl19
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
export class FailedItemsComponent {
|
|
3
|
-
constructor() { }
|
|
4
|
-
ngOnInit() {
|
|
5
|
-
}
|
|
6
|
-
isValidDate(d) {
|
|
7
|
-
var date = new Date(d);
|
|
8
|
-
return date instanceof Date && !isNaN(date.getTime());
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
FailedItemsComponent.decorators = [
|
|
12
|
-
{ type: Component, args: [{
|
|
13
|
-
selector: 'app-failed-items',
|
|
14
|
-
template: "<div *ngIf=\"failedItems.length\" class=\"mt-4\">\n <div fxLayout fxLayoutAlign=\"center\">\n <h4>Failed Items</h4>\n </div>\n <div fxLayout=\"row wrap\" fxLayoutAlign=\"center\">\n <table class=\"table table-bordered table-striped table-hover table-sm\" fxFlex=\"80%\">\n <thead>\n <tr>\n <th>#</th>\n <th *ngFor=\"let field of selectedFields;\">{{field?.label}}</th>\n <th class=\"text-danger\">Error</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let timesheet of failedItems; let i=index\">\n <tr>\n <td>{{i + 1}}</td>\n <td *ngFor=\"let field of selectedFields;\">\n <ng-container *ngIf=\"(field.propertyType == 'date' || field.propertyType == 'dateTime')\n &&isValidDate(timesheet[field.property]);else elseProperty;\">\n {{ timesheet[field.property] | date:'mediumDate' }}\n </ng-container>\n <ng-template #elseProperty>\n {{ timesheet[field.property] }}\n </ng-template>\n </td>\n <td class=\"text-danger\">\n {{timesheet?.error}}\n </td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n </div>\n</div>",
|
|
15
|
-
styles: [""]
|
|
16
|
-
},] }
|
|
17
|
-
];
|
|
18
|
-
FailedItemsComponent.ctorParameters = () => [];
|
|
19
|
-
FailedItemsComponent.propDecorators = {
|
|
20
|
-
failedItems: [{ type: Input }],
|
|
21
|
-
selectedFields: [{ type: Input }]
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbGVkLWl0ZW1zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9mYWlsZWQtaXRlbXMvZmFpbGVkLWl0ZW1zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQU96RCxNQUFNLE9BQU8sb0JBQW9CO0lBSS9CLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDO0lBRUQsV0FBVyxDQUFDLENBQU07UUFDaEIsSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkIsT0FBTyxJQUFJLFlBQVksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7OztZQWpCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsMmpEQUE0Qzs7YUFFN0M7Ozs7MEJBR0UsS0FBSzs2QkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1mYWlsZWQtaXRlbXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmFpbGVkLWl0ZW1zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmFpbGVkLWl0ZW1zLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRmFpbGVkSXRlbXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIGZhaWxlZEl0ZW1zOiBhbnlbXTtcbiAgQElucHV0KCkgc2VsZWN0ZWRGaWVsZHM6IGFueVtdO1xuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgaXNWYWxpZERhdGUoZDogYW55KTogYm9vbGVhbiB7XG4gICAgdmFyIGRhdGUgPSBuZXcgRGF0ZShkKTtcbiAgICByZXR1cm4gZGF0ZSBpbnN0YW5jZW9mIERhdGUgJiYgIWlzTmFOKGRhdGUuZ2V0VGltZSgpKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { FailedItemsRoutingModule } from './failed-items-routing.module';
|
|
4
|
-
import { FailedItemsComponent } from './failed-items.component';
|
|
5
|
-
import { MaterialModule } from '../../material.module';
|
|
6
|
-
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
7
|
-
export class FailedItemsModule {
|
|
8
|
-
}
|
|
9
|
-
FailedItemsModule.decorators = [
|
|
10
|
-
{ type: NgModule, args: [{
|
|
11
|
-
declarations: [FailedItemsComponent],
|
|
12
|
-
imports: [
|
|
13
|
-
CommonModule,
|
|
14
|
-
MaterialModule,
|
|
15
|
-
FlexLayoutModule,
|
|
16
|
-
FailedItemsRoutingModule
|
|
17
|
-
],
|
|
18
|
-
exports: [FailedItemsComponent]
|
|
19
|
-
},] }
|
|
20
|
-
];
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbGVkLWl0ZW1zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9mYWlsZWQtaXRlbXMvZmFpbGVkLWl0ZW1zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFheEQsTUFBTSxPQUFPLGlCQUFpQjs7O1lBVjdCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDcEMsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osY0FBYztvQkFDZCxnQkFBZ0I7b0JBQ2hCLHdCQUF3QjtpQkFDekI7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7YUFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgRmFpbGVkSXRlbXNSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9mYWlsZWQtaXRlbXMtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgRmFpbGVkSXRlbXNDb21wb25lbnQgfSBmcm9tICcuL2ZhaWxlZC1pdGVtcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuLi8uLi9tYXRlcmlhbC5tb2R1bGUnO1xuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtGYWlsZWRJdGVtc0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgRmxleExheW91dE1vZHVsZSxcbiAgICBGYWlsZWRJdGVtc1JvdXRpbmdNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW0ZhaWxlZEl0ZW1zQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBGYWlsZWRJdGVtc01vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export class ImportConfig {
|
|
2
|
-
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9pbXBvcnQtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxZQUFZO0NBSXhCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEltcG9ydENvbmZpZyB7XG4gICAgcG9zdFVybDogc3RyaW5nO1xuICAgIHByb3BlcnRpZXM6IGFueVtdO1xuICAgIGltcG9ydFR5cGU6IHN0cmluZztcbn0iXX0=
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { RouterModule } from '@angular/router';
|
|
3
|
-
const routes = [];
|
|
4
|
-
export class ImportCsvRoutingModule {
|
|
5
|
-
}
|
|
6
|
-
ImportCsvRoutingModule.decorators = [
|
|
7
|
-
{ type: NgModule, args: [{
|
|
8
|
-
imports: [RouterModule.forChild(routes)],
|
|
9
|
-
exports: [RouterModule]
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWNzdi1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9pbXBvcnQtY3N2LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE1BQU0sTUFBTSxHQUFXLEVBQUUsQ0FBQztBQU0xQixNQUFNLE9BQU8sc0JBQXNCOzs7WUFKbEMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3hDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQzthQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW107XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQocm91dGVzKV0sXG4gIGV4cG9ydHM6IFtSb3V0ZXJNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEltcG9ydENzdlJvdXRpbmdNb2R1bGUgeyB9XG4iXX0=
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { RouterModule } from '@angular/router';
|
|
3
|
-
const routes = [];
|
|
4
|
-
export class ImportItemsRoutingModule {
|
|
5
|
-
}
|
|
6
|
-
ImportItemsRoutingModule.decorators = [
|
|
7
|
-
{ type: NgModule, args: [{
|
|
8
|
-
imports: [RouterModule.forChild(routes)],
|
|
9
|
-
exports: [RouterModule]
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWl0ZW1zLXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9pbXBvcnQtY3N2L2ltcG9ydC1pdGVtcy9pbXBvcnQtaXRlbXMtcm91dGluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQVUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkQsTUFBTSxNQUFNLEdBQVcsRUFBRSxDQUFDO0FBTTFCLE1BQU0sT0FBTyx3QkFBd0I7OztZQUpwQyxRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDeEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2FBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlcywgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgSW1wb3J0SXRlbXNSb3V0aW5nTW9kdWxlIHsgfVxuIl19
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { FormBuilder, FormControl, Validators } from '@angular/forms';
|
|
3
|
-
import { FormValidatorService } from '../../core/form-validator.service';
|
|
4
|
-
const errorMessages = {
|
|
5
|
-
property: {
|
|
6
|
-
required: "Property is required",
|
|
7
|
-
unavailable: "Duplicate entry"
|
|
8
|
-
},
|
|
9
|
-
};
|
|
10
|
-
export class ImportItemsComponent {
|
|
11
|
-
constructor(fb, formValidatorService, changeDetectorRef) {
|
|
12
|
-
this.fb = fb;
|
|
13
|
-
this.formValidatorService = formValidatorService;
|
|
14
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
15
|
-
this.firstDataArray = [];
|
|
16
|
-
this.properties = [];
|
|
17
|
-
this.onSave = new EventEmitter();
|
|
18
|
-
this.createImportMappingForm();
|
|
19
|
-
}
|
|
20
|
-
ngOnInit() {
|
|
21
|
-
this.properties = this.importConfig.properties;
|
|
22
|
-
this.mapOutDataColumns(this.data[0]);
|
|
23
|
-
}
|
|
24
|
-
createImportMappingForm() {
|
|
25
|
-
this.importMappingForm = this.fb.group({
|
|
26
|
-
fields: this.fb.array([]),
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
get fieldsArray() {
|
|
30
|
-
return this.importMappingForm.get('fields');
|
|
31
|
-
}
|
|
32
|
-
createField(field) {
|
|
33
|
-
var fieldForm = this.fb.group({
|
|
34
|
-
id: new FormControl(field.id),
|
|
35
|
-
label: new FormControl(field.label),
|
|
36
|
-
value: new FormControl(field.value),
|
|
37
|
-
property: new FormControl(field.property, Validators.compose([
|
|
38
|
-
Validators.required
|
|
39
|
-
])),
|
|
40
|
-
propertyType: new FormControl(field.propertyType)
|
|
41
|
-
});
|
|
42
|
-
return fieldForm;
|
|
43
|
-
}
|
|
44
|
-
mapOutDataColumns(data) {
|
|
45
|
-
for (var key in data) {
|
|
46
|
-
if (data.hasOwnProperty(key)) {
|
|
47
|
-
var dataValue = {
|
|
48
|
-
id: '',
|
|
49
|
-
label: key,
|
|
50
|
-
value: data[key],
|
|
51
|
-
property: '',
|
|
52
|
-
propertyType: ''
|
|
53
|
-
};
|
|
54
|
-
this.firstDataArray.push(dataValue);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
this.firstDataArray.forEach((element, mainIndex) => {
|
|
58
|
-
element.id = mainIndex;
|
|
59
|
-
this.properties.find((property) => {
|
|
60
|
-
if (property.label.toLowerCase().includes(element.label.toLowerCase())) {
|
|
61
|
-
element.property = property.value;
|
|
62
|
-
element.propertyType = property.type;
|
|
63
|
-
return element;
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
submit() {
|
|
69
|
-
this.importMappingForm.markAllAsTouched();
|
|
70
|
-
if (!this.importMappingForm.valid) {
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
this.onSave.emit(this.importMappingForm.value);
|
|
74
|
-
}
|
|
75
|
-
/** Method to evaluate form fields*/
|
|
76
|
-
isFieldValid(field, form) {
|
|
77
|
-
return this.formValidatorService.isFieldValid(field, form);
|
|
78
|
-
}
|
|
79
|
-
/** Method to find error in form fields*/
|
|
80
|
-
getErrorMessage(field, form) {
|
|
81
|
-
return this.formValidatorService.getErrorMessage(field, form, errorMessages);
|
|
82
|
-
}
|
|
83
|
-
ngAfterViewInit() {
|
|
84
|
-
//Called after ngAfterContentInit when the component's view has been initialized. Applies to components only.
|
|
85
|
-
//Add 'implements AfterViewInit' to the class.
|
|
86
|
-
setTimeout((_) => {
|
|
87
|
-
this.firstDataArray.forEach((element) => {
|
|
88
|
-
this.fieldsArray.push(this.createField(element));
|
|
89
|
-
});
|
|
90
|
-
this.changeDetectorRef.detectChanges();
|
|
91
|
-
}, 500);
|
|
92
|
-
}
|
|
93
|
-
updatePropertyType(event, index) {
|
|
94
|
-
var field = this.properties.find((field) => field.value == event.value);
|
|
95
|
-
if (field) {
|
|
96
|
-
this.fieldsArray.controls[index].get('propertyType').setValue(field.type);
|
|
97
|
-
this.uniqueValidator();
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
uniqueValidator() {
|
|
101
|
-
this.fieldsArray.value.forEach((field, index) => {
|
|
102
|
-
var control = this.fieldsArray.controls[index].get('property');
|
|
103
|
-
const isNameUnique = this.fieldsArray.value.find((propertyData) => propertyData.property === control.value
|
|
104
|
-
&& propertyData.id != this.fieldsArray.controls[index].get('id').value)
|
|
105
|
-
? false
|
|
106
|
-
: true;
|
|
107
|
-
if (!isNameUnique) {
|
|
108
|
-
control.setErrors({ unavailable: true });
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
control.setErrors(null);
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
removeField(index) {
|
|
116
|
-
if (index == -1) {
|
|
117
|
-
return;
|
|
118
|
-
}
|
|
119
|
-
this.fieldsArray.removeAt(index);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
ImportItemsComponent.decorators = [
|
|
123
|
-
{ type: Component, args: [{
|
|
124
|
-
selector: 'app-import-items',
|
|
125
|
-
template: "<div fxLayout=\"column\" class=\"mt-2\">\n <p class=\"text-center secondary-color\">Map your column headers in your file to our properties</p>\n <form [formGroup]=\"importMappingForm\" (ngSubmit)=\"submit()\" fxLayout=\"column\">\n <table style=\"width: 100%;\" class=\"table table-sm table-striped\">\n <tr class=\"table-header-row\">\n <th>Column Headers From File</th>\n <th>Preview Information</th>\n <th>Property</th>\n </tr>\n <ng-container formArrayName=\"fields\">\n <tr *ngFor=\"let field of fieldsArray.controls; let i=index\" [formGroupName]=\"i\">\n <td>{{ field.get('label').value }}</td>\n <td>{{ field.get('value').value }}</td>\n <td>\n <mat-form-field fxFlex=\"100%\" appearance=\"outline\">\n <mat-label>Select Property</mat-label>\n <mat-select placeholder=\"Select Property\" formControlName=\"property\" required\n (selectionChange)=\"updatePropertyType($event, i)\">\n <mat-option *ngFor=\"let property of properties\" [value]=\"property.value\">\n {{property.label}}\n </mat-option>\n </mat-select>\n <mat-error *ngIf=\"isFieldValid('property', fieldsArray.controls[i])\">\n {{getErrorMessage('property', fieldsArray.controls[i])}}\n </mat-error>\n </mat-form-field>\n <button type=\"button\" mat-icon-button (click)=\"removeField(i)\" *ngIf=\"fieldsArray.length > 1\"\n matTooltip=\"Remove column\" matTooltipPosition=\"right\">\n <mat-icon class=\"text-danger\">remove_circle</mat-icon>\n </button>\n </td>\n </tr>\n </ng-container>\n </table>\n\n <div class=\"mt-1\" fxFlex=\"100%\" fxLayoutAlign=\"end\">\n <button mat-stroked-button color=\"primary\" class=\"mt-2\" type=\"submit\">\n Next\n <mat-icon>\n chevron_right\n </mat-icon>\n </button>\n </div>\n </form>\n</div>",
|
|
126
|
-
styles: ["table{width:100%}td,th{padding:1%}.table-header-row{background-color:#e6e4e4;color:#000;font-weight:bolder}"]
|
|
127
|
-
},] }
|
|
128
|
-
];
|
|
129
|
-
ImportItemsComponent.ctorParameters = () => [
|
|
130
|
-
{ type: FormBuilder },
|
|
131
|
-
{ type: FormValidatorService },
|
|
132
|
-
{ type: ChangeDetectorRef }
|
|
133
|
-
];
|
|
134
|
-
ImportItemsComponent.propDecorators = {
|
|
135
|
-
data: [{ type: Input }],
|
|
136
|
-
importConfig: [{ type: Input }],
|
|
137
|
-
onSave: [{ type: Output }]
|
|
138
|
-
};
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWl0ZW1zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9pbXBvcnQtaXRlbXMvaW1wb3J0LWl0ZW1zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBYSxXQUFXLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBR3pFLE1BQU0sYUFBYSxHQUFRO0lBQ3pCLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsV0FBVyxFQUFFLGlCQUFpQjtLQUMvQjtDQUNGLENBQUM7QUFPRixNQUFNLE9BQU8sb0JBQW9CO0lBUS9CLFlBQ1UsRUFBZSxFQUNmLG9CQUEwQyxFQUMxQyxpQkFBb0M7UUFGcEMsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVA5QyxtQkFBYyxHQUFVLEVBQUUsQ0FBQztRQUMzQixlQUFVLEdBQVUsRUFBRSxDQUFDO1FBQ2IsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFPcEMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDO1FBQy9DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxD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QUFDO1lBQy9ELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLFlBQWlCLEVBQUUsRUFBRSxDQUNyRSxZQUFZLENBQUMsUUFBUSxLQUFLLE9BQU8sQ0FBQyxLQUFLO21CQUNwQyxZQUFZLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQ3ZFO2dCQUNDLENBQUMsQ0FBQyxLQUFLO2dCQUNQLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDVCxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNqQixPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7YUFDMUM7aUJBQ0k7Z0JBQ0gsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN6QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQ2YsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7O1lBMUlGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixxNkVBQTRDOzthQUU3Qzs7O1lBZm1CLFdBQVc7WUFDdEIsb0JBQW9CO1lBRnBCLGlCQUFpQjs7O21CQW1CdkIsS0FBSzsyQkFDTCxLQUFLO3FCQUdMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1WYWxpZGF0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9mb3JtLXZhbGlkYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IEltcG9ydENvbmZpZyB9IGZyb20gJy4uL2ltcG9ydC1jb25maWcnO1xuXG5jb25zdCBlcnJvck1lc3NhZ2VzOiBhbnkgPSB7XG4gIHByb3BlcnR5OiB7XG4gICAgcmVxdWlyZWQ6IFwiUHJvcGVydHkgaXMgcmVxdWlyZWRcIixcbiAgICB1bmF2YWlsYWJsZTogXCJEdXBsaWNhdGUgZW50cnlcIlxuICB9LFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWltcG9ydC1pdGVtcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbXBvcnQtaXRlbXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbXBvcnQtaXRlbXMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJbXBvcnRJdGVtc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGltcG9ydE1hcHBpbmdGb3JtOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIGRhdGE6IGFueVtdO1xuICBASW5wdXQoKSBpbXBvcnRDb25maWc6IEltcG9ydENvbmZpZztcbiAgZmlyc3REYXRhQXJyYXk6IGFueVtdID0gW107XG4gIHByb3BlcnRpZXM6IGFueVtdID0gW107XG4gIEBPdXRwdXQoKSBvblNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBmb3JtVmFsaWRhdG9yU2VydmljZTogRm9ybVZhbGlkYXRvclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5jcmVhdGVJbXBvcnRNYXBwaW5nRm9ybSgpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5wcm9wZXJ0aWVzID0gdGhpcy5pbXBvcnRDb25maWcucHJvcGVydGllcztcbiAgICB0aGlzLm1hcE91dERhdGFDb2x1bW5zKHRoaXMuZGF0YVswXSk7XG4gIH1cblxuICBjcmVhdGVJbXBvcnRNYXBwaW5nRm9ybSgpIHtcbiAgICB0aGlzLmltcG9ydE1hcHBpbmdGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBmaWVsZHM6IHRoaXMuZmIuYXJyYXkoW10pLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGZpZWxkc0FycmF5KCk6IEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuaW1wb3J0TWFwcGluZ0Zvcm0uZ2V0KCdmaWVsZHMnKSBhcyBGb3JtQXJyYXk7XG4gIH1cblxuICBjcmVhdGVGaWVsZChmaWVsZDogYW55KTogRm9ybUdyb3VwIHtcbiAgICB2YXIgZmllbGRGb3JtOiBGb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGlkOiBuZXcgRm9ybUNvbnRyb2woZmllbGQuaWQpLFxuICAgICAgbGFiZWw6IG5ldyBGb3JtQ29udHJvbChmaWVsZC5sYWJlbCksXG4gICAgICB2YWx1ZTogbmV3IEZvcm1Db250cm9sKGZpZWxkLnZhbHVlKSxcbiAgICAgIHByb3BlcnR5OiBuZXcgRm9ybUNvbnRyb2woZmllbGQucHJvcGVydHksXG4gICAgICAgIFZhbGlkYXRvcnMuY29tcG9zZShcbiAgICAgICAgICBbXG4gICAgICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkXG4gICAgICAgICAgXVxuICAgICAgICApXG4gICAgICApLFxuICAgICAgcHJvcGVydHlUeXBlOiBuZXcgRm9ybUNvbnRyb2woZmllbGQucHJvcGVydHlUeXBlKVxuICAgIH0pO1xuICAgIHJldHVybiBmaWVsZEZvcm07XG4gIH1cblxuICBtYXBPdXREYXRhQ29sdW1ucyhkYXRhOiBhbnlbXSkge1xuICAgIGZvciAodmFyIGtleSBpbiBkYXRhKSB7XG4gICAgICBpZiAoZGF0YS5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIHZhciBkYXRhVmFsdWUgPSB7XG4gICAgICAgICAgaWQ6ICcnLFxuICAgICAgICAgIGxhYmVsOiBrZXksXG4gICAgICAgICAgdmFsdWU6IGRhdGFba2V5XSxcbiAgICAgICAgICBwcm9wZXJ0eTogJycsXG4gICAgICAgICAgcHJvcGVydHlUeXBlOiAnJ1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLmZpcnN0RGF0YUFycmF5LnB1c2goZGF0YVZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5maXJzdERhdGFBcnJheS5mb3JFYWNoKChlbGVtZW50OiBhbnksIG1haW5JbmRleDogYW55KSA9PiB7XG4gICAgICBlbGVtZW50LmlkID0gbWFpbkluZGV4O1xuICAgICAgdGhpcy5wcm9wZXJ0aWVzLmZpbmQoKHByb3BlcnR5OiBhbnkpID0+IHtcbiAgICAgICAgaWYgKHByb3BlcnR5LmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZWxlbWVudC5sYWJlbC50b0xvd2VyQ2FzZSgpKSkge1xuICAgICAgICAgIGVsZW1lbnQucHJvcGVydHkgPSBwcm9wZXJ0eS52YWx1ZTtcbiAgICAgICAgICBlbGVtZW50LnByb3BlcnR5VHlwZSA9IHByb3BlcnR5LnR5cGU7XG4gICAgICAgICAgcmV0dXJuIGVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgc3VibWl0KCkge1xuICAgIHRoaXMuaW1wb3J0TWFwcGluZ0Zvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgIGlmICghdGhpcy5pbXBvcnRNYXBwaW5nRm9ybS52YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9uU2F2ZS5lbWl0KHRoaXMuaW1wb3J0TWFwcGluZ0Zvcm0udmFsdWUpO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0byBldmFsdWF0ZSBmb3JtIGZpZWxkcyovXG4gIGlzRmllbGRWYWxpZChmaWVsZDogc3RyaW5nLCBmb3JtOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtVmFsaWRhdG9yU2VydmljZS5pc0ZpZWxkVmFsaWQoZmllbGQsIGZvcm0pO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0byBmaW5kIGVycm9yIGluIGZvcm0gZmllbGRzKi9cbiAgZ2V0RXJyb3JNZXNzYWdlKGZpZWxkOiBzdHJpbmcsIGZvcm06IGFueSkge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmdldEVycm9yTWVzc2FnZShmaWVsZCwgZm9ybSwgZXJyb3JNZXNzYWdlcyk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgLy9DYWxsZWQgYWZ0ZXIgbmdBZnRlckNvbnRlbnRJbml0IHdoZW4gdGhlIGNvbXBvbmVudCdzIHZpZXcgaGFzIGJlZW4gaW5pdGlhbGl6ZWQuIEFwcGxpZXMgdG8gY29tcG9uZW50cyBvbmx5LlxuICAgIC8vQWRkICdpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQnIHRvIHRoZSBjbGFzcy5cbiAgICBzZXRUaW1lb3V0KChfOiBhbnkpID0+IHtcbiAgICAgIHRoaXMuZmlyc3REYXRhQXJyYXkuZm9yRWFjaCgoZWxlbWVudDogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuZmllbGRzQXJyYXkucHVzaCh0aGlzLmNyZWF0ZUZpZWxkKGVsZW1lbnQpKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSwgNTAwKTtcbiAgfVxuXG4gIHVwZGF0ZVByb3BlcnR5VHlwZShldmVudDogYW55LCBpbmRleDogYW55KTogdm9pZCB7XG4gICAgdmFyIGZpZWxkID0gdGhpcy5wcm9wZXJ0aWVzLmZpbmQoKGZpZWxkOiBhbnkpID0+IGZpZWxkLnZhbHVlID09IGV2ZW50LnZhbHVlKTtcbiAgICBpZiAoZmllbGQpIHtcbiAgICAgIHRoaXMuZmllbGRzQXJyYXkuY29udHJvbHNbaW5kZXhdLmdldCgncHJvcGVydHlUeXBlJykuc2V0VmFsdWUoZmllbGQudHlwZSk7XG4gICAgICB0aGlzLnVuaXF1ZVZhbGlkYXRvcigpO1xuICAgIH1cbiAgfVxuXG4gIHVuaXF1ZVZhbGlkYXRvcigpIHtcbiAgICB0aGlzLmZpZWxkc0FycmF5LnZhbHVlLmZvckVhY2goKGZpZWxkOiBhbnksIGluZGV4OiBhbnkpID0+IHtcbiAgICAgIHZhciBjb250cm9sID0gdGhpcy5maWVsZHNBcnJheS5jb250cm9sc1tpbmRleF0uZ2V0KCdwcm9wZXJ0eScpO1xuICAgICAgY29uc3QgaXNOYW1lVW5pcXVlID0gdGhpcy5maWVsZHNBcnJheS52YWx1ZS5maW5kKChwcm9wZXJ0eURhdGE6IGFueSkgPT5cbiAgICAgICAgcHJvcGVydHlEYXRhLnByb3BlcnR5ID09PSBjb250cm9sLnZhbHVlXG4gICAgICAgICYmIHByb3BlcnR5RGF0YS5pZCAhPSB0aGlzLmZpZWxkc0FycmF5LmNvbnRyb2xzW2luZGV4XS5nZXQoJ2lkJykudmFsdWVcbiAgICAgIClcbiAgICAgICAgPyBmYWxzZVxuICAgICAgICA6IHRydWU7XG4gICAgICBpZiAoIWlzTmFtZVVuaXF1ZSkge1xuICAgICAgICBjb250cm9sLnNldEVycm9ycyh7IHVuYXZhaWxhYmxlOiB0cnVlIH0pO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlRmllbGQoaW5kZXg6IG51bWJlcikge1xuICAgIGlmIChpbmRleCA9PSAtMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpZWxkc0FycmF5LnJlbW92ZUF0KGluZGV4KTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ImportItemsRoutingModule } from './import-items-routing.module';
|
|
4
|
-
import { ImportItemsComponent } from './import-items.component';
|
|
5
|
-
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
6
|
-
import { MaterialModule } from '../../material.module';
|
|
7
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
8
|
-
export class ImportItemsModule {
|
|
9
|
-
}
|
|
10
|
-
ImportItemsModule.decorators = [
|
|
11
|
-
{ type: NgModule, args: [{
|
|
12
|
-
declarations: [ImportItemsComponent],
|
|
13
|
-
imports: [
|
|
14
|
-
CommonModule,
|
|
15
|
-
FlexLayoutModule,
|
|
16
|
-
MaterialModule,
|
|
17
|
-
ReactiveFormsModule,
|
|
18
|
-
ImportItemsRoutingModule
|
|
19
|
-
],
|
|
20
|
-
exports: [ImportItemsComponent]
|
|
21
|
-
},] }
|
|
22
|
-
];
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWl0ZW1zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9pbXBvcnQtaXRlbXMvaW1wb3J0LWl0ZW1zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFjckQsTUFBTSxPQUFPLGlCQUFpQjs7O1lBWDdCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDcEMsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osZ0JBQWdCO29CQUNoQixjQUFjO29CQUNkLG1CQUFtQjtvQkFDbkIsd0JBQXdCO2lCQUN6QjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzthQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBJbXBvcnRJdGVtc1JvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2ltcG9ydC1pdGVtcy1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBJbXBvcnRJdGVtc0NvbXBvbmVudCB9IGZyb20gJy4vaW1wb3J0LWl0ZW1zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuLi8uLi9tYXRlcmlhbC5tb2R1bGUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtJbXBvcnRJdGVtc0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRmxleExheW91dE1vZHVsZSxcbiAgICBNYXRlcmlhbE1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEltcG9ydEl0ZW1zUm91dGluZ01vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbSW1wb3J0SXRlbXNDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEltcG9ydEl0ZW1zTW9kdWxlIHsgfVxuIl19
|