@genesislcap/pbc-reporting-ui 1.0.388 → 1.0.389

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.
@@ -1 +1 @@
1
- {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../../src/new/components/components.ts"],"names":[],"mappings":"AA+CA;;GAEG;AACH,eAAO,MAAM,6BAA6B,qBAqDzC,CAAC"}
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../../src/new/components/components.ts"],"names":[],"mappings":"AAgDA;;GAEG;AACH,eAAO,MAAM,6BAA6B,qBAsDzC,CAAC"}
@@ -3,7 +3,10 @@ import { GenesisElement } from '@genesislcap/web-core';
3
3
  export declare class Scheduling extends GenesisElement {
4
4
  connect: Connect;
5
5
  timeZones: any;
6
+ get disabledClassNames(): string;
7
+ get enableSchedules(): boolean;
6
8
  connectedCallback(): void;
7
9
  getTimeZones(): Promise<void>;
10
+ toggleSchedule(): void;
8
11
  }
9
12
  //# sourceMappingURL=scheduling.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scheduling.d.ts","sourceRoot":"","sources":["../../../../../../src/new/main/edit-config/scheduling/scheduling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAiB,cAAc,EAAc,MAAM,uBAAuB,CAAC;AAIlF,qBAKa,UAAW,SAAQ,cAAc;IACnC,OAAO,EAAG,OAAO,CAAC;IAEf,SAAS,MAAC;IAEtB,iBAAiB;IAKX,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAoBpC"}
1
+ {"version":3,"file":"scheduling.d.ts","sourceRoot":"","sources":["../../../../../../src/new/main/edit-config/scheduling/scheduling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,+BAA+B,CAAC;AAKhE,OAAO,EAEL,cAAc,EAIf,MAAM,uBAAuB,CAAC;AAK/B,qBAKa,UAAW,SAAQ,cAAc;IACnC,OAAO,EAAG,OAAO,CAAC;IAEf,SAAS,MAAC;IAEtB,IACI,kBAAkB,IAAI,MAAM,CAE/B;IAED,IACI,eAAe,IAAI,OAAO,CAE7B;IAED,iBAAiB;IAKX,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBnC,cAAc;CAiCf"}
@@ -1 +1 @@
1
- {"version":3,"file":"scheduling.styles.d.ts","sourceRoot":"","sources":["../../../../../../src/new/main/edit-config/scheduling/scheduling.styles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM,iDAclB,CAAC"}
1
+ {"version":3,"file":"scheduling.styles.d.ts","sourceRoot":"","sources":["../../../../../../src/new/main/edit-config/scheduling/scheduling.styles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM,iDAmClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"scheduling.template.d.ts","sourceRoot":"","sources":["../../../../../../src/new/main/edit-config/scheduling/scheduling.template.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,eAAO,MAAM,QAAQ,iEAqCpB,CAAC"}
1
+ {"version":3,"file":"scheduling.template.d.ts","sourceRoot":"","sources":["../../../../../../src/new/main/edit-config/scheduling/scheduling.template.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,eAAO,MAAM,QAAQ,iEAwDpB,CAAC"}
@@ -10,6 +10,7 @@ export declare const baseSlice: import("@reduxjs/toolkit").Slice<BaseConfig, {
10
10
  setOutputFormat(state: BaseConfig, action: PayloadAction<{
11
11
  format: ReportOutputTypes;
12
12
  }>): void;
13
+ deleteSchedule(state: BaseConfig): void;
13
14
  }, "baseConfig", "baseConfig", {
14
15
  getConfig(state: BaseConfig): BaseConfig;
15
16
  getConfigTest(state: BaseConfig, test: boolean, test2: boolean): BaseConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"base-config.d.ts","sourceRoot":"","sources":["../../../../../src/new/store/slices/base-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAQxD,eAAO,MAAM,SAAS;uBAKT,UAAU,UACT,oBAAoB,KAAK,UAAU,EAAE,iBAAiB,GAAG,eAAe,CAAC,CAAC;sBAKlE,UAAU,UAAU,cAAc;QAAE,GAAG,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;iBAGzD,UAAU,UAAU,cAAc,UAAU,CAAC;2BAGnC,UAAU,UAAU,cAAc;QAAE,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAC;;qBAStE,UAAU;yBAIN,UAAU,QAAQ,OAAO,SAAS,OAAO;EAMhE,CAAC"}
1
+ {"version":3,"file":"base-config.d.ts","sourceRoot":"","sources":["../../../../../src/new/store/slices/base-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAOxD,eAAO,MAAM,SAAS;uBAKT,UAAU,UACT,oBAAoB,KAAK,UAAU,EAAE,iBAAiB,GAAG,eAAe,CAAC,CAAC;sBAKlE,UAAU,UAAU,cAAc;QAAE,GAAG,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;iBAGzD,UAAU,UAAU,cAAc,UAAU,CAAC;2BAGnC,UAAU,UAAU,cAAc;QAAE,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAC;0BAMjE,UAAU;;qBAMf,UAAU;yBAIN,UAAU,QAAQ,OAAO,SAAS,OAAO;EAMhE,CAAC"}
@@ -45,6 +45,7 @@ export declare const store: import("../types").RootStateFromSlices<(import("@red
45
45
  };
46
46
  type: string;
47
47
  }): void;
48
+ deleteSchedule(state: import("./slices").BaseConfig): void;
48
49
  }, "baseConfig", "baseConfig", {
49
50
  getConfig(state: import("./slices").BaseConfig): import("./slices").BaseConfig;
50
51
  getConfigTest(state: import("./slices").BaseConfig, test: boolean, test2: boolean): import("./slices").BaseConfig;
@@ -206,6 +207,7 @@ export declare const store: import("../types").RootStateFromSlices<(import("@red
206
207
  };
207
208
  type: string;
208
209
  }): void;
210
+ deleteSchedule(state: import("./slices").BaseConfig): void;
209
211
  }, "baseConfig", "baseConfig", {
210
212
  getConfig(state: import("./slices").BaseConfig): import("./slices").BaseConfig;
211
213
  getConfigTest(state: import("./slices").BaseConfig, test: boolean, test2: boolean): import("./slices").BaseConfig;
@@ -370,6 +372,7 @@ export declare const store: import("../types").RootStateFromSlices<(import("@red
370
372
  };
371
373
  type: string;
372
374
  }): void;
375
+ deleteSchedule(state: import("./slices").BaseConfig): void;
373
376
  }, "baseConfig", "baseConfig", {
374
377
  getConfig(state: import("./slices").BaseConfig): import("./slices").BaseConfig;
375
378
  getConfigTest(state: import("./slices").BaseConfig, test: boolean, test2: boolean): import("./slices").BaseConfig;
@@ -531,6 +534,7 @@ export declare const store: import("../types").RootStateFromSlices<(import("@red
531
534
  };
532
535
  type: string;
533
536
  }): void;
537
+ deleteSchedule(state: import("./slices").BaseConfig): void;
534
538
  }, "baseConfig", "baseConfig", {
535
539
  getConfig(state: import("./slices").BaseConfig): import("./slices").BaseConfig;
536
540
  getConfigTest(state: import("./slices").BaseConfig, test: boolean, test2: boolean): import("./slices").BaseConfig;
@@ -692,6 +696,7 @@ export declare const store: import("../types").RootStateFromSlices<(import("@red
692
696
  };
693
697
  type: string;
694
698
  }): void;
699
+ deleteSchedule(state: import("./slices").BaseConfig): void;
695
700
  }, "baseConfig", "baseConfig", {
696
701
  getConfig(state: import("./slices").BaseConfig): import("./slices").BaseConfig;
697
702
  getConfigTest(state: import("./slices").BaseConfig, test: boolean, test2: boolean): import("./slices").BaseConfig;
@@ -853,6 +858,7 @@ export declare const store: import("../types").RootStateFromSlices<(import("@red
853
858
  };
854
859
  type: string;
855
860
  }): void;
861
+ deleteSchedule(state: import("./slices").BaseConfig): void;
856
862
  }, "baseConfig", "baseConfig", {
857
863
  getConfig(state: import("./slices").BaseConfig): import("./slices").BaseConfig;
858
864
  getConfigTest(state: import("./slices").BaseConfig, test: boolean, test2: boolean): import("./slices").BaseConfig;
@@ -1014,6 +1020,7 @@ export declare const store: import("../types").RootStateFromSlices<(import("@red
1014
1020
  };
1015
1021
  type: string;
1016
1022
  }): void;
1023
+ deleteSchedule(state: import("./slices").BaseConfig): void;
1017
1024
  }, "baseConfig", "baseConfig", {
1018
1025
  getConfig(state: import("./slices").BaseConfig): import("./slices").BaseConfig;
1019
1026
  getConfigTest(state: import("./slices").BaseConfig, test: boolean, test2: boolean): import("./slices").BaseConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/new/store/store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,eAAO,MAAM,eAAe,EAAE,eAQ7B,CAAC;AAEF,eAAO,MACL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACL,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACP,WAAW;;;GACX,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACT,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BACT,QAAQ,oDACR,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACR,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBACgD,CAAC;AAE/D,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,OAAO,QAAQ,CAAC;AAE1C,eAAO,MAAM,eAAe,UAAW,eAAe,SAGrD,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,eAGhC,CAAC"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/new/store/store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,eAAO,MAAM,eAAe,EAAE,eAO7B,CAAC;AAEF,eAAO,MACL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACL,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACP,WAAW;;;GACX,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACT,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BACT,QAAQ,oDACR,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QACR,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBACgD,CAAC;AAE/D,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,OAAO,QAAQ,CAAC;AAE1C,eAAO,MAAM,eAAe,UAAW,eAAe,SAGrD,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,eAGhC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../../../src/new/utils/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,eAAO,MAAM,uBAAuB,YACxB,OAAO,cACF,eAAe,KAAG,QAAQ,OAAO,SAAS,EAAE,MAAM,EAAE,CAAC,CAwCnE,CAAC"}
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../../../src/new/utils/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,eAAO,MAAM,uBAAuB,YACxB,OAAO,cACF,eAAe,KAAG,QAAQ,OAAO,SAAS,EAAE,MAAM,EAAE,CAAC,CAqCnE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { EntityManagement } from '@genesislcap/foundation-entity-management';
2
- import { baseComponents, provideDesignSystem, rapidActionsMenu, rapidButton, rapidCard, rapidCheckbox, rapidCombobox, rapidDialog, rapidIcon, rapidListboxOption, rapidMenu, rapidMenuItem, rapidRadio, rapidRadioGroup, rapidSelect, rapidTab, rapidTabPanel, rapidTabs, rapidTextField, rapidTextArea, rapidToast, rapidModal, rapidMultiselect, rapidListbox, rapidNumberField, rapidToastStyles, rapidStepper, rapidStepperTab, rapidStepperTabPanel, rapidTreeItem, rapidProgressRing, rapidSchedulerCronBuilder, RapidRuleExpressionBuilder, } from '@genesislcap/rapid-design-system';
2
+ import { baseComponents, provideDesignSystem, rapidActionsMenu, rapidButton, rapidCard, rapidCheckbox, rapidCombobox, rapidDialog, rapidIcon, rapidListboxOption, rapidMenu, rapidMenuItem, rapidRadio, rapidRadioGroup, rapidSelect, rapidTab, rapidTabPanel, rapidTabs, rapidTextField, rapidTextArea, rapidToast, rapidModal, rapidMultiselect, rapidListbox, rapidNumberField, rapidToastStyles, rapidStepper, rapidStepperTab, rapidStepperTabPanel, rapidTreeItem, rapidProgressRing, rapidSchedulerCronBuilder, rapidSwitch, RapidRuleExpressionBuilder, } from '@genesislcap/rapid-design-system';
3
3
  import { rapidGridComponents, rapidAgActionsMenuRenderer, rapidAgSelectRenderer, } from '@genesislcap/rapid-grid-pro';
4
4
  import { css } from '@genesislcap/web-core';
5
5
  import { foundationAgRowSelectRenderer } from '../../old/components/renderers/row-select.renderer';
@@ -16,7 +16,7 @@ export const registerCommonRapidComponents = async () => {
16
16
  /**
17
17
  * Common across most routes, so batch register these lightweight components upfront.
18
18
  */
19
- rapidActionsMenu(), rapidButton(), rapidCard(), rapidCheckbox(), rapidDialog(), rapidIcon(), rapidListboxOption(), rapidMenu(), rapidMenuItem(), rapidRadio(), rapidRadioGroup(), rapidSelect(), rapidTab(), rapidTabPanel(), rapidTabs(), rapidTextField(), rapidTextArea(), rapidSchedulerCronBuilder(), rapidToast({
19
+ rapidActionsMenu(), rapidButton(), rapidCard(), rapidCheckbox(), rapidDialog(), rapidIcon(), rapidListboxOption(), rapidMenu(), rapidMenuItem(), rapidRadio(), rapidRadioGroup(), rapidSelect(), rapidTab(), rapidTabPanel(), rapidTabs(), rapidTextField(), rapidTextArea(), rapidSchedulerCronBuilder(), rapidSwitch(), rapidToast({
20
20
  styles: css `
21
21
  ${rapidToastStyles}
22
22
  ::slotted(*) {
@@ -18,7 +18,7 @@ let DatasourceConfigItem = class DatasourceConfigItem extends GenesisElement {
18
18
  if (!this.canRemove)
19
19
  throw new Error('Trying to remove final datasource!');
20
20
  if (!this.datasourceKey)
21
- throw new Error('deleteDatasourceHandler - Datasourcekey unset!');
21
+ throw new Error('deleteDatasourceHandler - Datasource key unset!');
22
22
  actions.datasourceConfig.deleteDatasource({
23
23
  key: this.datasourceKey,
24
24
  });
@@ -1,10 +1,17 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { Connect, logger } from '@genesislcap/foundation-comms';
3
- import { showNotificationToast } from '@genesislcap/foundation-notifications';
4
- import { customElement, GenesisElement, observable } from '@genesislcap/web-core';
3
+ import { showNotificationDialog, showNotificationToast, } from '@genesislcap/foundation-notifications';
4
+ import { customElement, GenesisElement, observable, classNames, volatile, } from '@genesislcap/web-core';
5
5
  import { styles } from './scheduling.styles';
6
6
  import { template } from './scheduling.template';
7
+ import { actions, selectors } from '../../../store';
7
8
  let Scheduling = class Scheduling extends GenesisElement {
9
+ get disabledClassNames() {
10
+ return classNames(['disabled', !selectors.baseConfig.getConfig().SCHEDULE]);
11
+ }
12
+ get enableSchedules() {
13
+ return selectors.baseConfig.getConfig().SCHEDULE !== undefined;
14
+ }
8
15
  connectedCallback() {
9
16
  super.connectedCallback();
10
17
  this.getTimeZones();
@@ -27,6 +34,37 @@ let Scheduling = class Scheduling extends GenesisElement {
27
34
  logger.error(e);
28
35
  }
29
36
  }
37
+ toggleSchedule() {
38
+ if (this.enableSchedules) {
39
+ showNotificationDialog({
40
+ title: 'Reporting Config',
41
+ body: 'Disabling schedule will remove the current schedule. Do you want to continue?',
42
+ dialog: {
43
+ confirmingActions: [
44
+ {
45
+ label: 'Confirm',
46
+ action: () => {
47
+ actions.baseConfig.deleteSchedule();
48
+ },
49
+ },
50
+ ],
51
+ dismissingAction: {
52
+ label: 'Dismiss',
53
+ action: () => console.log('Keep schedules'),
54
+ },
55
+ },
56
+ }, 'rapid');
57
+ }
58
+ else {
59
+ actions.baseConfig.updateState({
60
+ key: 'SCHEDULE',
61
+ value: {
62
+ TIME_ZONE: this.timeZones.length > 0 ? this.timeZones[0] : '',
63
+ CRON_EXPRESSION: '0 0 0 * * ?',
64
+ },
65
+ });
66
+ }
67
+ }
30
68
  };
31
69
  __decorate([
32
70
  Connect
@@ -34,6 +72,12 @@ __decorate([
34
72
  __decorate([
35
73
  observable
36
74
  ], Scheduling.prototype, "timeZones", void 0);
75
+ __decorate([
76
+ volatile
77
+ ], Scheduling.prototype, "disabledClassNames", null);
78
+ __decorate([
79
+ volatile
80
+ ], Scheduling.prototype, "enableSchedules", null);
37
81
  Scheduling = __decorate([
38
82
  customElement({
39
83
  name: 'scheduling-config',
@@ -7,11 +7,32 @@ export const styles = css `
7
7
  flex-direction: column;
8
8
  gap: calc(var(--design-unit) * 2px);
9
9
  }
10
+ .container {
11
+ display: flex;
12
+ flex-direction: column;
13
+ gap: calc(var(--design-unit) * 2px);
14
+ }
10
15
 
11
16
  .timezone-container {
12
17
  display: flex;
13
18
  flex-direction: column;
14
19
  gap: calc(var(--design-unit) * 2px);
15
- padding: 0 calc(vaR(--design-unit) * 4px);
20
+ padding: 0 calc(var(--design-unit) * 4px);
21
+ }
22
+
23
+ .enable-schedules {
24
+ padding: calc(var(--design-unit) * 4px);
25
+ display: flex;
26
+ align-items: center;
27
+ gap: calc(var(--design-unit) * 3px);
28
+ }
29
+
30
+ .parent-container.disabled {
31
+ cursor: not-allowed;
32
+ opacity: 50%;
33
+ }
34
+ .container.disabled,
35
+ .container.disabled * {
36
+ pointer-events: none;
16
37
  }
17
38
  `;
@@ -1,13 +1,25 @@
1
1
  import { html, repeat, sync } from '@genesislcap/web-core';
2
2
  import { actions, selectors } from '../../../store';
3
3
  export const template = html `
4
- <div class="timezone-container">
5
- <label class="label">Time Zone</label>
6
- <rapid-combobox
7
- data-test-id="config-report-timezone"
8
- autocomplete="both"
9
- value="${() => { var _a; return ((_a = selectors.baseConfig.getConfig().SCHEDULE) === null || _a === void 0 ? void 0 : _a.TIME_ZONE) || ''; }}"
10
- @change="${(x, ctx) => {
4
+ <div class="container">
5
+ <div class="enable-schedules">
6
+ <rapid-button
7
+ data-test-id="config-enable-schedules"
8
+ appearance=${(x) => (x.enableSchedules ? 'neutral' : 'primary')}
9
+ @click=${(x, c) => x.toggleSchedule()}
10
+ >
11
+ ${(x) => (x.enableSchedules ? 'Disable Schedule' : 'Enable Schedule')}
12
+ </rapid-button>
13
+ </div>
14
+ <div class="parent-container ${(x) => x.disabledClassNames}">
15
+ <div class="container ${(x) => x.disabledClassNames}">
16
+ <div class="timezone-container">
17
+ <label class="label">Time Zone</label>
18
+ <rapid-combobox
19
+ data-test-id="config-report-timezone"
20
+ autocomplete="both"
21
+ value="${() => { var _a; return ((_a = selectors.baseConfig.getConfig().SCHEDULE) === null || _a === void 0 ? void 0 : _a.TIME_ZONE) || ''; }}"
22
+ @change="${(x, ctx) => {
11
23
  var _a;
12
24
  return actions.baseConfig.updateState({
13
25
  key: 'SCHEDULE',
@@ -19,15 +31,15 @@ export const template = html `
19
31
  },
20
32
  });
21
33
  }}"
22
- >
23
- ${repeat((x) => x.timeZones, html `
24
- <rapid-option value="${(x) => x}">${(x) => x}</rapid-option>
25
- `)}
26
- </rapid-combobox>
27
- </div>
28
- <rapid-scheduler-cron-builder
29
- :cron=${sync((x) => { var _a; return ((_a = selectors.baseConfig.getConfig().SCHEDULE) === null || _a === void 0 ? void 0 : _a.CRON_EXPRESSION) || ''; })}
30
- @change="${(_, ctx) => {
34
+ >
35
+ ${repeat((x) => x.timeZones, html `
36
+ <rapid-option value="${(x) => x}">${(x) => x}</rapid-option>
37
+ `)}
38
+ </rapid-combobox>
39
+ </div>
40
+ <rapid-scheduler-cron-builder
41
+ :cron=${sync((x) => { var _a; return ((_a = selectors.baseConfig.getConfig().SCHEDULE) === null || _a === void 0 ? void 0 : _a.CRON_EXPRESSION) || '0 0 0 * * ?'; })}
42
+ @change="${(_, ctx) => {
31
43
  var _a;
32
44
  return actions.baseConfig.updateState({
33
45
  key: 'SCHEDULE',
@@ -37,5 +49,8 @@ export const template = html `
37
49
  },
38
50
  });
39
51
  }}"
40
- ></rapid-scheduler-cron-builder>
52
+ ></rapid-scheduler-cron-builder>
53
+ </div>
54
+ </div>
55
+ </div>
41
56
  `;
@@ -1,7 +1,6 @@
1
1
  import { createSlice } from '@reduxjs/toolkit';
2
2
  const initialState = {
3
3
  DESTINATION_IDS: [],
4
- SCHEDULE: { CRON_EXPRESSION: '0 0 0 * * ?', TIME_ZONE: '' },
5
4
  OUTPUT_DIRECTORY: '/reports',
6
5
  };
7
6
  export const baseSlice = createSlice({
@@ -24,6 +23,9 @@ export const baseSlice = createSlice({
24
23
  delete state.DOCUMENT_TEMPLATE_ID;
25
24
  }
26
25
  },
26
+ deleteSchedule(state) {
27
+ delete state.SCHEDULE;
28
+ }
27
29
  },
28
30
  selectors: {
29
31
  // could add additional params if needed
@@ -4,7 +4,6 @@ export const reduxBlankState = {
4
4
  baseConfig: {
5
5
  DESTINATION_IDS: [],
6
6
  OUTPUT_FORMAT: 'CSV',
7
- SCHEDULE: { CRON_EXPRESSION: '0 0 0 * * ?', TIME_ZONE: '' },
8
7
  OUTPUT_DIRECTORY: '/reports',
9
8
  },
10
9
  datasourceConfig: {},
@@ -12,17 +12,14 @@ export function transformToServerPayload(state) {
12
12
  // horrible destructing
13
13
  export function transformFromServerPaylaod(payload) {
14
14
  const { DATA_SOURCES, ID, NAME, DESCRIPTION, OUTPUT_FORMAT, FILE_NAME, AUTO_DISPATCH, DESTINATION_IDS, SCHEDULES, OUTPUT_DIRECTORY, } = payload;
15
- const baseConfig = {
16
- ID,
15
+ const baseConfig = Object.assign({ ID,
17
16
  NAME,
18
17
  DESCRIPTION,
19
18
  OUTPUT_FORMAT,
20
19
  FILE_NAME,
21
20
  AUTO_DISPATCH,
22
21
  DESTINATION_IDS,
23
- OUTPUT_DIRECTORY,
24
- SCHEDULE: SCHEDULES.length === 0 ? { CRON_EXPRESSION: '0 0 0 * * ?', TIME_ZONE: '' } : SCHEDULES[0],
25
- };
22
+ OUTPUT_DIRECTORY }, (SCHEDULES.length > 0 && { SCHEDULE: SCHEDULES[0] }));
26
23
  return {
27
24
  baseConfig,
28
25
  datasourceConfig: DATA_SOURCES.map(({ KEY, INPUT_TYPE, NAME: DS_NAME, OUTPUT_TYPE, TRANSFORMER_CONFIGURATION }) => ({
@@ -1,5 +1,5 @@
1
1
  export const validateReportingConfig = (connect) => async (config) => {
2
- var _a, _b, _c, _d;
2
+ var _a, _b, _c;
3
3
  const errors = [];
4
4
  const result = await connect.snapshot('ALL_REPORT_CONFIGS');
5
5
  const reportingConfigNames = new Set((_b = (_a = result.ROW) === null || _a === void 0 ? void 0 : _a.filter((d) => !config.baseConfig.ID || d.ID !== config.baseConfig.ID)) === null || _b === void 0 ? void 0 : _b.map((d) => d.NAME));
@@ -15,9 +15,8 @@ export const validateReportingConfig = (connect) => async (config) => {
15
15
  if (!config.baseConfig.OUTPUT_DIRECTORY) {
16
16
  errors.push(`Reporting output directory name unset.`);
17
17
  }
18
- if (!((_c = config.baseConfig.SCHEDULE) === null || _c === void 0 ? void 0 : _c.TIME_ZONE) &&
19
- ((_d = config.baseConfig.SCHEDULE) === null || _d === void 0 ? void 0 : _d.CRON_EXPRESSION) !== '0 0 0 * * ?') {
20
- errors.push(`Reporting config time zone unset.`);
18
+ if (config.baseConfig.SCHEDULE && !((_c = config.baseConfig.SCHEDULE) === null || _c === void 0 ? void 0 : _c.TIME_ZONE)) {
19
+ errors.push(`Reporting config timezone unset or invalid.`);
21
20
  }
22
21
  if (errors.length) {
23
22
  return {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/pbc-reporting-ui",
3
3
  "description": "Genesis PBC Reporting UI",
4
- "version": "1.0.388",
4
+ "version": "1.0.389",
5
5
  "license": "SEE LICENSE IN license.txt",
6
6
  "main": "dist/esm/index.js",
7
7
  "types": "dist/dts/index.d.ts",