@formio/angular 5.2.0-rc.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/FormioBaseComponent.d.ts +75 -0
- package/FormioBaseComponent.d.ts.map +1 -0
- package/FormioBaseComponent.ngfactory.d.ts.map +1 -0
- package/README.md +24 -0
- package/auth/auth.component.d.ts +3 -0
- package/auth/auth.component.d.ts.map +1 -0
- package/auth/auth.config.d.ts +60 -0
- package/auth/auth.config.d.ts.map +1 -0
- package/auth/auth.module.d.ts +6 -0
- package/auth/auth.module.d.ts.map +1 -0
- package/auth/auth.routes.d.ts +4 -0
- package/auth/auth.routes.d.ts.map +1 -0
- package/auth/auth.service.d.ts +38 -0
- package/auth/auth.service.d.ts.map +1 -0
- package/auth/formio-angular-auth.d.ts +5 -0
- package/auth/formio-angular-auth.d.ts.map +1 -0
- package/auth/formio-angular-auth.metadata.json +1 -0
- package/auth/index.d.ts +9 -0
- package/auth/index.d.ts.map +1 -0
- package/auth/login/login.component.d.ts +6 -0
- package/auth/login/login.component.d.ts.map +1 -0
- package/auth/package.json +11 -0
- package/auth/public_api.d.ts +2 -0
- package/auth/public_api.d.ts.map +1 -0
- package/auth/register/register.component.d.ts +6 -0
- package/auth/register/register.component.d.ts.map +1 -0
- package/auth/resetpass/resetpass.component.d.ts +6 -0
- package/auth/resetpass/resetpass.component.d.ts.map +1 -0
- package/bundles/formio-angular-auth.umd.js +312 -0
- package/bundles/formio-angular-auth.umd.js.map +1 -0
- package/bundles/formio-angular-grid.umd.js +1010 -0
- package/bundles/formio-angular-grid.umd.js.map +1 -0
- package/bundles/formio-angular-manager.umd.js +1122 -0
- package/bundles/formio-angular-manager.umd.js.map +1 -0
- package/bundles/formio-angular-resource.umd.js +556 -0
- package/bundles/formio-angular-resource.umd.js.map +1 -0
- package/bundles/formio-angular.umd.js +1497 -0
- package/bundles/formio-angular.umd.js.map +1 -0
- package/components/alerts/formio.alerts.component.d.ts +9 -0
- package/components/alerts/formio.alerts.component.d.ts.map +1 -0
- package/components/alerts/formio.alerts.component.ngfactory.d.ts.map +1 -0
- package/components/alerts/formio.alerts.d.ts +12 -0
- package/components/alerts/formio.alerts.d.ts.map +1 -0
- package/components/alerts/parse-html-content.pipe.d.ts +5 -0
- package/components/alerts/parse-html-content.pipe.d.ts.map +1 -0
- package/components/alerts/parse-html-content.pipe.ngfactory.d.ts.map +1 -0
- package/components/formbuilder/formbuilder.component.d.ts +34 -0
- package/components/formbuilder/formbuilder.component.d.ts.map +1 -0
- package/components/formbuilder/formbuilder.component.ngfactory.d.ts.map +1 -0
- package/components/formio/formio.component.d.ts +12 -0
- package/components/formio/formio.component.d.ts.map +1 -0
- package/components/formio/formio.component.ngfactory.d.ts.map +1 -0
- package/components/loader/formio.loader.component.d.ts +4 -0
- package/components/loader/formio.loader.component.d.ts.map +1 -0
- package/components/loader/formio.loader.component.ngfactory.d.ts.map +1 -0
- package/components/loader/formio.loader.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/core.d.ts +14 -0
- package/core.d.ts.map +1 -0
- package/custom-component/create-custom-component.d.ts +239 -0
- package/custom-component/create-custom-component.d.ts.map +1 -0
- package/custom-component/custom-tags.service.d.ts +5 -0
- package/custom-component/custom-tags.service.d.ts.map +1 -0
- package/custom-component/custom-tags.service.ngfactory.d.ts.map +1 -0
- package/custom-component/register-custom-component.d.ts +7 -0
- package/custom-component/register-custom-component.d.ts.map +1 -0
- package/elements.common.d.ts +31 -0
- package/elements.common.d.ts.map +1 -0
- package/esm2015/FormioBaseComponent.js +456 -0
- package/esm2015/auth/auth.component.js +9 -0
- package/esm2015/auth/auth.config.js +12 -0
- package/esm2015/auth/auth.module.js +34 -0
- package/esm2015/auth/auth.routes.js +32 -0
- package/esm2015/auth/auth.service.js +160 -0
- package/esm2015/auth/formio-angular-auth.js +5 -0
- package/esm2015/auth/index.js +9 -0
- package/esm2015/auth/login/login.component.js +16 -0
- package/esm2015/auth/public_api.js +5 -0
- package/esm2015/auth/register/register.component.js +16 -0
- package/esm2015/auth/resetpass/resetpass.component.js +16 -0
- package/esm2015/components/alerts/formio.alerts.component.js +26 -0
- package/esm2015/components/alerts/formio.alerts.js +15 -0
- package/esm2015/components/alerts/parse-html-content.pipe.js +15 -0
- package/esm2015/components/formbuilder/formbuilder.component.js +185 -0
- package/esm2015/components/formio/formio.component.js +39 -0
- package/esm2015/components/loader/formio.loader.component.js +14 -0
- package/esm2015/core.js +14 -0
- package/esm2015/custom-component/create-custom-component.js +130 -0
- package/esm2015/custom-component/custom-tags.service.js +13 -0
- package/esm2015/custom-component/register-custom-component.js +23 -0
- package/esm2015/elements.common.js +2 -0
- package/esm2015/formio-angular.js +7 -0
- package/esm2015/formio-promise.service.js +33 -0
- package/esm2015/formio.common.js +8 -0
- package/esm2015/formio.config.js +11 -0
- package/esm2015/formio.module.js +42 -0
- package/esm2015/formio.service.js +59 -0
- package/esm2015/formio.utils.js +21 -0
- package/esm2015/grid/GridBodyComponent.js +76 -0
- package/esm2015/grid/GridFooterComponent.js +26 -0
- package/esm2015/grid/GridHeaderComponent.js +25 -0
- package/esm2015/grid/form/FormGridBody.component.js +16 -0
- package/esm2015/grid/form/FormGridFooter.component.js +24 -0
- package/esm2015/grid/form/FormGridHeader.component.js +24 -0
- package/esm2015/grid/form/index.js +9 -0
- package/esm2015/grid/form/time-since.pipe.js +33 -0
- package/esm2015/grid/formio-angular-grid.js +6 -0
- package/esm2015/grid/grid.component.js +211 -0
- package/esm2015/grid/grid.module.js +61 -0
- package/esm2015/grid/grid.service.js +16 -0
- package/esm2015/grid/index.js +13 -0
- package/esm2015/grid/public_api.js +5 -0
- package/esm2015/grid/submission/SubmissionGridBody.component.js +40 -0
- package/esm2015/grid/submission/SubmissionGridFooter.component.js +21 -0
- package/esm2015/grid/submission/SubmissionGridHeader.component.js +58 -0
- package/esm2015/grid/submission/index.js +9 -0
- package/esm2015/grid/types/grid-column.js +2 -0
- package/esm2015/grid/types/grid-footer-positions.js +7 -0
- package/esm2015/grid/types/grid-header.js +6 -0
- package/esm2015/index.js +5 -0
- package/esm2015/manager/create/create.component.js +13 -0
- package/esm2015/manager/delete/delete.component.js +42 -0
- package/esm2015/manager/edit/edit.component.js +109 -0
- package/esm2015/manager/form/form.component.js +73 -0
- package/esm2015/manager/form-manager.config.js +12 -0
- package/esm2015/manager/form-manager.module.js +56 -0
- package/esm2015/manager/form-manager.routes.js +74 -0
- package/esm2015/manager/form-manager.service.js +180 -0
- package/esm2015/manager/formio-angular-manager.js +5 -0
- package/esm2015/manager/index/index.component.js +86 -0
- package/esm2015/manager/index.js +16 -0
- package/esm2015/manager/public_api.js +5 -0
- package/esm2015/manager/submission/delete/delete.component.js +32 -0
- package/esm2015/manager/submission/edit/edit.component.js +24 -0
- package/esm2015/manager/submission/index/index.component.js +24 -0
- package/esm2015/manager/submission/submission/submission.component.js +27 -0
- package/esm2015/manager/submission/view/view.component.js +16 -0
- package/esm2015/manager/view/view.component.js +45 -0
- package/esm2015/public-api.js +5 -0
- package/esm2015/resource/create/create.component.js +40 -0
- package/esm2015/resource/delete/delete.component.js +29 -0
- package/esm2015/resource/edit/edit.component.js +39 -0
- package/esm2015/resource/formio-angular-resource.js +5 -0
- package/esm2015/resource/index/index.component.js +65 -0
- package/esm2015/resource/index.js +12 -0
- package/esm2015/resource/public_api.js +5 -0
- package/esm2015/resource/resource.component.js +48 -0
- package/esm2015/resource/resource.config.js +12 -0
- package/esm2015/resource/resource.module.js +44 -0
- package/esm2015/resource/resource.routes.js +42 -0
- package/esm2015/resource/resource.service.js +187 -0
- package/esm2015/resource/resources.service.js +22 -0
- package/esm2015/resource/view/view.component.js +24 -0
- package/esm2015/types/alerts-position.js +8 -0
- package/esm2015/types/formio-metadata.js +2 -0
- package/esm2015/types/formio-submission.js +6 -0
- package/fesm2015/formio-angular-auth.js +285 -0
- package/fesm2015/formio-angular-auth.js.map +1 -0
- package/fesm2015/formio-angular-grid.js +624 -0
- package/fesm2015/formio-angular-grid.js.map +1 -0
- package/fesm2015/formio-angular-manager.js +750 -0
- package/fesm2015/formio-angular-manager.js.map +1 -0
- package/fesm2015/formio-angular-resource.js +515 -0
- package/fesm2015/formio-angular-resource.js.map +1 -0
- package/fesm2015/formio-angular.js +1073 -0
- package/fesm2015/formio-angular.js.map +1 -0
- package/formio-angular.d.ts +7 -0
- package/formio-angular.d.ts.map +1 -0
- package/formio-angular.metadata.json +1 -0
- package/formio-promise.service.d.ts +16 -0
- package/formio-promise.service.d.ts.map +1 -0
- package/formio.common.d.ts +64 -0
- package/formio.common.d.ts.map +1 -0
- package/formio.config.d.ts +7 -0
- package/formio.config.d.ts.map +1 -0
- package/formio.config.ngfactory.d.ts.map +1 -0
- package/formio.module.d.ts +3 -0
- package/formio.module.d.ts.map +1 -0
- package/formio.module.ngfactory.d.ts.map +1 -0
- package/formio.service.d.ts +18 -0
- package/formio.service.d.ts.map +1 -0
- package/formio.utils.d.ts +2 -0
- package/formio.utils.d.ts.map +1 -0
- package/grid/GridBodyComponent.d.ts +32 -0
- package/grid/GridBodyComponent.d.ts.map +1 -0
- package/grid/GridBodyComponent.ngfactory.d.ts.map +1 -0
- package/grid/GridFooterComponent.d.ts +17 -0
- package/grid/GridFooterComponent.d.ts.map +1 -0
- package/grid/GridFooterComponent.ngfactory.d.ts.map +1 -0
- package/grid/GridHeaderComponent.d.ts +13 -0
- package/grid/GridHeaderComponent.d.ts.map +1 -0
- package/grid/GridHeaderComponent.ngfactory.d.ts.map +1 -0
- package/grid/form/FormGridBody.component.d.ts +6 -0
- package/grid/form/FormGridBody.component.d.ts.map +1 -0
- package/grid/form/FormGridBody.component.ngfactory.d.ts.map +1 -0
- package/grid/form/FormGridBody.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/grid/form/FormGridFooter.component.d.ts +7 -0
- package/grid/form/FormGridFooter.component.d.ts.map +1 -0
- package/grid/form/FormGridFooter.component.ngfactory.d.ts.map +1 -0
- package/grid/form/FormGridHeader.component.d.ts +8 -0
- package/grid/form/FormGridHeader.component.d.ts.map +1 -0
- package/grid/form/FormGridHeader.component.ngfactory.d.ts.map +1 -0
- package/grid/form/index.d.ts +10 -0
- package/grid/form/index.d.ts.map +1 -0
- package/grid/form/time-since.pipe.d.ts +5 -0
- package/grid/form/time-since.pipe.d.ts.map +1 -0
- package/grid/form/time-since.pipe.ngfactory.d.ts.map +1 -0
- package/grid/formio-angular-grid.d.ts +6 -0
- package/grid/formio-angular-grid.d.ts.map +1 -0
- package/grid/formio-angular-grid.metadata.json +1 -0
- package/grid/grid.component.d.ts +56 -0
- package/grid/grid.component.d.ts.map +1 -0
- package/grid/grid.component.ngfactory.d.ts.map +1 -0
- package/grid/grid.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/grid/grid.footer.scss.ngstyle.d.ts.map +1 -0
- package/grid/grid.module.d.ts +3 -0
- package/grid/grid.module.d.ts.map +1 -0
- package/grid/grid.module.ngfactory.d.ts.map +1 -0
- package/grid/grid.service.d.ts +7 -0
- package/grid/grid.service.d.ts.map +1 -0
- package/grid/grid.service.ngfactory.d.ts.map +1 -0
- package/grid/index.d.ts +13 -0
- package/grid/index.d.ts.map +1 -0
- package/grid/package.json +11 -0
- package/grid/public_api.d.ts +2 -0
- package/grid/public_api.d.ts.map +1 -0
- package/grid/submission/SubmissionGridBody.component.d.ts +16 -0
- package/grid/submission/SubmissionGridBody.component.d.ts.map +1 -0
- package/grid/submission/SubmissionGridBody.component.ngfactory.d.ts.map +1 -0
- package/grid/submission/SubmissionGridFooter.component.d.ts +7 -0
- package/grid/submission/SubmissionGridFooter.component.d.ts.map +1 -0
- package/grid/submission/SubmissionGridFooter.component.ngfactory.d.ts.map +1 -0
- package/grid/submission/SubmissionGridHeader.component.d.ts +27 -0
- package/grid/submission/SubmissionGridHeader.component.d.ts.map +1 -0
- package/grid/submission/SubmissionGridHeader.component.ngfactory.d.ts.map +1 -0
- package/grid/submission/index.d.ts +10 -0
- package/grid/submission/index.d.ts.map +1 -0
- package/grid/types/grid-column.d.ts +7 -0
- package/grid/types/grid-column.d.ts.map +1 -0
- package/grid/types/grid-footer-positions.d.ts +6 -0
- package/grid/types/grid-footer-positions.d.ts.map +1 -0
- package/grid/types/grid-header.d.ts +13 -0
- package/grid/types/grid-header.d.ts.map +1 -0
- package/index.d.ts +6 -0
- package/index.d.ts.map +1 -0
- package/manager/create/create.component.d.ts +6 -0
- package/manager/create/create.component.d.ts.map +1 -0
- package/manager/delete/delete.component.d.ts +15 -0
- package/manager/delete/delete.component.d.ts.map +1 -0
- package/manager/edit/edit.component.d.ts +28 -0
- package/manager/edit/edit.component.d.ts.map +1 -0
- package/manager/form/form.component.d.ts +26 -0
- package/manager/form/form.component.d.ts.map +1 -0
- package/manager/form-manager.config.d.ts +23 -0
- package/manager/form-manager.config.d.ts.map +1 -0
- package/manager/form-manager.module.d.ts +6 -0
- package/manager/form-manager.module.d.ts.map +1 -0
- package/manager/form-manager.routes.d.ts +4 -0
- package/manager/form-manager.routes.d.ts.map +1 -0
- package/manager/form-manager.service.d.ts +35 -0
- package/manager/form-manager.service.d.ts.map +1 -0
- package/manager/formio-angular-manager.d.ts +5 -0
- package/manager/formio-angular-manager.d.ts.map +1 -0
- package/manager/formio-angular-manager.metadata.json +1 -0
- package/manager/index/index.component.d.ts +23 -0
- package/manager/index/index.component.d.ts.map +1 -0
- package/manager/index.d.ts +17 -0
- package/manager/index.d.ts.map +1 -0
- package/manager/package.json +11 -0
- package/manager/public_api.d.ts +2 -0
- package/manager/public_api.d.ts.map +1 -0
- package/manager/submission/delete/delete.component.d.ts +13 -0
- package/manager/submission/delete/delete.component.d.ts.map +1 -0
- package/manager/submission/edit/edit.component.d.ts +10 -0
- package/manager/submission/edit/edit.component.d.ts.map +1 -0
- package/manager/submission/index/index.component.d.ts +10 -0
- package/manager/submission/index/index.component.d.ts.map +1 -0
- package/manager/submission/submission/submission.component.d.ts +12 -0
- package/manager/submission/submission/submission.component.d.ts.map +1 -0
- package/manager/submission/view/view.component.d.ts +6 -0
- package/manager/submission/view/view.component.d.ts.map +1 -0
- package/manager/view/view.component.d.ts +20 -0
- package/manager/view/view.component.d.ts.map +1 -0
- package/package.json +47 -0
- package/public-api.d.ts +2 -0
- package/public-api.d.ts.map +1 -0
- package/resource/create/create.component.d.ts +16 -0
- package/resource/create/create.component.d.ts.map +1 -0
- package/resource/delete/delete.component.d.ts +11 -0
- package/resource/delete/delete.component.d.ts.map +1 -0
- package/resource/edit/edit.component.d.ts +18 -0
- package/resource/edit/edit.component.d.ts.map +1 -0
- package/resource/formio-angular-resource.d.ts +5 -0
- package/resource/formio-angular-resource.d.ts.map +1 -0
- package/resource/formio-angular-resource.metadata.json +1 -0
- package/resource/index/index.component.d.ts +20 -0
- package/resource/index/index.component.d.ts.map +1 -0
- package/resource/index.d.ts +12 -0
- package/resource/index.d.ts.map +1 -0
- package/resource/package.json +11 -0
- package/resource/public_api.d.ts +2 -0
- package/resource/public_api.d.ts.map +1 -0
- package/resource/resource.component.d.ts +19 -0
- package/resource/resource.component.d.ts.map +1 -0
- package/resource/resource.config.d.ts +14 -0
- package/resource/resource.config.d.ts.map +1 -0
- package/resource/resource.module.d.ts +6 -0
- package/resource/resource.module.d.ts.map +1 -0
- package/resource/resource.routes.d.ts +4 -0
- package/resource/resource.routes.d.ts.map +1 -0
- package/resource/resource.service.d.ts +46 -0
- package/resource/resource.service.d.ts.map +1 -0
- package/resource/resources.service.d.ts +13 -0
- package/resource/resources.service.d.ts.map +1 -0
- package/resource/view/view.component.d.ts +13 -0
- package/resource/view/view.component.d.ts.map +1 -0
- package/types/alerts-position.d.ts +7 -0
- package/types/alerts-position.d.ts.map +1 -0
- package/types/formio-metadata.d.ts +11 -0
- package/types/formio-metadata.d.ts.map +1 -0
- package/types/formio-submission.d.ts +19 -0
- package/types/formio-submission.d.ts.map +1 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Input, Output, EventEmitter, ViewChild, TemplateRef, Component } from '@angular/core';
|
|
2
|
+
import { each, clone } from 'lodash';
|
|
3
|
+
import { GridService } from './grid.service';
|
|
4
|
+
export class GridBodyComponent {
|
|
5
|
+
constructor(service) {
|
|
6
|
+
this.service = service;
|
|
7
|
+
this.firstItem = 0;
|
|
8
|
+
this.lastItem = 0;
|
|
9
|
+
this.skip = 0;
|
|
10
|
+
this.limit = 0;
|
|
11
|
+
this.total = 0;
|
|
12
|
+
this.rowSelect = new EventEmitter();
|
|
13
|
+
this.rowAction = new EventEmitter();
|
|
14
|
+
this.loading = true;
|
|
15
|
+
}
|
|
16
|
+
load(formio, query) {
|
|
17
|
+
return formio.loadForm(query);
|
|
18
|
+
}
|
|
19
|
+
onRowSelect(event, row) {
|
|
20
|
+
event.preventDefault();
|
|
21
|
+
this.rowSelect.emit(row);
|
|
22
|
+
}
|
|
23
|
+
onRowAction(event, row, action) {
|
|
24
|
+
event.preventDefault();
|
|
25
|
+
this.rowAction.emit({ row, action });
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Set the rows for this Grid body.
|
|
29
|
+
*
|
|
30
|
+
* @param query
|
|
31
|
+
* @param items
|
|
32
|
+
* @return any
|
|
33
|
+
*/
|
|
34
|
+
setRows(query, items) {
|
|
35
|
+
this.rows = [];
|
|
36
|
+
if (typeof items !== 'object') {
|
|
37
|
+
this.firstItem = 0;
|
|
38
|
+
this.lastItem = 0;
|
|
39
|
+
this.total = 0;
|
|
40
|
+
this.skip = 0;
|
|
41
|
+
this.loading = false;
|
|
42
|
+
this.service.setRows(this.rows);
|
|
43
|
+
return this.rows;
|
|
44
|
+
}
|
|
45
|
+
this.firstItem = query.skip + 1;
|
|
46
|
+
this.lastItem = this.firstItem + items.length - 1;
|
|
47
|
+
if (this.lastItem === 0) {
|
|
48
|
+
this.firstItem = 0;
|
|
49
|
+
}
|
|
50
|
+
this.total = items.serverCount;
|
|
51
|
+
this.limit = query.limit;
|
|
52
|
+
this.skip = Math.floor(items.skip / query.limit) + 1;
|
|
53
|
+
this.loading = false;
|
|
54
|
+
each(items, (item) => {
|
|
55
|
+
this.rows.push(clone(item));
|
|
56
|
+
});
|
|
57
|
+
this.service.setRows(this.rows);
|
|
58
|
+
return this.rows;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
GridBodyComponent.decorators = [
|
|
62
|
+
{ type: Component, args: [{
|
|
63
|
+
template: ''
|
|
64
|
+
},] }
|
|
65
|
+
];
|
|
66
|
+
GridBodyComponent.ctorParameters = () => [
|
|
67
|
+
{ type: GridService }
|
|
68
|
+
];
|
|
69
|
+
GridBodyComponent.propDecorators = {
|
|
70
|
+
header: [{ type: Input }],
|
|
71
|
+
actionAllowed: [{ type: Input }],
|
|
72
|
+
rowSelect: [{ type: Output }],
|
|
73
|
+
rowAction: [{ type: Output }],
|
|
74
|
+
template: [{ type: ViewChild, args: [TemplateRef, { static: true },] }]
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JpZEJvZHlDb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9HcmlkQm9keUNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTTdDLE1BQU0sT0FBTyxpQkFBaUI7SUFhNUIsWUFBbUIsT0FBb0I7UUFBcEIsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQUxoQyxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNiLFNBQUksR0FBRyxDQUFDLENBQUM7UUFDVCxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUVmLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQUksQ0FBQyxNQUE0QixFQUFFLEtBQVc7UUFDNUMsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBSyxFQUFFLEdBQUc7UUFDcEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNO1FBQzVCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxPQUFPLENBQUMsS0FBVSxFQUFFLEtBQVU7UUFDNUIsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7UUFFZixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztZQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztZQUNmLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1lBQ2QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRWhDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztTQUNsQjtRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ2xELElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7U0FDcEI7UUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLElBQVMsRUFBRSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDOzs7WUF4RUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2I7OztZQUxRLFdBQVc7OztxQkFPakIsS0FBSzs0QkFDTCxLQUFLO3dCQUNMLE1BQU07d0JBQ04sTUFBTTt1QkFDTixTQUFTLFNBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlYWNoLCBjbG9uZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBHcmlkSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9HcmlkSGVhZGVyQ29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRTZXJ2aWNlIH0gZnJvbSAnLi9ncmlkLnNlcnZpY2UnO1xuaW1wb3J0IHtGb3JtaW9Qcm9taXNlU2VydmljZX0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBHcmlkQm9keUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGhlYWRlcjogR3JpZEhlYWRlckNvbXBvbmVudDtcbiAgQElucHV0KCkgYWN0aW9uQWxsb3dlZDogYW55O1xuICBAT3V0cHV0KCkgcm93U2VsZWN0OiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgQE91dHB1dCgpIHJvd0FjdGlvbjogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBWaWV3Q2hpbGQoVGVtcGxhdGVSZWYsIHtzdGF0aWM6IHRydWV9KSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgcHVibGljIHJvd3M6IEFycmF5PGFueT47XG4gIHB1YmxpYyBsb2FkaW5nOiBCb29sZWFuO1xuICBwdWJsaWMgZmlyc3RJdGVtID0gMDtcbiAgcHVibGljIGxhc3RJdGVtID0gMDtcbiAgcHVibGljIHNraXAgPSAwO1xuICBwdWJsaWMgbGltaXQgPSAwO1xuICBwdWJsaWMgdG90YWwgPSAwO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZTogR3JpZFNlcnZpY2UpIHtcbiAgICB0aGlzLnJvd1NlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICB0aGlzLnJvd0FjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICB9XG5cbiAgbG9hZChmb3JtaW86IEZvcm1pb1Byb21pc2VTZXJ2aWNlLCBxdWVyeT86IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIGZvcm1pby5sb2FkRm9ybShxdWVyeSk7XG4gIH1cblxuICBvblJvd1NlbGVjdChldmVudCwgcm93KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLnJvd1NlbGVjdC5lbWl0KHJvdyk7XG4gIH1cblxuICBvblJvd0FjdGlvbihldmVudCwgcm93LCBhY3Rpb24pIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMucm93QWN0aW9uLmVtaXQoeyByb3csIGFjdGlvbiB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHJvd3MgZm9yIHRoaXMgR3JpZCBib2R5LlxuICAgKlxuICAgKiBAcGFyYW0gcXVlcnlcbiAgICogQHBhcmFtIGl0ZW1zXG4gICAqIEByZXR1cm4gYW55XG4gICAqL1xuICBzZXRSb3dzKHF1ZXJ5OiBhbnksIGl0ZW1zOiBhbnkpIHtcbiAgICB0aGlzLnJvd3MgPSBbXTtcblxuICAgIGlmICh0eXBlb2YgaXRlbXMgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aGlzLmZpcnN0SXRlbSA9IDA7XG4gICAgICB0aGlzLmxhc3RJdGVtID0gMDtcbiAgICAgIHRoaXMudG90YWwgPSAwO1xuICAgICAgdGhpcy5za2lwID0gMDtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgdGhpcy5zZXJ2aWNlLnNldFJvd3ModGhpcy5yb3dzKTtcbiAgICAgIFxuICAgICAgcmV0dXJuIHRoaXMucm93cztcbiAgICB9XG5cbiAgICB0aGlzLmZpcnN0SXRlbSA9IHF1ZXJ5LnNraXAgKyAxO1xuICAgIHRoaXMubGFzdEl0ZW0gPSB0aGlzLmZpcnN0SXRlbSArIGl0ZW1zLmxlbmd0aCAtIDE7XG4gICAgaWYgKHRoaXMubGFzdEl0ZW0gPT09IDApIHtcbiAgICAgIHRoaXMuZmlyc3RJdGVtID0gMDtcbiAgICB9XG4gICAgdGhpcy50b3RhbCA9IGl0ZW1zLnNlcnZlckNvdW50O1xuICAgIHRoaXMubGltaXQgPSBxdWVyeS5saW1pdDtcbiAgICB0aGlzLnNraXAgPSBNYXRoLmZsb29yKGl0ZW1zLnNraXAgLyBxdWVyeS5saW1pdCkgKyAxO1xuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIGVhY2goaXRlbXMsIChpdGVtOiBhbnkpID0+IHtcbiAgICAgIHRoaXMucm93cy5wdXNoKGNsb25lKGl0ZW0pKTtcbiAgICB9KTtcbiAgICB0aGlzLnNlcnZpY2Uuc2V0Um93cyh0aGlzLnJvd3MpO1xuXG4gICAgcmV0dXJuIHRoaXMucm93cztcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { GridFooterPositions } from './types/grid-footer-positions';
|
|
2
|
+
import { Input, Output, ViewChild, TemplateRef, EventEmitter, Component } from '@angular/core';
|
|
3
|
+
export class GridFooterComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.footerPositions = GridFooterPositions;
|
|
6
|
+
this.pageChanged = new EventEmitter();
|
|
7
|
+
this.createItem = new EventEmitter();
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
GridFooterComponent.decorators = [
|
|
11
|
+
{ type: Component, args: [{
|
|
12
|
+
template: ''
|
|
13
|
+
},] }
|
|
14
|
+
];
|
|
15
|
+
GridFooterComponent.ctorParameters = () => [];
|
|
16
|
+
GridFooterComponent.propDecorators = {
|
|
17
|
+
header: [{ type: Input }],
|
|
18
|
+
body: [{ type: Input }],
|
|
19
|
+
createText: [{ type: Input }],
|
|
20
|
+
size: [{ type: Input }],
|
|
21
|
+
actionAllowed: [{ type: Input }],
|
|
22
|
+
pageChanged: [{ type: Output }],
|
|
23
|
+
createItem: [{ type: Output }],
|
|
24
|
+
template: [{ type: ViewChild, args: [TemplateRef, { static: true },] }]
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JpZEZvb3RlckNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL0dyaWRGb290ZXJDb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTy9GLE1BQU0sT0FBTyxtQkFBbUI7SUFZOUI7UUFGTyxvQkFBZSxHQUFHLG1CQUFtQixDQUFDO1FBRzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDdkMsQ0FBQzs7O1lBbEJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiOzs7O3FCQUVFLEtBQUs7bUJBQ0wsS0FBSzt5QkFDTCxLQUFLO21CQUNMLEtBQUs7NEJBQ0wsS0FBSzswQkFDTCxNQUFNO3lCQUNOLE1BQU07dUJBQ04sU0FBUyxTQUFDLFdBQVcsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHcmlkRm9vdGVyUG9zaXRpb25zIH0gZnJvbSAnLi90eXBlcy9ncmlkLWZvb3Rlci1wb3NpdGlvbnMnO1xuaW1wb3J0IHsgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiwgRXZlbnRFbWl0dGVyLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdyaWRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL0dyaWRIZWFkZXJDb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZEJvZHlDb21wb25lbnQgfSBmcm9tICcuL0dyaWRCb2R5Q29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBHcmlkRm9vdGVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaGVhZGVyOiBHcmlkSGVhZGVyQ29tcG9uZW50O1xuICBASW5wdXQoKSBib2R5OiBHcmlkQm9keUNvbXBvbmVudDtcbiAgQElucHV0KCkgY3JlYXRlVGV4dDogU3RyaW5nO1xuICBASW5wdXQoKSBzaXplOiBudW1iZXI7XG4gIEBJbnB1dCgpIGFjdGlvbkFsbG93ZWQ6IGFueTtcbiAgQE91dHB1dCgpIHBhZ2VDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgQE91dHB1dCgpIGNyZWF0ZUl0ZW06IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmLCB7c3RhdGljOiB0cnVlfSkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcHVibGljIGZvb3RlclBvc2l0aW9ucyA9IEdyaWRGb290ZXJQb3NpdGlvbnM7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5wYWdlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICB0aGlzLmNyZWF0ZUl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Output, EventEmitter, ViewChild, TemplateRef, Input, Component } from '@angular/core';
|
|
2
|
+
export class GridHeaderComponent {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.headers = [];
|
|
5
|
+
this.sort = new EventEmitter();
|
|
6
|
+
}
|
|
7
|
+
get numHeaders() {
|
|
8
|
+
return this.headers.length;
|
|
9
|
+
}
|
|
10
|
+
load(formio, query, columns) {
|
|
11
|
+
return Promise.resolve([]);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
GridHeaderComponent.decorators = [
|
|
15
|
+
{ type: Component, args: [{
|
|
16
|
+
template: ''
|
|
17
|
+
},] }
|
|
18
|
+
];
|
|
19
|
+
GridHeaderComponent.ctorParameters = () => [];
|
|
20
|
+
GridHeaderComponent.propDecorators = {
|
|
21
|
+
actionAllowed: [{ type: Input }],
|
|
22
|
+
sort: [{ type: Output }],
|
|
23
|
+
template: [{ type: ViewChild, args: [TemplateRef, { static: true },] }]
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JpZEhlYWRlckNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL0dyaWRIZWFkZXJDb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTy9GLE1BQU0sT0FBTyxtQkFBbUI7SUFLOUI7UUFDRSxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksQ0FBQyxNQUE0QixFQUFFLEtBQVcsRUFBRSxPQUFvQjtRQUNsRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7O1lBbkJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiOzs7OzRCQUVFLEtBQUs7bUJBQ0wsTUFBTTt1QkFDTixTQUFTLFNBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIFRlbXBsYXRlUmVmLCBJbnB1dCwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1pb1Byb21pc2VTZXJ2aWNlfSBmcm9tICdAZm9ybWlvL2FuZ3VsYXInO1xuaW1wb3J0IHtHcmlkSGVhZGVyfSBmcm9tICcuL3R5cGVzL2dyaWQtaGVhZGVyJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBHcmlkSGVhZGVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgYWN0aW9uQWxsb3dlZDogYW55O1xuICBAT3V0cHV0KCkgc29ydDogRXZlbnRFbWl0dGVyPEdyaWRIZWFkZXI+O1xuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmLCB7c3RhdGljOiB0cnVlfSkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIHB1YmxpYyBoZWFkZXJzOiBBcnJheTxHcmlkSGVhZGVyPjtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5oZWFkZXJzID0gW107XG4gICAgdGhpcy5zb3J0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICB9XG5cbiAgZ2V0IG51bUhlYWRlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGVhZGVycy5sZW5ndGg7XG4gIH1cblxuICBsb2FkKGZvcm1pbzogRm9ybWlvUHJvbWlzZVNlcnZpY2UsIHF1ZXJ5PzogYW55LCBjb2x1bW5zPzogQXJyYXk8YW55Pik6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { GridBodyComponent } from '../GridBodyComponent';
|
|
3
|
+
export class FormGridBodyComponent extends GridBodyComponent {
|
|
4
|
+
load(formio, query) {
|
|
5
|
+
query = query || {};
|
|
6
|
+
return formio.loadForms({ params: query }).then((forms) => this.setRows(query, forms));
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
FormGridBodyComponent.decorators = [
|
|
10
|
+
{ type: Component, args: [{
|
|
11
|
+
selector: 'form-grid-body',
|
|
12
|
+
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\"></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\"></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\"></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\"></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\"></span></button>\n </div>\n </div>\n </td>\n </tr>\n </tbody>\n</ng-template>\n",
|
|
13
|
+
styles: [".form-btn{font-size:.75rem;margin:2px 0}\n"]
|
|
14
|
+
},] }
|
|
15
|
+
];
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybUdyaWRCb2R5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL2Zvcm0vRm9ybUdyaWRCb2R5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBUXpELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxpQkFBaUI7SUFDMUQsSUFBSSxDQUFDLE1BQTRCLEVBQUUsS0FBVztRQUM1QyxLQUFLLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNwQixPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUYsQ0FBQzs7O1lBVEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQkFBZ0I7Z0JBRTFCLHFxREFBNEM7O2FBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHcmlkQm9keUNvbXBvbmVudCB9IGZyb20gJy4uL0dyaWRCb2R5Q29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1pb1Byb21pc2VTZXJ2aWNlIH0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZm9ybS1ncmlkLWJvZHknLFxuICBzdHlsZVVybHM6IFsnLi9Gb3JtR3JpZEJvZHkuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL0Zvcm1HcmlkQm9keS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUdyaWRCb2R5Q29tcG9uZW50IGV4dGVuZHMgR3JpZEJvZHlDb21wb25lbnQge1xuICBsb2FkKGZvcm1pbzogRm9ybWlvUHJvbWlzZVNlcnZpY2UsIHF1ZXJ5PzogYW55KSB7XG4gICAgcXVlcnkgPSBxdWVyeSB8fCB7fTtcbiAgICByZXR1cm4gZm9ybWlvLmxvYWRGb3Jtcyh7IHBhcmFtczogcXVlcnkgfSkudGhlbigoZm9ybXM6IGFueSkgPT4gdGhpcy5zZXRSb3dzKHF1ZXJ5LCBmb3JtcykpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { GridFooterComponent } from '../GridFooterComponent';
|
|
3
|
+
export class FormGridFooterComponent extends GridFooterComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
super();
|
|
6
|
+
}
|
|
7
|
+
ngOnInit() {
|
|
8
|
+
if (!this.createText) {
|
|
9
|
+
this.createText = 'Create Form';
|
|
10
|
+
}
|
|
11
|
+
if (!this.size) {
|
|
12
|
+
this.size = 7;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
FormGridFooterComponent.decorators = [
|
|
17
|
+
{ type: Component, args: [{
|
|
18
|
+
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')\"><i class=\"glyphicon glyphicon-plus fa fa-plus\"></i> {{ 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",
|
|
19
|
+
encapsulation: ViewEncapsulation.None,
|
|
20
|
+
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"]
|
|
21
|
+
},] }
|
|
22
|
+
];
|
|
23
|
+
FormGridFooterComponent.ctorParameters = () => [];
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybUdyaWRGb290ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZm9ybS9Gb3JtR3JpZEZvb3Rlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxpQkFBaUIsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQU83RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsbUJBQW1CO0lBRTlEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUNmO0lBQ0gsQ0FBQzs7O1lBbEJGLFNBQVMsU0FBQztnQkFDVCx5NENBQThDO2dCQUU5QyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTs7YUFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3JpZEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uL0dyaWRGb290ZXJDb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL0Zvcm1HcmlkRm9vdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4uL2dyaWQuZm9vdGVyLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtR3JpZEZvb3RlckNvbXBvbmVudCBleHRlbmRzIEdyaWRGb290ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuY3JlYXRlVGV4dCkge1xuICAgICAgdGhpcy5jcmVhdGVUZXh0ID0gJ0NyZWF0ZSBGb3JtJztcbiAgICB9XG4gICAgaWYgKCF0aGlzLnNpemUpIHtcbiAgICAgIHRoaXMuc2l6ZSA9IDc7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { GridHeaderComponent } from '../GridHeaderComponent';
|
|
3
|
+
import { SortType } from '../types/grid-header';
|
|
4
|
+
export class FormGridHeaderComponent extends GridHeaderComponent {
|
|
5
|
+
load(formio) {
|
|
6
|
+
this.header = {
|
|
7
|
+
label: 'Title',
|
|
8
|
+
key: 'title',
|
|
9
|
+
sort: SortType.ASC
|
|
10
|
+
};
|
|
11
|
+
this.headers = [this.header];
|
|
12
|
+
return Promise.resolve(this.headers);
|
|
13
|
+
}
|
|
14
|
+
get numHeaders() {
|
|
15
|
+
return 2;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
FormGridHeaderComponent.decorators = [
|
|
19
|
+
{ type: Component, args: [{
|
|
20
|
+
selector: 'form-grid-header',
|
|
21
|
+
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"
|
|
22
|
+
},] }
|
|
23
|
+
];
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybUdyaWRIZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZm9ybS9Gb3JtR3JpZEhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMzRCxPQUFPLEVBQWEsUUFBUSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFNMUQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLG1CQUFtQjtJQUU5RCxJQUFJLENBQUMsTUFBWTtRQUNmLElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixLQUFLLEVBQUUsT0FBTztZQUNkLEdBQUcsRUFBRSxPQUFPO1lBQ1osSUFBSSxFQUFFLFFBQVEsQ0FBQyxHQUFHO1NBQ25CLENBQUM7UUFDRixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7O1lBbEJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1Qix1bEJBQThDO2FBQy9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtHcmlkSGVhZGVyQ29tcG9uZW50fSBmcm9tICcuLi9HcmlkSGVhZGVyQ29tcG9uZW50JztcbmltcG9ydCB7R3JpZEhlYWRlciwgU29ydFR5cGV9IGZyb20gJy4uL3R5cGVzL2dyaWQtaGVhZGVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZm9ybS1ncmlkLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9Gb3JtR3JpZEhlYWRlci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUdyaWRIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBHcmlkSGVhZGVyQ29tcG9uZW50IHtcbiAgcHVibGljIGhlYWRlcjogR3JpZEhlYWRlcjtcbiAgbG9hZChmb3JtaW8/OiBhbnkpIHtcbiAgICB0aGlzLmhlYWRlciA9IHtcbiAgICAgIGxhYmVsOiAnVGl0bGUnLFxuICAgICAga2V5OiAndGl0bGUnLFxuICAgICAgc29ydDogU29ydFR5cGUuQVNDXG4gICAgfTtcbiAgICB0aGlzLmhlYWRlcnMgPSBbdGhpcy5oZWFkZXJdO1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5oZWFkZXJzKTtcbiAgfVxuXG4gIGdldCBudW1IZWFkZXJzKCkge1xuICAgIHJldHVybiAyO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FormGridHeaderComponent } from './FormGridHeader.component';
|
|
2
|
+
import { FormGridBodyComponent } from './FormGridBody.component';
|
|
3
|
+
import { FormGridFooterComponent } from './FormGridFooter.component';
|
|
4
|
+
export default {
|
|
5
|
+
header: FormGridHeaderComponent,
|
|
6
|
+
body: FormGridBodyComponent,
|
|
7
|
+
footer: FormGridFooterComponent
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9mb3JtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLGVBQWU7SUFDYixNQUFNLEVBQUUsdUJBQXVCO0lBQy9CLElBQUksRUFBRSxxQkFBcUI7SUFDM0IsTUFBTSxFQUFFLHVCQUF1QjtDQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUdyaWRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL0Zvcm1HcmlkSGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtR3JpZEJvZHlDb21wb25lbnQgfSBmcm9tICcuL0Zvcm1HcmlkQm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybUdyaWRGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL0Zvcm1HcmlkRm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgZGVmYXVsdCB7XG4gIGhlYWRlcjogRm9ybUdyaWRIZWFkZXJDb21wb25lbnQsXG4gIGJvZHk6IEZvcm1HcmlkQm9keUNvbXBvbmVudCxcbiAgZm9vdGVyOiBGb3JtR3JpZEZvb3RlckNvbXBvbmVudFxufTtcbiJdfQ==
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
export class TimeSince {
|
|
3
|
+
transform(date) {
|
|
4
|
+
const elapsed = (new Date().getTime() - new Date(date).getTime()) / 1000;
|
|
5
|
+
let interval;
|
|
6
|
+
if (interval >= 1) {
|
|
7
|
+
return interval + ' year' + (interval > 1 ? 's' : '');
|
|
8
|
+
}
|
|
9
|
+
interval = Math.floor(elapsed / 2592000);
|
|
10
|
+
if (interval >= 1) {
|
|
11
|
+
return interval + ' month' + (interval > 1 ? 's' : '');
|
|
12
|
+
}
|
|
13
|
+
interval = Math.floor(elapsed / 86400);
|
|
14
|
+
if (interval >= 1) {
|
|
15
|
+
return interval + ' day' + (interval > 1 ? 's' : '');
|
|
16
|
+
}
|
|
17
|
+
interval = Math.floor(elapsed / 3600);
|
|
18
|
+
if (interval >= 1) {
|
|
19
|
+
return interval + ' hour' + (interval > 1 ? 's' : '');
|
|
20
|
+
}
|
|
21
|
+
interval = Math.floor(elapsed / 60);
|
|
22
|
+
if (interval >= 1) {
|
|
23
|
+
return interval + ' minute' + (interval > 1 ? 's' : '');
|
|
24
|
+
}
|
|
25
|
+
return Math.floor(elapsed) + ' second' + (elapsed > 1 ? 's' : '');
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
TimeSince.decorators = [
|
|
29
|
+
{ type: Pipe, args: [{
|
|
30
|
+
name: 'timeSince'
|
|
31
|
+
},] }
|
|
32
|
+
];
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1zaW5jZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZm9ybS90aW1lLXNpbmNlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFLcEQsTUFBTSxPQUFPLFNBQVM7SUFDcEIsU0FBUyxDQUFDLElBQVU7UUFDbEIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3pFLElBQUksUUFBUSxDQUFDO1FBQ2IsSUFBSSxRQUFRLElBQUksQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sUUFBUSxHQUFHLE9BQU8sR0FBRyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDdkQ7UUFDRCxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFDekMsSUFBSSxRQUFRLElBQUksQ0FBQyxFQUFDO1lBQ2hCLE9BQU8sUUFBUSxHQUFHLFFBQVEsR0FBRyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDeEQ7UUFDRCxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxRQUFRLElBQUksQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sUUFBUSxHQUFHLE1BQU0sR0FBRyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDdEQ7UUFDRCxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDdEMsSUFBSSxRQUFRLElBQUksQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sUUFBUSxHQUFHLE9BQU8sR0FBRyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDdkQ7UUFDRCxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDcEMsSUFBSSxRQUFRLElBQUksQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sUUFBUSxHQUFHLFNBQVMsR0FBRyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekQ7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsU0FBUyxHQUFHLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNwRSxDQUFDOzs7WUEzQkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxXQUFXO2FBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICd0aW1lU2luY2UnXG59KVxuZXhwb3J0IGNsYXNzIFRpbWVTaW5jZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oZGF0ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgY29uc3QgZWxhcHNlZCA9IChuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIG5ldyBEYXRlKGRhdGUpLmdldFRpbWUoKSkgLyAxMDAwO1xuICAgIGxldCBpbnRlcnZhbDtcbiAgICBpZiAoaW50ZXJ2YWwgPj0gMSkge1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyB5ZWFyJyArIChpbnRlcnZhbCA+IDEgPyAncycgOiAnJyk7XG4gICAgfVxuICAgIGludGVydmFsID0gTWF0aC5mbG9vcihlbGFwc2VkIC8gMjU5MjAwMCk7XG4gICAgaWYgKGludGVydmFsID49IDEpe1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyBtb250aCcgKyAoaW50ZXJ2YWwgPiAxID8gJ3MnIDogJycpO1xuICAgIH1cbiAgICBpbnRlcnZhbCA9IE1hdGguZmxvb3IoZWxhcHNlZCAvIDg2NDAwKTtcbiAgICBpZiAoaW50ZXJ2YWwgPj0gMSkge1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyBkYXknICsgKGludGVydmFsID4gMSA/ICdzJyA6ICcnKTtcbiAgICB9XG4gICAgaW50ZXJ2YWwgPSBNYXRoLmZsb29yKGVsYXBzZWQgLyAzNjAwKTtcbiAgICBpZiAoaW50ZXJ2YWwgPj0gMSkge1xuICAgICAgcmV0dXJuIGludGVydmFsICsgJyBob3VyJyArIChpbnRlcnZhbCA+IDEgPyAncycgOiAnJyk7XG4gICAgfVxuICAgIGludGVydmFsID0gTWF0aC5mbG9vcihlbGFwc2VkIC8gNjApO1xuICAgIGlmIChpbnRlcnZhbCA+PSAxKSB7XG4gICAgICByZXR1cm4gaW50ZXJ2YWwgKyAnIG1pbnV0ZScgKyAoaW50ZXJ2YWwgPiAxID8gJ3MnIDogJycpO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5mbG9vcihlbGFwc2VkKSArICcgc2Vjb25kJyArIChlbGFwc2VkID4gMSA/ICdzJyA6ICcnKTtcbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public_api';
|
|
5
|
+
export { TimeSince as ɵa } from './form/time-since.pipe';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWlvLWFuZ3VsYXItZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL2Zvcm1pby1hbmd1bGFyLWdyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsU0FBUyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge1RpbWVTaW5jZSBhcyDJtWF9IGZyb20gJy4vZm9ybS90aW1lLXNpbmNlLnBpcGUnOyJdfQ==
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { GridFooterPositions } from './types/grid-footer-positions';
|
|
2
|
+
import { ChangeDetectorRef, Component, ComponentFactoryResolver, EventEmitter, Input, Output, ViewChild, ViewContainerRef } from '@angular/core';
|
|
3
|
+
import { FormioAlerts } from '@formio/angular';
|
|
4
|
+
import { each } from 'lodash';
|
|
5
|
+
import { Formio } from 'formiojs';
|
|
6
|
+
import FormComponents from './form/index';
|
|
7
|
+
import SubmissionComponents from './submission/index';
|
|
8
|
+
import { FormioPromiseService } from '@formio/angular';
|
|
9
|
+
import { SortType } from './types/grid-header';
|
|
10
|
+
export class FormioGridComponent {
|
|
11
|
+
constructor(alerts, resolver, ref) {
|
|
12
|
+
this.alerts = alerts;
|
|
13
|
+
this.resolver = resolver;
|
|
14
|
+
this.ref = ref;
|
|
15
|
+
this.footerPosition = GridFooterPositions.bottom;
|
|
16
|
+
this.page = 0;
|
|
17
|
+
this.isLoading = false;
|
|
18
|
+
this.initialized = false;
|
|
19
|
+
this.footerPositions = GridFooterPositions;
|
|
20
|
+
this.select = this.rowSelect = new EventEmitter();
|
|
21
|
+
this.rowAction = new EventEmitter();
|
|
22
|
+
this.createItem = new EventEmitter();
|
|
23
|
+
this.error = new EventEmitter();
|
|
24
|
+
this.isLoading = true;
|
|
25
|
+
}
|
|
26
|
+
createComponent(property, component) {
|
|
27
|
+
const factory = this.resolver.resolveComponentFactory(component);
|
|
28
|
+
const componentRef = property.createComponent(factory);
|
|
29
|
+
return componentRef.instance;
|
|
30
|
+
}
|
|
31
|
+
loadGrid(src) {
|
|
32
|
+
// If no source is provided, then skip.
|
|
33
|
+
if (!src && !this.formio) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
// Do not double load.
|
|
37
|
+
if (this.formio && this.src && (src === this.src)) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
if (src) {
|
|
41
|
+
this.src = src;
|
|
42
|
+
this.formio = new FormioPromiseService(this.src, { formOnly: true });
|
|
43
|
+
}
|
|
44
|
+
// Load the header.
|
|
45
|
+
this.header.load(this.formio, {}, this.columns)
|
|
46
|
+
.then(() => this.setPage(0))
|
|
47
|
+
.catch(error => this.onError(error));
|
|
48
|
+
}
|
|
49
|
+
ngOnInit() {
|
|
50
|
+
// Create our components.
|
|
51
|
+
const comps = this.components || ((this.gridType === 'form') ? FormComponents : SubmissionComponents);
|
|
52
|
+
this.header = this.createComponent(this.headerElement, comps.header);
|
|
53
|
+
this.header.actionAllowed = this.actionAllowed.bind(this);
|
|
54
|
+
this.header.sort.subscribe(header => this.sortColumn(header));
|
|
55
|
+
this.body = this.createComponent(this.bodyElement, comps.body);
|
|
56
|
+
this.body.header = this.header;
|
|
57
|
+
this.body.actionAllowed = this.actionAllowed.bind(this);
|
|
58
|
+
this.body.rowSelect.subscribe(row => this.rowSelect.emit(row));
|
|
59
|
+
this.body.rowAction.subscribe(action => this.rowAction.emit(action));
|
|
60
|
+
this.footer = this.createComponent(this.footerElement, comps.footer);
|
|
61
|
+
this.footer.header = this.header;
|
|
62
|
+
this.footer.body = this.body;
|
|
63
|
+
this.footer.actionAllowed = this.actionAllowed.bind(this);
|
|
64
|
+
this.footer.createText = this.createText;
|
|
65
|
+
this.footer.size = this.size;
|
|
66
|
+
this.footer.pageChanged.subscribe(page => this.pageChanged(page));
|
|
67
|
+
this.footer.createItem.subscribe(item => this.createItem.emit(item));
|
|
68
|
+
}
|
|
69
|
+
ngOnChanges(changes) {
|
|
70
|
+
if (this.initialized) {
|
|
71
|
+
if ((changes.src && changes.src.currentValue) ||
|
|
72
|
+
(changes.formio && changes.formio.currentValue)) {
|
|
73
|
+
this.loadGrid(changes.src.currentValue);
|
|
74
|
+
}
|
|
75
|
+
if (changes.items && changes.items.currentValue) {
|
|
76
|
+
this.refreshGrid();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
if (this.footer &&
|
|
80
|
+
(changes.createText && changes.createText.currentValue)) {
|
|
81
|
+
this.footer.createText = changes.createText.currentValue;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
ngAfterViewInit() {
|
|
85
|
+
this.alerts.setAlerts([]);
|
|
86
|
+
this.query = this.query || {};
|
|
87
|
+
if (this.refresh) {
|
|
88
|
+
this.refresh.subscribe((query) => this.refreshGrid(query));
|
|
89
|
+
}
|
|
90
|
+
this.loadGrid(this.src);
|
|
91
|
+
this.initialized = true;
|
|
92
|
+
this.ref.detectChanges();
|
|
93
|
+
}
|
|
94
|
+
actionAllowed(action) {
|
|
95
|
+
if (this.isActionAllowed) {
|
|
96
|
+
return this.isActionAllowed(action);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
return true;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
onError(error) {
|
|
103
|
+
this.isLoading = false;
|
|
104
|
+
this.error.emit(error);
|
|
105
|
+
if (typeof error === 'string' || error.message) {
|
|
106
|
+
this.alerts.setAlert({
|
|
107
|
+
type: 'danger',
|
|
108
|
+
message: error.message || error
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
refreshGrid(query) {
|
|
113
|
+
this.alerts.setAlerts([]);
|
|
114
|
+
this.query = query || this.query;
|
|
115
|
+
if (!this.query.hasOwnProperty('limit')) {
|
|
116
|
+
this.query.limit = 10;
|
|
117
|
+
}
|
|
118
|
+
if (!this.query.hasOwnProperty('skip')) {
|
|
119
|
+
this.query.skip = 0;
|
|
120
|
+
}
|
|
121
|
+
this.isLoading = true;
|
|
122
|
+
this.ref.detectChanges();
|
|
123
|
+
Formio.cache = {};
|
|
124
|
+
let loader = null;
|
|
125
|
+
if (this.items) {
|
|
126
|
+
loader = Promise.resolve(this.body.setRows(this.query, this.items));
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
loader = this.body.load(this.formio, this.query);
|
|
130
|
+
}
|
|
131
|
+
return loader.then(info => {
|
|
132
|
+
this.isLoading = false;
|
|
133
|
+
this.initialized = true;
|
|
134
|
+
this.ref.detectChanges();
|
|
135
|
+
}).catch(error => this.onError(error));
|
|
136
|
+
}
|
|
137
|
+
setPage(num = -1) {
|
|
138
|
+
this.page = num !== -1 ? num : this.page;
|
|
139
|
+
if (!this.query.hasOwnProperty('limit')) {
|
|
140
|
+
this.query.limit = 10;
|
|
141
|
+
}
|
|
142
|
+
if (!this.query.hasOwnProperty('skip')) {
|
|
143
|
+
this.query.skip = 0;
|
|
144
|
+
}
|
|
145
|
+
this.query.skip = this.page * this.query.limit;
|
|
146
|
+
this.refreshGrid();
|
|
147
|
+
}
|
|
148
|
+
sortColumn(header) {
|
|
149
|
+
// Reset all other column sorts.
|
|
150
|
+
each(this.header.headers, (col) => {
|
|
151
|
+
if (col.key !== header.key) {
|
|
152
|
+
col.sort = '';
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
switch (header.sort) {
|
|
156
|
+
case 'asc':
|
|
157
|
+
header.sort = SortType.DESC;
|
|
158
|
+
this.query.sort = '-' + header.key;
|
|
159
|
+
break;
|
|
160
|
+
case 'desc':
|
|
161
|
+
header.sort = undefined;
|
|
162
|
+
delete this.query.sort;
|
|
163
|
+
break;
|
|
164
|
+
case undefined:
|
|
165
|
+
header.sort = SortType.ASC;
|
|
166
|
+
this.query.sort = header.key;
|
|
167
|
+
break;
|
|
168
|
+
}
|
|
169
|
+
this.refreshGrid();
|
|
170
|
+
}
|
|
171
|
+
pageChanged(page) {
|
|
172
|
+
this.setPage(page.page - 1);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
FormioGridComponent.decorators = [
|
|
176
|
+
{ type: Component, args: [{
|
|
177
|
+
selector: 'formio-grid',
|
|
178
|
+
template: "<ng-template #headerTemplate></ng-template>\n<ng-template #bodyTemplate></ng-template>\n<ng-template #footerTemplate></ng-template>\n<div class=\"formio-grid\">\n <formio-alerts [alerts]=\"alerts\"></formio-alerts>\n <table class=\"table table-bordered table-striped table-hover\">\n <ng-container *ngIf=\"initialized && [footerPositions.top, footerPositions.both].indexOf(footerPosition) !== -1\"\n [ngTemplateOutlet]=\"footer.template\" [ngTemplateOutletContext]=\"{ position: footerPositions.top, label: label }\">\n </ng-container>\n <ng-container *ngIf=\"initialized\"\n [ngTemplateOutlet]=\"header.template\"></ng-container>\n <formio-loader [isLoading]=\"isLoading\"></formio-loader>\n <ng-container *ngIf=\"initialized\" [ngTemplateOutlet]=\"body.template\"></ng-container>\n <ng-container *ngIf=\"initialized && [footerPositions.bottom, footerPositions.both].indexOf(footerPosition) !== -1\"\n [ngTemplateOutlet]=\"footer.template\" [ngTemplateOutletContext]=\"{ position: footerPositions.bottom, label: label }\">\n </ng-container>\n </table>\n</div>\n",
|
|
179
|
+
styles: [".formio-grid{position:relative;width:100%}.grid-refresh{height:400px;width:100%}\n"]
|
|
180
|
+
},] }
|
|
181
|
+
];
|
|
182
|
+
FormioGridComponent.ctorParameters = () => [
|
|
183
|
+
{ type: FormioAlerts },
|
|
184
|
+
{ type: ComponentFactoryResolver },
|
|
185
|
+
{ type: ChangeDetectorRef }
|
|
186
|
+
];
|
|
187
|
+
FormioGridComponent.propDecorators = {
|
|
188
|
+
footerPosition: [{ type: Input }],
|
|
189
|
+
src: [{ type: Input }],
|
|
190
|
+
items: [{ type: Input }],
|
|
191
|
+
onForm: [{ type: Input }],
|
|
192
|
+
query: [{ type: Input }],
|
|
193
|
+
refresh: [{ type: Input }],
|
|
194
|
+
columns: [{ type: Input }],
|
|
195
|
+
gridType: [{ type: Input }],
|
|
196
|
+
size: [{ type: Input }],
|
|
197
|
+
components: [{ type: Input }],
|
|
198
|
+
formio: [{ type: Input }],
|
|
199
|
+
label: [{ type: Input }],
|
|
200
|
+
createText: [{ type: Input }],
|
|
201
|
+
isActionAllowed: [{ type: Input }],
|
|
202
|
+
select: [{ type: Output }],
|
|
203
|
+
rowSelect: [{ type: Output }],
|
|
204
|
+
rowAction: [{ type: Output }],
|
|
205
|
+
createItem: [{ type: Output }],
|
|
206
|
+
error: [{ type: Output }],
|
|
207
|
+
headerElement: [{ type: ViewChild, args: ['headerTemplate', { read: ViewContainerRef, static: true },] }],
|
|
208
|
+
bodyElement: [{ type: ViewChild, args: ['bodyTemplate', { read: ViewContainerRef, static: true },] }],
|
|
209
|
+
footerElement: [{ type: ViewChild, args: ['footerTemplate', { read: ViewContainerRef, static: true },] }]
|
|
210
|
+
};
|
|
211
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9ncmlkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBSWhDLE9BQU8sY0FBYyxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLG9CQUFvQixNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXJELE9BQU8sRUFBYSxRQUFRLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQU96RCxNQUFNLE9BQU8sbUJBQW1CO0lBZ0M5QixZQUNTLE1BQW9CLEVBQ25CLFFBQWtDLEVBQ2xDLEdBQXNCO1FBRnZCLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDbkIsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7UUFDbEMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFsQ3ZCLG1CQUFjLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO1FBdUI5QyxTQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ1QsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUlwQixvQkFBZSxHQUFHLG1CQUFtQixDQUFDO1FBTzNDLElB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QTZCaEIsS0FBSztrQkFDTCxLQUFLO29CQUNMLEtBQUs7cUJBQ0wsS0FBSztvQkFDTCxLQUFLO3NCQUNMLEtBQUs7c0JBQ0wsS0FBSzt1QkFDTCxLQUFLO21CQUNMLEtBQUs7eUJBQ0wsS0FBSztxQkFDTCxLQUFLO29CQUNMLEtBQUs7eUJBQ0wsS0FBSzs4QkFDTCxLQUFLO3FCQUNMLE1BQU07d0JBQ04sTUFBTTt3QkFDTixNQUFNO3lCQUNOLE1BQU07b0JBQ04sTUFBTTs0QkFDTixTQUFTLFNBQUMsZ0JBQWdCLEVBQUUsRUFBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQzswQkFDbEUsU0FBUyxTQUFDLGNBQWMsRUFBRSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDOzRCQUNoRSxTQUFTLFNBQUMsZ0JBQWdCLEVBQUUsRUFBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdyaWRGb290ZXJQb3NpdGlvbnMgfSBmcm9tICcuL3R5cGVzL2dyaWQtZm9vdGVyLXBvc2l0aW9ucyc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybWlvQWxlcnRzfSBmcm9tICdAZm9ybWlvL2FuZ3VsYXInO1xuaW1wb3J0IHtlYWNofSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtGb3JtaW99IGZyb20gJ2Zvcm1pb2pzJztcbmltcG9ydCB7R3JpZEhlYWRlckNvbXBvbmVudH0gZnJvbSAnLi9HcmlkSGVhZGVyQ29tcG9uZW50JztcbmltcG9ydCB7R3JpZEJvZHlDb21wb25lbnR9IGZyb20gJy4vR3JpZEJvZHlDb21wb25lbnQnO1xuaW1wb3J0IHtHcmlkRm9vdGVyQ29tcG9uZW50fSBmcm9tICcuL0dyaWRGb290ZXJDb21wb25lbnQnO1xuaW1wb3J0IEZvcm1Db21wb25lbnRzIGZyb20gJy4vZm9ybS9pbmRleCc7XG5pbXBvcnQgU3VibWlzc2lvbkNvbXBvbmVudHMgZnJvbSAnLi9zdWJtaXNzaW9uL2luZGV4JztcbmltcG9ydCB7Rm9ybWlvUHJvbWlzZVNlcnZpY2V9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQge0dyaWRDb2x1bW59IGZyb20gJy4vdHlwZXMvZ3JpZC1jb2x1bW4nO1xuaW1wb3J0IHtHcmlkSGVhZGVyLCBTb3J0VHlwZX0gZnJvbSAnLi90eXBlcy9ncmlkLWhlYWRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvcm1pby1ncmlkJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3JpZC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRm9ybWlvR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgZm9vdGVyUG9zaXRpb24gPSBHcmlkRm9vdGVyUG9zaXRpb25zLmJvdHRvbTtcbiAgQElucHV0KCkgc3JjPzogc3RyaW5nO1xuICBASW5wdXQoKSBpdGVtcz86IEFycmF5PGFueT47XG4gIEBJbnB1dCgpIG9uRm9ybT86IFByb21pc2U8YW55PjtcbiAgQElucHV0KCkgcXVlcnk/OiBhbnk7XG4gIEBJbnB1dCgpIHJlZnJlc2g/OiBFdmVudEVtaXR0ZXI8b2JqZWN0PjtcbiAgQElucHV0KCkgY29sdW1ucz86IEFycmF5PEdyaWRDb2x1bW4+O1xuICBASW5wdXQoKSBncmlkVHlwZT86IHN0cmluZztcbiAgQElucHV0KCkgc2l6ZT86IG51bWJlcjtcbiAgQElucHV0KCkgY29tcG9uZW50cz86IGFueTtcbiAgQElucHV0KCkgZm9ybWlvPzogRm9ybWlvUHJvbWlzZVNlcnZpY2U7XG4gIEBJbnB1dCgpIGxhYmVsPzogc3RyaW5nO1xuICBASW5wdXQoKSBjcmVhdGVUZXh0OiBTdHJpbmc7XG4gIEBJbnB1dCgpIGlzQWN0aW9uQWxsb3dlZDogYW55O1xuICBAT3V0cHV0KCkgc2VsZWN0OiBFdmVudEVtaXR0ZXI8b2JqZWN0PjtcbiAgQE91dHB1dCgpIHJvd1NlbGVjdDogRXZlbnRFbWl0dGVyPG9iamVjdD47XG4gIEBPdXRwdXQoKSByb3dBY3Rpb246IEV2ZW50RW1pdHRlcjxvYmplY3Q+O1xuICBAT3V0cHV0KCkgY3JlYXRlSXRlbTogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBPdXRwdXQoKSBlcnJvcjogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBWaWV3Q2hpbGQoJ2hlYWRlclRlbXBsYXRlJywge3JlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZX0pIGhlYWRlckVsZW1lbnQ6IFZpZXdDb250YWluZXJSZWY7XG4gIEBWaWV3Q2hpbGQoJ2JvZHlUZW1wbGF0ZScsIHtyZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWV9KSBib2R5RWxlbWVudDogVmlld0NvbnRhaW5lclJlZjtcbiAgQFZpZXdDaGlsZCgnZm9vdGVyVGVtcGxhdGUnLCB7cmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlfSkgZm9vdGVyRWxlbWVudDogVmlld0NvbnRhaW5lclJlZjtcblxuICBwdWJsaWMgcGFnZSA9IDA7XG4gIHB1YmxpYyBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgcHVibGljIGluaXRpYWxpemVkID0gZmFsc2U7XG4gIHB1YmxpYyBoZWFkZXI6IEdyaWRIZWFkZXJDb21wb25lbnQ7XG4gIHB1YmxpYyBib2R5OiBHcmlkQm9keUNvbXBvbmVudDtcbiAgcHVibGljIGZvb3RlcjogR3JpZEZvb3RlckNvbXBvbmVudDtcbiAgcHVibGljIGZvb3RlclBvc2l0aW9ucyA9IEdyaWRGb290ZXJQb3NpdGlvbnM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGFsZXJ0czogRm9ybWlvQWxlcnRzLFxuICAgIHByaXZhdGUgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBwcml2YXRlIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5zZWxlY3QgPSB0aGlzLnJvd1NlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICB0aGlzLnJvd0FjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICB0aGlzLmNyZWF0ZUl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5lcnJvciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gIH1cblxuICBjcmVhdGVDb21wb25lbnQocHJvcGVydHksIGNvbXBvbmVudCkge1xuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLnJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gcHJvcGVydHkuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuICAgIHJldHVybiBjb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gIH1cblxuICBsb2FkR3JpZChzcmM/OiBzdHJpbmcpIHtcbiAgICAvLyBJZiBubyBzb3VyY2UgaXMgcHJvdmlkZWQsIHRoZW4gc2tpcC5cbiAgICBpZiAoIXNyYyAmJiAhdGhpcy5mb3JtaW8pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gRG8gbm90IGRvdWJsZSBsb2FkLlxuICAgIGlmICh0aGlzLmZvcm1pbyAmJiB0aGlzLnNyYyAmJiAoc3JjID09PSB0aGlzLnNyYykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoc3JjKSB7XG4gICAgICB0aGlzLnNyYyA9IHNyYztcbiAgICAgIHRoaXMuZm9ybWlvID0gbmV3IEZvcm1pb1Byb21pc2VTZXJ2aWNlKHRoaXMuc3JjLCB7IGZvcm1Pbmx5OiB0cnVlIH0pO1xuICAgIH1cblxuICAgIC8vIExvYWQgdGhlIGhlYWRlci5cbiAgICB0aGlzLmhlYWRlci5sb2FkKHRoaXMuZm9ybWlvLCB7fSwgdGhpcy5jb2x1bW5zKVxuICAgICAgLnRoZW4oKCkgPT4gdGhpcy5zZXRQYWdlKDApKVxuICAgICAgLmNhdGNoKGVycm9yID0+IHRoaXMub25FcnJvcihlcnJvcikpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gQ3JlYXRlIG91ciBjb21wb25lbnRzLlxuICAgIGNvbnN0IGNvbXBzID0gdGhpcy5jb21wb25lbnRzIHx8ICgodGhpcy5ncmlkVHlwZSA9PT0gJ2Zvcm0nKSA/IEZvcm1Db21wb25lbnRzIDogU3VibWlzc2lvbkNvbXBvbmVudHMpO1xuXG4gICAgdGhpcy5oZWFkZXIgPSB0aGlzLmNyZWF0ZUNvbXBvbmVudCh0aGlzLmhlYWRlckVsZW1lbnQsIGNvbXBzLmhlYWRlcik7XG4gICAgdGhpcy5oZWFkZXIuYWN0aW9uQWxsb3dlZCA9IHRoaXMuYWN0aW9uQWxsb3dlZC5iaW5kKHRoaXMpO1xuICAgIHRoaXMuaGVhZGVyLnNvcnQuc3Vic2NyaWJlKGhlYWRlciA9PiB0aGlzLnNvcnRDb2x1bW4oaGVhZGVyKSk7XG5cbiAgICB0aGlzLmJvZHkgPSB0aGlzLmNyZWF0ZUNvbXBvbmVudCh0aGlzLmJvZHlFbGVtZW50LCBjb21wcy5ib2R5KTtcbiAgICB0aGlzLmJvZHkuaGVhZGVyID0gdGhpcy5oZWFkZXI7XG4gICAgdGhpcy5ib2R5LmFjdGlvbkFsbG93ZWQgPSB0aGlzLmFjdGlvbkFsbG93ZWQuYmluZCh0aGlzKTtcbiAgICB0aGlzLmJvZHkucm93U2VsZWN0LnN1YnNjcmliZShyb3cgPT4gdGhpcy5yb3dTZWxlY3QuZW1pdChyb3cpKTtcbiAgICB0aGlzLmJvZHkucm93QWN0aW9uLnN1YnNjcmliZShhY3Rpb24gPT4gdGhpcy5yb3dBY3Rpb24uZW1pdChhY3Rpb24pKTtcblxuICAgIHRoaXMuZm9vdGVyID0gdGhpcy5jcmVhdGVDb21wb25lbnQodGhpcy5mb290ZXJFbGVtZW50LCBjb21wcy5mb290ZXIpO1xuICAgIHRoaXMuZm9vdGVyLmhlYWRlciA9IHRoaXMuaGVhZGVyO1xuICAgIHRoaXMuZm9vdGVyLmJvZHkgPSB0aGlzLmJvZHk7XG4gICAgdGhpcy5mb290ZXIuYWN0aW9uQWxsb3dlZCA9IHRoaXMuYWN0aW9uQWxsb3dlZC5iaW5kKHRoaXMpO1xuICAgIHRoaXMuZm9vdGVyLmNyZWF0ZVRleHQgPSB0aGlzLmNyZWF0ZVRleHQ7XG4gICAgdGhpcy5mb290ZXIuc2l6ZSA9IHRoaXMuc2l6ZTtcbiAgICB0aGlzLmZvb3Rlci5wYWdlQ2hhbmdlZC5zdWJzY3JpYmUocGFnZSA9PiB0aGlzLnBhZ2VDaGFuZ2VkKHBhZ2UpKTtcbiAgICB0aGlzLmZvb3Rlci5jcmVhdGVJdGVtLnN1YnNjcmliZShpdGVtID0+IHRoaXMuY3JlYXRlSXRlbS5lbWl0KGl0ZW0pKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IGFueSkge1xuICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICBpZiAoXG4gICAgICAgIChjaGFuZ2VzLnNyYyAmJiBjaGFuZ2VzLnNyYy5jdXJyZW50VmFsdWUpIHx8XG4gICAgICAgIChjaGFuZ2VzLmZvcm1pbyAmJiBjaGFuZ2VzLmZvcm1pby5jdXJyZW50VmFsdWUpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5sb2FkR3JpZChjaGFuZ2VzLnNyYy5jdXJyZW50VmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2hhbmdlcy5pdGVtcyAmJiBjaGFuZ2VzLml0ZW1zLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICB0aGlzLnJlZnJlc2hHcmlkKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZm9vdGVyICYmXG4gICAgICAgIChjaGFuZ2VzLmNyZWF0ZVRleHQgJiYgY2hhbmdlcy5jcmVhdGVUZXh0LmN1cnJlbnRWYWx1ZSkpIHtcbiAgICAgIHRoaXMuZm9vdGVyLmNyZWF0ZVRleHQgPSBjaGFuZ2VzLmNyZWF0ZVRleHQuY3VycmVudFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmFsZXJ0cy5zZXRBbGVydHMoW10pO1xuICAgIHRoaXMucXVlcnkgPSB0aGlzLnF1ZXJ5IHx8IHt9O1xuICAgIGlmICh0aGlzLnJlZnJlc2gpIHtcbiAgICAgIHRoaXMucmVmcmVzaC5zdWJzY3JpYmUoKHF1ZXJ5OiBvYmplY3QpID0+IHRoaXMucmVmcmVzaEdyaWQocXVlcnkpKTtcbiAgICB9XG4gICAgdGhpcy5sb2FkR3JpZCh0aGlzLnNyYyk7XG4gICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgYWN0aW9uQWxsb3dlZChhY3Rpb24pIHtcbiAgICBpZiAodGhpcy5pc0FjdGlvbkFsbG93ZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQWN0aW9uQWxsb3dlZChhY3Rpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBvbkVycm9yKGVycm9yOiBhbnkpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgIHRoaXMuZXJyb3IuZW1pdChlcnJvcik7XG4gICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgfHwgZXJyb3IubWVzc2FnZSkge1xuICAgICAgdGhpcy5hbGVydHMuc2V0QWxlcnQoe1xuICAgICAgICB0eXBlOiAnZGFuZ2VyJyxcbiAgICAgICAgbWVzc2FnZTogZXJyb3IubWVzc2FnZSB8fCBlcnJvclxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVmcmVzaEdyaWQocXVlcnk/OiBhbnkpIHtcbiAgICB0aGlzLmFsZXJ0cy5zZXRBbGVydHMoW10pO1xuICAgIHRoaXMucXVlcnkgPSBxdWVyeSB8fCB0aGlzLnF1ZXJ5O1xuICAgIGlmICghdGhpcy5xdWVyeS5oYXNPd25Qcm9wZXJ0eSgnbGltaXQnKSkge1xuICAgICAgdGhpcy5xdWVyeS5saW1pdCA9IDEwO1xuICAgIH1cbiAgICBpZiAoIXRoaXMucXVlcnkuaGFzT3duUHJvcGVydHkoJ3NraXAnKSkge1xuICAgICAgdGhpcy5xdWVyeS5za2lwID0gMDtcbiAgICB9XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICBGb3JtaW8uY2FjaGUgPSB7fTtcbiAgICBsZXQgbG9hZGVyID0gbnVsbDtcbiAgICBpZiAodGhpcy5pdGVtcykge1xuICAgICAgbG9hZGVyID0gUHJvbWlzZS5yZXNvbHZlKHRoaXMuYm9keS5zZXRSb3dzKHRoaXMucXVlcnksIHRoaXMuaXRlbXMpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9hZGVyID0gdGhpcy5ib2R5LmxvYWQodGhpcy5mb3JtaW8sIHRoaXMucXVlcnkpO1xuICAgIH1cblxuICAgIHJldHVybiBsb2FkZXIudGhlbihpbmZvID0+IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KS5jYXRjaChlcnJvciA9PiB0aGlzLm9uRXJyb3IoZXJyb3IpKTtcbiAgfVxuXG4gIHNldFBhZ2UobnVtID0gLTEpIHtcbiAgICB0aGlzLnBhZ2UgPSBudW0gIT09IC0xID8gbnVtIDogdGhpcy5wYWdlO1xuICAgIGlmICghdGhpcy5xdWVyeS5oYXNPd25Qcm9wZXJ0eSgnbGltaXQnKSkge1xuICAgICAgdGhpcy5xdWVyeS5saW1pdCA9IDEwO1xuICAgIH1cbiAgICBpZiAoIXRoaXMucXVlcnkuaGFzT3duUHJvcGVydHkoJ3NraXAnKSkge1xuICAgICAgdGhpcy5xdWVyeS5za2lwID0gMDtcbiAgICB9XG4gICAgdGhpcy5xdWVyeS5za2lwID0gdGhpcy5wYWdlICogdGhpcy5xdWVyeS5saW1pdDtcbiAgICB0aGlzLnJlZnJlc2hHcmlkKCk7XG4gIH1cblxuICBzb3J0Q29sdW1uKGhlYWRlcjogR3JpZEhlYWRlcikge1xuICAgIC8vIFJlc2V0IGFsbCBvdGhlciBjb2x1bW4gc29ydHMuXG4gICAgZWFjaCh0aGlzLmhlYWRlci5oZWFkZXJzLCAoY29sOiBhbnkpID0+IHtcbiAgICAgIGlmIChjb2wua2V5ICE9PSBoZWFkZXIua2V5KSB7XG4gICAgICAgIGNvbC5zb3J0ID0gJyc7XG4gICAgICB9XG4gICAgfSk7XG4gICAgc3dpdGNoIChoZWFkZXIuc29ydCkge1xuICAgICAgY2FzZSAnYXNjJzpcbiAgICAgICAgaGVhZGVyLnNvcnQgPSBTb3J0VHlwZS5ERVNDO1xuICAgICAgICB0aGlzLnF1ZXJ5LnNvcnQgPSAnLScgKyBoZWFkZXIua2V5O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2Rlc2MnOlxuICAgICAgICBoZWFkZXIuc29ydCA9IHVuZGVmaW5lZDtcbiAgICAgICAgZGVsZXRlIHRoaXMucXVlcnkuc29ydDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgaGVhZGVyLnNvcnQgPSBTb3J0VHlwZS5BU0M7XG4gICAgICAgIHRoaXMucXVlcnkuc29ydCA9IGhlYWRlci5rZXk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICB0aGlzLnJlZnJlc2hHcmlkKCk7XG4gIH1cblxuICBwYWdlQ2hhbmdlZChwYWdlOiBhbnkpIHtcbiAgICB0aGlzLnNldFBhZ2UocGFnZS5wYWdlIC0gMSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { RouterModule } from '@angular/router';
|
|
5
|
+
import { FormioModule } from '@formio/angular';
|
|
6
|
+
import { FormioAlerts } from '@formio/angular';
|
|
7
|
+
import { FormioGridComponent } from './grid.component';
|
|
8
|
+
import { PaginationModule } from 'ngx-bootstrap/pagination';
|
|
9
|
+
import { FormGridHeaderComponent } from './form/FormGridHeader.component';
|
|
10
|
+
import { FormGridBodyComponent } from './form/FormGridBody.component';
|
|
11
|
+
import { FormGridFooterComponent } from './form/FormGridFooter.component';
|
|
12
|
+
import { SubmissionGridHeaderComponent } from './submission/SubmissionGridHeader.component';
|
|
13
|
+
import { SubmissionGridBodyComponent } from './submission/SubmissionGridBody.component';
|
|
14
|
+
import { SubmissionGridFooterComponent } from './submission/SubmissionGridFooter.component';
|
|
15
|
+
import { GridHeaderComponent } from './GridHeaderComponent';
|
|
16
|
+
import { GridBodyComponent } from './GridBodyComponent';
|
|
17
|
+
import { GridFooterComponent } from './GridFooterComponent';
|
|
18
|
+
import { GridService } from './grid.service';
|
|
19
|
+
import { TimeSince } from './form/time-since.pipe';
|
|
20
|
+
export class FormioGrid {
|
|
21
|
+
}
|
|
22
|
+
FormioGrid.decorators = [
|
|
23
|
+
{ type: NgModule, args: [{
|
|
24
|
+
imports: [
|
|
25
|
+
CommonModule,
|
|
26
|
+
FormsModule,
|
|
27
|
+
FormioModule,
|
|
28
|
+
RouterModule,
|
|
29
|
+
PaginationModule.forRoot()
|
|
30
|
+
],
|
|
31
|
+
declarations: [
|
|
32
|
+
FormioGridComponent,
|
|
33
|
+
FormGridHeaderComponent,
|
|
34
|
+
FormGridBodyComponent,
|
|
35
|
+
FormGridFooterComponent,
|
|
36
|
+
SubmissionGridHeaderComponent,
|
|
37
|
+
SubmissionGridBodyComponent,
|
|
38
|
+
SubmissionGridFooterComponent,
|
|
39
|
+
GridHeaderComponent,
|
|
40
|
+
GridBodyComponent,
|
|
41
|
+
GridFooterComponent,
|
|
42
|
+
TimeSince
|
|
43
|
+
],
|
|
44
|
+
exports: [
|
|
45
|
+
FormioGridComponent
|
|
46
|
+
],
|
|
47
|
+
entryComponents: [
|
|
48
|
+
FormGridHeaderComponent,
|
|
49
|
+
FormGridBodyComponent,
|
|
50
|
+
FormGridFooterComponent,
|
|
51
|
+
SubmissionGridHeaderComponent,
|
|
52
|
+
SubmissionGridBodyComponent,
|
|
53
|
+
SubmissionGridFooterComponent
|
|
54
|
+
],
|
|
55
|
+
providers: [
|
|
56
|
+
FormioAlerts,
|
|
57
|
+
GridService
|
|
58
|
+
]
|
|
59
|
+
},] }
|
|
60
|
+
];
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9ncmlkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDdEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDNUYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQXNDbEQsTUFBTSxPQUFPLFVBQVU7OztZQXJDdEIsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFdBQVc7b0JBQ1gsWUFBWTtvQkFDWixZQUFZO29CQUNaLGdCQUFnQixDQUFDLE9BQU8sRUFBRTtpQkFDM0I7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLG1CQUFtQjtvQkFDbkIsdUJBQXVCO29CQUN2QixxQkFBcUI7b0JBQ3JCLHVCQUF1QjtvQkFDdkIsNkJBQTZCO29CQUM3QiwyQkFBMkI7b0JBQzNCLDZCQUE2QjtvQkFDN0IsbUJBQW1CO29CQUNuQixpQkFBaUI7b0JBQ2pCLG1CQUFtQjtvQkFDbkIsU0FBUztpQkFDVjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsbUJBQW1CO2lCQUNwQjtnQkFDRCxlQUFlLEVBQUU7b0JBQ2YsdUJBQXVCO29CQUN2QixxQkFBcUI7b0JBQ3JCLHVCQUF1QjtvQkFDdkIsNkJBQTZCO29CQUM3QiwyQkFBMkI7b0JBQzNCLDZCQUE2QjtpQkFDOUI7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULFlBQVk7b0JBQ1osV0FBVztpQkFDWjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGb3JtaW9Nb2R1bGUgfSBmcm9tICdAZm9ybWlvL2FuZ3VsYXInO1xuaW1wb3J0IHsgRm9ybWlvQWxlcnRzIH0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcbmltcG9ydCB7IEZvcm1pb0dyaWRDb21wb25lbnQgfSBmcm9tICcuL2dyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2luYXRpb25Nb2R1bGUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24nO1xuaW1wb3J0IHsgRm9ybUdyaWRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0vRm9ybUdyaWRIZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1HcmlkQm9keUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS9Gb3JtR3JpZEJvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1HcmlkRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL0Zvcm1HcmlkRm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdWJtaXNzaW9uR3JpZEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vc3VibWlzc2lvbi9TdWJtaXNzaW9uR3JpZEhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3VibWlzc2lvbkdyaWRCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi9zdWJtaXNzaW9uL1N1Ym1pc3Npb25HcmlkQm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3VibWlzc2lvbkdyaWRGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL3N1Ym1pc3Npb24vU3VibWlzc2lvbkdyaWRGb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL0dyaWRIZWFkZXJDb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZEJvZHlDb21wb25lbnQgfSBmcm9tICcuL0dyaWRCb2R5Q29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL0dyaWRGb290ZXJDb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZFNlcnZpY2UgfSBmcm9tICcuL2dyaWQuc2VydmljZSc7XG5pbXBvcnQgeyBUaW1lU2luY2UgfSBmcm9tICcuL2Zvcm0vdGltZS1zaW5jZS5waXBlJ1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBGb3JtaW9Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIFBhZ2luYXRpb25Nb2R1bGUuZm9yUm9vdCgpXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZvcm1pb0dyaWRDb21wb25lbnQsXG4gICAgRm9ybUdyaWRIZWFkZXJDb21wb25lbnQsXG4gICAgRm9ybUdyaWRCb2R5Q29tcG9uZW50LFxuICAgIEZvcm1HcmlkRm9vdGVyQ29tcG9uZW50LFxuICAgIFN1Ym1pc3Npb25HcmlkSGVhZGVyQ29tcG9uZW50LFxuICAgIFN1Ym1pc3Npb25HcmlkQm9keUNvbXBvbmVudCxcbiAgICBTdWJtaXNzaW9uR3JpZEZvb3RlckNvbXBvbmVudCxcbiAgICBHcmlkSGVhZGVyQ29tcG9uZW50LFxuICAgIEdyaWRCb2R5Q29tcG9uZW50LFxuICAgIEdyaWRGb290ZXJDb21wb25lbnQsXG4gICAgVGltZVNpbmNlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGb3JtaW9HcmlkQ29tcG9uZW50XG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW1xuICAgIEZvcm1HcmlkSGVhZGVyQ29tcG9uZW50LFxuICAgIEZvcm1HcmlkQm9keUNvbXBvbmVudCxcbiAgICBGb3JtR3JpZEZvb3RlckNvbXBvbmVudCxcbiAgICBTdWJtaXNzaW9uR3JpZEhlYWRlckNvbXBvbmVudCxcbiAgICBTdWJtaXNzaW9uR3JpZEJvZHlDb21wb25lbnQsXG4gICAgU3VibWlzc2lvbkdyaWRGb290ZXJDb21wb25lbnRcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRm9ybWlvQWxlcnRzLFxuICAgIEdyaWRTZXJ2aWNlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9ybWlvR3JpZCB7fVxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
export class GridService {
|
|
3
|
+
constructor() { }
|
|
4
|
+
setRows(rows) {
|
|
5
|
+
this.rows = rows;
|
|
6
|
+
}
|
|
7
|
+
getFormsPerPage() {
|
|
8
|
+
var _a;
|
|
9
|
+
return (_a = this.rows) === null || _a === void 0 ? void 0 : _a.length;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
GridService.decorators = [
|
|
13
|
+
{ type: Injectable }
|
|
14
|
+
];
|
|
15
|
+
GridService.ctorParameters = () => [];
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZ3JpZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJM0MsTUFBTSxPQUFPLFdBQVc7SUFFdEIsZ0JBQWUsQ0FBQztJQUVoQixPQUFPLENBQUMsSUFBSTtRQUNWLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRCxlQUFlOztRQUNiLE9BQU8sTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxNQUFNLENBQUM7SUFDM0IsQ0FBQzs7O1lBWEYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBfaW50ZXJzZWN0aW9uIGZyb20gJ2xvZGFzaC9pbnRlcnNlY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR3JpZFNlcnZpY2Uge1xuICBwdWJsaWMgcm93czogQXJyYXk8YW55PjtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHNldFJvd3Mocm93cykge1xuICAgIHRoaXMucm93cyA9IHJvd3M7XG4gIH1cblxuICBnZXRGb3Jtc1BlclBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMucm93cz8ubGVuZ3RoO1xuICB9XG59XG4iXX0=
|