@seniorsistemas/angular-components 17.19.3 → 17.21.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 (55) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +159 -60
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/accordion/components/accordion-panel/accordion-panel.component.d.ts +2 -0
  6. package/components/dynamic-form/components/fields/button-field/button-field.component.d.ts +5 -0
  7. package/components/dynamic-form/components/grid/row/row.component.d.ts +2 -5
  8. package/components/dynamic-form/components/structure/section/section.component.d.ts +1 -0
  9. package/components/dynamic-form/configurations/field-type.d.ts +2 -1
  10. package/components/dynamic-form/configurations/fields/button-field.d.ts +33 -0
  11. package/components/dynamic-form/configurations/fields/index.d.ts +1 -0
  12. package/components/dynamic-form/configurations/grid/grid.d.ts +2 -1
  13. package/components/dynamic-form/configurations/structure/section.d.ts +18 -2
  14. package/components/dynamic-form/configurations/structure/structure.d.ts +5 -3
  15. package/components/dynamic-form/dynamic-form.d.ts +6 -5
  16. package/components/dynamic-form/index.d.ts +5 -0
  17. package/esm2015/components/accordion/components/accordion-panel/accordion-panel.component.js +11 -3
  18. package/esm2015/components/dynamic-form/components/fields/button-field/button-field.component.js +21 -0
  19. package/esm2015/components/dynamic-form/components/grid/row/row.component.js +2 -2
  20. package/esm2015/components/dynamic-form/components/structure/section/section.component.js +24 -5
  21. package/esm2015/components/dynamic-form/configurations/field-type.js +2 -1
  22. package/esm2015/components/dynamic-form/configurations/fields/button-field.js +28 -0
  23. package/esm2015/components/dynamic-form/configurations/fields/index.js +2 -1
  24. package/esm2015/components/dynamic-form/configurations/form-field.js +4 -1
  25. package/esm2015/components/dynamic-form/configurations/grid/grid.js +1 -1
  26. package/esm2015/components/dynamic-form/configurations/structure/section.js +23 -1
  27. package/esm2015/components/dynamic-form/configurations/structure/structure.js +2 -1
  28. package/esm2015/components/dynamic-form/dynamic-form.directive.js +1 -1
  29. package/esm2015/components/dynamic-form/dynamic-form.js +4 -1
  30. package/esm2015/components/dynamic-form/dynamic-form.module.js +3 -1
  31. package/esm2015/components/dynamic-form/index.js +6 -1
  32. package/esm2015/seniorsistemas-angular-components.js +41 -40
  33. package/esm5/components/accordion/components/accordion-panel/accordion-panel.component.js +11 -3
  34. package/esm5/components/dynamic-form/components/fields/button-field/button-field.component.js +24 -0
  35. package/esm5/components/dynamic-form/components/grid/row/row.component.js +2 -2
  36. package/esm5/components/dynamic-form/components/structure/section/section.component.js +11 -2
  37. package/esm5/components/dynamic-form/configurations/field-type.js +2 -1
  38. package/esm5/components/dynamic-form/configurations/fields/button-field.js +33 -0
  39. package/esm5/components/dynamic-form/configurations/fields/index.js +2 -1
  40. package/esm5/components/dynamic-form/configurations/form-field.js +4 -1
  41. package/esm5/components/dynamic-form/configurations/grid/grid.js +1 -1
  42. package/esm5/components/dynamic-form/configurations/structure/section.js +25 -2
  43. package/esm5/components/dynamic-form/configurations/structure/structure.js +2 -1
  44. package/esm5/components/dynamic-form/dynamic-form.directive.js +1 -1
  45. package/esm5/components/dynamic-form/dynamic-form.js +4 -1
  46. package/esm5/components/dynamic-form/dynamic-form.module.js +3 -1
  47. package/esm5/components/dynamic-form/index.js +6 -1
  48. package/esm5/seniorsistemas-angular-components.js +41 -40
  49. package/fesm2015/seniorsistemas-angular-components.js +117 -19
  50. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  51. package/fesm5/seniorsistemas-angular-components.js +112 -17
  52. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  53. package/package.json +1 -1
  54. package/seniorsistemas-angular-components.d.ts +40 -39
  55. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -209,6 +209,8 @@
209
209
  function AccordionPanelComponent() {
210
210
  this.disabled = false;
211
211
  this.cache = false;
212
+ this.validationMessageIcon = 'fas fa-exclamation-circle';
213
+ this.validationMessageIconColor = 'Red';
212
214
  this.panelOpened = new core.EventEmitter();
213
215
  this.panelClosed = new core.EventEmitter();
214
216
  this.isAnimating = false;
@@ -290,6 +292,12 @@
290
292
  __decorate([
291
293
  core.Input()
292
294
  ], AccordionPanelComponent.prototype, "cache", void 0);
295
+ __decorate([
296
+ core.Input()
297
+ ], AccordionPanelComponent.prototype, "validationMessageIcon", void 0);
298
+ __decorate([
299
+ core.Input()
300
+ ], AccordionPanelComponent.prototype, "validationMessageIconColor", void 0);
293
301
  __decorate([
294
302
  core.Output()
295
303
  ], AccordionPanelComponent.prototype, "panelOpened", void 0);
@@ -299,7 +307,7 @@
299
307
  AccordionPanelComponent = __decorate([
300
308
  core.Component({
301
309
  selector: "s-accordion-panel",
302
- template: "<div\n class=\"accordion-panel\"\n [ngClass]=\"{\n 'accordion-panel--open': isOpen,\n 'accordion-panel--disabled': disabled\n }\">\n <div class=\"header\" (click)=\"onTabClick()\">\n <div class=\"header__title\">\n <span class=\"icon\" [ngClass]=\"isOpen ? 'fas fa-minus' : 'fas fa-plus'\"></span>\n <span\n *ngIf=\"validationMessage\"\n class=\"exclamation-icon fas fa-exclamation-circle\"\n [sTooltip]=\"validationMessage\">\n </span>\n <span class=\"title\">{{ header }}</span>\n </div>\n <div class=\"header__controls\">\n <button\n *ngFor=\"let button of buttons\"\n class=\"icon-button\"\n [ngClass]=\"button.icon\"\n (click)=\"onIconButtonsClick($event, button.onClick)\">\n </button>\n <s-switch\n *ngIf=\"switchControl\"\n class=\"switch\"\n [formControl]=\"switchControl\"\n (click)=\"$event.stopPropagation()\">\n </s-switch>\n <s-switch\n *ngIf=\"!switchControl && switch\"\n class=\"switch\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"switch.state\"\n (click)=\"$event.stopPropagation()\"\n (valueChanged)=\"switch.onChange($event)\">\n </s-switch>\n </div>\n </div>\n <ng-container *ngIf=\"cache; then cacheTemplate else cachelessTemplate\"></ng-container>\n</div>\n\n<ng-template #cacheTemplate>\n <div\n class=\"content\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\">\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #cachelessTemplate>\n <div\n *ngIf=\"isOpen\"\n class=\"content\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\">\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #panelContent>\n <ng-content></ng-content>\n</ng-template>",
310
+ template: "<div\n class=\"accordion-panel\"\n [ngClass]=\"{\n 'accordion-panel--open': isOpen,\n 'accordion-panel--disabled': disabled\n }\">\n <div class=\"header\" (click)=\"onTabClick()\">\n <div class=\"header__title\">\n <span class=\"icon\" [ngClass]=\"isOpen ? 'fas fa-minus' : 'fas fa-plus'\"></span>\n <span\n *ngIf=\"validationMessage\"\n class=\"exclamation-icon\"\n [class]=\"validationMessageIcon\"\n [class.exclamation-icon-red]=\"validationMessageIconColor === 'Red'\"\n [class.exclamation-icon-orange]=\"validationMessageIconColor === 'Orange'\"\n [class.exclamation-icon-yellow]=\"validationMessageIconColor === 'Yellow'\"\n [class.exclamation-icon-green]=\"validationMessageIconColor === 'Green'\"\n [class.exclamation-icon-blue]=\"validationMessageIconColor === 'Blue'\"\n [sTooltip]=\"validationMessage\">\n </span>\n <span class=\"title\">{{ header }}</span>\n </div>\n <div class=\"header__controls\">\n <button\n *ngFor=\"let button of buttons\"\n class=\"icon-button\"\n [ngClass]=\"button.icon\"\n (click)=\"onIconButtonsClick($event, button.onClick)\">\n </button>\n <s-switch\n *ngIf=\"switchControl\"\n class=\"switch\"\n [formControl]=\"switchControl\"\n (click)=\"$event.stopPropagation()\">\n </s-switch>\n <s-switch\n *ngIf=\"!switchControl && switch\"\n class=\"switch\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"switch.state\"\n (click)=\"$event.stopPropagation()\"\n (valueChanged)=\"switch.onChange($event)\">\n </s-switch>\n </div>\n </div>\n <ng-container *ngIf=\"cache; then cacheTemplate else cachelessTemplate\"></ng-container>\n</div>\n\n<ng-template #cacheTemplate>\n <div\n class=\"content\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\">\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #cachelessTemplate>\n <div\n *ngIf=\"isOpen\"\n class=\"content\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\">\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #panelContent>\n <ng-content></ng-content>\n</ng-template>\n",
303
311
  animations: [
304
312
  animations.trigger("cachelessAnimation", [
305
313
  animations.transition(":enter", [animations.style({ height: "0" }), animations.animate("200ms linear", animations.style({ height: "*" }))]),
@@ -311,7 +319,7 @@
311
319
  animations.transition("* => *", animations.animate("200ms")),
312
320
  ]),
313
321
  ],
314
- styles: [".accordion-panel{border-bottom:1px solid #c1c1cc}.accordion-panel .header{-ms-flex-align:center;align-items:center;background-color:#fff;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:16px;-webkit-user-select:none;-ms-user-select:none;user-select:none}.accordion-panel .header .header__title{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.accordion-panel .header .header__title .icon{color:#212533;font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .exclamation-icon{color:#c13018;font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .title{font-family:\"Open Sans\" sans-serif;font-size:.875rem;font-weight:700;line-height:150%;text-transform:uppercase}.accordion-panel .header .header__controls{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;margin-left:16px}.accordion-panel .header .header__controls .icon-button{color:#212533;cursor:pointer;font-size:1rem;margin-left:12px;padding:4px;border:none;background:0 0}.accordion-panel .header .header__controls .switch{padding-left:16px}.accordion-panel .content{background-color:#fff;overflow:hidden}.accordion-panel .content .content-container{margin:20px}.accordion-panel--open .header{background-color:#eeebf2;border-bottom:1px solid #c1c1cc}.accordion-panel--disabled .header{cursor:auto}.accordion-panel--disabled .header .header__title .icon,.accordion-panel--disabled .header .header__title .title{color:#c1c1cc}.accordion-panel--disabled .header .header__controls .icon-button{color:#c1c1cc;cursor:auto}"]
322
+ styles: [".accordion-panel{border-bottom:1px solid #c1c1cc}.accordion-panel .header{-ms-flex-align:center;align-items:center;background-color:#fff;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:16px;-webkit-user-select:none;-ms-user-select:none;user-select:none}.accordion-panel .header .header__title{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.accordion-panel .header .header__title .icon{color:#212533;font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .exclamation-icon{font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .exclamation-icon-red{color:#c13018}.accordion-panel .header .header__title .exclamation-icon-orange{color:#f8931f}.accordion-panel .header .header__title .exclamation-icon-yellow{color:#fcbf10}.accordion-panel .header .header__title .exclamation-icon-green{color:#0c9348}.accordion-panel .header .header__title .exclamation-icon-blue{color:#428bca}.accordion-panel .header .header__title .title{font-family:\"Open Sans\" sans-serif;font-size:.875rem;font-weight:700;line-height:150%;text-transform:uppercase}.accordion-panel .header .header__controls{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;margin-left:16px}.accordion-panel .header .header__controls .icon-button{color:#212533;cursor:pointer;font-size:1rem;margin-left:12px;padding:4px;border:none;background:0 0}.accordion-panel .header .header__controls .switch{padding-left:16px}.accordion-panel .content{background-color:#fff;overflow:hidden}.accordion-panel .content .content-container{margin:20px}.accordion-panel--open .header{background-color:#eeebf2;border-bottom:1px solid #c1c1cc}.accordion-panel--disabled .header{cursor:auto}.accordion-panel--disabled .header .header__title .icon,.accordion-panel--disabled .header .header__title .title{color:#c1c1cc}.accordion-panel--disabled .header .header__controls .icon-button{color:#c1c1cc;cursor:auto}.accordion-panel--disabled .exclamation-icon{opacity:.5}"]
315
323
  })
316
324
  ], AccordionPanelComponent);
317
325
  return AccordionPanelComponent;
@@ -6415,6 +6423,7 @@
6415
6423
  FieldType["TextIA"] = "TextIA";
6416
6424
  FieldType["Time"] = "Time";
6417
6425
  FieldType["ProfilePicture"] = "ProfilePicture";
6426
+ FieldType["Button"] = "Button";
6418
6427
  })(exports.FieldType || (exports.FieldType = {}));
6419
6428
 
6420
6429
  var FieldSize = /** @class */ (function () {
@@ -7046,6 +7055,34 @@
7046
7055
  return TextField;
7047
7056
  }(Field));
7048
7057
 
7058
+ var ButtonField = /** @class */ (function (_super) {
7059
+ __extends(ButtonField, _super);
7060
+ function ButtonField(config) {
7061
+ var _this = _super.call(this, config) || this;
7062
+ _this.tooltipPosition = "top";
7063
+ _this.priority = config.priority || exports.ButtonPriority.Primary;
7064
+ _this.iconClass = config.iconClass || "";
7065
+ _this.disabled = config.disabled || false;
7066
+ _this.auxiliary = config.auxiliary || false;
7067
+ _this.caret = config.caret || false;
7068
+ _this.id = config.id || "s-button-" + ButtonComponent.nextId++;
7069
+ _this.onClick = config.onClick || (function () { });
7070
+ _this.fullWidth = config.fullWidth || false;
7071
+ _this.iconColor = config.iconColor;
7072
+ _this.badge = config.badge;
7073
+ _this.animation = config.animation;
7074
+ _this.slide = config.slide;
7075
+ _this.menuOptions = config.menuOptions;
7076
+ _this.model = config.model;
7077
+ _this.baseZIndex = config.baseZIndex;
7078
+ _this.styleClass = config.styleClass;
7079
+ _this.rightIconClass = config.rightIconClass;
7080
+ _this.tooltipPosition = config.tooltipPosition;
7081
+ return _this;
7082
+ }
7083
+ return ButtonField;
7084
+ }(Field));
7085
+
7049
7086
  var EditorField = /** @class */ (function (_super) {
7050
7087
  __extends(EditorField, _super);
7051
7088
  function EditorField(config) {
@@ -7135,6 +7172,8 @@
7135
7172
  return new ProfilePictureField(config);
7136
7173
  case exports.FieldType.Editor:
7137
7174
  return new EditorField(config);
7175
+ case exports.FieldType.Button:
7176
+ return new ButtonField(config);
7138
7177
  case exports.FieldType.Custom:
7139
7178
  var CustomFieldClass = config.CustomFieldClass, otherConfigs = __rest(config, ["CustomFieldClass"]);
7140
7179
  return new CustomFieldClass(otherConfigs);
@@ -7767,6 +7806,7 @@
7767
7806
 
7768
7807
  var Structure = /** @class */ (function () {
7769
7808
  function Structure(config) {
7809
+ this.isFlex = false;
7770
7810
  Object.assign(this, __assign({}, config));
7771
7811
  }
7772
7812
  return Structure;
@@ -7785,7 +7825,29 @@
7785
7825
  var Section = /** @class */ (function (_super) {
7786
7826
  __extends(Section, _super);
7787
7827
  function Section(config) {
7788
- return _super.call(this, config) || this;
7828
+ var _this = _super.call(this, config) || this;
7829
+ /**
7830
+ * Define if the structure is a flex container.
7831
+ */
7832
+ _this.isFlex = false;
7833
+ /**
7834
+ * Define the justify-content property.
7835
+ */
7836
+ _this.justifyContent = 'flex-start';
7837
+ /**
7838
+ * Define the align-items property.
7839
+ */
7840
+ _this.alignItems = 'flex-start';
7841
+ _this.visible = function () { return true; };
7842
+ _this.isFlex = config.isFlex || false;
7843
+ _this.justifyContent = config.justifyContent || 'flex-start';
7844
+ _this.alignItems = config.alignItems || 'flex-start';
7845
+ if (config.visible) {
7846
+ _this.visible = config.visible;
7847
+ }
7848
+ _this.size = new FieldSize(config.size || {});
7849
+ _this.gridClass = Object.keys(_this.size).map(function (key) { return "ui-" + key + "-" + _this.size[key]; });
7850
+ return _this;
7789
7851
  }
7790
7852
  return Section;
7791
7853
  }(Structure));
@@ -7842,6 +7904,17 @@
7842
7904
  return DynamicConfig;
7843
7905
  }());
7844
7906
 
7907
+
7908
+ (function (GridType) {
7909
+ GridType["Row"] = "Row";
7910
+ })(exports.GridType || (exports.GridType = {}));
7911
+
7912
+
7913
+ (function (StructureType) {
7914
+ StructureType["Fieldset"] = "Fieldset";
7915
+ StructureType["Section"] = "Section";
7916
+ })(exports.StructureType || (exports.StructureType = {}));
7917
+
7845
7918
  var DynamicFormComponent = /** @class */ (function () {
7846
7919
  function DynamicFormComponent() {
7847
7920
  this.errorMessages = {};
@@ -11278,6 +11351,13 @@
11278
11351
  var SectionComponent = /** @class */ (function () {
11279
11352
  function SectionComponent() {
11280
11353
  }
11354
+ Object.defineProperty(SectionComponent.prototype, "flexContainer", {
11355
+ get: function () {
11356
+ return this.config.isFlex;
11357
+ },
11358
+ enumerable: true,
11359
+ configurable: true
11360
+ });
11281
11361
  __decorate([
11282
11362
  core.Input()
11283
11363
  ], SectionComponent.prototype, "id", void 0);
@@ -11292,7 +11372,9 @@
11292
11372
  ], SectionComponent.prototype, "errorMessages", void 0);
11293
11373
  SectionComponent = __decorate([
11294
11374
  core.Component({
11295
- template: "\n <h3 *ngIf=\"config?.header\" class=\"sds-section-title\">{{config.header}}</h3>\n <ng-container *ngFor=\"let conf of config.configs\">\n <ng-container *sDynamicForm=\"{ id: id, config: conf, group: group, errorMessages: errorMessages }\"></ng-container>\n </ng-container>\n "
11375
+ selector: 's-section',
11376
+ template: "\n <h3 *ngIf=\"config?.header\" class=\"sds-section-title\">{{config.header}}</h3>\n <section [class.flex-container]=\"flexContainer\" [style.justify-content]=\"config.justifyContent\" [style.align-items]=\"config.alignItems\">\n <ng-container *ngFor=\"let conf of config.configs\">\n <ng-container *sDynamicForm=\"{ id: id, config: conf, group: group, errorMessages: errorMessages }\"></ng-container>\n </ng-container>\n </section>\n ",
11377
+ styles: ["\n .flex-container {\n display: flex\n }\n\n :host {\n height: 100%\n }\n\n section {\n height: 100%;\n }\n "]
11296
11378
  })
11297
11379
  ], SectionComponent);
11298
11380
  return SectionComponent;
@@ -11302,7 +11384,6 @@
11302
11384
  function RowComponent() {
11303
11385
  this.FieldType = exports.FieldType;
11304
11386
  }
11305
- RowComponent.prototype.ngOnInit = function () { };
11306
11387
  RowComponent.prototype.getErrorMessages = function (errorMessages) {
11307
11388
  if (errorMessages)
11308
11389
  return this.isFunction(errorMessages) ? errorMessages() : errorMessages;
@@ -11325,6 +11406,7 @@
11325
11406
  ], RowComponent.prototype, "errorMessages", void 0);
11326
11407
  RowComponent = __decorate([
11327
11408
  core.Component({
11409
+ selector: 's-row',
11328
11410
  template: "\n <div class=\"ui-fluid\" [formGroup]=\"group\">\n <div class=\"ui-g\">\n <ng-container *ngFor=\"let field of config.fields\">\n <div [ngClass]=\"field.gridClass\" *ngIf=\"field.visible()\">\n <ng-container *ngIf=\"field.type === FieldType.Custom && field.label\" >\n <label *sInfoSign=\"field.infoSign; displayTime: field.displayTimeInfoSign; useFocusedInputRef: field.useInfoSignFocusedInputRef\" [for]=\"field.name\" [ngClass]=\"{ required: field.required() }\" >\n {{ field.label }}\n </label>\n </ng-container>\n\n <ng-container *sDynamicForm=\"{ id: id, config: field, group: group}\"></ng-container>\n\n <s-control-errors [form]=\"group\" [control]=\"group.controls[field.name]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"></s-control-errors>\n\n <ng-container *ngIf=\"field.footer\">\n <ng-container *ngIf=\"field.footer.help\">\n <span *ngIf=\"field.footer.help.visible({ abstractControl: group.controls[field.name], formField: field })\" style=\"color: #888B99\">{{ field.footer.help.text }}</span>\n </ng-container>\n\n <ng-container *ngIf=\"field.footer.link\">\n <div\n *ngIf=\"field.footer.link.visible({ abstractControl: group.controls[field.name], formField: field })\"\n class=\"ui-g\"\n style=\"margin-left: -17px\"\n >\n <s-button\n [label]=\"field.footer.link.label\"\n priority=\"link\"\n (onClick)=\"field.footer.link.onClick({ abstractControl: group.controls[field.name], formField: field })\"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template *ngIf=\"field?.bottomTemplate\" [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n </div>\n </ng-container>\n </div>\n "
11329
11411
  })
11330
11412
  ], RowComponent);
@@ -11365,17 +11447,6 @@
11365
11447
  return DynamicFieldComponent;
11366
11448
  }());
11367
11449
 
11368
- var GridType;
11369
- (function (GridType) {
11370
- GridType["Row"] = "Row";
11371
- })(GridType || (GridType = {}));
11372
-
11373
- var StructureType;
11374
- (function (StructureType) {
11375
- StructureType["Fieldset"] = "Fieldset";
11376
- StructureType["Section"] = "Section";
11377
- })(StructureType || (StructureType = {}));
11378
-
11379
11450
  var BignumberFieldComponent = /** @class */ (function (_super) {
11380
11451
  __extends(BignumberFieldComponent, _super);
11381
11452
  function BignumberFieldComponent(localeService, changeDetectorRef) {
@@ -11861,6 +11932,27 @@
11861
11932
  return ProfilePictureFieldComponent;
11862
11933
  }());
11863
11934
 
11935
+ var ButtonFieldComponent = /** @class */ (function () {
11936
+ function ButtonFieldComponent() {
11937
+ }
11938
+ ButtonFieldComponent.prototype.clickedButton = function ($event) {
11939
+ if (this.field.onClick) {
11940
+ this.field.onClick($event);
11941
+ }
11942
+ };
11943
+ __decorate([
11944
+ core.Input()
11945
+ ], ButtonFieldComponent.prototype, "field", void 0);
11946
+ ButtonFieldComponent = __decorate([
11947
+ core.Component({
11948
+ selector: 's-button-field',
11949
+ template: "<section [class.full-width]=\"field.fullWidth\" [class.fit-content]=\"!field.fullWidth\">\n <s-button\n [label]=\"field.label\"\n [priority]=\"field.priority\"\n [iconClass]=\"field.iconClass\"\n [disabled]=\"field.disabled\"\n [auxiliary]=\"field.auxiliary\"\n [caret]=\"field.caret\"\n [id]=\"field.id\"\n [tooltip]=\"field.tooltip\"\n (onClick)=\"clickedButton($event)\"\n [iconColor]=\"field.iconColor\"\n [badge]=\"field.badge\"\n [animation]=\"field.animation\"\n [slide]=\"field.slide\"\n [menuOptions]=\"field.menuOptions\"\n [model]=\"field.model\"\n [baseZIndex]=\"field.baseZIndex\"\n [styleClass]=\"field.styleClass\"\n [rightIconClass]=\"field.rightIconClass\"\n [tooltipPosition]=\"field.tooltipPosition\"\n [type]=\"field.buttonType\"\n [size]=\"field.buttonSize\">\n </s-button>\n</section>\n",
11950
+ styles: ["section{height:100%;display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end}section.full-width{width:100%}section.fit-content{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}"]
11951
+ })
11952
+ ], ButtonFieldComponent);
11953
+ return ButtonFieldComponent;
11954
+ }());
11955
+
11864
11956
  var DynamicForm = /** @class */ (function () {
11865
11957
  function DynamicForm(_a) {
11866
11958
  var group = _a.group, errorMessages = _a.errorMessages;
@@ -11968,6 +12060,8 @@
11968
12060
  return ProfilePictureFieldComponent;
11969
12061
  case exports.FieldType.Editor:
11970
12062
  return EditorFieldComponent;
12063
+ case exports.FieldType.Button:
12064
+ return ButtonFieldComponent;
11971
12065
  case exports.FieldType.Custom:
11972
12066
  return this.field.CustomFieldComponentClass;
11973
12067
  default:
@@ -12000,9 +12094,9 @@
12000
12094
  };
12001
12095
  DynamicStructure.prototype.getComponent = function () {
12002
12096
  switch (this.config.type) {
12003
- case StructureType.Fieldset:
12097
+ case exports.StructureType.Fieldset:
12004
12098
  return FieldsetComponent;
12005
- case StructureType.Section:
12099
+ case exports.StructureType.Section:
12006
12100
  return SectionComponent;
12007
12101
  default:
12008
12102
  throw new Error("Trying to use an unsupported type (" + this.config.type + ").");
@@ -12032,7 +12126,7 @@
12032
12126
  };
12033
12127
  DynamicGrid.prototype.getComponent = function () {
12034
12128
  switch (this.config.type) {
12035
- case GridType.Row:
12129
+ case exports.GridType.Row:
12036
12130
  return RowComponent;
12037
12131
  default:
12038
12132
  throw new Error("Trying to use an unsupported type (" + this.config.type + ").");
@@ -12101,10 +12195,10 @@
12101
12195
  return exports.FieldType[this.config.type];
12102
12196
  };
12103
12197
  DynamicFormDirective.prototype.isStructure = function () {
12104
- return StructureType[this.config.type];
12198
+ return exports.StructureType[this.config.type];
12105
12199
  };
12106
12200
  DynamicFormDirective.prototype.isGrid = function () {
12107
- return GridType[this.config.type];
12201
+ return exports.GridType[this.config.type];
12108
12202
  };
12109
12203
  DynamicFormDirective.ctorParameters = function () { return [
12110
12204
  { type: core.ComponentFactoryResolver },
@@ -13139,6 +13233,7 @@
13139
13233
  SliderFieldComponent,
13140
13234
  TextAreaFieldComponent,
13141
13235
  TextAreaIAFieldComponent,
13236
+ ButtonFieldComponent
13142
13237
  ],
13143
13238
  exports: [DynamicFormComponent, LookupComponent],
13144
13239
  entryComponents: [
@@ -21770,6 +21865,7 @@
21770
21865
  exports.BreadcrumbModule = BreadcrumbModule;
21771
21866
  exports.Breakpoints = Breakpoints;
21772
21867
  exports.ButtonComponent = ButtonComponent;
21868
+ exports.ButtonField = ButtonField;
21773
21869
  exports.ButtonModule = ButtonModule;
21774
21870
  exports.CalendarField = CalendarField;
21775
21871
  exports.CalendarLocaleOptions = CalendarLocaleOptions;
@@ -21820,6 +21916,7 @@
21820
21916
  exports.GlobalSearchComponent = GlobalSearchComponent;
21821
21917
  exports.GlobalSearchDropdownItemComponent = GlobalSearchDropdownItemComponent;
21822
21918
  exports.GlobalSearchModule = GlobalSearchModule;
21919
+ exports.Grid = Grid;
21823
21920
  exports.HostProjectConfigsInjectionToken = HostProjectConfigsInjectionToken;
21824
21921
  exports.IAInsightComponent = IAInsightComponent;
21825
21922
  exports.IAInsightModule = IAInsightModule;
@@ -21893,6 +21990,7 @@
21893
21990
  exports.RatingScaleComponent = RatingScaleComponent;
21894
21991
  exports.RatingScaleModule = RatingScaleModule;
21895
21992
  exports.RationButtonOption = RationButtonOption;
21993
+ exports.Row = Row;
21896
21994
  exports.RowTogllerDirective = RowTogllerDirective;
21897
21995
  exports.SVGFactoryDirective = SVGFactoryDirective;
21898
21996
  exports.SVGFactoryModule = SVGFactoryModule;
@@ -21999,47 +22097,48 @@
21999
22097
  exports.ɵco = TextAreaFieldComponent;
22000
22098
  exports.ɵcp = TextAreaIAFieldComponent;
22001
22099
  exports.ɵcq = IAssistService;
22002
- exports.ɵcs = DecimalField;
22003
- exports.ɵct = SideTableComponent;
22004
- exports.ɵcu = InfiniteScrollModule;
22005
- exports.ɵcv = InfiniteScrollDirective;
22006
- exports.ɵcw = IAInsightSidebarComponent;
22007
- exports.ɵcx = IAInsightCardComponent;
22008
- exports.ɵcy = IAInsightCardLoaderComponent;
22009
- exports.ɵcz = InlineEditItemComponent;
22100
+ exports.ɵcr = ButtonFieldComponent;
22101
+ exports.ɵct = DecimalField;
22102
+ exports.ɵcu = SideTableComponent;
22103
+ exports.ɵcv = InfiniteScrollModule;
22104
+ exports.ɵcw = InfiniteScrollDirective;
22105
+ exports.ɵcx = IAInsightSidebarComponent;
22106
+ exports.ɵcy = IAInsightCardComponent;
22107
+ exports.ɵcz = IAInsightCardLoaderComponent;
22010
22108
  exports.ɵd = TieredMenuService;
22011
- exports.ɵda = InlineEditCalendarComponent;
22012
- exports.ɵdb = InlineEditLookupComponent;
22013
- exports.ɵdc = InlineEditNumberComponent;
22014
- exports.ɵdd = InlineEditTextComponent;
22015
- exports.ɵde = InlineEditTextAreaComponent;
22016
- exports.ɵdf = InlineEditTextAreaIAComponent;
22017
- exports.ɵdg = KanbanEventService;
22018
- exports.ɵdh = KanbanItemComponent;
22019
- exports.ɵdi = KanbanColumnComponent;
22020
- exports.ɵdj = KanbanItemDraggingComponent;
22021
- exports.ɵdk = NumberLocaleOptions;
22022
- exports.ɵdl = BorderButtonModule;
22023
- exports.ɵdm = BorderButtonComponent;
22024
- exports.ɵdn = ProgressBarDeterminateComponent;
22025
- exports.ɵdo = ProgressBarIndeterminateComponent;
22026
- exports.ɵdp = SelectButtonItemComponent;
22027
- exports.ɵdq = SlidePanelService;
22028
- exports.ɵdr = ThumbnailItemComponent;
22029
- exports.ɵds = ThumbnailItemVideoComponent;
22030
- exports.ɵdt = ThumbnailItemImageComponent;
22031
- exports.ɵdu = TimelineItemModule;
22032
- exports.ɵdv = TimelineIconItemComponent;
22033
- exports.ɵdw = HorizontalTimelineModule;
22034
- exports.ɵdx = HorizontalTimelineComponent;
22035
- exports.ɵdy = VerticalTimelineModule;
22036
- exports.ɵdz = VerticalTimelineComponent;
22109
+ exports.ɵda = InlineEditItemComponent;
22110
+ exports.ɵdb = InlineEditCalendarComponent;
22111
+ exports.ɵdc = InlineEditLookupComponent;
22112
+ exports.ɵdd = InlineEditNumberComponent;
22113
+ exports.ɵde = InlineEditTextComponent;
22114
+ exports.ɵdf = InlineEditTextAreaComponent;
22115
+ exports.ɵdg = InlineEditTextAreaIAComponent;
22116
+ exports.ɵdh = KanbanEventService;
22117
+ exports.ɵdi = KanbanItemComponent;
22118
+ exports.ɵdj = KanbanColumnComponent;
22119
+ exports.ɵdk = KanbanItemDraggingComponent;
22120
+ exports.ɵdl = NumberLocaleOptions;
22121
+ exports.ɵdm = BorderButtonModule;
22122
+ exports.ɵdn = BorderButtonComponent;
22123
+ exports.ɵdo = ProgressBarDeterminateComponent;
22124
+ exports.ɵdp = ProgressBarIndeterminateComponent;
22125
+ exports.ɵdq = SelectButtonItemComponent;
22126
+ exports.ɵdr = SlidePanelService;
22127
+ exports.ɵds = ThumbnailItemComponent;
22128
+ exports.ɵdt = ThumbnailItemVideoComponent;
22129
+ exports.ɵdu = ThumbnailItemImageComponent;
22130
+ exports.ɵdv = TimelineItemModule;
22131
+ exports.ɵdw = TimelineIconItemComponent;
22132
+ exports.ɵdx = HorizontalTimelineModule;
22133
+ exports.ɵdy = HorizontalTimelineComponent;
22134
+ exports.ɵdz = VerticalTimelineModule;
22037
22135
  exports.ɵe = TieredMenuGlobalService;
22038
- exports.ɵea = RangeLineComponent;
22039
- exports.ɵeb = CollapseOptionComponent;
22040
- exports.ɵec = CollapsedItemsComponent;
22041
- exports.ɵed = VerticalItemsComponent;
22042
- exports.ɵee = ChipItemComponent;
22136
+ exports.ɵea = VerticalTimelineComponent;
22137
+ exports.ɵeb = RangeLineComponent;
22138
+ exports.ɵec = CollapseOptionComponent;
22139
+ exports.ɵed = CollapsedItemsComponent;
22140
+ exports.ɵee = VerticalItemsComponent;
22141
+ exports.ɵef = ChipItemComponent;
22043
22142
  exports.ɵf = TieredMenuComponent;
22044
22143
  exports.ɵg = TieredMenuNestedComponent;
22045
22144
  exports.ɵh = TieredMenuItemComponent;