@genesislcap/pbc-notify-ui 1.0.24 → 1.0.25

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.
@@ -12,7 +12,6 @@ export declare class FoundationInboxBase extends FASTElement {
12
12
  alertService: AlertService;
13
13
  private alerts;
14
14
  alertsFilter: Alert[];
15
- searchAlertLog: string;
16
15
  ruleService: RuleService;
17
16
  private rules;
18
17
  rulesFilter: Rule[];
@@ -21,6 +20,7 @@ export declare class FoundationInboxBase extends FASTElement {
21
20
  templatesFilter: RuleTemplate[];
22
21
  searchSubscribe: string;
23
22
  ruleTemplateDetails: NotificationRuleTemplateReply;
23
+ selectedTab: InboxTab;
24
24
  tabs: Tabs;
25
25
  connectedCallback(): Promise<void>;
26
26
  open(): Promise<void>;
@@ -30,11 +30,14 @@ export declare class FoundationInboxBase extends FASTElement {
30
30
  alertsChanged: () => Alert[];
31
31
  rulesChanged: () => Rule[];
32
32
  templatesChanged: () => RuleTemplate[];
33
+ searchAlertLog: string;
33
34
  searchAlertLogChanged: () => void;
35
+ private filterAlerts;
34
36
  searchSubscribeChanged: () => void;
35
37
  editAlert(): void;
36
38
  playPauseAlert(ruleClicked: Rule): Promise<void>;
37
39
  deleteAlert(ruleClicked: Rule): Promise<void>;
38
40
  openTemplateSubscription(ruleTemplate: any): Promise<void>;
41
+ dismissAlert(alertId: string): void;
39
42
  }
40
43
  //# sourceMappingURL=inbox-base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inbox-base.d.ts","sourceRoot":"","sources":["../../../../../src/components/foundation-inbox/inbox-base/inbox-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAW,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAc,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACL,KAAK,EACL,6BAA6B,EAC7B,IAAI,EAEJ,YAAY,EACb,MAAM,gBAAgB,CAAC;AAExB,qBAAa,mBAAoB,SAAQ,WAAW;IAC5C,IAAI,EAAE,IAAI,CAAC;IACL,KAAK,EAAE,OAAO,CAAS;IAErB,YAAY,EAAE,YAAY,CAAC;IAC7B,OAAO,CAAC,MAAM,CAAe;IAC7B,YAAY,EAAE,KAAK,EAAE,CAAM;IAC3B,cAAc,EAAE,MAAM,CAAM;IAE3B,WAAW,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,KAAK,CAAc;IAC3B,WAAW,EAAE,IAAI,EAAE,CAAM;IAEpB,mBAAmB,EAAE,eAAe,CAAC;IAC1C,SAAS,EAAE,YAAY,EAAE,CAAM;IAC/B,eAAe,EAAE,YAAY,EAAE,CAAM;IAErC,eAAe,EAAE,MAAM,CAAM;IAC7B,mBAAmB,EAAE,6BAA6B,CAAQ;IAE/D,IAAI,EAAE,IAAI,CAAC;IAEZ,iBAAiB;IAiBV,IAAI;IAMV,KAAK;IAKZ,cAAc,CAAC,QAAQ,EAAE,QAAQ;IAI3B,eAAe,CAAC,QAAQ,EAAE,QAAQ;IAqBxC,aAAa,gBAA2C;IAExD,YAAY,eAAyC;IAErD,gBAAgB,uBAAiD;IAEjE,qBAAqB,aASnB;IAEF,sBAAsB,aASpB;IAKF,SAAS;IAEH,cAAc,CAAC,WAAW,EAAE,IAAI;IAgBhC,WAAW,CAAC,WAAW,EAAE,IAAI;IAQ7B,wBAAwB,CAAC,YAAY,EAAE,GAAG;CAcjD"}
1
+ {"version":3,"file":"inbox-base.d.ts","sourceRoot":"","sources":["../../../../../src/components/foundation-inbox/inbox-base/inbox-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAW,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAc,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACL,KAAK,EACL,6BAA6B,EAC7B,IAAI,EAEJ,YAAY,EACb,MAAM,gBAAgB,CAAC;AAExB,qBAAa,mBAAoB,SAAQ,WAAW;IAC5C,IAAI,EAAE,IAAI,CAAC;IACL,KAAK,EAAE,OAAO,CAAS;IAErB,YAAY,EAAE,YAAY,CAAC;IAC7B,OAAO,CAAC,MAAM,CAAe;IAC7B,YAAY,EAAE,KAAK,EAAE,CAAM;IAE1B,WAAW,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,KAAK,CAAc;IAC3B,WAAW,EAAE,IAAI,EAAE,CAAM;IAEpB,mBAAmB,EAAE,eAAe,CAAC;IAC1C,SAAS,EAAE,YAAY,EAAE,CAAM;IAC/B,eAAe,EAAE,YAAY,EAAE,CAAM;IAErC,eAAe,EAAE,MAAM,CAAM;IAC7B,mBAAmB,EAAE,6BAA6B,CAAQ;IAC1D,WAAW,EAAE,QAAQ,CAAsB;IAEhD,IAAI,EAAE,IAAI,CAAC;IAEZ,iBAAiB;IAkBV,IAAI;IAMV,KAAK;IAKZ,cAAc,CAAC,QAAQ,EAAE,QAAQ;IAI3B,eAAe,CAAC,QAAQ,EAAE,QAAQ;IAwBxC,aAAa,gBAA2C;IAExD,YAAY,eAAyC;IAErD,gBAAgB,uBAAiD;IAErD,cAAc,EAAE,MAAM,CAAM;IACxC,qBAAqB,aAEnB;IAEF,OAAO,CAAC,YAAY;IAUpB,sBAAsB,aASpB;IAKF,SAAS;IAEH,cAAc,CAAC,WAAW,EAAE,IAAI;IAgBhC,WAAW,CAAC,WAAW,EAAE,IAAI;IAQ7B,wBAAwB,CAAC,YAAY,EAAE,GAAG;IAehD,YAAY,CAAC,OAAO,EAAE,MAAM;CAG7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"inbox.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/foundation-inbox/inbox.styles.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,eAAO,MAAM,qBAAqB,iDAkNjC,CAAC"}
1
+ {"version":3,"file":"inbox.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/foundation-inbox/inbox.styles.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,eAAO,MAAM,qBAAqB,iDAyNjC,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import { FoundationInbox } from './inbox';
2
2
  export declare enum InboxTab {
3
- AlertLog = 0,
4
- MyAlerts = 1,
5
- Subscribe = 2
3
+ AlertsNew = 0,
4
+ AlertHistory = 1,
5
+ MyAlerts = 2,
6
+ Subscribe = 3
6
7
  }
7
8
  /**
8
9
  * @public
@@ -1 +1 @@
1
- {"version":3,"file":"inbox.template.d.ts","sourceRoot":"","sources":["../../../../src/components/foundation-inbox/inbox.template.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,oBAAY,QAAQ;IAClB,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,SAAS,IAAA;CACV;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,sEA6KnC,CAAC"}
1
+ {"version":3,"file":"inbox.template.d.ts","sourceRoot":"","sources":["../../../../src/components/foundation-inbox/inbox.template.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI1C,oBAAY,QAAQ;IAClB,SAAS,IAAA;IACT,YAAY,IAAA;IACZ,QAAQ,IAAA;IACR,SAAS,IAAA;CACV;AAgDD;;GAEG;AACH,eAAO,MAAM,uBAAuB,sEAiJnC,CAAC"}
@@ -1,5 +1,7 @@
1
1
  export interface Alert {
2
2
  ALERT_ID: string;
3
+ ALERT_STATUS: AlertStatus;
4
+ CREATED_AT: number;
3
5
  HEADER: string;
4
6
  MESSAGE: string;
5
7
  USER_NAME: string;
@@ -8,6 +10,10 @@ export interface Alert {
8
10
  TABLE_ENTITY_ID: string;
9
11
  TOPIC: string;
10
12
  }
13
+ export declare enum AlertStatus {
14
+ NEW = "NEW",
15
+ DISMISSED = "DISMISSED"
16
+ }
11
17
  export interface Rule {
12
18
  ID: string;
13
19
  NAME: string;
@@ -1 +1 @@
1
- {"version":3,"file":"inbox.types.d.ts","sourceRoot":"","sources":["../../../../src/components/foundation-inbox/inbox.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB,EAAE,MAAM,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,MAAC;IAChB,WAAW,MAAC;IACZ,UAAU,MAAC;IACX,cAAc,MAAC;IACf,YAAY,MAAC;IACb,iBAAiB,MAAC;IAClB,UAAU,MAAC;CACZ;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,uBAAuB,EAAE,MAAM,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB,EAAE,MAAM,CAAC;IAChC,eAAe,EAAE;QACf,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;KACxB,CAAC;IACF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE;QACjB,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;KACzB,CAAC;IACF,UAAU,EAAE,GAAG,CAAC;CACjB;AAED,oBAAY,UAAU;IACpB,OAAO,YAAY;IACnB,QAAQ,aAAa;CACtB"}
1
+ {"version":3,"file":"inbox.types.d.ts","sourceRoot":"","sources":["../../../../src/components/foundation-inbox/inbox.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,WAAW,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,oBAAY,WAAW;IACrB,GAAG,QAAQ;IACX,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB,EAAE,MAAM,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,MAAC;IAChB,WAAW,MAAC;IACZ,UAAU,MAAC;IACX,cAAc,MAAC;IACf,YAAY,MAAC;IACb,iBAAiB,MAAC;IAClB,UAAU,MAAC;CACZ;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,uBAAuB,EAAE,MAAM,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB,EAAE,MAAM,CAAC;IAChC,eAAe,EAAE;QACf,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;KACxB,CAAC;IACF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE;QACjB,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;KACzB,CAAC;IACF,UAAU,EAAE,GAAG,CAAC;CACjB;AAED,oBAAY,UAAU;IACpB,OAAO,YAAY;IACnB,QAAQ,aAAa;CACtB"}
@@ -13,24 +13,21 @@ export class FoundationInboxBase extends FASTElement {
13
13
  this.ready = false;
14
14
  this.alerts = [];
15
15
  this.alertsFilter = [];
16
- this.searchAlertLog = '';
17
16
  this.rules = [];
18
17
  this.rulesFilter = [];
19
18
  this.templates = [];
20
19
  this.templatesFilter = [];
21
20
  this.searchSubscribe = '';
22
21
  this.ruleTemplateDetails = null;
22
+ this.selectedTab = InboxTab.AlertsNew;
23
23
  // #endregion
24
24
  // #region Changed Events
25
25
  this.alertsChanged = () => (this.alertsFilter = this.alerts);
26
26
  this.rulesChanged = () => (this.rulesFilter = this.rules);
27
27
  this.templatesChanged = () => (this.templatesFilter = this.templates);
28
+ this.searchAlertLog = '';
28
29
  this.searchAlertLogChanged = () => {
29
- if (!this.searchAlertLog) {
30
- this.alertsFilter = this.alerts;
31
- return;
32
- }
33
- this.alertsFilter = this.alerts.filter((item) => item.HEADER.toLowerCase().startsWith(this.searchAlertLog.toLowerCase()));
30
+ this.filterAlerts();
34
31
  };
35
32
  this.searchSubscribeChanged = () => {
36
33
  if (!this.searchSubscribe) {
@@ -39,7 +36,6 @@ export class FoundationInboxBase extends FASTElement {
39
36
  }
40
37
  this.templatesFilter = this.templates.filter((item) => item.NAME.toLowerCase().startsWith(this.searchSubscribe.toLowerCase()));
41
38
  };
42
- // #endregion
43
39
  }
44
40
  connectedCallback() {
45
41
  const _super = Object.create(null, {
@@ -55,6 +51,7 @@ export class FoundationInboxBase extends FASTElement {
55
51
  return;
56
52
  }
57
53
  this.alerts = updateArray((_a = streamMessage.ROW) !== null && _a !== void 0 ? _a : null, this.alerts);
54
+ this.filterAlerts();
58
55
  },
59
56
  error: (error) => {
60
57
  logger.error(error);
@@ -78,9 +75,12 @@ export class FoundationInboxBase extends FASTElement {
78
75
  }
79
76
  inboxTabChanged(inboxTab) {
80
77
  return __awaiter(this, void 0, void 0, function* () {
78
+ this.selectedTab = inboxTab;
81
79
  this.ruleTemplateDetails = null;
82
80
  switch (inboxTab) {
83
- case InboxTab.AlertLog:
81
+ case InboxTab.AlertsNew:
82
+ case InboxTab.AlertHistory:
83
+ this.filterAlerts();
84
84
  break;
85
85
  case InboxTab.MyAlerts:
86
86
  this.rules = yield this.ruleService.getRules();
@@ -94,6 +94,12 @@ export class FoundationInboxBase extends FASTElement {
94
94
  }
95
95
  });
96
96
  }
97
+ filterAlerts() {
98
+ this.alertsFilter = this.alerts.filter((alert) => (!this.searchAlertLog ||
99
+ alert.HEADER.toLowerCase().startsWith(this.searchAlertLog.toLowerCase())) &&
100
+ ((this.selectedTab === InboxTab.AlertsNew && alert.ALERT_STATUS === 'NEW') ||
101
+ (this.selectedTab === InboxTab.AlertHistory && alert.ALERT_STATUS !== 'NEW')));
102
+ }
97
103
  // #endregion
98
104
  // #region My Alerts
99
105
  // TODO:
@@ -133,6 +139,10 @@ export class FoundationInboxBase extends FASTElement {
133
139
  this.ruleTemplateDetails = yield this.ruleTemplateService.getRuleTemplateDetails(ruleTemplate.ID);
134
140
  });
135
141
  }
142
+ // #endregion
143
+ dismissAlert(alertId) {
144
+ this.alertService.dismissNotifyAlert(alertId);
145
+ }
136
146
  }
137
147
  __decorate([
138
148
  Auth
@@ -149,9 +159,6 @@ __decorate([
149
159
  __decorate([
150
160
  observable
151
161
  ], FoundationInboxBase.prototype, "alertsFilter", void 0);
152
- __decorate([
153
- observable
154
- ], FoundationInboxBase.prototype, "searchAlertLog", void 0);
155
162
  __decorate([
156
163
  RuleService
157
164
  ], FoundationInboxBase.prototype, "ruleService", void 0);
@@ -176,3 +183,9 @@ __decorate([
176
183
  __decorate([
177
184
  observable
178
185
  ], FoundationInboxBase.prototype, "ruleTemplateDetails", void 0);
186
+ __decorate([
187
+ observable
188
+ ], FoundationInboxBase.prototype, "selectedTab", void 0);
189
+ __decorate([
190
+ observable
191
+ ], FoundationInboxBase.prototype, "searchAlertLog", void 0);
@@ -123,6 +123,7 @@ export const FoundationInboxStyles = css `
123
123
 
124
124
  .toast-content {
125
125
  display: flex;
126
+ position: relative;
126
127
  flex-direction: column;
127
128
  width: 100%;
128
129
  margin: calc(var(--design-unit) * 2px) calc(var(--design-unit) * 0px)
@@ -212,4 +213,10 @@ export const FoundationInboxStyles = css `
212
213
  .rule-action-delete {
213
214
  cursor: pointer;
214
215
  }
216
+
217
+ .close-icon {
218
+ position: absolute;
219
+ right: calc(var(--design-unit) * 2px);
220
+ cursor: pointer;
221
+ }
215
222
  `;
@@ -1,26 +1,75 @@
1
1
  import { sync } from '@genesislcap/foundation-utils';
2
2
  import { html, ref, repeat, when } from '@microsoft/fast-element';
3
3
  import { NotifyPermission } from '../../utils/notifyPermissions';
4
+ import { AlertStatus } from './inbox.types';
4
5
  import { getFormattedDate, getIcon, getSeverityColor, getStatus } from './inbox.utils';
5
6
  export var InboxTab;
6
7
  (function (InboxTab) {
7
- InboxTab[InboxTab["AlertLog"] = 0] = "AlertLog";
8
- InboxTab[InboxTab["MyAlerts"] = 1] = "MyAlerts";
9
- InboxTab[InboxTab["Subscribe"] = 2] = "Subscribe";
8
+ InboxTab[InboxTab["AlertsNew"] = 0] = "AlertsNew";
9
+ InboxTab[InboxTab["AlertHistory"] = 1] = "AlertHistory";
10
+ InboxTab[InboxTab["MyAlerts"] = 2] = "MyAlerts";
11
+ InboxTab[InboxTab["Subscribe"] = 3] = "Subscribe";
10
12
  })(InboxTab || (InboxTab = {}));
13
+ const alertsTab = (tab) => html `
14
+ <zero-tab-panel
15
+ slot="alert-log-tab"
16
+ class="alert-log-tab-panel"
17
+ id=${tab}
18
+ style=${(x) => x.checkActiveTab(tab)}
19
+ >
20
+ <div class="search">
21
+ <zero-text-field
22
+ class="search-input"
23
+ :value=${sync((x) => x.searchAlertLog)}
24
+ placeholder="Search Alerts..."
25
+ autocomplete="off"
26
+ ></zero-text-field>
27
+ </div>
28
+ <div class="alert-log-tab-content">
29
+ ${repeat((x) => x.alertsFilter, html `
30
+ <div class="toast" id=${(x) => x.ALERT_ID}>
31
+ <div
32
+ class="toast-severity"
33
+ style="background-color: ${(x) => getSeverityColor(x.NOTIFY_SEVERITY)}"
34
+ ></div>
35
+ <div class="toast-content">
36
+ ${when((x) => x.ALERT_STATUS === AlertStatus.NEW, html `
37
+ <div class="close-icon" @click=${(x, c) => c.parent.dismissAlert(x.ALERT_ID)}>
38
+ <zero-icon name="times"></zero-icon>
39
+ </div>
40
+ `)}
41
+ <span class="toast-header">${(x) => x.HEADER}</span>
42
+ <span class="toast-message">${(x) => x.MESSAGE}</span>
43
+ <div class="toast-bottom" slot="bottom">
44
+ <span class="toast-date" slot="date">${(x) => getFormattedDate(x.CREATED_AT)}</span>
45
+ </div>
46
+ </div>
47
+ </div>
48
+ `)}
49
+ </div>
50
+ </zero-tab-panel>
51
+ `;
11
52
  /**
12
53
  * @public
13
54
  */
14
55
  export const FoundationInboxTemplate = html `
15
56
  <div class="inbox-content">
16
- <zero-tabs ${ref('tabs')} appearance="secondary" activeid=${(x) => InboxTab.AlertLog}>
57
+ <zero-tabs ${ref('tabs')} appearance="secondary" activeid=${(x) => InboxTab.AlertsNew}>
17
58
  <zero-tab
18
59
  slot="alert-log-tab"
19
- id=${InboxTab.AlertLog}
20
- @click=${(x) => x.inboxTabChanged(InboxTab.AlertLog)}
60
+ id=${InboxTab.AlertsNew}
61
+ @click=${(x) => x.inboxTabChanged(InboxTab.AlertsNew)}
21
62
  appearance="secondary"
22
63
  >
23
- Alert Log
64
+ Alerts
65
+ </zero-tab>
66
+ <zero-tab
67
+ slot="alert-log-tab"
68
+ id=${InboxTab.AlertHistory}
69
+ @click=${(x) => x.inboxTabChanged(InboxTab.AlertHistory)}
70
+ appearance="secondary"
71
+ >
72
+ Alert History
24
73
  </zero-tab>
25
74
  ${when((x) => { var _a; return (_a = x.auth.currentUser) === null || _a === void 0 ? void 0 : _a.hasPermission(NotifyPermission.NotificationRuleView); }, html `
26
75
  <zero-tab
@@ -29,7 +78,7 @@ export const FoundationInboxTemplate = html `
29
78
  @click=${(x) => x.inboxTabChanged(InboxTab.MyAlerts)}
30
79
  appearance="secondary"
31
80
  >
32
- My Alerts
81
+ Subscriptions
33
82
  </zero-tab>
34
83
  `)}
35
84
  ${when((x) => { var _a; return (_a = x.auth.currentUser) === null || _a === void 0 ? void 0 : _a.hasPermission(NotifyPermission.NotificationRuleTemplateView); }, html `
@@ -44,40 +93,7 @@ export const FoundationInboxTemplate = html `
44
93
  `)}
45
94
 
46
95
  <!-- Alerts -->
47
- <zero-tab-panel
48
- slot="alert-log-tab"
49
- class="alert-log-tab-panel"
50
- id=${InboxTab.AlertLog}
51
- style=${(x) => x.checkActiveTab(InboxTab.AlertLog)}
52
- >
53
- <div class="search">
54
- <zero-text-field
55
- class="search-input"
56
- :value=${sync((x) => x.searchAlertLog)}
57
- placeholder="Search Alerts..."
58
- autocomplete="off"
59
- ></zero-text-field>
60
- </div>
61
- <div class="alert-log-tab-content">
62
- ${repeat((x) => x.alertsFilter, html `
63
- <div class="toast" id=${(x) => x.ALERT_ID}>
64
- <div
65
- class="toast-severity"
66
- style="background-color: ${(x) => getSeverityColor(x.NOTIFY_SEVERITY)}"
67
- ></div>
68
- <div class="toast-content">
69
- <span class="toast-header">${(x) => x.HEADER}</span>
70
- <span class="toast-message">${(x) => x.MESSAGE}</span>
71
- <div class="toast-bottom" slot="bottom">
72
- <span class="toast-date" slot="date">
73
- ${(x) => getFormattedDate(x.CREATED_AT)}
74
- </span>
75
- </div>
76
- </div>
77
- </div>
78
- `)}
79
- </div>
80
- </zero-tab-panel>
96
+ ${(x) => alertsTab(InboxTab.AlertsNew)} ${(x) => alertsTab(InboxTab.AlertHistory)}
81
97
  ${when((x) => { var _a; return (_a = x.auth.currentUser) === null || _a === void 0 ? void 0 : _a.hasPermission(NotifyPermission.NotificationRuleView); }, html `
82
98
  <!-- Rules -->
83
99
  <zero-tab-panel
@@ -1,3 +1,8 @@
1
+ export var AlertStatus;
2
+ (function (AlertStatus) {
3
+ AlertStatus["NEW"] = "NEW";
4
+ AlertStatus["DISMISSED"] = "DISMISSED";
5
+ })(AlertStatus || (AlertStatus = {}));
1
6
  export var RuleStatus;
2
7
  (function (RuleStatus) {
3
8
  RuleStatus["ENABLED"] = "ENABLED";
@@ -23,8 +23,8 @@ let RuleDialog = class RuleDialog extends FASTElement {
23
23
  this.resources = [];
24
24
  }
25
25
  openDialog(params) {
26
- var _a, _b, _c;
27
26
  return __awaiter(this, void 0, void 0, function* () {
27
+ var _a, _b, _c;
28
28
  this.resources = yield this.systemService.getResources();
29
29
  this.topics = yield this.notifyService.getNotifyRouteTopics();
30
30
  this.ruleDialogMode = params.mode;
@@ -24,8 +24,8 @@ let TemplateDialog = class TemplateDialog extends FASTElement {
24
24
  this.topics = [];
25
25
  }
26
26
  openDialog(params) {
27
- var _a, _b;
28
27
  return __awaiter(this, void 0, void 0, function* () {
28
+ var _a, _b;
29
29
  this.resources = yield this.systemService.getResources(); // TODO: Tables + Views
30
30
  this.topics = yield this.notifyService.getNotifyRouteTopics();
31
31
  this.templateDialogMode = params.mode;
@@ -3,7 +3,7 @@ import { Connect } from '@genesislcap/foundation-comms';
3
3
  import { DI } from '@microsoft/fast-foundation';
4
4
  class AlertServiceImpl {
5
5
  getAlerts() {
6
- return this.connect.stream('ALL_NOTIFY_AUDIT', (streamMessage) => {
6
+ return this.connect.stream('ALL_NOTIFY_ALERT_RECORDS', (streamMessage) => {
7
7
  () => { };
8
8
  }, (x) => { });
9
9
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/pbc-notify-ui",
3
3
  "description": "Genesis PBC Notify UI",
4
- "version": "1.0.24",
4
+ "version": "1.0.25",
5
5
  "license": "SEE LICENSE IN license.txt",
6
6
  "workspaces": [
7
7
  "client"