@coolon/angular-ui-powerups 1.4.2 → 1.6.0

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 (79) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/assets/styles.scss +32 -0
  3. package/bundles/coolon-angular-ui-powerups.umd.js +181 -47
  4. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  5. package/bundles/coolon-angular-ui-powerups.umd.min.js +2 -2
  6. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  7. package/coolon-angular-ui-powerups.d.ts +27 -25
  8. package/coolon-angular-ui-powerups.metadata.json +1 -1
  9. package/esm2015/coolon-angular-ui-powerups.js +25 -23
  10. package/esm2015/coolon-angular-ui-powerups.js.map +1 -1
  11. package/esm2015/coolon-angular-ui-powerups.metadata.json +1 -1
  12. package/esm2015/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  13. package/esm2015/lib/components/card-container/card-container.component.js +46 -0
  14. package/esm2015/lib/components/card-container/card-container.component.js.map +1 -0
  15. package/esm2015/lib/components/card-container/card-container.component.metadata.json +1 -0
  16. package/esm2015/lib/components/card-container/card-container.component.ngfactory.js.map +1 -0
  17. package/esm2015/lib/components/card-container/card-container.component.scss.shim.ngstyle.js.map +1 -0
  18. package/esm2015/lib/components/components.module.js +5 -2
  19. package/esm2015/lib/components/components.module.js.map +1 -1
  20. package/esm2015/lib/components/components.module.metadata.json +1 -1
  21. package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
  22. package/esm2015/lib/components/index.js +1 -0
  23. package/esm2015/lib/components/index.js.map +1 -1
  24. package/esm2015/lib/components/index.metadata.json +1 -1
  25. package/esm2015/lib/interaction/activity.js +3 -2
  26. package/esm2015/lib/interaction/activity.js.map +1 -1
  27. package/esm2015/lib/interaction/activity.metadata.json +1 -1
  28. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +2 -2
  29. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js.map +1 -1
  30. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.metadata.json +1 -1
  31. package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.js +85 -0
  32. package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.js.map +1 -0
  33. package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.metadata.json +1 -0
  34. package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.ngfactory.js.map +1 -0
  35. package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.scss.shim.ngstyle.js.map +1 -0
  36. package/esm2015/lib/place/index.js +1 -0
  37. package/esm2015/lib/place/index.js.map +1 -1
  38. package/esm2015/lib/place/index.metadata.json +1 -1
  39. package/esm2015/lib/place/place.module.js +6 -1
  40. package/esm2015/lib/place/place.module.js.map +1 -1
  41. package/esm2015/lib/place/place.module.metadata.json +1 -1
  42. package/esm2015/lib/place/place.module.ngfactory.js.map +1 -1
  43. package/esm5/coolon-angular-ui-powerups.js +25 -23
  44. package/esm5/coolon-angular-ui-powerups.js.map +1 -1
  45. package/esm5/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  46. package/esm5/lib/components/card-container/card-container.component.js +47 -0
  47. package/esm5/lib/components/card-container/card-container.component.js.map +1 -0
  48. package/esm5/lib/components/card-container/card-container.component.ngfactory.js.map +1 -0
  49. package/esm5/lib/components/card-container/card-container.component.scss.shim.ngstyle.js.map +1 -0
  50. package/esm5/lib/components/components.module.js +5 -2
  51. package/esm5/lib/components/components.module.js.map +1 -1
  52. package/esm5/lib/components/components.module.ngfactory.js.map +1 -1
  53. package/esm5/lib/components/index.js +1 -0
  54. package/esm5/lib/components/index.js.map +1 -1
  55. package/esm5/lib/interaction/activity.js +3 -2
  56. package/esm5/lib/interaction/activity.js.map +1 -1
  57. package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js +2 -2
  58. package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js.map +1 -1
  59. package/esm5/lib/place/components/side-place-navigation/side-place-navigation.component.js +88 -0
  60. package/esm5/lib/place/components/side-place-navigation/side-place-navigation.component.js.map +1 -0
  61. package/esm5/lib/place/components/side-place-navigation/side-place-navigation.component.ngfactory.js.map +1 -0
  62. package/esm5/lib/place/components/side-place-navigation/side-place-navigation.component.scss.shim.ngstyle.js.map +1 -0
  63. package/esm5/lib/place/index.js +1 -0
  64. package/esm5/lib/place/index.js.map +1 -1
  65. package/esm5/lib/place/place.module.js +6 -1
  66. package/esm5/lib/place/place.module.js.map +1 -1
  67. package/esm5/lib/place/place.module.ngfactory.js.map +1 -1
  68. package/fesm2015/coolon-angular-ui-powerups.js +134 -7
  69. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  70. package/fesm5/coolon-angular-ui-powerups.js +138 -7
  71. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  72. package/lib/components/card-container/card-container.component.d.ts +26 -0
  73. package/lib/components/index.d.ts +1 -0
  74. package/lib/interaction/activity.d.ts +3 -2
  75. package/lib/place/components/side-place-navigation/side-place-navigation.component.d.ts +55 -0
  76. package/lib/place/index.d.ts +1 -0
  77. package/package.json +3 -2
  78. package/schematics/place-routes/place-builder.js +1 -1
  79. package/schematics/place-routes/place-builder.js.map +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [1.6.0](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.5.0...v1.6.0) (2020-05-22)
6
+
7
+
8
+ ### Features
9
+
10
+ * added min height support for aup-card-container ([1366ac6](https://bitbucket.org/coolon/angular-ui-powerups/commit/1366ac63fc052e37a9e6dc413af33ed3eb9ce405))
11
+
12
+ ## [1.5.0](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.4.2...v1.5.0) (2020-05-22)
13
+
14
+
15
+ ### Features
16
+
17
+ * added CardContainerComponent ([21730e9](https://bitbucket.org/coolon/angular-ui-powerups/commit/21730e99ea04ebd09b2a94c1496a882ad63d2c54))
18
+ * added SidePlaceNavigationComponent ([17d201d](https://bitbucket.org/coolon/angular-ui-powerups/commit/17d201d7048626232ee6348b9e3b9be2e87dfb35))
19
+
20
+
21
+ ### Bug Fixes
22
+
23
+ * corrected place-builder ts compiler include error message ([72e46d8](https://bitbucket.org/coolon/angular-ui-powerups/commit/72e46d8f8073cc84b5c3fe936cc1a63ebadc5891))
24
+ * updated to extend DisposableComponent to ensure garbage collection ([558dd10](https://bitbucket.org/coolon/angular-ui-powerups/commit/558dd103ed1f749e41c4e411f05292721560d8ac))
25
+
5
26
  ### [1.4.2](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.4.1...v1.4.2) (2020-05-21)
6
27
 
7
28
 
@@ -1,3 +1,5 @@
1
+ @import "~@angular/material/theming";
2
+
1
3
  :root {
2
4
  --aup-default-padding: var(--default-padding, 18px);
3
5
  }
@@ -39,3 +41,33 @@
39
41
  right: 0;
40
42
  }
41
43
  }
44
+
45
+ @mixin elevate-on-hover($height:2) {
46
+ @include mat-elevation-transition;
47
+ //@include mat-elevation(2);
48
+ &:hover {
49
+ @include mat-elevation($height);
50
+ }
51
+ }
52
+
53
+ @mixin new-card-placeholder-style($color: rgba(0,0,0,0.54), $background-color: rgba(255,255,255,0.8), $hover-color: $color, $background-hover-color: white) {
54
+ box-sizing: border-box;
55
+ border: 2px dashed rgba(0,0,0,0.1);
56
+ border-radius: 6px;
57
+
58
+ font-weight: 300;
59
+ cursor: pointer;
60
+ color: $color;
61
+ background-color: $background-color;
62
+ transition: all $mat-elevation-transition-duration $mat-elevation-transition-timing-function;
63
+
64
+ &:hover {
65
+ @include elevate-on-hover(4);
66
+ transition: all $mat-elevation-transition-duration $mat-elevation-transition-timing-function;
67
+ border-color: transparent;
68
+ background-color: $background-hover-color;
69
+ color: $hover-color;
70
+ }
71
+
72
+ }
73
+
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@angular/forms'), require('@angular/material/form-field'), require('@angular/material/input'), require('@angular/material/select'), require('@angular/material/tabs'), require('@angular/platform-browser/animations'), require('@angular/material/button'), require('@angular/material/checkbox'), require('@angular/material/icon'), require('@coolon/pectin'), require('@angular/cdk/portal'), require('@angular/material/dialog'), require('@angular/router'), require('@coolon/typescript-utilities'), require('lodash'), require('@angular/material/progress-spinner'), require('@angular/material/list'), require('@angular/material/tooltip'), require('@typescript-plus/fast-memoize-decorator/dist/src'), require('@typescript-plus/fast-memoize-decorator'), require('reflect-metadata'), require('@angular/animations'), require('resize-observer-polyfill'), require('rxjs')) :
3
- typeof define === 'function' && define.amd ? define('@coolon/angular-ui-powerups', ['exports', '@angular/common', '@angular/core', '@angular/forms', '@angular/material/form-field', '@angular/material/input', '@angular/material/select', '@angular/material/tabs', '@angular/platform-browser/animations', '@angular/material/button', '@angular/material/checkbox', '@angular/material/icon', '@coolon/pectin', '@angular/cdk/portal', '@angular/material/dialog', '@angular/router', '@coolon/typescript-utilities', 'lodash', '@angular/material/progress-spinner', '@angular/material/list', '@angular/material/tooltip', '@typescript-plus/fast-memoize-decorator/dist/src', '@typescript-plus/fast-memoize-decorator', 'reflect-metadata', '@angular/animations', 'resize-observer-polyfill', 'rxjs'], factory) :
4
- (global = global || self, factory((global.coolon = global.coolon || {}, global.coolon['angular-ui-powerups'] = {}), global.ng.common, global.ng.core, global.ng.forms, global.ng.material.formField, global.ng.material.input, global.ng.material.select, global.ng.material.tabs, global.ng.platformBrowser.animations, global.ng.material.button, global.ng.material.checkbox, global.ng.material.icon, global.pectin, global.ng.cdk.portal, global.ng.material.dialog, global.ng.router, global.typescriptUtilities, global.___default, global.ng.material.progressSpinner, global.ng.material.list, global.ng.material.tooltip, global.src, global.fastMemoizeDecorator, null, global.ng.animations, global.ResizeObserver, global.rxjs));
5
- }(this, (function (exports, common, core, forms, formField, input, select, tabs, animations, button, checkbox, icon, pectin, portal, dialog, router, typescriptUtilities, ___default, progressSpinner, list, tooltip, src, fastMemoizeDecorator, reflectMetadata, animations$1, ResizeObserver, rxjs) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@angular/forms'), require('@angular/material/form-field'), require('@angular/material/input'), require('@angular/material/select'), require('@angular/material/tabs'), require('@angular/platform-browser/animations'), require('@angular/material/button'), require('@angular/material/checkbox'), require('@angular/material/icon'), require('@coolon/pectin'), require('@angular/cdk/portal'), require('@angular/material/dialog'), require('@angular/router'), require('@coolon/typescript-utilities'), require('lodash'), require('@angular/flex-layout'), require('@angular/material/progress-spinner'), require('@angular/material/list'), require('@angular/material/tooltip'), require('@typescript-plus/fast-memoize-decorator/dist/src'), require('@typescript-plus/fast-memoize-decorator'), require('reflect-metadata'), require('@angular/animations'), require('resize-observer-polyfill'), require('rxjs')) :
3
+ typeof define === 'function' && define.amd ? define('@coolon/angular-ui-powerups', ['exports', '@angular/common', '@angular/core', '@angular/forms', '@angular/material/form-field', '@angular/material/input', '@angular/material/select', '@angular/material/tabs', '@angular/platform-browser/animations', '@angular/material/button', '@angular/material/checkbox', '@angular/material/icon', '@coolon/pectin', '@angular/cdk/portal', '@angular/material/dialog', '@angular/router', '@coolon/typescript-utilities', 'lodash', '@angular/flex-layout', '@angular/material/progress-spinner', '@angular/material/list', '@angular/material/tooltip', '@typescript-plus/fast-memoize-decorator/dist/src', '@typescript-plus/fast-memoize-decorator', 'reflect-metadata', '@angular/animations', 'resize-observer-polyfill', 'rxjs'], factory) :
4
+ (global = global || self, factory((global.coolon = global.coolon || {}, global.coolon['angular-ui-powerups'] = {}), global.ng.common, global.ng.core, global.ng.forms, global.ng.material.formField, global.ng.material.input, global.ng.material.select, global.ng.material.tabs, global.ng.platformBrowser.animations, global.ng.material.button, global.ng.material.checkbox, global.ng.material.icon, global.pectin, global.ng.cdk.portal, global.ng.material.dialog, global.ng.router, global.typescriptUtilities, global.___default, global.ng.flexLayout, global.ng.material.progressSpinner, global.ng.material.list, global.ng.material.tooltip, global.src, global.fastMemoizeDecorator, null, global.ng.animations, global.ResizeObserver, global.rxjs));
5
+ }(this, (function (exports, common, core, forms, formField, input, select, tabs, animations, button, checkbox, icon, pectin, portal, dialog, router, typescriptUtilities, ___default, flexLayout, progressSpinner, list, tooltip, src, fastMemoizeDecorator, reflectMetadata, animations$1, ResizeObserver, rxjs) { 'use strict';
6
6
 
7
7
  var ___default__default = 'default' in ___default ? ___default['default'] : ___default;
8
8
  ResizeObserver = ResizeObserver && Object.prototype.hasOwnProperty.call(ResizeObserver, 'default') ? ResizeObserver['default'] : ResizeObserver;
@@ -1222,6 +1222,49 @@
1222
1222
  return VerticalFocusContainerComponent;
1223
1223
  }(FocusContainerComponent));
1224
1224
 
1225
+ /**
1226
+ * @example
1227
+ * // CSS Vars
1228
+ * aup-card-container {
1229
+ * --card-gap: var(--card-gap, 16px);
1230
+ * --card-width: var(--card-width, 300px);
1231
+ * --card-height: var(--card-height, auto);
1232
+ * --card-min-height: var(--card-min-height, auto);
1233
+ * --card-background: var(--card-background, #fcfcfb);
1234
+ * }
1235
+ *
1236
+ * // Content Templates:
1237
+ * #addCardTemplate
1238
+ * <ng-template #addCardTemplate>
1239
+ * This is a new card template, it will the the size of the other cards.
1240
+ * </nav-template>
1241
+ *
1242
+ */
1243
+ var CardContainerComponent = /** @class */ (function () {
1244
+ function CardContainerComponent() {
1245
+ }
1246
+ CardContainerComponent.prototype.ngOnInit = function () {
1247
+ };
1248
+ __decorate([
1249
+ core.Input(),
1250
+ pectin.TrackExternal(),
1251
+ __metadata("design:type", pectin.Command)
1252
+ ], CardContainerComponent.prototype, "addCardCommand", void 0);
1253
+ __decorate([
1254
+ core.ContentChild("addCardTemplate"),
1255
+ __metadata("design:type", core.TemplateRef)
1256
+ ], CardContainerComponent.prototype, "addCardTemplate", void 0);
1257
+ CardContainerComponent = __decorate([
1258
+ core.Component({
1259
+ selector: 'aup-card-container',
1260
+ template: "<div class=\"card-container\">\n <ng-content></ng-content>\n\n <div class=\"add-card-container\" *ngIf=\"addCardCommand.enabled.value\" [pectinCommand]=\"addCardCommand\">\n <mat-icon>add</mat-icon>\n </div>\n\n <div class=\"add-card-template\" *ngIf=\"addCardTemplate\">\n <ng-container [ngTemplateOutlet]=\"addCardTemplate\"></ng-container>\n </div>\n\n</div>\n",
1261
+ styles: [":root{--aup-default-padding:var(--default-padding, 18px)}.dialog-interaction-context{max-width:95vw!important;max-height:95vh!important}.dialog-interaction-context mat-dialog-container{max-width:95vw!important;max-height:95vh!important;padding:0}[no-tab-header]>mat-tab-header{display:none}[full-height-tabs] .mat-tab-body-wrapper,mat-tab-group.full-height-tabs .mat-tab-body-wrapper{flex:1}[full-height-tabs] .mat-tab-body-wrapper .mat-tab-body-content,[full-height-tabs] .mat-tab-body-wrapper mat-tab-body,mat-tab-group.full-height-tabs .mat-tab-body-wrapper .mat-tab-body-content,mat-tab-group.full-height-tabs .mat-tab-body-wrapper mat-tab-body{display:flex;flex-direction:column;justify-content:stretch}.router-outlet-container>*{position:absolute;top:0;left:0;bottom:0;right:0}:host{--resolved-card-gap:var(--card-gap, 16px);--resolved-card-width:var(--card-width, 300px);--resolved-card-height:var(--card-height, auto);--resolved-card-min-height:var(--card-min-height, auto);--resolved-card-background:var(--card-background, #fcfcfb);flex:1;display:block;background:var(--resolved-card-background)}.card-container{display:-ms-grid;display:grid;grid-template-columns:repeat(auto-fill,var(--resolved-card-width));grid-template-rows:repeat(auto-fit,minmax(0,var(--resolved-card-height)));grid-gap:var(--resolved-card-gap);box-sizing:border-box;padding:var(--resolved-card-gap);min-height:calc(var(--resolved-card-height) + 2 * var(--resolved-card-gap));min-width:calc(var(--resolved-card-width) + 2 * var(--resolved-card-gap));width:calc((var(--resolved-card-width) + var(--resolved-card-gap)) * 2 + var(--grid-gap));max-width:100%}.add-card-container{width:var(--resolved-card-width);height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:rgba(0,0,0,.54);background-color:rgba(255,255,255,.8);transition:280ms cubic-bezier(.4,0,.2,1)}.add-card-container mat-icon{font-size:200%}.add-card-container:hover{transition:280ms cubic-bezier(.4,0,.2,1);border-color:transparent;background-color:#fff;color:rgba(0,0,0,.54)}.add-card-container:hover:hover{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.add-card-template-container{width:var(--resolved-card-width);height:var(--resolved-card-height);display:flex;flex-direction:column;align-items:stretch;justify-content:stretch}"]
1262
+ }),
1263
+ __metadata("design:paramtypes", [])
1264
+ ], CardContainerComponent);
1265
+ return CardContainerComponent;
1266
+ }());
1267
+
1225
1268
  var ComponentsModule = /** @class */ (function () {
1226
1269
  function ComponentsModule() {
1227
1270
  }
@@ -1241,7 +1284,8 @@
1241
1284
  SwitchCaseDefaultDirective,
1242
1285
  FocusContainerComponent,
1243
1286
  VerticalFocusContainerComponent,
1244
- FocusableComponent
1287
+ FocusableComponent,
1288
+ CardContainerComponent
1245
1289
  ],
1246
1290
  imports: [
1247
1291
  common.CommonModule,
@@ -1269,7 +1313,8 @@
1269
1313
  SwitchCaseDefaultDirective,
1270
1314
  FocusContainerComponent,
1271
1315
  VerticalFocusContainerComponent,
1272
- FocusableComponent
1316
+ FocusableComponent,
1317
+ CardContainerComponent
1273
1318
  ],
1274
1319
  providers: [
1275
1320
  FocusBindingFactory
@@ -1326,7 +1371,7 @@
1326
1371
  return !!this._activityContext;
1327
1372
  };
1328
1373
  return Activity;
1329
- }(pectin.GarbageCollector));
1374
+ }(DisposableComponent));
1330
1375
 
1331
1376
  var AlertDialogComponent = /** @class */ (function (_super) {
1332
1377
  __extends(AlertDialogComponent, _super);
@@ -1816,7 +1861,7 @@
1816
1861
  }());
1817
1862
 
1818
1863
  var inplaceMonitorCount = 0;
1819
- exports.ɵbe = /** @class */ (function () {
1864
+ exports.ɵbf = /** @class */ (function () {
1820
1865
  function InteractionService(modelInteractionContextFactory) {
1821
1866
  this.modelInteractionContextFactory = modelInteractionContextFactory;
1822
1867
  this.garbage = new pectin.GarbageCollector();
@@ -1976,7 +2021,7 @@
1976
2021
  return ApiAdapter;
1977
2022
  }());
1978
2023
  InteractionService.ApiAdapter = ApiAdapter;
1979
- })(exports.ɵbe || (exports.ɵbe = {}));
2024
+ })(exports.ɵbf || (exports.ɵbf = {}));
1980
2025
 
1981
2026
  var InPlaceInteractionContextComponent = /** @class */ (function (_super) {
1982
2027
  __extends(InPlaceInteractionContextComponent, _super);
@@ -2020,7 +2065,7 @@
2020
2065
  return this.activityContainerComponent.startActivity(activityType, data);
2021
2066
  };
2022
2067
  InPlaceInteractionContextComponent.ctorParameters = function () { return [
2023
- { type: exports.ɵbe }
2068
+ { type: exports.ɵbf }
2024
2069
  ]; };
2025
2070
  __decorate([
2026
2071
  core.ViewChild('activityContainer', { static: true }),
@@ -2032,7 +2077,7 @@
2032
2077
  template: "<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs [dynamicHeight]=\"false\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n",
2033
2078
  styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]
2034
2079
  }),
2035
- __metadata("design:paramtypes", [exports.ɵbe])
2080
+ __metadata("design:paramtypes", [exports.ɵbf])
2036
2081
  ], InPlaceInteractionContextComponent);
2037
2082
  return InPlaceInteractionContextComponent;
2038
2083
  }(DisposableComponent));
@@ -2070,7 +2115,7 @@
2070
2115
  AlertDialogComponent
2071
2116
  ],
2072
2117
  providers: [
2073
- exports.ɵbe,
2118
+ exports.ɵbf,
2074
2119
  ]
2075
2120
  })
2076
2121
  ], InteractionModule);
@@ -3189,7 +3234,7 @@
3189
3234
  return PopStateNavigation;
3190
3235
  }(AbstractPopStateNavigation));
3191
3236
 
3192
- exports.ɵbh = /** @class */ (function () {
3237
+ exports.ɵbi = /** @class */ (function () {
3193
3238
  function PlaceHistory() {
3194
3239
  this._archive = new Map();
3195
3240
  this.placeHistoryDepth = 4;
@@ -3326,7 +3371,7 @@
3326
3371
  // }
3327
3372
  //
3328
3373
  // }
3329
- })(exports.ɵbh || (exports.ɵbh = {}));
3374
+ })(exports.ɵbi || (exports.ɵbi = {}));
3330
3375
 
3331
3376
  exports.UrlSnapshot = /** @class */ (function () {
3332
3377
  // TODO: Update this accept a url Parser so it can be immutable and generate new trees on mutation using toString() are parseUrl.
@@ -3849,11 +3894,11 @@
3849
3894
  PlaceRouter.ctorParameters = function () { return [
3850
3895
  { type: router.Router },
3851
3896
  { type: common.Location },
3852
- { type: exports.ɵbe },
3897
+ { type: exports.ɵbf },
3853
3898
  { type: UrlService },
3854
- { type: exports.ɵbh }
3899
+ { type: exports.ɵbi }
3855
3900
  ]; };
3856
- PlaceRouter.ɵprov = core.ɵɵdefineInjectable({ factory: function PlaceRouter_Factory() { return new PlaceRouter(core.ɵɵinject(router.Router), core.ɵɵinject(common.Location), core.ɵɵinject(exports.ɵbe), core.ɵɵinject(UrlService), core.ɵɵinject(exports.ɵbh)); }, token: PlaceRouter, providedIn: "root" });
3901
+ PlaceRouter.ɵprov = core.ɵɵdefineInjectable({ factory: function PlaceRouter_Factory() { return new PlaceRouter(core.ɵɵinject(router.Router), core.ɵɵinject(common.Location), core.ɵɵinject(exports.ɵbf), core.ɵɵinject(UrlService), core.ɵɵinject(exports.ɵbi)); }, token: PlaceRouter, providedIn: "root" });
3857
3902
  __decorate([
3858
3903
  pectin.Trace(),
3859
3904
  __metadata("design:type", Function),
@@ -3866,9 +3911,9 @@
3866
3911
  }),
3867
3912
  __metadata("design:paramtypes", [router.Router,
3868
3913
  common.Location,
3869
- exports.ɵbe,
3914
+ exports.ɵbf,
3870
3915
  UrlService,
3871
- exports.ɵbh])
3916
+ exports.ɵbi])
3872
3917
  ], PlaceRouter);
3873
3918
  return PlaceRouter;
3874
3919
  }(pectin.GarbageCollector));
@@ -4247,8 +4292,8 @@
4247
4292
  ListPlaceNavComponent = __decorate([
4248
4293
  core.Component({
4249
4294
  selector: 'aup-list-place-nav',
4250
- template: "<mat-nav-list class=\"app-menu\">\n <a mat-list-item *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [class.active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span class=\"expanded-only\">{{getNav(placeDefinition).title()}}</span>\n </a>\n</mat-nav-list>\n",
4251
- styles: [":host{display:flex;flex-direction:column;--expanded-width:235px;--nav-item-width:var(--nav-bar-height);width:var(--nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--expanded-width);max-width:var(--expanded-width)}.expanded-only{max-width:0;overflow:hidden}.collapsed-only{max-width:100%;overflow:hidden}.header{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;height:var(--nav-bar-height);border-bottom:var(--pinstripe-border);cursor:pointer}.header .menu{flex:1}.header button{color:inherit;width:var(--nav-item-width);height:var(--nav-bar-height)}mat-nav-list{flex:1;display:flex;flex-direction:column}.mat-list-item{width:var(--nav-item-width);height:var(--nav-bar-height);color:rgba(0,0,0,.6)}.mat-list-item.active{background-color:rgba(0,0,0,.1);color:rgba(0,0,0,.9)}mat-icon{color:inherit}mat-icon.flip-horizontal{transform:scaleX(-1)}:host-context(.expanded) .expanded-only{max-width:100%}:host-context(.expanded) .collapsed-only{max-width:0}:host-context(.expanded) .mat-list-item mat-icon{margin-right:12px}:host-context(.expanded) .mat-list-item span{text-wrap:none;white-space:nowrap}a[ng-reflect-router-link=manage-instruments] mat-icon{transform:rotate(90deg)}.app-menu{padding-top:0}"]
4295
+ template: "<mat-nav-list fxFlex>\n <a mat-list-item *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [class.active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span class=\"expanded-only\">{{getNav(placeDefinition).title()}}</span>\n </a>\n</mat-nav-list>\n",
4296
+ styles: [":host{display:flex;flex-direction:column}"]
4252
4297
  }),
4253
4298
  __metadata("design:paramtypes", [PlaceRouter])
4254
4299
  ], ListPlaceNavComponent);
@@ -4274,6 +4319,88 @@
4274
4319
  return TabbedPlaceNavigationComponent;
4275
4320
  }(AbstractPlaceNavigationComponent));
4276
4321
 
4322
+ /**
4323
+ * @example
4324
+ * // Usage
4325
+ * <aup-vertical-place-navigation [places]="placeConstructorArray"
4326
+ * [placeOutlet]="placeOutletComponent">
4327
+ * </aup-vertical-place-navigation>
4328
+ * <aup-place-outlet #placeOutletComponent></aup-place-outlet>
4329
+ *
4330
+ * // CSS overrides:
4331
+ * aup-side-place-navigation {
4332
+ * --nav-width: 56px
4333
+ * --nav-expanded-width: 235px
4334
+ * --nav-item-height: var(--nav-width)
4335
+ * --nav-background-color: #555;
4336
+ * --nav-color: rgba(255, 255, 255, 0.9);
4337
+ * }
4338
+ *
4339
+ * // Content Templates:
4340
+ * #navEndTemplate
4341
+ * <ng-template #navEndTemplate>
4342
+ * <a mat-list-item (click)="logout()" matTooltip="Logout">
4343
+ * <mat-icon>exit_to_app</mat-icon>
4344
+ * <span *ngIf="sideNav.expanded">Logout</span>
4345
+ * </a>
4346
+ * </nav-template>
4347
+ *
4348
+ * // Place nav item in an i18n.yml
4349
+ * places:
4350
+ * myPlace:
4351
+ * nav(NavItem):
4352
+ * title: "Activities"
4353
+ * icon: "build"
4354
+ * tooltip: "Alerts, confirms and dialogs"
4355
+ *
4356
+ * // In your place
4357
+ * (at)Place({
4358
+ * path: 'myPlace',
4359
+ * data: {
4360
+ * nav: I18n.places.myPlace.nav()
4361
+ * }
4362
+ * })
4363
+ */
4364
+ var SidePlaceNavigationComponent = /** @class */ (function (_super) {
4365
+ __extends(SidePlaceNavigationComponent, _super);
4366
+ function SidePlaceNavigationComponent(router, placeRouter) {
4367
+ var _this = _super.call(this, placeRouter) || this;
4368
+ _this.router = router;
4369
+ _this.expanded = false;
4370
+ return _this;
4371
+ }
4372
+ SidePlaceNavigationComponent.prototype.expandMenu = function () {
4373
+ this.expanded = true;
4374
+ };
4375
+ SidePlaceNavigationComponent.prototype.collapseMenu = function () {
4376
+ this.expanded = false;
4377
+ };
4378
+ SidePlaceNavigationComponent.prototype.toggleMenu = function () {
4379
+ this.expanded = !this.expanded;
4380
+ };
4381
+ SidePlaceNavigationComponent.ctorParameters = function () { return [
4382
+ { type: router.Router },
4383
+ { type: PlaceRouter }
4384
+ ]; };
4385
+ __decorate([
4386
+ core.HostBinding('class.expanded'),
4387
+ __metadata("design:type", Object)
4388
+ ], SidePlaceNavigationComponent.prototype, "expanded", void 0);
4389
+ __decorate([
4390
+ core.ContentChild('navEndTemplate'),
4391
+ __metadata("design:type", core.TemplateRef)
4392
+ ], SidePlaceNavigationComponent.prototype, "navEndTemplate", void 0);
4393
+ SidePlaceNavigationComponent = __decorate([
4394
+ core.Component({
4395
+ selector: 'aup-side-place-navigation',
4396
+ template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\" class=\"home\">\n <mat-icon class=\"collapsed-only\">menu</mat-icon>\n <mat-icon class=\"expanded-only\">arrow_back</mat-icon>\n <span class=\"expanded-only\">Menu</span>\n </a>\n <a mat-list-item *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [class.active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span\n class=\"expanded-only\">{{getNav(placeDefinition).title()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n",
4397
+ styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width:var(--nav-width, 56px);--resolved-nav-item-height:var(--nav-item-height, var(--resolved-nav-item-width));--resolved-expanded-width:var(--nav-expanded-width, 235px);--resolved-color:var(--nav-color, rgba(255, 255, 255, 0.9));--resolved-background-color:var(--nav-background-color, #555);width:var(--resolved-nav-item-width);transition:width 125ms linear;background-color:var(--resolved-background-color);color:var(--resolved-color)}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host-context(.expanded) .expanded-only{max-width:100%}:host-context(.expanded) .collapsed-only{max-width:0}:host-context(.expanded) .mat-list-item mat-icon:not(.collapsed-only){margin-right:12px}:host-context(.expanded) .mat-list-item span{text-wrap:none;white-space:nowrap}.expanded-only{max-width:0;overflow:hidden}.collapsed-only{max-width:100%;overflow:hidden}mat-nav-list{flex:1;display:flex;flex-direction:column}.mat-list-item{width:var(--resolved-nav-item-width);height:var(--resolved-nav-item-height);color:inherit}.mat-list-item.active{background-color:#444}.mat-list-item.home{text-align:left}mat-icon{color:inherit}mat-icon.flip-horizontal{transform:scaleX(-1)}"]
4398
+ }),
4399
+ __metadata("design:paramtypes", [router.Router, PlaceRouter])
4400
+ ], SidePlaceNavigationComponent);
4401
+ return SidePlaceNavigationComponent;
4402
+ }(AbstractPlaceNavigationComponent));
4403
+
4277
4404
  var PlaceModule = /** @class */ (function () {
4278
4405
  function PlaceModule() {
4279
4406
  }
@@ -4288,7 +4415,8 @@
4288
4415
  list.MatListModule,
4289
4416
  tooltip.MatTooltipModule,
4290
4417
  icon.MatIconModule,
4291
- DirectivesModule
4418
+ DirectivesModule,
4419
+ flexLayout.FlexModule
4292
4420
  ],
4293
4421
  declarations: [
4294
4422
  EmptyStateComponent,
@@ -4296,6 +4424,7 @@
4296
4424
  PlaceOutletComponent,
4297
4425
  TabbedPlaceNavigationComponent,
4298
4426
  ListPlaceNavComponent,
4427
+ SidePlaceNavigationComponent,
4299
4428
  AbstractPlaceNavigationComponent
4300
4429
  ],
4301
4430
  entryComponents: [BusyOverlayComponent],
@@ -4305,6 +4434,7 @@
4305
4434
  EmptyStateComponent,
4306
4435
  TabbedPlaceNavigationComponent,
4307
4436
  ListPlaceNavComponent,
4437
+ SidePlaceNavigationComponent,
4308
4438
  AbstractPlaceNavigationComponent
4309
4439
  ],
4310
4440
  providers: [
@@ -4996,6 +5126,7 @@
4996
5126
  exports.AlertDialogComponent = AlertDialogComponent;
4997
5127
  exports.AngularUiPowerupsModule = AngularUiPowerupsModule;
4998
5128
  exports.BusyOverlayComponent = BusyOverlayComponent;
5129
+ exports.CardContainerComponent = CardContainerComponent;
4999
5130
  exports.CheckboxInputComponent = CheckboxInputComponent;
5000
5131
  exports.CommandDirective = CommandDirective;
5001
5132
  exports.ComponentsModule = ComponentsModule;
@@ -5018,7 +5149,7 @@
5018
5149
  exports.FocusableComponent = FocusableComponent;
5019
5150
  exports.InPlaceInteractionContextComponent = InPlaceInteractionContextComponent;
5020
5151
  exports.InteractionModule = InteractionModule;
5021
- exports.InteractionService = exports.ɵbe;
5152
+ exports.InteractionService = exports.ɵbf;
5022
5153
  exports.InteractionServiceRoutingAdapter = InteractionServiceRoutingAdapter;
5023
5154
  exports.LEFT_RIGHT_PLACE_ANIMATION = LEFT_RIGHT_PLACE_ANIMATION;
5024
5155
  exports.ListPlaceNavComponent = ListPlaceNavComponent;
@@ -5034,7 +5165,7 @@
5034
5165
  exports.PlaceComponentDeactivationHandler = PlaceComponentDeactivationHandler;
5035
5166
  exports.PlaceDefinition = PlaceDefinition;
5036
5167
  exports.PlaceGuard = PlaceGuard;
5037
- exports.PlaceHistory = exports.ɵbh;
5168
+ exports.PlaceHistory = exports.ɵbi;
5038
5169
  exports.PlaceModule = PlaceModule;
5039
5170
  exports.PlaceOutletComponent = PlaceOutletComponent;
5040
5171
  exports.PlaceRouter = PlaceRouter;
@@ -5047,6 +5178,7 @@
5047
5178
  exports.RouteId = RouteId;
5048
5179
  exports.ScrollContainerComponent = ScrollContainerComponent;
5049
5180
  exports.SelectInputComponent = SelectInputComponent;
5181
+ exports.SidePlaceNavigationComponent = SidePlaceNavigationComponent;
5050
5182
  exports.StringInputComponent = StringInputComponent;
5051
5183
  exports.SwitchCaseComponent = SwitchCaseComponent;
5052
5184
  exports.SwitchCaseDefaultDirective = SwitchCaseDefaultDirective;
@@ -5068,24 +5200,26 @@
5068
5200
  exports.slideRightOnEnterAnimation = slideRightOnEnterAnimation;
5069
5201
  exports.ɵa = DirectivesModule;
5070
5202
  exports.ɵb = CommandDirective;
5071
- exports.ɵba = LEFT_RIGHT_PLACE_ANIMATION;
5072
- exports.ɵbb = AUP_PLACE_CONFIG;
5073
- exports.ɵbd = PlaceRouter;
5074
- exports.ɵbf = ModalInteractionContextFactory;
5075
- exports.ɵbg = UrlService;
5076
- exports.ɵbi = TabbedPlaceNavigationComponent;
5077
- exports.ɵbj = AbstractPlaceNavigationComponent;
5078
- exports.ɵbk = ListPlaceNavComponent;
5079
- exports.ɵbl = InteractionModule;
5080
- exports.ɵbm = ActivityContainerComponent;
5081
- exports.ɵbn = AbstractInteractionContext;
5082
- exports.ɵbo = ActivityOutletComponent;
5083
- exports.ɵbp = ConfirmationDialogComponent;
5084
- exports.ɵbq = ACTIVITY_DATA;
5085
- exports.ɵbr = Activity;
5086
- exports.ɵbt = ConfirmThenDialogComponent;
5087
- exports.ɵbu = AlertDialogComponent;
5088
- exports.ɵbw = InPlaceInteractionContextComponent;
5203
+ exports.ɵba = leftRightPlaceAnimation;
5204
+ exports.ɵbb = LEFT_RIGHT_PLACE_ANIMATION;
5205
+ exports.ɵbc = AUP_PLACE_CONFIG;
5206
+ exports.ɵbe = PlaceRouter;
5207
+ exports.ɵbg = ModalInteractionContextFactory;
5208
+ exports.ɵbh = UrlService;
5209
+ exports.ɵbj = TabbedPlaceNavigationComponent;
5210
+ exports.ɵbk = AbstractPlaceNavigationComponent;
5211
+ exports.ɵbl = ListPlaceNavComponent;
5212
+ exports.ɵbm = SidePlaceNavigationComponent;
5213
+ exports.ɵbn = InteractionModule;
5214
+ exports.ɵbo = ActivityContainerComponent;
5215
+ exports.ɵbp = AbstractInteractionContext;
5216
+ exports.ɵbq = ActivityOutletComponent;
5217
+ exports.ɵbr = ConfirmationDialogComponent;
5218
+ exports.ɵbs = ACTIVITY_DATA;
5219
+ exports.ɵbt = Activity;
5220
+ exports.ɵbv = ConfirmThenDialogComponent;
5221
+ exports.ɵbw = AlertDialogComponent;
5222
+ exports.ɵby = InPlaceInteractionContextComponent;
5089
5223
  exports.ɵc = FocusBindingDirective;
5090
5224
  exports.ɵd = DisposableComponent;
5091
5225
  exports.ɵe = FocusBindingFactory;
@@ -5105,11 +5239,11 @@
5105
5239
  exports.ɵs = FocusContainerComponent;
5106
5240
  exports.ɵt = VerticalFocusContainerComponent;
5107
5241
  exports.ɵu = FocusableComponent;
5108
- exports.ɵv = PlaceModule;
5109
- exports.ɵw = EmptyStateComponent;
5110
- exports.ɵx = BusyOverlayComponent;
5111
- exports.ɵy = PlaceOutletComponent;
5112
- exports.ɵz = leftRightPlaceAnimation;
5242
+ exports.ɵv = CardContainerComponent;
5243
+ exports.ɵw = PlaceModule;
5244
+ exports.ɵx = EmptyStateComponent;
5245
+ exports.ɵy = BusyOverlayComponent;
5246
+ exports.ɵz = PlaceOutletComponent;
5113
5247
 
5114
5248
  Object.defineProperty(exports, '__esModule', { value: true });
5115
5249