@genesislcap/foundation-entity-management 14.150.1 → 14.150.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/custom-elements.json +747 -747
  2. package/package.json +21 -21
@@ -89,7 +89,27 @@
89
89
  },
90
90
  {
91
91
  "kind": "javascript-module",
92
- "path": "src/list/index.ts",
92
+ "path": "src/components/components.ts",
93
+ "declarations": [
94
+ {
95
+ "kind": "function",
96
+ "name": "loadRemotes"
97
+ }
98
+ ],
99
+ "exports": [
100
+ {
101
+ "kind": "js",
102
+ "name": "loadRemotes",
103
+ "declaration": {
104
+ "name": "loadRemotes",
105
+ "module": "src/components/components.ts"
106
+ }
107
+ }
108
+ ]
109
+ },
110
+ {
111
+ "kind": "javascript-module",
112
+ "path": "src/components/index.ts",
93
113
  "declarations": [],
94
114
  "exports": [
95
115
  {
@@ -97,176 +117,206 @@
97
117
  "name": "*",
98
118
  "declaration": {
99
119
  "name": "*",
100
- "package": "./list"
120
+ "package": "./components"
101
121
  }
102
122
  }
103
123
  ]
104
124
  },
105
125
  {
106
126
  "kind": "javascript-module",
107
- "path": "src/list/list.styles.ts",
127
+ "path": "src/entities/entities.styles.ts",
108
128
  "declarations": [
109
129
  {
110
130
  "kind": "variable",
111
- "name": "listStyles",
112
- "default": "css`\n :host {\n contain: content;\n }\n\n :host,\n fast-router {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .container {\n display: flex;\n flex-direction: column;\n height: inherit;\n width: 100%;\n }\n`"
131
+ "name": "styles",
132
+ "default": "css`\n :host {\n contain: content;\n }\n\n .container {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n foundation-form {\n height: 100%;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n }\n\n .title {\n margin-left: 1px;\n }\n\n :host::part(header) {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .search-container {\n display: flex;\n align-items: center;\n }\n\n .search-container zero-search-bar {\n width: 500px;\n }\n`",
133
+ "description": "Defines the css of the entity component as an ElementStyles object"
113
134
  }
114
135
  ],
115
136
  "exports": [
116
137
  {
117
138
  "kind": "js",
118
- "name": "listStyles",
139
+ "name": "styles",
119
140
  "declaration": {
120
- "name": "listStyles",
121
- "module": "src/list/list.styles.ts"
141
+ "name": "styles",
142
+ "module": "src/entities/entities.styles.ts"
122
143
  }
123
144
  }
124
145
  ]
125
146
  },
126
147
  {
127
148
  "kind": "javascript-module",
128
- "path": "src/list/list.template.ts",
149
+ "path": "src/entities/entities.template.ts",
129
150
  "declarations": [
130
151
  {
131
152
  "kind": "variable",
132
- "name": "listTemplate",
133
- "default": "html<List>`\n <div class=\"container\">\n ${when(\n (x) => x.enableFilterBar,\n html<List>`\n <zero-filter-bar\n resource=${(x) => x.resourceName}\n only=${(x) => x.columns?.map((colDef) => colDef.field).filter((field) => !!field)}\n labels=${(x) => x.columns?.map((colDef) => colDef.headerName || '')}\n target=\"datasource\"\n ></zero-filter-bar>\n `,\n )}\n <zero-grid-pro\n ${ref('grid')}\n auto-cell-renderer-by-type\n rowSelection=\"single\"\n rowHeight=\"36\"\n headerHeight=\"36\"\n persist-column-state-key=${(x) => x.persistColumnStateKey}\n ?only-template-col-defs=${(x) => !!x.columns}\n readOnlyEdit=\"true\"\n tooltipMouseTrack=\"true\"\n tooltipShowDelay=\"0\"\n async-add=${(x) => x.asyncAdd}\n async-remove=${(x) => x.asyncRemove}\n async-update=${(x) => x.asyncUpdate}\n enable-cell-flashing=${(x) => x.enableCellFlashing}\n enable-row-flashing=${(x) => x.enableRowFlashing}\n header-case-type=${(x) => x.headerCaseType}\n >\n <grid-pro-genesis-datasource\n ${ref('datasource')}\n :deferredGridOptions=${(x) => x.gridOptions}\n criteria=${(x) => x.datasourceConfig?.criteria}\n fields=${(x) => x.datasourceConfig?.fields}\n is-snapshot=${(x) => x.datasourceConfig?.isSnapshot}\n max-rows=${(x) => x.datasourceConfig?.maxRows}\n max-view=${(x) => x.datasourceConfig?.maxView}\n moving-view=${(x) => x.datasourceConfig?.movingView}\n order-by=${(x) => x.datasourceConfig?.orderBy}\n polling-interval=${(x) => x.datasourceConfig?.pollingInterval}\n resource-name=${(x) => x.resourceName}\n reverse=${(x) => x.datasourceConfig?.reverse}\n ></grid-pro-genesis-datasource>\n ${repeat(\n (x) => x.columns,\n html`\n <grid-pro-column :definition=${(x) => x}></grid-pro-column>\n `,\n )}\n ${repeat(\n (x) => x.actionButtonsConfig,\n html`\n <grid-pro-column :definition=${(x) => x}></grid-pro-column>\n `,\n )}\n </zero-grid-pro>\n </div>\n`"
153
+ "name": "template",
154
+ "default": "html<EntityManagement>`\n <div class=\"container\">\n <slot name=\"header\" part=\"header\">${(x) => x.headerTempalate}</slot>\n <entity-list\n title=${(x) => x.title}\n async-add=${(x) => x.asyncAdd}\n async-remove=${(x) => x.asyncRemove}\n async-update=${(x) => x.asyncUpdate}\n enable-cell-flashing=${(x) => x.enableCellFlashing}\n enable-row-flashing=${(x) => x.enableRowFlashing}\n persist-column-state-key=${(x) => x.persistColumnStateKey}\n size-columns-to-fit=${(x) => x.sizeColumnsToFit}\n enable-filter-bar=${(x) => x.enableFilterBar}\n resourceName=${(x) => x.resourceName}\n :deleteEvent=${(x) => x.deleteEvent}\n :updateEvent=${(x) => x.updateEvent}\n :gridOptions=${(x) => x.gridOptions}\n :columns=${(x) => x.columns}\n :datasourceConfig=${(x) => x.datasourceConfig}\n data-test-id=\"entity-list\"\n hide-edit=${(x) => x.hideEdit}\n hide-delete=${(x) => x.hideDelete}\n header-case-type=${(x) => x.headerCaseType}\n >\n <slot name=\"header\" slot=\"header\">${defaultHeader}</slot>\n </entity-list>\n <zero-modal\n ${ref('editEntityModal')}\n position=${(x) => x.modalPosition}\n :onCloseCallback=${(x) => x.closeModal.bind(x)}\n data-test-id=\"edit-entity-modal\"\n >\n <div slot=\"top\" data-test-id=\"dialog-title\">${(x) => x.editDialogTitle}</div>\n\n <slot name=\"edit\">\n ${when(\n (x) => x.editModalVisible,\n html<EntityManagement>`\n <foundation-form\n part=\"form\"\n :renderers=${(x) => x.formRenderers}\n resourceName=${(x) => x.formResourceName}\n :data=${(x) => x.editedEntity}\n :uischema=${(x) => x.formUiSchema}\n readonly=${(x) => x.readonly}\n @submit-success=${(x, c) => x.submitEntityChanges(c.event as CustomEvent)}\n ></foundation-form>\n `,\n )}\n </slot>\n </zero-modal>\n </div>\n`",
155
+ "description": "Defines the html of the entity component as a ViewTemplate object"
134
156
  }
135
157
  ],
136
158
  "exports": [
137
159
  {
138
160
  "kind": "js",
139
- "name": "listTemplate",
161
+ "name": "template",
140
162
  "declaration": {
141
- "name": "listTemplate",
142
- "module": "src/list/list.template.ts"
163
+ "name": "template",
164
+ "module": "src/entities/entities.template.ts"
143
165
  }
144
166
  }
145
167
  ]
146
168
  },
147
169
  {
148
170
  "kind": "javascript-module",
149
- "path": "src/list/list.ts",
171
+ "path": "src/entities/entities.ts",
150
172
  "declarations": [
151
173
  {
152
174
  "kind": "class",
153
- "description": "",
154
- "name": "List",
175
+ "description": "Main class which defines the entity management functionality",
176
+ "name": "EntityManagement",
155
177
  "members": [
156
178
  {
157
179
  "kind": "field",
158
- "name": "resourceName",
180
+ "name": "connect",
159
181
  "type": {
160
- "text": "string"
182
+ "text": "Connect"
161
183
  },
162
- "default": "''"
184
+ "privacy": "protected",
185
+ "description": "DI connect object which is used to interact with the backend."
163
186
  },
164
187
  {
165
188
  "kind": "field",
166
- "name": "title",
189
+ "name": "resourceName",
167
190
  "type": {
168
191
  "text": "string"
169
192
  },
170
- "default": "''"
193
+ "description": "Name of the backend resource which contain the entities to manage",
194
+ "privacy": "public"
171
195
  },
172
196
  {
173
197
  "kind": "field",
174
- "name": "persistColumnStateKey",
198
+ "name": "readEvent",
175
199
  "type": {
176
200
  "text": "string"
177
201
  }
178
202
  },
179
203
  {
180
204
  "kind": "field",
181
- "name": "sizeColumnsToFit",
205
+ "name": "readEventFn",
182
206
  "type": {
183
- "text": "boolean"
207
+ "text": "(...args) => {}"
184
208
  }
185
209
  },
186
210
  {
187
211
  "kind": "field",
188
- "name": "enableFilterBar",
212
+ "name": "readonly",
189
213
  "type": {
190
214
  "text": "boolean"
191
215
  }
192
216
  },
193
217
  {
194
218
  "kind": "field",
195
- "name": "asyncAdd",
219
+ "name": "updateEvent",
196
220
  "type": {
197
- "text": "boolean"
221
+ "text": "string"
198
222
  },
199
- "default": "false"
223
+ "description": "Name of the event handler on the Genesis server which handles updating the entity",
224
+ "privacy": "public"
200
225
  },
201
226
  {
202
227
  "kind": "field",
203
- "name": "asyncRemove",
228
+ "name": "deleteEvent",
204
229
  "type": {
205
- "text": "boolean"
230
+ "text": "string"
206
231
  },
207
- "default": "false"
232
+ "description": "Name of the event handler on the Genesis server which handles deleting the entity",
233
+ "privacy": "public"
208
234
  },
209
235
  {
210
236
  "kind": "field",
211
- "name": "asyncUpdate",
237
+ "name": "createEvent",
212
238
  "type": {
213
- "text": "boolean"
239
+ "text": "string"
214
240
  },
215
- "default": "true"
241
+ "description": "Name of the event handler on the Genesis server which handles creating an entity",
242
+ "privacy": "public"
216
243
  },
217
244
  {
218
245
  "kind": "field",
219
- "name": "enableCellFlashing",
246
+ "name": "title",
220
247
  "type": {
221
- "text": "boolean"
248
+ "text": "string"
222
249
  },
223
- "default": "false"
250
+ "description": "Title of the grid",
251
+ "privacy": "public"
224
252
  },
225
253
  {
226
254
  "kind": "field",
227
- "name": "enableRowFlashing",
255
+ "name": "entityLabel",
256
+ "type": {
257
+ "text": "string"
258
+ },
259
+ "default": "''",
260
+ "description": "Label for the entity which has usages such as being shown in the title of the modal wen editing the entity",
261
+ "privacy": "public"
262
+ },
263
+ {
264
+ "kind": "field",
265
+ "name": "asyncAdd",
228
266
  "type": {
229
267
  "text": "boolean"
230
268
  },
231
- "default": "false"
269
+ "default": "false",
270
+ "description": "Whether to use the `applyTransactionAsync` function for *add* transactions",
271
+ "privacy": "public"
232
272
  },
233
273
  {
234
274
  "kind": "field",
235
- "name": "hideEdit",
275
+ "name": "asyncRemove",
236
276
  "type": {
237
277
  "text": "boolean"
238
278
  },
239
- "default": "false"
279
+ "default": "false",
280
+ "description": "Whether to use the `applyTransactionAsync` function for *remove* transactions",
281
+ "privacy": "public"
240
282
  },
241
283
  {
242
284
  "kind": "field",
243
- "name": "hideDelete",
285
+ "name": "asyncUpdate",
244
286
  "type": {
245
287
  "text": "boolean"
246
288
  },
247
- "default": "false"
289
+ "default": "true",
290
+ "description": "Whether to use the `applyTransactionAsync` function for *update* transactions",
291
+ "privacy": "public"
248
292
  },
249
293
  {
250
294
  "kind": "field",
251
- "name": "headerCaseType",
295
+ "name": "enableCellFlashing",
252
296
  "type": {
253
- "text": "GridProCaseType"
254
- }
297
+ "text": "boolean"
298
+ },
299
+ "default": "false",
300
+ "description": "If false, will disable cell flashing for all cells by default, unless otherwise defined in custom colDef",
301
+ "privacy": "public"
255
302
  },
256
303
  {
257
304
  "kind": "field",
258
- "name": "grid",
305
+ "name": "enableRowFlashing",
259
306
  "type": {
260
- "text": "ZeroGridPro"
307
+ "text": "boolean"
261
308
  },
309
+ "default": "false",
310
+ "description": "If true, will enable row flashing for all rows for `add` transactions",
262
311
  "privacy": "public"
263
312
  },
264
313
  {
265
314
  "kind": "field",
266
- "name": "datasource",
315
+ "name": "persistColumnStateKey",
267
316
  "type": {
268
- "text": "GridProGenesisDatasource"
317
+ "text": "string"
269
318
  },
319
+ "description": "This attribute controls whether and how the entity manager stores the state of the columns when the user edits them. Omit this attribute to disable the functionality, set it to a unique value to enable it.",
270
320
  "privacy": "public"
271
321
  },
272
322
  {
@@ -274,108 +324,279 @@
274
324
  "name": "gridOptions",
275
325
  "type": {
276
326
  "text": "GridOptions"
277
- }
327
+ },
328
+ "description": "GridOptions to be passed down from application",
329
+ "privacy": "public"
278
330
  },
279
331
  {
280
332
  "kind": "field",
281
333
  "name": "columns",
282
334
  "type": {
283
335
  "text": "ColDef[]"
284
- }
336
+ },
337
+ "description": "Array which holds the column definitions.",
338
+ "privacy": "public"
285
339
  },
286
340
  {
287
341
  "kind": "field",
288
342
  "name": "datasourceConfig",
289
343
  "type": {
290
344
  "text": "DatasourceConfiguration"
291
- }
345
+ },
346
+ "description": "The configuration which is used when interacting with the resource on the backend",
347
+ "privacy": "public"
292
348
  },
293
349
  {
294
350
  "kind": "field",
295
- "name": "actionButtonsConfig",
351
+ "name": "formUiSchema",
296
352
  "type": {
297
- "text": "array"
298
- },
299
- "default": "[]"
353
+ "text": "any"
354
+ }
300
355
  },
301
356
  {
302
357
  "kind": "field",
303
- "name": "deleteEvent",
358
+ "name": "createFormUiSchema",
304
359
  "type": {
305
- "text": "string"
360
+ "text": "any"
306
361
  }
307
362
  },
308
363
  {
309
364
  "kind": "field",
310
- "name": "updateEvent",
365
+ "name": "updateFormUiSchema",
311
366
  "type": {
312
- "text": "string"
367
+ "text": "any"
313
368
  }
314
369
  },
315
370
  {
316
371
  "kind": "field",
317
- "name": "connect",
372
+ "name": "formRenderers",
318
373
  "type": {
319
- "text": "Connect"
374
+ "text": "RendererEntry[]"
320
375
  },
321
- "privacy": "protected"
376
+ "default": "renderers",
377
+ "description": "Array with renderers used by foundation-forms",
378
+ "privacy": "public"
322
379
  },
323
380
  {
324
- "kind": "method",
325
- "name": "onCellEditingStopped",
326
- "privacy": "private",
327
- "parameters": [
328
- {
329
- "name": "event",
330
- "type": {
331
- "text": "CellEditRequestEvent"
332
- }
333
- }
334
- ]
381
+ "kind": "field",
382
+ "name": "selectedEntity",
383
+ "type": {
384
+ "text": "any"
385
+ },
386
+ "description": "Reference to the currently selected entity from the grid.",
387
+ "privacy": "public"
335
388
  },
336
389
  {
337
- "kind": "method",
338
- "name": "handleFilterChanged",
339
- "privacy": "private",
340
- "parameters": [
341
- {
342
- "name": "e"
343
- }
344
- ]
390
+ "kind": "field",
391
+ "name": "editedEntity",
392
+ "type": {
393
+ "text": "any"
394
+ },
395
+ "description": "Disables the form while enabled to stop the user dispatching a large number of duplicate events",
396
+ "privacy": "public"
345
397
  },
346
398
  {
347
- "kind": "method",
348
- "name": "handleFilterCleared",
349
- "privacy": "private",
350
- "parameters": [
351
- {
352
- "name": "e"
353
- }
354
- ]
399
+ "kind": "field",
400
+ "name": "submitting",
401
+ "type": {
402
+ "text": "boolean"
403
+ }
355
404
  },
356
405
  {
357
- "kind": "method",
358
- "name": "select",
359
- "privacy": "private",
360
- "parameters": [
361
- {
362
- "name": "e"
363
- }
364
- ]
406
+ "kind": "field",
407
+ "name": "defaultEntityValues",
408
+ "type": {
409
+ "text": "any"
410
+ }
365
411
  },
366
412
  {
367
413
  "kind": "field",
368
- "name": "edit",
369
- "privacy": "private"
414
+ "name": "editDialogTitle",
415
+ "type": {
416
+ "text": "string"
417
+ },
418
+ "description": "String which contains the text of the popup modal when the user is adding or editing an entity"
370
419
  },
371
420
  {
372
- "kind": "method",
373
- "name": "delete",
374
- "parameters": [
421
+ "kind": "field",
422
+ "name": "editModalVisible",
423
+ "type": {
424
+ "text": "boolean"
425
+ },
426
+ "default": "false"
427
+ },
428
+ {
429
+ "kind": "method",
430
+ "name": "editModalVisibleChanged"
431
+ },
432
+ {
433
+ "kind": "field",
434
+ "name": "editEntityModal",
435
+ "type": {
436
+ "text": "any"
437
+ },
438
+ "privacy": "public"
439
+ },
440
+ {
441
+ "kind": "field",
442
+ "name": "sizeColumnsToFit",
443
+ "type": {
444
+ "text": "boolean"
445
+ }
446
+ },
447
+ {
448
+ "kind": "field",
449
+ "name": "enableFilterBar",
450
+ "type": {
451
+ "text": "boolean"
452
+ }
453
+ },
454
+ {
455
+ "kind": "field",
456
+ "name": "hideEdit",
457
+ "type": {
458
+ "text": "boolean"
459
+ },
460
+ "default": "false"
461
+ },
462
+ {
463
+ "kind": "field",
464
+ "name": "hideDelete",
465
+ "type": {
466
+ "text": "boolean"
467
+ },
468
+ "default": "false"
469
+ },
470
+ {
471
+ "kind": "field",
472
+ "name": "enableSearchBar",
473
+ "type": {
474
+ "text": "boolean"
475
+ },
476
+ "default": "false"
477
+ },
478
+ {
479
+ "kind": "field",
480
+ "name": "headerCaseType",
481
+ "type": {
482
+ "text": "GridProCaseType"
483
+ },
484
+ "description": "The case type to use for the header names. If not set, the default CONSTANT_CASE will be used.",
485
+ "privacy": "public"
486
+ },
487
+ {
488
+ "kind": "field",
489
+ "name": "searchBarConfig",
490
+ "type": {
491
+ "text": "AvailableOption[]"
492
+ }
493
+ },
494
+ {
495
+ "kind": "field",
496
+ "name": "modalPosition",
497
+ "type": {
498
+ "text": "'centre' | 'left' | 'right'"
499
+ },
500
+ "default": "'right'",
501
+ "description": "Determines where the modal dialog will appear on screen",
502
+ "privacy": "public"
503
+ },
504
+ {
505
+ "kind": "method",
506
+ "name": "deepClone",
507
+ "return": {
508
+ "type": {
509
+ "text": "Node"
510
+ }
511
+ },
512
+ "description": "Override the deepClone method to ensure that observable attributes are cloned",
513
+ "privacy": "public"
514
+ },
515
+ {
516
+ "kind": "method",
517
+ "name": "submitEntityChanges",
518
+ "privacy": "public",
519
+ "parameters": [
375
520
  {
376
- "name": "e"
521
+ "name": "e",
522
+ "type": {
523
+ "text": "CustomEvent"
524
+ },
525
+ "description": "CustomEvent which contains the payload for the entity to submit to the backend\n\nEmits an event upon error"
526
+ }
527
+ ],
528
+ "description": "Event handler for when the user submits the action for the currently open form, either editing or adding the entity"
529
+ },
530
+ {
531
+ "kind": "method",
532
+ "name": "readEntity",
533
+ "privacy": "private",
534
+ "parameters": [
535
+ {
536
+ "name": "e",
537
+ "type": {
538
+ "text": "CustomEvent"
539
+ }
540
+ }
541
+ ]
542
+ },
543
+ {
544
+ "kind": "method",
545
+ "name": "closeModal",
546
+ "privacy": "public"
547
+ },
548
+ {
549
+ "kind": "field",
550
+ "name": "headerTempalate",
551
+ "readonly": true
552
+ },
553
+ {
554
+ "kind": "method",
555
+ "name": "searchChanged",
556
+ "privacy": "public",
557
+ "parameters": [
558
+ {
559
+ "name": "event",
560
+ "type": {
561
+ "text": "CustomEvent<Array<SelectedOption>>"
562
+ }
563
+ }
564
+ ]
565
+ },
566
+ {
567
+ "kind": "method",
568
+ "name": "criteriaChanged",
569
+ "privacy": "public",
570
+ "parameters": [
571
+ {
572
+ "name": "e",
573
+ "type": {
574
+ "text": "CustomEvent<string>"
575
+ }
576
+ }
577
+ ]
578
+ },
579
+ {
580
+ "kind": "method",
581
+ "name": "submitFailureNotification",
582
+ "privacy": "public",
583
+ "parameters": [
584
+ {
585
+ "name": "e",
586
+ "type": {
587
+ "text": "CustomEvent"
588
+ }
377
589
  }
378
590
  ]
591
+ },
592
+ {
593
+ "kind": "method",
594
+ "name": "confirmDelete"
595
+ },
596
+ {
597
+ "kind": "method",
598
+ "name": "showDeleteConfirmation",
599
+ "privacy": "private"
379
600
  }
380
601
  ],
381
602
  "attributes": [
@@ -384,37 +605,62 @@
384
605
  "type": {
385
606
  "text": "string"
386
607
  },
387
- "default": "''",
608
+ "description": "Name of the backend resource which contain the entities to manage",
388
609
  "fieldName": "resourceName"
389
610
  },
390
611
  {
391
- "name": "title",
612
+ "name": "readEvent",
392
613
  "type": {
393
614
  "text": "string"
394
615
  },
395
- "default": "''",
396
- "fieldName": "title"
616
+ "fieldName": "readEvent"
397
617
  },
398
618
  {
399
- "name": "persist-column-state-key",
619
+ "type": {
620
+ "text": "boolean"
621
+ },
622
+ "fieldName": "readonly"
623
+ },
624
+ {
625
+ "name": "updateEvent",
400
626
  "type": {
401
627
  "text": "string"
402
628
  },
403
- "fieldName": "persistColumnStateKey"
629
+ "description": "Name of the event handler on the Genesis server which handles updating the entity",
630
+ "fieldName": "updateEvent"
404
631
  },
405
632
  {
406
- "name": "size-columns-to-fit",
633
+ "name": "deleteEvent",
407
634
  "type": {
408
- "text": "boolean"
635
+ "text": "string"
409
636
  },
410
- "fieldName": "sizeColumnsToFit"
637
+ "description": "Name of the event handler on the Genesis server which handles deleting the entity",
638
+ "fieldName": "deleteEvent"
411
639
  },
412
640
  {
413
- "name": "enable-filter-bar",
641
+ "name": "createEvent",
414
642
  "type": {
415
- "text": "boolean"
643
+ "text": "string"
416
644
  },
417
- "fieldName": "enableFilterBar"
645
+ "description": "Name of the event handler on the Genesis server which handles creating an entity",
646
+ "fieldName": "createEvent"
647
+ },
648
+ {
649
+ "name": "title",
650
+ "type": {
651
+ "text": "string"
652
+ },
653
+ "description": "Title of the grid",
654
+ "fieldName": "title"
655
+ },
656
+ {
657
+ "name": "entityLabel",
658
+ "type": {
659
+ "text": "string"
660
+ },
661
+ "default": "''",
662
+ "description": "Label for the entity which has usages such as being shown in the title of the modal wen editing the entity",
663
+ "fieldName": "entityLabel"
418
664
  },
419
665
  {
420
666
  "name": "async-add",
@@ -422,6 +668,7 @@
422
668
  "text": "boolean"
423
669
  },
424
670
  "default": "false",
671
+ "description": "Whether to use the `applyTransactionAsync` function for *add* transactions",
425
672
  "fieldName": "asyncAdd"
426
673
  },
427
674
  {
@@ -430,6 +677,7 @@
430
677
  "text": "boolean"
431
678
  },
432
679
  "default": "false",
680
+ "description": "Whether to use the `applyTransactionAsync` function for *remove* transactions",
433
681
  "fieldName": "asyncRemove"
434
682
  },
435
683
  {
@@ -438,6 +686,7 @@
438
686
  "text": "boolean"
439
687
  },
440
688
  "default": "true",
689
+ "description": "Whether to use the `applyTransactionAsync` function for *update* transactions",
441
690
  "fieldName": "asyncUpdate"
442
691
  },
443
692
  {
@@ -446,6 +695,7 @@
446
695
  "text": "boolean"
447
696
  },
448
697
  "default": "false",
698
+ "description": "If false, will disable cell flashing for all cells by default, unless otherwise defined in custom colDef",
449
699
  "fieldName": "enableCellFlashing"
450
700
  },
451
701
  {
@@ -454,8 +704,31 @@
454
704
  "text": "boolean"
455
705
  },
456
706
  "default": "false",
707
+ "description": "If true, will enable row flashing for all rows for `add` transactions",
457
708
  "fieldName": "enableRowFlashing"
458
709
  },
710
+ {
711
+ "name": "persist-column-state-key",
712
+ "type": {
713
+ "text": "string"
714
+ },
715
+ "description": "This attribute controls whether and how the entity manager stores the state of the columns when the user edits them. Omit this attribute to disable the functionality, set it to a unique value to enable it.",
716
+ "fieldName": "persistColumnStateKey"
717
+ },
718
+ {
719
+ "name": "size-columns-to-fit",
720
+ "type": {
721
+ "text": "boolean"
722
+ },
723
+ "fieldName": "sizeColumnsToFit"
724
+ },
725
+ {
726
+ "name": "enable-filter-bar",
727
+ "type": {
728
+ "text": "boolean"
729
+ },
730
+ "fieldName": "enableFilterBar"
731
+ },
459
732
  {
460
733
  "name": "hide-edit",
461
734
  "type": {
@@ -473,515 +746,586 @@
473
746
  "fieldName": "hideDelete"
474
747
  },
475
748
  {
476
- "name": "header-case-type",
749
+ "name": "enable-search-bar",
477
750
  "type": {
478
- "text": "GridProCaseType"
751
+ "text": "boolean"
752
+ },
753
+ "default": "false",
754
+ "fieldName": "enableSearchBar"
755
+ },
756
+ {
757
+ "name": "header-case-type",
758
+ "type": {
759
+ "text": "GridProCaseType"
479
760
  },
761
+ "description": "The case type to use for the header names. If not set, the default CONSTANT_CASE will be used.",
480
762
  "fieldName": "headerCaseType"
763
+ },
764
+ {
765
+ "name": "modal-position",
766
+ "type": {
767
+ "text": "'centre' | 'left' | 'right'"
768
+ },
769
+ "default": "'right'",
770
+ "description": "Determines where the modal dialog will appear on screen",
771
+ "fieldName": "modalPosition"
772
+ }
773
+ ],
774
+ "mixins": [
775
+ {
776
+ "name": "LifecycleMixin",
777
+ "package": "@genesislcap/foundation-utils"
481
778
  }
482
779
  ],
483
780
  "superclass": {
484
781
  "name": "FASTElement",
485
782
  "package": "@microsoft/fast-element"
486
783
  },
487
- "tagName": "entity-list",
784
+ "tagName": "entity-management",
488
785
  "customElement": true
489
786
  }
490
787
  ],
491
788
  "exports": [
492
789
  {
493
790
  "kind": "js",
494
- "name": "List",
791
+ "name": "EntityManagement",
495
792
  "declaration": {
496
- "name": "List",
497
- "module": "src/list/list.ts"
793
+ "name": "EntityManagement",
794
+ "module": "src/entities/entities.ts"
498
795
  }
499
796
  },
500
797
  {
501
798
  "kind": "custom-element-definition",
502
- "name": "entity-list",
799
+ "name": "entity-management",
503
800
  "declaration": {
504
- "name": "List",
505
- "module": "src/list/list.ts"
801
+ "name": "EntityManagement",
802
+ "module": "src/entities/entities.ts"
506
803
  }
507
804
  }
508
805
  ]
509
806
  },
510
807
  {
511
808
  "kind": "javascript-module",
512
- "path": "src/entities/entities.styles.ts",
809
+ "path": "src/entities/index.ts",
810
+ "declarations": [],
811
+ "exports": [
812
+ {
813
+ "kind": "js",
814
+ "name": "*",
815
+ "declaration": {
816
+ "name": "*",
817
+ "package": "./entities"
818
+ }
819
+ },
820
+ {
821
+ "kind": "js",
822
+ "name": "*",
823
+ "declaration": {
824
+ "name": "*",
825
+ "package": "./entities.template"
826
+ }
827
+ },
828
+ {
829
+ "kind": "js",
830
+ "name": "*",
831
+ "declaration": {
832
+ "name": "*",
833
+ "package": "./entities.styles"
834
+ }
835
+ }
836
+ ]
837
+ },
838
+ {
839
+ "kind": "javascript-module",
840
+ "path": "src/layouts/default.ts",
513
841
  "declarations": [
514
842
  {
515
843
  "kind": "variable",
516
- "name": "styles",
517
- "default": "css`\n :host {\n contain: content;\n }\n\n .container {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n foundation-form {\n height: 100%;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n }\n\n .title {\n margin-left: 1px;\n }\n\n :host::part(header) {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .search-container {\n display: flex;\n align-items: center;\n }\n\n .search-container zero-search-bar {\n width: 500px;\n }\n`",
518
- "description": "Defines the css of the entity component as an ElementStyles object"
844
+ "name": "loginLayout",
845
+ "default": "new FASTElementLayout(\n html`\n <div class=\"container\">\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n `,\n baseLayoutCss,\n)"
846
+ },
847
+ {
848
+ "kind": "variable",
849
+ "name": "defaultLayout",
850
+ "default": "new FASTElementLayout(\n html`\n <div class=\"container\">\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n `,\n css`\n ${baseLayoutCss}\n `,\n)"
519
851
  }
520
852
  ],
521
853
  "exports": [
522
854
  {
523
855
  "kind": "js",
524
- "name": "styles",
856
+ "name": "loginLayout",
525
857
  "declaration": {
526
- "name": "styles",
527
- "module": "src/entities/entities.styles.ts"
858
+ "name": "loginLayout",
859
+ "module": "src/layouts/default.ts"
860
+ }
861
+ },
862
+ {
863
+ "kind": "js",
864
+ "name": "defaultLayout",
865
+ "declaration": {
866
+ "name": "defaultLayout",
867
+ "module": "src/layouts/default.ts"
528
868
  }
529
869
  }
530
870
  ]
531
871
  },
532
872
  {
533
873
  "kind": "javascript-module",
534
- "path": "src/entities/entities.template.ts",
874
+ "path": "src/layouts/index.ts",
875
+ "declarations": [],
876
+ "exports": [
877
+ {
878
+ "kind": "js",
879
+ "name": "*",
880
+ "declaration": {
881
+ "name": "*",
882
+ "package": "./default"
883
+ }
884
+ }
885
+ ]
886
+ },
887
+ {
888
+ "kind": "javascript-module",
889
+ "path": "src/main/index.ts",
890
+ "declarations": [],
891
+ "exports": [
892
+ {
893
+ "kind": "js",
894
+ "name": "*",
895
+ "declaration": {
896
+ "name": "*",
897
+ "package": "./main.template"
898
+ }
899
+ },
900
+ {
901
+ "kind": "js",
902
+ "name": "*",
903
+ "declaration": {
904
+ "name": "*",
905
+ "package": "./main"
906
+ }
907
+ }
908
+ ]
909
+ },
910
+ {
911
+ "kind": "javascript-module",
912
+ "path": "src/main/main.styles.ts",
535
913
  "declarations": [
536
914
  {
537
915
  "kind": "variable",
538
- "name": "template",
539
- "default": "html<EntityManagement>`\n <div class=\"container\">\n <slot name=\"header\" part=\"header\">${(x) => x.headerTempalate}</slot>\n <entity-list\n title=${(x) => x.title}\n async-add=${(x) => x.asyncAdd}\n async-remove=${(x) => x.asyncRemove}\n async-update=${(x) => x.asyncUpdate}\n enable-cell-flashing=${(x) => x.enableCellFlashing}\n enable-row-flashing=${(x) => x.enableRowFlashing}\n persist-column-state-key=${(x) => x.persistColumnStateKey}\n size-columns-to-fit=${(x) => x.sizeColumnsToFit}\n enable-filter-bar=${(x) => x.enableFilterBar}\n resourceName=${(x) => x.resourceName}\n :deleteEvent=${(x) => x.deleteEvent}\n :updateEvent=${(x) => x.updateEvent}\n :gridOptions=${(x) => x.gridOptions}\n :columns=${(x) => x.columns}\n :datasourceConfig=${(x) => x.datasourceConfig}\n data-test-id=\"entity-list\"\n hide-edit=${(x) => x.hideEdit}\n hide-delete=${(x) => x.hideDelete}\n header-case-type=${(x) => x.headerCaseType}\n >\n <slot name=\"header\" slot=\"header\">${defaultHeader}</slot>\n </entity-list>\n <zero-modal\n ${ref('editEntityModal')}\n position=${(x) => x.modalPosition}\n :onCloseCallback=${(x) => x.closeModal.bind(x)}\n data-test-id=\"edit-entity-modal\"\n >\n <div slot=\"top\" data-test-id=\"dialog-title\">${(x) => x.editDialogTitle}</div>\n\n <slot name=\"edit\">\n ${when(\n (x) => x.editModalVisible,\n html<EntityManagement>`\n <foundation-form\n part=\"form\"\n :renderers=${(x) => x.formRenderers}\n resourceName=${(x) => x.formResourceName}\n :data=${(x) => x.editedEntity}\n :uischema=${(x) => x.formUiSchema}\n readonly=${(x) => x.readonly}\n @submit-success=${(x, c) => x.submitEntityChanges(c.event as CustomEvent)}\n ></foundation-form>\n `,\n )}\n </slot>\n </zero-modal>\n </div>\n`",
540
- "description": "Defines the html of the entity component as a ViewTemplate object"
916
+ "name": "MainStyles",
917
+ "default": "css`\n ${mixinRobotoFont()}\n :host {\n contain: content;\n }\n\n :host,\n zero-design-system-provider,\n .dynamic-template,\n foundation-router {\n display: flex;\n width: 100%;\n height: 100%;\n }\n\n fast-progress {\n --accent-foreground-rest: #654df9;\n\n height: calc(var(--design-unit) * 1px);\n margin: 0;\n width: 100%;\n }\n`"
541
918
  }
542
919
  ],
543
920
  "exports": [
544
921
  {
545
922
  "kind": "js",
546
- "name": "template",
923
+ "name": "MainStyles",
547
924
  "declaration": {
548
- "name": "template",
549
- "module": "src/entities/entities.template.ts"
925
+ "name": "MainStyles",
926
+ "module": "src/main/main.styles.ts"
550
927
  }
551
928
  }
552
929
  ]
553
930
  },
554
931
  {
555
932
  "kind": "javascript-module",
556
- "path": "src/entities/entities.ts",
933
+ "path": "src/main/main.template.ts",
934
+ "declarations": [],
935
+ "exports": []
936
+ },
937
+ {
938
+ "kind": "javascript-module",
939
+ "path": "src/main/main.ts",
557
940
  "declarations": [
558
941
  {
559
942
  "kind": "class",
560
- "description": "Main class which defines the entity management functionality",
561
- "name": "EntityManagement",
943
+ "description": "",
944
+ "name": "MainApplication",
562
945
  "members": [
563
946
  {
564
947
  "kind": "field",
565
- "name": "connect",
566
- "type": {
567
- "text": "Connect"
568
- },
569
- "privacy": "protected",
570
- "description": "DI connect object which is used to interact with the backend."
571
- },
572
- {
573
- "kind": "field",
574
- "name": "resourceName",
575
- "type": {
576
- "text": "string"
577
- },
578
- "description": "Name of the backend resource which contain the entities to manage",
579
- "privacy": "public"
580
- },
581
- {
582
- "kind": "field",
583
- "name": "readEvent",
948
+ "name": "config",
584
949
  "type": {
585
- "text": "string"
950
+ "text": "MainRouterConfig"
586
951
  }
587
952
  },
588
953
  {
589
954
  "kind": "field",
590
- "name": "readEventFn",
955
+ "name": "connect",
591
956
  "type": {
592
- "text": "(...args) => {}"
957
+ "text": "Connect"
593
958
  }
594
959
  },
595
960
  {
596
961
  "kind": "field",
597
- "name": "readonly",
962
+ "name": "session",
598
963
  "type": {
599
- "text": "boolean"
964
+ "text": "Session"
600
965
  }
601
966
  },
602
967
  {
603
968
  "kind": "field",
604
- "name": "updateEvent",
969
+ "name": "container",
605
970
  "type": {
606
- "text": "string"
607
- },
608
- "description": "Name of the event handler on the Genesis server which handles updating the entity",
609
- "privacy": "public"
971
+ "text": "Container"
972
+ }
610
973
  },
611
974
  {
612
975
  "kind": "field",
613
- "name": "deleteEvent",
976
+ "name": "provider",
614
977
  "type": {
615
- "text": "string"
616
- },
617
- "description": "Name of the event handler on the Genesis server which handles deleting the entity",
618
- "privacy": "public"
978
+ "text": "any"
979
+ }
619
980
  },
620
981
  {
621
982
  "kind": "field",
622
- "name": "createEvent",
983
+ "name": "ready",
623
984
  "type": {
624
- "text": "string"
985
+ "text": "boolean"
625
986
  },
626
- "description": "Name of the event handler on the Genesis server which handles creating an entity",
627
- "privacy": "public"
987
+ "default": "false"
628
988
  },
629
989
  {
630
990
  "kind": "field",
631
- "name": "title",
991
+ "name": "data",
632
992
  "type": {
633
- "text": "string"
993
+ "text": "any"
634
994
  },
635
- "description": "Title of the grid",
636
- "privacy": "public"
995
+ "default": "null"
637
996
  },
638
997
  {
639
- "kind": "field",
640
- "name": "entityLabel",
641
- "type": {
642
- "text": "string"
643
- },
644
- "default": "''",
645
- "description": "Label for the entity which has usages such as being shown in the title of the modal wen editing the entity",
646
- "privacy": "public"
998
+ "kind": "method",
999
+ "name": "onLuminanceToggle"
647
1000
  },
648
1001
  {
649
- "kind": "field",
650
- "name": "asyncAdd",
651
- "type": {
652
- "text": "boolean"
653
- },
654
- "default": "false",
655
- "description": "Whether to use the `applyTransactionAsync` function for *add* transactions",
656
- "privacy": "public"
1002
+ "kind": "method",
1003
+ "name": "loadRemotes"
657
1004
  },
658
1005
  {
659
- "kind": "field",
660
- "name": "asyncRemove",
661
- "type": {
662
- "text": "boolean"
663
- },
664
- "default": "false",
665
- "description": "Whether to use the `applyTransactionAsync` function for *remove* transactions",
666
- "privacy": "public"
1006
+ "kind": "method",
1007
+ "name": "selectTemplate"
667
1008
  },
668
1009
  {
669
- "kind": "field",
670
- "name": "asyncUpdate",
671
- "type": {
672
- "text": "boolean"
673
- },
674
- "default": "true",
675
- "description": "Whether to use the `applyTransactionAsync` function for *update* transactions",
676
- "privacy": "public"
677
- },
1010
+ "kind": "method",
1011
+ "name": "registerDIDependencies",
1012
+ "privacy": "private"
1013
+ }
1014
+ ],
1015
+ "superclass": {
1016
+ "name": "FASTElement",
1017
+ "package": "@microsoft/fast-element"
1018
+ },
1019
+ "customElement": true
1020
+ }
1021
+ ],
1022
+ "exports": [
1023
+ {
1024
+ "kind": "js",
1025
+ "name": "MainApplication",
1026
+ "declaration": {
1027
+ "name": "MainApplication",
1028
+ "module": "src/main/main.ts"
1029
+ }
1030
+ },
1031
+ {
1032
+ "kind": "custom-element-definition",
1033
+ "declaration": {
1034
+ "name": "MainApplication",
1035
+ "module": "src/main/main.ts"
1036
+ }
1037
+ }
1038
+ ]
1039
+ },
1040
+ {
1041
+ "kind": "javascript-module",
1042
+ "path": "src/list/index.ts",
1043
+ "declarations": [],
1044
+ "exports": [
1045
+ {
1046
+ "kind": "js",
1047
+ "name": "*",
1048
+ "declaration": {
1049
+ "name": "*",
1050
+ "package": "./list"
1051
+ }
1052
+ }
1053
+ ]
1054
+ },
1055
+ {
1056
+ "kind": "javascript-module",
1057
+ "path": "src/list/list.styles.ts",
1058
+ "declarations": [
1059
+ {
1060
+ "kind": "variable",
1061
+ "name": "listStyles",
1062
+ "default": "css`\n :host {\n contain: content;\n }\n\n :host,\n fast-router {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n }\n\n .container {\n display: flex;\n flex-direction: column;\n height: inherit;\n width: 100%;\n }\n`"
1063
+ }
1064
+ ],
1065
+ "exports": [
1066
+ {
1067
+ "kind": "js",
1068
+ "name": "listStyles",
1069
+ "declaration": {
1070
+ "name": "listStyles",
1071
+ "module": "src/list/list.styles.ts"
1072
+ }
1073
+ }
1074
+ ]
1075
+ },
1076
+ {
1077
+ "kind": "javascript-module",
1078
+ "path": "src/list/list.template.ts",
1079
+ "declarations": [
1080
+ {
1081
+ "kind": "variable",
1082
+ "name": "listTemplate",
1083
+ "default": "html<List>`\n <div class=\"container\">\n ${when(\n (x) => x.enableFilterBar,\n html<List>`\n <zero-filter-bar\n resource=${(x) => x.resourceName}\n only=${(x) => x.columns?.map((colDef) => colDef.field).filter((field) => !!field)}\n labels=${(x) => x.columns?.map((colDef) => colDef.headerName || '')}\n target=\"datasource\"\n ></zero-filter-bar>\n `,\n )}\n <zero-grid-pro\n ${ref('grid')}\n auto-cell-renderer-by-type\n rowSelection=\"single\"\n rowHeight=\"36\"\n headerHeight=\"36\"\n persist-column-state-key=${(x) => x.persistColumnStateKey}\n ?only-template-col-defs=${(x) => !!x.columns}\n readOnlyEdit=\"true\"\n tooltipMouseTrack=\"true\"\n tooltipShowDelay=\"0\"\n async-add=${(x) => x.asyncAdd}\n async-remove=${(x) => x.asyncRemove}\n async-update=${(x) => x.asyncUpdate}\n enable-cell-flashing=${(x) => x.enableCellFlashing}\n enable-row-flashing=${(x) => x.enableRowFlashing}\n header-case-type=${(x) => x.headerCaseType}\n >\n <grid-pro-genesis-datasource\n ${ref('datasource')}\n :deferredGridOptions=${(x) => x.gridOptions}\n criteria=${(x) => x.datasourceConfig?.criteria}\n fields=${(x) => x.datasourceConfig?.fields}\n is-snapshot=${(x) => x.datasourceConfig?.isSnapshot}\n max-rows=${(x) => x.datasourceConfig?.maxRows}\n max-view=${(x) => x.datasourceConfig?.maxView}\n moving-view=${(x) => x.datasourceConfig?.movingView}\n order-by=${(x) => x.datasourceConfig?.orderBy}\n polling-interval=${(x) => x.datasourceConfig?.pollingInterval}\n resource-name=${(x) => x.resourceName}\n reverse=${(x) => x.datasourceConfig?.reverse}\n ></grid-pro-genesis-datasource>\n ${repeat(\n (x) => x.columns,\n html`\n <grid-pro-column :definition=${(x) => x}></grid-pro-column>\n `,\n )}\n ${repeat(\n (x) => x.actionButtonsConfig,\n html`\n <grid-pro-column :definition=${(x) => x}></grid-pro-column>\n `,\n )}\n </zero-grid-pro>\n </div>\n`"
1084
+ }
1085
+ ],
1086
+ "exports": [
1087
+ {
1088
+ "kind": "js",
1089
+ "name": "listTemplate",
1090
+ "declaration": {
1091
+ "name": "listTemplate",
1092
+ "module": "src/list/list.template.ts"
1093
+ }
1094
+ }
1095
+ ]
1096
+ },
1097
+ {
1098
+ "kind": "javascript-module",
1099
+ "path": "src/list/list.ts",
1100
+ "declarations": [
1101
+ {
1102
+ "kind": "class",
1103
+ "description": "",
1104
+ "name": "List",
1105
+ "members": [
678
1106
  {
679
1107
  "kind": "field",
680
- "name": "enableCellFlashing",
1108
+ "name": "resourceName",
681
1109
  "type": {
682
- "text": "boolean"
1110
+ "text": "string"
683
1111
  },
684
- "default": "false",
685
- "description": "If false, will disable cell flashing for all cells by default, unless otherwise defined in custom colDef",
686
- "privacy": "public"
1112
+ "default": "''"
687
1113
  },
688
1114
  {
689
1115
  "kind": "field",
690
- "name": "enableRowFlashing",
1116
+ "name": "title",
691
1117
  "type": {
692
- "text": "boolean"
1118
+ "text": "string"
693
1119
  },
694
- "default": "false",
695
- "description": "If true, will enable row flashing for all rows for `add` transactions",
696
- "privacy": "public"
1120
+ "default": "''"
697
1121
  },
698
1122
  {
699
1123
  "kind": "field",
700
1124
  "name": "persistColumnStateKey",
701
1125
  "type": {
702
1126
  "text": "string"
703
- },
704
- "description": "This attribute controls whether and how the entity manager stores the state of the columns when the user edits them. Omit this attribute to disable the functionality, set it to a unique value to enable it.",
705
- "privacy": "public"
706
- },
707
- {
708
- "kind": "field",
709
- "name": "gridOptions",
710
- "type": {
711
- "text": "GridOptions"
712
- },
713
- "description": "GridOptions to be passed down from application",
714
- "privacy": "public"
715
- },
716
- {
717
- "kind": "field",
718
- "name": "columns",
719
- "type": {
720
- "text": "ColDef[]"
721
- },
722
- "description": "Array which holds the column definitions.",
723
- "privacy": "public"
724
- },
725
- {
726
- "kind": "field",
727
- "name": "datasourceConfig",
728
- "type": {
729
- "text": "DatasourceConfiguration"
730
- },
731
- "description": "The configuration which is used when interacting with the resource on the backend",
732
- "privacy": "public"
733
- },
734
- {
735
- "kind": "field",
736
- "name": "formUiSchema",
737
- "type": {
738
- "text": "any"
739
1127
  }
740
1128
  },
741
1129
  {
742
1130
  "kind": "field",
743
- "name": "createFormUiSchema",
1131
+ "name": "sizeColumnsToFit",
744
1132
  "type": {
745
- "text": "any"
1133
+ "text": "boolean"
746
1134
  }
747
1135
  },
748
1136
  {
749
1137
  "kind": "field",
750
- "name": "updateFormUiSchema",
1138
+ "name": "enableFilterBar",
751
1139
  "type": {
752
- "text": "any"
1140
+ "text": "boolean"
753
1141
  }
754
1142
  },
755
1143
  {
756
1144
  "kind": "field",
757
- "name": "formRenderers",
1145
+ "name": "asyncAdd",
758
1146
  "type": {
759
- "text": "RendererEntry[]"
1147
+ "text": "boolean"
760
1148
  },
761
- "default": "renderers",
762
- "description": "Array with renderers used by foundation-forms",
763
- "privacy": "public"
1149
+ "default": "false"
764
1150
  },
765
1151
  {
766
1152
  "kind": "field",
767
- "name": "selectedEntity",
1153
+ "name": "asyncRemove",
768
1154
  "type": {
769
- "text": "any"
1155
+ "text": "boolean"
770
1156
  },
771
- "description": "Reference to the currently selected entity from the grid.",
772
- "privacy": "public"
1157
+ "default": "false"
773
1158
  },
774
1159
  {
775
1160
  "kind": "field",
776
- "name": "editedEntity",
1161
+ "name": "asyncUpdate",
777
1162
  "type": {
778
- "text": "any"
1163
+ "text": "boolean"
779
1164
  },
780
- "description": "Disables the form while enabled to stop the user dispatching a large number of duplicate events",
781
- "privacy": "public"
1165
+ "default": "true"
782
1166
  },
783
1167
  {
784
1168
  "kind": "field",
785
- "name": "submitting",
1169
+ "name": "enableCellFlashing",
786
1170
  "type": {
787
1171
  "text": "boolean"
788
- }
1172
+ },
1173
+ "default": "false"
789
1174
  },
790
1175
  {
791
1176
  "kind": "field",
792
- "name": "defaultEntityValues",
1177
+ "name": "enableRowFlashing",
793
1178
  "type": {
794
- "text": "any"
795
- }
1179
+ "text": "boolean"
1180
+ },
1181
+ "default": "false"
796
1182
  },
797
1183
  {
798
1184
  "kind": "field",
799
- "name": "editDialogTitle",
1185
+ "name": "hideEdit",
800
1186
  "type": {
801
- "text": "string"
1187
+ "text": "boolean"
802
1188
  },
803
- "description": "String which contains the text of the popup modal when the user is adding or editing an entity"
1189
+ "default": "false"
804
1190
  },
805
1191
  {
806
1192
  "kind": "field",
807
- "name": "editModalVisible",
1193
+ "name": "hideDelete",
808
1194
  "type": {
809
1195
  "text": "boolean"
810
1196
  },
811
1197
  "default": "false"
812
1198
  },
813
1199
  {
814
- "kind": "method",
815
- "name": "editModalVisibleChanged"
1200
+ "kind": "field",
1201
+ "name": "headerCaseType",
1202
+ "type": {
1203
+ "text": "GridProCaseType"
1204
+ }
816
1205
  },
817
1206
  {
818
1207
  "kind": "field",
819
- "name": "editEntityModal",
1208
+ "name": "grid",
820
1209
  "type": {
821
- "text": "any"
1210
+ "text": "ZeroGridPro"
822
1211
  },
823
1212
  "privacy": "public"
824
1213
  },
825
1214
  {
826
1215
  "kind": "field",
827
- "name": "sizeColumnsToFit",
1216
+ "name": "datasource",
828
1217
  "type": {
829
- "text": "boolean"
830
- }
1218
+ "text": "GridProGenesisDatasource"
1219
+ },
1220
+ "privacy": "public"
831
1221
  },
832
1222
  {
833
1223
  "kind": "field",
834
- "name": "enableFilterBar",
1224
+ "name": "gridOptions",
835
1225
  "type": {
836
- "text": "boolean"
1226
+ "text": "GridOptions"
837
1227
  }
838
1228
  },
839
1229
  {
840
1230
  "kind": "field",
841
- "name": "hideEdit",
1231
+ "name": "columns",
842
1232
  "type": {
843
- "text": "boolean"
844
- },
845
- "default": "false"
1233
+ "text": "ColDef[]"
1234
+ }
846
1235
  },
847
1236
  {
848
1237
  "kind": "field",
849
- "name": "hideDelete",
1238
+ "name": "datasourceConfig",
850
1239
  "type": {
851
- "text": "boolean"
852
- },
853
- "default": "false"
1240
+ "text": "DatasourceConfiguration"
1241
+ }
854
1242
  },
855
1243
  {
856
1244
  "kind": "field",
857
- "name": "enableSearchBar",
1245
+ "name": "actionButtonsConfig",
858
1246
  "type": {
859
- "text": "boolean"
1247
+ "text": "array"
860
1248
  },
861
- "default": "false"
1249
+ "default": "[]"
862
1250
  },
863
1251
  {
864
1252
  "kind": "field",
865
- "name": "headerCaseType",
1253
+ "name": "deleteEvent",
866
1254
  "type": {
867
- "text": "GridProCaseType"
868
- },
869
- "description": "The case type to use for the header names. If not set, the default CONSTANT_CASE will be used.",
870
- "privacy": "public"
1255
+ "text": "string"
1256
+ }
871
1257
  },
872
1258
  {
873
1259
  "kind": "field",
874
- "name": "searchBarConfig",
1260
+ "name": "updateEvent",
875
1261
  "type": {
876
- "text": "AvailableOption[]"
1262
+ "text": "string"
877
1263
  }
878
1264
  },
879
1265
  {
880
1266
  "kind": "field",
881
- "name": "modalPosition",
1267
+ "name": "connect",
882
1268
  "type": {
883
- "text": "'centre' | 'left' | 'right'"
884
- },
885
- "default": "'right'",
886
- "description": "Determines where the modal dialog will appear on screen",
887
- "privacy": "public"
888
- },
889
- {
890
- "kind": "method",
891
- "name": "deepClone",
892
- "return": {
893
- "type": {
894
- "text": "Node"
895
- }
1269
+ "text": "Connect"
896
1270
  },
897
- "description": "Override the deepClone method to ensure that observable attributes are cloned",
898
- "privacy": "public"
899
- },
900
- {
901
- "kind": "method",
902
- "name": "submitEntityChanges",
903
- "privacy": "public",
904
- "parameters": [
905
- {
906
- "name": "e",
907
- "type": {
908
- "text": "CustomEvent"
909
- },
910
- "description": "CustomEvent which contains the payload for the entity to submit to the backend\n\nEmits an event upon error"
911
- }
912
- ],
913
- "description": "Event handler for when the user submits the action for the currently open form, either editing or adding the entity"
1271
+ "privacy": "protected"
914
1272
  },
915
1273
  {
916
1274
  "kind": "method",
917
- "name": "readEntity",
1275
+ "name": "onCellEditingStopped",
918
1276
  "privacy": "private",
919
1277
  "parameters": [
920
1278
  {
921
- "name": "e",
1279
+ "name": "event",
922
1280
  "type": {
923
- "text": "CustomEvent"
1281
+ "text": "CellEditRequestEvent"
924
1282
  }
925
1283
  }
926
1284
  ]
927
1285
  },
928
1286
  {
929
1287
  "kind": "method",
930
- "name": "closeModal",
931
- "privacy": "public"
932
- },
933
- {
934
- "kind": "field",
935
- "name": "headerTempalate",
936
- "readonly": true
937
- },
938
- {
939
- "kind": "method",
940
- "name": "searchChanged",
941
- "privacy": "public",
1288
+ "name": "handleFilterChanged",
1289
+ "privacy": "private",
942
1290
  "parameters": [
943
1291
  {
944
- "name": "event",
945
- "type": {
946
- "text": "CustomEvent<Array<SelectedOption>>"
947
- }
1292
+ "name": "e"
948
1293
  }
949
1294
  ]
950
1295
  },
951
1296
  {
952
1297
  "kind": "method",
953
- "name": "criteriaChanged",
954
- "privacy": "public",
1298
+ "name": "handleFilterCleared",
1299
+ "privacy": "private",
955
1300
  "parameters": [
956
1301
  {
957
- "name": "e",
958
- "type": {
959
- "text": "CustomEvent<string>"
960
- }
1302
+ "name": "e"
961
1303
  }
962
1304
  ]
963
1305
  },
964
1306
  {
965
1307
  "kind": "method",
966
- "name": "submitFailureNotification",
967
- "privacy": "public",
1308
+ "name": "select",
1309
+ "privacy": "private",
968
1310
  "parameters": [
969
1311
  {
970
- "name": "e",
971
- "type": {
972
- "text": "CustomEvent"
973
- }
1312
+ "name": "e"
974
1313
  }
975
1314
  ]
976
1315
  },
977
1316
  {
978
- "kind": "method",
979
- "name": "confirmDelete"
1317
+ "kind": "field",
1318
+ "name": "edit",
1319
+ "privacy": "private"
980
1320
  },
981
1321
  {
982
1322
  "kind": "method",
983
- "name": "showDeleteConfirmation",
984
- "privacy": "private"
1323
+ "name": "delete",
1324
+ "parameters": [
1325
+ {
1326
+ "name": "e"
1327
+ }
1328
+ ]
985
1329
  }
986
1330
  ],
987
1331
  "attributes": [
@@ -990,62 +1334,37 @@
990
1334
  "type": {
991
1335
  "text": "string"
992
1336
  },
993
- "description": "Name of the backend resource which contain the entities to manage",
1337
+ "default": "''",
994
1338
  "fieldName": "resourceName"
995
1339
  },
996
1340
  {
997
- "name": "readEvent",
998
- "type": {
999
- "text": "string"
1000
- },
1001
- "fieldName": "readEvent"
1002
- },
1003
- {
1004
- "type": {
1005
- "text": "boolean"
1006
- },
1007
- "fieldName": "readonly"
1008
- },
1009
- {
1010
- "name": "updateEvent",
1011
- "type": {
1012
- "text": "string"
1013
- },
1014
- "description": "Name of the event handler on the Genesis server which handles updating the entity",
1015
- "fieldName": "updateEvent"
1016
- },
1017
- {
1018
- "name": "deleteEvent",
1341
+ "name": "title",
1019
1342
  "type": {
1020
1343
  "text": "string"
1021
1344
  },
1022
- "description": "Name of the event handler on the Genesis server which handles deleting the entity",
1023
- "fieldName": "deleteEvent"
1345
+ "default": "''",
1346
+ "fieldName": "title"
1024
1347
  },
1025
1348
  {
1026
- "name": "createEvent",
1349
+ "name": "persist-column-state-key",
1027
1350
  "type": {
1028
1351
  "text": "string"
1029
1352
  },
1030
- "description": "Name of the event handler on the Genesis server which handles creating an entity",
1031
- "fieldName": "createEvent"
1353
+ "fieldName": "persistColumnStateKey"
1032
1354
  },
1033
1355
  {
1034
- "name": "title",
1356
+ "name": "size-columns-to-fit",
1035
1357
  "type": {
1036
- "text": "string"
1358
+ "text": "boolean"
1037
1359
  },
1038
- "description": "Title of the grid",
1039
- "fieldName": "title"
1360
+ "fieldName": "sizeColumnsToFit"
1040
1361
  },
1041
1362
  {
1042
- "name": "entityLabel",
1363
+ "name": "enable-filter-bar",
1043
1364
  "type": {
1044
- "text": "string"
1365
+ "text": "boolean"
1045
1366
  },
1046
- "default": "''",
1047
- "description": "Label for the entity which has usages such as being shown in the title of the modal wen editing the entity",
1048
- "fieldName": "entityLabel"
1367
+ "fieldName": "enableFilterBar"
1049
1368
  },
1050
1369
  {
1051
1370
  "name": "async-add",
@@ -1053,7 +1372,6 @@
1053
1372
  "text": "boolean"
1054
1373
  },
1055
1374
  "default": "false",
1056
- "description": "Whether to use the `applyTransactionAsync` function for *add* transactions",
1057
1375
  "fieldName": "asyncAdd"
1058
1376
  },
1059
1377
  {
@@ -1062,7 +1380,6 @@
1062
1380
  "text": "boolean"
1063
1381
  },
1064
1382
  "default": "false",
1065
- "description": "Whether to use the `applyTransactionAsync` function for *remove* transactions",
1066
1383
  "fieldName": "asyncRemove"
1067
1384
  },
1068
1385
  {
@@ -1071,7 +1388,6 @@
1071
1388
  "text": "boolean"
1072
1389
  },
1073
1390
  "default": "true",
1074
- "description": "Whether to use the `applyTransactionAsync` function for *update* transactions",
1075
1391
  "fieldName": "asyncUpdate"
1076
1392
  },
1077
1393
  {
@@ -1080,7 +1396,6 @@
1080
1396
  "text": "boolean"
1081
1397
  },
1082
1398
  "default": "false",
1083
- "description": "If false, will disable cell flashing for all cells by default, unless otherwise defined in custom colDef",
1084
1399
  "fieldName": "enableCellFlashing"
1085
1400
  },
1086
1401
  {
@@ -1089,31 +1404,8 @@
1089
1404
  "text": "boolean"
1090
1405
  },
1091
1406
  "default": "false",
1092
- "description": "If true, will enable row flashing for all rows for `add` transactions",
1093
1407
  "fieldName": "enableRowFlashing"
1094
1408
  },
1095
- {
1096
- "name": "persist-column-state-key",
1097
- "type": {
1098
- "text": "string"
1099
- },
1100
- "description": "This attribute controls whether and how the entity manager stores the state of the columns when the user edits them. Omit this attribute to disable the functionality, set it to a unique value to enable it.",
1101
- "fieldName": "persistColumnStateKey"
1102
- },
1103
- {
1104
- "name": "size-columns-to-fit",
1105
- "type": {
1106
- "text": "boolean"
1107
- },
1108
- "fieldName": "sizeColumnsToFit"
1109
- },
1110
- {
1111
- "name": "enable-filter-bar",
1112
- "type": {
1113
- "text": "boolean"
1114
- },
1115
- "fieldName": "enableFilterBar"
1116
- },
1117
1409
  {
1118
1410
  "name": "hide-edit",
1119
1411
  "type": {
@@ -1130,329 +1422,37 @@
1130
1422
  "default": "false",
1131
1423
  "fieldName": "hideDelete"
1132
1424
  },
1133
- {
1134
- "name": "enable-search-bar",
1135
- "type": {
1136
- "text": "boolean"
1137
- },
1138
- "default": "false",
1139
- "fieldName": "enableSearchBar"
1140
- },
1141
1425
  {
1142
1426
  "name": "header-case-type",
1143
1427
  "type": {
1144
1428
  "text": "GridProCaseType"
1145
1429
  },
1146
- "description": "The case type to use for the header names. If not set, the default CONSTANT_CASE will be used.",
1147
1430
  "fieldName": "headerCaseType"
1148
- },
1149
- {
1150
- "name": "modal-position",
1151
- "type": {
1152
- "text": "'centre' | 'left' | 'right'"
1153
- },
1154
- "default": "'right'",
1155
- "description": "Determines where the modal dialog will appear on screen",
1156
- "fieldName": "modalPosition"
1157
- }
1158
- ],
1159
- "mixins": [
1160
- {
1161
- "name": "LifecycleMixin",
1162
- "package": "@genesislcap/foundation-utils"
1163
- }
1164
- ],
1165
- "superclass": {
1166
- "name": "FASTElement",
1167
- "package": "@microsoft/fast-element"
1168
- },
1169
- "tagName": "entity-management",
1170
- "customElement": true
1171
- }
1172
- ],
1173
- "exports": [
1174
- {
1175
- "kind": "js",
1176
- "name": "EntityManagement",
1177
- "declaration": {
1178
- "name": "EntityManagement",
1179
- "module": "src/entities/entities.ts"
1180
- }
1181
- },
1182
- {
1183
- "kind": "custom-element-definition",
1184
- "name": "entity-management",
1185
- "declaration": {
1186
- "name": "EntityManagement",
1187
- "module": "src/entities/entities.ts"
1188
- }
1189
- }
1190
- ]
1191
- },
1192
- {
1193
- "kind": "javascript-module",
1194
- "path": "src/entities/index.ts",
1195
- "declarations": [],
1196
- "exports": [
1197
- {
1198
- "kind": "js",
1199
- "name": "*",
1200
- "declaration": {
1201
- "name": "*",
1202
- "package": "./entities"
1203
- }
1204
- },
1205
- {
1206
- "kind": "js",
1207
- "name": "*",
1208
- "declaration": {
1209
- "name": "*",
1210
- "package": "./entities.template"
1211
- }
1212
- },
1213
- {
1214
- "kind": "js",
1215
- "name": "*",
1216
- "declaration": {
1217
- "name": "*",
1218
- "package": "./entities.styles"
1219
- }
1220
- }
1221
- ]
1222
- },
1223
- {
1224
- "kind": "javascript-module",
1225
- "path": "src/components/components.ts",
1226
- "declarations": [
1227
- {
1228
- "kind": "function",
1229
- "name": "loadRemotes"
1230
- }
1231
- ],
1232
- "exports": [
1233
- {
1234
- "kind": "js",
1235
- "name": "loadRemotes",
1236
- "declaration": {
1237
- "name": "loadRemotes",
1238
- "module": "src/components/components.ts"
1239
- }
1240
- }
1241
- ]
1242
- },
1243
- {
1244
- "kind": "javascript-module",
1245
- "path": "src/components/index.ts",
1246
- "declarations": [],
1247
- "exports": [
1248
- {
1249
- "kind": "js",
1250
- "name": "*",
1251
- "declaration": {
1252
- "name": "*",
1253
- "package": "./components"
1254
- }
1255
- }
1256
- ]
1257
- },
1258
- {
1259
- "kind": "javascript-module",
1260
- "path": "src/layouts/default.ts",
1261
- "declarations": [
1262
- {
1263
- "kind": "variable",
1264
- "name": "loginLayout",
1265
- "default": "new FASTElementLayout(\n html`\n <div class=\"container\">\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n `,\n baseLayoutCss,\n)"
1266
- },
1267
- {
1268
- "kind": "variable",
1269
- "name": "defaultLayout",
1270
- "default": "new FASTElementLayout(\n html`\n <div class=\"container\">\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n `,\n css`\n ${baseLayoutCss}\n `,\n)"
1271
- }
1272
- ],
1273
- "exports": [
1274
- {
1275
- "kind": "js",
1276
- "name": "loginLayout",
1277
- "declaration": {
1278
- "name": "loginLayout",
1279
- "module": "src/layouts/default.ts"
1280
- }
1281
- },
1282
- {
1283
- "kind": "js",
1284
- "name": "defaultLayout",
1285
- "declaration": {
1286
- "name": "defaultLayout",
1287
- "module": "src/layouts/default.ts"
1288
- }
1289
- }
1290
- ]
1291
- },
1292
- {
1293
- "kind": "javascript-module",
1294
- "path": "src/layouts/index.ts",
1295
- "declarations": [],
1296
- "exports": [
1297
- {
1298
- "kind": "js",
1299
- "name": "*",
1300
- "declaration": {
1301
- "name": "*",
1302
- "package": "./default"
1303
- }
1304
- }
1305
- ]
1306
- },
1307
- {
1308
- "kind": "javascript-module",
1309
- "path": "src/main/index.ts",
1310
- "declarations": [],
1311
- "exports": [
1312
- {
1313
- "kind": "js",
1314
- "name": "*",
1315
- "declaration": {
1316
- "name": "*",
1317
- "package": "./main.template"
1318
- }
1319
- },
1320
- {
1321
- "kind": "js",
1322
- "name": "*",
1323
- "declaration": {
1324
- "name": "*",
1325
- "package": "./main"
1326
- }
1327
- }
1328
- ]
1329
- },
1330
- {
1331
- "kind": "javascript-module",
1332
- "path": "src/main/main.styles.ts",
1333
- "declarations": [
1334
- {
1335
- "kind": "variable",
1336
- "name": "MainStyles",
1337
- "default": "css`\n ${mixinRobotoFont()}\n :host {\n contain: content;\n }\n\n :host,\n zero-design-system-provider,\n .dynamic-template,\n foundation-router {\n display: flex;\n width: 100%;\n height: 100%;\n }\n\n fast-progress {\n --accent-foreground-rest: #654df9;\n\n height: calc(var(--design-unit) * 1px);\n margin: 0;\n width: 100%;\n }\n`"
1338
- }
1339
- ],
1340
- "exports": [
1341
- {
1342
- "kind": "js",
1343
- "name": "MainStyles",
1344
- "declaration": {
1345
- "name": "MainStyles",
1346
- "module": "src/main/main.styles.ts"
1347
- }
1348
- }
1349
- ]
1350
- },
1351
- {
1352
- "kind": "javascript-module",
1353
- "path": "src/main/main.template.ts",
1354
- "declarations": [],
1355
- "exports": []
1356
- },
1357
- {
1358
- "kind": "javascript-module",
1359
- "path": "src/main/main.ts",
1360
- "declarations": [
1361
- {
1362
- "kind": "class",
1363
- "description": "",
1364
- "name": "MainApplication",
1365
- "members": [
1366
- {
1367
- "kind": "field",
1368
- "name": "config",
1369
- "type": {
1370
- "text": "MainRouterConfig"
1371
- }
1372
- },
1373
- {
1374
- "kind": "field",
1375
- "name": "connect",
1376
- "type": {
1377
- "text": "Connect"
1378
- }
1379
- },
1380
- {
1381
- "kind": "field",
1382
- "name": "session",
1383
- "type": {
1384
- "text": "Session"
1385
- }
1386
- },
1387
- {
1388
- "kind": "field",
1389
- "name": "container",
1390
- "type": {
1391
- "text": "Container"
1392
- }
1393
- },
1394
- {
1395
- "kind": "field",
1396
- "name": "provider",
1397
- "type": {
1398
- "text": "any"
1399
- }
1400
- },
1401
- {
1402
- "kind": "field",
1403
- "name": "ready",
1404
- "type": {
1405
- "text": "boolean"
1406
- },
1407
- "default": "false"
1408
- },
1409
- {
1410
- "kind": "field",
1411
- "name": "data",
1412
- "type": {
1413
- "text": "any"
1414
- },
1415
- "default": "null"
1416
- },
1417
- {
1418
- "kind": "method",
1419
- "name": "onLuminanceToggle"
1420
- },
1421
- {
1422
- "kind": "method",
1423
- "name": "loadRemotes"
1424
- },
1425
- {
1426
- "kind": "method",
1427
- "name": "selectTemplate"
1428
- },
1429
- {
1430
- "kind": "method",
1431
- "name": "registerDIDependencies",
1432
- "privacy": "private"
1433
1431
  }
1434
1432
  ],
1435
1433
  "superclass": {
1436
1434
  "name": "FASTElement",
1437
1435
  "package": "@microsoft/fast-element"
1438
1436
  },
1437
+ "tagName": "entity-list",
1439
1438
  "customElement": true
1440
1439
  }
1441
1440
  ],
1442
1441
  "exports": [
1443
1442
  {
1444
1443
  "kind": "js",
1445
- "name": "MainApplication",
1444
+ "name": "List",
1446
1445
  "declaration": {
1447
- "name": "MainApplication",
1448
- "module": "src/main/main.ts"
1446
+ "name": "List",
1447
+ "module": "src/list/list.ts"
1449
1448
  }
1450
1449
  },
1451
1450
  {
1452
1451
  "kind": "custom-element-definition",
1452
+ "name": "entity-list",
1453
1453
  "declaration": {
1454
- "name": "MainApplication",
1455
- "module": "src/main/main.ts"
1454
+ "name": "List",
1455
+ "module": "src/list/list.ts"
1456
1456
  }
1457
1457
  }
1458
1458
  ]