@genesislcap/pbc-reconciliation-ui 0.0.38 → 0.0.40

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 (74) hide show
  1. package/dist/dts/components/configurations-panel/configuration-datasources/configuration-datasources.d.ts +22 -0
  2. package/dist/dts/components/configurations-panel/configuration-datasources/configuration-datasources.d.ts.map +1 -0
  3. package/dist/dts/components/configurations-panel/configuration-datasources/configuration-datasources.styles.d.ts +2 -0
  4. package/dist/dts/components/configurations-panel/configuration-datasources/configuration-datasources.styles.d.ts.map +1 -0
  5. package/dist/dts/components/configurations-panel/configuration-datasources/configuration-datasources.template.d.ts +3 -0
  6. package/dist/dts/components/configurations-panel/configuration-datasources/configuration-datasources.template.d.ts.map +1 -0
  7. package/dist/dts/components/configurations-panel/configurations-panel.d.ts +20 -5
  8. package/dist/dts/components/configurations-panel/configurations-panel.d.ts.map +1 -1
  9. package/dist/dts/components/configurations-panel/configurations-panel.styles.d.ts.map +1 -1
  10. package/dist/dts/components/configurations-panel/configurations-panel.template.d.ts.map +1 -1
  11. package/dist/dts/components/rapid-components.d.ts.map +1 -1
  12. package/dist/dts/components/reconciliations-panel/columns.d.ts.map +1 -1
  13. package/dist/dts/components/reconciliations-panel/reconciliations-panel.d.ts.map +1 -1
  14. package/dist/dts/components/reconciliations-panel/result-details/result-details.d.ts +7 -1
  15. package/dist/dts/components/reconciliations-panel/result-details/result-details.d.ts.map +1 -1
  16. package/dist/dts/components/reconciliations-panel/result-details/result-details.styles.d.ts.map +1 -1
  17. package/dist/dts/components/reconciliations-panel/result-details/result-details.template.d.ts +1 -1
  18. package/dist/dts/components/reconciliations-panel/result-details/result-details.template.d.ts.map +1 -1
  19. package/dist/dts/components/zero-components.d.ts.map +1 -1
  20. package/dist/dts/config/templates.d.ts +4 -0
  21. package/dist/dts/config/templates.d.ts.map +1 -1
  22. package/dist/dts/main/main.styles.d.ts.map +1 -1
  23. package/dist/dts/reconciliation.types.d.ts +13 -2
  24. package/dist/dts/reconciliation.types.d.ts.map +1 -1
  25. package/dist/dts/services/reconciliation-configuration.service.d.ts +1 -0
  26. package/dist/dts/services/reconciliation-configuration.service.d.ts.map +1 -1
  27. package/dist/dts/services/reconciliation.service.d.ts +1 -0
  28. package/dist/dts/services/reconciliation.service.d.ts.map +1 -1
  29. package/dist/dts/tags/tags.d.ts +4 -0
  30. package/dist/dts/tags/tags.d.ts.map +1 -1
  31. package/dist/dts/utils/notification.d.ts +1 -0
  32. package/dist/dts/utils/notification.d.ts.map +1 -1
  33. package/dist/esm/components/configurations-panel/configuration-datasources/configuration-datasources.js +84 -0
  34. package/dist/esm/components/configurations-panel/configuration-datasources/configuration-datasources.js.map +1 -0
  35. package/dist/esm/components/configurations-panel/configuration-datasources/configuration-datasources.styles.js +72 -0
  36. package/dist/esm/components/configurations-panel/configuration-datasources/configuration-datasources.styles.js.map +1 -0
  37. package/dist/esm/components/configurations-panel/configuration-datasources/configuration-datasources.template.js +55 -0
  38. package/dist/esm/components/configurations-panel/configuration-datasources/configuration-datasources.template.js.map +1 -0
  39. package/dist/esm/components/configurations-panel/configurations-panel.js +117 -31
  40. package/dist/esm/components/configurations-panel/configurations-panel.js.map +1 -1
  41. package/dist/esm/components/configurations-panel/configurations-panel.styles.js +39 -20
  42. package/dist/esm/components/configurations-panel/configurations-panel.styles.js.map +1 -1
  43. package/dist/esm/components/configurations-panel/configurations-panel.template.js +104 -55
  44. package/dist/esm/components/configurations-panel/configurations-panel.template.js.map +1 -1
  45. package/dist/esm/components/list/list.styles.js +1 -1
  46. package/dist/esm/components/rapid-components.js +2 -2
  47. package/dist/esm/components/rapid-components.js.map +1 -1
  48. package/dist/esm/components/reconciliations-panel/columns.js +9 -0
  49. package/dist/esm/components/reconciliations-panel/columns.js.map +1 -1
  50. package/dist/esm/components/reconciliations-panel/reconciliations-panel.js +1 -1
  51. package/dist/esm/components/reconciliations-panel/reconciliations-panel.js.map +1 -1
  52. package/dist/esm/components/reconciliations-panel/result-details/result-details.js +34 -1
  53. package/dist/esm/components/reconciliations-panel/result-details/result-details.js.map +1 -1
  54. package/dist/esm/components/reconciliations-panel/result-details/result-details.styles.js +23 -1
  55. package/dist/esm/components/reconciliations-panel/result-details/result-details.styles.js.map +1 -1
  56. package/dist/esm/components/reconciliations-panel/result-details/result-details.template.js +40 -10
  57. package/dist/esm/components/reconciliations-panel/result-details/result-details.template.js.map +1 -1
  58. package/dist/esm/components/zero-components.js +2 -2
  59. package/dist/esm/components/zero-components.js.map +1 -1
  60. package/dist/esm/config/templates.js +4 -0
  61. package/dist/esm/config/templates.js.map +1 -1
  62. package/dist/esm/main/main.styles.js +1 -0
  63. package/dist/esm/main/main.styles.js.map +1 -1
  64. package/dist/esm/reconciliation.types.js +12 -2
  65. package/dist/esm/reconciliation.types.js.map +1 -1
  66. package/dist/esm/services/reconciliation-configuration.service.js +7 -0
  67. package/dist/esm/services/reconciliation-configuration.service.js.map +1 -1
  68. package/dist/esm/services/reconciliation.service.js +11 -1
  69. package/dist/esm/services/reconciliation.service.js.map +1 -1
  70. package/dist/esm/tags/tags.js +4 -0
  71. package/dist/esm/tags/tags.js.map +1 -1
  72. package/dist/esm/utils/notification.js +14 -0
  73. package/dist/esm/utils/notification.js.map +1 -1
  74. package/package.json +1 -1
@@ -1,13 +1,14 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { showNotificationDialog } from '@genesislcap/foundation-notifications';
3
- import { GenesisElement, customElement, observable } from '@genesislcap/web-core';
3
+ import { DOM, GenesisElement, customElement, observable } from '@genesislcap/web-core';
4
4
  import { ConfigurationsPanelTemplate } from './configurations-panel.template';
5
5
  import { ConfigurationsPanelStyles } from './configurations-panel.styles';
6
- import { ConfigurationMode, } from '../../reconciliation.types';
6
+ import { ReconciliationFrequency, ConfigurationMode, ReconciliationMethod, DatasourceType, } from '../../reconciliation.types';
7
7
  import { ReconciliationConfigurationService } from '../../services/reconciliation-configuration.service';
8
8
  import { DataDictionaryService } from '../../services/data-dictionary.service';
9
9
  import { logger } from '../../utils';
10
- import { showNotificationError } from '../../utils/notification';
10
+ import { showNotificationError, showNotificationErrors } from '../../utils/notification';
11
+ import { isEmpty } from '../../utils/isEmpty';
11
12
  let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
12
13
  constructor() {
13
14
  super(...arguments);
@@ -16,24 +17,35 @@ let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
16
17
  this.dataDictionaries = [];
17
18
  this.selectedConfiguration = null;
18
19
  this.configurationName = null;
19
- this.datasourceName = null;
20
+ this.reconciliationFrequency = ReconciliationFrequency.BATCH;
21
+ this.reconciliationStrategy = ReconciliationMethod.ONE_TO_ONE;
20
22
  this.dataDictionaryId = '';
21
23
  this.showConfigurationDetails = false;
22
24
  this.matchNull = false;
23
25
  this.reconRules = [];
24
26
  this.dataDictionaryFields = [];
25
27
  this.filteredRuleFields = [];
28
+ this.dataPipelineList = [];
26
29
  this.isEditingDatasourceName = false;
30
+ this.onPrimaryDatasourceChange = (selection) => {
31
+ this.primaryDatasource = selection;
32
+ };
27
33
  }
28
34
  async connectedCallback() {
29
35
  super.connectedCallback();
30
36
  await this.setConfigurations();
31
37
  await this.setDataDictionaries();
38
+ await this.setDataPipelines();
32
39
  }
33
40
  async setConfigurations() {
34
41
  this.configurations =
35
42
  await this.reconciliationConfigurationService.getReconciliationConfigurations();
36
43
  }
44
+ async setDataPipelines() {
45
+ const response = await this.reconciliationConfigurationService.getReconciliationDataPipelines();
46
+ this.dataPipelineList = this.reconciliationFrequency === ReconciliationFrequency.BATCH ?
47
+ response.BATCH_DATA_SOURCE_NAMES : response.REAL_TIME_DATA_SOURCE_NAMES;
48
+ }
37
49
  async setDataDictionaries() {
38
50
  var _a;
39
51
  this.dataDictionaries = await this.dataDictionaryService.getDataDictionaries();
@@ -51,20 +63,29 @@ let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
51
63
  this.reset();
52
64
  this.dataDictionaryChanged();
53
65
  this.showConfigurationDetails = true;
66
+ DOM.queueUpdate(() => {
67
+ this.resetDatasources();
68
+ });
69
+ }
70
+ resetDatasources() {
71
+ this.firstDatasource.setDefaultDatasource('Datasource 1');
72
+ this.secondDatasource.setDefaultDatasource('Datasource 2');
54
73
  }
55
74
  reset() {
56
75
  this.selectedConfiguration = {};
57
76
  this.configurationName = null;
58
77
  this.datasources = [];
59
78
  this.reconRules = [];
60
- this.datasourceType = null;
61
79
  this.dataDictionaryId =
62
80
  this.dataDictionaries.length > 0 ? this.dataDictionaries[0].DICTIONARY_ID : '';
63
81
  this.matchNull = false;
82
+ this.primaryDatasource = null;
64
83
  }
65
84
  async selectConfiguration(configuration) {
66
85
  this.reset();
67
86
  this.configurationMode = ConfigurationMode.EDIT;
87
+ this.reconciliationStrategy = configuration.RECONCILIATION_STRATEGY;
88
+ this.primaryDatasource = configuration.PRIMARY_DATASOURCE;
68
89
  this.selectedConfiguration = configuration;
69
90
  this.configurationName = configuration.NAME;
70
91
  this.dataDictionaryId = configuration.DICTIONARY_ID;
@@ -77,9 +98,15 @@ let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
77
98
  }) || [];
78
99
  this.filterReconRuleFields();
79
100
  const dataSourceConfig = await this.reconciliationConfigurationService.getReconciliationDatasourceConfiguration(configuration.RECONCILIATION_CONFIG_ID);
80
- this.datasources = dataSourceConfig;
81
101
  this.matchNull = configuration.MATCH_NULL;
82
102
  this.showConfigurationDetails = true;
103
+ this.datasources = dataSourceConfig;
104
+ DOM.queueUpdate(() => {
105
+ if (this.reconciliationStrategy === ReconciliationMethod.ONE_TO_ONE) {
106
+ this.firstDatasource.setDatasource(this.datasources[0]);
107
+ this.secondDatasource.setDatasource(this.datasources[1]);
108
+ }
109
+ });
83
110
  }
84
111
  deleteConfiguration(index) {
85
112
  showNotificationDialog({
@@ -107,43 +134,69 @@ let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
107
134
  },
108
135
  }, 'rapid');
109
136
  }
110
- addDataSource(datasourceType) {
137
+ addDataSource(datasource) {
111
138
  var _a;
112
- if (!datasourceType) {
113
- return;
114
- }
115
139
  this.datasources.push({
116
- NAME: (_a = this.datasourceName) !== null && _a !== void 0 ? _a : `Data Source ${this.datasources.length + 1}`,
117
- TYPE: datasourceType,
118
- IS_EDITING: false
140
+ NAME: (_a = datasource.NAME) !== null && _a !== void 0 ? _a : `Data Source ${this.datasources.length + 1}`,
141
+ TYPE: datasource.TYPE,
142
+ CONFIG_DATA: datasource.CONFIG_DATA,
143
+ IS_EDITING: false,
119
144
  });
120
- this.datasourceName = null;
121
- this.datasourceType = undefined;
122
145
  }
123
146
  deleteDataSource(index) {
124
147
  if (this.configurationMode === ConfigurationMode.CREATE) {
125
148
  this.datasources.splice(index, 1);
126
149
  }
127
150
  }
151
+ setDatasources() {
152
+ let datasourcesList = [];
153
+ if (this.configurationMode === ConfigurationMode.CREATE &&
154
+ this.reconciliationStrategy === ReconciliationMethod.ONE_TO_ONE) {
155
+ datasourcesList.push(this.firstDatasource.getDatasource(0));
156
+ datasourcesList.push(this.secondDatasource.getDatasource(1));
157
+ this.datasources = datasourcesList;
158
+ }
159
+ }
128
160
  transformDatasources() {
129
161
  return this.datasources.map((dataSource, index) => {
130
- return Object.assign(Object.assign({}, dataSource), { NAME: dataSource.NAME, INDEX: index });
162
+ return Object.assign(Object.assign({}, dataSource), { INDEX: index });
131
163
  });
132
164
  }
133
- saveConfiguration() {
165
+ validateDatasources() {
166
+ let validate = true;
167
+ this.datasources.forEach((element) => {
168
+ if (element.TYPE === DatasourceType.PIPELINE && isEmpty(element.CONFIG_DATA)) {
169
+ validate = false;
170
+ return false;
171
+ }
172
+ });
173
+ return validate;
174
+ }
175
+ validateConfiguration() {
176
+ let errors = [];
134
177
  if (!this.configurationName || !this.dataDictionaryId || this.datasources.length === 0) {
135
- showNotificationError([
136
- { CODE: 'Missing fields', TEXT: 'Please fill in all required fields.' },
137
- ]);
138
- return;
178
+ errors.push({ CODE: 'Missing fields', TEXT: 'Please fill in all required fields.' });
139
179
  }
140
- if (this.datasources.length > 2) {
141
- showNotificationError([
142
- {
143
- CODE: 'Datasources limit exceeded',
144
- TEXT: 'Only 2 datasources are allowed for a configuration.',
145
- },
146
- ]);
180
+ if (this.reconciliationStrategy === ReconciliationMethod.ONE_TO_MANY &&
181
+ !this.primaryDatasource) {
182
+ errors.push({
183
+ CODE: 'Missing primary datasource',
184
+ TEXT: 'Please provide primary datasource for 1:N reconciliation strategy',
185
+ });
186
+ }
187
+ if (!this.validateDatasources()) {
188
+ errors.push({
189
+ CODE: 'Missing Pipeline source',
190
+ TEXT: 'Data Pipeline Source required',
191
+ });
192
+ }
193
+ return errors;
194
+ }
195
+ saveConfiguration() {
196
+ this.setDatasources();
197
+ let errors = this.validateConfiguration();
198
+ if (errors.length > 0) {
199
+ showNotificationErrors(errors);
147
200
  return;
148
201
  }
149
202
  let reqObject;
@@ -151,11 +204,12 @@ let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
151
204
  case ConfigurationMode.CREATE:
152
205
  reqObject = {
153
206
  DICTIONARY_ID: this.dataDictionaryId,
154
- RECONCILIATION_STRATEGY: 'ONE_TO_ONE',
207
+ RECONCILIATION_STRATEGY: this.reconciliationStrategy,
155
208
  NAME: this.configurationName,
156
209
  RULES: this.reconRules,
157
210
  DATASOURCES: this.transformDatasources(),
158
211
  MATCH_NULL: this.matchNull,
212
+ PRIMARY_DATASOURCE_NAME: this.primaryDatasource,
159
213
  };
160
214
  this.reconciliationConfigurationService
161
215
  .createReconciliationConfiguration(reqObject)
@@ -170,6 +224,7 @@ let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
170
224
  RULES: this.reconRules,
171
225
  DATASOURCES: this.datasources,
172
226
  MATCH_NULL: this.matchNull,
227
+ PRIMARY_DATASOURCE_NAME: this.primaryDatasource,
173
228
  };
174
229
  this.reconciliationConfigurationService
175
230
  .updateReconciliationConfiguration(reqObject)
@@ -217,6 +272,25 @@ let ConfigurationsPanel = class ConfigurationsPanel extends GenesisElement {
217
272
  this.reconRules = [];
218
273
  this.filterReconRuleFields();
219
274
  }
275
+ datasourceNameChanged(evt, index) {
276
+ const { value } = evt.target;
277
+ if (this.datasources[index].NAME === this.primaryDatasource) {
278
+ this.primaryDatasource = value;
279
+ }
280
+ this.datasources[index].NAME = value;
281
+ }
282
+ clearDatasources() {
283
+ this.datasources.splice(0, this.datasources.length);
284
+ this.primaryDatasource = null;
285
+ }
286
+ reconStrategyChanged() {
287
+ if (this.configurationMode === ConfigurationMode.CREATE &&
288
+ this.reconciliationStrategy === ReconciliationMethod.ONE_TO_ONE) {
289
+ DOM.queueUpdate(() => {
290
+ this.resetDatasources();
291
+ });
292
+ }
293
+ }
220
294
  };
221
295
  __decorate([
222
296
  ReconciliationConfigurationService
@@ -241,10 +315,10 @@ __decorate([
241
315
  ], ConfigurationsPanel.prototype, "configurationName", void 0);
242
316
  __decorate([
243
317
  observable
244
- ], ConfigurationsPanel.prototype, "datasourceName", void 0);
318
+ ], ConfigurationsPanel.prototype, "reconciliationFrequency", void 0);
245
319
  __decorate([
246
320
  observable
247
- ], ConfigurationsPanel.prototype, "datasourceType", void 0);
321
+ ], ConfigurationsPanel.prototype, "reconciliationStrategy", void 0);
248
322
  __decorate([
249
323
  observable
250
324
  ], ConfigurationsPanel.prototype, "dataDictionaryId", void 0);
@@ -266,6 +340,18 @@ __decorate([
266
340
  __decorate([
267
341
  observable
268
342
  ], ConfigurationsPanel.prototype, "filteredRuleFields", void 0);
343
+ __decorate([
344
+ observable
345
+ ], ConfigurationsPanel.prototype, "firstDatasource", void 0);
346
+ __decorate([
347
+ observable
348
+ ], ConfigurationsPanel.prototype, "secondDatasource", void 0);
349
+ __decorate([
350
+ observable
351
+ ], ConfigurationsPanel.prototype, "primaryDatasource", void 0);
352
+ __decorate([
353
+ observable
354
+ ], ConfigurationsPanel.prototype, "dataPipelineList", void 0);
269
355
  __decorate([
270
356
  observable
271
357
  ], ConfigurationsPanel.prototype, "isEditingDatasourceName", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"configurations-panel.js","sourceRoot":"","sources":["../../../../src/components/configurations-panel/configurations-panel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurations-panel.js","sourceRoot":"","sources":["../../../../src/components/configurations-panel/configurations-panel.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { css } from '@genesislcap/web-core';
2
- import { buttonTag, dividerTag, segmentedItemTag, selectTag, textFieldTag } from '../../tags';
2
+ import { badgeTag, buttonTag, dividerTag, segmentedItemTag, selectTag, textFieldTag, } from '../../tags';
3
3
  import { scrollbarStyles } from '../../styles/scrollbar.styles';
4
4
  const common = css `
5
5
  .data-source-record {
@@ -9,7 +9,7 @@ const common = css `
9
9
  align-items: center;
10
10
  padding: 0 calc(var(--design-unit) * 4px);
11
11
  border-bottom: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);
12
- height: calc((var(--base-height-multiplier) + 1) * 4px);
12
+ height: calc(var(--base-height-multiplier) * 4px);
13
13
  color: var(--neutral-foreground-hint);
14
14
  background-color: var(--neutral-layer-2);
15
15
  color: var(--neutral-foreground-rest);
@@ -86,13 +86,14 @@ const configuration = css `
86
86
 
87
87
  .current-data-source-label {
88
88
  padding: 0 calc(var(--design-unit) * 4px);
89
+ margin-bottom: calc(var(--design-unit) * 3px);
89
90
  }
90
91
 
91
92
  /* #region Data Sources */
92
93
  .data-sources {
93
94
  display: flex;
94
95
  flex-direction: column;
95
- gap: calc(var(--design-unit) * 2px);
96
+ gap: calc(var(--design-unit) * 3px);
96
97
  }
97
98
 
98
99
  .data-source-list {
@@ -101,11 +102,6 @@ const configuration = css `
101
102
  overflow: auto;
102
103
  }
103
104
 
104
- .new-data-source {
105
- display: flex;
106
- flex-direction: column;
107
- }
108
-
109
105
  .new-data-source-label,
110
106
  .current-data-source-label,
111
107
  .select-dictionary,
@@ -113,14 +109,6 @@ const configuration = css `
113
109
  .data-source-name-label {
114
110
  font-weight: bold;
115
111
  color: var(--neutral-foreground-hint);
116
- padding-bottom: calc(var(--design-unit) * 2px);
117
- }
118
-
119
- .new-data-source-field {
120
- display: flex;
121
- flex-direction: row;
122
- align-items: center;
123
- gap: 8px;
124
112
  }
125
113
 
126
114
  .data-source-types {
@@ -132,15 +120,50 @@ const configuration = css `
132
120
  width: 100%;
133
121
  }
134
122
 
123
+ .datasources-list-header {
124
+ display: flex;
125
+ justify-content: space-between;
126
+ width: 95%;
127
+ }
128
+
129
+ .file-type {
130
+ color: var(--success-color);
131
+ }
132
+
133
+ .file-type[aria-checked='true'] {
134
+ background-color: var(--success-color);
135
+ color: var(--neutral-foreground-rest);
136
+ border-color: var(--success-color);
137
+ }
138
+
139
+ .datapipeline-type {
140
+ color: var(--error-color);
141
+ }
142
+
143
+ .datapipeline-type[aria-checked='true'] {
144
+ background-color: var(--error-color);
145
+ color: var(--neutral-foreground-rest);
146
+ border-color: var(--error-color);
147
+ }
148
+
149
+ .datapipeline-select {
150
+ width: 100%;
151
+ }
152
+ ${badgeTag}::part(control) {
153
+ font-weight: 700;
154
+ }
155
+
135
156
  ${segmentedItemTag} {
136
157
  margin: 0;
137
158
  flex: auto;
138
159
  place-content: center;
160
+ font-size: var(--type-ramp-minus-1-font-size);
139
161
  }
140
162
 
141
163
  ${segmentedItemTag}[disabled] {
142
164
  cursor: not-allowed;
143
165
  }
166
+
144
167
  /* #region Data Sources */
145
168
 
146
169
  /* #region Reconciliation Rules */
@@ -291,11 +314,7 @@ const fields = css `
291
314
 
292
315
  .add-datasource {
293
316
  display: flex;
294
- margin: 0;
295
317
  background-color: rgba(122, 204, 121, 0.5);
296
- min-width: calc(var(--base-height-multiplier) * (var(--design-unit) - 1) * 1px);
297
- width: calc(var(--base-height-multiplier) * (var(--design-unit) - 1) * 1px);
298
- height: calc(var(--base-height-multiplier) * (var(--design-unit) - 1) * 1px);
299
318
  }
300
319
 
301
320
  ${buttonTag}.add-datasource::part(control) {
@@ -1 +1 @@
1
- {"version":3,"file":"configurations-panel.styles.js","sourceRoot":"","sources":["../../../../src/components/configurations-panel/configurations-panel.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CjB,CAAC;AAEF,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwFrB,gBAAgB;;;;;;IAMhB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAoEW,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CxC,CAAC;AAEF,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;IASd,YAAY;;;;;IAKZ,YAAY;;;;IAIZ,SAAS;;;;;IAKT,SAAS;;;;IAIT,SAAS;;;;;;;;;;;;;;;;;;;;;;IAsBT,SAAS;;;;IAIT,YAAY;;;CAGf,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAA;;;;;;;;;;;;IAYxC,eAAe;IACf,MAAM;IACN,aAAa;IACb,MAAM;;;;;CAKT,CAAC"}
1
+ {"version":3,"file":"configurations-panel.styles.js","sourceRoot":"","sources":["../../../../src/components/configurations-panel/configurations-panel.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EACL,QAAQ,EACR,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CjB,CAAC;AAEF,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAyGrB,QAAQ;;;;IAIR,gBAAgB;;;;;;;IAOhB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAqEW,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CxC,CAAC;AAEF,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;IASd,YAAY;;;;;IAKZ,YAAY;;;;IAIZ,SAAS;;;;;IAKT,SAAS;;;;IAIT,SAAS;;;;;;;;;;;;;;;;;;IAkBT,SAAS;;;;IAIT,YAAY;;;CAGf,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAA;;;;;;;;;;;;IAYxC,eAAe;IACf,MAAM;IACN,aAAa;IACb,MAAM;;;;;CAKT,CAAC"}
@@ -1,10 +1,12 @@
1
- import { html, repeat, when, whenElse } from '@genesislcap/web-core';
1
+ import { html, ref, repeat, when, whenElse } from '@genesislcap/web-core';
2
+ import { ConfigurationDatasources } from './configuration-datasources/configuration-datasources';
2
3
  import { sync } from '@genesislcap/foundation-utils';
3
- import { ConfigurationMode, DatasourceType, RuleMode, } from '../../reconciliation.types';
4
- import { buttonTag, dividerTag, iconTag, optionTag, segmentedControlTag, segmentedItemTag, selectTag, switchTag, textFieldTag, } from '../../tags';
4
+ import { ConfigurationMode, ReconciliationFrequency, DatasourceType, RuleMode, ReconciliationMethod, } from '../../reconciliation.types';
5
+ import { badgeTag, buttonTag, dividerTag, iconTag, optionTag, radioTag, segmentedControlTag, segmentedItemTag, selectTag, switchTag, textFieldTag, } from '../../tags';
5
6
  import { eventDetail } from '../../utils/eventDetail';
6
7
  import { ReconciliationRuleRow } from './reconciliation-rule-row/reconciliation-rule-row';
7
8
  ReconciliationRuleRow;
9
+ ConfigurationDatasources;
8
10
  const listTemplate = html `
9
11
  <item-list
10
12
  :items=${(x) => x.configurations}
@@ -25,60 +27,94 @@ const configurationNameAndDatasourcesTemplate = html `
25
27
  <label class="configuration-name-label">Configuration Name</label>
26
28
  <${textFieldTag} :value=${sync((x) => x.configurationName)} :disabled=${(x) => x.configurationMode === ConfigurationMode.EDIT}></${textFieldTag}>
27
29
  </div>
30
+ <div class="configuration-name">
31
+ <label class="configuration-name-label">Configuration Method</label>
32
+ <${segmentedControlTag}
33
+ class="data-source-types"
34
+ :value=${sync((x) => x.reconciliationFrequency)}
35
+ >
36
+ <${segmentedItemTag}
37
+ :value=${(_) => ReconciliationFrequency.BATCH}
38
+ >
39
+ Batch
40
+ </${segmentedItemTag}>
41
+ <${segmentedItemTag}
42
+ disabled
43
+ :value=${(_) => ReconciliationFrequency.REAL_TIME}
44
+ >
45
+ Real-time
46
+ </${segmentedItemTag}>
47
+ </${segmentedControlTag}>
48
+ <${segmentedControlTag}
49
+ class="data-source-types"
50
+ :value=${sync((x) => x.reconciliationStrategy)}
51
+ @change=${(x, c) => x.reconStrategyChanged()}
52
+ disabled=${(x) => x.configurationMode === ConfigurationMode.EDIT}
53
+ >
54
+ <${segmentedItemTag}
55
+ :value=${(_) => ReconciliationMethod.ONE_TO_ONE}
56
+ @click=${(x, c) => x.clearDatasources()}
57
+ >
58
+ 1:1
59
+ </${segmentedItemTag}>
60
+ <${segmentedItemTag}
61
+ :value=${(_) => ReconciliationMethod.ONE_TO_MANY}
62
+ >
63
+ 1:N
64
+ </${segmentedItemTag}>
65
+ <${segmentedItemTag}
66
+ :value=${(_) => ReconciliationMethod.MANY_TO_MANY}
67
+ @click=${(x, c) => (x.primaryDatasource = null)}
68
+ >
69
+ N:N
70
+ </${segmentedItemTag}>
71
+ </${segmentedControlTag}>
72
+ </div>
28
73
 
29
74
  <${dividerTag}></${dividerTag}>
30
75
 
31
76
  <div class="data-sources">
32
77
  <label class="data-sources-label">Data Sources</label>
33
-
34
- <div class="data-source-name">
35
- <label class="data-source-name-label">Data Source Name</label>
36
- <${textFieldTag} :value=${sync((x) => x.datasourceName)}></${textFieldTag}>
37
- </div>
38
-
39
- <div class="new-data-source">
40
- <label class="new-data-source-label">Add New Data Source</label>
41
- <div class="new-data-source-field">
42
- <${segmentedControlTag}
43
- disabled=${(x) => x.configurationMode === ConfigurationMode.EDIT}
44
- class="data-source-types"
45
- :value=${sync((x) => x.datasourceType)}
46
- >
47
- <${segmentedItemTag}
48
- :value=${(_) => DatasourceType.FILE}
49
- >
50
- CSV
51
- </${segmentedItemTag}>
52
- <${segmentedItemTag}
53
- :value=${(_) => DatasourceType.DATABASE}
54
- >
55
- Database
56
- </${segmentedItemTag}>
57
- <${segmentedItemTag}
58
- :value=${(_) => DatasourceType.DATA_PIPELINE}
59
- >
60
- Data Pipeline
61
- </${segmentedItemTag}>
62
- </${segmentedControlTag}>
63
-
64
- <${buttonTag}
65
- class="add-datasource"
66
- @click=${(x) => x.addDataSource(DatasourceType[x.datasourceType])}
67
- >
68
- <${iconTag} name="plus" size="md"></${iconTag}>
69
- </${buttonTag}>
70
- </div>
71
- </div>
78
+ ${whenElse((x) => x.reconciliationStrategy === ReconciliationMethod.ONE_TO_ONE, html `
79
+ <label class="data-source-name-label">Add 1st Data Source</label>
80
+ <configuration-datasources
81
+ :configurationMode=${(x) => x.configurationMode}
82
+ ${ref('firstDatasource')}
83
+ :dataPipelineList=${(x) => x.dataPipelineList}
84
+ ></configuration-datasources>
85
+ <${dividerTag}></${dividerTag}>
86
+ <label class="data-source-name-label">Add 2nd Data Source</label>
87
+ <configuration-datasources
88
+ :configurationMode=${(x) => x.configurationMode}
89
+ ${ref('secondDatasource')}
90
+ :dataPipelineList=${(x) => x.dataPipelineList}
91
+ ></configuration-datasources>
92
+ `, html `
93
+ <label class="data-source-name-label">Add New Data Source</label>
94
+ <configuration-datasources
95
+ show-add-button
96
+ :configurationMode=${(x) => x.configurationMode}
97
+ :dataPipelineList=${(x) => x.dataPipelineList}
98
+ @addDatasource=${(x, c) => x.addDataSource(eventDetail(c))}
99
+ ></configuration-datasources>
100
+ `)}
72
101
  </div>
73
102
  </div>
74
-
75
- <div class="configuration-name-and-data-sources-list">
76
- <label class="current-data-source-label">Current Data Sources</label>
77
- <div class="data-source-list">
78
- ${repeat((x) => x.datasources, html `
103
+ ${when((x) => x.reconciliationStrategy !== ReconciliationMethod.ONE_TO_ONE, html `
104
+ <div class="configuration-name-and-data-sources-list">
105
+ <div class="datasources-list-header">
106
+ <label class="current-data-source-label">Current Data Sources</label>
107
+ <label class="current-data-source-label">
108
+ ${(x) => x.reconciliationStrategy === ReconciliationMethod.ONE_TO_MANY ? 'Primary?' : ''}
109
+ </label>
110
+ </div>
111
+ <div class="data-source-list">
112
+ ${repeat((x) => x.datasources, html `
79
113
  <div class="data-source-record ${(x, c) => (c.parent.configurationMode === ConfigurationMode.EDIT ? 'data-source-record-disabled' : '')}" >
80
114
  <span class="data-source-record-name">
81
- <${iconTag} name="file-excel" variant="regular" size="lg" class="excel-icon"></${iconTag}>
115
+ <${badgeTag} fill="${(x) => (x.TYPE === DatasourceType.FILE ? 'success' : 'danger')}" color="text" style="font-size: calc(var(--type-ramp-minus-2-font-size) - 1px); line-height: calc(var(--type-ramp-minus-2-font-size) - 2px);">
116
+ ${(x) => (x.TYPE === DatasourceType.FILE ? 'File' : 'DPL')}
117
+ </${badgeTag}>
82
118
 
83
119
  ${whenElse((x, c) => c.parent.isEditingDatasourceName && x.IS_EDITING, html `
84
120
  <${textFieldTag}
@@ -92,9 +128,9 @@ const configurationNameAndDatasourcesTemplate = html `
92
128
  }
93
129
  return true;
94
130
  }}
95
- @input=${(x, c) => {
96
- x.NAME = c.event.target.value;
97
- }}
131
+ @input=${(x, c) => c.parent.datasourceNameChanged(c.event, c.index)}
132
+
133
+
98
134
  @blur=${(x, c) => {
99
135
  x.IS_EDITING = false;
100
136
  c.parent.isEditingDatasourceName = false;
@@ -118,8 +154,19 @@ const configurationNameAndDatasourcesTemplate = html `
118
154
  </span>
119
155
  `)}
120
156
  `)}
121
- </span>
122
-
157
+ </span>
158
+ <div class="data-source-record-name-label">${(x) => { var _a; return (_a = x.CONFIG_DATA) !== null && _a !== void 0 ? _a : ''; }} </div>
159
+ ${when((x, c) => c.parent.reconciliationStrategy === ReconciliationMethod.ONE_TO_MANY, html `
160
+ <${radioTag}
161
+ :checked=${(x, c) => c.parent.primaryDatasource === x.NAME}
162
+ :value=${(x) => x.NAME}
163
+ @click=${(x, c) => c.parent.onPrimaryDatasourceChange(x.NAME)}
164
+ class="radio-button${(x, c) => c.parent.primaryDatasource === x.NAME ? ' active' : ''}"
165
+ data-test-id=${(x) => `datasource-option-${x.NAME}`}
166
+ >
167
+ </${radioTag}>
168
+ `)}
169
+
123
170
  <span class="data-source-record-delete"
124
171
  @click=${(x, c) => c.parent.deleteDataSource(c.index)}
125
172
  >
@@ -127,8 +174,10 @@ const configurationNameAndDatasourcesTemplate = html `
127
174
  </span>
128
175
  </div>
129
176
  `, { positioning: true })}
130
- </div>
131
- </div>
177
+ </div>
178
+ </div>
179
+ `)}
180
+
132
181
  </div>
133
182
  `;
134
183
  const reconciliationRulesTemplate = html `