@@ -10100,6 +10100,7 @@ angular.module('patternfly.navigation').component('pfApplicationLauncher', {
10100
10100
* @param {boolean} drawerExpanded Flag if the drawer is expanded (only valid if allowExpand is true). Optional, default: false
10101
10101
* @param {string} drawerTitle Title to display for the drawer (leaving this blank will remove the provided expand capability)
10102
10102
* @param {object} notificationGroups Collection notification groups to add to the drawer. Alternatively, a single group object can be given if categorization is not used.
10103
+ * @param {string} notificationTrackField Optional field from the notifications to use to track by in the notifications listing ($index used otherwise).
10103
10104
* @param {function} onClose function() Callback for the close button. Close button is shown if this callback is supplied. Callback should set drawerHidden to true to close the drawer.
10104
10105
* @param {boolean} showMarkAllRead Flag if the mark all read button should be shown, optional, default is false
10105
10106
* @param {function} onMarkAllRead function(notificationGroup) Callback method for the mark all read button (Optional)
@@ -10141,7 +10142,7 @@ angular.module('patternfly.navigation').component('pfApplicationLauncher', {
10141
10142
show-mark-all-read="true" on-mark-all-read="markAllRead"
10142
10143
show-clear-all="true" on-clear-all="clearAll"
10143
10144
heading-include="heading.html" subheading-include="subheading.html" notification-body-include="notification-body.html"
10144
- notification-footer-include="notification-footer.html" custom-scope="customScope">
10145
+ notification-footer-include="notification-footer.html" custom-scope="customScope" notification-track-field="uid" >
10145
10146
</pf-notification-drawer>
10146
10147
</div>
10147
10148
</div>
@@ -10249,62 +10250,71 @@ angular.module('patternfly.navigation').component('pfApplicationLauncher', {
10249
10250
subHeading: "5 New Events",
10250
10251
notifications: [
10251
10252
{
10253
+ uid: 1,
10252
10254
unread: true,
10253
10255
message: "A New Event! Huzzah! Bold.",
10254
10256
status: 'info',
10255
10257
actions: menuActions,
10256
10258
timeStamp: currentTime - (1 * 60 * 60 * 1000)
10257
10259
},
10258
10260
{
10261
+ uid: 2,
10259
10262
unread: true,
10260
10263
message: "Another Event Notification",
10261
10264
status: 'ok',
10262
10265
actions: menuActions,
10263
10266
timeStamp: currentTime - (2 * 60 * 60 * 1000)
10264
10267
},
10265
10268
{
10269
+ uid: 3,
10266
10270
unread: false,
10267
10271
message: "Another Event Notification",
10268
10272
status: 'warning',
10269
10273
actions: menuActions,
10270
10274
timeStamp: currentTime - (10 * 60 * 60 * 1000)
10271
10275
},
10272
10276
{
10277
+ uid: 4,
10273
10278
unread: false,
10274
10279
message: "Another Event Notification",
10275
10280
status: 'error',
10276
10281
actions: menuActions,
10277
10282
timeStamp: currentTime - (12 * 60 * 60 * 1000)
10278
10283
},
10279
10284
{
10285
+ uid: 5,
10280
10286
unread: true,
10281
10287
message: "A New Event! Huzzah! Bold",
10282
10288
status: 'info',
10283
10289
actions: menuActions,
10284
10290
timeStamp: currentTime - (1 * 60 * 60 * 1000)
10285
10291
},
10286
10292
{
10293
+ uid: 6,
10287
10294
unread: true,
10288
10295
message: "Another Event Notification",
10289
10296
status: 'error',
10290
10297
actions: menuActions,
10291
10298
timeStamp: currentTime - (2 * 60 * 60 * 1000)
10292
10299
},
10293
10300
{
10301
+ uid: 7,
10294
10302
unread: false,
10295
10303
message: "Another Event Notification",
10296
10304
status: 'ok',
10297
10305
actions: menuActions,
10298
10306
timeStamp: currentTime - (10 * 60 * 60 * 1000)
10299
10307
},
10300
10308
{
10309
+ uid: 8,
10301
10310
unread: false,
10302
10311
message: "Another Event Notification",
10303
10312
status: 'warning',
10304
10313
actions: menuActions,
10305
10314
timeStamp: currentTime - (12 * 60 * 60 * 1000)
10306
10315
},
10307
10316
{
10317
+ uid: 9,
10308
10318
unread: true,
10309
10319
message: "Another Event Notification",
10310
10320
status: 'info',
@@ -10319,34 +10329,39 @@ angular.module('patternfly.navigation').component('pfApplicationLauncher', {
10319
10329
subHeading: "3 New Events",
10320
10330
notifications: [
10321
10331
{
10332
+ uid: 10,
10322
10333
unread: true,
10323
10334
message: "A New Event! Huzzah! Bold",
10324
10335
status: 'info',
10325
10336
actions: menuActions,
10326
10337
timeStamp: currentTime - (1 * 60 * 60 * 1000)
10327
10338
},
10328
10339
{
10340
+ uid: 11,
10329
10341
unread: true,
10330
10342
message: "Another Event Notification",
10331
10343
status: 'error',
10332
10344
actions: menuActions,
10333
10345
timeStamp: currentTime - (2 * 60 * 60 * 1000)
10334
10346
},
10335
10347
{
10348
+ uid: 12,
10336
10349
unread: false,
10337
10350
message: "Another Event Notification",
10338
10351
status: 'warning',
10339
10352
actions: menuActions,
10340
10353
timeStamp: currentTime - (10 * 60 * 60 * 1000)
10341
10354
},
10342
10355
{
10356
+ uid: 13,
10343
10357
unread: false,
10344
10358
message: "Another Event Notification",
10345
10359
status: 'ok',
10346
10360
actions: menuActions,
10347
10361
timeStamp: currentTime - (12 * 60 * 60 * 1000)
10348
10362
},
10349
10363
{
10364
+ uid: 14,
10350
10365
unread: true,
10351
10366
message: "Another Event Notification",
10352
10367
status: 'warning',
@@ -10366,34 +10381,39 @@ angular.module('patternfly.navigation').component('pfApplicationLauncher', {
10366
10381
subHeading: "3 New Events",
10367
10382
notifications: [
10368
10383
{
10384
+ uid: 15,
10369
10385
unread: true,
10370
10386
message: "A New Event! Huzzah! Bold",
10371
10387
status: 'warning',
10372
10388
actions: menuActions,
10373
10389
timeStamp: currentTime - (1 * 60 * 60 * 1000)
10374
10390
},
10375
10391
{
10392
+ uid: 16,
10376
10393
unread: true,
10377
10394
message: "Another Event Notification",
10378
10395
status: 'ok',
10379
10396
actions: menuActions,
10380
10397
timeStamp: currentTime - (2 * 60 * 60 * 1000)
10381
10398
},
10382
10399
{
10400
+ uid: 17,
10383
10401
unread: false,
10384
10402
message: "Another Event Notification",
10385
10403
status: 'ok',
10386
10404
actions: menuActions,
10387
10405
timeStamp: currentTime - (10 * 60 * 60 * 1000)
10388
10406
},
10389
10407
{
10408
+ uid: 18,
10390
10409
unread: false,
10391
10410
message: "Another Event Notification",
10392
10411
status: 'error',
10393
10412
actions: menuActions,
10394
10413
timeStamp: currentTime - (12 * 60 * 60 * 1000)
10395
10414
},
10396
10415
{
10416
+ uid: 19,
10397
10417
unread: true,
10398
10418
message: "Another Event Notification",
10399
10419
status: 'info',
@@ -10407,34 +10427,39 @@ angular.module('patternfly.navigation').component('pfApplicationLauncher', {
10407
10427
subHeading: "3 New Events",
10408
10428
notifications: [
10409
10429
{
10430
+ uid: 20,
10410
10431
unread: true,
10411
10432
message: "A New Event! Huzzah! Bold",
10412
10433
status: 'error',
10413
10434
actions: menuActions,
10414
10435
timeStamp: currentTime - (1 * 60 * 60 * 1000)
10415
10436
},
10416
10437
{
10438
+ uid: 21,
10417
10439
unread: true,
10418
10440
message: "Another Event Notification",
10419
10441
status: 'error',
10420
10442
actions: menuActions,
10421
10443
timeStamp: currentTime - (2 * 60 * 60 * 1000)
10422
10444
},
10423
10445
{
10446
+ uid: 22,
10424
10447
unread: false,
10425
10448
message: "Another Event Notification",
10426
10449
status: 'warning',
10427
10450
actions: menuActions,
10428
10451
timeStamp: currentTime - (10 * 60 * 60 * 1000)
10429
10452
},
10430
10453
{
10454
+ uid: 23,
10431
10455
unread: false,
10432
10456
message: "Another Event Notification",
10433
10457
status: 'warning',
10434
10458
actions: menuActions,
10435
10459
timeStamp: currentTime - (12 * 60 * 60 * 1000)
10436
10460
},
10437
10461
{
10462
+ uid: 24,
10438
10463
unread: true,
10439
10464
message: "Another Event Notification",
10440
10465
status: 'error',
@@ -10637,6 +10662,7 @@ angular.module( 'patternfly.notification' ).component('pfInlineNotification', {
10637
10662
drawerExpanded: '=?',
10638
10663
drawerTitle: '@',
10639
10664
notificationGroups: '<',
10665
+ notificationTrackField: '@',
10640
10666
onClose: '=?',
10641
10667
showMarkAllRead: '<?',
10642
10668
onMarkAllRead: '=?',
@@ -18182,7 +18208,7 @@ angular.module('patternfly.wizard').component('pfWizard', {
18182
18208
18183
18209
18184
18210
$templateCache.put('notification/notification-drawer.html',
18185
- "<div class=drawer-pf ng-class=\"{'hide': $ctrl.drawerHidden, 'drawer-pf-expanded': $ctrl.drawerExpanded}\"><div ng-if=$ctrl.drawerTitle class=drawer-pf-title><a ng-if=$ctrl.allowExpand class=\"drawer-pf-toggle-expand fa fa-angle-double-left\" ng-click=$ctrl.toggleExpandDrawer()></a> <a ng-if=$ctrl.onClose class=\"drawer-pf-close pficon pficon-close\" ng-click=$ctrl.onClose()></a><h3 class=text-center>{{$ctrl.drawerTitle}}</h3></div><div ng-if=$ctrl.titleInclude class=drawer-pf-title ng-include src=$ctrl.titleInclude></div><div ng-if=!$ctrl.notificationGroups class=apf-blank-notification-groups><pf-empty-state config=$ctrl.emptyStateConfig></pf-empty-state></div><div ng-if=$ctrl.notificationGroups pf-fixed-accordion scroll-selector=.panel-body><div class=panel-group><div class=\"panel panel-default\" ng-repeat=\"notificationGroup in $ctrl.notificationGroups track by $index\"><div class=panel-heading><h4 class=panel-title><a ng-if=!$ctrl.singleGroup ng-click=$ctrl.toggleCollapse(notificationGroup) ng-class=\"{collapsed: !notificationGroup.open}\" ng-include src=$ctrl.headingInclude></a> <span ng-if=$ctrl.singleGroup ng-include src=$ctrl.headingInclude></span></h4><span class=panel-counter ng-include src=$ctrl.subheadingInclude></span></div><div class=\"panel-collapse collapse\" ng-class=\"{in: notificationGroup.open || $ctrl.notificationGroups.length === 1}\"><div ng-if=$ctrl.hasNotifications(notificationGroup) class=panel-body><div class=drawer-pf-notification ng-class=\"{unread: notification.unread, 'expanded-notification': $ctrl.drawerExpanded}\" ng-repeat=\"notification in notificationGroup.notifications\" ng-include src=$ctrl.notificationBodyInclude></div><div ng-if=notificationGroup.isLoading class=\"drawer-pf-loading text-center\"><span class=\"spinner spinner-xs spinner-inline\"></span> Loading More</div></div><div ng-if=\"($ctrl.showClearAll || $ctrl.showMarkAllRead) && $ctrl.hasNotifications(notificationGroup)\" class=drawer-pf-action><span class=drawer-pf-action-link ng-if=\"$ctrl.showMarkAllRead && $ctrl.hasUnread(notificationGroup)\"><button class=\"btn btn-link\" ng-click=$ctrl.onMarkAllRead(notificationGroup)>Mark All Read</button></span> <span class=drawer-pf-action-link><button class=\"btn btn-link\" ng-if=$ctrl.showClearAll ng-click=$ctrl.onClearAll(notificationGroup)><span class=\"pficon pficon-close\"></span> Clear All</button></span></div><div ng-if=\"$ctrl.actionButtonTitle && $ctrl.hasNotifications(notificationGroup)\" class=drawer-pf-action><a class=\"btn btn-link btn-block\" ng-click=$ctrl.actionButtonCallback(notificationGroup)>{{$ctrl.actionButtonTitle}}</a></div><div ng-if=!$ctrl.hasNotifications(notificationGroup)><div class=panel-body><pf-empty-state config=notificationGroup.emptyStateConfig></pf-empty-state></div></div><div ng-if=$ctrl.notificationFooterInclude ng-include src=$ctrl.notificationFooterInclude></div></div></div></div></div></div>"
18211
+ "<div class=drawer-pf ng-class=\"{'hide': $ctrl.drawerHidden, 'drawer-pf-expanded': $ctrl.drawerExpanded}\"><div ng-if=$ctrl.drawerTitle class=drawer-pf-title><a ng-if=$ctrl.allowExpand class=\"drawer-pf-toggle-expand fa fa-angle-double-left\" ng-click=$ctrl.toggleExpandDrawer()></a> <a ng-if=$ctrl.onClose class=\"drawer-pf-close pficon pficon-close\" ng-click=$ctrl.onClose()></a><h3 class=text-center>{{$ctrl.drawerTitle}}</h3></div><div ng-if=$ctrl.titleInclude class=drawer-pf-title ng-include src=$ctrl.titleInclude></div><div ng-if=!$ctrl.notificationGroups class=apf-blank-notification-groups><pf-empty-state config=$ctrl.emptyStateConfig></pf-empty-state></div><div ng-if=$ctrl.notificationGroups pf-fixed-accordion scroll-selector=.panel-body><div class=panel-group><div class=\"panel panel-default\" ng-repeat=\"notificationGroup in $ctrl.notificationGroups track by $index\"><div class=panel-heading><h4 class=panel-title><a ng-if=!$ctrl.singleGroup ng-click=$ctrl.toggleCollapse(notificationGroup) ng-class=\"{collapsed: !notificationGroup.open}\" ng-include src=$ctrl.headingInclude></a> <span ng-if=$ctrl.singleGroup ng-include src=$ctrl.headingInclude></span></h4><span class=panel-counter ng-include src=$ctrl.subheadingInclude></span></div><div class=\"panel-collapse collapse\" ng-class=\"{in: notificationGroup.open || $ctrl.notificationGroups.length === 1}\"><div ng-if=$ctrl.hasNotifications(notificationGroup) class=panel-body><div class=drawer-pf-notification ng-class=\"{unread: notification.unread, 'expanded-notification': $ctrl.drawerExpanded}\" ng-repeat=\"notification in notificationGroup.notifications track by $ctrl.notificationTrackField ? notification[$ctrl.notificationTrackField] || $index : $index\" ng-include src=$ctrl.notificationBodyInclude></div><div ng-if=notificationGroup.isLoading class=\"drawer-pf-loading text-center\"><span class=\"spinner spinner-xs spinner-inline\"></span> Loading More</div></div><div ng-if=\"($ctrl.showClearAll || $ctrl.showMarkAllRead) && $ctrl.hasNotifications(notificationGroup)\" class=drawer-pf-action><span class=drawer-pf-action-link ng-if=\"$ctrl.showMarkAllRead && $ctrl.hasUnread(notificationGroup)\"><button class=\"btn btn-link\" ng-click=$ctrl.onMarkAllRead(notificationGroup)>Mark All Read</button></span> <span class=drawer-pf-action-link><button class=\"btn btn-link\" ng-if=$ctrl.showClearAll ng-click=$ctrl.onClearAll(notificationGroup)><span class=\"pficon pficon-close\"></span> Clear All</button></span></div><div ng-if=\"$ctrl.actionButtonTitle && $ctrl.hasNotifications(notificationGroup)\" class=drawer-pf-action><a class=\"btn btn-link btn-block\" ng-click=$ctrl.actionButtonCallback(notificationGroup)>{{$ctrl.actionButtonTitle}}</a></div><div ng-if=!$ctrl.hasNotifications(notificationGroup)><div class=panel-body><pf-empty-state config=notificationGroup.emptyStateConfig></pf-empty-state></div></div><div ng-if=$ctrl.notificationFooterInclude ng-include src=$ctrl.notificationFooterInclude></div></div></div></div></div></div>"
18186
18212
);
18187
18213
18188
18214
0 commit comments