@dereekb/dbx-firebase 11.0.21 → 11.1.1

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 (139) hide show
  1. package/esm2022/lib/analytics/analytics.user.source.mjs +1 -1
  2. package/esm2022/lib/auth/auth.mjs +1 -1
  3. package/esm2022/lib/auth/login/login.component.mjs +1 -1
  4. package/esm2022/lib/auth/login/login.email.content.component.mjs +1 -1
  5. package/esm2022/lib/auth/login/login.email.form.component.mjs +1 -1
  6. package/esm2022/lib/auth/login/login.service.mjs +4 -4
  7. package/esm2022/lib/auth/login/register.component.mjs +1 -1
  8. package/esm2022/lib/auth/service/firebase.auth.service.delegate.mjs +3 -3
  9. package/esm2022/lib/auth/service/firebase.auth.service.mjs +1 -1
  10. package/esm2022/lib/development/development.popup.content.component.mjs +1 -1
  11. package/esm2022/lib/development/development.popup.content.form.component.mjs +1 -1
  12. package/esm2022/lib/development/development.widget.mjs +1 -1
  13. package/esm2022/lib/development/development.widget.service.mjs +1 -1
  14. package/esm2022/lib/firebase/firebase.emulator.module.mjs +1 -1
  15. package/esm2022/lib/firebase/firebase.emulator.service.mjs +1 -1
  16. package/esm2022/lib/firestore/firebase.firestore.module.mjs +16 -3
  17. package/esm2022/lib/index.mjs +2 -1
  18. package/esm2022/lib/model/loader/document.loader.instance.mjs +1 -1
  19. package/esm2022/lib/model/modules/model/model.history.component.mjs +1 -1
  20. package/esm2022/lib/model/modules/model/model.history.popover.component.mjs +3 -3
  21. package/esm2022/lib/model/modules/model/model.tracker.service.mjs +4 -4
  22. package/esm2022/lib/model/modules/model/model.types.list.component.mjs +1 -1
  23. package/esm2022/lib/model/modules/model/model.types.service.mjs +7 -4
  24. package/esm2022/lib/model/modules/store/index.mjs +4 -1
  25. package/esm2022/lib/model/modules/store/model.store.module.mjs +5 -3
  26. package/esm2022/lib/model/modules/store/store.collection.change.directive.mjs +1 -1
  27. package/esm2022/lib/model/modules/store/store.collection.change.if.directive.mjs +1 -1
  28. package/esm2022/lib/model/modules/store/store.document.directive.mjs +20 -5
  29. package/esm2022/lib/model/modules/store/store.document.mjs +17 -4
  30. package/esm2022/lib/model/modules/store/store.document.router.directive.mjs +15 -28
  31. package/esm2022/lib/model/modules/store/store.document.router.key.directive.mjs +15 -23
  32. package/esm2022/lib/model/modules/store/store.document.twoway.key.directive.mjs +24 -0
  33. package/esm2022/lib/model/modules/store/store.document.twoway.key.source.directive.mjs +21 -0
  34. package/esm2022/lib/model/modules/store/store.document.twoway.key.source.mjs +16 -0
  35. package/esm2022/lib/model/modules/store/store.subcollection.directive.mjs +1 -1
  36. package/esm2022/lib/model/modules/store/store.subcollection.document.mjs +1 -1
  37. package/esm2022/lib/model/modules/store/store.subcollection.mjs +1 -1
  38. package/esm2022/lib/model/modules/store/store.subcollection.rxjs.mjs +1 -1
  39. package/esm2022/lib/model/service/model.context.mjs +1 -1
  40. package/esm2022/lib/modules/index.mjs +2 -0
  41. package/esm2022/lib/modules/notification/component/index.mjs +5 -0
  42. package/esm2022/lib/modules/notification/component/notificationitem.content.component.mjs +21 -0
  43. package/esm2022/lib/modules/notification/component/notificationitem.list.component.mjs +81 -0
  44. package/esm2022/lib/modules/notification/component/notificationitem.view.component.mjs +44 -0
  45. package/esm2022/lib/modules/notification/component/notificationitem.view.default.component.mjs +25 -0
  46. package/esm2022/lib/modules/notification/component/notificationitem.view.directive.mjs +14 -0
  47. package/esm2022/lib/modules/notification/container/index.mjs +3 -0
  48. package/esm2022/lib/modules/notification/container/notification.item.store.popover.button.component.mjs +52 -0
  49. package/esm2022/lib/modules/notification/container/notification.item.store.popover.component.mjs +47 -0
  50. package/esm2022/lib/modules/notification/index.mjs +5 -0
  51. package/esm2022/lib/modules/notification/notification.module.mjs +102 -0
  52. package/esm2022/lib/modules/notification/service/index.mjs +4 -0
  53. package/esm2022/lib/modules/notification/service/notification.template.service.mjs +28 -0
  54. package/esm2022/lib/modules/notification/service/notificationitem.widget.mjs +11 -0
  55. package/esm2022/lib/modules/notification/service/notificationitem.widget.service.mjs +58 -0
  56. package/esm2022/lib/modules/notification/store/index.mjs +10 -0
  57. package/esm2022/lib/modules/notification/store/notification.item.store.mjs +30 -0
  58. package/esm2022/lib/modules/notification/store/notificationbox.collection.store.directive.mjs +20 -0
  59. package/esm2022/lib/modules/notification/store/notificationbox.collection.store.mjs +16 -0
  60. package/esm2022/lib/modules/notification/store/notificationbox.document.store.directive.mjs +20 -0
  61. package/esm2022/lib/modules/notification/store/notificationbox.document.store.mjs +22 -0
  62. package/esm2022/lib/modules/notification/store/notificationsummary.collection.store.directive.mjs +20 -0
  63. package/esm2022/lib/modules/notification/store/notificationsummary.collection.store.mjs +16 -0
  64. package/esm2022/lib/modules/notification/store/notificationsummary.document.store.directive.mjs +20 -0
  65. package/esm2022/lib/modules/notification/store/notificationsummary.document.store.mjs +34 -0
  66. package/esm2022/lib/modules/notification/store/notificationuser.collection.store.directive.mjs +20 -0
  67. package/esm2022/lib/modules/notification/store/notificationuser.collection.store.mjs +16 -0
  68. package/esm2022/lib/modules/notification/store/notificationuser.document.store.directive.mjs +20 -0
  69. package/esm2022/lib/modules/notification/store/notificationuser.document.store.mjs +18 -0
  70. package/esm2022/lib/pipe/key.pipe.mjs +1 -1
  71. package/fesm2022/dereekb-dbx-firebase.mjs +839 -135
  72. package/fesm2022/dereekb-dbx-firebase.mjs.map +1 -1
  73. package/lib/analytics/analytics.user.source.d.ts +1 -1
  74. package/lib/auth/auth.d.ts +1 -1
  75. package/lib/auth/login/login.component.d.ts +1 -1
  76. package/lib/auth/login/login.email.content.component.d.ts +1 -1
  77. package/lib/auth/login/login.email.form.component.d.ts +1 -1
  78. package/lib/auth/login/register.component.d.ts +1 -1
  79. package/lib/auth/service/firebase.auth.service.d.ts +1 -1
  80. package/lib/development/development.popup.content.component.d.ts +2 -2
  81. package/lib/development/development.popup.content.form.component.d.ts +1 -1
  82. package/lib/development/development.widget.d.ts +2 -2
  83. package/lib/development/development.widget.service.d.ts +1 -1
  84. package/lib/firebase/firebase.emulator.service.d.ts +1 -1
  85. package/lib/firestore/firebase.firestore.module.d.ts +11 -4
  86. package/lib/index.d.ts +1 -0
  87. package/lib/model/loader/document.loader.instance.d.ts +1 -1
  88. package/lib/model/modules/model/model.history.component.d.ts +2 -2
  89. package/lib/model/modules/model/model.history.popover.component.d.ts +2 -2
  90. package/lib/model/modules/model/model.types.list.component.d.ts +2 -2
  91. package/lib/model/modules/model/model.types.service.d.ts +2 -1
  92. package/lib/model/modules/store/index.d.ts +3 -0
  93. package/lib/model/modules/store/model.store.module.d.ts +3 -1
  94. package/lib/model/modules/store/store.collection.change.directive.d.ts +1 -1
  95. package/lib/model/modules/store/store.collection.change.if.directive.d.ts +1 -1
  96. package/lib/model/modules/store/store.document.directive.d.ts +23 -16
  97. package/lib/model/modules/store/store.document.router.directive.d.ts +7 -15
  98. package/lib/model/modules/store/store.document.router.key.directive.d.ts +8 -14
  99. package/lib/model/modules/store/store.document.twoway.key.directive.d.ts +15 -0
  100. package/lib/model/modules/store/store.document.twoway.key.source.d.ts +10 -0
  101. package/lib/model/modules/store/store.document.twoway.key.source.directive.d.ts +13 -0
  102. package/lib/model/modules/store/store.subcollection.d.ts +1 -1
  103. package/lib/model/modules/store/store.subcollection.directive.d.ts +1 -1
  104. package/lib/model/modules/store/store.subcollection.document.d.ts +1 -1
  105. package/lib/model/modules/store/store.subcollection.rxjs.d.ts +1 -1
  106. package/lib/model/service/model.context.d.ts +3 -3
  107. package/lib/modules/index.d.ts +1 -0
  108. package/lib/modules/notification/component/index.d.ts +4 -0
  109. package/lib/modules/notification/component/notificationitem.content.component.d.ts +9 -0
  110. package/lib/modules/notification/component/notificationitem.content.scss +5 -0
  111. package/lib/modules/notification/component/notificationitem.list.component.d.ts +24 -0
  112. package/lib/modules/notification/component/notificationitem.view.component.d.ts +15 -0
  113. package/lib/modules/notification/component/notificationitem.view.default.component.d.ts +9 -0
  114. package/lib/modules/notification/component/notificationitem.view.directive.d.ts +8 -0
  115. package/lib/modules/notification/container/index.d.ts +2 -0
  116. package/lib/modules/notification/container/notification.item.store.popover.button.component.d.ts +17 -0
  117. package/lib/modules/notification/container/notification.item.store.popover.component.d.ts +50 -0
  118. package/lib/modules/notification/index.d.ts +4 -0
  119. package/lib/modules/notification/notification.module.d.ts +30 -0
  120. package/lib/modules/notification/service/index.d.ts +3 -0
  121. package/lib/modules/notification/service/notification.template.service.d.ts +11 -0
  122. package/lib/modules/notification/service/notificationitem.widget.d.ts +26 -0
  123. package/lib/modules/notification/service/notificationitem.widget.service.d.ts +22 -0
  124. package/lib/modules/notification/store/index.d.ts +9 -0
  125. package/lib/modules/notification/store/notification.item.store.d.ts +28 -0
  126. package/lib/modules/notification/store/notificationbox.collection.store.d.ts +8 -0
  127. package/lib/modules/notification/store/notificationbox.collection.store.directive.d.ts +9 -0
  128. package/lib/modules/notification/store/notificationbox.document.store.d.ts +13 -0
  129. package/lib/modules/notification/store/notificationbox.document.store.directive.d.ts +9 -0
  130. package/lib/modules/notification/store/notificationsummary.collection.store.d.ts +8 -0
  131. package/lib/modules/notification/store/notificationsummary.collection.store.directive.d.ts +9 -0
  132. package/lib/modules/notification/store/notificationsummary.document.store.d.ts +21 -0
  133. package/lib/modules/notification/store/notificationsummary.document.store.directive.d.ts +9 -0
  134. package/lib/modules/notification/store/notificationuser.collection.store.d.ts +8 -0
  135. package/lib/modules/notification/store/notificationuser.collection.store.directive.d.ts +9 -0
  136. package/lib/modules/notification/store/notificationuser.document.store.d.ts +11 -0
  137. package/lib/modules/notification/store/notificationuser.document.store.directive.d.ts +9 -0
  138. package/lib/pipe/key.pipe.d.ts +1 -1
  139. package/package.json +1 -1
@@ -0,0 +1,47 @@
1
+ import { Component } from '@angular/core';
2
+ import { AbstractPopoverDirective } from '@dereekb/dbx-web';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@dereekb/dbx-web";
5
+ import * as i2 from "../component/notificationitem.list.component";
6
+ export const DEFAULT_DBX_FIREBASE_NOTIFICATION_ITEM_STORE_POPOVER_KEY = 'notification-item-store-notifications';
7
+ export class DbxFirebaseNotificationItemStorePopoverComponent extends AbstractPopoverDirective {
8
+ static openPopover(popupService, { origin, header, icon, emptyText, makeNotificationItemAnchor, notificationItemsLoadingState$ }, popoverKey) {
9
+ return popupService.open({
10
+ key: popoverKey ?? DEFAULT_DBX_FIREBASE_NOTIFICATION_ITEM_STORE_POPOVER_KEY,
11
+ origin,
12
+ componentClass: DbxFirebaseNotificationItemStorePopoverComponent,
13
+ data: {
14
+ header,
15
+ icon,
16
+ emptyText,
17
+ notificationItemsLoadingState$,
18
+ makeNotificationItemAnchor
19
+ }
20
+ });
21
+ }
22
+ get params() {
23
+ return this.popover.data;
24
+ }
25
+ get icon() {
26
+ return this.params.icon ?? 'notifications';
27
+ }
28
+ get header() {
29
+ return this.params.header ?? 'Notifications';
30
+ }
31
+ get emptyText() {
32
+ return this.params.header ?? 'There are no notifications.';
33
+ }
34
+ get notificationItemsLoadingState$() {
35
+ return this.params.notificationItemsLoadingState$;
36
+ }
37
+ get makeNotificationItemAnchor() {
38
+ return this.params.makeNotificationItemAnchor;
39
+ }
40
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemStorePopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
41
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxFirebaseNotificationItemStorePopoverComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<dbx-popover-content>\n <!-- Header -->\n <dbx-popover-header [icon]=\"icon\" [header]=\"header\"></dbx-popover-header>\n <!-- Content -->\n <dbx-popover-scroll-content>\n <dbx-firebase-notificationitem-list [state$]=\"notificationItemsLoadingState$\" [dbxListItemModifier] [dbxListItemAnchorModifier]=\"makeNotificationItemAnchor\">\n <dbx-list-empty-content empty>\n <p>{{ emptyText }}</p>\n </dbx-list-empty-content>\n </dbx-firebase-notificationitem-list>\n </dbx-popover-scroll-content>\n</dbx-popover-content>\n", dependencies: [{ kind: "directive", type: i1.DbxListItemAnchorModifierDirective, selector: "[dbxListItemAnchorModifier]", inputs: ["dbxListItemAnchorModifier"] }, { kind: "component", type: i1.DbxPopoverContentComponent, selector: "dbx-popover-content" }, { kind: "component", type: i1.DbxPopoverHeaderComponent, selector: "dbx-popover-header", inputs: ["header", "icon"] }, { kind: "component", type: i1.DbxPopoverScrollContentComponent, selector: "dbx-popover-scroll-content" }, { kind: "component", type: i1.DbxListEmptyContentComponent, selector: "dbx-list-empty-content" }, { kind: "directive", type: i1.DbxValueListItemModifierDirective, selector: "[dbxListItemModifier]", inputs: ["dbxListItemModifier"] }, { kind: "component", type: i2.DbxFirebaseNotificationItemListComponent, selector: "dbx-firebase-notificationitem-list" }] });
42
+ }
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemStorePopoverComponent, decorators: [{
44
+ type: Component,
45
+ args: [{ template: "<dbx-popover-content>\n <!-- Header -->\n <dbx-popover-header [icon]=\"icon\" [header]=\"header\"></dbx-popover-header>\n <!-- Content -->\n <dbx-popover-scroll-content>\n <dbx-firebase-notificationitem-list [state$]=\"notificationItemsLoadingState$\" [dbxListItemModifier] [dbxListItemAnchorModifier]=\"makeNotificationItemAnchor\">\n <dbx-list-empty-content empty>\n <p>{{ emptyText }}</p>\n </dbx-list-empty-content>\n </dbx-firebase-notificationitem-list>\n </dbx-popover-scroll-content>\n</dbx-popover-content>\n" }]
46
+ }] });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLml0ZW0uc3RvcmUucG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9jb250YWluZXIvbm90aWZpY2F0aW9uLml0ZW0uc3RvcmUucG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9jb250YWluZXIvbm90aWZpY2F0aW9uLml0ZW0uc3RvcmUucG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSx3QkFBd0IsRUFBNEQsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQXFDdEgsTUFBTSxDQUFDLE1BQU0sd0RBQXdELEdBQUcsdUNBQXVDLENBQUM7QUFLaEgsTUFBTSxPQUFPLGdEQUFpRCxTQUFRLHdCQUFnRjtJQUNwSixNQUFNLENBQUMsV0FBVyxDQUFDLFlBQStCLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsMEJBQTBCLEVBQUUsOEJBQThCLEVBQWlELEVBQUUsVUFBMEI7UUFDNU4sT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDO1lBQ3ZCLEdBQUcsRUFBRSxVQUFVLElBQUksd0RBQXdEO1lBQzNFLE1BQU07WUFDTixjQUFjLEVBQUUsZ0RBQWdEO1lBQ2hFLElBQUksRUFBRTtnQkFDSixNQUFNO2dCQUNOLElBQUk7Z0JBQ0osU0FBUztnQkFDVCw4QkFBOEI7Z0JBQzlCLDBCQUEwQjthQUMzQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBcUQsQ0FBQztJQUM1RSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxlQUFlLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksZUFBZSxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLDZCQUE2QixDQUFDO0lBQzdELENBQUM7SUFFRCxJQUFJLDhCQUE4QjtRQUNoQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsOEJBQThCLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQUksMEJBQTBCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQztJQUNoRCxDQUFDO3dHQXRDVSxnREFBZ0Q7NEZBQWhELGdEQUFnRCwyRUM1QzdELG1pQkFZQTs7NEZEZ0NhLGdEQUFnRDtrQkFINUQsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdQb3BvdmVyUmVmIH0gZnJvbSAnbmctb3ZlcmxheS1jb250YWluZXInO1xuaW1wb3J0IHsgQWJzdHJhY3RQb3BvdmVyRGlyZWN0aXZlLCBBbmNob3JGb3JWYWx1ZUZ1bmN0aW9uLCBEYnhQb3BvdmVyS2V5LCBEYnhQb3BvdmVyU2VydmljZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uSXRlbSB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVN0b3JlUG9wb3ZlclBhcmFtcyB7XG4gIC8qKlxuICAgKiBDdXN0b20gaWNvblxuICAgKlxuICAgKiBEZWZhdWx0cyB0byBcImhpc3RvcnlcIlxuICAgKi9cbiAgcmVhZG9ubHkgaWNvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBoZWFkZXIgdGV4dFxuICAgKlxuICAgKiBEZWZhdWx0cyB0byBcIkhpc3RvcnlcIlxuICAgKi9cbiAgcmVhZG9ubHkgaGVhZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogQ3VzdG9tIGVtcHR5IHRleHQgd2hlbiBubyBpdGVtcyBleGlzdC5cbiAgICovXG4gIHJlYWRvbmx5IGVtcHR5VGV4dD86IHN0cmluZztcbiAgLyoqXG4gICAqIE9yaWdpbiB0byBhZGQgdGhlIHBvcG92ZXIgdG8uXG4gICAqL1xuICByZWFkb25seSBvcmlnaW46IEVsZW1lbnRSZWY7XG4gIC8qKlxuICAgKiBJdGVtcyBsb2FkaW5nIHN0YXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9uSXRlbXNMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxOb3RpZmljYXRpb25JdGVtW10+PjtcbiAgLyoqXG4gICAqIEFuY2hvclxuICAgKi9cbiAgcmVhZG9ubHkgbWFrZU5vdGlmaWNhdGlvbkl0ZW1BbmNob3I/OiBNYXliZTxBbmNob3JGb3JWYWx1ZUZ1bmN0aW9uPE5vdGlmaWNhdGlvbkl0ZW0+Pjtcbn1cblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfREJYX0ZJUkVCQVNFX05PVElGSUNBVElPTl9JVEVNX1NUT1JFX1BPUE9WRVJfS0VZID0gJ25vdGlmaWNhdGlvbi1pdGVtLXN0b3JlLW5vdGlmaWNhdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbi5pdGVtLnN0b3JlLnBvcG92ZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVN0b3JlUG9wb3ZlckNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0UG9wb3ZlckRpcmVjdGl2ZTx1bmtub3duLCBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1TdG9yZVBvcG92ZXJQYXJhbXM+IHtcbiAgc3RhdGljIG9wZW5Qb3BvdmVyKHBvcHVwU2VydmljZTogRGJ4UG9wb3ZlclNlcnZpY2UsIHsgb3JpZ2luLCBoZWFkZXIsIGljb24sIGVtcHR5VGV4dCwgbWFrZU5vdGlmaWNhdGlvbkl0ZW1BbmNob3IsIG5vdGlmaWNhdGlvbkl0ZW1zTG9hZGluZ1N0YXRlJCB9OiBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1TdG9yZVBvcG92ZXJQYXJhbXMsIHBvcG92ZXJLZXk/OiBEYnhQb3BvdmVyS2V5KTogTmdQb3BvdmVyUmVmIHtcbiAgICByZXR1cm4gcG9wdXBTZXJ2aWNlLm9wZW4oe1xuICAgICAga2V5OiBwb3BvdmVyS2V5ID8/IERFRkFVTFRfREJYX0ZJUkVCQVNFX05PVElGSUNBVElPTl9JVEVNX1NUT1JFX1BPUE9WRVJfS0VZLFxuICAgICAgb3JpZ2luLFxuICAgICAgY29tcG9uZW50Q2xhc3M6IERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVN0b3JlUG9wb3ZlckNvbXBvbmVudCxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgaGVhZGVyLFxuICAgICAgICBpY29uLFxuICAgICAgICBlbXB0eVRleHQsXG4gICAgICAgIG5vdGlmaWNhdGlvbkl0ZW1zTG9hZGluZ1N0YXRlJCxcbiAgICAgICAgbWFrZU5vdGlmaWNhdGlvbkl0ZW1BbmNob3JcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldCBwYXJhbXMoKTogRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtU3RvcmVQb3BvdmVyUGFyYW1zIHtcbiAgICByZXR1cm4gdGhpcy5wb3BvdmVyLmRhdGEgYXMgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtU3RvcmVQb3BvdmVyUGFyYW1zO1xuICB9XG5cbiAgZ2V0IGljb24oKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1zLmljb24gPz8gJ25vdGlmaWNhdGlvbnMnO1xuICB9XG5cbiAgZ2V0IGhlYWRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbXMuaGVhZGVyID8/ICdOb3RpZmljYXRpb25zJztcbiAgfVxuXG4gIGdldCBlbXB0eVRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1zLmhlYWRlciA/PyAnVGhlcmUgYXJlIG5vIG5vdGlmaWNhdGlvbnMuJztcbiAgfVxuXG4gIGdldCBub3RpZmljYXRpb25JdGVtc0xvYWRpbmdTdGF0ZSQoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1zLm5vdGlmaWNhdGlvbkl0ZW1zTG9hZGluZ1N0YXRlJDtcbiAgfVxuXG4gIGdldCBtYWtlTm90aWZpY2F0aW9uSXRlbUFuY2hvcigpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbXMubWFrZU5vdGlmaWNhdGlvbkl0ZW1BbmNob3I7XG4gIH1cbn1cbiIsIjxkYngtcG9wb3Zlci1jb250ZW50PlxuICA8IS0tIEhlYWRlciAtLT5cbiAgPGRieC1wb3BvdmVyLWhlYWRlciBbaWNvbl09XCJpY29uXCIgW2hlYWRlcl09XCJoZWFkZXJcIj48L2RieC1wb3BvdmVyLWhlYWRlcj5cbiAgPCEtLSBDb250ZW50IC0tPlxuICA8ZGJ4LXBvcG92ZXItc2Nyb2xsLWNvbnRlbnQ+XG4gICAgPGRieC1maXJlYmFzZS1ub3RpZmljYXRpb25pdGVtLWxpc3QgW3N0YXRlJF09XCJub3RpZmljYXRpb25JdGVtc0xvYWRpbmdTdGF0ZSRcIiBbZGJ4TGlzdEl0ZW1Nb2RpZmllcl0gW2RieExpc3RJdGVtQW5jaG9yTW9kaWZpZXJdPVwibWFrZU5vdGlmaWNhdGlvbkl0ZW1BbmNob3JcIj5cbiAgICAgIDxkYngtbGlzdC1lbXB0eS1jb250ZW50IGVtcHR5PlxuICAgICAgICA8cD57eyBlbXB0eVRleHQgfX08L3A+XG4gICAgICA8L2RieC1saXN0LWVtcHR5LWNvbnRlbnQ+XG4gICAgPC9kYngtZmlyZWJhc2Utbm90aWZpY2F0aW9uaXRlbS1saXN0PlxuICA8L2RieC1wb3BvdmVyLXNjcm9sbC1jb250ZW50PlxuPC9kYngtcG9wb3Zlci1jb250ZW50PlxuIl19
@@ -0,0 +1,5 @@
1
+ export * from './component';
2
+ export * from './store';
3
+ export * from './service';
4
+ export * from './notification.module';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24ubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,102 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { AppNotificationTemplateTypeInfoRecordService } from '@dereekb/firebase';
3
+ import { DbxFirebaseNotificationTemplateService } from './service/notification.template.service';
4
+ import { DbxButtonModule, DbxListLayoutModule, DbxPopoverInteractionModule, DbxRouterListModule, DbxSectionLayoutModule, DbxWidgetModule } from '@dereekb/dbx-web';
5
+ import { DbxFirebaseNotificationItemListComponent, DbxFirebaseNotificationItemListViewComponent, DbxFirebaseNotificationItemListViewItemComponent } from './component/notificationitem.list.component';
6
+ import { CommonModule } from '@angular/common';
7
+ import { DbxFirebaseNotificationBoxDocumentStoreDirective } from './store/notificationbox.document.store.directive';
8
+ import { DbxFirebaseNotificationBoxCollectionStoreDirective } from './store/notificationbox.collection.store.directive';
9
+ import { DbxFirebaseNotificationSummaryCollectionStoreDirective, DbxFirebaseNotificationSummaryDocumentStoreDirective, DbxFirebaseNotificationUserCollectionStoreDirective, DbxFirebaseNotificationUserDocumentStoreDirective } from './store';
10
+ import { DbxFirebaseNotificationItemDefaultViewComponent } from './component/notificationitem.view.default.component';
11
+ import { DbxFirebaseNotificationItemViewComponent } from './component';
12
+ import { DbxValuePipeModule } from '@dereekb/dbx-core';
13
+ import { DbxFirebaseNotificationItemContentComponent } from './component/notificationitem.content.component';
14
+ import { DbxFirebaseNotificationItemStorePopoverButtonComponent, DbxFirebaseNotificationItemStorePopoverComponent } from './container';
15
+ import * as i0 from "@angular/core";
16
+ const declarations = [
17
+ // components
18
+ DbxFirebaseNotificationItemListComponent,
19
+ DbxFirebaseNotificationItemListViewComponent,
20
+ DbxFirebaseNotificationItemListViewItemComponent,
21
+ DbxFirebaseNotificationItemContentComponent,
22
+ DbxFirebaseNotificationItemViewComponent,
23
+ DbxFirebaseNotificationItemDefaultViewComponent,
24
+ // container
25
+ DbxFirebaseNotificationItemStorePopoverButtonComponent,
26
+ DbxFirebaseNotificationItemStorePopoverComponent,
27
+ // stores
28
+ DbxFirebaseNotificationBoxCollectionStoreDirective,
29
+ DbxFirebaseNotificationBoxDocumentStoreDirective,
30
+ DbxFirebaseNotificationSummaryCollectionStoreDirective,
31
+ DbxFirebaseNotificationSummaryDocumentStoreDirective,
32
+ DbxFirebaseNotificationUserCollectionStoreDirective,
33
+ DbxFirebaseNotificationUserDocumentStoreDirective
34
+ ];
35
+ /**
36
+ * Used to initialize the DbxFirebaseNotificationModule.
37
+ */
38
+ export class DbxFirebaseNotificationModule {
39
+ static forRoot(config) {
40
+ const { appNotificationTemplateTypeInfoRecordService } = config;
41
+ const providers = [
42
+ {
43
+ provide: AppNotificationTemplateTypeInfoRecordService,
44
+ useValue: appNotificationTemplateTypeInfoRecordService
45
+ },
46
+ {
47
+ provide: DbxFirebaseNotificationTemplateService,
48
+ useClass: DbxFirebaseNotificationTemplateService
49
+ }
50
+ ];
51
+ return {
52
+ ngModule: DbxFirebaseNotificationModule,
53
+ providers
54
+ };
55
+ }
56
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
57
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationModule, declarations: [
58
+ // components
59
+ DbxFirebaseNotificationItemListComponent,
60
+ DbxFirebaseNotificationItemListViewComponent,
61
+ DbxFirebaseNotificationItemListViewItemComponent,
62
+ DbxFirebaseNotificationItemContentComponent,
63
+ DbxFirebaseNotificationItemViewComponent,
64
+ DbxFirebaseNotificationItemDefaultViewComponent,
65
+ // container
66
+ DbxFirebaseNotificationItemStorePopoverButtonComponent,
67
+ DbxFirebaseNotificationItemStorePopoverComponent,
68
+ // stores
69
+ DbxFirebaseNotificationBoxCollectionStoreDirective,
70
+ DbxFirebaseNotificationBoxDocumentStoreDirective,
71
+ DbxFirebaseNotificationSummaryCollectionStoreDirective,
72
+ DbxFirebaseNotificationSummaryDocumentStoreDirective,
73
+ DbxFirebaseNotificationUserCollectionStoreDirective,
74
+ DbxFirebaseNotificationUserDocumentStoreDirective], imports: [CommonModule, DbxButtonModule, DbxRouterListModule, DbxPopoverInteractionModule, DbxSectionLayoutModule, DbxListLayoutModule, DbxWidgetModule, DbxValuePipeModule], exports: [
75
+ // components
76
+ DbxFirebaseNotificationItemListComponent,
77
+ DbxFirebaseNotificationItemListViewComponent,
78
+ DbxFirebaseNotificationItemListViewItemComponent,
79
+ DbxFirebaseNotificationItemContentComponent,
80
+ DbxFirebaseNotificationItemViewComponent,
81
+ DbxFirebaseNotificationItemDefaultViewComponent,
82
+ // container
83
+ DbxFirebaseNotificationItemStorePopoverButtonComponent,
84
+ DbxFirebaseNotificationItemStorePopoverComponent,
85
+ // stores
86
+ DbxFirebaseNotificationBoxCollectionStoreDirective,
87
+ DbxFirebaseNotificationBoxDocumentStoreDirective,
88
+ DbxFirebaseNotificationSummaryCollectionStoreDirective,
89
+ DbxFirebaseNotificationSummaryDocumentStoreDirective,
90
+ DbxFirebaseNotificationUserCollectionStoreDirective,
91
+ DbxFirebaseNotificationUserDocumentStoreDirective] });
92
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationModule, imports: [CommonModule, DbxButtonModule, DbxRouterListModule, DbxPopoverInteractionModule, DbxSectionLayoutModule, DbxListLayoutModule, DbxWidgetModule, DbxValuePipeModule] });
93
+ }
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationModule, decorators: [{
95
+ type: NgModule,
96
+ args: [{
97
+ imports: [CommonModule, DbxButtonModule, DbxRouterListModule, DbxPopoverInteractionModule, DbxSectionLayoutModule, DbxListLayoutModule, DbxWidgetModule, DbxValuePipeModule],
98
+ declarations,
99
+ exports: declarations
100
+ }]
101
+ }] });
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakYsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDakcsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSwyQkFBMkIsRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuSyxPQUFPLEVBQUUsd0NBQXdDLEVBQUUsNENBQTRDLEVBQUUsZ0RBQWdELEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN2TSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdEQUFnRCxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDcEgsT0FBTyxFQUFFLGtEQUFrRCxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDeEgsT0FBTyxFQUFFLHNEQUFzRCxFQUFFLG9EQUFvRCxFQUFFLG1EQUFtRCxFQUFFLGlEQUFpRCxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQy9PLE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ3RILE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsMkNBQTJDLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUM3RyxPQUFPLEVBQUUsc0RBQXNELEVBQUUsZ0RBQWdELEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBTXZJLE1BQU0sWUFBWSxHQUFHO0lBQ25CLGFBQWE7SUFDYix3Q0FBd0M7SUFDeEMsNENBQTRDO0lBQzVDLGdEQUFnRDtJQUVoRCwyQ0FBMkM7SUFDM0Msd0NBQXdDO0lBQ3hDLCtDQUErQztJQUUvQyxZQUFZO0lBQ1osc0RBQXNEO0lBQ3RELGdEQUFnRDtJQUVoRCxTQUFTO0lBQ1Qsa0RBQWtEO0lBQ2xELGdEQUFnRDtJQUNoRCxzREFBc0Q7SUFDdEQsb0RBQW9EO0lBQ3BELG1EQUFtRDtJQUNuRCxpREFBaUQ7Q0FDbEQsQ0FBQztBQUVGOztHQUVHO0FBTUgsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQTJDO1FBQ3hELE1BQU0sRUFBRSw0Q0FBNEMsRUFBRSxHQUFHLE1BQU0sQ0FBQztRQUVoRSxNQUFNLFNBQVMsR0FBZTtZQUM1QjtnQkFDRSxPQUFPLEVBQUUsNENBQTRDO2dCQUNyRCxRQUFRLEVBQUUsNENBQTRDO2FBQ3ZEO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLHNDQUFzQztnQkFDL0MsUUFBUSxFQUFFLHNDQUFzQzthQUNqRDtTQUNGLENBQUM7UUFFRixPQUFPO1lBQ0wsUUFBUSxFQUFFLDZCQUE2QjtZQUN2QyxTQUFTO1NBQ1YsQ0FBQztJQUNKLENBQUM7d0dBbkJVLDZCQUE2Qjt5R0FBN0IsNkJBQTZCO1lBOUJ4QyxhQUFhO1lBQ2Isd0NBQXdDO1lBQ3hDLDRDQUE0QztZQUM1QyxnREFBZ0Q7WUFFaEQsMkNBQTJDO1lBQzNDLHdDQUF3QztZQUN4QywrQ0FBK0M7WUFFL0MsWUFBWTtZQUNaLHNEQUFzRDtZQUN0RCxnREFBZ0Q7WUFFaEQsU0FBUztZQUNULGtEQUFrRDtZQUNsRCxnREFBZ0Q7WUFDaEQsc0RBQXNEO1lBQ3RELG9EQUFvRDtZQUNwRCxtREFBbUQ7WUFDbkQsaURBQWlELGFBT3ZDLFlBQVksRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLGtCQUFrQjtZQTFCM0ssYUFBYTtZQUNiLHdDQUF3QztZQUN4Qyw0Q0FBNEM7WUFDNUMsZ0RBQWdEO1lBRWhELDJDQUEyQztZQUMzQyx3Q0FBd0M7WUFDeEMsK0NBQStDO1lBRS9DLFlBQVk7WUFDWixzREFBc0Q7WUFDdEQsZ0RBQWdEO1lBRWhELFNBQVM7WUFDVCxrREFBa0Q7WUFDbEQsZ0RBQWdEO1lBQ2hELHNEQUFzRDtZQUN0RCxvREFBb0Q7WUFDcEQsbURBQW1EO1lBQ25ELGlEQUFpRDt5R0FXdEMsNkJBQTZCLFlBSjlCLFlBQVksRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLGtCQUFrQjs7NEZBSWhLLDZCQUE2QjtrQkFMekMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUFFLDJCQUEyQixFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQztvQkFDNUssWUFBWTtvQkFDWixPQUFPLEVBQUUsWUFBWTtpQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFwcE5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZUluZm9SZWNvcmRTZXJ2aWNlIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25UZW1wbGF0ZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2Uvbm90aWZpY2F0aW9uLnRlbXBsYXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4QnV0dG9uTW9kdWxlLCBEYnhMaXN0TGF5b3V0TW9kdWxlLCBEYnhQb3BvdmVySW50ZXJhY3Rpb25Nb2R1bGUsIERieFJvdXRlckxpc3RNb2R1bGUsIERieFNlY3Rpb25MYXlvdXRNb2R1bGUsIERieFdpZGdldE1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtTGlzdENvbXBvbmVudCwgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtTGlzdFZpZXdDb21wb25lbnQsIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbUxpc3RWaWV3SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50L25vdGlmaWNhdGlvbml0ZW0ubGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERieEZpcmViYXNlTm90aWZpY2F0aW9uQm94RG9jdW1lbnRTdG9yZURpcmVjdGl2ZSB9IGZyb20gJy4vc3RvcmUvbm90aWZpY2F0aW9uYm94LmRvY3VtZW50LnN0b3JlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkJveENvbGxlY3Rpb25TdG9yZURpcmVjdGl2ZSB9IGZyb20gJy4vc3RvcmUvbm90aWZpY2F0aW9uYm94LmNvbGxlY3Rpb24uc3RvcmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IERieEZpcmViYXNlTm90aWZpY2F0aW9uU3VtbWFyeUNvbGxlY3Rpb25TdG9yZURpcmVjdGl2ZSwgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnRTdG9yZURpcmVjdGl2ZSwgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25Vc2VyQ29sbGVjdGlvblN0b3JlRGlyZWN0aXZlLCBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvblVzZXJEb2N1bWVudFN0b3JlRGlyZWN0aXZlIH0gZnJvbSAnLi9zdG9yZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1EZWZhdWx0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50L25vdGlmaWNhdGlvbml0ZW0udmlldy5kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1WaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4VmFsdWVQaXBlTW9kdWxlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50L25vdGlmaWNhdGlvbml0ZW0uY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtU3RvcmVQb3BvdmVyQnV0dG9uQ29tcG9uZW50LCBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1TdG9yZVBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbnRhaW5lcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25Nb2R1bGVDb25maWcge1xuICByZWFkb25seSBhcHBOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGVJbmZvUmVjb3JkU2VydmljZTogQXBwTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mb1JlY29yZFNlcnZpY2U7XG59XG5cbmNvbnN0IGRlY2xhcmF0aW9ucyA9IFtcbiAgLy8gY29tcG9uZW50c1xuICBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1MaXN0Q29tcG9uZW50LFxuICBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1MaXN0Vmlld0NvbXBvbmVudCxcbiAgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtTGlzdFZpZXdJdGVtQ29tcG9uZW50LFxuXG4gIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbUNvbnRlbnRDb21wb25lbnQsXG4gIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVZpZXdDb21wb25lbnQsXG4gIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbURlZmF1bHRWaWV3Q29tcG9uZW50LFxuXG4gIC8vIGNvbnRhaW5lclxuICBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1TdG9yZVBvcG92ZXJCdXR0b25Db21wb25lbnQsXG4gIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVN0b3JlUG9wb3ZlckNvbXBvbmVudCxcblxuICAvLyBzdG9yZXNcbiAgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25Cb3hDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmUsXG4gIERieEZpcmViYXNlTm90aWZpY2F0aW9uQm94RG9jdW1lbnRTdG9yZURpcmVjdGl2ZSxcbiAgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25TdW1tYXJ5Q29sbGVjdGlvblN0b3JlRGlyZWN0aXZlLFxuICBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvblN1bW1hcnlEb2N1bWVudFN0b3JlRGlyZWN0aXZlLFxuICBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvblVzZXJDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmUsXG4gIERieEZpcmViYXNlTm90aWZpY2F0aW9uVXNlckRvY3VtZW50U3RvcmVEaXJlY3RpdmVcbl07XG5cbi8qKlxuICogVXNlZCB0byBpbml0aWFsaXplIHRoZSBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbk1vZHVsZS5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRGJ4QnV0dG9uTW9kdWxlLCBEYnhSb3V0ZXJMaXN0TW9kdWxlLCBEYnhQb3BvdmVySW50ZXJhY3Rpb25Nb2R1bGUsIERieFNlY3Rpb25MYXlvdXRNb2R1bGUsIERieExpc3RMYXlvdXRNb2R1bGUsIERieFdpZGdldE1vZHVsZSwgRGJ4VmFsdWVQaXBlTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zLFxuICBleHBvcnRzOiBkZWNsYXJhdGlvbnNcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25Nb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IERieEZpcmViYXNlTm90aWZpY2F0aW9uTW9kdWxlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbk1vZHVsZT4ge1xuICAgIGNvbnN0IHsgYXBwTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mb1JlY29yZFNlcnZpY2UgfSA9IGNvbmZpZztcblxuICAgIGNvbnN0IHByb3ZpZGVyczogUHJvdmlkZXJbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogQXBwTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mb1JlY29yZFNlcnZpY2UsXG4gICAgICAgIHVzZVZhbHVlOiBhcHBOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGVJbmZvUmVjb3JkU2VydmljZVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25UZW1wbGF0ZVNlcnZpY2UsXG4gICAgICAgIHVzZUNsYXNzOiBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvblRlbXBsYXRlU2VydmljZVxuICAgICAgfVxuICAgIF07XG5cbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERieEZpcmViYXNlTm90aWZpY2F0aW9uTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -0,0 +1,4 @@
1
+ export * from './notification.template.service';
2
+ export * from './notificationitem.widget.service';
3
+ export * from './notificationitem.widget';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9zZXJ2aWNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24udGVtcGxhdGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbml0ZW0ud2lkZ2V0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb25pdGVtLndpZGdldCc7XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import { Injectable, inject } from '@angular/core';
2
+ import { AppNotificationTemplateTypeInfoRecordService } from '@dereekb/firebase';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Client-side service used for retrieving notification templates.
6
+ */
7
+ export class DbxFirebaseNotificationTemplateService {
8
+ appNotificationTemplateTypeInfoRecordService = inject(AppNotificationTemplateTypeInfoRecordService);
9
+ notificationItemSubjectMessagePairForNotificationSummaryItem(item) {
10
+ const templateType = item.t;
11
+ const templateDetails = this.appNotificationTemplateTypeInfoRecordService.appNotificationTemplateTypeInfoRecord[templateType];
12
+ const subject = item.s ?? templateDetails.name;
13
+ const message = item.g ?? '';
14
+ const date = item.cat;
15
+ return {
16
+ item,
17
+ subject,
18
+ message,
19
+ date
20
+ };
21
+ }
22
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationTemplateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
23
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationTemplateService });
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationTemplateService, decorators: [{
26
+ type: Injectable
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnRlbXBsYXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9zZXJ2aWNlL25vdGlmaWNhdGlvbi50ZW1wbGF0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSw0Q0FBNEMsRUFBa0YsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFaks7O0dBRUc7QUFFSCxNQUFNLE9BQU8sc0NBQXNDO0lBQ3hDLDRDQUE0QyxHQUFHLE1BQU0sQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO0lBRTdHLDREQUE0RCxDQUEwQyxJQUF5QjtRQUM3SCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzVCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyw0Q0FBNEMsQ0FBQyxxQ0FBcUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUU5SCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUM7UUFDL0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUV0QixPQUFPO1lBQ0wsSUFBSTtZQUNKLE9BQU87WUFDUCxPQUFPO1lBQ1AsSUFBSTtTQUNMLENBQUM7SUFDSixDQUFDO3dHQWpCVSxzQ0FBc0M7NEdBQXRDLHNDQUFzQzs7NEZBQXRDLHNDQUFzQztrQkFEbEQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXBwTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mb1JlY29yZFNlcnZpY2UsIE5vdGlmaWNhdGlvbkl0ZW0sIE5vdGlmaWNhdGlvbkl0ZW1NZXRhZGF0YSwgTm90aWZpY2F0aW9uSXRlbVN1YmplY3RNZXNzYWdlUGFpciB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcblxuLyoqXG4gKiBDbGllbnQtc2lkZSBzZXJ2aWNlIHVzZWQgZm9yIHJldHJpZXZpbmcgbm90aWZpY2F0aW9uIHRlbXBsYXRlcy5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlTm90aWZpY2F0aW9uVGVtcGxhdGVTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgYXBwTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mb1JlY29yZFNlcnZpY2UgPSBpbmplY3QoQXBwTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mb1JlY29yZFNlcnZpY2UpO1xuXG4gIG5vdGlmaWNhdGlvbkl0ZW1TdWJqZWN0TWVzc2FnZVBhaXJGb3JOb3RpZmljYXRpb25TdW1tYXJ5SXRlbTxEIGV4dGVuZHMgTm90aWZpY2F0aW9uSXRlbU1ldGFkYXRhID0ge30+KGl0ZW06IE5vdGlmaWNhdGlvbkl0ZW08RD4pOiBOb3RpZmljYXRpb25JdGVtU3ViamVjdE1lc3NhZ2VQYWlyPEQ+IHtcbiAgICBjb25zdCB0ZW1wbGF0ZVR5cGUgPSBpdGVtLnQ7XG4gICAgY29uc3QgdGVtcGxhdGVEZXRhaWxzID0gdGhpcy5hcHBOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGVJbmZvUmVjb3JkU2VydmljZS5hcHBOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGVJbmZvUmVjb3JkW3RlbXBsYXRlVHlwZV07XG5cbiAgICBjb25zdCBzdWJqZWN0ID0gaXRlbS5zID8/IHRlbXBsYXRlRGV0YWlscy5uYW1lO1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBpdGVtLmcgPz8gJyc7XG4gICAgY29uc3QgZGF0ZSA9IGl0ZW0uY2F0O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGl0ZW0sXG4gICAgICBzdWJqZWN0LFxuICAgICAgbWVzc2FnZSxcbiAgICAgIGRhdGVcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Prefix used by all widgets.
3
+ *
4
+ * Does not include the "-" between the prefix and the template type returned by dbxWidgetTypeForNotificationTemplateType().
5
+ */
6
+ export const FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE_PREFIX = 'dbxFirebaseNotificationItem';
7
+ export const DEFAULT_FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE = `${FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE_PREFIX}Default`;
8
+ export function dbxWidgetTypeForNotificationTemplateType(notificationTemplateType) {
9
+ return `${FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE_PREFIX}-${notificationTemplateType}`;
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uaXRlbS53aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9zZXJ2aWNlL25vdGlmaWNhdGlvbml0ZW0ud2lkZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSw2Q0FBNkMsR0FBVyw2QkFBNkIsQ0FBQztBQUVuRyxNQUFNLENBQUMsTUFBTSw4Q0FBOEMsR0FBa0IsR0FBRyw2Q0FBNkMsU0FBUyxDQUFDO0FBRXZJLE1BQU0sVUFBVSx3Q0FBd0MsQ0FBQyx3QkFBa0Q7SUFDekcsT0FBTyxHQUFHLDZDQUE2QyxJQUFJLHdCQUF3QixFQUFFLENBQUM7QUFDeEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERieFdpZGdldEVudHJ5LCBEYnhXaWRnZXRUeXBlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGUsIE5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZUluZm8gfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5cbi8qKlxuICogUHJlZml4IHVzZWQgYnkgYWxsIHdpZGdldHMuXG4gKlxuICogRG9lcyBub3QgaW5jbHVkZSB0aGUgXCItXCIgYmV0d2VlbiB0aGUgcHJlZml4IGFuZCB0aGUgdGVtcGxhdGUgdHlwZSByZXR1cm5lZCBieSBkYnhXaWRnZXRUeXBlRm9yTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlKCkuXG4gKi9cbmV4cG9ydCBjb25zdCBGSVJFQkFTRV9OT1RJRklDQVRJT05fSVRFTV9XSURHRVRfVFlQRV9QUkVGSVg6IHN0cmluZyA9ICdkYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW0nO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9GSVJFQkFTRV9OT1RJRklDQVRJT05fSVRFTV9XSURHRVRfVFlQRTogRGJ4V2lkZ2V0VHlwZSA9IGAke0ZJUkVCQVNFX05PVElGSUNBVElPTl9JVEVNX1dJREdFVF9UWVBFX1BSRUZJWH1EZWZhdWx0YDtcblxuZXhwb3J0IGZ1bmN0aW9uIGRieFdpZGdldFR5cGVGb3JOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGUobm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlOiBOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGUpOiBEYnhXaWRnZXRUeXBlIHtcbiAgcmV0dXJuIGAke0ZJUkVCQVNFX05PVElGSUNBVElPTl9JVEVNX1dJREdFVF9UWVBFX1BSRUZJWH0tJHtub3RpZmljYXRpb25UZW1wbGF0ZVR5cGV9YDtcbn1cblxuLyoqXG4gKiBVc2VkIGZvciByZWdpc3RlcmluZyBhIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVdpZGdldEVudHJ5LlxuICpcbiAqIFRoZSBub3RpZmljYXRpb25UZW1wbGF0ZVR5cGUgc2hvdWxkIGJlIGtub3duIGJ5IHRoZSBhcHAsIG90aGVyd2lzZSBhIHdhcm5pbmcgbWF5IGJlIHRocm93bi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1XaWRnZXRFbnRyeVJlZ2lzdHJhdGlvbiBleHRlbmRzIE9taXQ8RGJ4V2lkZ2V0RW50cnksICd0eXBlJz4ge1xuICByZWFkb25seSBub3RpZmljYXRpb25UZW1wbGF0ZVR5cGU6IE5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZTtcbn1cblxuLyoqXG4gKiBBIHdpZGdldCB1c2VkIGZvciBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW0gdmlld3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtV2lkZ2V0RW50cnkge1xuICByZWFkb25seSBub3RpZmljYXRpb25UZW1wbGF0ZVR5cGU6IE5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZTtcbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mbzogTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlSW5mbztcbiAgcmVhZG9ubHkgd2lkZ2V0OiBEYnhXaWRnZXRFbnRyeTtcbn1cbiJdfQ==
@@ -0,0 +1,58 @@
1
+ import { Injectable, inject } from '@angular/core';
2
+ import { DbxFirebaseNotificationTemplateService } from './notification.template.service';
3
+ import { DbxWidgetService } from '@dereekb/dbx-web';
4
+ import { DEFAULT_FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE, dbxWidgetTypeForNotificationTemplateType } from './notificationitem.widget';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * Service used for registering widgets used for notification items.
8
+ */
9
+ export class DbxFirebaseNotificationItemWidgetService {
10
+ dbxWidgetService = inject(DbxWidgetService);
11
+ dbxFirebaseNotificationTemplateService = inject(DbxFirebaseNotificationTemplateService);
12
+ _entries = new Map();
13
+ /**
14
+ * Used to register a item widget. If widget for the given type is already registered, this will override it by default.
15
+ *
16
+ * @param provider
17
+ * @param override
18
+ */
19
+ register(provider, override = true) {
20
+ const { componentClass, notificationTemplateType } = provider;
21
+ const widgetType = dbxWidgetTypeForNotificationTemplateType(notificationTemplateType);
22
+ if (override || !this._entries.has(notificationTemplateType)) {
23
+ const notificationTemplateTypeInfo = this.dbxFirebaseNotificationTemplateService.appNotificationTemplateTypeInfoRecordService.appNotificationTemplateTypeInfoRecord[notificationTemplateType];
24
+ if (!notificationTemplateTypeInfo) {
25
+ console.warn(`DbxFirebaseNotificationItemWidgetService.register(): No known template type info was found for notification type: ${notificationTemplateType}. The entry is not being registered.`);
26
+ }
27
+ else {
28
+ const entry = {
29
+ notificationTemplateType,
30
+ notificationTemplateTypeInfo,
31
+ widget: {
32
+ type: widgetType,
33
+ componentClass
34
+ }
35
+ };
36
+ this._entries.set(notificationTemplateType, entry);
37
+ this.dbxWidgetService.register(entry.widget, override);
38
+ return true;
39
+ }
40
+ }
41
+ return false;
42
+ }
43
+ registerDefaultWidget(entry, override = true) {
44
+ return this.dbxWidgetService.register({
45
+ ...entry,
46
+ type: DEFAULT_FIREBASE_NOTIFICATION_ITEM_WIDGET_TYPE
47
+ }, override);
48
+ }
49
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemWidgetService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
50
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemWidgetService, providedIn: 'root' });
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemWidgetService, decorators: [{
53
+ type: Injectable,
54
+ args: [{
55
+ providedIn: 'root'
56
+ }]
57
+ }] });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uaXRlbS53aWRnZXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvbm90aWZpY2F0aW9uL3NlcnZpY2Uvbm90aWZpY2F0aW9uaXRlbS53aWRnZXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RixPQUFPLEVBQWtCLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDhDQUE4QyxFQUE4Rix3Q0FBd0MsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUVqTzs7R0FFRztBQUlILE1BQU0sT0FBTyx3Q0FBd0M7SUFDMUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDNUMsc0NBQXNDLEdBQUcsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFFaEYsUUFBUSxHQUFHLElBQUksR0FBRyxFQUFvRSxDQUFDO0lBRXhHOzs7OztPQUtHO0lBQ0gsUUFBUSxDQUFDLFFBQTRELEVBQUUsV0FBb0IsSUFBSTtRQUM3RixNQUFNLEVBQUUsY0FBYyxFQUFFLHdCQUF3QixFQUFFLEdBQUcsUUFBUSxDQUFDO1FBQzlELE1BQU0sVUFBVSxHQUFHLHdDQUF3QyxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFFdEYsSUFBSSxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFO1lBQzVELE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxDQUFDLHNDQUFzQyxDQUFDLDRDQUE0QyxDQUFDLHFDQUFxQyxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFFOUwsSUFBSSxDQUFDLDRCQUE0QixFQUFFO2dCQUNqQyxPQUFPLENBQUMsSUFBSSxDQUFDLHFIQUFxSCx3QkFBd0Isc0NBQXNDLENBQUMsQ0FBQzthQUNuTTtpQkFBTTtnQkFDTCxNQUFNLEtBQUssR0FBMkM7b0JBQ3BELHdCQUF3QjtvQkFDeEIsNEJBQTRCO29CQUM1QixNQUFNLEVBQUU7d0JBQ04sSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLGNBQWM7cUJBQ2Y7aUJBQ0YsQ0FBQztnQkFFRixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbkQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUN2RCxPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxLQUFtQyxFQUFFLFdBQW9CLElBQUk7UUFDakYsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUNuQztZQUNFLEdBQUcsS0FBSztZQUNSLElBQUksRUFBRSw4Q0FBOEM7U0FDckQsRUFDRCxRQUFRLENBQ1QsQ0FBQztJQUNKLENBQUM7d0dBaERVLHdDQUF3Qzs0R0FBeEMsd0NBQXdDLGNBRnZDLE1BQU07OzRGQUVQLHdDQUF3QztrQkFIcEQsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZSB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IERieEZpcmViYXNlTm90aWZpY2F0aW9uVGVtcGxhdGVTZXJ2aWNlIH0gZnJvbSAnLi9ub3RpZmljYXRpb24udGVtcGxhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBEYnhXaWRnZXRFbnRyeSwgRGJ4V2lkZ2V0U2VydmljZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgREVGQVVMVF9GSVJFQkFTRV9OT1RJRklDQVRJT05fSVRFTV9XSURHRVRfVFlQRSwgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtV2lkZ2V0RW50cnksIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVdpZGdldEVudHJ5UmVnaXN0cmF0aW9uLCBkYnhXaWRnZXRUeXBlRm9yTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlIH0gZnJvbSAnLi9ub3RpZmljYXRpb25pdGVtLndpZGdldCc7XG5cbi8qKlxuICogU2VydmljZSB1c2VkIGZvciByZWdpc3RlcmluZyB3aWRnZXRzIHVzZWQgZm9yIG5vdGlmaWNhdGlvbiBpdGVtcy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtV2lkZ2V0U2VydmljZSB7XG4gIHJlYWRvbmx5IGRieFdpZGdldFNlcnZpY2UgPSBpbmplY3QoRGJ4V2lkZ2V0U2VydmljZSk7XG4gIHJlYWRvbmx5IGRieEZpcmViYXNlTm90aWZpY2F0aW9uVGVtcGxhdGVTZXJ2aWNlID0gaW5qZWN0KERieEZpcmViYXNlTm90aWZpY2F0aW9uVGVtcGxhdGVTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9lbnRyaWVzID0gbmV3IE1hcDxOb3RpZmljYXRpb25UZW1wbGF0ZVR5cGUsIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVdpZGdldEVudHJ5PigpO1xuXG4gIC8qKlxuICAgKiBVc2VkIHRvIHJlZ2lzdGVyIGEgaXRlbSB3aWRnZXQuIElmIHdpZGdldCBmb3IgdGhlIGdpdmVuIHR5cGUgaXMgYWxyZWFkeSByZWdpc3RlcmVkLCB0aGlzIHdpbGwgb3ZlcnJpZGUgaXQgYnkgZGVmYXVsdC5cbiAgICpcbiAgICogQHBhcmFtIHByb3ZpZGVyXG4gICAqIEBwYXJhbSBvdmVycmlkZVxuICAgKi9cbiAgcmVnaXN0ZXIocHJvdmlkZXI6IERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVdpZGdldEVudHJ5UmVnaXN0cmF0aW9uLCBvdmVycmlkZTogYm9vbGVhbiA9IHRydWUpOiBib29sZWFuIHtcbiAgICBjb25zdCB7IGNvbXBvbmVudENsYXNzLCBub3RpZmljYXRpb25UZW1wbGF0ZVR5cGUgfSA9IHByb3ZpZGVyO1xuICAgIGNvbnN0IHdpZGdldFR5cGUgPSBkYnhXaWRnZXRUeXBlRm9yTm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlKG5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZSk7XG5cbiAgICBpZiAob3ZlcnJpZGUgfHwgIXRoaXMuX2VudHJpZXMuaGFzKG5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZSkpIHtcbiAgICAgIGNvbnN0IG5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZUluZm8gPSB0aGlzLmRieEZpcmViYXNlTm90aWZpY2F0aW9uVGVtcGxhdGVTZXJ2aWNlLmFwcE5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZUluZm9SZWNvcmRTZXJ2aWNlLmFwcE5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZUluZm9SZWNvcmRbbm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlXTtcblxuICAgICAgaWYgKCFub3RpZmljYXRpb25UZW1wbGF0ZVR5cGVJbmZvKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtV2lkZ2V0U2VydmljZS5yZWdpc3RlcigpOiBObyBrbm93biB0ZW1wbGF0ZSB0eXBlIGluZm8gd2FzIGZvdW5kIGZvciBub3RpZmljYXRpb24gdHlwZTogJHtub3RpZmljYXRpb25UZW1wbGF0ZVR5cGV9LiBUaGUgZW50cnkgaXMgbm90IGJlaW5nIHJlZ2lzdGVyZWQuYCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBlbnRyeTogRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtV2lkZ2V0RW50cnkgPSB7XG4gICAgICAgICAgbm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlLFxuICAgICAgICAgIG5vdGlmaWNhdGlvblRlbXBsYXRlVHlwZUluZm8sXG4gICAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgICB0eXBlOiB3aWRnZXRUeXBlLFxuICAgICAgICAgICAgY29tcG9uZW50Q2xhc3NcbiAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5fZW50cmllcy5zZXQobm90aWZpY2F0aW9uVGVtcGxhdGVUeXBlLCBlbnRyeSk7XG4gICAgICAgIHRoaXMuZGJ4V2lkZ2V0U2VydmljZS5yZWdpc3RlcihlbnRyeS53aWRnZXQsIG92ZXJyaWRlKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmVnaXN0ZXJEZWZhdWx0V2lkZ2V0KGVudHJ5OiBPbWl0PERieFdpZGdldEVudHJ5LCAndHlwZSc+LCBvdmVycmlkZTogYm9vbGVhbiA9IHRydWUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYnhXaWRnZXRTZXJ2aWNlLnJlZ2lzdGVyKFxuICAgICAge1xuICAgICAgICAuLi5lbnRyeSxcbiAgICAgICAgdHlwZTogREVGQVVMVF9GSVJFQkFTRV9OT1RJRklDQVRJT05fSVRFTV9XSURHRVRfVFlQRVxuICAgICAgfSxcbiAgICAgIG92ZXJyaWRlXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,10 @@
1
+ export * from './notificationsummary.collection.store.directive';
2
+ export * from './notificationsummary.collection.store';
3
+ export * from './notificationsummary.document.store.directive';
4
+ export * from './notificationsummary.document.store';
5
+ export * from './notification.item.store';
6
+ export * from './notificationuser.collection.store.directive';
7
+ export * from './notificationuser.collection.store';
8
+ export * from './notificationuser.document.store.directive';
9
+ export * from './notificationuser.document.store';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9zdG9yZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxtQ0FBbUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uc3VtbWFyeS5jb2xsZWN0aW9uLnN0b3JlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbnN1bW1hcnkuY29sbGVjdGlvbi5zdG9yZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbnN1bW1hcnkuZG9jdW1lbnQuc3RvcmUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uc3VtbWFyeS5kb2N1bWVudC5zdG9yZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi5pdGVtLnN0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9udXNlci5jb2xsZWN0aW9uLnN0b3JlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbnVzZXIuY29sbGVjdGlvbi5zdG9yZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbnVzZXIuZG9jdW1lbnQuc3RvcmUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9udXNlci5kb2N1bWVudC5zdG9yZSc7XG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ComponentStore } from '@ngrx/component-store';
3
+ import { combineLatest, distinctUntilChanged, map, shareReplay } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Store used for selecting a specific NotificationItem from a list of notification items.
7
+ */
8
+ export class DbxFirebaseNotificationItemStore extends ComponentStore {
9
+ constructor() {
10
+ super({
11
+ items: [],
12
+ selectedId: undefined
13
+ });
14
+ }
15
+ // MARK: Accessors
16
+ items$ = this.select((state) => state.items);
17
+ selectedId$ = this.select((state) => state.selectedId).pipe(distinctUntilChanged(), shareReplay(1));
18
+ selectedItem$ = combineLatest([this.items$, this.selectedId$]).pipe(map(([items, selectedId]) => {
19
+ return items.find((item) => item.id === selectedId);
20
+ }), distinctUntilChanged(), shareReplay(1));
21
+ // MARK: State Changes
22
+ setItems = this.updater((state, items) => ({ ...state, items }));
23
+ setSelectedId = this.updater((state, selectedId) => ({ ...state, selectedId }));
24
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
25
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemStore });
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationItemStore, decorators: [{
28
+ type: Injectable
29
+ }], ctorParameters: function () { return []; } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLml0ZW0uc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9zdG9yZS9ub3RpZmljYXRpb24uaXRlbS5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBR3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBYTdFOztHQUVHO0FBRUgsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLGNBQXFEO0lBQ3pHO1FBQ0UsS0FBSyxDQUFDO1lBQ0osS0FBSyxFQUFFLEVBQUU7WUFDVCxVQUFVLEVBQUUsU0FBUztTQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1QsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUU3QyxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXBHLGFBQWEsR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDMUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLEVBQUUsRUFBRTtRQUMxQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssVUFBVSxDQUFDLENBQUM7SUFDdEQsQ0FBQyxDQUFDLEVBQ0Ysb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFRixzQkFBc0I7SUFDYixRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUF5QixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLFVBQWlDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUM7d0dBdkJyRyxnQ0FBZ0M7NEdBQWhDLGdDQUFnQzs7NEZBQWhDLGdDQUFnQztrQkFENUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uSWQsIE5vdGlmaWNhdGlvbkl0ZW0gfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50U3RvcmUgfSBmcm9tICdAbmdyeC9jb21wb25lbnQtc3RvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkl0ZW1TdG9yZVN0YXRlIHtcbiAgLyoqXG4gICAqIFRoZSBOb3RpZmljYXRpb25TdW1tYXJ5IHRvIHB1bGwgaXRlbXMgZnJvbVxuICAgKi9cbiAgcmVhZG9ubHkgaXRlbXM6IE5vdGlmaWNhdGlvbkl0ZW1bXTtcbiAgLyoqXG4gICAqIFRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgaWRcbiAgICovXG4gIHJlYWRvbmx5IHNlbGVjdGVkSWQ6IE1heWJlPE5vdGlmaWNhdGlvbklkPjtcbn1cblxuLyoqXG4gKiBTdG9yZSB1c2VkIGZvciBzZWxlY3RpbmcgYSBzcGVjaWZpYyBOb3RpZmljYXRpb25JdGVtIGZyb20gYSBsaXN0IG9mIG5vdGlmaWNhdGlvbiBpdGVtcy5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlTm90aWZpY2F0aW9uSXRlbVN0b3JlIGV4dGVuZHMgQ29tcG9uZW50U3RvcmU8RGJ4RmlyZWJhc2VOb3RpZmljYXRpb25JdGVtU3RvcmVTdGF0ZT4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih7XG4gICAgICBpdGVtczogW10sXG4gICAgICBzZWxlY3RlZElkOiB1bmRlZmluZWRcbiAgICB9KTtcbiAgfVxuXG4gIC8vIE1BUks6IEFjY2Vzc29yc1xuICByZWFkb25seSBpdGVtcyQgPSB0aGlzLnNlbGVjdCgoc3RhdGUpID0+IHN0YXRlLml0ZW1zKTtcblxuICByZWFkb25seSBzZWxlY3RlZElkJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUuc2VsZWN0ZWRJZCkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgc2VsZWN0ZWRJdGVtJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuaXRlbXMkLCB0aGlzLnNlbGVjdGVkSWQkXSkucGlwZShcbiAgICBtYXAoKFtpdGVtcywgc2VsZWN0ZWRJZF0pID0+IHtcbiAgICAgIHJldHVybiBpdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLmlkID09PSBzZWxlY3RlZElkKTtcbiAgICB9KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgLy8gTUFSSzogU3RhdGUgQ2hhbmdlc1xuICByZWFkb25seSBzZXRJdGVtcyA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGl0ZW1zOiBOb3RpZmljYXRpb25JdGVtW10pID0+ICh7IC4uLnN0YXRlLCBpdGVtcyB9KSk7XG4gIHJlYWRvbmx5IHNldFNlbGVjdGVkSWQgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBzZWxlY3RlZElkOiBNYXliZTxOb3RpZmljYXRpb25JZD4pID0+ICh7IC4uLnN0YXRlLCBzZWxlY3RlZElkIH0pKTtcbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { Directive } from '@angular/core';
2
+ import { NotificationBoxCollectionStore } from './notificationbox.collection.store';
3
+ import { DbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionStoreDirective } from '../../../model/modules/store';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./notificationbox.collection.store";
6
+ export class DbxFirebaseNotificationBoxCollectionStoreDirective extends DbxFirebaseCollectionStoreDirective {
7
+ constructor(store) {
8
+ super(store);
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationBoxCollectionStoreDirective, deps: [{ token: i1.NotificationBoxCollectionStore }], target: i0.ɵɵFactoryTarget.Directive });
11
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxFirebaseNotificationBoxCollectionStoreDirective, selector: "[dbxFirebaseNotificationBoxCollection]", providers: provideDbxFirebaseCollectionStoreDirective(DbxFirebaseNotificationBoxCollectionStoreDirective, NotificationBoxCollectionStore), usesInheritance: true, ngImport: i0 });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationBoxCollectionStoreDirective, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[dbxFirebaseNotificationBoxCollection]',
17
+ providers: provideDbxFirebaseCollectionStoreDirective(DbxFirebaseNotificationBoxCollectionStoreDirective, NotificationBoxCollectionStore)
18
+ }]
19
+ }], ctorParameters: function () { return [{ type: i1.NotificationBoxCollectionStore }]; } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uYm94LmNvbGxlY3Rpb24uc3RvcmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9ub3RpZmljYXRpb24vc3RvcmUvbm90aWZpY2F0aW9uYm94LmNvbGxlY3Rpb24uc3RvcmUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFcEYsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLDBDQUEwQyxFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQU0vSCxNQUFNLE9BQU8sa0RBQW1ELFNBQVEsbUNBQTZHO0lBQ25MLFlBQVksS0FBcUM7UUFDL0MsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2YsQ0FBQzt3R0FIVSxrREFBa0Q7NEZBQWxELGtEQUFrRCxpRUFGbEQsMENBQTBDLENBQUMsa0RBQWtELEVBQUUsOEJBQThCLENBQUM7OzRGQUU5SCxrREFBa0Q7a0JBSjlELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsU0FBUyxFQUFFLDBDQUEwQyxxREFBcUQsOEJBQThCLENBQUM7aUJBQzFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25Cb3hDb2xsZWN0aW9uU3RvcmUgfSBmcm9tICcuL25vdGlmaWNhdGlvbmJveC5jb2xsZWN0aW9uLnN0b3JlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkJveCwgTm90aWZpY2F0aW9uQm94RG9jdW1lbnQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZURpcmVjdGl2ZSwgcHJvdmlkZURieEZpcmViYXNlQ29sbGVjdGlvblN0b3JlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvbW9kdWxlcy9zdG9yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkJveENvbGxlY3Rpb25dJyxcbiAgcHJvdmlkZXJzOiBwcm92aWRlRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmUoRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25Cb3hDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmUsIE5vdGlmaWNhdGlvbkJveENvbGxlY3Rpb25TdG9yZSlcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25Cb3hDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmUgZXh0ZW5kcyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZURpcmVjdGl2ZTxOb3RpZmljYXRpb25Cb3gsIE5vdGlmaWNhdGlvbkJveERvY3VtZW50LCBOb3RpZmljYXRpb25Cb3hDb2xsZWN0aW9uU3RvcmU+IHtcbiAgY29uc3RydWN0b3Ioc3RvcmU6IE5vdGlmaWNhdGlvbkJveENvbGxlY3Rpb25TdG9yZSkge1xuICAgIHN1cGVyKHN0b3JlKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,16 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { AbstractDbxFirebaseCollectionStore } from '../../../model/modules/store';
3
+ import { NotificationFirestoreCollections } from '@dereekb/firebase';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@dereekb/firebase";
6
+ export class NotificationBoxCollectionStore extends AbstractDbxFirebaseCollectionStore {
7
+ constructor(collections) {
8
+ super({ firestoreCollection: collections.notificationBoxCollection });
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationBoxCollectionStore, deps: [{ token: i1.NotificationFirestoreCollections }], target: i0.ɵɵFactoryTarget.Injectable });
11
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationBoxCollectionStore });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationBoxCollectionStore, decorators: [{
14
+ type: Injectable
15
+ }], ctorParameters: function () { return [{ type: i1.NotificationFirestoreCollections }]; } });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uYm94LmNvbGxlY3Rpb24uc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9zdG9yZS9ub3RpZmljYXRpb25ib3guY29sbGVjdGlvbi5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBNEMsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBRy9HLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxrQ0FBNEU7SUFDOUgsWUFBWSxXQUE2QztRQUN2RCxLQUFLLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxXQUFXLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7d0dBSFUsOEJBQThCOzRHQUE5Qiw4QkFBOEI7OzRGQUE5Qiw4QkFBOEI7a0JBRDFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdERieEZpcmViYXNlQ29sbGVjdGlvblN0b3JlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvbW9kdWxlcy9zdG9yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25GaXJlc3RvcmVDb2xsZWN0aW9ucywgTm90aWZpY2F0aW9uQm94LCBOb3RpZmljYXRpb25Cb3hEb2N1bWVudCB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbkJveENvbGxlY3Rpb25TdG9yZSBleHRlbmRzIEFic3RyYWN0RGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmU8Tm90aWZpY2F0aW9uQm94LCBOb3RpZmljYXRpb25Cb3hEb2N1bWVudD4ge1xuICBjb25zdHJ1Y3Rvcihjb2xsZWN0aW9uczogTm90aWZpY2F0aW9uRmlyZXN0b3JlQ29sbGVjdGlvbnMpIHtcbiAgICBzdXBlcih7IGZpcmVzdG9yZUNvbGxlY3Rpb246IGNvbGxlY3Rpb25zLm5vdGlmaWNhdGlvbkJveENvbGxlY3Rpb24gfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { Directive } from '@angular/core';
2
+ import { DbxFirebaseDocumentStoreDirective, provideDbxFirebaseDocumentStoreDirective } from '../../../model/modules/store';
3
+ import { NotificationBoxDocumentStore } from './notificationbox.document.store';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./notificationbox.document.store";
6
+ export class DbxFirebaseNotificationBoxDocumentStoreDirective extends DbxFirebaseDocumentStoreDirective {
7
+ constructor(store) {
8
+ super(store);
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationBoxDocumentStoreDirective, deps: [{ token: i1.NotificationBoxDocumentStore }], target: i0.ɵɵFactoryTarget.Directive });
11
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxFirebaseNotificationBoxDocumentStoreDirective, selector: "[dbxFirebaseNotificationBoxDocument]", providers: provideDbxFirebaseDocumentStoreDirective(DbxFirebaseNotificationBoxDocumentStoreDirective, NotificationBoxDocumentStore), usesInheritance: true, ngImport: i0 });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationBoxDocumentStoreDirective, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[dbxFirebaseNotificationBoxDocument]',
17
+ providers: provideDbxFirebaseDocumentStoreDirective(DbxFirebaseNotificationBoxDocumentStoreDirective, NotificationBoxDocumentStore)
18
+ }]
19
+ }], ctorParameters: function () { return [{ type: i1.NotificationBoxDocumentStore }]; } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uYm94LmRvY3VtZW50LnN0b3JlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvbm90aWZpY2F0aW9uL3N0b3JlL25vdGlmaWNhdGlvbmJveC5kb2N1bWVudC5zdG9yZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsd0NBQXdDLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzSCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBT2hGLE1BQU0sT0FBTyxnREFBaUQsU0FBUSxpQ0FBeUc7SUFDN0ssWUFBWSxLQUFtQztRQUM3QyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZixDQUFDO3dHQUhVLGdEQUFnRDs0RkFBaEQsZ0RBQWdELCtEQUZoRCx3Q0FBd0MsQ0FBQyxnREFBZ0QsRUFBRSw0QkFBNEIsQ0FBQzs7NEZBRXhILGdEQUFnRDtrQkFKNUQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0NBQXNDO29CQUNoRCxTQUFTLEVBQUUsd0NBQXdDLG1EQUFtRCw0QkFBNEIsQ0FBQztpQkFDcEkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZSwgcHJvdmlkZURieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL21vZGVsL21vZHVsZXMvc3RvcmUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uQm94RG9jdW1lbnRTdG9yZSB9IGZyb20gJy4vbm90aWZpY2F0aW9uYm94LmRvY3VtZW50LnN0b3JlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkJveCwgTm90aWZpY2F0aW9uQm94RG9jdW1lbnQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkJveERvY3VtZW50XScsXG4gIHByb3ZpZGVyczogcHJvdmlkZURieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZShEYnhGaXJlYmFzZU5vdGlmaWNhdGlvbkJveERvY3VtZW50U3RvcmVEaXJlY3RpdmUsIE5vdGlmaWNhdGlvbkJveERvY3VtZW50U3RvcmUpXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlTm90aWZpY2F0aW9uQm94RG9jdW1lbnRTdG9yZURpcmVjdGl2ZSBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxOb3RpZmljYXRpb25Cb3gsIE5vdGlmaWNhdGlvbkJveERvY3VtZW50LCBOb3RpZmljYXRpb25Cb3hEb2N1bWVudFN0b3JlPiB7XG4gIGNvbnN0cnVjdG9yKHN0b3JlOiBOb3RpZmljYXRpb25Cb3hEb2N1bWVudFN0b3JlKSB7XG4gICAgc3VwZXIoc3RvcmUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,22 @@
1
+ import { Injectable, inject } from '@angular/core';
2
+ import { isSameDate } from '@dereekb/date';
3
+ import { AbstractDbxFirebaseDocumentStore, firebaseDocumentStoreUpdateFunction } from '../../../model/modules/store';
4
+ import { NotificationFirestoreCollections, NotificationFunctions } from '@dereekb/firebase';
5
+ import { distinctUntilChanged, map, shareReplay } from 'rxjs';
6
+ import * as i0 from "@angular/core";
7
+ export class NotificationBoxDocumentStore extends AbstractDbxFirebaseDocumentStore {
8
+ notificationFunctions = inject(NotificationFunctions);
9
+ constructor() {
10
+ super({ firestoreCollection: inject(NotificationFirestoreCollections).notificationBoxCollection });
11
+ }
12
+ createdAt$ = this.data$.pipe(map((x) => x.cat), distinctUntilChanged(isSameDate), shareReplay(1));
13
+ recipients$ = this.data$.pipe(map((x) => x.r), shareReplay(1));
14
+ updateNotificationBox = firebaseDocumentStoreUpdateFunction(this, this.notificationFunctions.notificationBox.updateNotificationBox.update);
15
+ updateNotificationBoxRecipient = firebaseDocumentStoreUpdateFunction(this, this.notificationFunctions.notificationBox.updateNotificationBox.recipient);
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationBoxDocumentStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
17
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationBoxDocumentStore });
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationBoxDocumentStore, decorators: [{
20
+ type: Injectable
21
+ }], ctorParameters: function () { return []; } });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uYm94LmRvY3VtZW50LnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9ub3RpZmljYXRpb24vc3RvcmUvbm90aWZpY2F0aW9uYm94LmRvY3VtZW50LnN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLHFCQUFxQixFQUE0QyxNQUFNLG1CQUFtQixDQUFDO0FBQ3RJLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUc5RCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZ0NBQTBFO0lBQ2pILHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRS9EO1FBQ0UsS0FBSyxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFUSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ25DLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUNqQixvQkFBb0IsQ0FBQyxVQUFVLENBQUMsRUFDaEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFTyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ3BDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNmLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBRU8scUJBQXFCLEdBQUcsbUNBQW1DLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0ksOEJBQThCLEdBQUcsbUNBQW1DLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUM7d0dBbkJySiw0QkFBNEI7NEdBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNTYW1lRGF0ZSB9IGZyb20gJ0BkZXJlZWtiL2RhdGUnO1xuaW1wb3J0IHsgQWJzdHJhY3REYnhGaXJlYmFzZURvY3VtZW50U3RvcmUsIGZpcmViYXNlRG9jdW1lbnRTdG9yZVVwZGF0ZUZ1bmN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvbW9kdWxlcy9zdG9yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25GaXJlc3RvcmVDb2xsZWN0aW9ucywgTm90aWZpY2F0aW9uRnVuY3Rpb25zLCBOb3RpZmljYXRpb25Cb3gsIE5vdGlmaWNhdGlvbkJveERvY3VtZW50IH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbkJveERvY3VtZW50U3RvcmUgZXh0ZW5kcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxOb3RpZmljYXRpb25Cb3gsIE5vdGlmaWNhdGlvbkJveERvY3VtZW50PiB7XG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkZ1bmN0aW9ucyA9IGluamVjdChOb3RpZmljYXRpb25GdW5jdGlvbnMpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKHsgZmlyZXN0b3JlQ29sbGVjdGlvbjogaW5qZWN0KE5vdGlmaWNhdGlvbkZpcmVzdG9yZUNvbGxlY3Rpb25zKS5ub3RpZmljYXRpb25Cb3hDb2xsZWN0aW9uIH0pO1xuICB9XG5cbiAgcmVhZG9ubHkgY3JlYXRlZEF0JCA9IHRoaXMuZGF0YSQucGlwZShcbiAgICBtYXAoKHgpID0+IHguY2F0KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChpc1NhbWVEYXRlKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHJlY2lwaWVudHMkID0gdGhpcy5kYXRhJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5yKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHVwZGF0ZU5vdGlmaWNhdGlvbkJveCA9IGZpcmViYXNlRG9jdW1lbnRTdG9yZVVwZGF0ZUZ1bmN0aW9uKHRoaXMsIHRoaXMubm90aWZpY2F0aW9uRnVuY3Rpb25zLm5vdGlmaWNhdGlvbkJveC51cGRhdGVOb3RpZmljYXRpb25Cb3gudXBkYXRlKTtcbiAgcmVhZG9ubHkgdXBkYXRlTm90aWZpY2F0aW9uQm94UmVjaXBpZW50ID0gZmlyZWJhc2VEb2N1bWVudFN0b3JlVXBkYXRlRnVuY3Rpb24odGhpcywgdGhpcy5ub3RpZmljYXRpb25GdW5jdGlvbnMubm90aWZpY2F0aW9uQm94LnVwZGF0ZU5vdGlmaWNhdGlvbkJveC5yZWNpcGllbnQpO1xufVxuIl19
@@ -0,0 +1,20 @@
1
+ import { Directive } from '@angular/core';
2
+ import { DbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionStoreDirective } from '../../../model/modules/store';
3
+ import { NotificationSummaryCollectionStore } from './notificationsummary.collection.store';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./notificationsummary.collection.store";
6
+ export class DbxFirebaseNotificationSummaryCollectionStoreDirective extends DbxFirebaseCollectionStoreDirective {
7
+ constructor(store) {
8
+ super(store);
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationSummaryCollectionStoreDirective, deps: [{ token: i1.NotificationSummaryCollectionStore }], target: i0.ɵɵFactoryTarget.Directive });
11
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxFirebaseNotificationSummaryCollectionStoreDirective, selector: "[dbxFirebaseNotificationSummaryCollection]", providers: provideDbxFirebaseCollectionStoreDirective(DbxFirebaseNotificationSummaryCollectionStoreDirective, NotificationSummaryCollectionStore), usesInheritance: true, ngImport: i0 });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationSummaryCollectionStoreDirective, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[dbxFirebaseNotificationSummaryCollection]',
17
+ providers: provideDbxFirebaseCollectionStoreDirective(DbxFirebaseNotificationSummaryCollectionStoreDirective, NotificationSummaryCollectionStore)
18
+ }]
19
+ }], ctorParameters: function () { return [{ type: i1.NotificationSummaryCollectionStore }]; } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uc3VtbWFyeS5jb2xsZWN0aW9uLnN0b3JlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvbm90aWZpY2F0aW9uL3N0b3JlL25vdGlmaWNhdGlvbnN1bW1hcnkuY29sbGVjdGlvbi5zdG9yZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsMENBQTBDLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvSCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7O0FBTzVGLE1BQU0sT0FBTyxzREFBdUQsU0FBUSxtQ0FBeUg7SUFDbk0sWUFBWSxLQUF5QztRQUNuRCxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZixDQUFDO3dHQUhVLHNEQUFzRDs0RkFBdEQsc0RBQXNELHFFQUZ0RCwwQ0FBMEMsQ0FBQyxzREFBc0QsRUFBRSxrQ0FBa0MsQ0FBQzs7NEZBRXRJLHNEQUFzRDtrQkFKbEUsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNENBQTRDO29CQUN0RCxTQUFTLEVBQUUsMENBQTBDLHlEQUF5RCxrQ0FBa0MsQ0FBQztpQkFDbEoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieEZpcmViYXNlQ29sbGVjdGlvblN0b3JlRGlyZWN0aXZlLCBwcm92aWRlRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9tb2R1bGVzL3N0b3JlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblN1bW1hcnlDb2xsZWN0aW9uU3RvcmUgfSBmcm9tICcuL25vdGlmaWNhdGlvbnN1bW1hcnkuY29sbGVjdGlvbi5zdG9yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25TdW1tYXJ5LCBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZU5vdGlmaWNhdGlvblN1bW1hcnlDb2xsZWN0aW9uXScsXG4gIHByb3ZpZGVyczogcHJvdmlkZURieEZpcmViYXNlQ29sbGVjdGlvblN0b3JlRGlyZWN0aXZlKERieEZpcmViYXNlTm90aWZpY2F0aW9uU3VtbWFyeUNvbGxlY3Rpb25TdG9yZURpcmVjdGl2ZSwgTm90aWZpY2F0aW9uU3VtbWFyeUNvbGxlY3Rpb25TdG9yZSlcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25TdW1tYXJ5Q29sbGVjdGlvblN0b3JlRGlyZWN0aXZlIGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmU8Tm90aWZpY2F0aW9uU3VtbWFyeSwgTm90aWZpY2F0aW9uU3VtbWFyeURvY3VtZW50LCBOb3RpZmljYXRpb25TdW1tYXJ5Q29sbGVjdGlvblN0b3JlPiB7XG4gIGNvbnN0cnVjdG9yKHN0b3JlOiBOb3RpZmljYXRpb25TdW1tYXJ5Q29sbGVjdGlvblN0b3JlKSB7XG4gICAgc3VwZXIoc3RvcmUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,16 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { AbstractDbxFirebaseCollectionStore } from '../../../model/modules/store';
3
+ import { NotificationFirestoreCollections } from '@dereekb/firebase';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@dereekb/firebase";
6
+ export class NotificationSummaryCollectionStore extends AbstractDbxFirebaseCollectionStore {
7
+ constructor(collections) {
8
+ super({ firestoreCollection: collections.notificationSummaryCollection });
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationSummaryCollectionStore, deps: [{ token: i1.NotificationFirestoreCollections }], target: i0.ɵɵFactoryTarget.Injectable });
11
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationSummaryCollectionStore });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationSummaryCollectionStore, decorators: [{
14
+ type: Injectable
15
+ }], ctorParameters: function () { return [{ type: i1.NotificationFirestoreCollections }]; } });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uc3VtbWFyeS5jb2xsZWN0aW9uLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9ub3RpZmljYXRpb24vc3RvcmUvbm90aWZpY2F0aW9uc3VtbWFyeS5jb2xsZWN0aW9uLnN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFvRCxNQUFNLG1CQUFtQixDQUFDOzs7QUFHdkgsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLGtDQUFvRjtJQUMxSSxZQUFZLFdBQTZDO1FBQ3ZELEtBQUssQ0FBQyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDLENBQUM7SUFDNUUsQ0FBQzt3R0FIVSxrQ0FBa0M7NEdBQWxDLGtDQUFrQzs7NEZBQWxDLGtDQUFrQztrQkFEOUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9tb2R1bGVzL3N0b3JlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkZpcmVzdG9yZUNvbGxlY3Rpb25zLCBOb3RpZmljYXRpb25TdW1tYXJ5LCBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25TdW1tYXJ5Q29sbGVjdGlvblN0b3JlIGV4dGVuZHMgQWJzdHJhY3REYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZTxOb3RpZmljYXRpb25TdW1tYXJ5LCBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnQ+IHtcbiAgY29uc3RydWN0b3IoY29sbGVjdGlvbnM6IE5vdGlmaWNhdGlvbkZpcmVzdG9yZUNvbGxlY3Rpb25zKSB7XG4gICAgc3VwZXIoeyBmaXJlc3RvcmVDb2xsZWN0aW9uOiBjb2xsZWN0aW9ucy5ub3RpZmljYXRpb25TdW1tYXJ5Q29sbGVjdGlvbiB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,20 @@
1
+ import { Directive } from '@angular/core';
2
+ import { DbxFirebaseDocumentStoreDirective, provideDbxFirebaseDocumentStoreDirective } from '../../../model/modules/store';
3
+ import { NotificationSummaryDocumentStore } from './notificationsummary.document.store';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./notificationsummary.document.store";
6
+ export class DbxFirebaseNotificationSummaryDocumentStoreDirective extends DbxFirebaseDocumentStoreDirective {
7
+ constructor(store) {
8
+ super(store);
9
+ }
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationSummaryDocumentStoreDirective, deps: [{ token: i1.NotificationSummaryDocumentStore }], target: i0.ɵɵFactoryTarget.Directive });
11
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxFirebaseNotificationSummaryDocumentStoreDirective, selector: "[dbxFirebaseNotificationSummaryDocument]", providers: provideDbxFirebaseDocumentStoreDirective(DbxFirebaseNotificationSummaryDocumentStoreDirective, NotificationSummaryDocumentStore), usesInheritance: true, ngImport: i0 });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFirebaseNotificationSummaryDocumentStoreDirective, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[dbxFirebaseNotificationSummaryDocument]',
17
+ providers: provideDbxFirebaseDocumentStoreDirective(DbxFirebaseNotificationSummaryDocumentStoreDirective, NotificationSummaryDocumentStore)
18
+ }]
19
+ }], ctorParameters: function () { return [{ type: i1.NotificationSummaryDocumentStore }]; } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uc3VtbWFyeS5kb2N1bWVudC5zdG9yZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2R1bGVzL25vdGlmaWNhdGlvbi9zdG9yZS9ub3RpZmljYXRpb25zdW1tYXJ5LmRvY3VtZW50LnN0b3JlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7QUFPeEYsTUFBTSxPQUFPLG9EQUFxRCxTQUFRLGlDQUFxSDtJQUM3TCxZQUFZLEtBQXVDO1FBQ2pELEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7d0dBSFUsb0RBQW9EOzRGQUFwRCxvREFBb0QsbUVBRnBELHdDQUF3QyxDQUFDLG9EQUFvRCxFQUFFLGdDQUFnQyxDQUFDOzs0RkFFaEksb0RBQW9EO2tCQUpoRSxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQ0FBMEM7b0JBQ3BELFNBQVMsRUFBRSx3Q0FBd0MsdURBQXVELGdDQUFnQyxDQUFDO2lCQUM1SSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlLCBwcm92aWRlRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvbW9kdWxlcy9zdG9yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnRTdG9yZSB9IGZyb20gJy4vbm90aWZpY2F0aW9uc3VtbWFyeS5kb2N1bWVudC5zdG9yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25TdW1tYXJ5LCBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZU5vdGlmaWNhdGlvblN1bW1hcnlEb2N1bWVudF0nLFxuICBwcm92aWRlcnM6IHByb3ZpZGVEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmUoRGJ4RmlyZWJhc2VOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnRTdG9yZURpcmVjdGl2ZSwgTm90aWZpY2F0aW9uU3VtbWFyeURvY3VtZW50U3RvcmUpXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlTm90aWZpY2F0aW9uU3VtbWFyeURvY3VtZW50U3RvcmVEaXJlY3RpdmUgZXh0ZW5kcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmU8Tm90aWZpY2F0aW9uU3VtbWFyeSwgTm90aWZpY2F0aW9uU3VtbWFyeURvY3VtZW50LCBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnRTdG9yZT4ge1xuICBjb25zdHJ1Y3RvcihzdG9yZTogTm90aWZpY2F0aW9uU3VtbWFyeURvY3VtZW50U3RvcmUpIHtcbiAgICBzdXBlcihzdG9yZSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,34 @@
1
+ import { Injectable, inject } from '@angular/core';
2
+ import { isSameDate } from '@dereekb/date';
3
+ import { AbstractDbxFirebaseDocumentStore, firebaseDocumentStoreUpdateFunction } from '../../../model/modules/store';
4
+ import { NotificationFirestoreCollections, NotificationFunctions, unreadNotificationItems } from '@dereekb/firebase';
5
+ import { asObservable, mapLoadingStateValueWithOperator } from '@dereekb/rxjs';
6
+ import { map, shareReplay, distinctUntilChanged, combineLatest } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ export class NotificationSummaryDocumentStore extends AbstractDbxFirebaseDocumentStore {
9
+ notificationFunctions = inject(NotificationFunctions);
10
+ constructor() {
11
+ super({ firestoreCollection: inject(NotificationFirestoreCollections).notificationSummaryCollection });
12
+ }
13
+ notificationItemsLoadingState$ = this.dataLoadingState$.pipe(mapLoadingStateValueWithOperator(map((x) => [...x.n].reverse())), // n is sorted in ascending order
14
+ shareReplay(1));
15
+ createdAt$ = this.data$.pipe(map((x) => x.cat), distinctUntilChanged(isSameDate), shareReplay(1));
16
+ lastReadAt$ = this.data$.pipe(map((x) => x.rat), distinctUntilChanged(isSameDate), shareReplay(1));
17
+ lastUpdateAt$ = this.data$.pipe(map((x) => x.lat), distinctUntilChanged(isSameDate), shareReplay(1));
18
+ notificationItems$ = this.data$.pipe(map((x) => [...x.n].reverse()), // n is sorted in ascending order
19
+ shareReplay(1));
20
+ needsSync$ = this.data$.pipe(map((x) => x.s), distinctUntilChanged(), shareReplay(1));
21
+ notificationItemsLoadingState() {
22
+ return this.notificationItemsLoadingState$;
23
+ }
24
+ unreadNotificationItems(checkLastReadIfCreatedBeforeObs) {
25
+ return combineLatest([asObservable(checkLastReadIfCreatedBeforeObs), this.notificationItems$]).pipe(map(([c, items]) => unreadNotificationItems(items, c)));
26
+ }
27
+ updateNotificationSummary = firebaseDocumentStoreUpdateFunction(this, this.notificationFunctions.notificationSummary.updateNotificationSummary.update);
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationSummaryDocumentStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationSummaryDocumentStore });
30
+ }
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationSummaryDocumentStore, decorators: [{
32
+ type: Injectable
33
+ }], ctorParameters: function () { return []; } });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uc3VtbWFyeS5kb2N1bWVudC5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvbm90aWZpY2F0aW9uL3N0b3JlL25vdGlmaWNhdGlvbnN1bW1hcnkuZG9jdW1lbnQuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNySCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUscUJBQXFCLEVBQStILHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbFAsT0FBTyxFQUFtQyxZQUFZLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEgsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUd6RixNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsZ0NBQWtGO0lBQzdILHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRS9EO1FBQ0UsS0FBSyxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUMsNkJBQTZCLEVBQUUsQ0FBQyxDQUFDO0lBQ3pHLENBQUM7SUFFUSw4QkFBOEIsR0FBc0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FDdEgsZ0NBQWdDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxpQ0FBaUM7SUFDbkcsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFTyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ25DLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUNqQixvQkFBb0IsQ0FBQyxVQUFVLENBQUMsRUFDaEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFTyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ3BDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUNqQixvQkFBb0IsQ0FBQyxVQUFVLENBQUMsRUFDaEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFTyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ3RDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUNqQixvQkFBb0IsQ0FBQyxVQUFVLENBQUMsRUFDaEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFTyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDM0MsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsaUNBQWlDO0lBQ2pFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBRU8sVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNuQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDZixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVGLDZCQUE2QjtRQUMzQixPQUFPLElBQUksQ0FBQyw4QkFBOEIsQ0FBQztJQUM3QyxDQUFDO0lBRUQsdUJBQXVCLENBQTBDLCtCQUFnRTtRQUMvSCxPQUFPLGFBQWEsQ0FBQyxDQUFDLFlBQVksQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxrQkFBdUQsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RNLENBQUM7SUFFUSx5QkFBeUIsR0FBRyxtQ0FBbUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLHlCQUF5QixDQUFDLE1BQU0sQ0FBQyxDQUFDO3dHQWpEckosZ0NBQWdDOzRHQUFoQyxnQ0FBZ0M7OzRGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzU2FtZURhdGUgfSBmcm9tICdAZGVyZWVrYi9kYXRlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlLCBmaXJlYmFzZURvY3VtZW50U3RvcmVVcGRhdGVGdW5jdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVsL21vZHVsZXMvc3RvcmUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uRmlyZXN0b3JlQ29sbGVjdGlvbnMsIE5vdGlmaWNhdGlvbkZ1bmN0aW9ucywgTm90aWZpY2F0aW9uSXRlbSwgTm90aWZpY2F0aW9uSXRlbU1ldGFkYXRhLCBOb3RpZmljYXRpb25TdW1tYXJ5LCBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnQsIFVucmVhZE5vdGlmaWNhdGlvbkl0ZW1zUmVzdWx0LCB1bnJlYWROb3RpZmljYXRpb25JdGVtcyB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IExvYWRpbmdTdGF0ZSwgT2JzZXJ2YWJsZU9yVmFsdWUsIGFzT2JzZXJ2YWJsZSwgbWFwTG9hZGluZ1N0YXRlVmFsdWVXaXRoT3BlcmF0b3IgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uU3VtbWFyeURvY3VtZW50U3RvcmUgZXh0ZW5kcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxOb3RpZmljYXRpb25TdW1tYXJ5LCBOb3RpZmljYXRpb25TdW1tYXJ5RG9jdW1lbnQ+IHtcbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9uRnVuY3Rpb25zID0gaW5qZWN0KE5vdGlmaWNhdGlvbkZ1bmN0aW9ucyk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoeyBmaXJlc3RvcmVDb2xsZWN0aW9uOiBpbmplY3QoTm90aWZpY2F0aW9uRmlyZXN0b3JlQ29sbGVjdGlvbnMpLm5vdGlmaWNhdGlvblN1bW1hcnlDb2xsZWN0aW9uIH0pO1xuICB9XG5cbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9uSXRlbXNMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxOb3RpZmljYXRpb25JdGVtPGFueT5bXT4+ID0gdGhpcy5kYXRhTG9hZGluZ1N0YXRlJC5waXBlKFxuICAgIG1hcExvYWRpbmdTdGF0ZVZhbHVlV2l0aE9wZXJhdG9yKG1hcCgoeCkgPT4gWy4uLngubl0ucmV2ZXJzZSgpKSksIC8vIG4gaXMgc29ydGVkIGluIGFzY2VuZGluZyBvcmRlclxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgY3JlYXRlZEF0JCA9IHRoaXMuZGF0YSQucGlwZShcbiAgICBtYXAoKHgpID0+IHguY2F0KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChpc1NhbWVEYXRlKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGxhc3RSZWFkQXQkID0gdGhpcy5kYXRhJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5yYXQpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKGlzU2FtZURhdGUpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgbGFzdFVwZGF0ZUF0JCA9IHRoaXMuZGF0YSQucGlwZShcbiAgICBtYXAoKHgpID0+IHgubGF0KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChpc1NhbWVEYXRlKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkl0ZW1zJCA9IHRoaXMuZGF0YSQucGlwZShcbiAgICBtYXAoKHgpID0+IFsuLi54Lm5dLnJldmVyc2UoKSksIC8vIG4gaXMgc29ydGVkIGluIGFzY2VuZGluZyBvcmRlclxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgbmVlZHNTeW5jJCA9IHRoaXMuZGF0YSQucGlwZShcbiAgICBtYXAoKHgpID0+IHgucyksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIG5vdGlmaWNhdGlvbkl0ZW1zTG9hZGluZ1N0YXRlPEQgZXh0ZW5kcyBOb3RpZmljYXRpb25JdGVtTWV0YWRhdGEgPSB7fT4oKTogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8Tm90aWZpY2F0aW9uSXRlbTxEPltdPj4ge1xuICAgIHJldHVybiB0aGlzLm5vdGlmaWNhdGlvbkl0ZW1zTG9hZGluZ1N0YXRlJDtcbiAgfVxuXG4gIHVucmVhZE5vdGlmaWNhdGlvbkl0ZW1zPEQgZXh0ZW5kcyBOb3RpZmljYXRpb25JdGVtTWV0YWRhdGEgPSB7fT4oY2hlY2tMYXN0UmVhZElmQ3JlYXRlZEJlZm9yZU9icz86IE9ic2VydmFibGVPclZhbHVlPE1heWJlPERhdGU+Pik6IE9ic2VydmFibGU8VW5yZWFkTm90aWZpY2F0aW9uSXRlbXNSZXN1bHQ8RD4+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbYXNPYnNlcnZhYmxlKGNoZWNrTGFzdFJlYWRJZkNyZWF0ZWRCZWZvcmVPYnMpLCB0aGlzLm5vdGlmaWNhdGlvbkl0ZW1zJCBhcyBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvbkl0ZW08RD5bXT5dKS5waXBlKG1hcCgoW2MsIGl0ZW1zXSkgPT4gdW5yZWFkTm90aWZpY2F0aW9uSXRlbXM8RD4oaXRlbXMsIGMpKSk7XG4gIH1cblxuICByZWFkb25seSB1cGRhdGVOb3RpZmljYXRpb25TdW1tYXJ5ID0gZmlyZWJhc2VEb2N1bWVudFN0b3JlVXBkYXRlRnVuY3Rpb24odGhpcywgdGhpcy5ub3RpZmljYXRpb25GdW5jdGlvbnMubm90aWZpY2F0aW9uU3VtbWFyeS51cGRhdGVOb3RpZmljYXRpb25TdW1tYXJ5LnVwZGF0ZSk7XG59XG4iXX0=