@formio/angular 5.5.0-rc.8 → 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 -527
- 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 -1151
- 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 -1170
- 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,258 @@
|
|
|
1
|
+
import { GridFooterPositions } from './types/grid-footer-positions';
|
|
2
|
+
import { Component, EventEmitter, Input, Output, ViewChild, ViewContainerRef } from '@angular/core';
|
|
3
|
+
import { each } from 'lodash';
|
|
4
|
+
import { Formio } from '@formio/js';
|
|
5
|
+
import FormComponents from './form/index';
|
|
6
|
+
import SubmissionComponents from './submission/index';
|
|
7
|
+
import { FormioPromiseService } from '@formio/angular';
|
|
8
|
+
import { SortType } from './types/grid-header';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@formio/angular";
|
|
11
|
+
import * as i2 from "@angular/common";
|
|
12
|
+
class FormioGridComponent {
|
|
13
|
+
alerts;
|
|
14
|
+
resolver;
|
|
15
|
+
ref;
|
|
16
|
+
footerPosition = GridFooterPositions.bottom;
|
|
17
|
+
src;
|
|
18
|
+
items;
|
|
19
|
+
onForm;
|
|
20
|
+
query;
|
|
21
|
+
refresh;
|
|
22
|
+
columns;
|
|
23
|
+
gridType;
|
|
24
|
+
size;
|
|
25
|
+
components;
|
|
26
|
+
formio;
|
|
27
|
+
label;
|
|
28
|
+
createText;
|
|
29
|
+
isActionAllowed;
|
|
30
|
+
select;
|
|
31
|
+
rowSelect;
|
|
32
|
+
rowAction;
|
|
33
|
+
createItem;
|
|
34
|
+
error;
|
|
35
|
+
headerElement;
|
|
36
|
+
bodyElement;
|
|
37
|
+
footerElement;
|
|
38
|
+
page = 0;
|
|
39
|
+
isLoading = false;
|
|
40
|
+
initialized = false;
|
|
41
|
+
header;
|
|
42
|
+
body;
|
|
43
|
+
footer;
|
|
44
|
+
footerPositions = GridFooterPositions;
|
|
45
|
+
constructor(alerts, resolver, ref) {
|
|
46
|
+
this.alerts = alerts;
|
|
47
|
+
this.resolver = resolver;
|
|
48
|
+
this.ref = ref;
|
|
49
|
+
this.select = this.rowSelect = new EventEmitter();
|
|
50
|
+
this.rowAction = new EventEmitter();
|
|
51
|
+
this.createItem = new EventEmitter();
|
|
52
|
+
this.error = new EventEmitter();
|
|
53
|
+
this.isLoading = true;
|
|
54
|
+
}
|
|
55
|
+
createComponent(property, component) {
|
|
56
|
+
const factory = this.resolver.resolveComponentFactory(component);
|
|
57
|
+
const componentRef = property.createComponent(factory);
|
|
58
|
+
return componentRef.instance;
|
|
59
|
+
}
|
|
60
|
+
loadGrid(src) {
|
|
61
|
+
// If no source is provided, then skip.
|
|
62
|
+
if (!src && !this.formio) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
// Do not double load.
|
|
66
|
+
if (this.formio && this.src && (src === this.src)) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (src) {
|
|
70
|
+
this.src = src;
|
|
71
|
+
this.formio = new FormioPromiseService(this.src, { formOnly: true });
|
|
72
|
+
}
|
|
73
|
+
// Load the header.
|
|
74
|
+
this.header.load(this.formio, {}, this.columns)
|
|
75
|
+
.then(() => this.setPage(0))
|
|
76
|
+
.catch(error => this.onError(error));
|
|
77
|
+
}
|
|
78
|
+
ngOnInit() {
|
|
79
|
+
// Create our components.
|
|
80
|
+
const comps = this.components || ((this.gridType === 'form') ? FormComponents : SubmissionComponents);
|
|
81
|
+
this.header = this.createComponent(this.headerElement, comps.header);
|
|
82
|
+
this.header.actionAllowed = this.actionAllowed.bind(this);
|
|
83
|
+
this.header.sort.subscribe(header => this.sortColumn(header));
|
|
84
|
+
this.body = this.createComponent(this.bodyElement, comps.body);
|
|
85
|
+
this.body.header = this.header;
|
|
86
|
+
this.body.actionAllowed = this.actionAllowed.bind(this);
|
|
87
|
+
this.body.rowSelect.subscribe(row => this.rowSelect.emit(row));
|
|
88
|
+
this.body.rowAction.subscribe(action => this.rowAction.emit(action));
|
|
89
|
+
this.footer = this.createComponent(this.footerElement, comps.footer);
|
|
90
|
+
this.footer.header = this.header;
|
|
91
|
+
this.footer.body = this.body;
|
|
92
|
+
this.footer.actionAllowed = this.actionAllowed.bind(this);
|
|
93
|
+
this.footer.createText = this.createText;
|
|
94
|
+
this.footer.size = this.size;
|
|
95
|
+
this.footer.pageChanged.subscribe(page => this.pageChanged(page));
|
|
96
|
+
this.footer.createItem.subscribe(item => this.createItem.emit(item));
|
|
97
|
+
}
|
|
98
|
+
ngOnChanges(changes) {
|
|
99
|
+
if (this.initialized) {
|
|
100
|
+
if ((changes.src && changes.src.currentValue) ||
|
|
101
|
+
(changes.formio && changes.formio.currentValue)) {
|
|
102
|
+
this.loadGrid(changes.src.currentValue);
|
|
103
|
+
}
|
|
104
|
+
if (changes.items && changes.items.currentValue) {
|
|
105
|
+
this.refreshGrid();
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
if (this.footer &&
|
|
109
|
+
(changes.createText && changes.createText.currentValue)) {
|
|
110
|
+
this.footer.createText = changes.createText.currentValue;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
ngAfterViewInit() {
|
|
114
|
+
this.alerts.setAlerts([]);
|
|
115
|
+
this.query = this.query || {};
|
|
116
|
+
if (this.refresh) {
|
|
117
|
+
this.refresh.subscribe((query) => this.refreshGrid(query));
|
|
118
|
+
}
|
|
119
|
+
this.loadGrid(this.src);
|
|
120
|
+
this.initialized = true;
|
|
121
|
+
this.ref.detectChanges();
|
|
122
|
+
}
|
|
123
|
+
actionAllowed(action) {
|
|
124
|
+
if (this.isActionAllowed) {
|
|
125
|
+
return this.isActionAllowed(action);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
onError(error) {
|
|
132
|
+
this.isLoading = false;
|
|
133
|
+
this.error.emit(error);
|
|
134
|
+
if (typeof error === 'string' || error.message) {
|
|
135
|
+
this.alerts.setAlert({
|
|
136
|
+
type: 'danger',
|
|
137
|
+
message: error.message || error
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
refreshGrid(query) {
|
|
142
|
+
this.alerts.setAlerts([]);
|
|
143
|
+
this.query = query || this.query;
|
|
144
|
+
if (!this.query.hasOwnProperty('limit')) {
|
|
145
|
+
this.query.limit = 10;
|
|
146
|
+
}
|
|
147
|
+
if (!this.query.hasOwnProperty('skip')) {
|
|
148
|
+
this.query.skip = 0;
|
|
149
|
+
}
|
|
150
|
+
this.isLoading = true;
|
|
151
|
+
this.ref.detectChanges();
|
|
152
|
+
Formio.cache = {};
|
|
153
|
+
let loader = null;
|
|
154
|
+
if (this.items) {
|
|
155
|
+
loader = Promise.resolve(this.body.setRows(this.query, this.items));
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
loader = this.body.load(this.formio, this.query);
|
|
159
|
+
}
|
|
160
|
+
return loader.then(info => {
|
|
161
|
+
this.isLoading = false;
|
|
162
|
+
this.initialized = true;
|
|
163
|
+
this.ref.detectChanges();
|
|
164
|
+
}).catch(error => this.onError(error));
|
|
165
|
+
}
|
|
166
|
+
setPage(num = -1) {
|
|
167
|
+
this.page = num !== -1 ? num : this.page;
|
|
168
|
+
if (!this.query.hasOwnProperty('limit')) {
|
|
169
|
+
this.query.limit = 10;
|
|
170
|
+
}
|
|
171
|
+
if (!this.query.hasOwnProperty('skip')) {
|
|
172
|
+
this.query.skip = 0;
|
|
173
|
+
}
|
|
174
|
+
this.query.skip = this.page * this.query.limit;
|
|
175
|
+
this.refreshGrid();
|
|
176
|
+
}
|
|
177
|
+
sortColumn(header) {
|
|
178
|
+
// Reset all other column sorts.
|
|
179
|
+
each(this.header.headers, (col) => {
|
|
180
|
+
if (col.key !== header.key) {
|
|
181
|
+
col.sort = '';
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
switch (header.sort) {
|
|
185
|
+
case 'asc':
|
|
186
|
+
header.sort = SortType.DESC;
|
|
187
|
+
this.query.sort = '-' + header.key;
|
|
188
|
+
break;
|
|
189
|
+
case 'desc':
|
|
190
|
+
header.sort = undefined;
|
|
191
|
+
delete this.query.sort;
|
|
192
|
+
break;
|
|
193
|
+
case undefined:
|
|
194
|
+
header.sort = SortType.ASC;
|
|
195
|
+
this.query.sort = header.key;
|
|
196
|
+
break;
|
|
197
|
+
}
|
|
198
|
+
this.refreshGrid();
|
|
199
|
+
}
|
|
200
|
+
pageChanged(page) {
|
|
201
|
+
this.setPage(page.page - 1);
|
|
202
|
+
}
|
|
203
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioGridComponent, deps: [{ token: i1.FormioAlerts }, { token: i0.ComponentFactoryResolver }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
204
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: FormioGridComponent, selector: "formio-grid", inputs: { footerPosition: "footerPosition", src: "src", items: "items", onForm: "onForm", query: "query", refresh: "refresh", columns: "columns", gridType: "gridType", size: "size", components: "components", formio: "formio", label: "label", createText: "createText", isActionAllowed: "isActionAllowed" }, outputs: { select: "select", rowSelect: "rowSelect", rowAction: "rowAction", createItem: "createItem", error: "error" }, viewQueries: [{ propertyName: "headerElement", first: true, predicate: ["headerTemplate"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "bodyElement", first: true, predicate: ["bodyTemplate"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "footerElement", first: true, predicate: ["footerTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, 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", styles: [".formio-grid{position:relative;width:100%}.grid-refresh{height:400px;width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i1.FormioLoaderComponent, selector: "formio-loader", inputs: ["isLoading"] }, { kind: "component", type: i1.FormioAlertsComponent, selector: "formio-alerts", inputs: ["alerts"], outputs: ["focusComponent"] }] });
|
|
205
|
+
}
|
|
206
|
+
export { FormioGridComponent };
|
|
207
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioGridComponent, decorators: [{
|
|
208
|
+
type: Component,
|
|
209
|
+
args: [{ selector: 'formio-grid', 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", styles: [".formio-grid{position:relative;width:100%}.grid-refresh{height:400px;width:100%}\n"] }]
|
|
210
|
+
}], ctorParameters: function () { return [{ type: i1.FormioAlerts }, { type: i0.ComponentFactoryResolver }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { footerPosition: [{
|
|
211
|
+
type: Input
|
|
212
|
+
}], src: [{
|
|
213
|
+
type: Input
|
|
214
|
+
}], items: [{
|
|
215
|
+
type: Input
|
|
216
|
+
}], onForm: [{
|
|
217
|
+
type: Input
|
|
218
|
+
}], query: [{
|
|
219
|
+
type: Input
|
|
220
|
+
}], refresh: [{
|
|
221
|
+
type: Input
|
|
222
|
+
}], columns: [{
|
|
223
|
+
type: Input
|
|
224
|
+
}], gridType: [{
|
|
225
|
+
type: Input
|
|
226
|
+
}], size: [{
|
|
227
|
+
type: Input
|
|
228
|
+
}], components: [{
|
|
229
|
+
type: Input
|
|
230
|
+
}], formio: [{
|
|
231
|
+
type: Input
|
|
232
|
+
}], label: [{
|
|
233
|
+
type: Input
|
|
234
|
+
}], createText: [{
|
|
235
|
+
type: Input
|
|
236
|
+
}], isActionAllowed: [{
|
|
237
|
+
type: Input
|
|
238
|
+
}], select: [{
|
|
239
|
+
type: Output
|
|
240
|
+
}], rowSelect: [{
|
|
241
|
+
type: Output
|
|
242
|
+
}], rowAction: [{
|
|
243
|
+
type: Output
|
|
244
|
+
}], createItem: [{
|
|
245
|
+
type: Output
|
|
246
|
+
}], error: [{
|
|
247
|
+
type: Output
|
|
248
|
+
}], headerElement: [{
|
|
249
|
+
type: ViewChild,
|
|
250
|
+
args: ['headerTemplate', { read: ViewContainerRef, static: true }]
|
|
251
|
+
}], bodyElement: [{
|
|
252
|
+
type: ViewChild,
|
|
253
|
+
args: ['bodyTemplate', { read: ViewContainerRef, static: true }]
|
|
254
|
+
}], footerElement: [{
|
|
255
|
+
type: ViewChild,
|
|
256
|
+
args: ['footerTemplate', { read: ViewContainerRef, static: true }]
|
|
257
|
+
}] } });
|
|
258
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL2dyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUdMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFlBQVksQ0FBQztBQUlsQyxPQUFPLGNBQWMsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxvQkFBb0IsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVyRCxPQUFPLEVBQWEsUUFBUSxFQUFDLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFFekQsTUFLYSxtQkFBbUI7SUFpQ3JCO0lBQ0M7SUFDQTtJQWxDRCxjQUFjLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO0lBQzVDLEdBQUcsQ0FBVTtJQUNiLEtBQUssQ0FBYztJQUNuQixNQUFNLENBQWdCO0lBQ3RCLEtBQUssQ0FBTztJQUNaLE9BQU8sQ0FBd0I7SUFDL0IsT0FBTyxDQUFxQjtJQUM1QixRQUFRLENBQVU7SUFDbEIsSUFBSSxDQUFVO0lBQ2QsVUFBVSxDQUFPO0lBQ2pCLE1BQU0sQ0FBd0I7SUFDOUIsS0FBSyxDQUFVO0lBQ2YsVUFBVSxDQUFTO0lBQ25CLGVBQWUsQ0FBTTtJQUNwQixNQUFNLENBQXVCO0lB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RSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUNBLFdBQVc7c0JBQTdFLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBQ0ksYUFBYTtzQkFBakYsU0FBUzt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR3JpZEZvb3RlclBvc2l0aW9ucyB9IGZyb20gJy4vdHlwZXMvZ3JpZC1mb290ZXItcG9zaXRpb25zJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtaW9BbGVydHN9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQge2VhY2h9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge0Zvcm1pb30gZnJvbSAnQGZvcm1pby9qcyc7XG5pbXBvcnQge0dyaWRIZWFkZXJDb21wb25lbnR9IGZyb20gJy4vR3JpZEhlYWRlckNvbXBvbmVudCc7XG5pbXBvcnQge0dyaWRCb2R5Q29tcG9uZW50fSBmcm9tICcuL0dyaWRCb2R5Q29tcG9uZW50JztcbmltcG9ydCB7R3JpZEZvb3RlckNvbXBvbmVudH0gZnJvbSAnLi9HcmlkRm9vdGVyQ29tcG9uZW50JztcbmltcG9ydCBGb3JtQ29tcG9uZW50cyBmcm9tICcuL2Zvcm0vaW5kZXgnO1xuaW1wb3J0IFN1Ym1pc3Npb25Db21wb25lbnRzIGZyb20gJy4vc3VibWlzc2lvbi9pbmRleCc7XG5pbXBvcnQge0Zvcm1pb1Byb21pc2VTZXJ2aWNlfSBmcm9tICdAZm9ybWlvL2FuZ3VsYXInO1xuaW1wb3J0IHtHcmlkQ29sdW1ufSBmcm9tICcuL3R5cGVzL2dyaWQtY29sdW1uJztcbmltcG9ydCB7R3JpZEhlYWRlciwgU29ydFR5cGV9IGZyb20gJy4vdHlwZXMvZ3JpZC1oZWFkZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmb3JtaW8tZ3JpZCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyaWQuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1pb0dyaWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIGZvb3RlclBvc2l0aW9uID0gR3JpZEZvb3RlclBvc2l0aW9ucy5ib3R0b207XG4gIEBJbnB1dCgpIHNyYz86IHN0cmluZztcbiAgQElucHV0KCkgaXRlbXM/OiBBcnJheTxhbnk+O1xuICBASW5wdXQoKSBvbkZvcm0/OiBQcm9taXNlPGFueT47XG4gIEBJbnB1dCgpIHF1ZXJ5PzogYW55O1xuICBASW5wdXQoKSByZWZyZXNoPzogRXZlbnRFbWl0dGVyPG9iamVjdD47XG4gIEBJbnB1dCgpIGNvbHVtbnM/OiBBcnJheTxHcmlkQ29sdW1uPjtcbiAgQElucHV0KCkgZ3JpZFR5cGU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNpemU/OiBudW1iZXI7XG4gIEBJbnB1dCgpIGNvbXBvbmVudHM/OiBhbnk7XG4gIEBJbnB1dCgpIGZvcm1pbz86IEZvcm1pb1Byb21pc2VTZXJ2aWNlO1xuICBASW5wdXQoKSBsYWJlbD86IHN0cmluZztcbiAgQElucHV0KCkgY3JlYXRlVGV4dDogU3RyaW5nO1xuICBASW5wdXQoKSBpc0FjdGlvbkFsbG93ZWQ6IGFueTtcbiAgQE91dHB1dCgpIHNlbGVjdDogRXZlbnRFbWl0dGVyPG9iamVjdD47XG4gIEBPdXRwdXQoKSByb3dTZWxlY3Q6IEV2ZW50RW1pdHRlcjxvYmplY3Q+O1xuICBAT3V0cHV0KCkgcm93QWN0aW9uOiBFdmVudEVtaXR0ZXI8b2JqZWN0PjtcbiAgQE91dHB1dCgpIGNyZWF0ZUl0ZW06IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBAT3V0cHV0KCkgZXJyb3I6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBAVmlld0NoaWxkKCdoZWFkZXJUZW1wbGF0ZScsIHtyZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWV9KSBoZWFkZXJFbGVtZW50OiBWaWV3Q29udGFpbmVyUmVmO1xuICBAVmlld0NoaWxkKCdib2R5VGVtcGxhdGUnLCB7cmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlfSkgYm9keUVsZW1lbnQ6IFZpZXdDb250YWluZXJSZWY7XG4gIEBWaWV3Q2hpbGQoJ2Zvb3RlclRlbXBsYXRlJywge3JlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZX0pIGZvb3RlckVsZW1lbnQ6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgcHVibGljIHBhZ2UgPSAwO1xuICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XG4gIHB1YmxpYyBpbml0aWFsaXplZCA9IGZhbHNlO1xuICBwdWJsaWMgaGVhZGVyOiBHcmlkSGVhZGVyQ29tcG9uZW50O1xuICBwdWJsaWMgYm9keTogR3JpZEJvZHlDb21wb25lbnQ7XG4gIHB1YmxpYyBmb290ZXI6IEdyaWRGb290ZXJDb21wb25lbnQ7XG4gIHB1YmxpYyBmb290ZXJQb3NpdGlvbnMgPSBHcmlkRm9vdGVyUG9zaXRpb25zO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBhbGVydHM6IEZvcm1pb0FsZXJ0cyxcbiAgICBwcml2YXRlIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgcHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHRoaXMuc2VsZWN0ID0gdGhpcy5yb3dTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5yb3dBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5jcmVhdGVJdGVtID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIHRoaXMuZXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICB9XG5cbiAgY3JlYXRlQ29tcG9uZW50KHByb3BlcnR5LCBjb21wb25lbnQpIHtcbiAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShjb21wb25lbnQpO1xuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHByb3BlcnR5LmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcbiAgICByZXR1cm4gY29tcG9uZW50UmVmLmluc3RhbmNlO1xuICB9XG5cbiAgbG9hZEdyaWQoc3JjPzogc3RyaW5nKSB7XG4gICAgLy8gSWYgbm8gc291cmNlIGlzIHByb3ZpZGVkLCB0aGVuIHNraXAuXG4gICAgaWYgKCFzcmMgJiYgIXRoaXMuZm9ybWlvKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIERvIG5vdCBkb3VibGUgbG9hZC5cbiAgICBpZiAodGhpcy5mb3JtaW8gJiYgdGhpcy5zcmMgJiYgKHNyYyA9PT0gdGhpcy5zcmMpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHNyYykge1xuICAgICAgdGhpcy5zcmMgPSBzcmM7XG4gICAgICB0aGlzLmZvcm1pbyA9IG5ldyBGb3JtaW9Qcm9taXNlU2VydmljZSh0aGlzLnNyYywgeyBmb3JtT25seTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICAvLyBMb2FkIHRoZSBoZWFkZXIuXG4gICAgdGhpcy5oZWFkZXIubG9hZCh0aGlzLmZvcm1pbywge30sIHRoaXMuY29sdW1ucylcbiAgICAgIC50aGVuKCgpID0+IHRoaXMuc2V0UGFnZSgwKSlcbiAgICAgIC5jYXRjaChlcnJvciA9PiB0aGlzLm9uRXJyb3IoZXJyb3IpKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIC8vIENyZWF0ZSBvdXIgY29tcG9uZW50cy5cbiAgICBjb25zdCBjb21wcyA9IHRoaXMuY29tcG9uZW50cyB8fCAoKHRoaXMuZ3JpZFR5cGUgPT09ICdmb3JtJykgPyBGb3JtQ29tcG9uZW50cyA6IFN1Ym1pc3Npb25Db21wb25lbnRzKTtcblxuICAgIHRoaXMuaGVhZGVyID0gdGhpcy5jcmVhdGVDb21wb25lbnQodGhpcy5oZWFkZXJFbGVtZW50LCBjb21wcy5oZWFkZXIpO1xuICAgIHRoaXMuaGVhZGVyLmFjdGlvbkFsbG93ZWQgPSB0aGlzLmFjdGlvbkFsbG93ZWQuYmluZCh0aGlzKTtcbiAgICB0aGlzLmhlYWRlci5zb3J0LnN1YnNjcmliZShoZWFkZXIgPT4gdGhpcy5zb3J0Q29sdW1uKGhlYWRlcikpO1xuXG4gICAgdGhpcy5ib2R5ID0gdGhpcy5jcmVhdGVDb21wb25lbnQodGhpcy5ib2R5RWxlbWVudCwgY29tcHMuYm9keSk7XG4gICAgdGhpcy5ib2R5LmhlYWRlciA9IHRoaXMuaGVhZGVyO1xuICAgIHRoaXMuYm9keS5hY3Rpb25BbGxvd2VkID0gdGhpcy5hY3Rpb25BbGxvd2VkLmJpbmQodGhpcyk7XG4gICAgdGhpcy5ib2R5LnJvd1NlbGVjdC5zdWJzY3JpYmUocm93ID0+IHRoaXMucm93U2VsZWN0LmVtaXQocm93KSk7XG4gICAgdGhpcy5ib2R5LnJvd0FjdGlvbi5zdWJzY3JpYmUoYWN0aW9uID0+IHRoaXMucm93QWN0aW9uLmVtaXQoYWN0aW9uKSk7XG5cbiAgICB0aGlzLmZvb3RlciA9IHRoaXMuY3JlYXRlQ29tcG9uZW50KHRoaXMuZm9vdGVyRWxlbWVudCwgY29tcHMuZm9vdGVyKTtcbiAgICB0aGlzLmZvb3Rlci5oZWFkZXIgPSB0aGlzLmhlYWRlcjtcbiAgICB0aGlzLmZvb3Rlci5ib2R5ID0gdGhpcy5ib2R5O1xuICAgIHRoaXMuZm9vdGVyLmFjdGlvbkFsbG93ZWQgPSB0aGlzLmFjdGlvbkFsbG93ZWQuYmluZCh0aGlzKTtcbiAgICB0aGlzLmZvb3Rlci5jcmVhdGVUZXh0ID0gdGhpcy5jcmVhdGVUZXh0O1xuICAgIHRoaXMuZm9vdGVyLnNpemUgPSB0aGlzLnNpemU7XG4gICAgdGhpcy5mb290ZXIucGFnZUNoYW5nZWQuc3Vic2NyaWJlKHBhZ2UgPT4gdGhpcy5wYWdlQ2hhbmdlZChwYWdlKSk7XG4gICAgdGhpcy5mb290ZXIuY3JlYXRlSXRlbS5zdWJzY3JpYmUoaXRlbSA9PiB0aGlzLmNyZWF0ZUl0ZW0uZW1pdChpdGVtKSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBhbnkpIHtcbiAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgaWYgKFxuICAgICAgICAoY2hhbmdlcy5zcmMgJiYgY2hhbmdlcy5zcmMuY3VycmVudFZhbHVlKSB8fFxuICAgICAgICAoY2hhbmdlcy5mb3JtaW8gJiYgY2hhbmdlcy5mb3JtaW8uY3VycmVudFZhbHVlKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMubG9hZEdyaWQoY2hhbmdlcy5zcmMuY3VycmVudFZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNoYW5nZXMuaXRlbXMgJiYgY2hhbmdlcy5pdGVtcy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoR3JpZCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmZvb3RlciAmJlxuICAgICAgICAoY2hhbmdlcy5jcmVhdGVUZXh0ICYmIGNoYW5nZXMuY3JlYXRlVGV4dC5jdXJyZW50VmFsdWUpKSB7XG4gICAgICB0aGlzLmZvb3Rlci5jcmVhdGVUZXh0ID0gY2hhbmdlcy5jcmVhdGVUZXh0LmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5hbGVydHMuc2V0QWxlcnRzKFtdKTtcbiAgICB0aGlzLnF1ZXJ5ID0gdGhpcy5xdWVyeSB8fCB7fTtcbiAgICBpZiAodGhpcy5yZWZyZXNoKSB7XG4gICAgICB0aGlzLnJlZnJlc2guc3Vic2NyaWJlKChxdWVyeTogb2JqZWN0KSA9PiB0aGlzLnJlZnJlc2hHcmlkKHF1ZXJ5KSk7XG4gICAgfVxuICAgIHRoaXMubG9hZEdyaWQodGhpcy5zcmMpO1xuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGFjdGlvbkFsbG93ZWQoYWN0aW9uKSB7XG4gICAgaWYgKHRoaXMuaXNBY3Rpb25BbGxvd2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0FjdGlvbkFsbG93ZWQoYWN0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgb25FcnJvcihlcnJvcjogYW55KSB7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmVycm9yLmVtaXQoZXJyb3IpO1xuICAgIGlmICh0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnIHx8IGVycm9yLm1lc3NhZ2UpIHtcbiAgICAgIHRoaXMuYWxlcnRzLnNldEFsZXJ0KHtcbiAgICAgICAgdHlwZTogJ2RhbmdlcicsXG4gICAgICAgIG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UgfHwgZXJyb3JcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJlZnJlc2hHcmlkKHF1ZXJ5PzogYW55KSB7XG4gICAgdGhpcy5hbGVydHMuc2V0QWxlcnRzKFtdKTtcbiAgICB0aGlzLnF1ZXJ5ID0gcXVlcnkgfHwgdGhpcy5xdWVyeTtcbiAgICBpZiAoIXRoaXMucXVlcnkuaGFzT3duUHJvcGVydHkoJ2xpbWl0JykpIHtcbiAgICAgIHRoaXMucXVlcnkubGltaXQgPSAxMDtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnF1ZXJ5Lmhhc093blByb3BlcnR5KCdza2lwJykpIHtcbiAgICAgIHRoaXMucXVlcnkuc2tpcCA9IDA7XG4gICAgfVxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgRm9ybWlvLmNhY2hlID0ge307XG4gICAgbGV0IGxvYWRlciA9IG51bGw7XG4gICAgaWYgKHRoaXMuaXRlbXMpIHtcbiAgICAgIGxvYWRlciA9IFByb21pc2UucmVzb2x2ZSh0aGlzLmJvZHkuc2V0Um93cyh0aGlzLnF1ZXJ5LCB0aGlzLml0ZW1zKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvYWRlciA9IHRoaXMuYm9keS5sb2FkKHRoaXMuZm9ybWlvLCB0aGlzLnF1ZXJ5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbG9hZGVyLnRoZW4oaW5mbyA9PiB7XG4gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgICB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSkuY2F0Y2goZXJyb3IgPT4gdGhpcy5vbkVycm9yKGVycm9yKSk7XG4gIH1cblxuICBzZXRQYWdlKG51bSA9IC0xKSB7XG4gICAgdGhpcy5wYWdlID0gbnVtICE9PSAtMSA/IG51bSA6IHRoaXMucGFnZTtcbiAgICBpZiAoIXRoaXMucXVlcnkuaGFzT3duUHJvcGVydHkoJ2xpbWl0JykpIHtcbiAgICAgIHRoaXMucXVlcnkubGltaXQgPSAxMDtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnF1ZXJ5Lmhhc093blByb3BlcnR5KCdza2lwJykpIHtcbiAgICAgIHRoaXMucXVlcnkuc2tpcCA9IDA7XG4gICAgfVxuICAgIHRoaXMucXVlcnkuc2tpcCA9IHRoaXMucGFnZSAqIHRoaXMucXVlcnkubGltaXQ7XG4gICAgdGhpcy5yZWZyZXNoR3JpZCgpO1xuICB9XG5cbiAgc29ydENvbHVtbihoZWFkZXI6IEdyaWRIZWFkZXIpIHtcbiAgICAvLyBSZXNldCBhbGwgb3RoZXIgY29sdW1uIHNvcnRzLlxuICAgIGVhY2godGhpcy5oZWFkZXIuaGVhZGVycywgKGNvbDogYW55KSA9PiB7XG4gICAgICBpZiAoY29sLmtleSAhPT0gaGVhZGVyLmtleSkge1xuICAgICAgICBjb2wuc29ydCA9ICcnO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHN3aXRjaCAoaGVhZGVyLnNvcnQpIHtcbiAgICAgIGNhc2UgJ2FzYyc6XG4gICAgICAgIGhlYWRlci5zb3J0ID0gU29ydFR5cGUuREVTQztcbiAgICAgICAgdGhpcy5xdWVyeS5zb3J0ID0gJy0nICsgaGVhZGVyLmtleTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkZXNjJzpcbiAgICAgICAgaGVhZGVyLnNvcnQgPSB1bmRlZmluZWQ7XG4gICAgICAgIGRlbGV0ZSB0aGlzLnF1ZXJ5LnNvcnQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSB1bmRlZmluZWQ6XG4gICAgICAgIGhlYWRlci5zb3J0ID0gU29ydFR5cGUuQVNDO1xuICAgICAgICB0aGlzLnF1ZXJ5LnNvcnQgPSBoZWFkZXIua2V5O1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgdGhpcy5yZWZyZXNoR3JpZCgpO1xuICB9XG5cbiAgcGFnZUNoYW5nZWQocGFnZTogYW55KSB7XG4gICAgdGhpcy5zZXRQYWdlKHBhZ2UucGFnZSAtIDEpO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2JvZHlUZW1wbGF0ZT48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICNmb290ZXJUZW1wbGF0ZT48L25nLXRlbXBsYXRlPlxuPGRpdiBjbGFzcz1cImZvcm1pby1ncmlkXCI+XG4gIDxmb3JtaW8tYWxlcnRzIFthbGVydHNdPVwiYWxlcnRzXCI+PC9mb3JtaW8tYWxlcnRzPlxuICA8dGFibGUgY2xhc3M9XCJ0YWJsZSB0YWJsZS1ib3JkZXJlZCB0YWJsZS1zdHJpcGVkIHRhYmxlLWhvdmVyXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImluaXRpYWxpemVkICYmIFtmb290ZXJQb3NpdGlvbnMudG9wLCBmb290ZXJQb3NpdGlvbnMuYm90aF0uaW5kZXhPZihmb290ZXJQb3NpdGlvbikgIT09IC0xXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3Rlci50ZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHBvc2l0aW9uOiBmb290ZXJQb3NpdGlvbnMudG9wLCBsYWJlbDogbGFiZWwgfVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpbml0aWFsaXplZFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXIudGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8Zm9ybWlvLWxvYWRlciBbaXNMb2FkaW5nXT1cImlzTG9hZGluZ1wiPjwvZm9ybWlvLWxvYWRlcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW5pdGlhbGl6ZWRcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJib2R5LnRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImluaXRpYWxpemVkICYmIFtmb290ZXJQb3NpdGlvbnMuYm90dG9tLCBmb290ZXJQb3NpdGlvbnMuYm90aF0uaW5kZXhPZihmb290ZXJQb3NpdGlvbikgIT09IC0xXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3Rlci50ZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHBvc2l0aW9uOiBmb290ZXJQb3NpdGlvbnMuYm90dG9tLCBsYWJlbDogbGFiZWwgfVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3RhYmxlPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,80 @@
|
|
|
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
|
+
import * as i0 from "@angular/core";
|
|
21
|
+
import * as i1 from "ngx-bootstrap/pagination";
|
|
22
|
+
class FormioGrid {
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioGrid, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
24
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: FormioGrid, declarations: [FormioGridComponent,
|
|
25
|
+
FormGridHeaderComponent,
|
|
26
|
+
FormGridBodyComponent,
|
|
27
|
+
FormGridFooterComponent,
|
|
28
|
+
SubmissionGridHeaderComponent,
|
|
29
|
+
SubmissionGridBodyComponent,
|
|
30
|
+
SubmissionGridFooterComponent,
|
|
31
|
+
GridHeaderComponent,
|
|
32
|
+
GridBodyComponent,
|
|
33
|
+
GridFooterComponent,
|
|
34
|
+
TimeSince], imports: [CommonModule,
|
|
35
|
+
FormsModule,
|
|
36
|
+
FormioModule,
|
|
37
|
+
RouterModule, i1.PaginationModule], exports: [FormioGridComponent] });
|
|
38
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioGrid, providers: [
|
|
39
|
+
FormioAlerts,
|
|
40
|
+
GridService
|
|
41
|
+
], imports: [CommonModule,
|
|
42
|
+
FormsModule,
|
|
43
|
+
FormioModule,
|
|
44
|
+
RouterModule,
|
|
45
|
+
PaginationModule.forRoot()] });
|
|
46
|
+
}
|
|
47
|
+
export { FormioGrid };
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormioGrid, decorators: [{
|
|
49
|
+
type: NgModule,
|
|
50
|
+
args: [{
|
|
51
|
+
imports: [
|
|
52
|
+
CommonModule,
|
|
53
|
+
FormsModule,
|
|
54
|
+
FormioModule,
|
|
55
|
+
RouterModule,
|
|
56
|
+
PaginationModule.forRoot()
|
|
57
|
+
],
|
|
58
|
+
declarations: [
|
|
59
|
+
FormioGridComponent,
|
|
60
|
+
FormGridHeaderComponent,
|
|
61
|
+
FormGridBodyComponent,
|
|
62
|
+
FormGridFooterComponent,
|
|
63
|
+
SubmissionGridHeaderComponent,
|
|
64
|
+
SubmissionGridBodyComponent,
|
|
65
|
+
SubmissionGridFooterComponent,
|
|
66
|
+
GridHeaderComponent,
|
|
67
|
+
GridBodyComponent,
|
|
68
|
+
GridFooterComponent,
|
|
69
|
+
TimeSince
|
|
70
|
+
],
|
|
71
|
+
exports: [
|
|
72
|
+
FormioGridComponent
|
|
73
|
+
],
|
|
74
|
+
providers: [
|
|
75
|
+
FormioAlerts,
|
|
76
|
+
GridService
|
|
77
|
+
]
|
|
78
|
+
}]
|
|
79
|
+
}] });
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9ncmlkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDdEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDNUYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTs7O0FBQ2xELE1BNkJhLFVBQVU7dUdBQVYsVUFBVTt3R0FBVixVQUFVLGlCQXBCZixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLHFCQUFxQjtZQUNyQix1QkFBdUI7WUFDdkIsNkJBQTZCO1lBQzdCLDJCQUEyQjtZQUMzQiw2QkFBNkI7WUFDN0IsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsU0FBUyxhQWpCVCxZQUFZO1lBQ1osV0FBVztZQUNYLFlBQVk7WUFDWixZQUFZLGtDQWlCWixtQkFBbUI7d0dBT2QsVUFBVSxhQUxSO1lBQ1AsWUFBWTtZQUNaLFdBQVc7U0FDZCxZQXpCRyxZQUFZO1lBQ1osV0FBVztZQUNYLFlBQVk7WUFDWixZQUFZO1lBQ1osZ0JBQWdCLENBQUMsT0FBTyxFQUFFOztTQXVCckIsVUFBVTsyRkFBVixVQUFVO2tCQTdCdEIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixnQkFBZ0IsQ0FBQyxPQUFPLEVBQUU7cUJBQzdCO29CQUNELFlBQVksRUFBRTt3QkFDVixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3dCQUMzQiw2QkFBNkI7d0JBQzdCLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLFNBQVM7cUJBQ1o7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLG1CQUFtQjtxQkFDdEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVztxQkFDZDtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRm9ybWlvTW9kdWxlIH0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcbmltcG9ydCB7IEZvcm1pb0FsZXJ0cyB9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQgeyBGb3JtaW9HcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uTW9kdWxlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wYWdpbmF0aW9uJztcbmltcG9ydCB7IEZvcm1HcmlkSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL0Zvcm1HcmlkSGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtR3JpZEJvZHlDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0vRm9ybUdyaWRCb2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtR3JpZEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS9Gb3JtR3JpZEZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3VibWlzc2lvbkdyaWRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL3N1Ym1pc3Npb24vU3VibWlzc2lvbkdyaWRIZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFN1Ym1pc3Npb25HcmlkQm9keUNvbXBvbmVudCB9IGZyb20gJy4vc3VibWlzc2lvbi9TdWJtaXNzaW9uR3JpZEJvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IFN1Ym1pc3Npb25HcmlkRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zdWJtaXNzaW9uL1N1Ym1pc3Npb25HcmlkRm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9HcmlkSGVhZGVyQ29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi9HcmlkQm9keUNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9HcmlkRm9vdGVyQ29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRTZXJ2aWNlIH0gZnJvbSAnLi9ncmlkLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGltZVNpbmNlIH0gZnJvbSAnLi9mb3JtL3RpbWUtc2luY2UucGlwZSdcbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBGb3JtaW9Nb2R1bGUsXG4gICAgICAgIFJvdXRlck1vZHVsZSxcbiAgICAgICAgUGFnaW5hdGlvbk1vZHVsZS5mb3JSb290KClcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBGb3JtaW9HcmlkQ29tcG9uZW50LFxuICAgICAgICBGb3JtR3JpZEhlYWRlckNvbXBvbmVudCxcbiAgICAgICAgRm9ybUdyaWRCb2R5Q29tcG9uZW50LFxuICAgICAgICBGb3JtR3JpZEZvb3RlckNvbXBvbmVudCxcbiAgICAgICAgU3VibWlzc2lvbkdyaWRIZWFkZXJDb21wb25lbnQsXG4gICAgICAgIFN1Ym1pc3Npb25HcmlkQm9keUNvbXBvbmVudCxcbiAgICAgICAgU3VibWlzc2lvbkdyaWRGb290ZXJDb21wb25lbnQsXG4gICAgICAgIEdyaWRIZWFkZXJDb21wb25lbnQsXG4gICAgICAgIEdyaWRCb2R5Q29tcG9uZW50LFxuICAgICAgICBHcmlkRm9vdGVyQ29tcG9uZW50LFxuICAgICAgICBUaW1lU2luY2VcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgRm9ybWlvR3JpZENvbXBvbmVudFxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIEZvcm1pb0FsZXJ0cyxcbiAgICAgICAgR3JpZFNlcnZpY2VcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1pb0dyaWQge31cbiJdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class GridService {
|
|
4
|
+
rows;
|
|
5
|
+
constructor() { }
|
|
6
|
+
setRows(rows) {
|
|
7
|
+
this.rows = rows;
|
|
8
|
+
}
|
|
9
|
+
getFormsPerPage() {
|
|
10
|
+
return this.rows?.length;
|
|
11
|
+
}
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
13
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridService });
|
|
14
|
+
}
|
|
15
|
+
export { GridService };
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: GridService, decorators: [{
|
|
17
|
+
type: Injectable
|
|
18
|
+
}], ctorParameters: function () { return []; } });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvZ3JpZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzNDLE1BQ2EsV0FBVztJQUNmLElBQUksQ0FBYTtJQUN4QixnQkFBZSxDQUFDO0lBRWhCLE9BQU8sQ0FBQyxJQUFJO1FBQ1YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQzNCLENBQUM7dUdBVlUsV0FBVzsyR0FBWCxXQUFXOztTQUFYLFdBQVc7MkZBQVgsV0FBVztrQkFEdkIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBfaW50ZXJzZWN0aW9uIGZyb20gJ2xvZGFzaC9pbnRlcnNlY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR3JpZFNlcnZpY2Uge1xuICBwdWJsaWMgcm93czogQXJyYXk8YW55PjtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHNldFJvd3Mocm93cykge1xuICAgIHRoaXMucm93cyA9IHJvd3M7XG4gIH1cblxuICBnZXRGb3Jtc1BlclBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMucm93cz8ubGVuZ3RoO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { get } from 'lodash';
|
|
3
|
+
import { GridBodyComponent } from '../GridBodyComponent';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
class SubmissionGridBodyComponent extends GridBodyComponent {
|
|
7
|
+
load(formio, query) {
|
|
8
|
+
query = query || {};
|
|
9
|
+
return formio.loadSubmissions({ params: query })
|
|
10
|
+
.then((submissions) => this.setRows(query, submissions));
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Render the cell data.
|
|
14
|
+
*
|
|
15
|
+
* @param submission
|
|
16
|
+
* @param header
|
|
17
|
+
* @return any
|
|
18
|
+
*/
|
|
19
|
+
view(submission, header) {
|
|
20
|
+
const cellValue = get(submission, header.key);
|
|
21
|
+
if (header.renderCell) {
|
|
22
|
+
return header.renderCell(cellValue, header.component);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
if (header.component) {
|
|
26
|
+
if (header.component.getView) {
|
|
27
|
+
return header.component.getView(cellValue);
|
|
28
|
+
}
|
|
29
|
+
return header.component.asString(cellValue);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
return cellValue.toString();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: SubmissionGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
37
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: SubmissionGridBodyComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-template>\n <tbody>\n <tr *ngFor=\"let row of rows\" (click)=\"onRowSelect($event, row)\">\n <td *ngFor=\"let rowHeader of header.headers\" [innerHTML]=\"view(row, rowHeader)\"></td>\n </tr>\n </tbody>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
38
|
+
}
|
|
39
|
+
export { SubmissionGridBodyComponent };
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: SubmissionGridBodyComponent, decorators: [{
|
|
41
|
+
type: Component,
|
|
42
|
+
args: [{ template: "<ng-template>\n <tbody>\n <tr *ngFor=\"let row of rows\" (click)=\"onRowSelect($event, row)\">\n <td *ngFor=\"let rowHeader of header.headers\" [innerHTML]=\"view(row, rowHeader)\"></td>\n </tr>\n </tbody>\n</ng-template>\n" }]
|
|
43
|
+
}] });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3VibWlzc2lvbkdyaWRCb2R5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL3N1Ym1pc3Npb24vU3VibWlzc2lvbkdyaWRCb2R5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL3N1Ym1pc3Npb24vU3VibWlzc2lvbkdyaWRCb2R5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFRLEdBQUcsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNuQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBSXpELE1BR2EsMkJBQTRCLFNBQVEsaUJBQWlCO0lBQ2hFLElBQUksQ0FBQyxNQUE0QixFQUFFLEtBQVc7UUFDNUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDcEIsT0FBTyxNQUFNLENBQUMsZUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDO2FBQzdDLElBQUksQ0FBQyxDQUFDLFdBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILElBQUksQ0FBQyxVQUE0QixFQUFFLE1BQWtCO1FBQ25ELE1BQU0sU0FBUyxHQUFRLEdBQUcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25ELElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRTtZQUNyQixPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN2RDthQUFNO1lBQ0wsSUFBSSxNQUFNLENBQUMsU0FBUyxFQUFFO2dCQUNwQixJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFO29CQUM1QixPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2lCQUM1QztnQkFDRCxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQzdDO2lCQUFNO2dCQUNMLE9BQU8sU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQzdCO1NBQ0Y7SUFDSCxDQUFDO3VHQTVCVSwyQkFBMkI7MkZBQTNCLDJCQUEyQiwyRUNUeEMsOE9BT0E7O1NERWEsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBSHZDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVhY2gsIGdldCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBHcmlkQm9keUNvbXBvbmVudCB9IGZyb20gJy4uL0dyaWRCb2R5Q29tcG9uZW50JztcbmltcG9ydCB7Rm9ybWlvUHJvbWlzZVNlcnZpY2V9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQgeyBHcmlkSGVhZGVyIH0gZnJvbSAnLi4vdHlwZXMvZ3JpZC1oZWFkZXInO1xuaW1wb3J0IHtGb3JtaW9TdWJtaXNzaW9ufSBmcm9tICdAZm9ybWlvL2FuZ3VsYXInO1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9TdWJtaXNzaW9uR3JpZEJvZHkuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFN1Ym1pc3Npb25HcmlkQm9keUNvbXBvbmVudCBleHRlbmRzIEdyaWRCb2R5Q29tcG9uZW50IHtcbiAgbG9hZChmb3JtaW86IEZvcm1pb1Byb21pc2VTZXJ2aWNlLCBxdWVyeT86IGFueSkge1xuICAgIHF1ZXJ5ID0gcXVlcnkgfHwge307XG4gICAgcmV0dXJuIGZvcm1pby5sb2FkU3VibWlzc2lvbnMoeyBwYXJhbXM6IHF1ZXJ5IH0pXG4gICAgICAudGhlbigoc3VibWlzc2lvbnM6IGFueSkgPT4gdGhpcy5zZXRSb3dzKHF1ZXJ5LCBzdWJtaXNzaW9ucykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciB0aGUgY2VsbCBkYXRhLlxuICAgKlxuICAgKiBAcGFyYW0gc3VibWlzc2lvblxuICAgKiBAcGFyYW0gaGVhZGVyXG4gICAqIEByZXR1cm4gYW55XG4gICAqL1xuICB2aWV3KHN1Ym1pc3Npb246IEZvcm1pb1N1Ym1pc3Npb24sIGhlYWRlcjogR3JpZEhlYWRlcik6IHN0cmluZyB7XG4gICAgY29uc3QgY2VsbFZhbHVlOiBhbnkgPSBnZXQoc3VibWlzc2lvbiwgaGVhZGVyLmtleSk7XG4gICAgaWYgKGhlYWRlci5yZW5kZXJDZWxsKSB7XG4gICAgICByZXR1cm4gaGVhZGVyLnJlbmRlckNlbGwoY2VsbFZhbHVlLCBoZWFkZXIuY29tcG9uZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGhlYWRlci5jb21wb25lbnQpIHtcbiAgICAgICAgaWYgKGhlYWRlci5jb21wb25lbnQuZ2V0Vmlldykge1xuICAgICAgICAgIHJldHVybiBoZWFkZXIuY29tcG9uZW50LmdldFZpZXcoY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaGVhZGVyLmNvbXBvbmVudC5hc1N0cmluZyhjZWxsVmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZS50b1N0cmluZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlPlxuICA8dGJvZHk+XG4gICAgPHRyICpuZ0Zvcj1cImxldCByb3cgb2Ygcm93c1wiIChjbGljayk9XCJvblJvd1NlbGVjdCgkZXZlbnQsIHJvdylcIj5cbiAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgcm93SGVhZGVyIG9mIGhlYWRlci5oZWFkZXJzXCIgW2lubmVySFRNTF09XCJ2aWV3KHJvdywgcm93SGVhZGVyKVwiPjwvdGQ+XG4gICAgPC90cj5cbiAgPC90Ym9keT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
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 SubmissionGridFooterComponent extends GridFooterComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
}
|
|
11
|
+
ngOnInit() {
|
|
12
|
+
if (!this.size) {
|
|
13
|
+
this.size = 7;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: SubmissionGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
17
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: SubmissionGridFooterComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-template #footer let-position=\"position\">\n <thead class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.top\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\"></ng-container>\n </thead>\n <tfoot class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.bottom\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\"></ng-container>\n </tfoot>\n</ng-template>\n\n<ng-template #defaultFooterTemplate>\n <tr>\n <td *ngIf=\"header\" [colSpan]=\"header.numHeaders\">\n <button *ngIf=\"actionAllowed('submissionCreate') && createText\" class=\"btn btn-primary 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 <pagination [totalItems]=\"body.total\" [itemsPerPage]=\"body.limit\" [(ngModel)]=\"body.skip\" (pageChanged)=\"pageChanged.emit($event)\" [maxSize]=\"size\" class=\"justify-content-center pagination-sm\"></pagination>\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 });
|
|
18
|
+
}
|
|
19
|
+
export { SubmissionGridFooterComponent };
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: SubmissionGridFooterComponent, decorators: [{
|
|
21
|
+
type: Component,
|
|
22
|
+
args: [{ encapsulation: ViewEncapsulation.None, template: "<ng-template #footer let-position=\"position\">\n <thead class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.top\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\"></ng-container>\n </thead>\n <tfoot class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.bottom\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\"></ng-container>\n </tfoot>\n</ng-template>\n\n<ng-template #defaultFooterTemplate>\n <tr>\n <td *ngIf=\"header\" [colSpan]=\"header.numHeaders\">\n <button *ngIf=\"actionAllowed('submissionCreate') && createText\" class=\"btn btn-primary 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 <pagination [totalItems]=\"body.total\" [itemsPerPage]=\"body.limit\" [(ngModel)]=\"body.skip\" (pageChanged)=\"pageChanged.emit($event)\" [maxSize]=\"size\" class=\"justify-content-center pagination-sm\"></pagination>\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"] }]
|
|
23
|
+
}], ctorParameters: function () { return []; } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3VibWlzc2lvbkdyaWRGb290ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvc3VibWlzc2lvbi9TdWJtaXNzaW9uR3JpZEZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9zdWJtaXNzaW9uL1N1Ym1pc3Npb25HcmlkRm9vdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBRTdELE1BS2EsNkJBQThCLFNBQVEsbUJBQW1CO0lBRXBFO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7U0FDZjtJQUNILENBQUM7dUdBVlUsNkJBQTZCOzJGQUE3Qiw2QkFBNkIsMkVDUjFDLG9yQ0FrQkE7O1NEVmEsNkJBQTZCOzJGQUE3Qiw2QkFBNkI7a0JBTHpDLFNBQVM7b0NBR08saUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdyaWRGb290ZXJDb21wb25lbnQgfSBmcm9tICcuLi9HcmlkRm9vdGVyQ29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9TdWJtaXNzaW9uR3JpZEZvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuLi9ncmlkLmZvb3Rlci5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgU3VibWlzc2lvbkdyaWRGb290ZXJDb21wb25lbnQgZXh0ZW5kcyBHcmlkRm9vdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKCF0aGlzLnNpemUpIHtcbiAgICAgIHRoaXMuc2l6ZSA9IDc7XG4gICAgfVxuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2Zvb3RlciBsZXQtcG9zaXRpb249XCJwb3NpdGlvblwiPlxuICA8dGhlYWQgY2xhc3M9XCJmb3JtaW8tZ3JpZC1mb290ZXJcIiAqbmdJZj1cInBvc2l0aW9uID09PSBmb290ZXJQb3NpdGlvbnMudG9wXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJkZWZhdWx0Rm9vdGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgPC90aGVhZD5cbiAgPHRmb290IGNsYXNzPVwiZm9ybWlvLWdyaWQtZm9vdGVyXCIgKm5nSWY9XCJwb3NpdGlvbiA9PT0gZm9vdGVyUG9zaXRpb25zLmJvdHRvbVwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVmYXVsdEZvb3RlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvdGZvb3Q+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRGb290ZXJUZW1wbGF0ZT5cbiAgPHRyPlxuICAgIDx0ZCAqbmdJZj1cImhlYWRlclwiIFtjb2xTcGFuXT1cImhlYWRlci5udW1IZWFkZXJzXCI+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwiYWN0aW9uQWxsb3dlZCgnc3VibWlzc2lvbkNyZWF0ZScpICYmIGNyZWF0ZVRleHRcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBwdWxsLWxlZnQgZmxvYXQtbGVmdFwiIChjbGljayk9XCJjcmVhdGVJdGVtLmVtaXQoJ2Zvcm0nKVwiPjxlbSBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tcGx1cyBmYSBmYS1wbHVzIGJpIGJpLXBsdXNcIj48L2VtPiB7eyBjcmVhdGVUZXh0IH19PC9idXR0b24+XG4gICAgICA8c3BhbiBjbGFzcz1cInB1bGwtcmlnaHQgZmxvYXQtcmlnaHQgaXRlbS1jb3VudGVyXCI+PHNwYW4gY2xhc3M9XCJwYWdlLW51bVwiPnt7IGJvZHkuZmlyc3RJdGVtIH19IC0ge3sgYm9keS5sYXN0SXRlbSB9fTwvc3Bhbj4gLyB7eyBib2R5LnRvdGFsIH19IHRvdGFsPC9zcGFuPlxuICAgICAgPHBhZ2luYXRpb24gW3RvdGFsSXRlbXNdPVwiYm9keS50b3RhbFwiIFtpdGVtc1BlclBhZ2VdPVwiYm9keS5saW1pdFwiIFsobmdNb2RlbCldPVwiYm9keS5za2lwXCIgKHBhZ2VDaGFuZ2VkKT1cInBhZ2VDaGFuZ2VkLmVtaXQoJGV2ZW50KVwiIFttYXhTaXplXT1cInNpemVcIiBjbGFzcz1cImp1c3RpZnktY29udGVudC1jZW50ZXIgcGFnaW5hdGlvbi1zbVwiPjwvcGFnaW5hdGlvbj5cbiAgICA8L3RkPlxuICA8L3RyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { Utils, Components } from '@formio/js';
|
|
3
|
+
import { GridHeaderComponent } from '../GridHeaderComponent';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
class SubmissionGridHeaderComponent extends GridHeaderComponent {
|
|
7
|
+
// Map structure where the key is the path and the value is the component
|
|
8
|
+
formComponents;
|
|
9
|
+
load(formio, query, columns) {
|
|
10
|
+
query = query || {};
|
|
11
|
+
return formio.loadForm({ params: query }).then((form) => {
|
|
12
|
+
this.headers = [];
|
|
13
|
+
this.formComponents = new Map();
|
|
14
|
+
this.setComponents(form.components);
|
|
15
|
+
columns ? columns.forEach(column => {
|
|
16
|
+
this.setHeader(this.getHeaderForColumn(column, this.formComponents.get(column.path)));
|
|
17
|
+
}) : this.setComponentsHeaders(this.formComponents);
|
|
18
|
+
return this.headers;
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
setHeader(header) {
|
|
22
|
+
this.headers.push(header);
|
|
23
|
+
}
|
|
24
|
+
getHeaderForColumn(column, component, sort) {
|
|
25
|
+
return {
|
|
26
|
+
label: column.label,
|
|
27
|
+
key: column.path,
|
|
28
|
+
sort: sort,
|
|
29
|
+
component: component ? Components.create(component, null, null, true) : undefined,
|
|
30
|
+
renderCell: column ? column.renderCell : undefined
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
getHeaderForComponent(component, path, sort) {
|
|
34
|
+
return {
|
|
35
|
+
label: component.label,
|
|
36
|
+
key: path,
|
|
37
|
+
sort: sort,
|
|
38
|
+
component: component ? Components.create(component, null, null, true) : undefined,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
// Set headers from components in case if columns are not provided
|
|
42
|
+
setComponentsHeaders(components, sort) {
|
|
43
|
+
components.forEach((component, path) => {
|
|
44
|
+
if (component.input &&
|
|
45
|
+
(!component.hasOwnProperty('tableView') || component.tableView)) {
|
|
46
|
+
this.setHeader(this.getHeaderForComponent(component, path, sort));
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
// Map components
|
|
51
|
+
setComponents(components) {
|
|
52
|
+
Utils.eachComponent(components, (component, newPath) => {
|
|
53
|
+
this.formComponents.set(`data.${newPath}`, component);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: SubmissionGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
57
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: SubmissionGridHeaderComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-template>\n <thead>\n <tr>\n <th *ngFor=\"let header of headers\">\n <a (click)=\"sort.emit(header)\">\n {{ header.label }} <span [ngClass]=\"{'glyphicon-triangle-top': (header.sort === 'asc'), 'glyphicon-triangle-bottom': (header.sort === 'desc')}\" class=\"glyphicon\" *ngIf=\"header.sort\"></span>\n </a>\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.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
58
|
+
}
|
|
59
|
+
export { SubmissionGridHeaderComponent };
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: SubmissionGridHeaderComponent, decorators: [{
|
|
61
|
+
type: Component,
|
|
62
|
+
args: [{ template: "<ng-template>\n <thead>\n <tr>\n <th *ngFor=\"let header of headers\">\n <a (click)=\"sort.emit(header)\">\n {{ header.label }} <span [ngClass]=\"{'glyphicon-triangle-top': (header.sort === 'asc'), 'glyphicon-triangle-bottom': (header.sort === 'desc')}\" class=\"glyphicon\" *ngIf=\"header.sort\"></span>\n </a>\n </th>\n </tr>\n </thead>\n</ng-template>\n" }]
|
|
63
|
+
}] });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3VibWlzc2lvbkdyaWRIZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vZ3JpZC9zcmMvc3VibWlzc2lvbi9TdWJtaXNzaW9uR3JpZEhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9zdWJtaXNzaW9uL1N1Ym1pc3Npb25HcmlkSGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFDLEtBQUssRUFBRSxVQUFVLEVBQTBCLE1BQU0sWUFBWSxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7QUFNM0QsTUFHYSw2QkFBOEIsU0FBUSxtQkFBbUI7SUFFcEUseUVBQXlFO0lBQ3pFLGNBQWMsQ0FBdUM7SUFFckQsSUFBSSxDQUFDLE1BQTRCLEVBQUUsS0FBVyxFQUFFLE9BQTJCO1FBQ3pFLEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3BCLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQWdCLEVBQUUsRUFBRTtZQUNoRSxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksR0FBRyxFQUFtQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3BDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFFdEQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFrQjtRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsa0JBQWtCLENBQUMsTUFBa0IsRUFBRSxTQUFtQyxFQUFFLElBQWU7UUFDekYsT0FBTztZQUNMLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztZQUNuQixHQUFHLEVBQUUsTUFBTSxDQUFDLElBQUk7WUFDaEIsSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBc0IsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUN0RyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ25ELENBQUM7SUFDSixDQUFDO0lBRUQscUJBQXFCLENBQUMsU0FBa0MsRUFBRSxJQUFZLEVBQUUsSUFBZTtRQUNyRixPQUFPO1lBQ0wsS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLO1lBQ3RCLEdBQUcsRUFBRSxJQUFJO1lBQ1QsSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBc0IsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN2RyxDQUFDO0lBQ0osQ0FBQztJQUNELGtFQUFrRTtJQUNsRSxvQkFBb0IsQ0FBQyxVQUFnRCxFQUFFLElBQWU7UUFDcEYsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUNyQyxJQUNFLFNBQVMsQ0FBQyxLQUFLO2dCQUNmLENBQUMsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFDL0Q7Z0JBQ0EsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ25FO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCO0lBQ2pCLGFBQWEsQ0FBQyxVQUFVO1FBQ3RCLEtBQUssQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUMsU0FBa0MsRUFBRSxPQUFlLEVBQUUsRUFBRTtZQUN0RixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxRQUFRLE9BQU8sRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0ExRFUsNkJBQTZCOzJGQUE3Qiw2QkFBNkIsMkVDWDFDLG9aQVdBOztTREFhLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUh6QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1V0aWxzLCBDb21wb25lbnRzLCBFeHRlbmRlZENvbXBvbmVudFNjaGVtYX0gZnJvbSAnQGZvcm1pby9qcyc7XG5pbXBvcnQge0dyaWRIZWFkZXJDb21wb25lbnR9IGZyb20gJy4uL0dyaWRIZWFkZXJDb21wb25lbnQnO1xuaW1wb3J0IHtGb3JtaW9Qcm9taXNlU2VydmljZX0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcbmltcG9ydCB7Q29tcG9uZW50SW5zdGFuY2UsIEZvcm1pb0Zvcm19IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQge0dyaWRDb2x1bW59IGZyb20gJy4uL3R5cGVzL2dyaWQtY29sdW1uJztcbmltcG9ydCB7R3JpZEhlYWRlciwgU29ydFR5cGV9IGZyb20gJy4uL3R5cGVzL2dyaWQtaGVhZGVyJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9TdWJtaXNzaW9uR3JpZEhlYWRlci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgU3VibWlzc2lvbkdyaWRIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBHcmlkSGVhZGVyQ29tcG9uZW50IHtcblxuICAvLyBNYXAgc3RydWN0dXJlIHdoZXJlIHRoZSBrZXkgaXMgdGhlIHBhdGggYW5kIHRoZSB2YWx1ZSBpcyB0aGUgY29tcG9uZW50XG4gIGZvcm1Db21wb25lbnRzOiBNYXA8c3RyaW5nLCBFeHRlbmRlZENvbXBvbmVudFNjaGVtYT47XG5cbiAgbG9hZChmb3JtaW86IEZvcm1pb1Byb21pc2VTZXJ2aWNlLCBxdWVyeT86IGFueSwgY29sdW1ucz86IEFycmF5PEdyaWRDb2x1bW4+KSB7XG4gICAgcXVlcnkgPSBxdWVyeSB8fCB7fTtcbiAgICByZXR1cm4gZm9ybWlvLmxvYWRGb3JtKHtwYXJhbXM6IHF1ZXJ5fSkudGhlbigoZm9ybTogRm9ybWlvRm9ybSkgPT4ge1xuICAgICAgdGhpcy5oZWFkZXJzID0gW107XG4gICAgICB0aGlzLmZvcm1Db21wb25lbnRzID0gbmV3IE1hcDxzdHJpbmcsIEV4dGVuZGVkQ29tcG9uZW50U2NoZW1hPigpO1xuICAgICAgdGhpcy5zZXRDb21wb25lbnRzKGZvcm0uY29tcG9uZW50cyk7XG4gICAgICBjb2x1bW5zID8gY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiB7XG4gICAgICAgICAgdGhpcy5zZXRIZWFkZXIodGhpcy5nZXRIZWFkZXJGb3JDb2x1bW4oY29sdW1uLCB0aGlzLmZvcm1Db21wb25lbnRzLmdldChjb2x1bW4ucGF0aCkpKTtcbiAgICAgICAgfSkgOiB0aGlzLnNldENvbXBvbmVudHNIZWFkZXJzKHRoaXMuZm9ybUNvbXBvbmVudHMpO1xuXG4gICAgICByZXR1cm4gdGhpcy5oZWFkZXJzO1xuICAgIH0pO1xuICB9XG5cbiAgc2V0SGVhZGVyKGhlYWRlcjogR3JpZEhlYWRlcikge1xuICAgIHRoaXMuaGVhZGVycy5wdXNoKGhlYWRlcik7XG4gIH1cblxuICBnZXRIZWFkZXJGb3JDb2x1bW4oY29sdW1uOiBHcmlkQ29sdW1uLCBjb21wb25lbnQ/OiBFeHRlbmRlZENvbXBvbmVudFNjaGVtYSwgc29ydD86IFNvcnRUeXBlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGxhYmVsOiBjb2x1bW4ubGFiZWwsXG4gICAgICBrZXk6IGNvbHVtbi5wYXRoLFxuICAgICAgc29ydDogc29ydCxcbiAgICAgIGNvbXBvbmVudDogY29tcG9uZW50ID8gQ29tcG9uZW50cy5jcmVhdGUoY29tcG9uZW50LCBudWxsLCBudWxsLCB0cnVlKSBhcyBDb21wb25lbnRJbnN0YW5jZSA6IHVuZGVmaW5lZCxcbiAgICAgIHJlbmRlckNlbGw6IGNvbHVtbiA/IGNvbHVtbi5yZW5kZXJDZWxsIDogdW5kZWZpbmVkXG4gICAgfTtcbiAgfVxuXG4gIGdldEhlYWRlckZvckNvbXBvbmVudChjb21wb25lbnQ6IEV4dGVuZGVkQ29tcG9uZW50U2NoZW1hLCBwYXRoOiBzdHJpbmcsIHNvcnQ/OiBTb3J0VHlwZSkge1xuICAgIHJldHVybiB7XG4gICAgICBsYWJlbDogY29tcG9uZW50LmxhYmVsLFxuICAgICAga2V5OiBwYXRoLFxuICAgICAgc29ydDogc29ydCxcbiAgICAgIGNvbXBvbmVudDogY29tcG9uZW50ID8gQ29tcG9uZW50cy5jcmVhdGUoY29tcG9uZW50LCBudWxsLCBudWxsLCB0cnVlKSBhcyBDb21wb25lbnRJbnN0YW5jZSA6IHVuZGVmaW5lZCxcbiAgICB9O1xuICB9XG4gIC8vIFNldCBoZWFkZXJzIGZyb20gY29tcG9uZW50cyBpbiBjYXNlIGlmIGNvbHVtbnMgYXJlIG5vdCBwcm92aWRlZFxuICBzZXRDb21wb25lbnRzSGVhZGVycyhjb21wb25lbnRzOiBNYXA8c3RyaW5nLCBFeHRlbmRlZENvbXBvbmVudFNjaGVtYT4sIHNvcnQ/OiBTb3J0VHlwZSkge1xuICAgIGNvbXBvbmVudHMuZm9yRWFjaCgoY29tcG9uZW50LCBwYXRoKSA9PiB7XG4gICAgICBpZiAoXG4gICAgICAgIGNvbXBvbmVudC5pbnB1dCAmJlxuICAgICAgICAoIWNvbXBvbmVudC5oYXNPd25Qcm9wZXJ0eSgndGFibGVWaWV3JykgfHwgY29tcG9uZW50LnRhYmxlVmlldylcbiAgICAgICkge1xuICAgICAgICB0aGlzLnNldEhlYWRlcih0aGlzLmdldEhlYWRlckZvckNvbXBvbmVudChjb21wb25lbnQsIHBhdGgsIHNvcnQpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8vIE1hcCBjb21wb25lbnRzXG4gIHNldENvbXBvbmVudHMoY29tcG9uZW50cykge1xuICAgIFV0aWxzLmVhY2hDb21wb25lbnQoY29tcG9uZW50cywgKGNvbXBvbmVudDogRXh0ZW5kZWRDb21wb25lbnRTY2hlbWEsIG5ld1BhdGg6IHN0cmluZykgPT4ge1xuICAgICAgdGhpcy5mb3JtQ29tcG9uZW50cy5zZXQoYGRhdGEuJHtuZXdQYXRofWAsIGNvbXBvbmVudCk7XG4gICAgfSk7XG4gIH1cbn1cblxuIiwiPG5nLXRlbXBsYXRlPlxuICA8dGhlYWQ+XG4gICAgPHRyPlxuICAgICAgPHRoICpuZ0Zvcj1cImxldCBoZWFkZXIgb2YgaGVhZGVyc1wiPlxuICAgICAgICA8YSAoY2xpY2spPVwic29ydC5lbWl0KGhlYWRlcilcIj5cbiAgICAgICAgICB7eyBoZWFkZXIubGFiZWwgfX0mbmJzcDs8c3BhbiBbbmdDbGFzc109XCJ7J2dseXBoaWNvbi10cmlhbmdsZS10b3AnOiAoaGVhZGVyLnNvcnQgPT09ICdhc2MnKSwgJ2dseXBoaWNvbi10cmlhbmdsZS1ib3R0b20nOiAoaGVhZGVyLnNvcnQgPT09ICdkZXNjJyl9XCIgY2xhc3M9XCJnbHlwaGljb25cIiAqbmdJZj1cImhlYWRlci5zb3J0XCI+PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L3RoPlxuICAgIDwvdHI+XG4gIDwvdGhlYWQ+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { FormManagerEditComponent } from '../edit/edit.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@formio/angular";
|
|
6
|
+
import * as i3 from "@angular/forms";
|
|
7
|
+
class FormManagerCreateComponent extends FormManagerEditComponent {
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
this.service.reset();
|
|
10
|
+
}
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormManagerCreateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: FormManagerCreateComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"loader\" *ngIf=\"loading\"></div>\n<div class=\"form-group row\">\n <div class=\"col-sm-8\">\n <input type=\"text\" class=\"form-control\" id=\"formTitle\" placeholder=\"Enter a Title\" #title>\n </div>\n <div class=\"col-sm-2\">\n <select class=\"form-control\" id=\"formSelect\" (change)=\"onDisplaySelect($event)\" #type>\n <option value=\"form\">Form</option>\n <option value=\"wizard\">Wizard</option>\n <option value=\"pdf\">PDF</option>\n </select>\n </div>\n <div class=\"col-sm-2\">\n <button class=\"btn btn-primary btn-block\" (click)=\"onSave()\">Save Form</button>\n </div>\n</div>\n<formio-alerts [alerts]=\"alerts\"></formio-alerts>\n<form-builder *ngIf=\"formReady\" [formbuilder]=\"config.builder\" [form]=\"form\" #builder></form-builder>\n<button class=\"btn btn-primary\" style=\"margin-top: 10px;\" (click)=\"onSave()\">Save Form</button>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FormBuilderComponent, selector: "form-builder", inputs: ["form", "options", "formbuilder", "noeval", "refresh", "rebuild"], outputs: ["change"] }, { kind: "component", type: i2.FormioAlertsComponent, selector: "formio-alerts", inputs: ["alerts"], outputs: ["focusComponent"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
|
|
13
|
+
}
|
|
14
|
+
export { FormManagerCreateComponent };
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: FormManagerCreateComponent, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{ template: "<div class=\"loader\" *ngIf=\"loading\"></div>\n<div class=\"form-group row\">\n <div class=\"col-sm-8\">\n <input type=\"text\" class=\"form-control\" id=\"formTitle\" placeholder=\"Enter a Title\" #title>\n </div>\n <div class=\"col-sm-2\">\n <select class=\"form-control\" id=\"formSelect\" (change)=\"onDisplaySelect($event)\" #type>\n <option value=\"form\">Form</option>\n <option value=\"wizard\">Wizard</option>\n <option value=\"pdf\">PDF</option>\n </select>\n </div>\n <div class=\"col-sm-2\">\n <button class=\"btn btn-primary btn-block\" (click)=\"onSave()\">Save Form</button>\n </div>\n</div>\n<formio-alerts [alerts]=\"alerts\"></formio-alerts>\n<form-builder *ngIf=\"formReady\" [formbuilder]=\"config.builder\" [form]=\"form\" #builder></form-builder>\n<button class=\"btn btn-primary\" style=\"margin-top: 10px;\" (click)=\"onSave()\">Save Form</button>\n" }]
|
|
18
|
+
}] });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL21hbmFnZXIvc3JjL2NyZWF0ZS9jcmVhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vbWFuYWdlci9zcmMvZWRpdC9lZGl0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBRWxFLE1BR2EsMEJBQTJCLFNBQVEsd0JBQXdCO0lBQ3RFLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7dUdBSFUsMEJBQTBCOzJGQUExQiwwQkFBMEIsMkVDTnZDLDY0QkFtQkE7O1NEYmEsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybU1hbmFnZXJFZGl0Q29tcG9uZW50IH0gZnJvbSAnLi4vZWRpdC9lZGl0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4uL2VkaXQvZWRpdC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRm9ybU1hbmFnZXJDcmVhdGVDb21wb25lbnQgZXh0ZW5kcyBGb3JtTWFuYWdlckVkaXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNlcnZpY2UucmVzZXQoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImxvYWRlclwiICpuZ0lmPVwibG9hZGluZ1wiPjwvZGl2PlxuPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgcm93XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wtc20tOFwiPlxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJmb3JtVGl0bGVcIiBwbGFjZWhvbGRlcj1cIkVudGVyIGEgVGl0bGVcIiAjdGl0bGU+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLXNtLTJcIj5cbiAgICA8c2VsZWN0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJmb3JtU2VsZWN0XCIgKGNoYW5nZSk9XCJvbkRpc3BsYXlTZWxlY3QoJGV2ZW50KVwiICN0eXBlPlxuICAgICAgPG9wdGlvbiB2YWx1ZT1cImZvcm1cIj5Gb3JtPC9vcHRpb24+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwid2l6YXJkXCI+V2l6YXJkPC9vcHRpb24+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwicGRmXCI+UERGPC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLXNtLTJcIj5cbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9ja1wiIChjbGljayk9XCJvblNhdmUoKVwiPlNhdmUgRm9ybTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGZvcm1pby1hbGVydHMgW2FsZXJ0c109XCJhbGVydHNcIj48L2Zvcm1pby1hbGVydHM+XG48Zm9ybS1idWlsZGVyICpuZ0lmPVwiZm9ybVJlYWR5XCIgW2Zvcm1idWlsZGVyXT1cImNvbmZpZy5idWlsZGVyXCIgW2Zvcm1dPVwiZm9ybVwiICNidWlsZGVyPjwvZm9ybS1idWlsZGVyPlxuPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweDtcIiAoY2xpY2spPVwib25TYXZlKClcIj5TYXZlIEZvcm08L2J1dHRvbj5cbiJdfQ==
|