carbon-components-angular 5.58.0 → 5.58.2

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 (66) hide show
  1. package/docs/documentation/components/ActionableNotification.html +80 -41
  2. package/docs/documentation/components/DropdownList.html +84 -82
  3. package/docs/documentation/components/Notification.html +76 -37
  4. package/docs/documentation/coverage.html +6 -6
  5. package/docs/documentation/js/search/search_index.js +2 -2
  6. package/docs/documentation/modules/ComboBoxModule/dependencies.svg +4 -4
  7. package/docs/documentation/modules/ComboBoxModule.html +4 -4
  8. package/docs/documentation/modules/DatePickerInputModule/dependencies.svg +37 -41
  9. package/docs/documentation/modules/DatePickerInputModule.html +37 -41
  10. package/docs/documentation/modules/DialogModule/dependencies.svg +34 -34
  11. package/docs/documentation/modules/DialogModule.html +34 -34
  12. package/docs/documentation/modules/FileUploaderModule/dependencies.svg +36 -36
  13. package/docs/documentation/modules/FileUploaderModule.html +36 -36
  14. package/docs/documentation/modules/NumberModule/dependencies.svg +4 -4
  15. package/docs/documentation/modules/NumberModule.html +4 -4
  16. package/docs/documentation/modules/RadioModule/dependencies.svg +48 -48
  17. package/docs/documentation/modules/RadioModule.html +48 -48
  18. package/docs/documentation/modules/SelectModule/dependencies.svg +43 -43
  19. package/docs/documentation/modules/SelectModule.html +43 -43
  20. package/docs/documentation/modules/SliderModule/dependencies.svg +4 -4
  21. package/docs/documentation/modules/SliderModule.html +4 -4
  22. package/docs/documentation/modules/TabsModule/dependencies.svg +69 -69
  23. package/docs/documentation/modules/TabsModule.html +69 -69
  24. package/docs/documentation/modules/TagModule/dependencies.svg +39 -39
  25. package/docs/documentation/modules/TagModule.html +39 -39
  26. package/docs/documentation/modules/ThemeModule/dependencies.svg +4 -4
  27. package/docs/documentation/modules/ThemeModule.html +4 -4
  28. package/docs/documentation/modules/TilesModule/dependencies.svg +107 -107
  29. package/docs/documentation/modules/TilesModule.html +107 -107
  30. package/docs/documentation/modules/TimePickerModule/dependencies.svg +45 -41
  31. package/docs/documentation/modules/TimePickerModule.html +45 -41
  32. package/docs/documentation/modules/TimePickerSelectModule/dependencies.svg +38 -42
  33. package/docs/documentation/modules/TimePickerSelectModule.html +38 -42
  34. package/docs/documentation/modules/ToggleModule/dependencies.svg +34 -38
  35. package/docs/documentation/modules/ToggleModule.html +34 -38
  36. package/docs/documentation/modules/ToggletipModule/dependencies.svg +38 -38
  37. package/docs/documentation/modules/ToggletipModule.html +38 -38
  38. package/docs/documentation/modules/TooltipModule/dependencies.svg +29 -29
  39. package/docs/documentation/modules/TooltipModule.html +29 -29
  40. package/docs/documentation/modules/TreeviewModule/dependencies.svg +31 -31
  41. package/docs/documentation/modules/TreeviewModule.html +31 -31
  42. package/docs/documentation/modules/UIShellModule/dependencies.svg +4 -4
  43. package/docs/documentation/modules/UIShellModule.html +4 -4
  44. package/docs/documentation.json +134 -114
  45. package/docs/storybook/{3224.5a4b3111.iframe.bundle.js → 3224.ee9adbba.iframe.bundle.js} +1 -1
  46. package/docs/storybook/901.9e4e376b.iframe.bundle.js +1 -0
  47. package/docs/storybook/iframe.html +2 -2
  48. package/docs/storybook/main.d00e3563.iframe.bundle.js +1 -0
  49. package/docs/storybook/project.json +1 -1
  50. package/docs/storybook/{runtime~main.89fec306.iframe.bundle.js → runtime~main.c31464c5.iframe.bundle.js} +1 -1
  51. package/esm2020/dropdown/list/dropdown-list.component.mjs +5 -3
  52. package/esm2020/notification/actionable-notification.component.mjs +18 -7
  53. package/esm2020/notification/notification.component.mjs +17 -6
  54. package/fesm2015/carbon-components-angular-dropdown.mjs +4 -2
  55. package/fesm2015/carbon-components-angular-dropdown.mjs.map +1 -1
  56. package/fesm2015/carbon-components-angular-notification.mjs +33 -11
  57. package/fesm2015/carbon-components-angular-notification.mjs.map +1 -1
  58. package/fesm2020/carbon-components-angular-dropdown.mjs +4 -2
  59. package/fesm2020/carbon-components-angular-dropdown.mjs.map +1 -1
  60. package/fesm2020/carbon-components-angular-notification.mjs +33 -11
  61. package/fesm2020/carbon-components-angular-notification.mjs.map +1 -1
  62. package/notification/actionable-notification.component.d.ts +1 -0
  63. package/notification/notification.component.d.ts +1 -0
  64. package/package.json +1 -1
  65. package/docs/storybook/901.32dc2d61.iframe.bundle.js +0 -1
  66. package/docs/storybook/main.622b2392.iframe.bundle.js +0 -1
@@ -182,7 +182,8 @@ class ActionableNotification extends BaseNotification {
182
182
  super(notificationDisplayService, i18n);
183
183
  this.notificationDisplayService = notificationDisplayService;
184
184
  this.i18n = i18n;
185
- this.notificationID = `notification-${ActionableNotification.notificationCount++}`;
185
+ this.notificationID = `actionable-notification-${ActionableNotification.notificationCount++}`;
186
+ this.notificationLabel = this.notificationID;
186
187
  this.notificationClass = true;
187
188
  /**
188
189
  * Set default variant & role, alternatives can be provided through notificationObj property
@@ -217,7 +218,7 @@ class ActionableNotification extends BaseNotification {
217
218
  }
218
219
  ActionableNotification.notificationCount = 0;
219
220
  ActionableNotification.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActionableNotification, deps: [{ token: NotificationDisplayService }, { token: i2.I18n }], target: i0.ɵɵFactoryTarget.Component });
220
- ActionableNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ActionableNotification, selector: "cds-actionable-notification, ibm-actionable-notification", inputs: { notificationObj: "notificationObj" }, host: { properties: { "attr.id": "this.notificationID", "class.cds--actionable-notification": "this.notificationClass", "class.cds--actionable-notification--toast": "this.toastVariant", "class.cds--actionable-notification--error": "this.isError", "class.cds--actionable-notification--info": "this.isInfo", "class.cds--actionable-notification--info-square": "this.isInfoSquare", "class.cds--actionable-notification--success": "this.isSuccess", "class.cds--actionable-notification--warning": "this.isWarning", "class.cds--actionable-notification--warning-alt": "this.isWarningAlt", "class.cds--actionable-notification--low-contrast": "this.isLowContrast", "class.cds--actionable-notification--hide-close-button": "this.isCloseHidden" } }, usesInheritance: true, ngImport: i0, template: `
221
+ ActionableNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ActionableNotification, selector: "cds-actionable-notification, ibm-actionable-notification", inputs: { notificationObj: "notificationObj" }, host: { properties: { "attr.aria-labelledBy": "this.notificationLabel", "class.cds--actionable-notification": "this.notificationClass", "class.cds--actionable-notification--toast": "this.toastVariant", "class.cds--actionable-notification--error": "this.isError", "class.cds--actionable-notification--info": "this.isInfo", "class.cds--actionable-notification--info-square": "this.isInfoSquare", "class.cds--actionable-notification--success": "this.isSuccess", "class.cds--actionable-notification--warning": "this.isWarning", "class.cds--actionable-notification--warning-alt": "this.isWarningAlt", "class.cds--actionable-notification--low-contrast": "this.isLowContrast", "class.cds--actionable-notification--hide-close-button": "this.isCloseHidden" } }, usesInheritance: true, ngImport: i0, template: `
221
222
  <div class="cds--actionable-notification__details">
222
223
  <svg
223
224
  [cdsIcon]="iconDictionary[notificationObj.type]"
@@ -231,7 +232,12 @@ ActionableNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
231
232
  </svg>
232
233
  <div class="cds--actionable-notification__text-wrapper">
233
234
  <div class="cds--actionable-notification__content">
234
- <div *ngIf="!notificationObj.template" cdsActionableTitle [innerHTML]="notificationObj.title"></div>
235
+ <div
236
+ cdsActionableTitle
237
+ *ngIf="!notificationObj.template"
238
+ [id]="notificationID"
239
+ [innerHTML]="notificationObj.title">
240
+ </div>
235
241
  <div *ngIf="!notificationObj.template" cdsActionableSubtitle>
236
242
  <span [innerHTML]="notificationObj.message"></span>
237
243
  <ng-container *ngFor="let link of notificationObj.links">
@@ -280,7 +286,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
280
286
  </svg>
281
287
  <div class="cds--actionable-notification__text-wrapper">
282
288
  <div class="cds--actionable-notification__content">
283
- <div *ngIf="!notificationObj.template" cdsActionableTitle [innerHTML]="notificationObj.title"></div>
289
+ <div
290
+ cdsActionableTitle
291
+ *ngIf="!notificationObj.template"
292
+ [id]="notificationID"
293
+ [innerHTML]="notificationObj.title">
294
+ </div>
284
295
  <div *ngIf="!notificationObj.template" cdsActionableSubtitle>
285
296
  <span [innerHTML]="notificationObj.message"></span>
286
297
  <ng-container *ngFor="let link of notificationObj.links">
@@ -314,9 +325,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
314
325
  }]
315
326
  }], ctorParameters: function () { return [{ type: NotificationDisplayService }, { type: i2.I18n }]; }, propDecorators: { notificationObj: [{
316
327
  type: Input
317
- }], notificationID: [{
328
+ }], notificationLabel: [{
318
329
  type: HostBinding,
319
- args: ["attr.id"]
330
+ args: ["attr.aria-labelledBy"]
320
331
  }], notificationClass: [{
321
332
  type: HostBinding,
322
333
  args: ["class.cds--actionable-notification"]
@@ -394,6 +405,7 @@ class Notification extends BaseNotification {
394
405
  this.notificationDisplayService = notificationDisplayService;
395
406
  this.i18n = i18n;
396
407
  this.notificationID = `notification-${Notification.notificationCount++}`;
408
+ this.notificationLabel = this.notificationID;
397
409
  this.notificationClass = true;
398
410
  }
399
411
  /**
@@ -423,7 +435,7 @@ class Notification extends BaseNotification {
423
435
  }
424
436
  Notification.notificationCount = 0;
425
437
  Notification.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: Notification, deps: [{ token: NotificationDisplayService }, { token: i2.I18n }], target: i0.ɵɵFactoryTarget.Component });
426
- Notification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: { notificationObj: "notificationObj" }, host: { properties: { "attr.id": "this.notificationID", "class.cds--inline-notification": "this.notificationClass", "class.cds--inline-notification--error": "this.isError", "class.cds--inline-notification--info": "this.isInfo", "class.cds--inline-notification--info-square": "this.isInfoSquare", "class.cds--inline-notification--success": "this.isSuccess", "class.cds--inline-notification--warning": "this.isWarning", "class.cds--inline-notification--warning-alt": "this.isWarningAlt", "class.cds--inline-notification--low-contrast": "this.isLowContrast", "class.cds--inline-notification--hide-close-button": "this.isCloseHidden" } }, usesInheritance: true, ngImport: i0, template: `
438
+ Notification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: { notificationObj: "notificationObj" }, host: { properties: { "attr.aria-labelledBy": "this.notificationLabel", "class.cds--inline-notification": "this.notificationClass", "class.cds--inline-notification--error": "this.isError", "class.cds--inline-notification--info": "this.isInfo", "class.cds--inline-notification--info-square": "this.isInfoSquare", "class.cds--inline-notification--success": "this.isSuccess", "class.cds--inline-notification--warning": "this.isWarning", "class.cds--inline-notification--warning-alt": "this.isWarningAlt", "class.cds--inline-notification--low-contrast": "this.isLowContrast", "class.cds--inline-notification--hide-close-button": "this.isCloseHidden" } }, usesInheritance: true, ngImport: i0, template: `
427
439
  <div class="cds--inline-notification__details">
428
440
  <svg
429
441
  [cdsIcon]="iconDictionary[notificationObj.type]"
@@ -432,7 +444,12 @@ Notification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
432
444
  class="cds--inline-notification__icon">
433
445
  </svg>
434
446
  <div class="cds--inline-notification__text-wrapper">
435
- <div *ngIf="!notificationObj.template" cdsNotificationTitle [innerHTML]="notificationObj.title"></div>
447
+ <div
448
+ cdsNotificationTitle
449
+ *ngIf="!notificationObj.template"
450
+ [innerHTML]="notificationObj.title"
451
+ [id]="notificationID">
452
+ </div>
436
453
  <div *ngIf="!notificationObj.template" cdsNotificationSubtitle>
437
454
  <span [innerHTML]="notificationObj.message"></span>
438
455
  </div>
@@ -461,7 +478,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
461
478
  class="cds--inline-notification__icon">
462
479
  </svg>
463
480
  <div class="cds--inline-notification__text-wrapper">
464
- <div *ngIf="!notificationObj.template" cdsNotificationTitle [innerHTML]="notificationObj.title"></div>
481
+ <div
482
+ cdsNotificationTitle
483
+ *ngIf="!notificationObj.template"
484
+ [innerHTML]="notificationObj.title"
485
+ [id]="notificationID">
486
+ </div>
465
487
  <div *ngIf="!notificationObj.template" cdsNotificationSubtitle>
466
488
  <span [innerHTML]="notificationObj.message"></span>
467
489
  </div>
@@ -480,9 +502,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
480
502
  }]
481
503
  }], ctorParameters: function () { return [{ type: NotificationDisplayService }, { type: i2.I18n }]; }, propDecorators: { notificationObj: [{
482
504
  type: Input
483
- }], notificationID: [{
505
+ }], notificationLabel: [{
484
506
  type: HostBinding,
485
- args: ["attr.id"]
507
+ args: ["attr.aria-labelledBy"]
486
508
  }], notificationClass: [{
487
509
  type: HostBinding,
488
510
  args: ["class.cds--inline-notification"]
@@ -1 +1 @@
1
- {"version":3,"file":"carbon-components-angular-notification.mjs","sources":["../../src/notification/actionable-button.directive.ts","../../src/notification/actionable-subtitle.directive.ts","../../src/notification/actionable-title.directive.ts","../../src/notification/notification-display.service.ts","../../src/notification/base-notification.component.ts","../../src/notification/actionable-notification.component.ts","../../src/notification/notification-subtitle.directive.ts","../../src/notification/notification-title.directive.ts","../../src/notification/notification.component.ts","../../src/notification/toast-title.directive.ts","../../src/notification/toast-subtitle.directive.ts","../../src/notification/toast-caption.directive.ts","../../src/notification/toast.component.ts","../../src/notification/notification.service.ts","../../src/notification/notification.module.ts","../../src/notification/carbon-components-angular-notification.ts"],"sourcesContent":["import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsActionableButton], [ibmActionableButton]\"\n})\nexport class ActionableButton {\n\t@HostBinding(\"class.cds--actionable-notification__action-button\") actionableButton = true;\n\t@HostBinding(\"attr.type\") type = \"button\";\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsActionableSubtitle], [ibmActionableSubtitle]\"\n})\nexport class ActionableSubtitle {\n\t@HostBinding(\"class.cds--actionable-notification__subtitle\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsActionableTitle], [ibmActionableTitle]\"\n})\nexport class ActionableTitle {\n\t@HostBinding(\"class.cds--actionable-notification__title\") baseClass = true;\n}\n","import {\n\tInjectable,\n\tApplicationRef\n} from \"@angular/core\";\n\n@Injectable()\nexport class NotificationDisplayService {\n\tconstructor(protected applicationRef: ApplicationRef) {}\n\n\t/**\n\t * Programatically closes notification based on `notificationRef`.\t *\n\t */\n\tclose(notificationRef: any) {\n\t\tif (notificationRef.hostView) {\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.applicationRef.detachView(notificationRef.hostView);\n\t\t\t\tnotificationRef.destroy();\n\t\t\t}, 200);\n\t\t}\n\t}\n}\n","import {\n\tOutput,\n\tEventEmitter,\n\tHostBinding,\n\tComponent,\n\tComponentRef\n} from \"@angular/core\";\nimport { isObservable, Subject } from \"rxjs\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NotificationContent, NotificationType } from \"./notification-content.interface\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\n\n/**\n * Base class for `Notification`, `ActionableNotification`, & `Toast`\n * consisting of common functionality\n *\n * Get started with importing the module:\n *\n * ```typescript\n * import { NotificationModule } from 'carbon-components-angular';\n * ```\n *\n * [See demo](../../?path=/story/components-notification--inline-notification)\n */\n@Component({\n\ttemplate: \"\"\n})\nexport class BaseNotification {\n\t/**\n\t * Set role attribute for component\n\t * `Status` is default for inline-notification & toast component\n\t * `alertdialog` is default for actionable-notification\n\t */\n\t@HostBinding(\"attr.role\") get roleAttr(): string {\n\t\treturn this._notificationObj.role;\n\t}\n\n\t/**\n\t * Emits on close.\n\t */\n\t@Output() close: EventEmitter<any> = new EventEmitter();\n\n\t// Provides access to the component instance\n\tcomponentRef: ComponentRef<BaseNotification>;\n\n\t// Get icon name(value) for service based on the notification type (key)\n\treadonly iconDictionary = {\n\t\t\"error\": \"error--filled\",\n\t\t\"info\": \"information--filled\",\n\t\t\"info-square\": \"information--square--filled\",\n\t\t\"success\": \"checkmark--filled\",\n\t\t\"warning\": \"warning--filled\",\n\t\t\"warning-alt\": \"warning--alt--filled\"\n\t};\n\n\tprotected defaultNotificationObj: NotificationContent = {\n\t\ttitle: \"\",\n\t\tmessage: \"\",\n\t\ttype: \"info\" as NotificationType,\n\t\tshowClose: true,\n\t\tcloseLabel: this.i18n.get(\"NOTIFICATION.CLOSE_BUTTON\"),\n\t\trole: \"status\"\n\t};\n\n\tprotected _notificationObj: NotificationContent = Object.assign({}, this.defaultNotificationObj);\n\n\tconstructor(\n\t\tprotected notificationDisplayService: NotificationDisplayService,\n\t\tprotected i18n: I18n\n\t) { }\n\n\t/**\n\t * Emits close event.\n\t */\n\tonClose() {\n\t\tthis.close.emit();\n\t}\n\n\tonClick(action, event) {\n\t\tif (!action.click) {\n\t\t\treturn;\n\t\t}\n\t\tif (isObservable(action.click)) {\n\t\t\t(action.click as Subject<{ event: Event, action: any }>).next({ event, action });\n\t\t} else {\n\t\t\taction.click({ event, action });\n\t\t}\n\t}\n\n\tdestroy() {\n\t\tthis.notificationDisplayService.close(this);\n\t}\n}\n","import {\n\tComponent,\n\tInput,\n\tHostBinding\n} from \"@angular/core\";\n\nimport { isObservable, of } from \"rxjs\";\nimport { ActionableContent, NotificationVariants } from \"./notification-content.interface\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { BaseNotification } from \"./base-notification.component\";\n\n/**\n * Actionable notification allows for interactive elements within a notification. There are two variants offered, inline & toast.\n *\n * [See demo](../../?path=/story/components-notification--actionable-notification)\n */\n@Component({\n\tselector: \"cds-actionable-notification, ibm-actionable-notification\",\n\ttemplate: `\n\t\t<div class=\"cds--actionable-notification__details\">\n\t\t\t<svg\n\t\t\t\t[cdsIcon]=\"iconDictionary[notificationObj.type]\"\n\t\t\t\tsize=\"20\"\n\t\t\t\t*ngIf=\"notificationObj.type\"\n\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t'cds--inline-notification__icon': notificationObj.variant === 'inline',\n\t\t\t\t\t'cds--toast-notification__icon': notificationObj.variant === 'toast'\n\t\t\t\t}\"\n\t\t\t\tclass=\"cds--actionable-notification__icon\">\n\t\t\t</svg>\n\t\t\t<div class=\"cds--actionable-notification__text-wrapper\">\n\t\t\t\t<div class=\"cds--actionable-notification__content\">\n\t\t\t\t\t<div *ngIf=\"!notificationObj.template\" cdsActionableTitle [innerHTML]=\"notificationObj.title\"></div>\n\t\t\t\t\t<div *ngIf=\"!notificationObj.template\" cdsActionableSubtitle>\n\t\t\t\t\t\t<span [innerHTML]=\"notificationObj.message\"></span>\n\t\t\t\t\t\t<ng-container *ngFor=\"let link of notificationObj.links\">\n\t\t\t\t\t\t\t<a cdsLink [href]=\"link.href\">{{link.text}}</a>\n\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t</div>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"notificationObj.template; context: { $implicit: notificationObj }\"></ng-container>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<ng-container *ngIf=\"!notificationObj.actionsTemplate\">\n\t\t\t<button\n\t\t\t\t*ngFor=\"let action of notificationObj.actions\"\n\t\t\t\t(click)=\"onClick(action, $event)\"\n\t\t\t\t[cdsButton]=\"notificationObj.variant === 'inline' ? 'ghost' : 'tertiary'\"\n\t\t\t\tsize=\"sm\"\n\t\t\t\tcdsActionableButton>\n\t\t\t\t{{action.text}}\n\t\t\t</button>\n\t\t</ng-container>\n\t\t<ng-container *ngTemplateOutlet=\"notificationObj.actionsTemplate; context: { $implicit: notificationObj }\"></ng-container>\n\t\t<button\n\t\t\t*ngIf=\"!isCloseHidden\"\n\t\t\t(click)=\"onClose()\"\n\t\t\tclass=\"cds--actionable-notification__close-button\"\n\t\t\t[attr.aria-label]=\"notificationObj.closeLabel | async\"\n\t\t\ttype=\"button\">\n\t\t\t<svg cdsIcon=\"close\" size=\"16\" class=\"cds--actionable-notification__close-icon\"></svg>\n\t\t</button>\n\t`\n})\nexport class ActionableNotification extends BaseNotification {\n\tprivate static notificationCount = 0;\n\t/**\n\t * Can have `type`, `title`, and `message` members.\n\t *\n\t * `type` can be one of `\"error\"`, `\"info\"`, `\"info-square\"`, `\"warning\"`, `\"warning-alt\"`, or `\"success\"`\n\t *\n\t * `message` is the message to display\n\t */\n\t@Input() get notificationObj(): ActionableContent {\n\t\treturn this._notificationObj;\n\t}\n\tset notificationObj(obj: ActionableContent) {\n\t\tif (obj.closeLabel && !isObservable(obj.closeLabel)) {\n\t\t\tobj.closeLabel = of(obj.closeLabel);\n\t\t}\n\t\tthis._notificationObj = Object.assign({}, this.defaultNotificationObj, obj);\n\t}\n\n\t@HostBinding(\"attr.id\") notificationID = `notification-${ActionableNotification.notificationCount++}`;\n\t@HostBinding(\"class.cds--actionable-notification\") notificationClass = true;\n\t@HostBinding(\"class.cds--actionable-notification--toast\") get toastVariant() { return this.notificationObj.variant === \"toast\"; }\n\t@HostBinding(\"class.cds--actionable-notification--error\") get isError() { return this.notificationObj.type === \"error\"; }\n\t@HostBinding(\"class.cds--actionable-notification--info\") get isInfo() { return this.notificationObj.type === \"info\"; }\n\t@HostBinding(\"class.cds--actionable-notification--info-square\") get isInfoSquare() { return this.notificationObj.type === \"info-square\"; }\n\t@HostBinding(\"class.cds--actionable-notification--success\") get isSuccess() { return this.notificationObj.type === \"success\"; }\n\t@HostBinding(\"class.cds--actionable-notification--warning\") get isWarning() { return this.notificationObj.type === \"warning\"; }\n\t@HostBinding(\"class.cds--actionable-notification--warning-alt\") get isWarningAlt() { return this.notificationObj.type === \"warning-alt\"; }\n\t@HostBinding(\"class.cds--actionable-notification--low-contrast\") get isLowContrast() { return this.notificationObj.lowContrast; }\n\t@HostBinding(\"class.cds--actionable-notification--hide-close-button\") get isCloseHidden() { return !this._notificationObj.showClose; }\n\n\t/**\n\t * Set default variant & role, alternatives can be provided through notificationObj property\n\t */\n\tdefaultNotificationObj = {\n\t\t...this.defaultNotificationObj,\n\t\tvariant: \"inline\" as NotificationVariants,\n\t\trole: \"alertdialog\"\n\t};\n\n\tconstructor(protected notificationDisplayService: NotificationDisplayService, protected i18n: I18n) {\n\t\tsuper(notificationDisplayService, i18n);\n\t}\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsNotificationSubtitle], [ibmNotificationSubtitle]\"\n})\nexport class NotificationSubtitle {\n\t@HostBinding(\"class.cds--inline-notification__subtitle\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsNotificationTitle], [ibmNotificationTitle]\"\n})\nexport class NotificationTitle {\n\t@HostBinding(\"class.cds--inline-notification__title\") baseClass = true;\n}\n","import {\n\tComponent,\n\tInput,\n\tHostBinding\n} from \"@angular/core\";\n\nimport { NotificationContent } from \"./notification-content.interface\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { isObservable, of } from \"rxjs\";\nimport { BaseNotification } from \"./base-notification.component\";\n\n/**\n * Notification messages are displayed toward the top of the UI and do not interrupt user’s work.\n *\n * [See demo](../../?path=/story/components-notification--basic)\n */\n@Component({\n\tselector: \"cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification\",\n\ttemplate: `\n\t\t<div class=\"cds--inline-notification__details\">\n\t\t\t<svg\n\t\t\t\t[cdsIcon]=\"iconDictionary[notificationObj.type]\"\n\t\t\t\tsize=\"20\"\n\t\t\t\t*ngIf=\"notificationObj.type\"\n\t\t\t\tclass=\"cds--inline-notification__icon\">\n\t\t\t</svg>\n\t\t\t<div class=\"cds--inline-notification__text-wrapper\">\n\t\t\t\t<div *ngIf=\"!notificationObj.template\" cdsNotificationTitle [innerHTML]=\"notificationObj.title\"></div>\n\t\t\t\t<div *ngIf=\"!notificationObj.template\" cdsNotificationSubtitle>\n\t\t\t\t\t<span [innerHTML]=\"notificationObj.message\"></span>\n\t\t\t\t</div>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"notificationObj.template; context: { $implicit: notificationObj}\"></ng-container>\n\t\t\t</div>\n\t\t</div>\n\t\t<button\n\t\t\t*ngIf=\"!isCloseHidden\"\n\t\t\t(click)=\"onClose()\"\n\t\t\tclass=\"cds--inline-notification__close-button\"\n\t\t\t[attr.aria-label]=\"notificationObj.closeLabel | async\"\n\t\t\ttype=\"button\">\n\t\t\t<svg cdsIcon=\"close\" size=\"16\" class=\"cds--inline-notification__close-icon\"></svg>\n\t\t</button>\n\t`\n})\nexport class Notification extends BaseNotification {\n\tprivate static notificationCount = 0;\n\t/**\n\t * Can have `type`, `title`, and `message` members.\n\t *\n\t * `type` can be one of `\"error\"`, `\"info\"`, `\"info-square\"`, `\"warning\"`, `\"warning-alt\"`, or `\"success\"`\n\t *\n\t * `message` is the message to display\n\t */\n\t@Input() get notificationObj(): NotificationContent {\n\t\treturn this._notificationObj;\n\t}\n\tset notificationObj(obj: NotificationContent) {\n\t\tif (obj.closeLabel && !isObservable(obj.closeLabel)) {\n\t\t\tobj.closeLabel = of(obj.closeLabel);\n\t\t}\n\t\tthis._notificationObj = Object.assign({}, this.defaultNotificationObj, obj);\n\t}\n\n\t@HostBinding(\"attr.id\") notificationID = `notification-${Notification.notificationCount++}`;\n\t@HostBinding(\"class.cds--inline-notification\") notificationClass = true;\n\t@HostBinding(\"class.cds--inline-notification--error\") get isError() { return this.notificationObj.type === \"error\"; }\n\t@HostBinding(\"class.cds--inline-notification--info\") get isInfo() { return this.notificationObj.type === \"info\"; }\n\t@HostBinding(\"class.cds--inline-notification--info-square\") get isInfoSquare() { return this.notificationObj.type === \"info-square\"; }\n\t@HostBinding(\"class.cds--inline-notification--success\") get isSuccess() { return this.notificationObj.type === \"success\"; }\n\t@HostBinding(\"class.cds--inline-notification--warning\") get isWarning() { return this.notificationObj.type === \"warning\"; }\n\t@HostBinding(\"class.cds--inline-notification--warning-alt\") get isWarningAlt() { return this.notificationObj.type === \"warning-alt\"; }\n\t@HostBinding(\"class.cds--inline-notification--low-contrast\") get isLowContrast() { return this.notificationObj.lowContrast; }\n\t@HostBinding(\"class.cds--inline-notification--hide-close-button\") get isCloseHidden() { return !this.notificationObj.showClose; }\n\n\tconstructor(protected notificationDisplayService: NotificationDisplayService, protected i18n: I18n) {\n\t\tsuper(notificationDisplayService, i18n);\n\t}\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsToastTitle], [ibmToastTitle]\"\n})\nexport class ToastTitle {\n\t@HostBinding(\"class.cds--toast-notification__title\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsToastSubtitle], [ibmToastSubtitle]\"\n})\nexport class ToastSubtitle {\n\t@HostBinding(\"class.cds--toast-notification__subtitle\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsToastCaption], [ibmToastCaption]\"\n})\nexport class ToastCaption {\n\t@HostBinding(\"class.cds--toast-notification__caption\") baseClass = true;\n}\n","import {\n\tComponent,\n\tInput,\n\tOnInit,\n\tHostBinding\n} from \"@angular/core\";\n\nimport { isObservable, of } from \"rxjs\";\nimport { ToastContent } from \"./notification-content.interface\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { BaseNotification } from \"./base-notification.component\";\n\n/**\n * Toast messages are displayed toward the top of the UI and do not interrupt user’s work.\n *\n * [See demo](../../?path=/story/components-notification--toast)\n */\n@Component({\n\tselector: \"cds-toast, ibm-toast\",\n\ttemplate: `\n\t\t<svg\n\t\t\t[cdsIcon]=\"iconDictionary[notificationObj.type]\"\n\t\t\tsize=\"20\"\n\t\t\t*ngIf=\"notificationObj.type\"\n\t\t\tclass=\"cds--toast-notification__icon\">\n\t\t</svg>\n\t\t<div class=\"cds--toast-notification__details\">\n\t\t\t<h3 *ngIf=\"!notificationObj.template\" cdsToastTitle [innerHTML]=\"notificationObj.title\"></h3>\n\t\t\t<div *ngIf=\"!notificationObj.template\" cdsToastSubtitle>\n\t\t\t\t<span [innerHTML]=\"notificationObj.subtitle\"></span>\n\t\t\t</div>\n\t\t\t<p *ngIf=\"!notificationObj.template\" cdsToastCaption [innerHTML]=\"notificationObj.caption\"></p>\n\t\t\t<ng-container *ngTemplateOutlet=\"notificationObj.template; context: { $implicit: notificationObj }\"></ng-container>\n\t\t</div>\n\t\t<button\n\t\t\t*ngIf=\"!isCloseHidden\"\n\t\t\tclass=\"cds--toast-notification__close-button\"\n\t\t\ttype=\"button\"\n\t\t\t[attr.aria-label]=\"notificationObj.closeLabel | async\"\n\t\t\t(click)=\"onClose()\">\n\t\t\t<svg cdsIcon=\"close\" size=\"16\" class=\"cds--toast-notification__close-icon\"></svg>\n\t\t</button>\n\t`\n})\nexport class Toast extends BaseNotification implements OnInit {\n\tprivate static toastCount = 0;\n\t/**\n\t * Can have `type`, `title`, `subtitle`, and `caption` members.\n\t *\n\t * `type` can be one of `\"error\"`, `\"info\"`, `\"info-square\"`, `\"warning\"`, `\"warning-alt\"`, or `\"success\"`\n\t */\n\t@Input() set notificationObj(obj: ToastContent) {\n\t\tif (obj.closeLabel && !isObservable(obj.closeLabel)) {\n\t\t\tobj.closeLabel = of(obj.closeLabel);\n\t\t}\n\t\tthis._notificationObj = Object.assign({}, this.defaultNotificationObj, obj);\n\t}\n\n\tget notificationObj(): ToastContent {\n\t\treturn this._notificationObj as ToastContent;\n\t}\n\n\n\t@HostBinding(\"attr.id\") toastID = `toast-${Toast.toastCount++}`;\n\t@HostBinding(\"class.cds--toast-notification\") toastClass = true;\n\t@HostBinding(\"class.cds--toast-notification--error\") get isError() { return this.notificationObj.type === \"error\"; }\n\t@HostBinding(\"class.cds--toast-notification--info\") get isInfo() { return this.notificationObj.type === \"info\"; }\n\t@HostBinding(\"class.cds--toast-notification--info-square\") get isInfoSquare() { return this.notificationObj.type === \"info-square\"; }\n\t@HostBinding(\"class.cds--toast-notification--success\") get isSuccess() { return this.notificationObj.type === \"success\"; }\n\t@HostBinding(\"class.cds--toast-notification--warning\") get isWarning() { return this.notificationObj.type === \"warning\"; }\n\t@HostBinding(\"class.cds--toast-notification--warning-alt\") get isWarningAlt() { return this.notificationObj.type === \"warning-alt\"; }\n\t@HostBinding(\"class.cds--toast-notification--low-contrast\") get isLowContrast() { return this.notificationObj.lowContrast; }\n\t@HostBinding(\"class.cds--toast-notification--hide-close-button\") get isCloseHidden() { return !this.notificationObj.showClose; }\n\n\tconstructor(protected notificationDisplayService: NotificationDisplayService, protected i18n: I18n) {\n\t\tsuper(notificationDisplayService, i18n);\n\t}\n\n\tngOnInit() {\n\t\tif (!this.notificationObj.closeLabel) {\n\t\t\tthis.notificationObj.closeLabel = this.i18n.get().NOTIFICATION.CLOSE_BUTTON;\n\t\t}\n\t}\n}\n","import {\n\tComponentRef,\n\tEventEmitter,\n\tInjectable,\n\tOnDestroy,\n\tNgZone,\n\tViewContainerRef,\n\tInjector\n} from \"@angular/core\";\n\nimport { NotificationContent, ToastContent, ActionableContent } from \"./notification-content.interface\";\nimport { Notification } from \"./notification.component\";\nimport { Toast } from \"./toast.component\";\nimport { ActionableNotification } from \"./actionable-notification.component\";\n\n/**\n * Provides a way to use the notification component.\n *\n * Notifications are displayed toward the top of the UI and do not interrupt the user’s work.\n */\n@Injectable()\nexport class NotificationService implements OnDestroy {\n\t/**\n\t * An array containing `ComponentRef`s to all the notifications this service instance\n\t * is responsible for.\n\t *\n\t */\n\tpublic notificationRefs = new Array<ComponentRef<any>>();\n\tpublic onClose: EventEmitter<any> = new EventEmitter();\n\n\t/**\n\t * Constructs Notification Service\n\t */\n\tconstructor(\n\t\tprotected injector: Injector,\n\t\tprotected viewContainer: ViewContainerRef,\n\t\tprotected ngZone: NgZone\n\t) {}\n\n\t/**\n\t * Shows the notification based on the `notificationObj`.\n\t *\n\t * @param notificationObj Can have `type`, `message`, `target`, `duration` and `smart` members.\n\t *\n\t * **Members:**\n\t *\n\t * * `type` can be one of `\"info\"`, `\"warning\"`, `\"danger\"`, `\"success\"`\n\t * * `message` is message for notification to display\n\t * * `target` is css selector defining an element to append notification to. If not provided,\n\t * `showNotification()` creates a place for the notification in `body`\n\t * * `duration` is number of ms to close the notification after. If used in combination with `smart`,\n\t * it's added to the calculated timeout\n\t * * `smart`, set to `true` if you want to use smart notification.\n\t *\n\t * **Example:**\n\t * ```typescript\n\t * // Info notification, saying \"Sample message.\" added to the element with id notification-container\n\t * // uses smart timeout with added duration of 1 second.\n\t * {\n\t *\ttype: \"info\",\n\t *\tmessage: \"Sample message.\",\n\t *\ttarget: \"#notification-container\",\n\t *\tduration: 1000,\n\t *\tsmart: true\n\t * }\n\t * ```\n\t *\n\t * @param [notificationComp=Notification] If provided, used to resolve component factory\n\t */\n\tshowNotification(\n\t\tnotificationObj: NotificationContent | ToastContent | ActionableContent,\n\t\tnotificationComp = Notification\n\t) {\n\t\tconst notificationRef = this.viewContainer.createComponent(notificationComp);\n\t\tnotificationRef.instance.notificationObj = notificationObj;\n\t\tthis.notificationRefs.push(notificationRef);\n\n\t\tthis.onClose = notificationRef.instance.close;\n\n\t\tif (notificationObj.target) {\n\t\t\tdocument.querySelector(notificationObj.target).appendChild(notificationRef.location.nativeElement);\n\t\t} else {\n\t\t\tlet body = document.querySelector(\"body\");\n\n\t\t\t// get or create a container for alert list\n\t\t\tlet notificationClassName = \"notification-overlay\";\n\t\t\tlet notificationList = body.querySelector(`.${notificationClassName}`);\n\t\t\tif (!notificationList) {\n\t\t\t\tnotificationList = document.createElement(\"div\");\n\t\t\t\tnotificationList.className = notificationClassName;\n\t\t\t\tbody.appendChild(notificationList);\n\t\t\t}\n\n\t\t\t// add the notification to the top of the list\n\t\t\tif (notificationList.firstChild) {\n\t\t\t\tnotificationList.insertBefore(notificationRef.location.nativeElement, notificationList.firstChild);\n\t\t\t} else {\n\t\t\t\tnotificationList.appendChild(notificationRef.location.nativeElement);\n\t\t\t}\n\t\t}\n\n\t\tif (notificationObj.duration && notificationObj.duration > 0) {\n\t\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\t\tthis.close(notificationRef);\n\t\t\t\t\t});\n\t\t\t\t}, notificationObj.duration);\n\t\t\t});\n\t\t}\n\n\t\tif (notificationObj.smart) {\n\t\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\t\t// let it disappear after calculated timeout\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\t\tthis.close(notificationRef);\n\t\t\t\t\t});\n\t\t\t\t}, this.getSmartTimeout(notificationObj));\n\t\t\t});\n\t\t}\n\n\t\tthis.onClose.subscribe(() => {\n\t\t\tthis.close(notificationRef);\n\t\t});\n\n\t\tnotificationRef.instance.componentRef = notificationRef;\n\t\treturn notificationRef.instance;\n\t}\n\n\tshowToast(notificationObj: NotificationContent | ToastContent, notificationComp = Toast) {\n\t\treturn this.showNotification(notificationObj, notificationComp as any);\n\t}\n\n\tshowActionable(notificationObj: ActionableContent, notificationComp = ActionableNotification) {\n\t\treturn this.showNotification(notificationObj, notificationComp as any);\n\t}\n\n\t/**\n\t * Programatically closes notification based on `notificationRef`.\n\t *\n\t * @param notificationRef `ComponentRef` of a notification or `Notification` component you wish to close\n\t */\n\tclose(notificationRef: any) {\n\t\tif (notificationRef) {\n\t\t\tif (notificationRef instanceof Notification) {\n\t\t\t\tthis.close(notificationRef.componentRef);\n\t\t\t} else {\n\t\t\t\tnotificationRef.destroy();\n\t\t\t\tconst index = this.notificationRefs.indexOf(notificationRef);\n\t\t\t\tif (index !== -1) {\n\t\t\t\t\tthis.notificationRefs.splice(index, 1);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Calculates the amount of time user needs to read the message in the notification.\n\t *\n\t * @param notificationObj Same object used to instantiate notification.\n\t *\n\t * In addition to `type` and `message` members, use `duration` member to add\n\t * some extra time (in ms) to timeout if you need to.\n\t * @returns calculated timeout (in ms) for smart notification\n\t */\n\tgetSmartTimeout(notificationObj): number {\n\t\t// calculate timeout\n\t\tlet timeout = 600; // start with reaction time\n\n\t\t// custom duration\n\t\ttimeout += notificationObj.duration || 0;\n\n\t\t// message type\n\t\tswitch (notificationObj.type) {\n\t\t\tcase \"info\":\n\t\t\tcase \"info-square\":\n\t\t\tcase \"success\":\n\t\t\tdefault: {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"danger\": {\n\t\t\t\ttimeout += 3000;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"warning\":\n\t\t\tcase \"warning-alt\": {\n\t\t\t\ttimeout += 1500;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// message length\n\t\t// average reader reads around 200 words per minute, or it takes them ~0.3s per word\n\t\t// let's use 1.5 factor for below average speed readers and have 0.45s per word\n\t\tlet wordCount = notificationObj.message.trim().split(/\\s+/).length;\n\t\ttimeout += wordCount * 450;\n\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * OnDestroy hook.\n\t *\n\t * Destroys all living notifications it is responsible for.\n\t *\n\t */\n\tngOnDestroy() {\n\t\tthis.notificationRefs.forEach((ref) => {\n\t\t\tref.destroy();\n\t\t});\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { ButtonModule } from \"carbon-components-angular/button\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { ActionableNotification } from \"./actionable-notification.component\";\nimport { ActionableButton } from \"./actionable-button.directive\";\nimport { ActionableTitle } from \"./actionable-title.directive\";\nimport { ActionableSubtitle } from \"./actionable-subtitle.directive\";\nimport { BaseNotification } from \"./base-notification.component\";\nimport { Toast } from \"./toast.component\";\nimport { ToastTitle } from \"./toast-title.directive\";\nimport { ToastSubtitle } from \"./toast-subtitle.directive\";\nimport { ToastCaption } from \"./toast-caption.directive\";\nimport { NotificationTitle } from \"./notification-title.directive\";\nimport { NotificationSubtitle } from \"./notification-subtitle.directive\";\nimport { Notification } from \"./notification.component\";\nimport { NotificationService } from \"./notification.service\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { I18nModule } from \"carbon-components-angular/i18n\";\nimport { ExperimentalModule } from \"carbon-components-angular/experimental\";\nimport { LinkModule } from \"carbon-components-angular/link\";\nimport { IconModule } from \"carbon-components-angular/icon\";\n\n@NgModule({\n\tdeclarations: [\n\t\tActionableButton,\n\t\tActionableNotification,\n\t\tActionableTitle,\n\t\tActionableSubtitle,\n\t\tBaseNotification,\n\t\tNotification,\n\t\tToast,\n\t\tToastTitle,\n\t\tToastSubtitle,\n\t\tToastCaption,\n\t\tNotificationTitle,\n\t\tNotificationSubtitle\n\t],\n\texports: [\n\t\tNotification,\n\t\tActionableButton,\n\t\tActionableNotification,\n\t\tActionableTitle,\n\t\tActionableSubtitle,\n\t\tToast,\n\t\tToastTitle,\n\t\tToastSubtitle,\n\t\tToastCaption,\n\t\tNotificationTitle,\n\t\tNotificationSubtitle\n\t],\n\timports: [\n\t\tButtonModule,\n\t\tCommonModule,\n\t\tI18nModule,\n\t\tExperimentalModule,\n\t\tLinkModule,\n\t\tIconModule\n\t],\n\tproviders: [NotificationService, NotificationDisplayService]\n})\nexport class NotificationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.NotificationDisplayService","i4","i6","i7.ActionableButton","i8.ActionableTitle","i9.ActionableSubtitle","i3","i5.NotificationTitle","i6.NotificationSubtitle","i5.ToastTitle","i6.ToastSubtitle","i7.ToastCaption"],"mappings":"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"}
1
+ {"version":3,"file":"carbon-components-angular-notification.mjs","sources":["../../src/notification/actionable-button.directive.ts","../../src/notification/actionable-subtitle.directive.ts","../../src/notification/actionable-title.directive.ts","../../src/notification/notification-display.service.ts","../../src/notification/base-notification.component.ts","../../src/notification/actionable-notification.component.ts","../../src/notification/notification-subtitle.directive.ts","../../src/notification/notification-title.directive.ts","../../src/notification/notification.component.ts","../../src/notification/toast-title.directive.ts","../../src/notification/toast-subtitle.directive.ts","../../src/notification/toast-caption.directive.ts","../../src/notification/toast.component.ts","../../src/notification/notification.service.ts","../../src/notification/notification.module.ts","../../src/notification/carbon-components-angular-notification.ts"],"sourcesContent":["import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsActionableButton], [ibmActionableButton]\"\n})\nexport class ActionableButton {\n\t@HostBinding(\"class.cds--actionable-notification__action-button\") actionableButton = true;\n\t@HostBinding(\"attr.type\") type = \"button\";\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsActionableSubtitle], [ibmActionableSubtitle]\"\n})\nexport class ActionableSubtitle {\n\t@HostBinding(\"class.cds--actionable-notification__subtitle\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsActionableTitle], [ibmActionableTitle]\"\n})\nexport class ActionableTitle {\n\t@HostBinding(\"class.cds--actionable-notification__title\") baseClass = true;\n}\n","import {\n\tInjectable,\n\tApplicationRef\n} from \"@angular/core\";\n\n@Injectable()\nexport class NotificationDisplayService {\n\tconstructor(protected applicationRef: ApplicationRef) {}\n\n\t/**\n\t * Programatically closes notification based on `notificationRef`.\t *\n\t */\n\tclose(notificationRef: any) {\n\t\tif (notificationRef.hostView) {\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.applicationRef.detachView(notificationRef.hostView);\n\t\t\t\tnotificationRef.destroy();\n\t\t\t}, 200);\n\t\t}\n\t}\n}\n","import {\n\tOutput,\n\tEventEmitter,\n\tHostBinding,\n\tComponent,\n\tComponentRef\n} from \"@angular/core\";\nimport { isObservable, Subject } from \"rxjs\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NotificationContent, NotificationType } from \"./notification-content.interface\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\n\n/**\n * Base class for `Notification`, `ActionableNotification`, & `Toast`\n * consisting of common functionality\n *\n * Get started with importing the module:\n *\n * ```typescript\n * import { NotificationModule } from 'carbon-components-angular';\n * ```\n *\n * [See demo](../../?path=/story/components-notification--inline-notification)\n */\n@Component({\n\ttemplate: \"\"\n})\nexport class BaseNotification {\n\t/**\n\t * Set role attribute for component\n\t * `Status` is default for inline-notification & toast component\n\t * `alertdialog` is default for actionable-notification\n\t */\n\t@HostBinding(\"attr.role\") get roleAttr(): string {\n\t\treturn this._notificationObj.role;\n\t}\n\n\t/**\n\t * Emits on close.\n\t */\n\t@Output() close: EventEmitter<any> = new EventEmitter();\n\n\t// Provides access to the component instance\n\tcomponentRef: ComponentRef<BaseNotification>;\n\n\t// Get icon name(value) for service based on the notification type (key)\n\treadonly iconDictionary = {\n\t\t\"error\": \"error--filled\",\n\t\t\"info\": \"information--filled\",\n\t\t\"info-square\": \"information--square--filled\",\n\t\t\"success\": \"checkmark--filled\",\n\t\t\"warning\": \"warning--filled\",\n\t\t\"warning-alt\": \"warning--alt--filled\"\n\t};\n\n\tprotected defaultNotificationObj: NotificationContent = {\n\t\ttitle: \"\",\n\t\tmessage: \"\",\n\t\ttype: \"info\" as NotificationType,\n\t\tshowClose: true,\n\t\tcloseLabel: this.i18n.get(\"NOTIFICATION.CLOSE_BUTTON\"),\n\t\trole: \"status\"\n\t};\n\n\tprotected _notificationObj: NotificationContent = Object.assign({}, this.defaultNotificationObj);\n\n\tconstructor(\n\t\tprotected notificationDisplayService: NotificationDisplayService,\n\t\tprotected i18n: I18n\n\t) { }\n\n\t/**\n\t * Emits close event.\n\t */\n\tonClose() {\n\t\tthis.close.emit();\n\t}\n\n\tonClick(action, event) {\n\t\tif (!action.click) {\n\t\t\treturn;\n\t\t}\n\t\tif (isObservable(action.click)) {\n\t\t\t(action.click as Subject<{ event: Event, action: any }>).next({ event, action });\n\t\t} else {\n\t\t\taction.click({ event, action });\n\t\t}\n\t}\n\n\tdestroy() {\n\t\tthis.notificationDisplayService.close(this);\n\t}\n}\n","import {\n\tComponent,\n\tInput,\n\tHostBinding\n} from \"@angular/core\";\n\nimport { isObservable, of } from \"rxjs\";\nimport { ActionableContent, NotificationVariants } from \"./notification-content.interface\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { BaseNotification } from \"./base-notification.component\";\n\n/**\n * Actionable notification allows for interactive elements within a notification. There are two variants offered, inline & toast.\n *\n * [See demo](../../?path=/story/components-notification--actionable-notification)\n */\n@Component({\n\tselector: \"cds-actionable-notification, ibm-actionable-notification\",\n\ttemplate: `\n\t\t<div class=\"cds--actionable-notification__details\">\n\t\t\t<svg\n\t\t\t\t[cdsIcon]=\"iconDictionary[notificationObj.type]\"\n\t\t\t\tsize=\"20\"\n\t\t\t\t*ngIf=\"notificationObj.type\"\n\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t'cds--inline-notification__icon': notificationObj.variant === 'inline',\n\t\t\t\t\t'cds--toast-notification__icon': notificationObj.variant === 'toast'\n\t\t\t\t}\"\n\t\t\t\tclass=\"cds--actionable-notification__icon\">\n\t\t\t</svg>\n\t\t\t<div class=\"cds--actionable-notification__text-wrapper\">\n\t\t\t\t<div class=\"cds--actionable-notification__content\">\n\t\t\t\t\t<div\n\t\t\t\t\t\tcdsActionableTitle\n\t\t\t\t\t\t*ngIf=\"!notificationObj.template\"\n\t\t\t\t\t\t[id]=\"notificationID\"\n\t\t\t\t\t\t[innerHTML]=\"notificationObj.title\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div *ngIf=\"!notificationObj.template\" cdsActionableSubtitle>\n\t\t\t\t\t\t<span [innerHTML]=\"notificationObj.message\"></span>\n\t\t\t\t\t\t<ng-container *ngFor=\"let link of notificationObj.links\">\n\t\t\t\t\t\t\t<a cdsLink [href]=\"link.href\">{{link.text}}</a>\n\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t</div>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"notificationObj.template; context: { $implicit: notificationObj }\"></ng-container>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<ng-container *ngIf=\"!notificationObj.actionsTemplate\">\n\t\t\t<button\n\t\t\t\t*ngFor=\"let action of notificationObj.actions\"\n\t\t\t\t(click)=\"onClick(action, $event)\"\n\t\t\t\t[cdsButton]=\"notificationObj.variant === 'inline' ? 'ghost' : 'tertiary'\"\n\t\t\t\tsize=\"sm\"\n\t\t\t\tcdsActionableButton>\n\t\t\t\t{{action.text}}\n\t\t\t</button>\n\t\t</ng-container>\n\t\t<ng-container *ngTemplateOutlet=\"notificationObj.actionsTemplate; context: { $implicit: notificationObj }\"></ng-container>\n\t\t<button\n\t\t\t*ngIf=\"!isCloseHidden\"\n\t\t\t(click)=\"onClose()\"\n\t\t\tclass=\"cds--actionable-notification__close-button\"\n\t\t\t[attr.aria-label]=\"notificationObj.closeLabel | async\"\n\t\t\ttype=\"button\">\n\t\t\t<svg cdsIcon=\"close\" size=\"16\" class=\"cds--actionable-notification__close-icon\"></svg>\n\t\t</button>\n\t`\n})\nexport class ActionableNotification extends BaseNotification {\n\tprivate static notificationCount = 0;\n\t/**\n\t * Can have `type`, `title`, and `message` members.\n\t *\n\t * `type` can be one of `\"error\"`, `\"info\"`, `\"info-square\"`, `\"warning\"`, `\"warning-alt\"`, or `\"success\"`\n\t *\n\t * `message` is the message to display\n\t */\n\t@Input() get notificationObj(): ActionableContent {\n\t\treturn this._notificationObj;\n\t}\n\tset notificationObj(obj: ActionableContent) {\n\t\tif (obj.closeLabel && !isObservable(obj.closeLabel)) {\n\t\t\tobj.closeLabel = of(obj.closeLabel);\n\t\t}\n\t\tthis._notificationObj = Object.assign({}, this.defaultNotificationObj, obj);\n\t}\n\n\tnotificationID = `actionable-notification-${ActionableNotification.notificationCount++}`;\n\t@HostBinding(\"attr.aria-labelledBy\") notificationLabel = this.notificationID;\n\t@HostBinding(\"class.cds--actionable-notification\") notificationClass = true;\n\t@HostBinding(\"class.cds--actionable-notification--toast\") get toastVariant() { return this.notificationObj.variant === \"toast\"; }\n\t@HostBinding(\"class.cds--actionable-notification--error\") get isError() { return this.notificationObj.type === \"error\"; }\n\t@HostBinding(\"class.cds--actionable-notification--info\") get isInfo() { return this.notificationObj.type === \"info\"; }\n\t@HostBinding(\"class.cds--actionable-notification--info-square\") get isInfoSquare() { return this.notificationObj.type === \"info-square\"; }\n\t@HostBinding(\"class.cds--actionable-notification--success\") get isSuccess() { return this.notificationObj.type === \"success\"; }\n\t@HostBinding(\"class.cds--actionable-notification--warning\") get isWarning() { return this.notificationObj.type === \"warning\"; }\n\t@HostBinding(\"class.cds--actionable-notification--warning-alt\") get isWarningAlt() { return this.notificationObj.type === \"warning-alt\"; }\n\t@HostBinding(\"class.cds--actionable-notification--low-contrast\") get isLowContrast() { return this.notificationObj.lowContrast; }\n\t@HostBinding(\"class.cds--actionable-notification--hide-close-button\") get isCloseHidden() { return !this._notificationObj.showClose; }\n\n\t/**\n\t * Set default variant & role, alternatives can be provided through notificationObj property\n\t */\n\tdefaultNotificationObj = {\n\t\t...this.defaultNotificationObj,\n\t\tvariant: \"inline\" as NotificationVariants,\n\t\trole: \"alertdialog\"\n\t};\n\n\tconstructor(protected notificationDisplayService: NotificationDisplayService, protected i18n: I18n) {\n\t\tsuper(notificationDisplayService, i18n);\n\t}\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsNotificationSubtitle], [ibmNotificationSubtitle]\"\n})\nexport class NotificationSubtitle {\n\t@HostBinding(\"class.cds--inline-notification__subtitle\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsNotificationTitle], [ibmNotificationTitle]\"\n})\nexport class NotificationTitle {\n\t@HostBinding(\"class.cds--inline-notification__title\") baseClass = true;\n}\n","import {\n\tComponent,\n\tInput,\n\tHostBinding\n} from \"@angular/core\";\n\nimport { NotificationContent } from \"./notification-content.interface\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { isObservable, of } from \"rxjs\";\nimport { BaseNotification } from \"./base-notification.component\";\n\n/**\n * Notification messages are displayed toward the top of the UI and do not interrupt user’s work.\n *\n * [See demo](../../?path=/story/components-notification--basic)\n */\n@Component({\n\tselector: \"cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification\",\n\ttemplate: `\n\t\t<div class=\"cds--inline-notification__details\">\n\t\t\t<svg\n\t\t\t\t[cdsIcon]=\"iconDictionary[notificationObj.type]\"\n\t\t\t\tsize=\"20\"\n\t\t\t\t*ngIf=\"notificationObj.type\"\n\t\t\t\tclass=\"cds--inline-notification__icon\">\n\t\t\t</svg>\n\t\t\t<div class=\"cds--inline-notification__text-wrapper\">\n\t\t\t\t<div\n\t\t\t\t\tcdsNotificationTitle\n\t\t\t\t\t*ngIf=\"!notificationObj.template\"\n\t\t\t\t\t[innerHTML]=\"notificationObj.title\"\n\t\t\t\t\t[id]=\"notificationID\">\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"!notificationObj.template\" cdsNotificationSubtitle>\n\t\t\t\t\t<span [innerHTML]=\"notificationObj.message\"></span>\n\t\t\t\t</div>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"notificationObj.template; context: { $implicit: notificationObj}\"></ng-container>\n\t\t\t</div>\n\t\t</div>\n\t\t<button\n\t\t\t*ngIf=\"!isCloseHidden\"\n\t\t\t(click)=\"onClose()\"\n\t\t\tclass=\"cds--inline-notification__close-button\"\n\t\t\t[attr.aria-label]=\"notificationObj.closeLabel | async\"\n\t\t\ttype=\"button\">\n\t\t\t<svg cdsIcon=\"close\" size=\"16\" class=\"cds--inline-notification__close-icon\"></svg>\n\t\t</button>\n\t`\n})\nexport class Notification extends BaseNotification {\n\tprivate static notificationCount = 0;\n\t/**\n\t * Can have `type`, `title`, and `message` members.\n\t *\n\t * `type` can be one of `\"error\"`, `\"info\"`, `\"info-square\"`, `\"warning\"`, `\"warning-alt\"`, or `\"success\"`\n\t *\n\t * `message` is the message to display\n\t */\n\t@Input() get notificationObj(): NotificationContent {\n\t\treturn this._notificationObj;\n\t}\n\tset notificationObj(obj: NotificationContent) {\n\t\tif (obj.closeLabel && !isObservable(obj.closeLabel)) {\n\t\t\tobj.closeLabel = of(obj.closeLabel);\n\t\t}\n\t\tthis._notificationObj = Object.assign({}, this.defaultNotificationObj, obj);\n\t}\n\n\tnotificationID = `notification-${Notification.notificationCount++}`;\n\t@HostBinding(\"attr.aria-labelledBy\") notificationLabel = this.notificationID;\n\t@HostBinding(\"class.cds--inline-notification\") notificationClass = true;\n\t@HostBinding(\"class.cds--inline-notification--error\") get isError() { return this.notificationObj.type === \"error\"; }\n\t@HostBinding(\"class.cds--inline-notification--info\") get isInfo() { return this.notificationObj.type === \"info\"; }\n\t@HostBinding(\"class.cds--inline-notification--info-square\") get isInfoSquare() { return this.notificationObj.type === \"info-square\"; }\n\t@HostBinding(\"class.cds--inline-notification--success\") get isSuccess() { return this.notificationObj.type === \"success\"; }\n\t@HostBinding(\"class.cds--inline-notification--warning\") get isWarning() { return this.notificationObj.type === \"warning\"; }\n\t@HostBinding(\"class.cds--inline-notification--warning-alt\") get isWarningAlt() { return this.notificationObj.type === \"warning-alt\"; }\n\t@HostBinding(\"class.cds--inline-notification--low-contrast\") get isLowContrast() { return this.notificationObj.lowContrast; }\n\t@HostBinding(\"class.cds--inline-notification--hide-close-button\") get isCloseHidden() { return !this.notificationObj.showClose; }\n\n\tconstructor(protected notificationDisplayService: NotificationDisplayService, protected i18n: I18n) {\n\t\tsuper(notificationDisplayService, i18n);\n\t}\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsToastTitle], [ibmToastTitle]\"\n})\nexport class ToastTitle {\n\t@HostBinding(\"class.cds--toast-notification__title\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsToastSubtitle], [ibmToastSubtitle]\"\n})\nexport class ToastSubtitle {\n\t@HostBinding(\"class.cds--toast-notification__subtitle\") baseClass = true;\n}\n","import { Directive, HostBinding } from \"@angular/core\";\n\n@Directive({\n\tselector: \"[cdsToastCaption], [ibmToastCaption]\"\n})\nexport class ToastCaption {\n\t@HostBinding(\"class.cds--toast-notification__caption\") baseClass = true;\n}\n","import {\n\tComponent,\n\tInput,\n\tOnInit,\n\tHostBinding\n} from \"@angular/core\";\n\nimport { isObservable, of } from \"rxjs\";\nimport { ToastContent } from \"./notification-content.interface\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { BaseNotification } from \"./base-notification.component\";\n\n/**\n * Toast messages are displayed toward the top of the UI and do not interrupt user’s work.\n *\n * [See demo](../../?path=/story/components-notification--toast)\n */\n@Component({\n\tselector: \"cds-toast, ibm-toast\",\n\ttemplate: `\n\t\t<svg\n\t\t\t[cdsIcon]=\"iconDictionary[notificationObj.type]\"\n\t\t\tsize=\"20\"\n\t\t\t*ngIf=\"notificationObj.type\"\n\t\t\tclass=\"cds--toast-notification__icon\">\n\t\t</svg>\n\t\t<div class=\"cds--toast-notification__details\">\n\t\t\t<h3 *ngIf=\"!notificationObj.template\" cdsToastTitle [innerHTML]=\"notificationObj.title\"></h3>\n\t\t\t<div *ngIf=\"!notificationObj.template\" cdsToastSubtitle>\n\t\t\t\t<span [innerHTML]=\"notificationObj.subtitle\"></span>\n\t\t\t</div>\n\t\t\t<p *ngIf=\"!notificationObj.template\" cdsToastCaption [innerHTML]=\"notificationObj.caption\"></p>\n\t\t\t<ng-container *ngTemplateOutlet=\"notificationObj.template; context: { $implicit: notificationObj }\"></ng-container>\n\t\t</div>\n\t\t<button\n\t\t\t*ngIf=\"!isCloseHidden\"\n\t\t\tclass=\"cds--toast-notification__close-button\"\n\t\t\ttype=\"button\"\n\t\t\t[attr.aria-label]=\"notificationObj.closeLabel | async\"\n\t\t\t(click)=\"onClose()\">\n\t\t\t<svg cdsIcon=\"close\" size=\"16\" class=\"cds--toast-notification__close-icon\"></svg>\n\t\t</button>\n\t`\n})\nexport class Toast extends BaseNotification implements OnInit {\n\tprivate static toastCount = 0;\n\t/**\n\t * Can have `type`, `title`, `subtitle`, and `caption` members.\n\t *\n\t * `type` can be one of `\"error\"`, `\"info\"`, `\"info-square\"`, `\"warning\"`, `\"warning-alt\"`, or `\"success\"`\n\t */\n\t@Input() set notificationObj(obj: ToastContent) {\n\t\tif (obj.closeLabel && !isObservable(obj.closeLabel)) {\n\t\t\tobj.closeLabel = of(obj.closeLabel);\n\t\t}\n\t\tthis._notificationObj = Object.assign({}, this.defaultNotificationObj, obj);\n\t}\n\n\tget notificationObj(): ToastContent {\n\t\treturn this._notificationObj as ToastContent;\n\t}\n\n\n\t@HostBinding(\"attr.id\") toastID = `toast-${Toast.toastCount++}`;\n\t@HostBinding(\"class.cds--toast-notification\") toastClass = true;\n\t@HostBinding(\"class.cds--toast-notification--error\") get isError() { return this.notificationObj.type === \"error\"; }\n\t@HostBinding(\"class.cds--toast-notification--info\") get isInfo() { return this.notificationObj.type === \"info\"; }\n\t@HostBinding(\"class.cds--toast-notification--info-square\") get isInfoSquare() { return this.notificationObj.type === \"info-square\"; }\n\t@HostBinding(\"class.cds--toast-notification--success\") get isSuccess() { return this.notificationObj.type === \"success\"; }\n\t@HostBinding(\"class.cds--toast-notification--warning\") get isWarning() { return this.notificationObj.type === \"warning\"; }\n\t@HostBinding(\"class.cds--toast-notification--warning-alt\") get isWarningAlt() { return this.notificationObj.type === \"warning-alt\"; }\n\t@HostBinding(\"class.cds--toast-notification--low-contrast\") get isLowContrast() { return this.notificationObj.lowContrast; }\n\t@HostBinding(\"class.cds--toast-notification--hide-close-button\") get isCloseHidden() { return !this.notificationObj.showClose; }\n\n\tconstructor(protected notificationDisplayService: NotificationDisplayService, protected i18n: I18n) {\n\t\tsuper(notificationDisplayService, i18n);\n\t}\n\n\tngOnInit() {\n\t\tif (!this.notificationObj.closeLabel) {\n\t\t\tthis.notificationObj.closeLabel = this.i18n.get().NOTIFICATION.CLOSE_BUTTON;\n\t\t}\n\t}\n}\n","import {\n\tComponentRef,\n\tEventEmitter,\n\tInjectable,\n\tOnDestroy,\n\tNgZone,\n\tViewContainerRef,\n\tInjector\n} from \"@angular/core\";\n\nimport { NotificationContent, ToastContent, ActionableContent } from \"./notification-content.interface\";\nimport { Notification } from \"./notification.component\";\nimport { Toast } from \"./toast.component\";\nimport { ActionableNotification } from \"./actionable-notification.component\";\n\n/**\n * Provides a way to use the notification component.\n *\n * Notifications are displayed toward the top of the UI and do not interrupt the user’s work.\n */\n@Injectable()\nexport class NotificationService implements OnDestroy {\n\t/**\n\t * An array containing `ComponentRef`s to all the notifications this service instance\n\t * is responsible for.\n\t *\n\t */\n\tpublic notificationRefs = new Array<ComponentRef<any>>();\n\tpublic onClose: EventEmitter<any> = new EventEmitter();\n\n\t/**\n\t * Constructs Notification Service\n\t */\n\tconstructor(\n\t\tprotected injector: Injector,\n\t\tprotected viewContainer: ViewContainerRef,\n\t\tprotected ngZone: NgZone\n\t) {}\n\n\t/**\n\t * Shows the notification based on the `notificationObj`.\n\t *\n\t * @param notificationObj Can have `type`, `message`, `target`, `duration` and `smart` members.\n\t *\n\t * **Members:**\n\t *\n\t * * `type` can be one of `\"info\"`, `\"warning\"`, `\"danger\"`, `\"success\"`\n\t * * `message` is message for notification to display\n\t * * `target` is css selector defining an element to append notification to. If not provided,\n\t * `showNotification()` creates a place for the notification in `body`\n\t * * `duration` is number of ms to close the notification after. If used in combination with `smart`,\n\t * it's added to the calculated timeout\n\t * * `smart`, set to `true` if you want to use smart notification.\n\t *\n\t * **Example:**\n\t * ```typescript\n\t * // Info notification, saying \"Sample message.\" added to the element with id notification-container\n\t * // uses smart timeout with added duration of 1 second.\n\t * {\n\t *\ttype: \"info\",\n\t *\tmessage: \"Sample message.\",\n\t *\ttarget: \"#notification-container\",\n\t *\tduration: 1000,\n\t *\tsmart: true\n\t * }\n\t * ```\n\t *\n\t * @param [notificationComp=Notification] If provided, used to resolve component factory\n\t */\n\tshowNotification(\n\t\tnotificationObj: NotificationContent | ToastContent | ActionableContent,\n\t\tnotificationComp = Notification\n\t) {\n\t\tconst notificationRef = this.viewContainer.createComponent(notificationComp);\n\t\tnotificationRef.instance.notificationObj = notificationObj;\n\t\tthis.notificationRefs.push(notificationRef);\n\n\t\tthis.onClose = notificationRef.instance.close;\n\n\t\tif (notificationObj.target) {\n\t\t\tdocument.querySelector(notificationObj.target).appendChild(notificationRef.location.nativeElement);\n\t\t} else {\n\t\t\tlet body = document.querySelector(\"body\");\n\n\t\t\t// get or create a container for alert list\n\t\t\tlet notificationClassName = \"notification-overlay\";\n\t\t\tlet notificationList = body.querySelector(`.${notificationClassName}`);\n\t\t\tif (!notificationList) {\n\t\t\t\tnotificationList = document.createElement(\"div\");\n\t\t\t\tnotificationList.className = notificationClassName;\n\t\t\t\tbody.appendChild(notificationList);\n\t\t\t}\n\n\t\t\t// add the notification to the top of the list\n\t\t\tif (notificationList.firstChild) {\n\t\t\t\tnotificationList.insertBefore(notificationRef.location.nativeElement, notificationList.firstChild);\n\t\t\t} else {\n\t\t\t\tnotificationList.appendChild(notificationRef.location.nativeElement);\n\t\t\t}\n\t\t}\n\n\t\tif (notificationObj.duration && notificationObj.duration > 0) {\n\t\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\t\tthis.close(notificationRef);\n\t\t\t\t\t});\n\t\t\t\t}, notificationObj.duration);\n\t\t\t});\n\t\t}\n\n\t\tif (notificationObj.smart) {\n\t\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\t\t// let it disappear after calculated timeout\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\t\tthis.close(notificationRef);\n\t\t\t\t\t});\n\t\t\t\t}, this.getSmartTimeout(notificationObj));\n\t\t\t});\n\t\t}\n\n\t\tthis.onClose.subscribe(() => {\n\t\t\tthis.close(notificationRef);\n\t\t});\n\n\t\tnotificationRef.instance.componentRef = notificationRef;\n\t\treturn notificationRef.instance;\n\t}\n\n\tshowToast(notificationObj: NotificationContent | ToastContent, notificationComp = Toast) {\n\t\treturn this.showNotification(notificationObj, notificationComp as any);\n\t}\n\n\tshowActionable(notificationObj: ActionableContent, notificationComp = ActionableNotification) {\n\t\treturn this.showNotification(notificationObj, notificationComp as any);\n\t}\n\n\t/**\n\t * Programatically closes notification based on `notificationRef`.\n\t *\n\t * @param notificationRef `ComponentRef` of a notification or `Notification` component you wish to close\n\t */\n\tclose(notificationRef: any) {\n\t\tif (notificationRef) {\n\t\t\tif (notificationRef instanceof Notification) {\n\t\t\t\tthis.close(notificationRef.componentRef);\n\t\t\t} else {\n\t\t\t\tnotificationRef.destroy();\n\t\t\t\tconst index = this.notificationRefs.indexOf(notificationRef);\n\t\t\t\tif (index !== -1) {\n\t\t\t\t\tthis.notificationRefs.splice(index, 1);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Calculates the amount of time user needs to read the message in the notification.\n\t *\n\t * @param notificationObj Same object used to instantiate notification.\n\t *\n\t * In addition to `type` and `message` members, use `duration` member to add\n\t * some extra time (in ms) to timeout if you need to.\n\t * @returns calculated timeout (in ms) for smart notification\n\t */\n\tgetSmartTimeout(notificationObj): number {\n\t\t// calculate timeout\n\t\tlet timeout = 600; // start with reaction time\n\n\t\t// custom duration\n\t\ttimeout += notificationObj.duration || 0;\n\n\t\t// message type\n\t\tswitch (notificationObj.type) {\n\t\t\tcase \"info\":\n\t\t\tcase \"info-square\":\n\t\t\tcase \"success\":\n\t\t\tdefault: {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"danger\": {\n\t\t\t\ttimeout += 3000;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"warning\":\n\t\t\tcase \"warning-alt\": {\n\t\t\t\ttimeout += 1500;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// message length\n\t\t// average reader reads around 200 words per minute, or it takes them ~0.3s per word\n\t\t// let's use 1.5 factor for below average speed readers and have 0.45s per word\n\t\tlet wordCount = notificationObj.message.trim().split(/\\s+/).length;\n\t\ttimeout += wordCount * 450;\n\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * OnDestroy hook.\n\t *\n\t * Destroys all living notifications it is responsible for.\n\t *\n\t */\n\tngOnDestroy() {\n\t\tthis.notificationRefs.forEach((ref) => {\n\t\t\tref.destroy();\n\t\t});\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { ButtonModule } from \"carbon-components-angular/button\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { ActionableNotification } from \"./actionable-notification.component\";\nimport { ActionableButton } from \"./actionable-button.directive\";\nimport { ActionableTitle } from \"./actionable-title.directive\";\nimport { ActionableSubtitle } from \"./actionable-subtitle.directive\";\nimport { BaseNotification } from \"./base-notification.component\";\nimport { Toast } from \"./toast.component\";\nimport { ToastTitle } from \"./toast-title.directive\";\nimport { ToastSubtitle } from \"./toast-subtitle.directive\";\nimport { ToastCaption } from \"./toast-caption.directive\";\nimport { NotificationTitle } from \"./notification-title.directive\";\nimport { NotificationSubtitle } from \"./notification-subtitle.directive\";\nimport { Notification } from \"./notification.component\";\nimport { NotificationService } from \"./notification.service\";\nimport { NotificationDisplayService } from \"./notification-display.service\";\nimport { I18nModule } from \"carbon-components-angular/i18n\";\nimport { ExperimentalModule } from \"carbon-components-angular/experimental\";\nimport { LinkModule } from \"carbon-components-angular/link\";\nimport { IconModule } from \"carbon-components-angular/icon\";\n\n@NgModule({\n\tdeclarations: [\n\t\tActionableButton,\n\t\tActionableNotification,\n\t\tActionableTitle,\n\t\tActionableSubtitle,\n\t\tBaseNotification,\n\t\tNotification,\n\t\tToast,\n\t\tToastTitle,\n\t\tToastSubtitle,\n\t\tToastCaption,\n\t\tNotificationTitle,\n\t\tNotificationSubtitle\n\t],\n\texports: [\n\t\tNotification,\n\t\tActionableButton,\n\t\tActionableNotification,\n\t\tActionableTitle,\n\t\tActionableSubtitle,\n\t\tToast,\n\t\tToastTitle,\n\t\tToastSubtitle,\n\t\tToastCaption,\n\t\tNotificationTitle,\n\t\tNotificationSubtitle\n\t],\n\timports: [\n\t\tButtonModule,\n\t\tCommonModule,\n\t\tI18nModule,\n\t\tExperimentalModule,\n\t\tLinkModule,\n\t\tIconModule\n\t],\n\tproviders: [NotificationService, NotificationDisplayService]\n})\nexport class NotificationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.NotificationDisplayService","i4","i6","i7.ActionableButton","i8.ActionableTitle","i9.ActionableSubtitle","i3","i5.NotificationTitle","i6.NotificationSubtitle","i5.ToastTitle","i6.ToastSubtitle","i7.ToastCaption"],"mappings":"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"}
@@ -1717,7 +1717,7 @@ DropdownList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
1717
1717
  class="cds--list-box__menu cds--multi-select"
1718
1718
  (scroll)="emitScroll($event)"
1719
1719
  (keydown)="navigateList($event)"
1720
- tabindex="-1"
1720
+ tabindex="0"
1721
1721
  [attr.aria-label]="ariaLabel"
1722
1722
  [attr.aria-activedescendant]="highlightedItem">
1723
1723
  <li
@@ -1727,6 +1727,7 @@ DropdownList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
1727
1727
  class="cds--list-box__menu-item"
1728
1728
  [attr.aria-selected]="item.selected"
1729
1729
  [id]="getItemId(i)"
1730
+ [attr.tabindex]="highlightedItem === getItemId(i) ? 0 : null"
1730
1731
  [attr.title]=" showTitles ? item.content : null"
1731
1732
  [attr.disabled]="item.disabled ? true : null"
1732
1733
  [ngClass]="{
@@ -1780,7 +1781,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1780
1781
  class="cds--list-box__menu cds--multi-select"
1781
1782
  (scroll)="emitScroll($event)"
1782
1783
  (keydown)="navigateList($event)"
1783
- tabindex="-1"
1784
+ tabindex="0"
1784
1785
  [attr.aria-label]="ariaLabel"
1785
1786
  [attr.aria-activedescendant]="highlightedItem">
1786
1787
  <li
@@ -1790,6 +1791,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1790
1791
  class="cds--list-box__menu-item"
1791
1792
  [attr.aria-selected]="item.selected"
1792
1793
  [id]="getItemId(i)"
1794
+ [attr.tabindex]="highlightedItem === getItemId(i) ? 0 : null"
1793
1795
  [attr.title]=" showTitles ? item.content : null"
1794
1796
  [attr.disabled]="item.disabled ? true : null"
1795
1797
  [ngClass]="{