@formio/angular 5.5.0-rc.9 → 6.0.0-rc.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/FormioBaseComponent.d.ts +2 -1
- package/FormioBaseComponent.d.ts.map +1 -1
- package/auth/auth.service.d.ts.map +1 -1
- package/components/alerts/formio.alerts.component.d.ts +1 -1
- package/components/formbuilder/formbuilder.component.d.ts +3 -3
- package/components/formbuilder/formbuilder.component.d.ts.map +1 -1
- package/components/loader/formio.loader.component.d.ts +1 -1
- package/core.d.ts +1 -1
- package/core.d.ts.map +1 -1
- package/custom-component/create-custom-component.d.ts +11 -11
- package/custom-component/create-custom-component.d.ts.map +1 -1
- package/elements.common.d.ts +2 -2
- package/elements.common.d.ts.map +1 -1
- package/esm2022/FormioBaseComponent.mjs +561 -0
- package/esm2022/auth/auth.component.mjs +13 -0
- package/esm2022/auth/auth.config.mjs +22 -0
- package/esm2022/auth/auth.module.mjs +47 -0
- package/esm2022/auth/auth.service.mjs +191 -0
- package/esm2022/auth/login/login.component.mjs +18 -0
- package/esm2022/auth/register/register.component.mjs +18 -0
- package/esm2022/auth/resetpass/resetpass.component.mjs +18 -0
- package/esm2022/components/alerts/formio.alerts.component.mjs +29 -0
- package/esm2022/components/alerts/formio.alerts.mjs +13 -0
- package/esm2022/components/alerts/parse-html-content.pipe.mjs +20 -0
- package/esm2022/components/formbuilder/formbuilder.component.mjs +202 -0
- package/esm2022/components/formio/formio.component.mjs +43 -0
- package/esm2022/components/loader/formio.loader.component.mjs +16 -0
- package/{esm2020 → esm2022}/core.mjs +2 -2
- package/esm2022/custom-component/create-custom-component.mjs +144 -0
- package/esm2022/custom-component/custom-tags.service.mjs +15 -0
- package/{esm2020 → esm2022}/custom-component/register-custom-component.mjs +2 -2
- package/esm2022/elements.common.mjs +2 -0
- package/esm2022/formio-promise.service.mjs +36 -0
- package/esm2022/formio.common.mjs +11 -0
- package/esm2022/formio.config.mjs +15 -0
- package/esm2022/formio.module.mjs +55 -0
- package/esm2022/formio.service.mjs +62 -0
- package/esm2022/grid/GridBodyComponent.mjs +90 -0
- package/esm2022/grid/GridFooterComponent.mjs +45 -0
- package/esm2022/grid/GridHeaderComponent.mjs +35 -0
- package/esm2022/grid/form/FormGridBody.component.mjs +20 -0
- package/esm2022/grid/form/FormGridFooter.component.mjs +27 -0
- package/esm2022/grid/form/FormGridHeader.component.mjs +28 -0
- package/esm2022/grid/form/time-since.pipe.mjs +38 -0
- package/esm2022/grid/grid.component.mjs +258 -0
- package/esm2022/grid/grid.module.mjs +80 -0
- package/esm2022/grid/grid.service.mjs +19 -0
- package/esm2022/grid/submission/SubmissionGridBody.component.mjs +44 -0
- package/esm2022/grid/submission/SubmissionGridFooter.component.mjs +24 -0
- package/esm2022/grid/submission/SubmissionGridHeader.component.mjs +64 -0
- package/esm2022/manager/create/create.component.mjs +19 -0
- package/esm2022/manager/delete/delete.component.mjs +43 -0
- package/esm2022/manager/edit/edit.component.mjs +123 -0
- package/esm2022/manager/form/form.component.mjs +81 -0
- package/esm2022/manager/form-manager.config.mjs +19 -0
- package/esm2022/manager/form-manager.module.mjs +84 -0
- package/esm2022/manager/form-manager.service.mjs +189 -0
- package/{esm2020 → esm2022}/manager/index/index.component.mjs +13 -6
- package/esm2022/manager/submission/delete/delete.component.mjs +33 -0
- package/esm2022/manager/submission/edit/edit.component.mjs +26 -0
- package/esm2022/manager/submission/index/index.component.mjs +26 -0
- package/esm2022/manager/submission/submission/submission.component.mjs +30 -0
- package/esm2022/manager/submission/view/view.component.mjs +18 -0
- package/esm2022/manager/view/view.component.mjs +52 -0
- package/esm2022/resource/create/create.component.mjs +44 -0
- package/esm2022/resource/delete/delete.component.mjs +30 -0
- package/esm2022/resource/edit/edit.component.mjs +43 -0
- package/esm2022/resource/index/index.component.mjs +71 -0
- package/esm2022/resource/resource.component.mjs +51 -0
- package/esm2022/resource/resource.config.mjs +14 -0
- package/esm2022/resource/resource.module.mjs +63 -0
- package/{esm2020 → esm2022}/resource/resource.service.mjs +29 -7
- package/esm2022/resource/resources.service.mjs +26 -0
- package/esm2022/resource/view/view.component.mjs +26 -0
- package/{fesm2020 → fesm2022}/formio-angular-auth.mjs +68 -36
- package/fesm2022/formio-angular-auth.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/formio-angular-grid.mjs +123 -73
- package/fesm2022/formio-angular-grid.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/formio-angular-manager.mjs +147 -80
- package/fesm2022/formio-angular-manager.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/formio-angular-resource.mjs +109 -58
- package/fesm2022/formio-angular-resource.mjs.map +1 -0
- package/fesm2022/formio-angular.mjs +1222 -0
- package/fesm2022/formio-angular.mjs.map +1 -0
- package/formio.common.d.ts +5 -5
- package/formio.common.d.ts.map +1 -1
- package/grid/GridBodyComponent.d.ts +1 -1
- package/grid/GridFooterComponent.d.ts +1 -1
- package/grid/GridHeaderComponent.d.ts +1 -1
- package/grid/grid.component.d.ts +1 -1
- package/grid/submission/SubmissionGridHeader.component.d.ts +1 -1
- package/grid/submission/SubmissionGridHeader.component.d.ts.map +1 -1
- package/manager/form-manager.service.d.ts +1 -1
- package/manager/form-manager.service.d.ts.map +1 -1
- package/manager/view/view.component.d.ts +1 -0
- package/manager/view/view.component.d.ts.map +1 -1
- package/package.json +21 -35
- package/resource/edit/edit.component.d.ts +1 -0
- package/resource/edit/edit.component.d.ts.map +1 -1
- package/esm2020/FormioBaseComponent.mjs +0 -529
- package/esm2020/auth/auth.component.mjs +0 -12
- package/esm2020/auth/auth.config.mjs +0 -15
- package/esm2020/auth/auth.module.mjs +0 -46
- package/esm2020/auth/auth.service.mjs +0 -166
- package/esm2020/auth/login/login.component.mjs +0 -16
- package/esm2020/auth/register/register.component.mjs +0 -16
- package/esm2020/auth/resetpass/resetpass.component.mjs +0 -16
- package/esm2020/components/alerts/formio.alerts.component.mjs +0 -29
- package/esm2020/components/alerts/formio.alerts.mjs +0 -15
- package/esm2020/components/alerts/parse-html-content.pipe.mjs +0 -19
- package/esm2020/components/formbuilder/formbuilder.component.mjs +0 -187
- package/esm2020/components/formio/formio.component.mjs +0 -40
- package/esm2020/components/loader/formio.loader.component.mjs +0 -14
- package/esm2020/custom-component/create-custom-component.mjs +0 -144
- package/esm2020/custom-component/custom-tags.service.mjs +0 -16
- package/esm2020/elements.common.mjs +0 -2
- package/esm2020/formio-promise.service.mjs +0 -33
- package/esm2020/formio.common.mjs +0 -8
- package/esm2020/formio.config.mjs +0 -14
- package/esm2020/formio.module.mjs +0 -54
- package/esm2020/formio.service.mjs +0 -59
- package/esm2020/grid/GridBodyComponent.mjs +0 -81
- package/esm2020/grid/GridFooterComponent.mjs +0 -36
- package/esm2020/grid/GridHeaderComponent.mjs +0 -30
- package/esm2020/grid/form/FormGridBody.component.mjs +0 -19
- package/esm2020/grid/form/FormGridFooter.component.mjs +0 -26
- package/esm2020/grid/form/FormGridHeader.component.mjs +0 -26
- package/esm2020/grid/form/time-since.pipe.mjs +0 -37
- package/esm2020/grid/grid.component.mjs +0 -230
- package/esm2020/grid/grid.module.mjs +0 -79
- package/esm2020/grid/grid.service.mjs +0 -17
- package/esm2020/grid/submission/SubmissionGridBody.component.mjs +0 -43
- package/esm2020/grid/submission/SubmissionGridFooter.component.mjs +0 -23
- package/esm2020/grid/submission/SubmissionGridHeader.component.mjs +0 -61
- package/esm2020/manager/create/create.component.mjs +0 -18
- package/esm2020/manager/delete/delete.component.mjs +0 -37
- package/esm2020/manager/edit/edit.component.mjs +0 -109
- package/esm2020/manager/form/form.component.mjs +0 -70
- package/esm2020/manager/form-manager.config.mjs +0 -17
- package/esm2020/manager/form-manager.module.mjs +0 -83
- package/esm2020/manager/form-manager.service.mjs +0 -178
- package/esm2020/manager/submission/delete/delete.component.mjs +0 -28
- package/esm2020/manager/submission/edit/edit.component.mjs +0 -22
- package/esm2020/manager/submission/index/index.component.mjs +0 -22
- package/esm2020/manager/submission/submission/submission.component.mjs +0 -26
- package/esm2020/manager/submission/view/view.component.mjs +0 -16
- package/esm2020/manager/view/view.component.mjs +0 -42
- package/esm2020/resource/create/create.component.mjs +0 -37
- package/esm2020/resource/delete/delete.component.mjs +0 -26
- package/esm2020/resource/edit/edit.component.mjs +0 -36
- package/esm2020/resource/index/index.component.mjs +0 -61
- package/esm2020/resource/resource.component.mjs +0 -46
- package/esm2020/resource/resource.config.mjs +0 -15
- package/esm2020/resource/resource.module.mjs +0 -62
- package/esm2020/resource/resources.service.mjs +0 -22
- package/esm2020/resource/view/view.component.mjs +0 -23
- package/fesm2015/formio-angular-auth.mjs +0 -298
- package/fesm2015/formio-angular-auth.mjs.map +0 -1
- package/fesm2015/formio-angular-grid.mjs +0 -678
- package/fesm2015/formio-angular-grid.mjs.map +0 -1
- package/fesm2015/formio-angular-manager.mjs +0 -746
- package/fesm2015/formio-angular-manager.mjs.map +0 -1
- package/fesm2015/formio-angular-resource.mjs +0 -506
- package/fesm2015/formio-angular-resource.mjs.map +0 -1
- package/fesm2015/formio-angular.mjs +0 -1153
- package/fesm2015/formio-angular.mjs.map +0 -1
- package/fesm2020/formio-angular-auth.mjs.map +0 -1
- package/fesm2020/formio-angular-grid.mjs.map +0 -1
- package/fesm2020/formio-angular-manager.mjs.map +0 -1
- package/fesm2020/formio-angular-resource.mjs.map +0 -1
- package/fesm2020/formio-angular.mjs +0 -1172
- package/fesm2020/formio-angular.mjs.map +0 -1
- /package/{esm2020 → esm2022}/auth/auth.routes.mjs +0 -0
- /package/{esm2020 → esm2022}/auth/formio-angular-auth.mjs +0 -0
- /package/{esm2020 → esm2022}/auth/index.mjs +0 -0
- /package/{esm2020 → esm2022}/formio-angular.mjs +0 -0
- /package/{esm2020 → esm2022}/formio.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/grid/form/index.mjs +0 -0
- /package/{esm2020 → esm2022}/grid/formio-angular-grid.mjs +0 -0
- /package/{esm2020 → esm2022}/grid/index.mjs +0 -0
- /package/{esm2020 → esm2022}/grid/submission/index.mjs +0 -0
- /package/{esm2020 → esm2022}/grid/types/grid-column.mjs +0 -0
- /package/{esm2020 → esm2022}/grid/types/grid-footer-positions.mjs +0 -0
- /package/{esm2020 → esm2022}/grid/types/grid-header.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/manager/form-manager.routes.mjs +0 -0
- /package/{esm2020 → esm2022}/manager/formio-angular-manager.mjs +0 -0
- /package/{esm2020 → esm2022}/manager/index.mjs +0 -0
- /package/{esm2020 → esm2022}/resource/formio-angular-resource.mjs +0 -0
- /package/{esm2020 → esm2022}/resource/index.mjs +0 -0
- /package/{esm2020 → esm2022}/resource/resource.routes.mjs +0 -0
- /package/{esm2020 → esm2022}/types/alerts-position.mjs +0 -0
- /package/{esm2020 → esm2022}/types/formio-metadata.mjs +0 -0
- /package/{esm2020 → esm2022}/types/formio-submission.mjs +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { FormioComponent } from './components/formio/formio.component';
|
|
4
|
+
import { FormBuilderComponent } from './components/formbuilder/formbuilder.component';
|
|
5
|
+
import { FormioAlerts } from './components/alerts/formio.alerts';
|
|
6
|
+
import { ParseHtmlContentPipe } from './components/alerts/parse-html-content.pipe';
|
|
7
|
+
import { FormioAlertsComponent } from './components/alerts/formio.alerts.component';
|
|
8
|
+
import { FormioLoaderComponent } from './components/loader/formio.loader.component';
|
|
9
|
+
import { CustomTagsService } from './custom-component/custom-tags.service';
|
|
10
|
+
import { FormioBaseComponent } from './FormioBaseComponent';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
class FormioModule {
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: FormioModule, declarations: [FormioComponent,
|
|
15
|
+
FormioBaseComponent,
|
|
16
|
+
FormBuilderComponent,
|
|
17
|
+
FormioLoaderComponent,
|
|
18
|
+
FormioAlertsComponent,
|
|
19
|
+
ParseHtmlContentPipe], imports: [CommonModule], exports: [FormioComponent,
|
|
20
|
+
FormBuilderComponent,
|
|
21
|
+
FormioLoaderComponent,
|
|
22
|
+
FormioAlertsComponent] });
|
|
23
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioModule, providers: [
|
|
24
|
+
FormioAlerts,
|
|
25
|
+
CustomTagsService
|
|
26
|
+
], imports: [CommonModule] });
|
|
27
|
+
}
|
|
28
|
+
export { FormioModule };
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioModule, decorators: [{
|
|
30
|
+
type: NgModule,
|
|
31
|
+
args: [{
|
|
32
|
+
declarations: [
|
|
33
|
+
FormioComponent,
|
|
34
|
+
FormioBaseComponent,
|
|
35
|
+
FormBuilderComponent,
|
|
36
|
+
FormioLoaderComponent,
|
|
37
|
+
FormioAlertsComponent,
|
|
38
|
+
ParseHtmlContentPipe
|
|
39
|
+
],
|
|
40
|
+
imports: [
|
|
41
|
+
CommonModule
|
|
42
|
+
],
|
|
43
|
+
exports: [
|
|
44
|
+
FormioComponent,
|
|
45
|
+
FormBuilderComponent,
|
|
46
|
+
FormioLoaderComponent,
|
|
47
|
+
FormioAlertsComponent
|
|
48
|
+
],
|
|
49
|
+
providers: [
|
|
50
|
+
FormioAlerts,
|
|
51
|
+
CustomTagsService
|
|
52
|
+
]
|
|
53
|
+
}]
|
|
54
|
+
}] });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWlvLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL3NyYy9mb3JtaW8ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRTVELE1BdUJhLFlBQVk7dUdBQVosWUFBWTt3R0FBWixZQUFZLGlCQXJCakIsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQixvQkFBb0I7WUFDcEIscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixvQkFBb0IsYUFHcEIsWUFBWSxhQUdaLGVBQWU7WUFDZixvQkFBb0I7WUFDcEIscUJBQXFCO1lBQ3JCLHFCQUFxQjt3R0FPaEIsWUFBWSxhQUxWO1lBQ1AsWUFBWTtZQUNaLGlCQUFpQjtTQUNwQixZQVhHLFlBQVk7O1NBYVAsWUFBWTsyRkFBWixZQUFZO2tCQXZCeEIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7cUJBQ2Y7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjtxQkFDeEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osaUJBQWlCO3FCQUNwQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybWlvQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvcm1pby9mb3JtaW8uY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1CdWlsZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvcm1idWlsZGVyL2Zvcm1idWlsZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtaW9BbGVydHMgfSBmcm9tICcuL2NvbXBvbmVudHMvYWxlcnRzL2Zvcm1pby5hbGVydHMnO1xuaW1wb3J0IHsgUGFyc2VIdG1sQ29udGVudFBpcGUgfSBmcm9tICcuL2NvbXBvbmVudHMvYWxlcnRzL3BhcnNlLWh0bWwtY29udGVudC5waXBlJztcbmltcG9ydCB7IEZvcm1pb0FsZXJ0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hbGVydHMvZm9ybWlvLmFsZXJ0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWlvTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRlci9mb3JtaW8ubG9hZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21UYWdzU2VydmljZSB9IGZyb20gJy4vY3VzdG9tLWNvbXBvbmVudC9jdXN0b20tdGFncy5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1pb0Jhc2VDb21wb25lbnQgfSBmcm9tICcuL0Zvcm1pb0Jhc2VDb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBGb3JtaW9Db21wb25lbnQsXG4gICAgICAgIEZvcm1pb0Jhc2VDb21wb25lbnQsXG4gICAgICAgIEZvcm1CdWlsZGVyQ29tcG9uZW50LFxuICAgICAgICBGb3JtaW9Mb2FkZXJDb21wb25lbnQsXG4gICAgICAgIEZvcm1pb0FsZXJ0c0NvbXBvbmVudCxcbiAgICAgICAgUGFyc2VIdG1sQ29udGVudFBpcGVcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEZvcm1pb0NvbXBvbmVudCxcbiAgICAgICAgRm9ybUJ1aWxkZXJDb21wb25lbnQsXG4gICAgICAgIEZvcm1pb0xvYWRlckNvbXBvbmVudCxcbiAgICAgICAgRm9ybWlvQWxlcnRzQ29tcG9uZW50XG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgRm9ybWlvQWxlcnRzLFxuICAgICAgICBDdXN0b21UYWdzU2VydmljZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9ybWlvTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { Formio } from '@formio/js';
|
|
3
|
+
export class FormioService {
|
|
4
|
+
url;
|
|
5
|
+
options;
|
|
6
|
+
formio;
|
|
7
|
+
constructor(url, options) {
|
|
8
|
+
this.url = url;
|
|
9
|
+
this.options = options;
|
|
10
|
+
this.formio = new Formio(this.url, this.options);
|
|
11
|
+
}
|
|
12
|
+
requestWrapper(fn) {
|
|
13
|
+
let record;
|
|
14
|
+
let called = false;
|
|
15
|
+
return Observable.create((observer) => {
|
|
16
|
+
try {
|
|
17
|
+
if (!called) {
|
|
18
|
+
called = true;
|
|
19
|
+
fn()
|
|
20
|
+
.then((_record) => {
|
|
21
|
+
record = _record;
|
|
22
|
+
observer.next(record);
|
|
23
|
+
observer.complete();
|
|
24
|
+
})
|
|
25
|
+
.catch((err) => observer.error(err));
|
|
26
|
+
}
|
|
27
|
+
else if (record) {
|
|
28
|
+
observer.next(record);
|
|
29
|
+
observer.complete();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
observer.error(err);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
saveForm(form, options) {
|
|
38
|
+
return this.requestWrapper(() => this.formio.saveForm(form, options));
|
|
39
|
+
}
|
|
40
|
+
loadForm(query, options) {
|
|
41
|
+
return this.requestWrapper(() => this.formio.loadForm(query, options));
|
|
42
|
+
}
|
|
43
|
+
loadForms(query, options) {
|
|
44
|
+
return this.requestWrapper(() => this.formio.loadForms(query, options));
|
|
45
|
+
}
|
|
46
|
+
loadSubmission(query, options) {
|
|
47
|
+
return this.requestWrapper(() => this.formio.loadSubmission(query, options));
|
|
48
|
+
}
|
|
49
|
+
userPermissions(user, form, submission) {
|
|
50
|
+
return this.requestWrapper(() => this.formio.userPermissions(user, form, submission));
|
|
51
|
+
}
|
|
52
|
+
deleteSubmission(data, options) {
|
|
53
|
+
return this.requestWrapper(() => this.formio.deleteSubmission(data, options));
|
|
54
|
+
}
|
|
55
|
+
saveSubmission(submission, options) {
|
|
56
|
+
return this.requestWrapper(() => this.formio.saveSubmission(submission, options));
|
|
57
|
+
}
|
|
58
|
+
loadSubmissions(query, options) {
|
|
59
|
+
return this.requestWrapper(() => this.formio.loadSubmissions(query, options));
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWlvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9zcmMvZm9ybWlvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLE1BQU0sQ0FBQztBQUU1QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXBDLE1BQU0sT0FBTyxhQUFhO0lBRUw7SUFBb0I7SUFEaEMsTUFBTSxDQUFNO0lBQ25CLFlBQW1CLEdBQVcsRUFBUyxPQUFnQjtRQUFwQyxRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNyRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFDRCxjQUFjLENBQUMsRUFBTztRQUNwQixJQUFJLE1BQVcsQ0FBQztRQUNoQixJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsT0FBTyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBdUIsRUFBRSxFQUFFO1lBQ25ELElBQUk7Z0JBQ0YsSUFBSSxDQUFDLE1BQU0sRUFBRTtvQkFDWCxNQUFNLEdBQUcsSUFBSSxDQUFDO29CQUNkLEVBQUUsRUFBRTt5QkFDRCxJQUFJLENBQUMsQ0FBQyxPQUFZLEVBQUUsRUFBRTt3QkFDckIsTUFBTSxHQUFHLE9BQU8sQ0FBQzt3QkFDakIsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQzt3QkFDdEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUN0QixDQUFDLENBQUM7eUJBQ0QsS0FBSyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7aUJBQzdDO3FCQUFNLElBQUksTUFBTSxFQUFFO29CQUNqQixRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN0QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7aUJBQ3JCO2FBQ0Y7WUFBQyxPQUFPLEdBQUcsRUFBRTtnQkFDWixRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3JCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsUUFBUSxDQUFDLElBQWdCLEVBQUUsT0FBYTtRQUN0QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUNELFFBQVEsQ0FBQyxLQUFXLEVBQUUsT0FBYTtRQUNqQyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUNELFNBQVMsQ0FBQyxLQUFVLEVBQUUsT0FBYTtRQUNqQyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUNELGNBQWMsQ0FBQyxLQUFXLEVBQUUsT0FBYTtRQUN2QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUNELGVBQWUsQ0FBQyxJQUFTLEVBQUUsSUFBUyxFQUFFLFVBQWU7UUFDbkQsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsSUFBVSxFQUFFLE9BQWE7UUFDeEMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUNELGNBQWMsQ0FBQyxVQUFjLEVBQUUsT0FBYTtRQUMxQyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUNELGVBQWUsQ0FBQyxLQUFXLEVBQUUsT0FBYTtRQUN4QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZvcm1pb0Zvcm0gfSBmcm9tICcuL2Zvcm1pby5jb21tb24nO1xuaW1wb3J0IHsgRm9ybWlvIH0gZnJvbSAnQGZvcm1pby9qcyc7XG5cbmV4cG9ydCBjbGFzcyBGb3JtaW9TZXJ2aWNlIHtcbiAgcHVibGljIGZvcm1pbzogYW55O1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXJsOiBzdHJpbmcsIHB1YmxpYyBvcHRpb25zPzogb2JqZWN0KSB7XG4gICAgdGhpcy5mb3JtaW8gPSBuZXcgRm9ybWlvKHRoaXMudXJsLCB0aGlzLm9wdGlvbnMpO1xuICB9XG4gIHJlcXVlc3RXcmFwcGVyKGZuOiBhbnkpIHtcbiAgICBsZXQgcmVjb3JkOiBhbnk7XG4gICAgbGV0IGNhbGxlZCA9IGZhbHNlO1xuICAgIHJldHVybiBPYnNlcnZhYmxlLmNyZWF0ZSgob2JzZXJ2ZXI6IE9ic2VydmVyPGFueT4pID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmICghY2FsbGVkKSB7XG4gICAgICAgICAgY2FsbGVkID0gdHJ1ZTtcbiAgICAgICAgICBmbigpXG4gICAgICAgICAgICAudGhlbigoX3JlY29yZDogYW55KSA9PiB7XG4gICAgICAgICAgICAgIHJlY29yZCA9IF9yZWNvcmQ7XG4gICAgICAgICAgICAgIG9ic2VydmVyLm5leHQocmVjb3JkKTtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycjogYW55KSA9PiBvYnNlcnZlci5lcnJvcihlcnIpKTtcbiAgICAgICAgfSBlbHNlIGlmIChyZWNvcmQpIHtcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlY29yZCk7XG4gICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIG9ic2VydmVyLmVycm9yKGVycik7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgc2F2ZUZvcm0oZm9ybTogRm9ybWlvRm9ybSwgb3B0aW9ucz86IGFueSk6IE9ic2VydmFibGU8Rm9ybWlvRm9ybT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3RXcmFwcGVyKCgpID0+IHRoaXMuZm9ybWlvLnNhdmVGb3JtKGZvcm0sIG9wdGlvbnMpKTtcbiAgfVxuICBsb2FkRm9ybShxdWVyeT86IGFueSwgb3B0aW9ucz86IGFueSk6IE9ic2VydmFibGU8Rm9ybWlvRm9ybT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3RXcmFwcGVyKCgpID0+IHRoaXMuZm9ybWlvLmxvYWRGb3JtKHF1ZXJ5LCBvcHRpb25zKSk7XG4gIH1cbiAgbG9hZEZvcm1zKHF1ZXJ5OiBhbnksIG9wdGlvbnM/OiBhbnkpOiBPYnNlcnZhYmxlPEZvcm1pb0Zvcm0+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V3JhcHBlcigoKSA9PiB0aGlzLmZvcm1pby5sb2FkRm9ybXMocXVlcnksIG9wdGlvbnMpKTtcbiAgfVxuICBsb2FkU3VibWlzc2lvbihxdWVyeT86IGFueSwgb3B0aW9ucz86IGFueSk6IE9ic2VydmFibGU8e30+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V3JhcHBlcigoKSA9PiB0aGlzLmZvcm1pby5sb2FkU3VibWlzc2lvbihxdWVyeSwgb3B0aW9ucykpO1xuICB9XG4gIHVzZXJQZXJtaXNzaW9ucyh1c2VyOiBhbnksIGZvcm06IGFueSwgc3VibWlzc2lvbjogYW55KTogT2JzZXJ2YWJsZTx7fT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3RXcmFwcGVyKCgpID0+IHRoaXMuZm9ybWlvLnVzZXJQZXJtaXNzaW9ucyh1c2VyLCBmb3JtLCBzdWJtaXNzaW9uKSk7XG4gIH1cbiAgZGVsZXRlU3VibWlzc2lvbihkYXRhPzogYW55LCBvcHRpb25zPzogYW55KTogT2JzZXJ2YWJsZTx7fT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3RXcmFwcGVyKCgpID0+IHRoaXMuZm9ybWlvLmRlbGV0ZVN1Ym1pc3Npb24oZGF0YSwgb3B0aW9ucykpO1xuICB9XG4gIHNhdmVTdWJtaXNzaW9uKHN1Ym1pc3Npb246IHt9LCBvcHRpb25zPzogYW55KTogT2JzZXJ2YWJsZTx7fT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3RXcmFwcGVyKCgpID0+IHRoaXMuZm9ybWlvLnNhdmVTdWJtaXNzaW9uKHN1Ym1pc3Npb24sIG9wdGlvbnMpKTtcbiAgfVxuICBsb2FkU3VibWlzc2lvbnMocXVlcnk/OiBhbnksIG9wdGlvbnM/OiBhbnkpOiBPYnNlcnZhYmxlPHt9PiB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdFdyYXBwZXIoKCkgPT4gdGhpcy5mb3JtaW8ubG9hZFN1Ym1pc3Npb25zKHF1ZXJ5LCBvcHRpb25zKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { Input, Output, EventEmitter, ViewChild, TemplateRef, Component } from '@angular/core';
|
|
2
|
+
import { each, clone } from 'lodash';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./grid.service";
|
|
5
|
+
class GridBodyComponent {
|
|
6
|
+
service;
|
|
7
|
+
header;
|
|
8
|
+
actionAllowed;
|
|
9
|
+
rowSelect;
|
|
10
|
+
rowAction;
|
|
11
|
+
template;
|
|
12
|
+
rows;
|
|
13
|
+
loading;
|
|
14
|
+
firstItem = 0;
|
|
15
|
+
lastItem = 0;
|
|
16
|
+
skip = 0;
|
|
17
|
+
limit = 0;
|
|
18
|
+
total = 0;
|
|
19
|
+
constructor(service) {
|
|
20
|
+
this.service = service;
|
|
21
|
+
this.rowSelect = new EventEmitter();
|
|
22
|
+
this.rowAction = new EventEmitter();
|
|
23
|
+
this.loading = true;
|
|
24
|
+
}
|
|
25
|
+
load(formio, query) {
|
|
26
|
+
return formio.loadForm(query);
|
|
27
|
+
}
|
|
28
|
+
onRowSelect(event, row) {
|
|
29
|
+
event.preventDefault();
|
|
30
|
+
this.rowSelect.emit(row);
|
|
31
|
+
}
|
|
32
|
+
onRowAction(event, row, action) {
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
this.rowAction.emit({ row, action });
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Set the rows for this Grid body.
|
|
38
|
+
*
|
|
39
|
+
* @param query
|
|
40
|
+
* @param items
|
|
41
|
+
* @return any
|
|
42
|
+
*/
|
|
43
|
+
setRows(query, items) {
|
|
44
|
+
this.rows = [];
|
|
45
|
+
if (typeof items !== 'object') {
|
|
46
|
+
this.firstItem = 0;
|
|
47
|
+
this.lastItem = 0;
|
|
48
|
+
this.total = 0;
|
|
49
|
+
this.skip = 0;
|
|
50
|
+
this.loading = false;
|
|
51
|
+
this.service.setRows(this.rows);
|
|
52
|
+
return this.rows;
|
|
53
|
+
}
|
|
54
|
+
this.firstItem = query.skip + 1;
|
|
55
|
+
this.lastItem = this.firstItem + items.length - 1;
|
|
56
|
+
if (this.lastItem === 0) {
|
|
57
|
+
this.firstItem = 0;
|
|
58
|
+
}
|
|
59
|
+
this.total = items.serverCount;
|
|
60
|
+
this.limit = query.limit;
|
|
61
|
+
this.skip = Math.floor(items.skip / query.limit) + 1;
|
|
62
|
+
this.loading = false;
|
|
63
|
+
each(items, (item) => {
|
|
64
|
+
this.rows.push(clone(item));
|
|
65
|
+
});
|
|
66
|
+
this.service.setRows(this.rows);
|
|
67
|
+
return this.rows;
|
|
68
|
+
}
|
|
69
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridBodyComponent, deps: [{ token: i1.GridService }], target: i0.ɵɵFactoryTarget.Component });
|
|
70
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: GridBodyComponent, selector: "ng-component", inputs: { header: "header", actionAllowed: "actionAllowed" }, outputs: { rowSelect: "rowSelect", rowAction: "rowAction" }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: '', isInline: true });
|
|
71
|
+
}
|
|
72
|
+
export { GridBodyComponent };
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridBodyComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{
|
|
76
|
+
template: ''
|
|
77
|
+
}]
|
|
78
|
+
}], ctorParameters: function () { return [{ type: i1.GridService }]; }, propDecorators: { header: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}], actionAllowed: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], rowSelect: [{
|
|
83
|
+
type: Output
|
|
84
|
+
}], rowAction: [{
|
|
85
|
+
type: Output
|
|
86
|
+
}], template: [{
|
|
87
|
+
type: ViewChild,
|
|
88
|
+
args: [TemplateRef, { static: true }]
|
|
89
|
+
}] } });
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JpZEJvZHlDb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9HcmlkQm9keUNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7OztBQUtyQyxNQUdhLGlCQUFpQjtJQWFUO0lBWlYsTUFBTSxDQUFzQjtJQUM1QixhQUFhLENBQU07SUFDbEIsU0FBUyxDQUFvQjtJQUM3QixTQUFTLENBQW9CO0lBQ0MsUUFBUSxDQUFtQjtJQUM1RCxJQUFJLENBQWE7SUFDakIsT0FBTyxDQUFVO0lBQ2pCLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDZCxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ2IsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUNULEtBQUssR0FBRyxDQUFDLENBQUM7SUFDVixLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLFlBQW1CLE9BQW9CO1FBQXBCLFlBQU8sR0FBUCxPQUFPLENBQWE7UUFDckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQTRCLEVBQUUsS0FBVztRQUM1QyxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRztRQUNwQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU07UUFDNUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE9BQU8sQ0FBQyxLQUFVLEVBQUUsS0FBVTtRQUM1QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUVmLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1lBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7WUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFaEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ2xCO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDbEQsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztTQUNwQjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFaEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7dUdBckVVLGlCQUFpQjsyRkFBakIsaUJBQWlCLHlOQUtqQixXQUFXLDhEQVBaLEVBQUU7O1NBRUQsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2I7a0dBRVUsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNpQyxRQUFRO3NCQUEvQyxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgVGVtcGxhdGVSZWYsIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZWFjaCwgY2xvbmUgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgR3JpZEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vR3JpZEhlYWRlckNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkU2VydmljZSB9IGZyb20gJy4vZ3JpZC5zZXJ2aWNlJztcbmltcG9ydCB7Rm9ybWlvUHJvbWlzZVNlcnZpY2V9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgY2xhc3MgR3JpZEJvZHlDb21wb25lbnQge1xuICBASW5wdXQoKSBoZWFkZXI6IEdyaWRIZWFkZXJDb21wb25lbnQ7XG4gIEBJbnB1dCgpIGFjdGlvbkFsbG93ZWQ6IGFueTtcbiAgQE91dHB1dCgpIHJvd1NlbGVjdDogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBPdXRwdXQoKSByb3dBY3Rpb246IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmLCB7c3RhdGljOiB0cnVlfSkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIHB1YmxpYyByb3dzOiBBcnJheTxhbnk+O1xuICBwdWJsaWMgbG9hZGluZzogQm9vbGVhbjtcbiAgcHVibGljIGZpcnN0SXRlbSA9IDA7XG4gIHB1YmxpYyBsYXN0SXRlbSA9IDA7XG4gIHB1YmxpYyBza2lwID0gMDtcbiAgcHVibGljIGxpbWl0ID0gMDtcbiAgcHVibGljIHRvdGFsID0gMDtcbiAgY29uc3RydWN0b3IocHVibGljIHNlcnZpY2U6IEdyaWRTZXJ2aWNlKSB7XG4gICAgdGhpcy5yb3dTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5yb3dBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgfVxuXG4gIGxvYWQoZm9ybWlvOiBGb3JtaW9Qcm9taXNlU2VydmljZSwgcXVlcnk/OiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiBmb3JtaW8ubG9hZEZvcm0ocXVlcnkpO1xuICB9XG5cbiAgb25Sb3dTZWxlY3QoZXZlbnQsIHJvdykge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5yb3dTZWxlY3QuZW1pdChyb3cpO1xuICB9XG5cbiAgb25Sb3dBY3Rpb24oZXZlbnQsIHJvdywgYWN0aW9uKSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLnJvd0FjdGlvbi5lbWl0KHsgcm93LCBhY3Rpb24gfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSByb3dzIGZvciB0aGlzIEdyaWQgYm9keS5cbiAgICpcbiAgICogQHBhcmFtIHF1ZXJ5XG4gICAqIEBwYXJhbSBpdGVtc1xuICAgKiBAcmV0dXJuIGFueVxuICAgKi9cbiAgc2V0Um93cyhxdWVyeTogYW55LCBpdGVtczogYW55KSB7XG4gICAgdGhpcy5yb3dzID0gW107XG5cbiAgICBpZiAodHlwZW9mIGl0ZW1zICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhpcy5maXJzdEl0ZW0gPSAwO1xuICAgICAgdGhpcy5sYXN0SXRlbSA9IDA7XG4gICAgICB0aGlzLnRvdGFsID0gMDtcbiAgICAgIHRoaXMuc2tpcCA9IDA7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2VydmljZS5zZXRSb3dzKHRoaXMucm93cyk7XG4gICAgICBcbiAgICAgIHJldHVybiB0aGlzLnJvd3M7XG4gICAgfVxuXG4gICAgdGhpcy5maXJzdEl0ZW0gPSBxdWVyeS5za2lwICsgMTtcbiAgICB0aGlzLmxhc3RJdGVtID0gdGhpcy5maXJzdEl0ZW0gKyBpdGVtcy5sZW5ndGggLSAxO1xuICAgIGlmICh0aGlzLmxhc3RJdGVtID09PSAwKSB7XG4gICAgICB0aGlzLmZpcnN0SXRlbSA9IDA7XG4gICAgfVxuICAgIHRoaXMudG90YWwgPSBpdGVtcy5zZXJ2ZXJDb3VudDtcbiAgICB0aGlzLmxpbWl0ID0gcXVlcnkubGltaXQ7XG4gICAgdGhpcy5za2lwID0gTWF0aC5mbG9vcihpdGVtcy5za2lwIC8gcXVlcnkubGltaXQpICsgMTtcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICBlYWNoKGl0ZW1zLCAoaXRlbTogYW55KSA9PiB7XG4gICAgICB0aGlzLnJvd3MucHVzaChjbG9uZShpdGVtKSk7XG4gICAgfSk7XG4gICAgdGhpcy5zZXJ2aWNlLnNldFJvd3ModGhpcy5yb3dzKTtcblxuICAgIHJldHVybiB0aGlzLnJvd3M7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { GridFooterPositions } from './types/grid-footer-positions';
|
|
2
|
+
import { Input, Output, ViewChild, TemplateRef, EventEmitter, Component } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
class GridFooterComponent {
|
|
5
|
+
header;
|
|
6
|
+
body;
|
|
7
|
+
createText;
|
|
8
|
+
size;
|
|
9
|
+
actionAllowed;
|
|
10
|
+
pageChanged;
|
|
11
|
+
createItem;
|
|
12
|
+
template;
|
|
13
|
+
footerPositions = GridFooterPositions;
|
|
14
|
+
constructor() {
|
|
15
|
+
this.pageChanged = new EventEmitter();
|
|
16
|
+
this.createItem = new EventEmitter();
|
|
17
|
+
}
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: GridFooterComponent, selector: "ng-component", inputs: { header: "header", body: "body", createText: "createText", size: "size", actionAllowed: "actionAllowed" }, outputs: { pageChanged: "pageChanged", createItem: "createItem" }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: '', isInline: true });
|
|
20
|
+
}
|
|
21
|
+
export { GridFooterComponent };
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridFooterComponent, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{
|
|
25
|
+
template: ''
|
|
26
|
+
}]
|
|
27
|
+
}], ctorParameters: function () { return []; }, propDecorators: { header: [{
|
|
28
|
+
type: Input
|
|
29
|
+
}], body: [{
|
|
30
|
+
type: Input
|
|
31
|
+
}], createText: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}], size: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], actionAllowed: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], pageChanged: [{
|
|
38
|
+
type: Output
|
|
39
|
+
}], createItem: [{
|
|
40
|
+
type: Output
|
|
41
|
+
}], template: [{
|
|
42
|
+
type: ViewChild,
|
|
43
|
+
args: [TemplateRef, { static: true }]
|
|
44
|
+
}] } });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JpZEZvb3RlckNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL0dyaWRGb290ZXJDb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkvRixNQUdhLG1CQUFtQjtJQUNyQixNQUFNLENBQXNCO0lBQzVCLElBQUksQ0FBb0I7SUFDeEIsVUFBVSxDQUFTO0lBQ25CLElBQUksQ0FBUztJQUNiLGFBQWEsQ0FBTTtJQUNsQixXQUFXLENBQW9CO0lBQy9CLFVBQVUsQ0FBb0I7SUFDQSxRQUFRLENBQW1CO0lBRTVELGVBQWUsR0FBRyxtQkFBbUIsQ0FBQztJQUU3QztRQUNFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDdkMsQ0FBQzt1R0FmVSxtQkFBbUI7MkZBQW5CLG1CQUFtQixxUkFRbkIsV0FBVyw4REFWWixFQUFFOztTQUVELG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUgvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiOzBFQUVVLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ2lDLFFBQVE7c0JBQS9DLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdyaWRGb290ZXJQb3NpdGlvbnMgfSBmcm9tICcuL3R5cGVzL2dyaWQtZm9vdGVyLXBvc2l0aW9ucyc7XG5pbXBvcnQgeyBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFRlbXBsYXRlUmVmLCBFdmVudEVtaXR0ZXIsIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3JpZEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vR3JpZEhlYWRlckNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkQm9keUNvbXBvbmVudCB9IGZyb20gJy4vR3JpZEJvZHlDb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRGb290ZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBoZWFkZXI6IEdyaWRIZWFkZXJDb21wb25lbnQ7XG4gIEBJbnB1dCgpIGJvZHk6IEdyaWRCb2R5Q29tcG9uZW50O1xuICBASW5wdXQoKSBjcmVhdGVUZXh0OiBTdHJpbmc7XG4gIEBJbnB1dCgpIHNpemU6IG51bWJlcjtcbiAgQElucHV0KCkgYWN0aW9uQWxsb3dlZDogYW55O1xuICBAT3V0cHV0KCkgcGFnZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBAT3V0cHV0KCkgY3JlYXRlSXRlbTogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBWaWV3Q2hpbGQoVGVtcGxhdGVSZWYsIHtzdGF0aWM6IHRydWV9KSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBwdWJsaWMgZm9vdGVyUG9zaXRpb25zID0gR3JpZEZvb3RlclBvc2l0aW9ucztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnBhZ2VDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIHRoaXMuY3JlYXRlSXRlbSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Output, EventEmitter, ViewChild, TemplateRef, Input, Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class GridHeaderComponent {
|
|
4
|
+
actionAllowed;
|
|
5
|
+
sort;
|
|
6
|
+
template;
|
|
7
|
+
headers;
|
|
8
|
+
constructor() {
|
|
9
|
+
this.headers = [];
|
|
10
|
+
this.sort = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
get numHeaders() {
|
|
13
|
+
return this.headers.length;
|
|
14
|
+
}
|
|
15
|
+
load(formio, query, columns) {
|
|
16
|
+
return Promise.resolve([]);
|
|
17
|
+
}
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: GridHeaderComponent, selector: "ng-component", inputs: { actionAllowed: "actionAllowed" }, outputs: { sort: "sort" }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: '', isInline: true });
|
|
20
|
+
}
|
|
21
|
+
export { GridHeaderComponent };
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridHeaderComponent, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{
|
|
25
|
+
template: ''
|
|
26
|
+
}]
|
|
27
|
+
}], ctorParameters: function () { return []; }, propDecorators: { actionAllowed: [{
|
|
28
|
+
type: Input
|
|
29
|
+
}], sort: [{
|
|
30
|
+
type: Output
|
|
31
|
+
}], template: [{
|
|
32
|
+
type: ViewChild,
|
|
33
|
+
args: [TemplateRef, { static: true }]
|
|
34
|
+
}] } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JpZEhlYWRlckNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL0dyaWRIZWFkZXJDb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkvRixNQUdhLG1CQUFtQjtJQUNyQixhQUFhLENBQU07SUFDbEIsSUFBSSxDQUEyQjtJQUNELFFBQVEsQ0FBbUI7SUFDNUQsT0FBTyxDQUFvQjtJQUNsQztRQUNFLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQTRCLEVBQUUsS0FBVyxFQUFFLE9BQW9CO1FBQ2xFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDO3VHQWhCVSxtQkFBbUI7MkZBQW5CLG1CQUFtQixxS0FHbkIsV0FBVyw4REFMWixFQUFFOztTQUVELG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUgvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiOzBFQUVVLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksSUFBSTtzQkFBYixNQUFNO2dCQUNpQyxRQUFRO3NCQUEvQyxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiwgSW5wdXQsIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtaW9Qcm9taXNlU2VydmljZX0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcbmltcG9ydCB7R3JpZEhlYWRlcn0gZnJvbSAnLi90eXBlcy9ncmlkLWhlYWRlcic7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgY2xhc3MgR3JpZEhlYWRlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGFjdGlvbkFsbG93ZWQ6IGFueTtcbiAgQE91dHB1dCgpIHNvcnQ6IEV2ZW50RW1pdHRlcjxHcmlkSGVhZGVyPjtcbiAgQFZpZXdDaGlsZChUZW1wbGF0ZVJlZiwge3N0YXRpYzogdHJ1ZX0pIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwdWJsaWMgaGVhZGVyczogQXJyYXk8R3JpZEhlYWRlcj47XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuaGVhZGVycyA9IFtdO1xuICAgIHRoaXMuc29ydCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgfVxuXG4gIGdldCBudW1IZWFkZXJzKCkge1xuICAgIHJldHVybiB0aGlzLmhlYWRlcnMubGVuZ3RoO1xuICB9XG5cbiAgbG9hZChmb3JtaW86IEZvcm1pb1Byb21pc2VTZXJ2aWNlLCBxdWVyeT86IGFueSwgY29sdW1ucz86IEFycmF5PGFueT4pOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoW10pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { GridBodyComponent } from '../GridBodyComponent';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/router";
|
|
6
|
+
import * as i3 from "./time-since.pipe";
|
|
7
|
+
class FormGridBodyComponent extends GridBodyComponent {
|
|
8
|
+
load(formio, query) {
|
|
9
|
+
query = query || {};
|
|
10
|
+
return formio.loadForms({ params: query }).then((forms) => this.setRows(query, forms));
|
|
11
|
+
}
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: FormGridBodyComponent, selector: "form-grid-body", usesInheritance: true, ngImport: i0, template: "<ng-template>\n <tbody *ngIf=\"rows\">\n <tr *ngFor=\"let form of rows\">\n <td>\n <div class=\"row\">\n <div class=\"col-sm-8\">\n <a routerLink=\"{{form._id}}/view\" (click)=\"onRowSelect($event, form)\"><h5>{{ form.title }}</h5></a>\n <div class=\"form-updated small text-muted\">\n Updated {{ form.modified | timeSince }} ago\n </div>\n </div>\n <div class=\"col-sm-4\">\n <button *ngIf=\"actionAllowed('formView')\" class=\"btn btn-outline-secondary btn-sm form-btn form-btn-use\" (click)=\"onRowAction($event, form, 'view')\"><span class=\"fa fa-pencil bi bi-pencil\"></span> Enter Data</button> \n <button *ngIf=\"actionAllowed('formSubmission')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'submission')\"><span class=\"fa fa-list-alt bi bi-table\"></span> View Data</button> \n <button *ngIf=\"actionAllowed('formEdit')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'edit')\"><span class=\"fa fa-edit bi bi-pencil-square\"></span> Edit Form</button> \n <button *ngIf=\"actionAllowed('formPermission')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'permissions')\"><span class=\"fa fa-lock bi bi-database-lock\"></span> Permissions</button> \n <button *ngIf=\"actionAllowed('formDelete')\" class=\"btn btn-danger btn-sm form-btn form-btn-delete\" (click)=\"onRowAction($event, form, 'delete')\" title=\"Delete form\"><span class=\"fa fa-trash bi bi-trash\"></span></button>\n </div>\n </div>\n </td>\n </tr>\n </tbody>\n</ng-template>\n", styles: [".form-btn{font-size:.75rem;margin:2px 0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i3.TimeSince, name: "timeSince" }] });
|
|
14
|
+
}
|
|
15
|
+
export { FormGridBodyComponent };
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormGridBodyComponent, decorators: [{
|
|
17
|
+
type: Component,
|
|
18
|
+
args: [{ selector: 'form-grid-body', template: "<ng-template>\n <tbody *ngIf=\"rows\">\n <tr *ngFor=\"let form of rows\">\n <td>\n <div class=\"row\">\n <div class=\"col-sm-8\">\n <a routerLink=\"{{form._id}}/view\" (click)=\"onRowSelect($event, form)\"><h5>{{ form.title }}</h5></a>\n <div class=\"form-updated small text-muted\">\n Updated {{ form.modified | timeSince }} ago\n </div>\n </div>\n <div class=\"col-sm-4\">\n <button *ngIf=\"actionAllowed('formView')\" class=\"btn btn-outline-secondary btn-sm form-btn form-btn-use\" (click)=\"onRowAction($event, form, 'view')\"><span class=\"fa fa-pencil bi bi-pencil\"></span> Enter Data</button> \n <button *ngIf=\"actionAllowed('formSubmission')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'submission')\"><span class=\"fa fa-list-alt bi bi-table\"></span> View Data</button> \n <button *ngIf=\"actionAllowed('formEdit')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'edit')\"><span class=\"fa fa-edit bi bi-pencil-square\"></span> Edit Form</button> \n <button *ngIf=\"actionAllowed('formPermission')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'permissions')\"><span class=\"fa fa-lock bi bi-database-lock\"></span> Permissions</button> \n <button *ngIf=\"actionAllowed('formDelete')\" class=\"btn btn-danger btn-sm form-btn form-btn-delete\" (click)=\"onRowAction($event, form, 'delete')\" title=\"Delete form\"><span class=\"fa fa-trash bi bi-trash\"></span></button>\n </div>\n </div>\n </td>\n </tr>\n </tbody>\n</ng-template>\n", styles: [".form-btn{font-size:.75rem;margin:2px 0}\n"] }]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybUdyaWRCb2R5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL2Zvcm0vRm9ybUdyaWRCb2R5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL2Zvcm0vRm9ybUdyaWRCb2R5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBR3pELE1BS2EscUJBQXNCLFNBQVEsaUJBQWlCO0lBQzFELElBQUksQ0FBQyxNQUE0QixFQUFFLEtBQVc7UUFDNUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDcEIsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzlGLENBQUM7dUdBSlUscUJBQXFCOzJGQUFyQixxQkFBcUIsNkVDVGxDLHd1REF1QkE7O1NEZGEscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHcmlkQm9keUNvbXBvbmVudCB9IGZyb20gJy4uL0dyaWRCb2R5Q29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1pb1Byb21pc2VTZXJ2aWNlIH0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZm9ybS1ncmlkLWJvZHknLFxuICBzdHlsZVVybHM6IFsnLi9Gb3JtR3JpZEJvZHkuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL0Zvcm1HcmlkQm9keS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUdyaWRCb2R5Q29tcG9uZW50IGV4dGVuZHMgR3JpZEJvZHlDb21wb25lbnQge1xuICBsb2FkKGZvcm1pbzogRm9ybWlvUHJvbWlzZVNlcnZpY2UsIHF1ZXJ5PzogYW55KSB7XG4gICAgcXVlcnkgPSBxdWVyeSB8fCB7fTtcbiAgICByZXR1cm4gZm9ybWlvLmxvYWRGb3Jtcyh7IHBhcmFtczogcXVlcnkgfSkudGhlbigoZm9ybXM6IGFueSkgPT4gdGhpcy5zZXRSb3dzKHF1ZXJ5LCBmb3JtcykpO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGU+XG4gIDx0Ym9keSAqbmdJZj1cInJvd3NcIj5cbiAgICA8dHIgKm5nRm9yPVwibGV0IGZvcm0gb2Ygcm93c1wiPlxuICAgICAgPHRkPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS04XCI+XG4gICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwie3tmb3JtLl9pZH19L3ZpZXdcIiAoY2xpY2spPVwib25Sb3dTZWxlY3QoJGV2ZW50LCBmb3JtKVwiPjxoNT57eyBmb3JtLnRpdGxlIH19PC9oNT48L2E+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS11cGRhdGVkIHNtYWxsIHRleHQtbXV0ZWRcIj5cbiAgICAgICAgICAgICAgVXBkYXRlZCB7eyBmb3JtLm1vZGlmaWVkIHwgdGltZVNpbmNlIH19IGFnb1xuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS00XCI+XG4gICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aW9uQWxsb3dlZCgnZm9ybVZpZXcnKVwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXNlY29uZGFyeSBidG4tc20gZm9ybS1idG4gZm9ybS1idG4tdXNlXCIgKGNsaWNrKT1cIm9uUm93QWN0aW9uKCRldmVudCwgZm9ybSwgJ3ZpZXcnKVwiPjxzcGFuIGNsYXNzPVwiZmEgZmEtcGVuY2lsIGJpIGJpLXBlbmNpbFwiPjwvc3Bhbj4gRW50ZXIgRGF0YTwvYnV0dG9uPiZuYnNwO1xuICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGlvbkFsbG93ZWQoJ2Zvcm1TdWJtaXNzaW9uJylcIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1zZWNvbmRhcnkgYnRuLXNtIGZvcm0tYnRuXCIgKGNsaWNrKT1cIm9uUm93QWN0aW9uKCRldmVudCwgZm9ybSwgJ3N1Ym1pc3Npb24nKVwiPjxzcGFuIGNsYXNzPVwiZmEgZmEtbGlzdC1hbHQgYmkgYmktdGFibGVcIj48L3NwYW4+IFZpZXcgRGF0YTwvYnV0dG9uPiZuYnNwO1xuICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImFjdGlvbkFsbG93ZWQoJ2Zvcm1FZGl0JylcIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1zZWNvbmRhcnkgYnRuLXNtIGZvcm0tYnRuXCIgKGNsaWNrKT1cIm9uUm93QWN0aW9uKCRldmVudCwgZm9ybSwgJ2VkaXQnKVwiPjxzcGFuIGNsYXNzPVwiZmEgZmEtZWRpdCBiaSBiaS1wZW5jaWwtc3F1YXJlXCI+PC9zcGFuPiBFZGl0IEZvcm08L2J1dHRvbj4mbmJzcDtcbiAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJhY3Rpb25BbGxvd2VkKCdmb3JtUGVybWlzc2lvbicpXCIgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtc2Vjb25kYXJ5IGJ0bi1zbSBmb3JtLWJ0blwiIChjbGljayk9XCJvblJvd0FjdGlvbigkZXZlbnQsIGZvcm0sICdwZXJtaXNzaW9ucycpXCI+PHNwYW4gY2xhc3M9XCJmYSBmYS1sb2NrIGJpIGJpLWRhdGFiYXNlLWxvY2tcIj48L3NwYW4+IFBlcm1pc3Npb25zPC9idXR0b24+Jm5ic3A7XG4gICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aW9uQWxsb3dlZCgnZm9ybURlbGV0ZScpXCIgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBidG4tc20gZm9ybS1idG4gZm9ybS1idG4tZGVsZXRlXCIgKGNsaWNrKT1cIm9uUm93QWN0aW9uKCRldmVudCwgZm9ybSwgJ2RlbGV0ZScpXCIgdGl0bGU9XCJEZWxldGUgZm9ybVwiPjxzcGFuIGNsYXNzPVwiZmEgZmEtdHJhc2ggYmkgYmktdHJhc2hcIj48L3NwYW4+PC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICA8L3Rib2R5PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { GridFooterComponent } from '../GridFooterComponent';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "ngx-bootstrap/pagination";
|
|
7
|
+
class FormGridFooterComponent extends GridFooterComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
}
|
|
11
|
+
ngOnInit() {
|
|
12
|
+
if (!this.createText) {
|
|
13
|
+
this.createText = 'Create Form';
|
|
14
|
+
}
|
|
15
|
+
if (!this.size) {
|
|
16
|
+
this.size = 7;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: FormGridFooterComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-template #footer let-position=\"position\" let-label=\"label\">\n <thead class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.top\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\" [ngTemplateOutletContext]=\"{ label: label }\"></ng-container>\n </thead>\n <tfoot class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.bottom\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\" [ngTemplateOutletContext]=\"{ label: label }\"></ng-container>\n </tfoot>\n</ng-template>\n\n<ng-template let-label=\"label\" #defaultFooterTemplate>\n <tr>\n <td *ngIf=\"header\" [colSpan]=\"header.numHeaders\">\n <button *ngIf=\"actionAllowed('formCreate')\" class=\"btn btn-primary form-btn-use pull-left float-left\" (click)=\"createItem.emit('form')\"><em class=\"glyphicon glyphicon-plus fa fa-plus bi bi-plus\"></em> {{ createText }}</button>\n <span class=\"pull-right float-right item-counter\"><span class=\"page-num\">{{ body.firstItem }} - {{ body.lastItem }}</span> / {{ body.total }} total</span>\n <span [attr.aria-label]=\"label\" role=\"navigation\">\n <pagination [totalItems]=\"body.total\" [itemsPerPage]=\"body.limit\" [(ngModel)]=\"body.skip\" (pageChanged)=\"pageChanged.emit($event)\" [maxSize]=\"size\" class=\"justify-content-center pagination-sm\">\n </pagination>\n </span>\n </td>\n </tr>\n</ng-template>\n", styles: ["tfoot.formio-grid-footer td{padding:.3rem}tfoot.formio-grid-footer .page-num{font-size:1.4em}tfoot.formio-grid-footer ul.pagination{margin-top:5px;margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PaginationComponent, selector: "pagination", inputs: ["align", "maxSize", "boundaryLinks", "directionLinks", "firstText", "previousText", "nextText", "lastText", "rotate", "pageBtnClass", "disabled", "customPageTemplate", "customNextTemplate", "customPreviousTemplate", "customFirstTemplate", "customLastTemplate", "itemsPerPage", "totalItems"], outputs: ["numPages", "pageChanged"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
21
|
+
}
|
|
22
|
+
export { FormGridFooterComponent };
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormGridFooterComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{ encapsulation: ViewEncapsulation.None, template: "<ng-template #footer let-position=\"position\" let-label=\"label\">\n <thead class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.top\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\" [ngTemplateOutletContext]=\"{ label: label }\"></ng-container>\n </thead>\n <tfoot class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.bottom\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\" [ngTemplateOutletContext]=\"{ label: label }\"></ng-container>\n </tfoot>\n</ng-template>\n\n<ng-template let-label=\"label\" #defaultFooterTemplate>\n <tr>\n <td *ngIf=\"header\" [colSpan]=\"header.numHeaders\">\n <button *ngIf=\"actionAllowed('formCreate')\" class=\"btn btn-primary form-btn-use pull-left float-left\" (click)=\"createItem.emit('form')\"><em class=\"glyphicon glyphicon-plus fa fa-plus bi bi-plus\"></em> {{ createText }}</button>\n <span class=\"pull-right float-right item-counter\"><span class=\"page-num\">{{ body.firstItem }} - {{ body.lastItem }}</span> / {{ body.total }} total</span>\n <span [attr.aria-label]=\"label\" role=\"navigation\">\n <pagination [totalItems]=\"body.total\" [itemsPerPage]=\"body.limit\" [(ngModel)]=\"body.skip\" (pageChanged)=\"pageChanged.emit($event)\" [maxSize]=\"size\" class=\"justify-content-center pagination-sm\">\n </pagination>\n </span>\n </td>\n </tr>\n</ng-template>\n", styles: ["tfoot.formio-grid-footer td{padding:.3rem}tfoot.formio-grid-footer .page-num{font-size:1.4em}tfoot.formio-grid-footer ul.pagination{margin-top:5px;margin-bottom:0}\n"] }]
|
|
26
|
+
}], ctorParameters: function () { return []; } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybUdyaWRGb290ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZm9ybS9Gb3JtR3JpZEZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9mb3JtL0Zvcm1HcmlkRm9vdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBRTdELE1BS2EsdUJBQXdCLFNBQVEsbUJBQW1CO0lBRTlEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUNmO0lBQ0gsQ0FBQzt1R0FiVSx1QkFBdUI7MkZBQXZCLHVCQUF1QiwyRUNScEMsNDRDQXFCQTs7U0RiYSx1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFMbkMsU0FBUztvQ0FHTyxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdyaWRGb290ZXJDb21wb25lbnQgfSBmcm9tICcuLi9HcmlkRm9vdGVyQ29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9Gb3JtR3JpZEZvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuLi9ncmlkLmZvb3Rlci5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUdyaWRGb290ZXJDb21wb25lbnQgZXh0ZW5kcyBHcmlkRm9vdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKCF0aGlzLmNyZWF0ZVRleHQpIHtcbiAgICAgIHRoaXMuY3JlYXRlVGV4dCA9ICdDcmVhdGUgRm9ybSc7XG4gICAgfVxuICAgIGlmICghdGhpcy5zaXplKSB7XG4gICAgICB0aGlzLnNpemUgPSA3O1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNmb290ZXIgbGV0LXBvc2l0aW9uPVwicG9zaXRpb25cIiBsZXQtbGFiZWw9XCJsYWJlbFwiPlxuICA8dGhlYWQgY2xhc3M9XCJmb3JtaW8tZ3JpZC1mb290ZXJcIiAqbmdJZj1cInBvc2l0aW9uID09PSBmb290ZXJQb3NpdGlvbnMudG9wXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJkZWZhdWx0Rm9vdGVyVGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBsYWJlbDogbGFiZWwgfVwiPjwvbmctY29udGFpbmVyPlxuICA8L3RoZWFkPlxuICA8dGZvb3QgY2xhc3M9XCJmb3JtaW8tZ3JpZC1mb290ZXJcIiAqbmdJZj1cInBvc2l0aW9uID09PSBmb290ZXJQb3NpdGlvbnMuYm90dG9tXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJkZWZhdWx0Rm9vdGVyVGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBsYWJlbDogbGFiZWwgfVwiPjwvbmctY29udGFpbmVyPlxuICA8L3Rmb290PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlIGxldC1sYWJlbD1cImxhYmVsXCIgI2RlZmF1bHRGb290ZXJUZW1wbGF0ZT5cbiAgPHRyPlxuICAgIDx0ZCAqbmdJZj1cImhlYWRlclwiIFtjb2xTcGFuXT1cImhlYWRlci5udW1IZWFkZXJzXCI+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aW9uQWxsb3dlZCgnZm9ybUNyZWF0ZScpXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgZm9ybS1idG4tdXNlIHB1bGwtbGVmdCBmbG9hdC1sZWZ0XCIgKGNsaWNrKT1cImNyZWF0ZUl0ZW0uZW1pdCgnZm9ybScpXCI+PGVtIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1wbHVzIGZhIGZhLXBsdXMgYmkgYmktcGx1c1wiPjwvZW0+IHt7IGNyZWF0ZVRleHQgfX08L2J1dHRvbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwicHVsbC1yaWdodCBmbG9hdC1yaWdodCBpdGVtLWNvdW50ZXJcIj48c3BhbiBjbGFzcz1cInBhZ2UtbnVtXCI+e3sgYm9keS5maXJzdEl0ZW0gfX0gLSB7eyBib2R5Lmxhc3RJdGVtIH19PC9zcGFuPiAvIHt7IGJvZHkudG90YWwgfX0gdG90YWw8L3NwYW4+XG4gICAgICA8c3BhbiBbYXR0ci5hcmlhLWxhYmVsXT1cImxhYmVsXCIgcm9sZT1cIm5hdmlnYXRpb25cIj5cbiAgICAgICAgPHBhZ2luYXRpb24gW3RvdGFsSXRlbXNdPVwiYm9keS50b3RhbFwiIFtpdGVtc1BlclBhZ2VdPVwiYm9keS5saW1pdFwiIFsobmdNb2RlbCldPVwiYm9keS5za2lwXCIgKHBhZ2VDaGFuZ2VkKT1cInBhZ2VDaGFuZ2VkLmVtaXQoJGV2ZW50KVwiIFttYXhTaXplXT1cInNpemVcIiBjbGFzcz1cImp1c3RpZnktY29udGVudC1jZW50ZXIgcGFnaW5hdGlvbi1zbVwiPlxuICAgICAgICA8L3BhZ2luYXRpb24+XG4gICAgICA8L3NwYW4+XG4gICAgPC90ZD5cbiAgPC90cj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { GridHeaderComponent } from '../GridHeaderComponent';
|
|
3
|
+
import { SortType } from '../types/grid-header';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
class FormGridHeaderComponent extends GridHeaderComponent {
|
|
7
|
+
header;
|
|
8
|
+
load(formio) {
|
|
9
|
+
this.header = {
|
|
10
|
+
label: 'Title',
|
|
11
|
+
key: 'title',
|
|
12
|
+
sort: SortType.ASC
|
|
13
|
+
};
|
|
14
|
+
this.headers = [this.header];
|
|
15
|
+
return Promise.resolve(this.headers);
|
|
16
|
+
}
|
|
17
|
+
get numHeaders() {
|
|
18
|
+
return 2;
|
|
19
|
+
}
|
|
20
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: FormGridHeaderComponent, selector: "form-grid-header", usesInheritance: true, ngImport: i0, template: "<ng-template>\n <thead>\n <tr>\n <th>\n <div class=\"row\">\n <div class=\"col-sm-8\">\n <a (click)=\"sort.emit(header)\">\n {{ header.label }} <span [ngClass]=\"{'glyphicon-triangle-top fa-caret-up': (header.sort === 'asc'), 'glyphicon-triangle-bottom fa-caret-down': (header.sort === 'desc')}\" class=\"glyphicon fa\" *ngIf=\"header.sort\"></span>\n </a>\n </div>\n <div class=\"col-sm-4\">\n Operations\n </div>\n </div>\n </th>\n </tr>\n </thead>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
22
|
+
}
|
|
23
|
+
export { FormGridHeaderComponent };
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormGridHeaderComponent, decorators: [{
|
|
25
|
+
type: Component,
|
|
26
|
+
args: [{ selector: 'form-grid-header', template: "<ng-template>\n <thead>\n <tr>\n <th>\n <div class=\"row\">\n <div class=\"col-sm-8\">\n <a (click)=\"sort.emit(header)\">\n {{ header.label }} <span [ngClass]=\"{'glyphicon-triangle-top fa-caret-up': (header.sort === 'asc'), 'glyphicon-triangle-bottom fa-caret-down': (header.sort === 'desc')}\" class=\"glyphicon fa\" *ngIf=\"header.sort\"></span>\n </a>\n </div>\n <div class=\"col-sm-4\">\n Operations\n </div>\n </div>\n </th>\n </tr>\n </thead>\n</ng-template>\n" }]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybUdyaWRIZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZm9ybS9Gb3JtR3JpZEhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9mb3JtL0Zvcm1HcmlkSGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUFhLFFBQVEsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7QUFFMUQsTUFJYSx1QkFBd0IsU0FBUSxtQkFBbUI7SUFDdkQsTUFBTSxDQUFhO0lBQzFCLElBQUksQ0FBQyxNQUFZO1FBQ2YsSUFBSSxDQUFDLE1BQU0sR0FBRztZQUNaLEtBQUssRUFBRSxPQUFPO1lBQ2QsR0FBRyxFQUFFLE9BQU87WUFDWixJQUFJLEVBQUUsUUFBUSxDQUFDLEdBQUc7U0FDbkIsQ0FBQztRQUNGLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0IsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxDQUFDLENBQUM7SUFDWCxDQUFDO3VHQWRVLHVCQUF1QjsyRkFBdkIsdUJBQXVCLCtFQ1JwQyw2a0JBa0JBOztTRFZhLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQUpuQyxTQUFTOytCQUNFLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7R3JpZEhlYWRlckNvbXBvbmVudH0gZnJvbSAnLi4vR3JpZEhlYWRlckNvbXBvbmVudCc7XG5pbXBvcnQge0dyaWRIZWFkZXIsIFNvcnRUeXBlfSBmcm9tICcuLi90eXBlcy9ncmlkLWhlYWRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvcm0tZ3JpZC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vRm9ybUdyaWRIZWFkZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1HcmlkSGVhZGVyQ29tcG9uZW50IGV4dGVuZHMgR3JpZEhlYWRlckNvbXBvbmVudCB7XG4gIHB1YmxpYyBoZWFkZXI6IEdyaWRIZWFkZXI7XG4gIGxvYWQoZm9ybWlvPzogYW55KSB7XG4gICAgdGhpcy5oZWFkZXIgPSB7XG4gICAgICBsYWJlbDogJ1RpdGxlJyxcbiAgICAgIGtleTogJ3RpdGxlJyxcbiAgICAgIHNvcnQ6IFNvcnRUeXBlLkFTQ1xuICAgIH07XG4gICAgdGhpcy5oZWFkZXJzID0gW3RoaXMuaGVhZGVyXTtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuaGVhZGVycyk7XG4gIH1cblxuICBnZXQgbnVtSGVhZGVycygpIHtcbiAgICByZXR1cm4gMjtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlPlxuICA8dGhlYWQ+XG4gICAgPHRyPlxuICAgICAgPHRoPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS04XCI+XG4gICAgICAgICAgICA8YSAoY2xpY2spPVwic29ydC5lbWl0KGhlYWRlcilcIj5cbiAgICAgICAgICAgICAge3sgaGVhZGVyLmxhYmVsIH19Jm5ic3A7PHNwYW4gW25nQ2xhc3NdPVwieydnbHlwaGljb24tdHJpYW5nbGUtdG9wIGZhLWNhcmV0LXVwJzogKGhlYWRlci5zb3J0ID09PSAnYXNjJyksICdnbHlwaGljb24tdHJpYW5nbGUtYm90dG9tIGZhLWNhcmV0LWRvd24nOiAoaGVhZGVyLnNvcnQgPT09ICdkZXNjJyl9XCIgY2xhc3M9XCJnbHlwaGljb24gZmFcIiAqbmdJZj1cImhlYWRlci5zb3J0XCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNFwiPlxuICAgICAgICAgICAgT3BlcmF0aW9uc1xuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvdGg+XG4gICAgPC90cj5cbiAgPC90aGVhZD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class TimeSince {
|
|
4
|
+
transform(date) {
|
|
5
|
+
const elapsed = (new Date().getTime() - new Date(date).getTime()) / 1000;
|
|
6
|
+
let interval;
|
|
7
|
+
if (interval >= 1) {
|
|
8
|
+
return interval + ' year' + (interval > 1 ? 's' : '');
|
|
9
|
+
}
|
|
10
|
+
interval = Math.floor(elapsed / 2592000);
|
|
11
|
+
if (interval >= 1) {
|
|
12
|
+
return interval + ' month' + (interval > 1 ? 's' : '');
|
|
13
|
+
}
|
|
14
|
+
interval = Math.floor(elapsed / 86400);
|
|
15
|
+
if (interval >= 1) {
|
|
16
|
+
return interval + ' day' + (interval > 1 ? 's' : '');
|
|
17
|
+
}
|
|
18
|
+
interval = Math.floor(elapsed / 3600);
|
|
19
|
+
if (interval >= 1) {
|
|
20
|
+
return interval + ' hour' + (interval > 1 ? 's' : '');
|
|
21
|
+
}
|
|
22
|
+
interval = Math.floor(elapsed / 60);
|
|
23
|
+
if (interval >= 1) {
|
|
24
|
+
return interval + ' minute' + (interval > 1 ? 's' : '');
|
|
25
|
+
}
|
|
26
|
+
return Math.floor(elapsed) + ' second' + (elapsed > 1 ? 's' : '');
|
|
27
|
+
}
|
|
28
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: TimeSince, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
29
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: TimeSince, name: "timeSince" });
|
|
30
|
+
}
|
|
31
|
+
export { TimeSince };
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: TimeSince, decorators: [{
|
|
33
|
+
type: Pipe,
|
|
34
|
+
args: [{
|
|
35
|
+
name: 'timeSince'
|
|
36
|
+
}]
|
|
37
|
+
}] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1zaW5jZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZm9ybS90aW1lLXNpbmNlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBRXBELE1BR2EsU0FBUztJQUNwQixTQUFTLENBQUMsSUFBVTtRQUNsQixNQUFNLE9BQU8sR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDekUsSUFBSSxRQUFRLENBQUM7UUFDYixJQUFJLFFBQVEsSUFBSSxDQUFDLEVBQUU7WUFDakIsT0FBTyxRQUFRLEdBQUcsT0FBTyxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN2RDtRQUNELFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsQ0FBQztRQUN6QyxJQUFJLFFBQVEsSUFBSSxDQUFDLEVBQUM7WUFDaEIsT0FBTyxRQUFRLEdBQUcsUUFBUSxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN4RDtRQUNELFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQztRQUN2QyxJQUFJLFFBQVEsSUFBSSxDQUFDLEVBQUU7WUFDakIsT0FBTyxRQUFRLEdBQUcsTUFBTSxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN0RDtRQUNELFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQztRQUN0QyxJQUFJLFFBQVEsSUFBSSxDQUFDLEVBQUU7WUFDakIsT0FBTyxRQUFRLEdBQUcsT0FBTyxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN2RDtRQUNELFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNwQyxJQUFJLFFBQVEsSUFBSSxDQUFDLEVBQUU7WUFDakIsT0FBTyxRQUFRLEdBQUcsU0FBUyxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6RDtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxTQUFTLEdBQUcsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7dUdBeEJVLFNBQVM7cUdBQVQsU0FBUzs7U0FBVCxTQUFTOzJGQUFULFNBQVM7a0JBSHJCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFdBQVc7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICd0aW1lU2luY2UnXG59KVxuZXhwb3J0IGNsYXNzIFRpbWVTaW5jZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oZGF0ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgY29uc3QgZWxhcHNlZCA9IChuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIG5ldyBEYXRlKGRhdGUpLmdldFRpbWUoKSkgLyAxMDAwO1xuICAgIGxldCBpbnRlcnZhbDtcbiAgICBpZiAoaW50ZXJ2YWwgPj0gMSkge1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyB5ZWFyJyArIChpbnRlcnZhbCA+IDEgPyAncycgOiAnJyk7XG4gICAgfVxuICAgIGludGVydmFsID0gTWF0aC5mbG9vcihlbGFwc2VkIC8gMjU5MjAwMCk7XG4gICAgaWYgKGludGVydmFsID49IDEpe1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyBtb250aCcgKyAoaW50ZXJ2YWwgPiAxID8gJ3MnIDogJycpO1xuICAgIH1cbiAgICBpbnRlcnZhbCA9IE1hdGguZmxvb3IoZWxhcHNlZCAvIDg2NDAwKTtcbiAgICBpZiAoaW50ZXJ2YWwgPj0gMSkge1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyBkYXknICsgKGludGVydmFsID4gMSA/ICdzJyA6ICcnKTtcbiAgICB9XG4gICAgaW50ZXJ2YWwgPSBNYXRoLmZsb29yKGVsYXBzZWQgLyAzNjAwKTtcbiAgICBpZiAoaW50ZXJ2YWwgPj0gMSkge1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyBob3VyJyArIChpbnRlcnZhbCA+IDEgPyAncycgOiAnJyk7XG4gICAgfVxuICAgIGludGVydmFsID0gTWF0aC5mbG9vcihlbGFwc2VkIC8gNjApO1xuICAgIGlmIChpbnRlcnZhbCA+PSAxKSB7XG4gICAgICByZXR1cm4gaW50ZXJ2YWwgKyAnIG1pbnV0ZScgKyAoaW50ZXJ2YWwgPiAxID8gJ3MnIDogJycpO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5mbG9vcihlbGFwc2VkKSArICcgc2Vjb25kJyArIChlbGFwc2VkID4gMSA/ICdzJyA6ICcnKTtcbiAgfVxufSJdfQ==
|