@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.
Files changed (194) hide show
  1. package/FormioBaseComponent.d.ts +2 -1
  2. package/FormioBaseComponent.d.ts.map +1 -1
  3. package/auth/auth.service.d.ts.map +1 -1
  4. package/components/alerts/formio.alerts.component.d.ts +1 -1
  5. package/components/formbuilder/formbuilder.component.d.ts +3 -3
  6. package/components/formbuilder/formbuilder.component.d.ts.map +1 -1
  7. package/components/loader/formio.loader.component.d.ts +1 -1
  8. package/core.d.ts +1 -1
  9. package/core.d.ts.map +1 -1
  10. package/custom-component/create-custom-component.d.ts +11 -11
  11. package/custom-component/create-custom-component.d.ts.map +1 -1
  12. package/elements.common.d.ts +2 -2
  13. package/elements.common.d.ts.map +1 -1
  14. package/esm2022/FormioBaseComponent.mjs +561 -0
  15. package/esm2022/auth/auth.component.mjs +13 -0
  16. package/esm2022/auth/auth.config.mjs +22 -0
  17. package/esm2022/auth/auth.module.mjs +47 -0
  18. package/esm2022/auth/auth.service.mjs +191 -0
  19. package/esm2022/auth/login/login.component.mjs +18 -0
  20. package/esm2022/auth/register/register.component.mjs +18 -0
  21. package/esm2022/auth/resetpass/resetpass.component.mjs +18 -0
  22. package/esm2022/components/alerts/formio.alerts.component.mjs +29 -0
  23. package/esm2022/components/alerts/formio.alerts.mjs +13 -0
  24. package/esm2022/components/alerts/parse-html-content.pipe.mjs +20 -0
  25. package/esm2022/components/formbuilder/formbuilder.component.mjs +202 -0
  26. package/esm2022/components/formio/formio.component.mjs +43 -0
  27. package/esm2022/components/loader/formio.loader.component.mjs +16 -0
  28. package/{esm2020 → esm2022}/core.mjs +2 -2
  29. package/esm2022/custom-component/create-custom-component.mjs +144 -0
  30. package/esm2022/custom-component/custom-tags.service.mjs +15 -0
  31. package/{esm2020 → esm2022}/custom-component/register-custom-component.mjs +2 -2
  32. package/esm2022/elements.common.mjs +2 -0
  33. package/esm2022/formio-promise.service.mjs +36 -0
  34. package/esm2022/formio.common.mjs +11 -0
  35. package/esm2022/formio.config.mjs +15 -0
  36. package/esm2022/formio.module.mjs +55 -0
  37. package/esm2022/formio.service.mjs +62 -0
  38. package/esm2022/grid/GridBodyComponent.mjs +90 -0
  39. package/esm2022/grid/GridFooterComponent.mjs +45 -0
  40. package/esm2022/grid/GridHeaderComponent.mjs +35 -0
  41. package/esm2022/grid/form/FormGridBody.component.mjs +20 -0
  42. package/esm2022/grid/form/FormGridFooter.component.mjs +27 -0
  43. package/esm2022/grid/form/FormGridHeader.component.mjs +28 -0
  44. package/esm2022/grid/form/time-since.pipe.mjs +38 -0
  45. package/esm2022/grid/grid.component.mjs +258 -0
  46. package/esm2022/grid/grid.module.mjs +80 -0
  47. package/esm2022/grid/grid.service.mjs +19 -0
  48. package/esm2022/grid/submission/SubmissionGridBody.component.mjs +44 -0
  49. package/esm2022/grid/submission/SubmissionGridFooter.component.mjs +24 -0
  50. package/esm2022/grid/submission/SubmissionGridHeader.component.mjs +64 -0
  51. package/esm2022/manager/create/create.component.mjs +19 -0
  52. package/esm2022/manager/delete/delete.component.mjs +43 -0
  53. package/esm2022/manager/edit/edit.component.mjs +123 -0
  54. package/esm2022/manager/form/form.component.mjs +81 -0
  55. package/esm2022/manager/form-manager.config.mjs +19 -0
  56. package/esm2022/manager/form-manager.module.mjs +84 -0
  57. package/esm2022/manager/form-manager.service.mjs +189 -0
  58. package/{esm2020 → esm2022}/manager/index/index.component.mjs +13 -6
  59. package/esm2022/manager/submission/delete/delete.component.mjs +33 -0
  60. package/esm2022/manager/submission/edit/edit.component.mjs +26 -0
  61. package/esm2022/manager/submission/index/index.component.mjs +26 -0
  62. package/esm2022/manager/submission/submission/submission.component.mjs +30 -0
  63. package/esm2022/manager/submission/view/view.component.mjs +18 -0
  64. package/esm2022/manager/view/view.component.mjs +52 -0
  65. package/esm2022/resource/create/create.component.mjs +44 -0
  66. package/esm2022/resource/delete/delete.component.mjs +30 -0
  67. package/esm2022/resource/edit/edit.component.mjs +43 -0
  68. package/esm2022/resource/index/index.component.mjs +71 -0
  69. package/esm2022/resource/resource.component.mjs +51 -0
  70. package/esm2022/resource/resource.config.mjs +14 -0
  71. package/esm2022/resource/resource.module.mjs +63 -0
  72. package/{esm2020 → esm2022}/resource/resource.service.mjs +29 -7
  73. package/esm2022/resource/resources.service.mjs +26 -0
  74. package/esm2022/resource/view/view.component.mjs +26 -0
  75. package/{fesm2020 → fesm2022}/formio-angular-auth.mjs +68 -36
  76. package/fesm2022/formio-angular-auth.mjs.map +1 -0
  77. package/{fesm2020 → fesm2022}/formio-angular-grid.mjs +123 -73
  78. package/fesm2022/formio-angular-grid.mjs.map +1 -0
  79. package/{fesm2020 → fesm2022}/formio-angular-manager.mjs +147 -80
  80. package/fesm2022/formio-angular-manager.mjs.map +1 -0
  81. package/{fesm2020 → fesm2022}/formio-angular-resource.mjs +109 -58
  82. package/fesm2022/formio-angular-resource.mjs.map +1 -0
  83. package/fesm2022/formio-angular.mjs +1222 -0
  84. package/fesm2022/formio-angular.mjs.map +1 -0
  85. package/formio.common.d.ts +5 -5
  86. package/formio.common.d.ts.map +1 -1
  87. package/grid/GridBodyComponent.d.ts +1 -1
  88. package/grid/GridFooterComponent.d.ts +1 -1
  89. package/grid/GridHeaderComponent.d.ts +1 -1
  90. package/grid/grid.component.d.ts +1 -1
  91. package/grid/submission/SubmissionGridHeader.component.d.ts +1 -1
  92. package/grid/submission/SubmissionGridHeader.component.d.ts.map +1 -1
  93. package/manager/form-manager.service.d.ts +1 -1
  94. package/manager/form-manager.service.d.ts.map +1 -1
  95. package/manager/view/view.component.d.ts +1 -0
  96. package/manager/view/view.component.d.ts.map +1 -1
  97. package/package.json +21 -35
  98. package/resource/edit/edit.component.d.ts +1 -0
  99. package/resource/edit/edit.component.d.ts.map +1 -1
  100. package/esm2020/FormioBaseComponent.mjs +0 -527
  101. package/esm2020/auth/auth.component.mjs +0 -12
  102. package/esm2020/auth/auth.config.mjs +0 -15
  103. package/esm2020/auth/auth.module.mjs +0 -46
  104. package/esm2020/auth/auth.service.mjs +0 -166
  105. package/esm2020/auth/login/login.component.mjs +0 -16
  106. package/esm2020/auth/register/register.component.mjs +0 -16
  107. package/esm2020/auth/resetpass/resetpass.component.mjs +0 -16
  108. package/esm2020/components/alerts/formio.alerts.component.mjs +0 -29
  109. package/esm2020/components/alerts/formio.alerts.mjs +0 -15
  110. package/esm2020/components/alerts/parse-html-content.pipe.mjs +0 -19
  111. package/esm2020/components/formbuilder/formbuilder.component.mjs +0 -187
  112. package/esm2020/components/formio/formio.component.mjs +0 -40
  113. package/esm2020/components/loader/formio.loader.component.mjs +0 -14
  114. package/esm2020/custom-component/create-custom-component.mjs +0 -144
  115. package/esm2020/custom-component/custom-tags.service.mjs +0 -16
  116. package/esm2020/elements.common.mjs +0 -2
  117. package/esm2020/formio-promise.service.mjs +0 -33
  118. package/esm2020/formio.common.mjs +0 -8
  119. package/esm2020/formio.config.mjs +0 -14
  120. package/esm2020/formio.module.mjs +0 -54
  121. package/esm2020/formio.service.mjs +0 -59
  122. package/esm2020/grid/GridBodyComponent.mjs +0 -81
  123. package/esm2020/grid/GridFooterComponent.mjs +0 -36
  124. package/esm2020/grid/GridHeaderComponent.mjs +0 -30
  125. package/esm2020/grid/form/FormGridBody.component.mjs +0 -19
  126. package/esm2020/grid/form/FormGridFooter.component.mjs +0 -26
  127. package/esm2020/grid/form/FormGridHeader.component.mjs +0 -26
  128. package/esm2020/grid/form/time-since.pipe.mjs +0 -37
  129. package/esm2020/grid/grid.component.mjs +0 -230
  130. package/esm2020/grid/grid.module.mjs +0 -79
  131. package/esm2020/grid/grid.service.mjs +0 -17
  132. package/esm2020/grid/submission/SubmissionGridBody.component.mjs +0 -43
  133. package/esm2020/grid/submission/SubmissionGridFooter.component.mjs +0 -23
  134. package/esm2020/grid/submission/SubmissionGridHeader.component.mjs +0 -61
  135. package/esm2020/manager/create/create.component.mjs +0 -18
  136. package/esm2020/manager/delete/delete.component.mjs +0 -37
  137. package/esm2020/manager/edit/edit.component.mjs +0 -109
  138. package/esm2020/manager/form/form.component.mjs +0 -70
  139. package/esm2020/manager/form-manager.config.mjs +0 -17
  140. package/esm2020/manager/form-manager.module.mjs +0 -83
  141. package/esm2020/manager/form-manager.service.mjs +0 -178
  142. package/esm2020/manager/submission/delete/delete.component.mjs +0 -28
  143. package/esm2020/manager/submission/edit/edit.component.mjs +0 -22
  144. package/esm2020/manager/submission/index/index.component.mjs +0 -22
  145. package/esm2020/manager/submission/submission/submission.component.mjs +0 -26
  146. package/esm2020/manager/submission/view/view.component.mjs +0 -16
  147. package/esm2020/manager/view/view.component.mjs +0 -42
  148. package/esm2020/resource/create/create.component.mjs +0 -37
  149. package/esm2020/resource/delete/delete.component.mjs +0 -26
  150. package/esm2020/resource/edit/edit.component.mjs +0 -36
  151. package/esm2020/resource/index/index.component.mjs +0 -61
  152. package/esm2020/resource/resource.component.mjs +0 -46
  153. package/esm2020/resource/resource.config.mjs +0 -15
  154. package/esm2020/resource/resource.module.mjs +0 -62
  155. package/esm2020/resource/resources.service.mjs +0 -22
  156. package/esm2020/resource/view/view.component.mjs +0 -23
  157. package/fesm2015/formio-angular-auth.mjs +0 -298
  158. package/fesm2015/formio-angular-auth.mjs.map +0 -1
  159. package/fesm2015/formio-angular-grid.mjs +0 -678
  160. package/fesm2015/formio-angular-grid.mjs.map +0 -1
  161. package/fesm2015/formio-angular-manager.mjs +0 -746
  162. package/fesm2015/formio-angular-manager.mjs.map +0 -1
  163. package/fesm2015/formio-angular-resource.mjs +0 -506
  164. package/fesm2015/formio-angular-resource.mjs.map +0 -1
  165. package/fesm2015/formio-angular.mjs +0 -1151
  166. package/fesm2015/formio-angular.mjs.map +0 -1
  167. package/fesm2020/formio-angular-auth.mjs.map +0 -1
  168. package/fesm2020/formio-angular-grid.mjs.map +0 -1
  169. package/fesm2020/formio-angular-manager.mjs.map +0 -1
  170. package/fesm2020/formio-angular-resource.mjs.map +0 -1
  171. package/fesm2020/formio-angular.mjs +0 -1170
  172. package/fesm2020/formio-angular.mjs.map +0 -1
  173. /package/{esm2020 → esm2022}/auth/auth.routes.mjs +0 -0
  174. /package/{esm2020 → esm2022}/auth/formio-angular-auth.mjs +0 -0
  175. /package/{esm2020 → esm2022}/auth/index.mjs +0 -0
  176. /package/{esm2020 → esm2022}/formio-angular.mjs +0 -0
  177. /package/{esm2020 → esm2022}/formio.utils.mjs +0 -0
  178. /package/{esm2020 → esm2022}/grid/form/index.mjs +0 -0
  179. /package/{esm2020 → esm2022}/grid/formio-angular-grid.mjs +0 -0
  180. /package/{esm2020 → esm2022}/grid/index.mjs +0 -0
  181. /package/{esm2020 → esm2022}/grid/submission/index.mjs +0 -0
  182. /package/{esm2020 → esm2022}/grid/types/grid-column.mjs +0 -0
  183. /package/{esm2020 → esm2022}/grid/types/grid-footer-positions.mjs +0 -0
  184. /package/{esm2020 → esm2022}/grid/types/grid-header.mjs +0 -0
  185. /package/{esm2020 → esm2022}/index.mjs +0 -0
  186. /package/{esm2020 → esm2022}/manager/form-manager.routes.mjs +0 -0
  187. /package/{esm2020 → esm2022}/manager/formio-angular-manager.mjs +0 -0
  188. /package/{esm2020 → esm2022}/manager/index.mjs +0 -0
  189. /package/{esm2020 → esm2022}/resource/formio-angular-resource.mjs +0 -0
  190. /package/{esm2020 → esm2022}/resource/index.mjs +0 -0
  191. /package/{esm2020 → esm2022}/resource/resource.routes.mjs +0 -0
  192. /package/{esm2020 → esm2022}/types/alerts-position.mjs +0 -0
  193. /package/{esm2020 → esm2022}/types/formio-metadata.mjs +0 -0
  194. /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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9ncmlkL3NyYy9ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL2dyaWQvc3JjL2dyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUdMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFlBQVksQ0FBQztBQUlsQyxPQUFPLGNBQWMsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxvQkFBb0IsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVyRCxPQUFPLEVBQWEsUUFBUSxFQUFDLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFFekQsTUFLYSxtQkFBbUI7SUFpQ3JCO0lBQ0M7SUFDQTtJQWxDRCxjQUFjLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO0lBQzVDLEdBQUcsQ0FBVTtJQUNiLEtBQUssQ0FBYztJQUNuQixNQUFNLENBQWdCO0lBQ3RCLEtBQUssQ0FBTztJQUNaLE9BQU8sQ0FBd0I7SUFDL0IsT0FBTyxDQUFxQjtJQUM1QixRQUFRLENBQVU7SUFDbEIsSUFBSSxDQUFVO0lBQ2QsVUFBVSxDQUFPO0lBQ2pCLE1BQU0sQ0FBd0I7SUFDOUIsS0FBSyxDQUFVO0lBQ2YsVUFBVSxDQUFTO0lBQ25CLGVBQWUsQ0FBTTtJQUNwQixNQUFNLENBQXVCO0lBQzdCLFNBQVMsQ0FBdUI7SUFDaEMsU0FBUyxDQUF1QjtJQUNoQyxVQUFVLENBQW9CO0lBQzlCLEtBQUssQ0FBb0I7SUFDa0MsYUFBYSxDQUFtQjtJQUNsQyxXQUFXLENBQW1CO0lBQzVCLGFBQWEsQ0FBbUI7SUFFOUYsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUNULFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDbEIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixNQUFNLENBQXNCO0lBQzVCLElBQUksQ0FBb0I7SUFDeEIsTUFBTSxDQUFzQjtJQUM1QixlQUFlLEdBQUcsbUJBQW1CLENBQUM7SUFFN0MsWUFDUyxNQUFvQixFQUNuQixRQUFrQyxFQUNsQyxHQUFzQjtRQUZ2QixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBQ2xDLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBRTlCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxlQUFlLENBQUMsUUFBUSxFQUFFLFNBQVM7UUFDakMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqRSxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQVk7UUFDbkIsdUNBQXVDO1FBQ3ZDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3hCLE9BQU87U0FDUjtRQUNELHNCQUFzQjtRQUN0QixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDakQsT0FBTztTQUNSO1FBRUQsSUFBSSxHQUFHLEVBQUU7WUFDUCxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7U0FDdEU7UUFFRCxtQkFBbUI7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQzthQUM1QyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMzQixLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFFBQVE7UUFDTix5QkFBeUI7UUFDekIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRXRHLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRXJFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBWTtRQUN0QixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFDRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7Z0JBQ3pDLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUMvQztnQkFDQSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDekM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUU7Z0JBQy9DLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNwQjtTQUNGO1FBRUQsSUFBSSxJQUFJLENBQUMsTUFBTTtZQUNYLENBQUMsT0FBTyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQzNELElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDO1NBQzFEO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQWEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQ3BFO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQU07UUFDbEIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNyQzthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFO1lBQzlDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO2dCQUNuQixJQUFJLEVBQUUsUUFBUTtnQkFDZCxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLO2FBQ2hDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFXO1FBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUN2QjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7U0FDckI7UUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxNQUFNLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQ3JFO2FBQU07WUFDTCxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbEQ7UUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ3ZCO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztTQUNyQjtRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxVQUFVLENBQUMsTUFBa0I7UUFDM0IsZ0NBQWdDO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ3JDLElBQUksR0FBRyxDQUFDLEdBQUcsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFO2dCQUMxQixHQUFHLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQzthQUNmO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxRQUFRLE1BQU0sQ0FBQyxJQUFJLEVBQUU7WUFDbkIsS0FBSyxLQUFLO2dCQUNSLE1BQU0sQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztnQkFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7Z0JBQ25DLE1BQU07WUFDUixLQUFLLE1BQU07Z0JBQ1QsTUFBTSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7Z0JBQ3hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQ3ZCLE1BQU07WUFDUixLQUFLLFNBQVM7Z0JBQ1osTUFBTSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDO2dCQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO2dCQUM3QixNQUFNO1NBQ1Q7UUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFTO1FBQ25CLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM5QixDQUFDO3VHQWpOVSxtQkFBbUI7MkZBQW5CLG1CQUFtQiwwakJBb0JNLGdCQUFnQixvSEFDbEIsZ0JBQWdCLHdIQUNkLGdCQUFnQixnRUNyRHRELCtrQ0FrQkE7O1NEYWEsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsYUFBYTswS0FLZCxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0ksTUFBTTtzQkFBZixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDOEQsYUFBYTtzQkFBakYsU0FBUzt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUNBLFdBQVc7c0JBQTdFLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBQ0ksYUFBYTtzQkFBakYsU0FBUzt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR3JpZEZvb3RlclBvc2l0aW9ucyB9IGZyb20gJy4vdHlwZXMvZ3JpZC1mb290ZXItcG9zaXRpb25zJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtaW9BbGVydHN9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQge2VhY2h9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge0Zvcm1pb30gZnJvbSAnQGZvcm1pby9qcyc7XG5pbXBvcnQge0dyaWRIZWFkZXJDb21wb25lbnR9IGZyb20gJy4vR3JpZEhlYWRlckNvbXBvbmVudCc7XG5pbXBvcnQge0dyaWRCb2R5Q29tcG9uZW50fSBmcm9tICcuL0dyaWRCb2R5Q29tcG9uZW50JztcbmltcG9ydCB7R3JpZEZvb3RlckNvbXBvbmVudH0gZnJvbSAnLi9HcmlkRm9vdGVyQ29tcG9uZW50JztcbmltcG9ydCBGb3JtQ29tcG9uZW50cyBmcm9tICcuL2Zvcm0vaW5kZXgnO1xuaW1wb3J0IFN1Ym1pc3Npb25Db21wb25lbnRzIGZyb20gJy4vc3VibWlzc2lvbi9pbmRleCc7XG5pbXBvcnQge0Zvcm1pb1Byb21pc2VTZXJ2aWNlfSBmcm9tICdAZm9ybWlvL2FuZ3VsYXInO1xuaW1wb3J0IHtHcmlkQ29sdW1ufSBmcm9tICcuL3R5cGVzL2dyaWQtY29sdW1uJztcbmltcG9ydCB7R3JpZEhlYWRlciwgU29ydFR5cGV9IGZyb20gJy4vdHlwZXMvZ3JpZC1oZWFkZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmb3JtaW8tZ3JpZCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyaWQuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1pb0dyaWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIGZvb3RlclBvc2l0aW9uID0gR3JpZEZvb3RlclBvc2l0aW9ucy5ib3R0b207XG4gIEBJbnB1dCgpIHNyYz86IHN0cmluZztcbiAgQElucHV0KCkgaXRlbXM/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 }}&nbsp;<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 }}&nbsp;<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==