@mediusinc/mng-commons 0.5.0 → 0.7.0

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 (92) hide show
  1. package/assets/i18n/en.json +2 -2
  2. package/assets/i18n/sl.json +2 -2
  3. package/esm2020/lib/api/models/builders/query-param.builder.mjs +7 -1
  4. package/esm2020/lib/api/services/crud-api.abstract.service.mjs +2 -2
  5. package/esm2020/lib/components/action/action.component.mjs +3 -3
  6. package/esm2020/lib/components/action/editor/action-editor.component.mjs +5 -5
  7. package/esm2020/lib/components/action/models/action-execution.model.mjs +3 -2
  8. package/esm2020/lib/components/action/route/action-route.component.mjs +3 -3
  9. package/esm2020/lib/components/form/autocomplete/autocomplete.component.mjs +3 -3
  10. package/esm2020/lib/components/form/dropdown/dropdown.component.mjs +3 -3
  11. package/esm2020/lib/components/form/editor/form-editor.component.mjs +3 -3
  12. package/esm2020/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +3 -3
  13. package/esm2020/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +3 -3
  14. package/esm2020/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +5 -5
  15. package/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +3 -3
  16. package/esm2020/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.mjs +3 -3
  17. package/esm2020/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +3 -3
  18. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +27 -36
  19. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +3 -3
  20. package/esm2020/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +3 -3
  21. package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
  22. package/esm2020/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.mjs +3 -3
  23. package/esm2020/lib/components/layout/breadcrumb.component.mjs +3 -3
  24. package/esm2020/lib/components/layout/footer.component.mjs +3 -3
  25. package/esm2020/lib/components/layout/main-layout.component.mjs +3 -3
  26. package/esm2020/lib/components/layout/menu-item.component.mjs +3 -3
  27. package/esm2020/lib/components/layout/menu.component.mjs +3 -3
  28. package/esm2020/lib/components/layout/services/main-layout.component.service.mjs +3 -3
  29. package/esm2020/lib/components/layout/topbar.component.mjs +3 -3
  30. package/esm2020/lib/components/tableview/route/tableview-route.abstract.component.mjs +3 -3
  31. package/esm2020/lib/components/tableview/route/tableview-route.component.mjs +3 -3
  32. package/esm2020/lib/components/tableview/table/column-filter/column-filter.component.mjs +3 -3
  33. package/esm2020/lib/components/tableview/table/column-value/column-value.component.mjs +3 -3
  34. package/esm2020/lib/components/tableview/table/table.component.mjs +94 -26
  35. package/esm2020/lib/components/tableview/tableview.component.mjs +5 -13
  36. package/esm2020/lib/config/formly.config.mjs +5 -5
  37. package/esm2020/lib/data-providers/editor.data-provider.mjs +1 -1
  38. package/esm2020/lib/descriptors/action.descriptor.mjs +6 -15
  39. package/esm2020/lib/descriptors/column.descriptor.mjs +32 -1
  40. package/esm2020/lib/descriptors/editor.descriptor.mjs +3 -3
  41. package/esm2020/lib/descriptors/field-validation.descriptor.mjs +21 -0
  42. package/esm2020/lib/descriptors/field.descriptor.mjs +14 -14
  43. package/esm2020/lib/descriptors/index.mjs +2 -2
  44. package/esm2020/lib/descriptors/table.descriptor.mjs +72 -9
  45. package/esm2020/lib/descriptors/tableview.descriptor.mjs +4 -4
  46. package/esm2020/lib/directives/component.directive.mjs +3 -3
  47. package/esm2020/lib/directives/template.directive.mjs +3 -3
  48. package/esm2020/lib/mng-commons.module.mjs +4 -4
  49. package/esm2020/lib/pipes/boolean.pipe.mjs +3 -3
  50. package/esm2020/lib/pipes/enum.pipe.mjs +3 -3
  51. package/esm2020/lib/pipes/i18n-property.pipe.mjs +3 -3
  52. package/esm2020/lib/pipes/json-path.pipe.mjs +3 -3
  53. package/esm2020/lib/pipes/link-formatter.pipe.mjs +3 -3
  54. package/esm2020/lib/services/action-executor.service.mjs +6 -6
  55. package/esm2020/lib/services/commons.service.mjs +3 -3
  56. package/esm2020/lib/services/internal/commons-init.service.mjs +3 -3
  57. package/esm2020/lib/services/navigation.service.mjs +3 -3
  58. package/esm2020/lib/services/view-container.component.service.mjs +3 -3
  59. package/esm2020/lib/types/type.model.mjs +1 -1
  60. package/esm2020/lib/utils/action-data-provider.util.mjs +116 -0
  61. package/esm2020/lib/utils/editor-formly.util.mjs +31 -11
  62. package/esm2020/lib/utils/index.mjs +2 -1
  63. package/esm2020/lib/utils/styles.util.mjs +41 -0
  64. package/fesm2015/mediusinc-mng-commons.mjs +579 -260
  65. package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
  66. package/fesm2020/mediusinc-mng-commons.mjs +567 -251
  67. package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
  68. package/lib/api/models/builders/query-param.builder.d.ts +1 -0
  69. package/lib/api/services/crud-api.abstract.service.d.ts +8 -2
  70. package/lib/components/action/models/action-execution.model.d.ts +5 -3
  71. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +1 -4
  72. package/lib/components/tableview/table/table.component.d.ts +21 -11
  73. package/lib/components/tableview/tableview.component.d.ts +1 -3
  74. package/lib/data-providers/editor.data-provider.d.ts +4 -4
  75. package/lib/descriptors/action.descriptor.d.ts +3 -3
  76. package/lib/descriptors/column.descriptor.d.ts +10 -0
  77. package/lib/descriptors/editor.descriptor.d.ts +2 -3
  78. package/lib/descriptors/field-validation.descriptor.d.ts +18 -0
  79. package/lib/descriptors/field.descriptor.d.ts +8 -9
  80. package/lib/descriptors/index.d.ts +1 -1
  81. package/lib/descriptors/table.descriptor.d.ts +27 -5
  82. package/lib/descriptors/tableview.descriptor.d.ts +2 -2
  83. package/lib/types/type.model.d.ts +7 -0
  84. package/lib/utils/action-data-provider.util.d.ts +17 -0
  85. package/lib/utils/editor-formly.util.d.ts +2 -1
  86. package/lib/utils/index.d.ts +1 -0
  87. package/lib/utils/styles.util.d.ts +14 -0
  88. package/package.json +6 -6
  89. package/scss/mng-overrides/_theme_datatable.scss +21 -0
  90. package/scss/mng-overrides/_theme_tableview.scss +0 -43
  91. package/esm2020/lib/descriptors/field.validator.mjs +0 -21
  92. package/lib/descriptors/field.validator.d.ts +0 -18
@@ -65,20 +65,16 @@ export class EditorFormlyUtil {
65
65
  // wrap in group to be able to use flex grid
66
66
  const wrapperGroup = {
67
67
  fieldGroupClassName: 'p-fluid formgrid grid',
68
- fieldGroup: fields,
69
- validators: {}
68
+ fieldGroup: fields
70
69
  };
71
- for (const validator of descriptor.validators) {
72
- wrapperGroup.validators[validator.name] = { expression: validator.expression, message: validator.message };
73
- }
70
+ EditorFormlyUtil.addValidationsToFormlyField(wrapperGroup, descriptor.validations);
74
71
  return [wrapperGroup];
75
72
  }
76
73
  static createFormlyField(descriptor) {
77
74
  const field = {
78
75
  key: descriptor.property,
79
76
  expressionProperties: {},
80
- templateOptions: {},
81
- validators: {}
77
+ templateOptions: {}
82
78
  };
83
79
  let className = descriptor.className;
84
80
  if (!className) {
@@ -173,10 +169,34 @@ export class EditorFormlyUtil {
173
169
  if (typeof descriptor.defaultValue !== 'undefined') {
174
170
  field.defaultValue = descriptor.defaultValue;
175
171
  }
176
- for (const validator of descriptor.validators) {
177
- field.validators[validator.name] = { expression: validator.expression, message: validator.message };
178
- }
172
+ EditorFormlyUtil.addValidationsToFormlyField(field, descriptor.validations);
179
173
  return field;
180
174
  }
175
+ static addValidationsToFormlyField(config, validations) {
176
+ if (!config.validators) {
177
+ config.validators = {};
178
+ }
179
+ for (const validation of validations) {
180
+ if (typeof validation.validator === 'function') {
181
+ config.validators[validation.name] = {
182
+ expression: (control, field, options) => {
183
+ const validatorRes = validation.validator(control, field, options);
184
+ // formly validator only excepts true/false for validation
185
+ // map possible angular validator result to true/false
186
+ return typeof validatorRes === 'boolean' ? validatorRes : validatorRes === null;
187
+ }
188
+ };
189
+ if (typeof validation.message === 'function') {
190
+ config.validators[validation.name].message = validation.message;
191
+ }
192
+ }
193
+ else {
194
+ if (!Array.isArray(config.validators.validation)) {
195
+ config.validators.validation = [];
196
+ }
197
+ config.validators.validation.push(validation.name);
198
+ }
199
+ }
200
+ }
181
201
  }
182
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWZvcm1seS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9lZGl0b3ItZm9ybWx5LnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUlILG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIseUJBQXlCLEVBQ3pCLHlCQUF5QixFQUN6QiwrQkFBK0IsRUFFbEMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixNQUFNLE9BQU8sZ0JBQWdCO0lBQ2xCLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxVQUFpQztRQUM1RSxNQUFNLE1BQU0sR0FBd0IsRUFBRSxDQUFDO1FBRXZDLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFO1lBQzVELGdCQUFnQjtZQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ3JGO2FBQU07WUFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDekU7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRU0sTUFBTSxDQUFDLG1CQUFtQixDQUFDLFNBQXlDO1FBQ3ZFLE1BQU0sU0FBUyxHQUFzQjtZQUNqQyxJQUFJLEVBQUUsTUFBTTtZQUNaLFVBQVUsRUFBRSxFQUFFO1NBQ2pCLENBQUM7UUFDRixLQUFLLE1BQU0sR0FBRyxJQUFJLFNBQVMsRUFBRTtZQUN6QixNQUFNLFFBQVEsR0FBc0I7Z0JBQ2hDLEVBQUUsRUFBRSxHQUFHLENBQUMsSUFBSTtnQkFDWixlQUFlLEVBQUUsRUFBRTtn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LFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUMsT0FBTyxFQUFDLENBQUM7U0FDckc7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Zvcm1seUZpZWxkQ29uZmlnfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcblxuaW1wb3J0IHtcbiAgICBBRmllbGREZXNjcmlwdG9yLFxuICAgIEVkaXRvckRlc2NyaXB0b3IsXG4gICAgRmllbGRHcm91cERlc2NyaXB0b3IsXG4gICAgRmllbGRJbnB1dERlc2NyaXB0b3IsXG4gICAgRmllbGRMb29rdXBEZXNjcmlwdG9yLFxuICAgIEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3IsXG4gICAgRmllbGRNYW55RWRpdG9yRGVzY3JpcHRvcixcbiAgICBGaWVsZE1hbnlUb01hbnlFZGl0b3JEZXNjcmlwdG9yLFxuICAgIEZpZWxkVGFiR3JvdXBEZXNjcmlwdG9yXG59IGZyb20gJy4uL2Rlc2NyaXB0b3JzJztcblxuZXhwb3J0IGNsYXNzIEVkaXRvckZvcm1seVV0aWwge1xuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRm9ybWx5Q29uZmlnRnJvbURlc2NyaXB0b3IoZGVzY3JpcHRvcjogRWRpdG9yRGVzY3JpcHRvcjxhbnk+KTogRm9ybWx5RmllbGRDb25maWdbXSB7XG4gICAgICAgIGNvbnN0IGZpZWxkczogRm9ybWx5RmllbGRDb25maWdbXSA9IFtdO1xuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLnRhYnMubGVuZ3RoID09PSAxICYmIGRlc2NyaXB0b3IudGFic1swXS5kZWZhdWx0KSB7XG4gICAgICAgICAgICAvLyBkb250IHVzZSB0YWJzXG4gICAgICAgICAgICBmaWVsZHMucHVzaCguLi5FZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seUdyb3VwVHlwZShkZXNjcmlwdG9yLnRhYnNbMF0uZmllbGRzKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWVsZHMucHVzaCguLi5FZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seVRhYlR5cGUoZGVzY3JpcHRvci50YWJzKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmllbGRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRm9ybWx5VGFiVHlwZSh0YWJHcm91cHM6IEZpZWxkVGFiR3JvdXBEZXNjcmlwdG9yPGFueT5bXSk6IEZvcm1seUZpZWxkQ29uZmlnW10ge1xuICAgICAgICBjb25zdCB0YWJzRmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnID0ge1xuICAgICAgICAgICAgdHlwZTogJ3RhYnMnLFxuICAgICAgICAgICAgZmllbGRHcm91cDogW11cbiAgICAgICAgfTtcbiAgICAgICAgZm9yIChjb25zdCB0YWIgb2YgdGFiR3JvdXBzKSB7XG4gICAgICAgICAgICBjb25zdCB0YWJGaWVsZDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgaWQ6IHRhYi5uYW1lLFxuICAgICAgICAgICAgICAgIHRlbXBsYXRlT3B0aW9uczoge30sXG4gICAgICAgICAgICAgICAgZmllbGRHcm91cDogW11cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBpZiAodGFiLnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgdGFiRmllbGQudGVtcGxhdGVPcHRpb25zIS5sYWJlbCA9IHRhYi50aXRsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRhYkZpZWxkLmZpZWxkR3JvdXAhLnB1c2goLi4uRWRpdG9yRm9ybWx5VXRpbC5jcmVhdGVGb3JtbHlHcm91cFR5cGUodGFiLmZpZWxkcykpO1xuICAgICAgICAgICAgdGFic0ZpZWxkLmZpZWxkR3JvdXAhLnB1c2godGFiRmllbGQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbdGFic0ZpZWxkXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZUZvcm1seUdyb3VwVHlwZShncm91cHM6IEZpZWxkR3JvdXBEZXNjcmlwdG9yPGFueT5bXSk6IEZvcm1seUZpZWxkQ29uZmlnW10ge1xuICAgICAgICBpZiAoZ3JvdXBzLmxlbmd0aCA9PT0gMSAmJiBncm91cHNbMF0uZGVmYXVsdCkge1xuICAgICAgICAgICAgLy8gZG9udCB1c2UgZmllbGRzZXQsIGp1c3QgY3JlYXRlIGZpZWxkc1xuICAgICAgICAgICAgcmV0dXJuIEVkaXRvckZvcm1seVV0aWwuY3JlYXRlRm9ybWx5RmllbGRzKGdyb3Vwc1swXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBncm91cHNGaWVsZDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2ZpZWxkc2V0JyxcbiAgICAgICAgICAgICAgICBmaWVsZEdyb3VwOiBbXVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgZ3JvdXBzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZ3JvdXBGaWVsZDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBncm91cC5uYW1lLFxuICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0b3I6IGdyb3VwXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkR3JvdXA6IFtdXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAoZ3JvdXAudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JvdXBGaWVsZC50ZW1wbGF0ZU9wdGlvbnMhLmxhYmVsID0gZ3JvdXAudGl0bGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGdyb3VwRmllbGQuZmllbGRHcm91cCEucHVzaCguLi5FZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seUZpZWxkcyhncm91cCkpO1xuICAgICAgICAgICAgICAgIGdyb3Vwc0ZpZWxkLmZpZWxkR3JvdXAhLnB1c2goZ3JvdXBGaWVsZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gW2dyb3Vwc0ZpZWxkXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRm9ybWx5RmllbGRzKGRlc2NyaXB0b3I6IEZpZWxkR3JvdXBEZXNjcmlwdG9yPGFueT4pOiBGb3JtbHlGaWVsZENvbmZpZ1tdIHtcbiAgICAgICAgY29uc3QgZmllbGRzOiBGb3JtbHlGaWVsZENvbmZpZ1tdID0gW107XG4gICAgICAgIGZvciAoY29uc3QgZGVzY3JpcHRvckZpZWxkIG9mIGRlc2NyaXB0b3IuZmllbGRzKSB7XG4gICAgICAgICAgICBmaWVsZHMucHVzaChFZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seUZpZWxkKGRlc2NyaXB0b3JGaWVsZCkpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHdyYXAgaW4gZ3JvdXAgdG8gYmUgYWJsZSB0byB1c2UgZmxleCBncmlkXG4gICAgICAgIGNvbnN0IHdyYXBwZXJHcm91cDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICBmaWVsZEdyb3VwQ2xhc3NOYW1lOiAncC1mbHVpZCBmb3JtZ3JpZCBncmlkJyxcbiAgICAgICAgICAgIGZpZWxkR3JvdXA6IGZpZWxkcyxcbiAgICAgICAgICAgIHZhbGlkYXRvcnM6IHt9XG4gICAgICAgIH07XG5cbiAgICAgICAgZm9yIChjb25zdCB2YWxpZGF0b3Igb2YgZGVzY3JpcHRvci52YWxpZGF0b3JzKSB7XG4gICAgICAgICAgICB3cmFwcGVyR3JvdXAudmFsaWRhdG9yc1t2YWxpZGF0b3IubmFtZV0gPSB7ZXhwcmVzc2lvbjogdmFsaWRhdG9yLmV4cHJlc3Npb24sIG1lc3NhZ2U6IHZhbGlkYXRvci5tZXNzYWdlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbd3JhcHBlckdyb3VwXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZUZvcm1seUZpZWxkKGRlc2NyaXB0b3I6IEFGaWVsZERlc2NyaXB0b3I8YW55LCBhbnk+KTogRm9ybWx5RmllbGRDb25maWcge1xuICAgICAgICBjb25zdCBmaWVsZDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICBrZXk6IGRlc2NyaXB0b3IucHJvcGVydHksXG4gICAgICAgICAgICBleHByZXNzaW9uUHJvcGVydGllczoge30sXG4gICAgICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHt9LFxuICAgICAgICAgICAgdmFsaWRhdG9yczoge31cbiAgICAgICAgfTtcblxuICAgICAgICBsZXQgY2xhc3NOYW1lID0gZGVzY3JpcHRvci5jbGFzc05hbWU7XG4gICAgICAgIGlmICghY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICAvLyBhc3NpZ24gZGVmYXVsdCBmaWVsZCB3aWR0aCB0aHJvdWdoIGVudGlyZSByb3dcbiAgICAgICAgICAgIGNsYXNzTmFtZSA9ICdjb2wtMTInO1xuICAgICAgICB9XG4gICAgICAgIGZpZWxkLmNsYXNzTmFtZSA9IGNsYXNzTmFtZTtcblxuICAgICAgICBmaWVsZC50ZW1wbGF0ZU9wdGlvbnMhWydkZXNjcmlwdG9yJ10gPSBkZXNjcmlwdG9yO1xuICAgICAgICBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkSW5wdXREZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGRlc2NyaXB0b3IuZmllbGRUeXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5IaWRkZW46XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dERlc2NyaXB0b3IuVHlwZUVudW0uTGFiZWw6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnbGFiZWwnO1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgZmllbGQua2V5O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXREZXNjcmlwdG9yLlR5cGVFbnVtLlRleHRhcmVhOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ3RleHRhcmVhJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5OdW1iZXI6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnbnVtYmVyJztcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudGVtcGxhdGVPcHRpb25zIS5taW4gPSBkZXNjcmlwdG9yLm51bWJlck1pbjtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudGVtcGxhdGVPcHRpb25zIS5tYXggPSBkZXNjcmlwdG9yLm51bWJlck1heDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5Td2l0Y2g6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnc3dpdGNoJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5SYWRpbzpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdyYWRpbyc7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dERlc2NyaXB0b3IuVHlwZUVudW0uRGF0ZXBpY2tlcjpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdkYXRlcGlja2VyJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5NYXNrOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ21hc2snO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXREZXNjcmlwdG9yLlR5cGVFbnVtLkN1c3RvbTpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9IGRlc2NyaXB0b3IuY3VzdG9tQ29tcG9uZW50TmFtZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdpbnB1dCc7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucyEubWluTGVuZ3RoID0gZGVzY3JpcHRvci5taW5MZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucyEubWF4TGVuZ3RoID0gZGVzY3JpcHRvci5tYXhMZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucyEucGF0dGVybiA9IGRlc2NyaXB0b3IucGF0dGVybjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnZW51bSc7XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkTG9va3VwRGVzY3JpcHRvcikge1xuICAgICAgICAgICAgc3dpdGNoIChkZXNjcmlwdG9yLmxvb2t1cFR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkTG9va3VwRGVzY3JpcHRvci5Mb29rdXBUeXBlRW51bS5BdXRvY29tcGxldGU6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnYXV0b2NvbXBsZXRlJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZExvb2t1cERlc2NyaXB0b3IuTG9va3VwVHlwZUVudW0uRGlhbG9nOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ2RpYWxvZyc7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRMb29rdXBEZXNjcmlwdG9yLkxvb2t1cFR5cGVFbnVtLkRyb3Bkb3duOlxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnZHJvcGRvd24nO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChkZXNjcmlwdG9yIGluc3RhbmNlb2YgRmllbGRNYW55VG9NYW55RWRpdG9yRGVzY3JpcHRvcikge1xuICAgICAgICAgICAgZmllbGQudHlwZSA9ICd0YWJsZS1kaWFsb2ctbXVsdGlzZWxlY3QnO1xuICAgICAgICB9IGVsc2UgaWYgKGRlc2NyaXB0b3IgaW5zdGFuY2VvZiBGaWVsZE1hbnlFZGl0b3JEZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBmaWVsZC50eXBlID0gJ3RhYmxlLWRpYWxvZy1mb3JtJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLmxhYmVsKSB7XG4gICAgICAgICAgICBmaWVsZC50ZW1wbGF0ZU9wdGlvbnMhLmxhYmVsID0gZGVzY3JpcHRvci5sYWJlbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLnJlcXVpcmVkRXhwcmVzc2lvbikge1xuICAgICAgICAgICAgZmllbGQuZXhwcmVzc2lvblByb3BlcnRpZXMhWyd0ZW1wbGF0ZU9wdGlvbnMucmVxdWlyZWQnXSA9IGRlc2NyaXB0b3IucmVxdWlyZWRFeHByZXNzaW9uO1xuICAgICAgICB9XG4gICAgICAgIGlmIChkZXNjcmlwdG9yLnJlcXVpcmVkKSB7XG4gICAgICAgICAgICBmaWVsZC50ZW1wbGF0ZU9wdGlvbnMhLnJlcXVpcmVkID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLmhpZGRlbkV4cHJlc3Npb24pIHtcbiAgICAgICAgICAgIGZpZWxkLmV4cHJlc3Npb25Qcm9wZXJ0aWVzIVsnaGlkZSddID0gZGVzY3JpcHRvci5oaWRkZW5FeHByZXNzaW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRlc2NyaXB0b3IuZGlzYWJsZWRFeHByZXNzaW9uKSB7XG4gICAgICAgICAgICBmaWVsZC5leHByZXNzaW9uUHJvcGVydGllcyFbJ3RlbXBsYXRlT3B0aW9ucy5kaXNhYmxlZCddID0gZGVzY3JpcHRvci5kaXNhYmxlZEV4cHJlc3Npb247XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvci5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZmllbGQudGVtcGxhdGVPcHRpb25zIS5kaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWVsZC5leHByZXNzaW9uUHJvcGVydGllcyFbJ3RlbXBsYXRlT3B0aW9ucy5kaXNhYmxlZCddID0gJ2Zvcm1TdGF0ZS5kaXNhYmxlZCc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIGRlc2NyaXB0b3IuZGVmYXVsdFZhbHVlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgZmllbGQuZGVmYXVsdFZhbHVlID0gZGVzY3JpcHRvci5kZWZhdWx0VmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IHZhbGlkYXRvciBvZiBkZXNjcmlwdG9yLnZhbGlkYXRvcnMpIHtcbiAgICAgICAgICAgIGZpZWxkLnZhbGlkYXRvcnNbdmFsaWRhdG9yLm5hbWVdID0ge2V4cHJlc3Npb246IHZhbGlkYXRvci5leHByZXNzaW9uLCBtZXNzYWdlOiB2YWxpZGF0b3IubWVzc2FnZX07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgfVxufVxuIl19
202
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWZvcm1seS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9lZGl0b3ItZm9ybWx5LnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUlILG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIseUJBQXlCLEVBQ3pCLHlCQUF5QixFQUN6QiwrQkFBK0IsRUFHbEMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixNQUFNLE9BQU8sZ0JBQWdCO0lBQ2xCLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxVQUFpQztRQUM1RSxNQUFNLE1BQU0sR0FBd0IsRUFBRSxDQUFDO1FBRXZDLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFO1lBQzVELGdCQUFnQjtZQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ3JGO2FBQU07WUFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDekU7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRU0sTUFBTSxDQUFDLG1CQUFtQixDQUFDLFNBQXlDO1FBQ3ZFLE1BQU0sU0FBUyxHQUFzQjtZQUNqQyxJQUFJLEVBQUUsTUFBTTtZQUNaLFVBQVUsRUFBRSxFQUFFO1NBQ2pCLENBQUM7UUFDRixLQUFLLE1BQU0sR0FBRyxJQUFJLFNBQVMsRUFBRTtZQUN6QixNQUFNLFFBQVEsR0FBc0I7Z0JBQ2hDLEVBQUUsRUFBRSxHQUFHLENBQUMsSUFBSTtnQkFDWixlQUFlLEVBQUUsRUFBRTtn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QUVELEtBQUssTUFBTSxVQUFVLElBQUksV0FBVyxFQUFFO1lBQ2xDLElBQUksT0FBTyxVQUFVLENBQUMsU0FBUyxLQUFLLFVBQVUsRUFBRTtnQkFDNUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ2pDLFVBQVUsRUFBRSxDQUNSLE9BQXdCLEVBQ3hCLEtBQXdCLEVBQ3hCLE9BRUMsRUFDSCxFQUFFO3dCQUNBLE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxTQUFVLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQzt3QkFDcEUsMERBQTBEO3dCQUMxRCxzREFBc0Q7d0JBQ3RELE9BQU8sT0FBTyxZQUFZLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUM7b0JBQ3BGLENBQUM7aUJBQ0osQ0FBQztnQkFDRixJQUFJLE9BQU8sVUFBVSxDQUFDLE9BQU8sS0FBSyxVQUFVLEVBQUU7b0JBQzFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO2lCQUNuRTthQUNKO2lCQUFNO2dCQUNILElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUU7b0JBQzlDLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztpQkFDckM7Z0JBQ0QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN0RDtTQUNKO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBYnN0cmFjdENvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtGb3JtbHlGaWVsZENvbmZpZ30gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5cbmltcG9ydCB7XG4gICAgQUZpZWxkRGVzY3JpcHRvcixcbiAgICBFZGl0b3JEZXNjcmlwdG9yLFxuICAgIEZpZWxkR3JvdXBEZXNjcmlwdG9yLFxuICAgIEZpZWxkSW5wdXREZXNjcmlwdG9yLFxuICAgIEZpZWxkTG9va3VwRGVzY3JpcHRvcixcbiAgICBGaWVsZExvb2t1cEVudW1EZXNjcmlwdG9yLFxuICAgIEZpZWxkTWFueUVkaXRvckRlc2NyaXB0b3IsXG4gICAgRmllbGRNYW55VG9NYW55RWRpdG9yRGVzY3JpcHRvcixcbiAgICBGaWVsZFRhYkdyb3VwRGVzY3JpcHRvcixcbiAgICBGaWVsZFZhbGlkYXRpb25EZXNjcmlwdG9yXG59IGZyb20gJy4uL2Rlc2NyaXB0b3JzJztcblxuZXhwb3J0IGNsYXNzIEVkaXRvckZvcm1seVV0aWwge1xuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRm9ybWx5Q29uZmlnRnJvbURlc2NyaXB0b3IoZGVzY3JpcHRvcjogRWRpdG9yRGVzY3JpcHRvcjxhbnk+KTogRm9ybWx5RmllbGRDb25maWdbXSB7XG4gICAgICAgIGNvbnN0IGZpZWxkczogRm9ybWx5RmllbGRDb25maWdbXSA9IFtdO1xuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLnRhYnMubGVuZ3RoID09PSAxICYmIGRlc2NyaXB0b3IudGFic1swXS5kZWZhdWx0KSB7XG4gICAgICAgICAgICAvLyBkb250IHVzZSB0YWJzXG4gICAgICAgICAgICBmaWVsZHMucHVzaCguLi5FZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seUdyb3VwVHlwZShkZXNjcmlwdG9yLnRhYnNbMF0uZmllbGRzKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWVsZHMucHVzaCguLi5FZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seVRhYlR5cGUoZGVzY3JpcHRvci50YWJzKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmllbGRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRm9ybWx5VGFiVHlwZSh0YWJHcm91cHM6IEZpZWxkVGFiR3JvdXBEZXNjcmlwdG9yPGFueT5bXSk6IEZvcm1seUZpZWxkQ29uZmlnW10ge1xuICAgICAgICBjb25zdCB0YWJzRmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnID0ge1xuICAgICAgICAgICAgdHlwZTogJ3RhYnMnLFxuICAgICAgICAgICAgZmllbGRHcm91cDogW11cbiAgICAgICAgfTtcbiAgICAgICAgZm9yIChjb25zdCB0YWIgb2YgdGFiR3JvdXBzKSB7XG4gICAgICAgICAgICBjb25zdCB0YWJGaWVsZDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgaWQ6IHRhYi5uYW1lLFxuICAgICAgICAgICAgICAgIHRlbXBsYXRlT3B0aW9uczoge30sXG4gICAgICAgICAgICAgICAgZmllbGRHcm91cDogW11cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBpZiAodGFiLnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgdGFiRmllbGQudGVtcGxhdGVPcHRpb25zIS5sYWJlbCA9IHRhYi50aXRsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRhYkZpZWxkLmZpZWxkR3JvdXAhLnB1c2goLi4uRWRpdG9yRm9ybWx5VXRpbC5jcmVhdGVGb3JtbHlHcm91cFR5cGUodGFiLmZpZWxkcykpO1xuICAgICAgICAgICAgdGFic0ZpZWxkLmZpZWxkR3JvdXAhLnB1c2godGFiRmllbGQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbdGFic0ZpZWxkXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZUZvcm1seUdyb3VwVHlwZShncm91cHM6IEZpZWxkR3JvdXBEZXNjcmlwdG9yPGFueT5bXSk6IEZvcm1seUZpZWxkQ29uZmlnW10ge1xuICAgICAgICBpZiAoZ3JvdXBzLmxlbmd0aCA9PT0gMSAmJiBncm91cHNbMF0uZGVmYXVsdCkge1xuICAgICAgICAgICAgLy8gZG9udCB1c2UgZmllbGRzZXQsIGp1c3QgY3JlYXRlIGZpZWxkc1xuICAgICAgICAgICAgcmV0dXJuIEVkaXRvckZvcm1seVV0aWwuY3JlYXRlRm9ybWx5RmllbGRzKGdyb3Vwc1swXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBncm91cHNGaWVsZDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2ZpZWxkc2V0JyxcbiAgICAgICAgICAgICAgICBmaWVsZEdyb3VwOiBbXVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgZ3JvdXBzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZ3JvdXBGaWVsZDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBncm91cC5uYW1lLFxuICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0b3I6IGdyb3VwXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkR3JvdXA6IFtdXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAoZ3JvdXAudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JvdXBGaWVsZC50ZW1wbGF0ZU9wdGlvbnMhLmxhYmVsID0gZ3JvdXAudGl0bGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGdyb3VwRmllbGQuZmllbGRHcm91cCEucHVzaCguLi5FZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seUZpZWxkcyhncm91cCkpO1xuICAgICAgICAgICAgICAgIGdyb3Vwc0ZpZWxkLmZpZWxkR3JvdXAhLnB1c2goZ3JvdXBGaWVsZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gW2dyb3Vwc0ZpZWxkXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRm9ybWx5RmllbGRzKGRlc2NyaXB0b3I6IEZpZWxkR3JvdXBEZXNjcmlwdG9yPGFueT4pOiBGb3JtbHlGaWVsZENvbmZpZ1tdIHtcbiAgICAgICAgY29uc3QgZmllbGRzOiBGb3JtbHlGaWVsZENvbmZpZ1tdID0gW107XG4gICAgICAgIGZvciAoY29uc3QgZGVzY3JpcHRvckZpZWxkIG9mIGRlc2NyaXB0b3IuZmllbGRzKSB7XG4gICAgICAgICAgICBmaWVsZHMucHVzaChFZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seUZpZWxkKGRlc2NyaXB0b3JGaWVsZCkpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHdyYXAgaW4gZ3JvdXAgdG8gYmUgYWJsZSB0byB1c2UgZmxleCBncmlkXG4gICAgICAgIGNvbnN0IHdyYXBwZXJHcm91cDogRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICBmaWVsZEdyb3VwQ2xhc3NOYW1lOiAncC1mbHVpZCBmb3JtZ3JpZCBncmlkJyxcbiAgICAgICAgICAgIGZpZWxkR3JvdXA6IGZpZWxkc1xuICAgICAgICB9O1xuXG4gICAgICAgIEVkaXRvckZvcm1seVV0aWwuYWRkVmFsaWRhdGlvbnNUb0Zvcm1seUZpZWxkKHdyYXBwZXJHcm91cCwgZGVzY3JpcHRvci52YWxpZGF0aW9ucyk7XG5cbiAgICAgICAgcmV0dXJuIFt3cmFwcGVyR3JvdXBdO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRm9ybWx5RmllbGQoZGVzY3JpcHRvcjogQUZpZWxkRGVzY3JpcHRvcjxhbnksIGFueT4pOiBGb3JtbHlGaWVsZENvbmZpZyB7XG4gICAgICAgIGNvbnN0IGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZyA9IHtcbiAgICAgICAgICAgIGtleTogZGVzY3JpcHRvci5wcm9wZXJ0eSxcbiAgICAgICAgICAgIGV4cHJlc3Npb25Qcm9wZXJ0aWVzOiB7fSxcbiAgICAgICAgICAgIHRlbXBsYXRlT3B0aW9uczoge31cbiAgICAgICAgfTtcblxuICAgICAgICBsZXQgY2xhc3NOYW1lID0gZGVzY3JpcHRvci5jbGFzc05hbWU7XG4gICAgICAgIGlmICghY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICAvLyBhc3NpZ24gZGVmYXVsdCBmaWVsZCB3aWR0aCB0aHJvdWdoIGVudGlyZSByb3dcbiAgICAgICAgICAgIGNsYXNzTmFtZSA9ICdjb2wtMTInO1xuICAgICAgICB9XG4gICAgICAgIGZpZWxkLmNsYXNzTmFtZSA9IGNsYXNzTmFtZTtcblxuICAgICAgICBmaWVsZC50ZW1wbGF0ZU9wdGlvbnMhWydkZXNjcmlwdG9yJ10gPSBkZXNjcmlwdG9yO1xuICAgICAgICBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkSW5wdXREZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGRlc2NyaXB0b3IuZmllbGRUeXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5IaWRkZW46XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dERlc2NyaXB0b3IuVHlwZUVudW0uTGFiZWw6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnbGFiZWwnO1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgZmllbGQua2V5O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXREZXNjcmlwdG9yLlR5cGVFbnVtLlRleHRhcmVhOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ3RleHRhcmVhJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5OdW1iZXI6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnbnVtYmVyJztcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudGVtcGxhdGVPcHRpb25zIS5taW4gPSBkZXNjcmlwdG9yLm51bWJlck1pbjtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudGVtcGxhdGVPcHRpb25zIS5tYXggPSBkZXNjcmlwdG9yLm51bWJlck1heDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5Td2l0Y2g6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnc3dpdGNoJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5SYWRpbzpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdyYWRpbyc7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dERlc2NyaXB0b3IuVHlwZUVudW0uRGF0ZXBpY2tlcjpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdkYXRlcGlja2VyJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0RGVzY3JpcHRvci5UeXBlRW51bS5NYXNrOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ21hc2snO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXREZXNjcmlwdG9yLlR5cGVFbnVtLkN1c3RvbTpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9IGRlc2NyaXB0b3IuY3VzdG9tQ29tcG9uZW50TmFtZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdpbnB1dCc7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucyEubWluTGVuZ3RoID0gZGVzY3JpcHRvci5taW5MZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucyEubWF4TGVuZ3RoID0gZGVzY3JpcHRvci5tYXhMZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucyEucGF0dGVybiA9IGRlc2NyaXB0b3IucGF0dGVybjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnZW51bSc7XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkTG9va3VwRGVzY3JpcHRvcikge1xuICAgICAgICAgICAgc3dpdGNoIChkZXNjcmlwdG9yLmxvb2t1cFR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkTG9va3VwRGVzY3JpcHRvci5Mb29rdXBUeXBlRW51bS5BdXRvY29tcGxldGU6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnYXV0b2NvbXBsZXRlJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZExvb2t1cERlc2NyaXB0b3IuTG9va3VwVHlwZUVudW0uRGlhbG9nOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ2RpYWxvZyc7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRMb29rdXBEZXNjcmlwdG9yLkxvb2t1cFR5cGVFbnVtLkRyb3Bkb3duOlxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnZHJvcGRvd24nO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChkZXNjcmlwdG9yIGluc3RhbmNlb2YgRmllbGRNYW55VG9NYW55RWRpdG9yRGVzY3JpcHRvcikge1xuICAgICAgICAgICAgZmllbGQudHlwZSA9ICd0YWJsZS1kaWFsb2ctbXVsdGlzZWxlY3QnO1xuICAgICAgICB9IGVsc2UgaWYgKGRlc2NyaXB0b3IgaW5zdGFuY2VvZiBGaWVsZE1hbnlFZGl0b3JEZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBmaWVsZC50eXBlID0gJ3RhYmxlLWRpYWxvZy1mb3JtJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLmxhYmVsKSB7XG4gICAgICAgICAgICBmaWVsZC50ZW1wbGF0ZU9wdGlvbnMhLmxhYmVsID0gZGVzY3JpcHRvci5sYWJlbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLnJlcXVpcmVkRXhwcmVzc2lvbikge1xuICAgICAgICAgICAgZmllbGQuZXhwcmVzc2lvblByb3BlcnRpZXMhWyd0ZW1wbGF0ZU9wdGlvbnMucmVxdWlyZWQnXSA9IGRlc2NyaXB0b3IucmVxdWlyZWRFeHByZXNzaW9uO1xuICAgICAgICB9XG4gICAgICAgIGlmIChkZXNjcmlwdG9yLnJlcXVpcmVkKSB7XG4gICAgICAgICAgICBmaWVsZC50ZW1wbGF0ZU9wdGlvbnMhLnJlcXVpcmVkID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLmhpZGRlbkV4cHJlc3Npb24pIHtcbiAgICAgICAgICAgIGZpZWxkLmV4cHJlc3Npb25Qcm9wZXJ0aWVzIVsnaGlkZSddID0gZGVzY3JpcHRvci5oaWRkZW5FeHByZXNzaW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRlc2NyaXB0b3IuZGlzYWJsZWRFeHByZXNzaW9uKSB7XG4gICAgICAgICAgICBmaWVsZC5leHByZXNzaW9uUHJvcGVydGllcyFbJ3RlbXBsYXRlT3B0aW9ucy5kaXNhYmxlZCddID0gZGVzY3JpcHRvci5kaXNhYmxlZEV4cHJlc3Npb247XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvci5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZmllbGQudGVtcGxhdGVPcHRpb25zIS5kaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWVsZC5leHByZXNzaW9uUHJvcGVydGllcyFbJ3RlbXBsYXRlT3B0aW9ucy5kaXNhYmxlZCddID0gJ2Zvcm1TdGF0ZS5kaXNhYmxlZCc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIGRlc2NyaXB0b3IuZGVmYXVsdFZhbHVlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgZmllbGQuZGVmYXVsdFZhbHVlID0gZGVzY3JpcHRvci5kZWZhdWx0VmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBFZGl0b3JGb3JtbHlVdGlsLmFkZFZhbGlkYXRpb25zVG9Gb3JtbHlGaWVsZChmaWVsZCwgZGVzY3JpcHRvci52YWxpZGF0aW9ucyk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYWRkVmFsaWRhdGlvbnNUb0Zvcm1seUZpZWxkKGNvbmZpZzogRm9ybWx5RmllbGRDb25maWcsIHZhbGlkYXRpb25zOiBBcnJheTxGaWVsZFZhbGlkYXRpb25EZXNjcmlwdG9yPikge1xuICAgICAgICBpZiAoIWNvbmZpZy52YWxpZGF0b3JzKSB7XG4gICAgICAgICAgICBjb25maWcudmFsaWRhdG9ycyA9IHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCB2YWxpZGF0aW9uIG9mIHZhbGlkYXRpb25zKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHZhbGlkYXRpb24udmFsaWRhdG9yID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgY29uZmlnLnZhbGlkYXRvcnNbdmFsaWRhdGlvbi5uYW1lXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogKFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbDogQWJzdHJhY3RDb250cm9sLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz86IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWQ6IHN0cmluZ106IGFueTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWxpZGF0b3JSZXMgPSB2YWxpZGF0aW9uLnZhbGlkYXRvciEoY29udHJvbCwgZmllbGQsIG9wdGlvbnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gZm9ybWx5IHZhbGlkYXRvciBvbmx5IGV4Y2VwdHMgdHJ1ZS9mYWxzZSBmb3IgdmFsaWRhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gbWFwIHBvc3NpYmxlIGFuZ3VsYXIgdmFsaWRhdG9yIHJlc3VsdCB0byB0cnVlL2ZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHlwZW9mIHZhbGlkYXRvclJlcyA9PT0gJ2Jvb2xlYW4nID8gdmFsaWRhdG9yUmVzIDogdmFsaWRhdG9yUmVzID09PSBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbGlkYXRpb24ubWVzc2FnZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjb25maWcudmFsaWRhdG9yc1t2YWxpZGF0aW9uLm5hbWVdLm1lc3NhZ2UgPSB2YWxpZGF0aW9uLm1lc3NhZ2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoY29uZmlnLnZhbGlkYXRvcnMudmFsaWRhdGlvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uZmlnLnZhbGlkYXRvcnMudmFsaWRhdGlvbiA9IFtdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25maWcudmFsaWRhdG9ycy52YWxpZGF0aW9uLnB1c2godmFsaWRhdGlvbi5uYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1,7 +1,8 @@
1
+ export * from './action-data-provider.util';
1
2
  export * from './editor-formly.util';
2
3
  export * from './enum.util';
3
4
  export * from './i18n.util';
4
5
  export * from './model.util';
5
6
  export * from './notification.util';
6
7
  export * from './type.util';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLWZvcm1seS51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bS51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZS51dGlsJztcbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24tZGF0YS1wcm92aWRlci51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLWZvcm1seS51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bS51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZS51dGlsJztcbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { ActionDescriptor, TableDescriptor } from '../descriptors';
2
+ export class StylesUtil {
3
+ static calculateTableColumnActionWidth(table, actions) {
4
+ const buttonsWidth = actions.reduce((acc, action) => acc + StylesUtil.getActionButtonRoundedWidth(action) + 2 * StylesUtil.ACTION_BUTTON_MARGIN_X, 0);
5
+ const tablePadding = StylesUtil.getTableCellPaddingX(table);
6
+ return buttonsWidth + 2 * tablePadding;
7
+ }
8
+ static getTableCellPaddingX(table) {
9
+ switch (table.size) {
10
+ case TableDescriptor.SizeEnum.Small:
11
+ return StylesUtil.TABLE_CELL_PADDING_X_SM;
12
+ case TableDescriptor.SizeEnum.Large:
13
+ return StylesUtil.TABLE_CELL_PADDING_X_LG;
14
+ default:
15
+ return StylesUtil.TABLE_CELL_PADDING_X;
16
+ }
17
+ }
18
+ static getActionButtonRoundedWidth(action) {
19
+ switch (action.size) {
20
+ case ActionDescriptor.SizeEnum.ExtraSmall:
21
+ return StylesUtil.BUTTON_ROUNDED_WIDTH_XS;
22
+ case ActionDescriptor.SizeEnum.Small:
23
+ return StylesUtil.BUTTON_ROUNDED_WIDTH_SM;
24
+ case ActionDescriptor.SizeEnum.Large:
25
+ case ActionDescriptor.SizeEnum.ExtraLarge:
26
+ return StylesUtil.BUTTON_ROUNDED_WIDTH_LG;
27
+ case ActionDescriptor.SizeEnum.Normal:
28
+ default:
29
+ return StylesUtil.BUTTON_ROUNDED_WIDTH;
30
+ }
31
+ }
32
+ }
33
+ StylesUtil.BUTTON_ROUNDED_WIDTH_XS = 26;
34
+ StylesUtil.BUTTON_ROUNDED_WIDTH_SM = 28;
35
+ StylesUtil.BUTTON_ROUNDED_WIDTH = 32;
36
+ StylesUtil.BUTTON_ROUNDED_WIDTH_LG = 45;
37
+ StylesUtil.ACTION_BUTTON_MARGIN_X = 2;
38
+ StylesUtil.TABLE_CELL_PADDING_X = 8; // left and right paddings are same
39
+ StylesUtil.TABLE_CELL_PADDING_X_SM = 4;
40
+ StylesUtil.TABLE_CELL_PADDING_X_LG = 12;
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL3N0eWxlcy51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxNQUFNLE9BQU8sVUFBVTtJQVlaLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxLQUErQixFQUFFLE9BQXlDO1FBQ3BILE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsVUFBVSxDQUFDLDJCQUEyQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxVQUFVLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdEosTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVELE9BQU8sWUFBWSxHQUFHLENBQUMsR0FBRyxZQUFZLENBQUM7SUFDM0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUErQjtRQUM5RCxRQUFRLEtBQUssQ0FBQyxJQUFJLEVBQUU7WUFDaEIsS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDLEtBQUs7Z0JBQy9CLE9BQU8sVUFBVSxDQUFDLHVCQUF1QixDQUFDO1lBQzlDLEtBQUssZUFBZSxDQUFDLFFBQVEsQ0FBQyxLQUFLO2dCQUMvQixPQUFPLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQztZQUM5QztnQkFDSSxPQUFPLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQztTQUM5QztJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsMkJBQTJCLENBQUMsTUFBaUM7UUFDdkUsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQ2pCLEtBQUssZ0JBQWdCLENBQUMsUUFBUSxDQUFDLFVBQVU7Z0JBQ3JDLE9BQU8sVUFBVSxDQUFDLHVCQUF1QixDQUFDO1lBQzlDLEtBQUssZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEtBQUs7Z0JBQ2hDLE9BQU8sVUFBVSxDQUFDLHVCQUF1QixDQUFDO1lBQzlDLEtBQUssZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztZQUNyQyxLQUFLLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxVQUFVO2dCQUNyQyxPQUFPLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQztZQUM5QyxLQUFLLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDdEM7Z0JBQ0ksT0FBTyxVQUFVLENBQUMsb0JBQW9CLENBQUM7U0FDOUM7SUFDTCxDQUFDOztBQXpDc0Isa0NBQXVCLEdBQUcsRUFBRSxDQUFDO0FBQzdCLGtDQUF1QixHQUFHLEVBQUUsQ0FBQztBQUM3QiwrQkFBb0IsR0FBRyxFQUFFLENBQUM7QUFDMUIsa0NBQXVCLEdBQUcsRUFBRSxDQUFDO0FBRTdCLGlDQUFzQixHQUFHLENBQUMsQ0FBQztBQUUzQiwrQkFBb0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQ0FBbUM7QUFDN0Qsa0NBQXVCLEdBQUcsQ0FBQyxDQUFDO0FBQzVCLGtDQUF1QixHQUFHLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWN0aW9uRGVzY3JpcHRvciwgVGFibGVEZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycyc7XG5cbmV4cG9ydCBjbGFzcyBTdHlsZXNVdGlsIHtcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEJVVFRPTl9ST1VOREVEX1dJRFRIX1hTID0gMjY7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBCVVRUT05fUk9VTkRFRF9XSURUSF9TTSA9IDI4O1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQlVUVE9OX1JPVU5ERURfV0lEVEggPSAzMjtcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEJVVFRPTl9ST1VOREVEX1dJRFRIX0xHID0gNDU7XG5cbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEFDVElPTl9CVVRUT05fTUFSR0lOX1ggPSAyO1xuXG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBUQUJMRV9DRUxMX1BBRERJTkdfWCA9IDg7IC8vIGxlZnQgYW5kIHJpZ2h0IHBhZGRpbmdzIGFyZSBzYW1lXG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBUQUJMRV9DRUxMX1BBRERJTkdfWF9TTSA9IDQ7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBUQUJMRV9DRUxMX1BBRERJTkdfWF9MRyA9IDEyO1xuXG4gICAgcHVibGljIHN0YXRpYyBjYWxjdWxhdGVUYWJsZUNvbHVtbkFjdGlvbldpZHRoKHRhYmxlOiBUYWJsZURlc2NyaXB0b3I8dW5rbm93bj4sIGFjdGlvbnM6IEFycmF5PEFjdGlvbkRlc2NyaXB0b3I8dW5rbm93bj4+KTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgYnV0dG9uc1dpZHRoID0gYWN0aW9ucy5yZWR1Y2UoKGFjYywgYWN0aW9uKSA9PiBhY2MgKyBTdHlsZXNVdGlsLmdldEFjdGlvbkJ1dHRvblJvdW5kZWRXaWR0aChhY3Rpb24pICsgMiAqIFN0eWxlc1V0aWwuQUNUSU9OX0JVVFRPTl9NQVJHSU5fWCwgMCk7XG4gICAgICAgIGNvbnN0IHRhYmxlUGFkZGluZyA9IFN0eWxlc1V0aWwuZ2V0VGFibGVDZWxsUGFkZGluZ1godGFibGUpO1xuICAgICAgICByZXR1cm4gYnV0dG9uc1dpZHRoICsgMiAqIHRhYmxlUGFkZGluZztcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldFRhYmxlQ2VsbFBhZGRpbmdYKHRhYmxlOiBUYWJsZURlc2NyaXB0b3I8dW5rbm93bj4pOiBudW1iZXIge1xuICAgICAgICBzd2l0Y2ggKHRhYmxlLnNpemUpIHtcbiAgICAgICAgICAgIGNhc2UgVGFibGVEZXNjcmlwdG9yLlNpemVFbnVtLlNtYWxsOlxuICAgICAgICAgICAgICAgIHJldHVybiBTdHlsZXNVdGlsLlRBQkxFX0NFTExfUEFERElOR19YX1NNO1xuICAgICAgICAgICAgY2FzZSBUYWJsZURlc2NyaXB0b3IuU2l6ZUVudW0uTGFyZ2U6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFN0eWxlc1V0aWwuVEFCTEVfQ0VMTF9QQURESU5HX1hfTEc7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBTdHlsZXNVdGlsLlRBQkxFX0NFTExfUEFERElOR19YO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRBY3Rpb25CdXR0b25Sb3VuZGVkV2lkdGgoYWN0aW9uOiBBY3Rpb25EZXNjcmlwdG9yPHVua25vd24+KTogbnVtYmVyIHtcbiAgICAgICAgc3dpdGNoIChhY3Rpb24uc2l6ZSkge1xuICAgICAgICAgICAgY2FzZSBBY3Rpb25EZXNjcmlwdG9yLlNpemVFbnVtLkV4dHJhU21hbGw6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFN0eWxlc1V0aWwuQlVUVE9OX1JPVU5ERURfV0lEVEhfWFM7XG4gICAgICAgICAgICBjYXNlIEFjdGlvbkRlc2NyaXB0b3IuU2l6ZUVudW0uU21hbGw6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFN0eWxlc1V0aWwuQlVUVE9OX1JPVU5ERURfV0lEVEhfU007XG4gICAgICAgICAgICBjYXNlIEFjdGlvbkRlc2NyaXB0b3IuU2l6ZUVudW0uTGFyZ2U6XG4gICAgICAgICAgICBjYXNlIEFjdGlvbkRlc2NyaXB0b3IuU2l6ZUVudW0uRXh0cmFMYXJnZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gU3R5bGVzVXRpbC5CVVRUT05fUk9VTkRFRF9XSURUSF9MRztcbiAgICAgICAgICAgIGNhc2UgQWN0aW9uRGVzY3JpcHRvci5TaXplRW51bS5Ob3JtYWw6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBTdHlsZXNVdGlsLkJVVFRPTl9ST1VOREVEX1dJRFRIO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19