@coolon/angular-ui-powerups 12.4.0-alpha.27 → 12.4.0-alpha.29

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 (106) hide show
  1. package/assets/form.scss +5 -2
  2. package/assets/interaction.scss +6 -7
  3. package/bundles/coolon-angular-ui-powerups.umd.js +478 -114
  4. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  5. package/coolon-angular-ui-powerups.metadata.json +1 -1
  6. package/esm2015/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  7. package/esm2015/lib/components/cards/abstract-card-container.component.js +29 -0
  8. package/esm2015/lib/components/cards/abstract-card-container.component.js.map +1 -0
  9. package/esm2015/lib/components/cards/abstract-card-container.component.metadata.json +1 -0
  10. package/esm2015/lib/components/cards/abstract-card-container.component.ngfactory.js.map +1 -0
  11. package/esm2015/lib/components/{card-container → cards/card-container}/card-container.component.js +4 -22
  12. package/esm2015/lib/components/cards/card-container/card-container.component.js.map +1 -0
  13. package/esm2015/lib/components/cards/card-container/card-container.component.metadata.json +1 -0
  14. package/esm2015/lib/components/cards/card-container/card-container.component.ngfactory.js.map +1 -0
  15. package/esm2015/lib/components/cards/card-container/card-container.component.scss.shim.ngstyle.js.map +1 -0
  16. package/esm2015/lib/components/cards/card-stack/card-stack.component.js +72 -0
  17. package/esm2015/lib/components/cards/card-stack/card-stack.component.js.map +1 -0
  18. package/esm2015/lib/components/cards/card-stack/card-stack.component.metadata.json +1 -0
  19. package/esm2015/lib/components/cards/card-stack/card-stack.component.ngfactory.js.map +1 -0
  20. package/esm2015/lib/components/cards/card-stack/card-stack.component.scss.shim.ngstyle.js.map +1 -0
  21. package/esm2015/lib/components/components.module.js +32 -24
  22. package/esm2015/lib/components/components.module.js.map +1 -1
  23. package/esm2015/lib/components/components.module.metadata.json +1 -1
  24. package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
  25. package/esm2015/lib/components/exports.js +4 -1
  26. package/esm2015/lib/components/exports.js.map +1 -1
  27. package/esm2015/lib/components/exports.metadata.json +1 -1
  28. package/esm2015/lib/components/forms/abstract-input.component.js +1 -0
  29. package/esm2015/lib/components/forms/abstract-input.component.js.map +1 -1
  30. package/esm2015/lib/components/labelled-value/labelled-value.component.js +22 -0
  31. package/esm2015/lib/components/labelled-value/labelled-value.component.js.map +1 -0
  32. package/esm2015/lib/components/labelled-value/labelled-value.component.metadata.json +1 -0
  33. package/esm2015/lib/components/labelled-value/labelled-value.component.ngfactory.js.map +1 -0
  34. package/esm2015/lib/components/{card-container/card-container.component.scss.shim.ngstyle.js.map → labelled-value/labelled-value.component.scss.shim.ngstyle.js.map} +1 -1
  35. package/esm2015/lib/interaction/components/activity-actions/activity-actions.component.js +17 -11
  36. package/esm2015/lib/interaction/components/activity-actions/activity-actions.component.js.map +1 -1
  37. package/esm2015/lib/interaction/components/activity-actions/activity-actions.component.metadata.json +1 -1
  38. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.js +19 -8
  39. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.js.map +1 -1
  40. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.metadata.json +1 -1
  41. package/esm2015/lib/interaction/components/editors/edit-context.js +2 -0
  42. package/esm2015/lib/interaction/components/editors/edit-context.js.map +1 -0
  43. package/esm2015/lib/interaction/components/editors/edit-context.metadata.json +1 -0
  44. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-editor-model.js +28 -0
  45. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-editor-model.js.map +1 -0
  46. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-editor-model.metadata.json +1 -0
  47. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.js +160 -0
  48. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.js.map +1 -0
  49. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.metadata.json +1 -0
  50. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.ngfactory.js.map +1 -0
  51. package/esm2015/lib/interaction/components/input-activities/input-activity.js +71 -0
  52. package/esm2015/lib/interaction/components/input-activities/input-activity.js.map +1 -0
  53. package/esm2015/lib/interaction/components/input-activities/input-activity.metadata.json +1 -0
  54. package/esm2015/lib/interaction/components/input-activities/input-activity.ngfactory.js.map +1 -0
  55. package/esm2015/lib/interaction/components/input-activities/select-input-activity.js +3 -3
  56. package/esm2015/lib/interaction/components/input-activities/select-input-activity.js.map +1 -1
  57. package/esm2015/lib/interaction/components/input-activities/select-input-activity.metadata.json +1 -1
  58. package/esm2015/lib/interaction/components/input-activities/string-input-activity.js +3 -4
  59. package/esm2015/lib/interaction/components/input-activities/string-input-activity.js.map +1 -1
  60. package/esm2015/lib/interaction/components/input-activities/string-input-activity.metadata.json +1 -1
  61. package/esm2015/lib/interaction/exports.js +4 -3
  62. package/esm2015/lib/interaction/exports.js.map +1 -1
  63. package/esm2015/lib/interaction/exports.metadata.json +1 -1
  64. package/esm2015/lib/interaction/interaction.module.js +5 -2
  65. package/esm2015/lib/interaction/interaction.module.js.map +1 -1
  66. package/esm2015/lib/interaction/interaction.module.metadata.json +1 -1
  67. package/esm2015/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  68. package/esm2015/lib/place/place-router.js +3 -8
  69. package/esm2015/lib/place/place-router.js.map +1 -1
  70. package/esm2015/lib/place/place-router.metadata.json +1 -1
  71. package/esm2015/lib/place/place.module.ngfactory.js.map +1 -1
  72. package/fesm2015/coolon-angular-ui-powerups.js +400 -82
  73. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  74. package/lib/components/cards/abstract-card-container.component.d.ts +11 -0
  75. package/lib/components/{card-container → cards/card-container}/card-container.component.d.ts +2 -10
  76. package/lib/components/cards/card-stack/card-stack.component.d.ts +63 -0
  77. package/lib/components/exports.d.ts +4 -1
  78. package/lib/components/labelled-value/labelled-value.component.d.ts +7 -0
  79. package/lib/interaction/components/activity-actions/activity-actions.component.d.ts +14 -3
  80. package/lib/interaction/components/add-card-activity/add-card-activity.component.d.ts +15 -2
  81. package/lib/interaction/components/editors/edit-context.d.ts +3 -0
  82. package/lib/interaction/components/editors/inline-string-editor/inline-editor-model.d.ts +18 -0
  83. package/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.d.ts +56 -0
  84. package/lib/interaction/components/input-activities/input-activity.d.ts +33 -0
  85. package/lib/interaction/components/input-activities/select-input-activity.d.ts +11 -3
  86. package/lib/interaction/components/input-activities/string-input-activity.d.ts +2 -2
  87. package/lib/interaction/exports.d.ts +4 -3
  88. package/package.json +1 -1
  89. package/schematics/activity/templates/component/__name@dasherize__.component.html.template +1 -1
  90. package/schematics/activity/templates/component/__name@dasherize__.component.ts.template +5 -3
  91. package/esm2015/lib/components/card-container/card-container.component.js.map +0 -1
  92. package/esm2015/lib/components/card-container/card-container.component.metadata.json +0 -1
  93. package/esm2015/lib/components/card-container/card-container.component.ngfactory.js.map +0 -1
  94. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.js +0 -43
  95. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.js.map +0 -1
  96. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.metadata.json +0 -1
  97. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.ngfactory.js.map +0 -1
  98. package/esm2015/lib/interaction/components/input-activities/input-activity-data.js +0 -2
  99. package/esm2015/lib/interaction/components/input-activities/input-activity-data.js.map +0 -1
  100. package/esm2015/lib/interaction/components/input-activities/input-activity-data.metadata.json +0 -1
  101. package/esm2015/lib/interaction/components/input-activities/select-input-activity-data.js +0 -2
  102. package/esm2015/lib/interaction/components/input-activities/select-input-activity-data.js.map +0 -1
  103. package/esm2015/lib/interaction/components/input-activities/select-input-activity-data.metadata.json +0 -1
  104. package/lib/interaction/components/input-activities/abstract-input-activity.d.ts +0 -12
  105. package/lib/interaction/components/input-activities/input-activity-data.d.ts +0 -11
  106. package/lib/interaction/components/input-activities/select-input-activity-data.d.ts +0 -8
@@ -768,6 +768,32 @@
768
768
  __metadata("design:type", Boolean)
769
769
  ], BusyOverlayComponent.prototype, "busy", void 0);
770
770
 
771
+ var AbstractCardContainerComponent = /** @class */ (function (_super) {
772
+ __extends(AbstractCardContainerComponent, _super);
773
+ function AbstractCardContainerComponent() {
774
+ return _super.call(this) || this;
775
+ }
776
+ AbstractCardContainerComponent.prototype.ngOnInit = function () {
777
+ };
778
+ return AbstractCardContainerComponent;
779
+ }(DisposableComponent));
780
+ AbstractCardContainerComponent.decorators = [
781
+ { type: i0.Component, args: [{
782
+ selector: 'aup-abstract-card-container',
783
+ template: ''
784
+ },] }
785
+ ];
786
+ AbstractCardContainerComponent.ctorParameters = function () { return []; };
787
+ AbstractCardContainerComponent.propDecorators = {
788
+ addCardCommand: [{ type: i0.Input }],
789
+ addCardFace: [{ type: i0.Input }],
790
+ addCardTemplate: [{ type: i0.ContentChild, args: ['addCardTemplate',] }]
791
+ };
792
+ __decorate([
793
+ pectin.TrackExternal(),
794
+ __metadata("design:type", pectin.Command)
795
+ ], AbstractCardContainerComponent.prototype, "addCardCommand", void 0);
796
+
771
797
  /**
772
798
  * @example
773
799
  * // basic usage
@@ -832,29 +858,92 @@
832
858
  var CardContainerComponent = /** @class */ (function (_super) {
833
859
  __extends(CardContainerComponent, _super);
834
860
  function CardContainerComponent() {
835
- return _super.call(this) || this;
861
+ return _super !== null && _super.apply(this, arguments) || this;
836
862
  }
837
- CardContainerComponent.prototype.ngOnInit = function () {
838
- };
839
863
  return CardContainerComponent;
840
- }(DisposableComponent));
864
+ }(AbstractCardContainerComponent));
841
865
  CardContainerComponent.decorators = [
842
866
  { type: i0.Component, args: [{
843
867
  selector: 'aup-card-container',
844
- template: "<div class=\"card-container\">\n <ng-content></ng-content>\n\n <div class=\"add-card-container\" *ngIf=\"addCardCommand.enabled.value\" [pectinCommand]=\"addCardCommand\">\n <aup-command-face *ngIf=\"addCardFace\" [faces]=\"[addCardFace]\"></aup-command-face>\n <aup-icon *ngIf=\"!addCardFace\" icon=\"mat:add\"></aup-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",
868
+ template: "<div class=\"card-container\">\n <ng-content></ng-content>\n\n <div class=\"add-card-container\" *ngIf=\"addCardCommand.enabled.value\" [pectinCommand]=\"addCardCommand\">\n <aup-command-face *ngIf=\"addCardFace\" [faces]=\"[addCardFace]\"></aup-command-face>\n <aup-icon *ngIf=\"!addCardFace\" icon=\"mat:add\"></aup-icon>\n </div>\n\n <div class=\"add-card-template\" *ngIf=\"addCardTemplate\">\n <ng-container [ngTemplateOutlet]=\"addCardTemplate\"></ng-container>\n </div>\n</div>\n",
845
869
  styles: [":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:grid;grid-template-columns:repeat(auto-fill,var(--resolved-card-width));grid-auto-rows:minmax(var(--resolved-card-min-height),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:hsla(0,0%,100%,.8);transition:all .28s cubic-bezier(.4,0,.2,1)}.add-card-container mat-icon{font-size:200%}.add-card-container:hover{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);transition:all .28s 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}"]
846
870
  },] }
847
871
  ];
848
- CardContainerComponent.ctorParameters = function () { return []; };
849
- CardContainerComponent.propDecorators = {
850
- addCardCommand: [{ type: i0.Input }],
851
- addCardFace: [{ type: i0.Input }],
852
- addCardTemplate: [{ type: i0.ContentChild, args: ["addCardTemplate",] }]
853
- };
854
- __decorate([
855
- pectin.TrackExternal(),
856
- __metadata("design:type", pectin.Command)
857
- ], CardContainerComponent.prototype, "addCardCommand", void 0);
872
+
873
+ /**
874
+ * @example
875
+ * // basic usage
876
+ * <aup-card-stack>
877
+ * <my-card *ngFor="..."></my-card>
878
+ * </aup-card-stack>
879
+ *
880
+ * // adds an add button with a the '+' icon to the end of the card list.
881
+ * <aup-card-stack [addCardCommand]="addCard">
882
+ * <my-card *ngFor="..."></my-card>
883
+ * </aup-card-stack>
884
+ *
885
+ * // adds an add button with the specified face
886
+ * <aup-card-stack [addCardCommand]="addCard" [addCardFace]="i18n.addCard" >
887
+ * <my-card *ngFor="..."></my-card>
888
+ * </aup-card-stack>
889
+ *
890
+ * // use the aup-add-card-activity to display as the new card place holder and to run
891
+ * // the activity inside teh card
892
+ * <aup-card-stack [addCardCommand]="addCard" [addCardFace]="i18n.addCard" >
893
+ * <my-card *ngFor="..."></my-card>
894
+ * <aup-add-card-activity type="inline" renderAs="card" [face]="i18n.commands.addModal" [activityClass]="AddCardActivity"></aup-add-card-activity>
895
+ * </aup-card-stack>
896
+ *
897
+ * // adds an add card component using the specified template. The template
898
+ * // will fill it's container in the grid.
899
+ * <aup-card-stack>
900
+ * <my-card *ngFor="..."></my-card>
901
+ * <ng-template #addCardTemplate>
902
+ * <div>This is a new card template, it will the the size of the other cards.</div>
903
+ * </ng-template>
904
+ * </aup-card-stack>
905
+ *
906
+ * // sing the default new card styles for your template
907
+ * @import "../../../../assets/styles";
908
+ * .my-new-card {
909
+ * @include aup-card-stack-new-card-style();
910
+ * // OR
911
+ * @include aup-card-stack-new-card-style(
912
+ * $color: rgba(0,0,0,0.54),
913
+ * $background-color: rgba(255,255,255,0.8),
914
+ * $hover-color: $color,
915
+ * $background-hover-color: white
916
+ * )
917
+ * }
918
+ * <aup-card-stack>
919
+ * <my-card *ngFor="..."></my-card>
920
+ * <ng-template #addCardTemplate>
921
+ * <div class="my-new-card" >This is a new card template, it will the the size of the other cards.</div>
922
+ * </ng-template>
923
+ * </aup-card-stack>
924
+ *
925
+ * // CSS Vars
926
+ * aup-card-stack {
927
+ * --card-gap: var(--card-gap, 16px);
928
+ * --card-height: var(--card-height, auto);
929
+ * --card-min-height: var(--card-min-height, auto);
930
+ * --card-background: var(--card-background, #fcfcfb);
931
+ * }
932
+ */
933
+ var CardStackComponent = /** @class */ (function (_super) {
934
+ __extends(CardStackComponent, _super);
935
+ function CardStackComponent() {
936
+ return _super !== null && _super.apply(this, arguments) || this;
937
+ }
938
+ return CardStackComponent;
939
+ }(AbstractCardContainerComponent));
940
+ CardStackComponent.decorators = [
941
+ { type: i0.Component, args: [{
942
+ selector: 'aup-card-stack',
943
+ template: "<div class=\"card-container\">\n <ng-content></ng-content>\n</div>\n<div class=\"footer\">\n <div class=\"add-card-container\" *ngIf=\"addCardCommand.enabled.value\" [pectinCommand]=\"addCardCommand\">\n <aup-command-face *ngIf=\"addCardFace\" [faces]=\"[addCardFace]\"></aup-command-face>\n <aup-icon *ngIf=\"!addCardFace\" icon=\"mat:add\"></aup-icon>\n </div>\n\n <div class=\"add-card-template\" *ngIf=\"addCardTemplate\">\n <ng-container [ngTemplateOutlet]=\"addCardTemplate\"></ng-container>\n </div>\n <ng-content select=\"[aup-card-stack-footer]\"></ng-content>\n</div>\n",
944
+ styles: [":host{--resolved-card-gap:var(--card-gap,16px);--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:grid;grid-template-columns:1fr;grid-auto-rows:minmax(var(--resolved-card-min-height),var(--resolved-card-height));grid-gap:var(--resolved-card-gap);box-sizing:border-box;padding:var(--resolved-card-gap);max-width:100%}.footer{align-items:stretch;padding:0 var(--resolved-card-gap) var(--resolved-card-gap)}.add-card-container,.footer{display:flex;flex-direction:column}.add-card-container{width:var(--resolved-card-width);height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);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:hsla(0,0%,100%,.8);transition:all .28s cubic-bezier(.4,0,.2,1)}.add-card-container mat-icon{font-size:200%}.add-card-container:hover{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);transition:all .28s 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}"]
945
+ },] }
946
+ ];
858
947
 
859
948
  exports.CommandFace = void 0;
860
949
  (function (CommandFace) {
@@ -1692,6 +1781,7 @@
1692
1781
  function AbstractInputComponent() {
1693
1782
  var _this = _super.call(this) || this;
1694
1783
  _this.onValueEditedListeners = new pectin.EventListenerList();
1784
+ _this.userFloatLabel = 'always'; // TODO: make this an injectable default
1695
1785
  _this.dense = false;
1696
1786
  // TODO: fix this.
1697
1787
  // tslint:disable-next-line:no-output-native
@@ -4690,6 +4780,28 @@
4690
4780
  __metadata("design:type", pectin.PageController)
4691
4781
  ], PaginatorComponent.prototype, "pageController", void 0);
4692
4782
 
4783
+ var LabelledValueComponent = /** @class */ (function (_super) {
4784
+ __extends(LabelledValueComponent, _super);
4785
+ function LabelledValueComponent() {
4786
+ return _super.call(this) || this;
4787
+ // const {chain} = Dsl.disposeWith(this);
4788
+ }
4789
+ LabelledValueComponent.prototype.ngOnInit = function () {
4790
+ };
4791
+ return LabelledValueComponent;
4792
+ }(DisposableComponent));
4793
+ LabelledValueComponent.decorators = [
4794
+ { type: i0.Component, args: [{
4795
+ selector: 'aup-labelled-value',
4796
+ template: "<label>{{label}}</label>\n<ng-content></ng-content>\n",
4797
+ styles: [":host{display:inline-flex;flex-direction:column;align-items:flex-start}label{font-weight:400;font-size:12px;color:rgba(0,0,0,.57);margin-bottom:6px;white-space:nowrap}"]
4798
+ },] }
4799
+ ];
4800
+ LabelledValueComponent.ctorParameters = function () { return []; };
4801
+ LabelledValueComponent.propDecorators = {
4802
+ label: [{ type: i0.Input }]
4803
+ };
4804
+
4693
4805
  var ComponentsModule = /** @class */ (function () {
4694
4806
  function ComponentsModule(faIconLibrary) {
4695
4807
  faIconLibrary.addIconPacks(freeSolidSvgIcons.fas);
@@ -4698,6 +4810,28 @@
4698
4810
  }());
4699
4811
  ComponentsModule.decorators = [
4700
4812
  { type: i0.NgModule, args: [{
4813
+ imports: [
4814
+ i2.CommonModule,
4815
+ animations.BrowserAnimationsModule,
4816
+ forms.FormsModule,
4817
+ input.MatInputModule,
4818
+ formField.MatFormFieldModule,
4819
+ select.MatSelectModule,
4820
+ tabs.MatTabsModule,
4821
+ DirectivesModule,
4822
+ icon.MatIconModule,
4823
+ button.MatButtonModule,
4824
+ checkbox.MatCheckboxModule,
4825
+ table.MatTableModule,
4826
+ portal.PortalModule,
4827
+ scrolling.CdkScrollableModule,
4828
+ angularFontawesome.FontAwesomeModule,
4829
+ tooltip.MatTooltipModule,
4830
+ autocomplete.MatAutocompleteModule,
4831
+ menu.MatMenuModule,
4832
+ divider.MatDividerModule,
4833
+ progressSpinner.MatProgressSpinnerModule
4834
+ ],
4701
4835
  declarations: [
4702
4836
  AbstractInputComponent,
4703
4837
  AbstractValueInputComponent,
@@ -4746,29 +4880,10 @@
4746
4880
  BusyOverlayComponent,
4747
4881
  EmptyStateComponent,
4748
4882
  PaginatorComponent,
4749
- AbstractTableComponent
4750
- ],
4751
- imports: [
4752
- i2.CommonModule,
4753
- animations.BrowserAnimationsModule,
4754
- forms.FormsModule,
4755
- input.MatInputModule,
4756
- formField.MatFormFieldModule,
4757
- select.MatSelectModule,
4758
- tabs.MatTabsModule,
4759
- DirectivesModule,
4760
- icon.MatIconModule,
4761
- button.MatButtonModule,
4762
- checkbox.MatCheckboxModule,
4763
- table.MatTableModule,
4764
- portal.PortalModule,
4765
- scrolling.CdkScrollableModule,
4766
- angularFontawesome.FontAwesomeModule,
4767
- tooltip.MatTooltipModule,
4768
- autocomplete.MatAutocompleteModule,
4769
- menu.MatMenuModule,
4770
- divider.MatDividerModule,
4771
- progressSpinner.MatProgressSpinnerModule
4883
+ AbstractTableComponent,
4884
+ AbstractCardContainerComponent,
4885
+ CardStackComponent,
4886
+ LabelledValueComponent
4772
4887
  ],
4773
4888
  exports: [
4774
4889
  NumberInputComponent,
@@ -4805,6 +4920,8 @@
4805
4920
  BusyOverlayComponent,
4806
4921
  EmptyStateComponent,
4807
4922
  PaginatorComponent,
4923
+ CardStackComponent,
4924
+ LabelledValueComponent,
4808
4925
  ],
4809
4926
  providers: [
4810
4927
  FocusBindingFactory
@@ -4836,12 +4953,13 @@
4836
4953
  * <span>This content will be between the two commands</span>
4837
4954
  * </aup-activity-actions>
4838
4955
  */
4839
- var ActivityActionsComponent = /** @class */ (function (_super) {
4956
+ exports.ActivityActionsComponent = /** @class */ (function (_super) {
4840
4957
  __extends(ActivityActionsComponent, _super);
4841
4958
  function ActivityActionsComponent(cdr) {
4842
4959
  var _this = _super.call(this) || this;
4843
4960
  _this.cdr = cdr;
4844
- _this.align = 'stretch';
4961
+ _this.layout = ActivityActionsComponent.Layout.BLOCK;
4962
+ _this.align = ActivityActionsComponent.Align.STRETCH;
4845
4963
  return _this;
4846
4964
  }
4847
4965
  Object.defineProperty(ActivityActionsComponent.prototype, "faces", {
@@ -4862,20 +4980,6 @@
4862
4980
  enumerable: false,
4863
4981
  configurable: true
4864
4982
  });
4865
- Object.defineProperty(ActivityActionsComponent.prototype, "alignEnd", {
4866
- get: function () {
4867
- return this.align === 'end';
4868
- },
4869
- enumerable: false,
4870
- configurable: true
4871
- });
4872
- Object.defineProperty(ActivityActionsComponent.prototype, "alignStretch", {
4873
- get: function () {
4874
- return this.align === 'stretch';
4875
- },
4876
- enumerable: false,
4877
- configurable: true
4878
- });
4879
4983
  ActivityActionsComponent.prototype.ngOnInit = function () {
4880
4984
  };
4881
4985
  ActivityActionsComponent.prototype.hasConfirmFace = function () {
@@ -4891,35 +4995,45 @@
4891
4995
  };
4892
4996
  return ActivityActionsComponent;
4893
4997
  }(DisposableComponent));
4894
- ActivityActionsComponent.decorators = [
4998
+ exports.ActivityActionsComponent.decorators = [
4895
4999
  { type: i0.Component, args: [{
4896
5000
  selector: 'aup-activity-actions',
4897
5001
  template: "<div class=\"content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"hasConfirmFace()\">\n <aup-command class=\"confirm\" [command]=\"confirmCommand\" [face]=\"confirmFace\" data-cy=\"confirm-command\"></aup-command>\n</ng-container>\n<ng-container *ngIf=\"hasCancelFace()\">\n <aup-command class=\"cancel\" [command]=\"cancelCommand\" [face]=\"cancelFace\" data-cy=\"cancel-command\"></aup-command>\n</ng-container>\n",
4898
- styles: [":host{display:grid;grid-template-areas:\"cancel confirm content\";grid-template-columns:auto auto 1fr;grid-template-rows:auto;align-items:center;justify-content:end}:host.align-end{grid-template-areas:\"content cancel confirm\";grid-template-columns:1fr auto auto}:host.align-stretch{grid-template-areas:\"cancel content confirm\";grid-template-columns:auto 1fr auto}.cancel{grid-area:cancel}.confirm{grid-area:confirm}.content{grid-area:content;text-align:left}"]
5002
+ styles: [":host{display:grid;grid-template-rows:auto;align-items:center;justify-content:end}:host[layout=block][align=start]{grid-template-areas:\"cancel confirm content\";grid-template-columns:auto auto 1fr}:host[layout=block][align=end]{grid-template-areas:\"content cancel confirm\";grid-template-columns:1fr auto auto}:host[layout=block][align=stretch]{grid-template-areas:\"cancel content confirm\";grid-template-columns:auto 1fr auto}:host[layout=inline]{grid-template-areas:\"confirm cancel content\";grid-template-columns:auto auto 1fr;padding:0}.cancel{grid-area:cancel}.confirm{grid-area:confirm}.content{grid-area:content;text-align:left}"]
4899
5003
  },] }
4900
5004
  ];
4901
- ActivityActionsComponent.ctorParameters = function () { return [
5005
+ exports.ActivityActionsComponent.ctorParameters = function () { return [
4902
5006
  { type: i0.ChangeDetectorRef }
4903
5007
  ]; };
4904
- ActivityActionsComponent.propDecorators = {
5008
+ exports.ActivityActionsComponent.propDecorators = {
4905
5009
  confirmCommand: [{ type: i0.Input }],
4906
5010
  cancelCommand: [{ type: i0.Input }],
4907
5011
  faces: [{ type: i0.Input }],
4908
5012
  confirmFace: [{ type: i0.Input }],
4909
5013
  cancelFace: [{ type: i0.Input }],
4910
5014
  style: [{ type: i0.Input }],
4911
- align: [{ type: i0.Input }],
4912
- alignEnd: [{ type: i0.HostBinding, args: ['class.align-end',] }],
4913
- alignStretch: [{ type: i0.HostBinding, args: ['class.align-stretch',] }]
5015
+ layout: [{ type: i0.Input }, { type: i0.HostBinding, args: ['attr.layout',] }],
5016
+ align: [{ type: i0.Input }, { type: i0.HostBinding, args: ['attr.align',] }]
4914
5017
  };
4915
5018
  __decorate([
4916
5019
  pectin.TrackExternal(),
4917
5020
  __metadata("design:type", pectin.Command)
4918
- ], ActivityActionsComponent.prototype, "confirmCommand", void 0);
5021
+ ], exports.ActivityActionsComponent.prototype, "confirmCommand", void 0);
4919
5022
  __decorate([
4920
5023
  pectin.TrackExternal(),
4921
5024
  __metadata("design:type", pectin.Command)
4922
- ], ActivityActionsComponent.prototype, "cancelCommand", void 0);
5025
+ ], exports.ActivityActionsComponent.prototype, "cancelCommand", void 0);
5026
+ (function (ActivityActionsComponent) {
5027
+ ActivityActionsComponent.Layout = typescriptStringEnums.Enum({
5028
+ INLINE: 'inline',
5029
+ BLOCK: 'block'
5030
+ });
5031
+ ActivityActionsComponent.Align = typescriptStringEnums.Enum({
5032
+ START: 'start',
5033
+ END: 'end',
5034
+ STRETCH: 'stretch'
5035
+ });
5036
+ })(exports.ActivityActionsComponent || (exports.ActivityActionsComponent = {}));
4923
5037
 
4924
5038
  var ACTIVITY_DATA = new i0.InjectionToken('InteractionActivityData');
4925
5039
  var Activity = /** @class */ (function (_super) {
@@ -5002,7 +5116,7 @@
5002
5116
  ];
5003
5117
  Activity.ctorParameters = function () { return []; };
5004
5118
  Activity.propDecorators = {
5005
- activityActions: [{ type: i0.ViewChild, args: [ActivityActionsComponent,] }],
5119
+ activityActions: [{ type: i0.ViewChild, args: [exports.ActivityActionsComponent,] }],
5006
5120
  class: [{ type: i0.HostBinding, args: ['class',] }],
5007
5121
  isFocused: [{ type: i0.HostBinding, args: ['attr.focused',] }]
5008
5122
  };
@@ -5989,12 +6103,12 @@
5989
6103
  /**
5990
6104
  *
5991
6105
  */
5992
- var AddCardActivityComponent = /** @class */ (function (_super) {
6106
+ exports.AddCardActivityComponent = /** @class */ (function (_super) {
5993
6107
  __extends(AddCardActivityComponent, _super);
5994
6108
  function AddCardActivityComponent(interactionService) {
5995
6109
  var _this = _super.call(this) || this;
5996
- _this.type = 'modal';
5997
- _this.renderAs = 'card';
6110
+ _this.interactionStyle = AddCardActivityComponent.InteractionType.MODAL;
6111
+ _this.renderAs = AddCardActivityComponent.RenderAs.CARD;
5998
6112
  var chain = pectin.Dsl.disposeWith(_this).chain;
5999
6113
  _this.modalInteractionContext = interactionService.createModalInteractionContextDisposedWith(_this);
6000
6114
  _this.faceList = chain(_this.faceModel).mapToList(function (face) { return [face]; });
@@ -6009,7 +6123,7 @@
6009
6123
  });
6010
6124
  Object.defineProperty(AddCardActivityComponent.prototype, "activityTypeClass", {
6011
6125
  get: function () {
6012
- return this.type + "-activity";
6126
+ return this.interactionStyle + "-activity";
6013
6127
  },
6014
6128
  enumerable: false,
6015
6129
  configurable: true
@@ -6024,7 +6138,7 @@
6024
6138
  };
6025
6139
  Object.defineProperty(AddCardActivityComponent.prototype, "interactionContext", {
6026
6140
  get: function () {
6027
- switch (this.type) {
6141
+ switch (this.interactionStyle) {
6028
6142
  case 'inline':
6029
6143
  return this.inlineInteractionContext;
6030
6144
  default:
@@ -6035,30 +6149,40 @@
6035
6149
  configurable: true
6036
6150
  });
6037
6151
  AddCardActivityComponent.prototype.isModal = function () {
6038
- return this.type === 'modal';
6152
+ return this.interactionStyle === 'modal';
6039
6153
  };
6040
6154
  AddCardActivityComponent.prototype.isInline = function () {
6041
- return this.type === 'inline';
6155
+ return this.interactionStyle === 'inline';
6042
6156
  };
6043
6157
  return AddCardActivityComponent;
6044
6158
  }(AbstractActivityTriggerComponent));
6045
- AddCardActivityComponent.decorators = [
6159
+ exports.AddCardActivityComponent.decorators = [
6046
6160
  { type: i0.Component, args: [{
6047
6161
  selector: 'aup-add-card-activity',
6048
6162
  template: "<aup-in-place-interaction-context [animateFirstActivity]=\"false\" [pectinCommand]=\"startActivityCommand\">\n <aup-command *ngIf=\"isRenderAsButton()\" [command]=\"startActivityCommand\" [faceModel]=\"faceModel\" [alignFace]=\"alignFace\"></aup-command>\n <section *ngIf=\"isRenderAsCard()\" class=\"face-wrapper\">\n <aup-command-face class=\"mat-button\" [faces]=\"faceList.value\"></aup-command-face>\n </section>\n</aup-in-place-interaction-context>\n",
6049
- styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host[type=inline][renderas=card]:not(.active){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:hsla(0,0%,100%,.8);transition:all .28s cubic-bezier(.4,0,.2,1)}:host[type=inline][renderas=card]:not(.active):hover{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);transition:all .28s cubic-bezier(.4,0,.2,1);border-color:transparent;background-color:#fff;color:rgba(0,0,0,.54)}:host[type=inline][renderas=card]:not(.active):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)}:host[type=modal][renderas=card]{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:hsla(0,0%,100%,.8);transition:all .28s cubic-bezier(.4,0,.2,1)}:host[type=modal][renderas=card]:hover{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);transition:all .28s cubic-bezier(.4,0,.2,1);border-color:transparent;background-color:#fff;color:rgba(0,0,0,.54)}:host[type=modal][renderas=card]: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)}section.face-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}aup-in-place-interaction-context{flex:1}aup-in-place-interaction-context.active{border:3px solid #6273c7;border-radius:4px;overflow:hidden}"]
6163
+ styles: [":host{display:flex;flex-direction:column;align-items:stretch;background-color:#fff}:host[interactionStyle=inline][renderas=card]:not(.active){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:hsla(0,0%,100%,.8);transition:all .28s cubic-bezier(.4,0,.2,1)}:host[interactionStyle=inline][renderas=card]:not(.active):hover{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);transition:all .28s cubic-bezier(.4,0,.2,1);border-color:transparent;background-color:#fff;color:rgba(0,0,0,.54)}:host[interactionStyle=inline][renderas=card]:not(.active):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)}:host[interactionStyle=modal][renderas=card]{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:hsla(0,0%,100%,.8);transition:all .28s cubic-bezier(.4,0,.2,1)}:host[interactionStyle=modal][renderas=card]:hover{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);transition:all .28s cubic-bezier(.4,0,.2,1);border-color:transparent;background-color:#fff;color:rgba(0,0,0,.54)}:host[interactionStyle=modal][renderas=card]: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)}section.face-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}aup-in-place-interaction-context{flex:1}aup-in-place-interaction-context.active{border:3px solid #6273c7;border-radius:4px;overflow:hidden}"]
6050
6164
  },] }
6051
6165
  ];
6052
- AddCardActivityComponent.ctorParameters = function () { return [
6166
+ exports.AddCardActivityComponent.ctorParameters = function () { return [
6053
6167
  { type: exports.InteractionService }
6054
6168
  ]; };
6055
- AddCardActivityComponent.propDecorators = {
6169
+ exports.AddCardActivityComponent.propDecorators = {
6056
6170
  inlineInteractionContext: [{ type: i0.ViewChild, args: [InPlaceInteractionContextComponent, { static: true },] }],
6057
- type: [{ type: i0.Input }],
6171
+ interactionStyle: [{ type: i0.Input }],
6058
6172
  renderAs: [{ type: i0.Input }, { type: i0.HostBinding, args: ['class',] }],
6059
6173
  renderAsClass: [{ type: i0.HostBinding, args: ['class',] }],
6060
6174
  activityTypeClass: [{ type: i0.HostBinding, args: ['class',] }]
6061
6175
  };
6176
+ (function (AddCardActivityComponent) {
6177
+ AddCardActivityComponent.InteractionType = typescriptStringEnums.Enum({
6178
+ MODAL: 'modal',
6179
+ INLINE: 'inline'
6180
+ });
6181
+ AddCardActivityComponent.RenderAs = typescriptStringEnums.Enum({
6182
+ CARD: 'card',
6183
+ BUTTON: 'button'
6184
+ });
6185
+ })(exports.AddCardActivityComponent || (exports.AddCardActivityComponent = {}));
6062
6186
 
6063
6187
  /**
6064
6188
  * Css Vars.
@@ -6320,45 +6444,85 @@
6320
6444
  // @see https://github.com/ng-packagr/ng-packagr/issues/641 and https://github.com/angular/angular/issues/21123
6321
6445
  // we're getting a metadata error for D for no reason that I can find and only during the build (ng serve works fine)
6322
6446
  // @dynamic
6323
- var AbstractInputActivity = /** @class */ (function (_super) {
6324
- __extends(AbstractInputActivity, _super);
6325
- function AbstractInputActivity(data) {
6447
+ exports.InputActivity = /** @class */ (function (_super) {
6448
+ __extends(InputActivity, _super);
6449
+ function InputActivity(data) {
6326
6450
  var _this = _super.call(this) || this;
6327
6451
  _this.data = data;
6328
6452
  _this.class = 'aup-input-activity';
6329
6453
  var form = new pectin.DirtyTrackingForm();
6330
6454
  _this.valueModel = form.valueModel(_this.data.initialValue);
6331
6455
  _this.valueModel.validateUsing(data.validators || []);
6332
- _this.confirmCommand = pectin.Command.create(function () {
6333
- if (_this.valueModel.validate()) {
6334
- if (data.save) {
6335
- return Promise.resolve(data.save(_this.valueModel, _this.interactionContext))
6336
- .then(function () { return _this.done(); });
6337
- }
6338
- else {
6339
- _this.done(_this.valueModel.value);
6456
+ _this.confirmCommand = pectin.Command.create(function () { return __awaiter(_this, void 0, void 0, function () {
6457
+ var self_1, allGood_1, result, e_1;
6458
+ return __generator(this, function (_c) {
6459
+ switch (_c.label) {
6460
+ case 0:
6461
+ if (!this.valueModel.validate()) return [3 /*break*/, 6];
6462
+ if (!data.save) return [3 /*break*/, 5];
6463
+ self_1 = this;
6464
+ _c.label = 1;
6465
+ case 1:
6466
+ _c.trys.push([1, 3, , 4]);
6467
+ allGood_1 = true;
6468
+ return [4 /*yield*/, data.save(this.valueModel.value, {
6469
+ injectError: function (error) {
6470
+ allGood_1 = false;
6471
+ self_1.valueModel.injectErrors([error]);
6472
+ }
6473
+ })];
6474
+ case 2:
6475
+ result = _c.sent();
6476
+ if (allGood_1) {
6477
+ this.done(this.valueModel.value);
6478
+ }
6479
+ return [3 /*break*/, 4];
6480
+ case 3:
6481
+ e_1 = _c.sent();
6482
+ return [3 /*break*/, 4];
6483
+ case 4: return [3 /*break*/, 6];
6484
+ case 5:
6485
+ this.done(this.valueModel.value);
6486
+ _c.label = 6;
6487
+ case 6: return [2 /*return*/];
6340
6488
  }
6341
- }
6342
- });
6489
+ });
6490
+ }); });
6343
6491
  _this.cancelCommand = pectin.Command.create(function () {
6344
6492
  _this.cancel();
6345
6493
  });
6494
+ _this.busyWhile(_this.confirmCommand.busy);
6346
6495
  return _this;
6347
6496
  }
6348
- AbstractInputActivity.prototype.onActivityReady = function () {
6497
+ Object.defineProperty(InputActivity.prototype, "layout", {
6498
+ get: function () {
6499
+ var _a, _b;
6500
+ return (_b = (_a = this.data) === null || _a === void 0 ? void 0 : _a.layout) !== null && _b !== void 0 ? _b : InputActivity.Layout.BLOCK;
6501
+ },
6502
+ enumerable: false,
6503
+ configurable: true
6504
+ });
6505
+ InputActivity.prototype.onActivityReady = function () {
6349
6506
  this.valueModel.focusContext.requestFocus();
6350
6507
  };
6351
- return AbstractInputActivity;
6508
+ return InputActivity;
6352
6509
  }(Activity));
6353
- AbstractInputActivity.decorators = [
6510
+ exports.InputActivity.decorators = [
6354
6511
  { type: i0.Component, args: [{ template: "" },] }
6355
6512
  ];
6356
- AbstractInputActivity.ctorParameters = function () { return [
6513
+ exports.InputActivity.ctorParameters = function () { return [
6357
6514
  { type: undefined, decorators: [{ type: i0.Inject, args: [ACTIVITY_DATA,] }] }
6358
6515
  ]; };
6359
- AbstractInputActivity.propDecorators = {
6360
- class: [{ type: i0.HostBinding, args: ['class',] }]
6516
+ exports.InputActivity.propDecorators = {
6517
+ class: [{ type: i0.HostBinding, args: ['class',] }],
6518
+ layout: [{ type: i0.Input }, { type: i0.HostBinding, args: ['attr.layout',] }]
6361
6519
  };
6520
+ (function (InputActivity) {
6521
+ InputActivity.Layout = typescriptStringEnums.Enum({
6522
+ INLINE: 'inline',
6523
+ BLOCK: 'block'
6524
+ });
6525
+ })(exports.InputActivity || (exports.InputActivity = {}));
6362
6526
 
6363
6527
  var StringInputActivity = /** @class */ (function (_super) {
6364
6528
  __extends(StringInputActivity, _super);
@@ -6366,11 +6530,11 @@
6366
6530
  return _super !== null && _super.apply(this, arguments) || this;
6367
6531
  }
6368
6532
  return StringInputActivity;
6369
- }(AbstractInputActivity));
6533
+ }(exports.InputActivity));
6370
6534
  StringInputActivity.decorators = [
6371
6535
  { type: i0.Component, args: [{
6372
6536
  selector: 'aup-string-input-activity',
6373
- template: "\n <aup-string-input [valueModel]=\"valueModel\"\n [label]=\"data.label\"\n [placeholder]=\"data.placeholder\"\n [command.enter]=\"confirmCommand\"\n [command.escape]=\"cancelCommand\"></aup-string-input>\n <aup-activity-actions align=\"end\"\n [faces]=\"data.buttonStyle\"></aup-activity-actions>\n "
6537
+ template: "\n <aup-string-input [valueModel]=\"valueModel\"\n [label]=\"data.label\"\n [placeholder]=\"data.placeholder\"\n [command.enter]=\"confirmCommand\"\n [command.escape]=\"cancelCommand\"></aup-string-input>\n <aup-activity-actions [layout]=\"layout\" align=\"end\" [faces]=\"data.buttonStyle\"></aup-activity-actions>\n "
6374
6538
  },] }
6375
6539
  ];
6376
6540
 
@@ -6400,11 +6564,11 @@
6400
6564
  configurable: true
6401
6565
  });
6402
6566
  return SelectInputActivity;
6403
- }(AbstractInputActivity));
6567
+ }(exports.InputActivity));
6404
6568
  SelectInputActivity.decorators = [
6405
6569
  { type: i0.Component, args: [{
6406
6570
  selector: 'aup-select-input-activity',
6407
- template: "\n <aup-select-input [valueModel]=\"valueModel\"\n [label]=\"data.label\"\n [placeholder]=\"data.placeholder\"\n [command.enter]=\"confirmCommand\"\n [command.escape]=\"cancelCommand\"\n [options]=\"options\"\n [optionLabelFormat]=\"optionLabelFormat\"\n ></aup-select-input>\n <aup-activity-actions align=\"end\" [faces]=\"data.buttonStyle\"\n ></aup-activity-actions>\n "
6571
+ template: "\n <aup-select-input [valueModel]=\"valueModel\"\n [label]=\"data.label\"\n [placeholder]=\"data.placeholder\"\n [command.enter]=\"confirmCommand\"\n [command.escape]=\"cancelCommand\"\n [options]=\"options\"\n [optionLabelFormat]=\"optionLabelFormat\"\n ></aup-select-input>\n <aup-activity-actions [layout]=\"layout\" align=\"end\" [faces]=\"data.buttonStyle\"\n ></aup-activity-actions>\n "
6408
6572
  },] }
6409
6573
  ];
6410
6574
 
@@ -6576,6 +6740,209 @@
6576
6740
  _interactionContext: [{ type: i0.ViewChild, args: [PopupInteractionContextComponent, { static: true },] }]
6577
6741
  };
6578
6742
 
6743
+ exports.InlineEditorModel = /** @class */ (function () {
6744
+ function InlineEditorModel(valueModel, saveCallback) {
6745
+ this.valueModel = valueModel;
6746
+ this.saveCallback = saveCallback;
6747
+ this.editing = new pectin.MutableValueModel(false);
6748
+ this._validators = new pectin.MutableListModel();
6749
+ }
6750
+ Object.defineProperty(InlineEditorModel.prototype, "validators", {
6751
+ get: function () {
6752
+ return this._validators.readonly;
6753
+ },
6754
+ enumerable: false,
6755
+ configurable: true
6756
+ });
6757
+ InlineEditorModel.prototype.validateUsing = function (validator) {
6758
+ this._validators.push(validator);
6759
+ return this;
6760
+ };
6761
+ ;
6762
+ InlineEditorModel.prototype.isEditing = function () {
6763
+ return this.editing.value;
6764
+ };
6765
+ return InlineEditorModel;
6766
+ }());
6767
+ (function (InlineEditorModel) {
6768
+ function create(valueModel, options) {
6769
+ return new InlineEditorModel(valueModel, options.save);
6770
+ }
6771
+ InlineEditorModel.create = create;
6772
+ })(exports.InlineEditorModel || (exports.InlineEditorModel = {}));
6773
+ pectin.TrackExternal.oneTimeBinding(exports.InlineEditorModel);
6774
+
6775
+ /**
6776
+ * @example
6777
+ * const source: ValueModel<string> = ...;
6778
+ * const model = InlineEditorModel.create(source, {
6779
+ * save(updated:string, context: InlineEditorModel.SaveContext) => {
6780
+ * try {
6781
+ * try and save the thing...
6782
+ * } catch(error) {
6783
+ * context.injectError(error)
6784
+ * }
6785
+ * }).validateUsing(Validator.present("We'll need a value");
6786
+ *
6787
+ * # in the view
6788
+ * <aup-inline-string-editor
6789
+ * label="My field"
6790
+ * placeHolder="I'm ready for a string..."
6791
+ * [editorModel]="model"></aup-inline-string-editor>
6792
+ */
6793
+ exports.InlineStringEditorComponent = /** @class */ (function (_super) {
6794
+ __extends(InlineStringEditorComponent, _super);
6795
+ function InlineStringEditorComponent(interactionService) {
6796
+ var _this = _super.call(this) || this;
6797
+ var _a = pectin.Dsl.disposeWith(_this), chain = _a.chain, when = _a.when, valueOf = _a.valueOf;
6798
+ var modalIC = interactionService.createModalInteractionContextDisposedWith(_this);
6799
+ var resolvedFacesModel = chain(_this.facesModel).map(function (userFaces) {
6800
+ return Object.assign(Object.assign({}, InlineStringEditorComponent.DEFAULT_FACES), userFaces);
6801
+ }, { allowNil: true });
6802
+ _this.editFaceModel = resolvedFacesModel.pluck('edit');
6803
+ _this.saveFace = resolvedFacesModel.pluck('save');
6804
+ _this.cancelFace = resolvedFacesModel.pluck('cancel');
6805
+ var self = _this;
6806
+ _this.editCommand = pectin.Command.create(function () { return __awaiter(_this, void 0, void 0, function () {
6807
+ var e_1;
6808
+ return __generator(this, function (_a) {
6809
+ switch (_a.label) {
6810
+ case 0:
6811
+ this.editorModel.editing.value = true;
6812
+ _a.label = 1;
6813
+ case 1:
6814
+ _a.trys.push([1, 3, 4, 5]);
6815
+ return [4 /*yield*/, this.interactionContext.startActivity(StringInputActivity, this.createInputActivityData())];
6816
+ case 2:
6817
+ _a.sent();
6818
+ return [3 /*break*/, 5];
6819
+ case 3:
6820
+ e_1 = _a.sent();
6821
+ return [3 /*break*/, 5];
6822
+ case 4:
6823
+ this.editorModel.editing.value = false;
6824
+ return [7 /*endfinally*/];
6825
+ case 5: return [2 /*return*/];
6826
+ }
6827
+ });
6828
+ }); });
6829
+ _this.onDispose(function () { return _this.cancelEdit(); });
6830
+ return _this;
6831
+ // const txo = new TransactionObserver({ verbose: true }).onEvent(e => console.log(e.name, e.payload));
6832
+ // txo.observe('this.editFace', this.editFaceModel);
6833
+ }
6834
+ InlineStringEditorComponent.prototype.ngOnInit = function () {
6835
+ var _this = this;
6836
+ // our editor model is a one time binding without delegates so we can only
6837
+ // use it once we've been initialised
6838
+ var _a = pectin.Dsl.disposeWith(this), chain = _a.chain, when = _a.when, valueOf = _a.valueOf;
6839
+ if (!this.editorModel) {
6840
+ typescriptUtilities.lang.illegalState("editorModel is required");
6841
+ }
6842
+ when(this.editorModel.editing).becomesTruthy(function () {
6843
+ _this.editCommand.execute();
6844
+ }, { asLongAs: this.editCommand.enabled });
6845
+ when(this.editorModel.editing).becomesFalsey(function () { return _this.cancelEdit(); });
6846
+ this.empty = valueOf.any(chain.stringValue(this.editorModel.valueModel).isBlank()
6847
+ // deviceDescription.isNil()
6848
+ ).areTruthy();
6849
+ this.displayValue = chain(this.editorModel.valueModel).map(function (v) {
6850
+ return ___namespace.isEmpty(v) ? _this.placeHolderModel.value : v;
6851
+ }, { dependsOn: this.placeHolderModel, allowNil: true });
6852
+ };
6853
+ InlineStringEditorComponent.prototype.createInputActivityData = function () {
6854
+ var self = this;
6855
+ return {
6856
+ initialValue: self.editorModel.valueModel.value,
6857
+ buttonStyle: { confirm: self.saveFace.value, cancel: self.cancelFace.value },
6858
+ placeholder: self.placeHolderModel.value,
6859
+ label: self.label,
6860
+ layout: exports.InputActivity.Layout.INLINE,
6861
+ validators: self.editorModel.validators.value,
6862
+ save: function (value, inputContext) {
6863
+ return __awaiter(this, void 0, void 0, function () {
6864
+ return __generator(this, function (_a) {
6865
+ switch (_a.label) {
6866
+ case 0: return [4 /*yield*/, self.editorModel.saveCallback(value, inputContext)];
6867
+ case 1:
6868
+ _a.sent();
6869
+ return [2 /*return*/];
6870
+ }
6871
+ });
6872
+ });
6873
+ }
6874
+ };
6875
+ };
6876
+ InlineStringEditorComponent.prototype.cancelEdit = function () {
6877
+ if (this.isEditing()) {
6878
+ this.interactionContext.cancelActiveActivity();
6879
+ }
6880
+ };
6881
+ InlineStringEditorComponent.prototype.startEdit = function () {
6882
+ if (!this.isEditing() && this.editCommand.enabled.value) {
6883
+ this.editCommand.execute();
6884
+ }
6885
+ };
6886
+ InlineStringEditorComponent.prototype.isEditing = function () {
6887
+ return this.interactionContext.isActive();
6888
+ };
6889
+ InlineStringEditorComponent.prototype.isEmpty = function () {
6890
+ return this.empty.value;
6891
+ };
6892
+ return InlineStringEditorComponent;
6893
+ }(DisposableComponent));
6894
+ exports.InlineStringEditorComponent.decorators = [
6895
+ { type: i0.Component, args: [{
6896
+ selector: 'aup-inline-string-editor',
6897
+ template: "<ng-container *ngIf=\"!editorModel.isEditing()\">\n <div class=\"content\" [class.editable]=\"editCommand.enabled.value\">\n <label>{{label}}</label>\n <p [class.place-holder]=\"empty.value\" (click)=\"editCommand.execute()\">{{displayValue.value}}</p>\n <aup-command *ngIf=\"editCommand.enabled.value\" [command]=\"editCommand\" [faceModel]=\"editFaceModel\"></aup-command>\n </div>\n</ng-container>\n<aup-in-place-interaction-context #interactionContext [animateFirstActivity]=\"false\"></aup-in-place-interaction-context>\n\n"
6898
+ },] }
6899
+ ];
6900
+ exports.InlineStringEditorComponent.ctorParameters = function () { return [
6901
+ { type: exports.InteractionService }
6902
+ ]; };
6903
+ exports.InlineStringEditorComponent.propDecorators = {
6904
+ editorModel: [{ type: i0.Input }],
6905
+ facesModel: [{ type: i0.Input }],
6906
+ faces: [{ type: i0.Input }],
6907
+ interactionContext: [{ type: i0.ViewChild, args: [InPlaceInteractionContextComponent,] }],
6908
+ label: [{ type: i0.Input }],
6909
+ placeHolder: [{ type: i0.Input }],
6910
+ placeHolderModel: [{ type: i0.Input }]
6911
+ };
6912
+ __decorate([
6913
+ pectin.TrackExternal(),
6914
+ __metadata("design:type", exports.InlineEditorModel)
6915
+ ], exports.InlineStringEditorComponent.prototype, "editorModel", void 0);
6916
+ __decorate([
6917
+ pectin.TrackExternal(),
6918
+ __metadata("design:type", pectin.ValueModel)
6919
+ ], exports.InlineStringEditorComponent.prototype, "facesModel", void 0);
6920
+ __decorate([
6921
+ pectin.StoreInValueModel('facesModel'),
6922
+ __metadata("design:type", Object)
6923
+ ], exports.InlineStringEditorComponent.prototype, "faces", void 0);
6924
+ __decorate([
6925
+ pectin.StoreInValueModel('placeHolderModel'),
6926
+ __metadata("design:type", String)
6927
+ ], exports.InlineStringEditorComponent.prototype, "placeHolder", void 0);
6928
+ __decorate([
6929
+ pectin.TrackExternal(),
6930
+ __metadata("design:type", pectin.ValueModel)
6931
+ ], exports.InlineStringEditorComponent.prototype, "placeHolderModel", void 0);
6932
+ (function (InlineStringEditorComponent) {
6933
+ InlineStringEditorComponent.DEFAULT_FACES = {
6934
+ edit: {
6935
+ icon: function () { return 'mat:edit'; }
6936
+ },
6937
+ save: {
6938
+ icon: function () { return 'mat:check'; }
6939
+ },
6940
+ cancel: {
6941
+ icon: function () { return 'mat:clear'; }
6942
+ }
6943
+ };
6944
+ })(exports.InlineStringEditorComponent || (exports.InlineStringEditorComponent = {}));
6945
+
6579
6946
  var InteractionModule = /** @class */ (function () {
6580
6947
  function InteractionModule() {
6581
6948
  }
@@ -6604,21 +6971,22 @@
6604
6971
  ActivityOutletComponent,
6605
6972
  InPlaceInteractionContextComponent,
6606
6973
  AddItemInteractionContextComponent,
6607
- ActivityActionsComponent,
6974
+ exports.ActivityActionsComponent,
6608
6975
  PopupInteractionContextComponent,
6609
6976
  StringInputActivity,
6610
6977
  SelectInputActivity,
6611
- AbstractInputActivity,
6978
+ exports.InputActivity,
6612
6979
  InteractionContextTriggerFor,
6613
6980
  Activity,
6614
6981
  ActivityTitleComponent,
6615
6982
  ActivityBodyComponent,
6616
- ActivityActionsComponent,
6983
+ exports.ActivityActionsComponent,
6617
6984
  AbstractActivityTriggerComponent,
6618
6985
  PopupActivityTriggerComponent,
6619
6986
  InlineActivityTriggerComponent,
6620
6987
  ModalActivityTriggerComponent,
6621
- AddCardActivityComponent,
6988
+ exports.AddCardActivityComponent,
6989
+ exports.InlineStringEditorComponent,
6622
6990
  ],
6623
6991
  exports: [
6624
6992
  ActivityContainerComponent,
@@ -6626,7 +6994,7 @@
6626
6994
  ActivityTitleComponent,
6627
6995
  InPlaceInteractionContextComponent,
6628
6996
  AddItemInteractionContextComponent,
6629
- ActivityActionsComponent,
6997
+ exports.ActivityActionsComponent,
6630
6998
  PopupInteractionContextComponent,
6631
6999
  InteractionContextTriggerFor,
6632
7000
  StringInputActivity,
@@ -6635,7 +7003,8 @@
6635
7003
  PopupActivityTriggerComponent,
6636
7004
  InlineActivityTriggerComponent,
6637
7005
  ModalActivityTriggerComponent,
6638
- AddCardActivityComponent,
7006
+ exports.AddCardActivityComponent,
7007
+ exports.InlineStringEditorComponent,
6639
7008
  ],
6640
7009
  entryComponents: [
6641
7010
  ActivityContainerComponent,
@@ -8740,6 +9109,7 @@
8740
9109
  * to be able to capture the back button on the first page. If we don't then the back click will exit
8741
9110
  * the app directly and we don't get to ask.
8742
9111
  */
9112
+ // @Trace()
8743
9113
  PlaceRouter.prototype.syncInteractionContextIdsWithRouter = function () {
8744
9114
  var _this = this;
8745
9115
  if (this.navigationSession) {
@@ -8783,12 +9153,6 @@
8783
9153
  { type: UrlService },
8784
9154
  { type: exports.PlaceHistory }
8785
9155
  ]; };
8786
- __decorate([
8787
- pectin.Trace(),
8788
- __metadata("design:type", Function),
8789
- __metadata("design:paramtypes", []),
8790
- __metadata("design:returntype", Promise)
8791
- ], exports.PlaceRouter.prototype, "syncInteractionContextIdsWithRouter", null);
8792
9156
  (function (PlaceRouter) {
8793
9157
  var State = /** @class */ (function () {
8794
9158
  function State(activeVisits) {
@@ -9922,7 +10286,7 @@
9922
10286
  exports.AUP_PLACE_CONFIG = AUP_PLACE_CONFIG;
9923
10287
  exports.AUP_UNAUTHORISED_PLACE_NOTICE_COMPONENT = AUP_UNAUTHORISED_PLACE_NOTICE_COMPONENT;
9924
10288
  exports.AbstractActivityTriggerComponent = AbstractActivityTriggerComponent;
9925
- exports.AbstractInputActivity = AbstractInputActivity;
10289
+ exports.AbstractCardContainerComponent = AbstractCardContainerComponent;
9926
10290
  exports.AbstractInputComponent = AbstractInputComponent;
9927
10291
  exports.AbstractInteractionContext = AbstractInteractionContext;
9928
10292
  exports.AbstractListInputComponent = AbstractListInputComponent;
@@ -9933,13 +10297,11 @@
9933
10297
  exports.AbstractTableModel = AbstractTableModel;
9934
10298
  exports.AbstractValueInputComponent = AbstractValueInputComponent;
9935
10299
  exports.Activity = Activity;
9936
- exports.ActivityActionsComponent = ActivityActionsComponent;
9937
10300
  exports.ActivityBodyComponent = ActivityBodyComponent;
9938
10301
  exports.ActivityContainerComponent = ActivityContainerComponent;
9939
10302
  exports.ActivityOutletComponent = ActivityOutletComponent;
9940
10303
  exports.ActivityRef = ActivityRef;
9941
10304
  exports.ActivityTitleComponent = ActivityTitleComponent;
9942
- exports.AddCardActivityComponent = AddCardActivityComponent;
9943
10305
  exports.AddItemInteractionContextComponent = AddItemInteractionContextComponent;
9944
10306
  exports.AlertDialogComponent = AlertDialogComponent;
9945
10307
  exports.AngularUiPowerupsModule = AngularUiPowerupsModule;
@@ -9948,6 +10310,7 @@
9948
10310
  exports.CELL_EDITOR_PORTAL = CELL_EDITOR_PORTAL;
9949
10311
  exports.CELL_RENDERER_PORTAL = CELL_RENDERER_PORTAL;
9950
10312
  exports.CardContainerComponent = CardContainerComponent;
10313
+ exports.CardStackComponent = CardStackComponent;
9951
10314
  exports.CellEditorPortalRef = CellEditorPortalRef;
9952
10315
  exports.CellHeaderPortalRef = CellHeaderPortalRef;
9953
10316
  exports.CellPortalRef = CellPortalRef;
@@ -9997,6 +10360,7 @@
9997
10360
  exports.InteractionModule = InteractionModule;
9998
10361
  exports.InteractionServiceRoutingAdapter = InteractionServiceRoutingAdapter;
9999
10362
  exports.LEFT_RIGHT_PLACE_ANIMATION = LEFT_RIGHT_PLACE_ANIMATION;
10363
+ exports.LabelledValueComponent = LabelledValueComponent;
10000
10364
  exports.ListPlaceNavComponent = ListPlaceNavComponent;
10001
10365
  exports.ListPropertyColumnModel = ListPropertyColumnModel;
10002
10366
  exports.ModalActivityTriggerComponent = ModalActivityTriggerComponent;