@kirbydesign/designsystem 5.2.2 → 5.4.1

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 (163) hide show
  1. package/bundles/kirbydesign-designsystem-testing-base.umd.js +1 -0
  2. package/bundles/kirbydesign-designsystem-testing-base.umd.js.map +1 -1
  3. package/bundles/kirbydesign-designsystem-testing-base.umd.min.js +1 -1
  4. package/bundles/kirbydesign-designsystem-testing-base.umd.min.js.map +1 -1
  5. package/bundles/kirbydesign-designsystem-testing-jasmine.umd.js.map +1 -1
  6. package/bundles/kirbydesign-designsystem-testing-jasmine.umd.min.js.map +1 -1
  7. package/bundles/kirbydesign-designsystem-testing-jest.umd.js.map +1 -1
  8. package/bundles/kirbydesign-designsystem-testing-jest.umd.min.js.map +1 -1
  9. package/bundles/kirbydesign-designsystem.umd.js +95 -72
  10. package/bundles/kirbydesign-designsystem.umd.js.map +1 -1
  11. package/bundles/kirbydesign-designsystem.umd.min.js +1 -1
  12. package/bundles/kirbydesign-designsystem.umd.min.js.map +1 -1
  13. package/esm2015/lib/components/avatar/avatar.component.js +1 -1
  14. package/esm2015/lib/components/button/button.component.js +1 -1
  15. package/esm2015/lib/components/calendar/calendar.component.js +2 -2
  16. package/esm2015/lib/components/card/card-header/card-header.component.js +1 -1
  17. package/esm2015/lib/components/card/card-header/card-header.component.metadata.json +1 -1
  18. package/esm2015/lib/components/chart/chart-js/chart-js.service.js +38 -26
  19. package/esm2015/lib/components/chart/chart-js/chart-js.service.metadata.json +1 -1
  20. package/esm2015/lib/components/chart/chart-js/chartjs-plugin-marker/chartjs-plugin-marker.js +1 -1
  21. package/esm2015/lib/components/chart/chart.component.js +1 -1
  22. package/esm2015/lib/components/chart/chart.component.metadata.json +1 -1
  23. package/esm2015/lib/components/chart/chart.types.js +1 -1
  24. package/esm2015/lib/components/chart/chart.types.metadata.json +1 -1
  25. package/esm2015/lib/components/chart-deprecated/chart-deprecated.component.js +3 -3
  26. package/esm2015/lib/components/chart-deprecated/options/areaspline.js +1 -1
  27. package/esm2015/lib/components/chart-deprecated/options/timeseries.js +1 -1
  28. package/esm2015/lib/components/dropdown/dropdown.component.js +2 -2
  29. package/esm2015/lib/components/dropdown/dropdown.component.metadata.json +1 -1
  30. package/esm2015/lib/components/fab-sheet/fab-sheet.component.js +4 -3
  31. package/esm2015/lib/components/fab-sheet/fab-sheet.component.metadata.json +1 -1
  32. package/esm2015/lib/components/flag/flag.component.js +4 -6
  33. package/esm2015/lib/components/flag/flag.component.metadata.json +1 -1
  34. package/esm2015/lib/components/form-field/form-field.component.js +1 -1
  35. package/esm2015/lib/components/form-field/form-field.component.metadata.json +1 -1
  36. package/esm2015/lib/components/form-field/input/input.component.js +2 -2
  37. package/esm2015/lib/components/form-field/input/input.component.metadata.json +1 -1
  38. package/esm2015/lib/components/form-field/input-counter/input-counter.component.js +2 -3
  39. package/esm2015/lib/components/form-field/input-counter/input-counter.component.metadata.json +1 -1
  40. package/esm2015/lib/components/form-field/textarea/textarea.component.js +1 -1
  41. package/esm2015/lib/components/form-field/textarea/textarea.component.metadata.json +1 -1
  42. package/esm2015/lib/components/icon/icon.component.js +2 -2
  43. package/esm2015/lib/components/icon/icon.component.metadata.json +1 -1
  44. package/esm2015/lib/components/item/item.component.js +1 -1
  45. package/esm2015/lib/components/list/list-item/list-item.component.js +1 -1
  46. package/esm2015/lib/components/list/list-item/list-item.component.metadata.json +1 -1
  47. package/esm2015/lib/components/list/list-section-header/list-section-header.component.js +2 -3
  48. package/esm2015/lib/components/list/list-section-header/list-section-header.component.metadata.json +1 -1
  49. package/esm2015/lib/components/list/list.component.js +1 -1
  50. package/esm2015/lib/components/list/list.component.metadata.json +1 -1
  51. package/esm2015/lib/components/modal/action-sheet/action-sheet.component.js +1 -1
  52. package/esm2015/lib/components/modal/action-sheet/action-sheet.component.metadata.json +1 -1
  53. package/esm2015/lib/components/modal/footer/modal-footer.component.js +1 -1
  54. package/esm2015/lib/components/modal/footer/modal-footer.component.metadata.json +1 -1
  55. package/esm2015/lib/components/modal/modal-wrapper/modal-wrapper.component.js +2 -2
  56. package/esm2015/lib/components/modal/modal-wrapper/modal-wrapper.component.metadata.json +1 -1
  57. package/esm2015/lib/components/modal/services/modal-navigation.service.js +2 -4
  58. package/esm2015/lib/components/page/page.component.js +5 -13
  59. package/esm2015/lib/components/page/page.component.metadata.json +1 -1
  60. package/esm2015/lib/components/popover/popover.component.js +16 -18
  61. package/esm2015/lib/components/popover/popover.component.metadata.json +1 -1
  62. package/esm2015/lib/components/radio/radio.component.js +1 -1
  63. package/esm2015/lib/components/range/range.component.js +1 -1
  64. package/esm2015/lib/components/range/range.component.metadata.json +1 -1
  65. package/esm2015/lib/components/reorder-list/reorder-list.component.js +3 -3
  66. package/esm2015/lib/components/reorder-list/reorder-list.component.metadata.json +1 -1
  67. package/esm2015/lib/components/segmented-control/segmented-control.component.js +10 -2
  68. package/esm2015/lib/components/segmented-control/segmented-control.component.metadata.json +1 -1
  69. package/esm2015/lib/components/slide-button/slide-button.component.js +1 -1
  70. package/esm2015/lib/components/slide-button/slide-button.component.metadata.json +1 -1
  71. package/esm2015/lib/components/stock-chart-deprecated/options/stock-chart-deprecated-options.js +1 -1
  72. package/esm2015/testing-base/lib/components/mock.accordion-item.component.js +1 -1
  73. package/esm2015/testing-base/lib/components/mock.action-sheet.component.js +1 -1
  74. package/esm2015/testing-base/lib/components/mock.app.component.js +1 -1
  75. package/esm2015/testing-base/lib/components/mock.avatar.component.js +2 -2
  76. package/esm2015/testing-base/lib/components/mock.button.component.js +2 -2
  77. package/esm2015/testing-base/lib/components/mock.calendar.component.js +2 -1
  78. package/esm2015/testing-base/lib/components/mock.calendar.component.metadata.json +1 -1
  79. package/esm2015/testing-base/lib/components/mock.card-footer.component.js +1 -1
  80. package/esm2015/testing-base/lib/components/mock.card-header.component.js +1 -1
  81. package/esm2015/testing-base/lib/components/mock.card.component.js +1 -1
  82. package/esm2015/testing-base/lib/components/mock.chart-deprecated.component.js +1 -1
  83. package/esm2015/testing-base/lib/components/mock.chart.component.js +1 -1
  84. package/esm2015/testing-base/lib/components/mock.chart.component.metadata.json +1 -1
  85. package/esm2015/testing-base/lib/components/mock.checkbox.component.js +1 -1
  86. package/esm2015/testing-base/lib/components/mock.chip.component.js +1 -1
  87. package/esm2015/testing-base/lib/components/mock.divider.component.js +1 -1
  88. package/esm2015/testing-base/lib/components/mock.dropdown.component.js +2 -2
  89. package/esm2015/testing-base/lib/components/mock.empty-state.component.js +1 -1
  90. package/esm2015/testing-base/lib/components/mock.fab-sheet.component.js +1 -1
  91. package/esm2015/testing-base/lib/components/mock.flag.component.js +1 -1
  92. package/esm2015/testing-base/lib/components/mock.form-field-message.component.js +1 -1
  93. package/esm2015/testing-base/lib/components/mock.form-field.component.js +1 -1
  94. package/esm2015/testing-base/lib/components/mock.grid.component.js +1 -1
  95. package/esm2015/testing-base/lib/components/mock.icon.component.js +2 -2
  96. package/esm2015/testing-base/lib/components/mock.input-counter.component.js +1 -1
  97. package/esm2015/testing-base/lib/components/mock.input.component.js +2 -2
  98. package/esm2015/testing-base/lib/components/mock.item-group.component.js +1 -1
  99. package/esm2015/testing-base/lib/components/mock.item-sliding.component.js +1 -1
  100. package/esm2015/testing-base/lib/components/mock.item.component.js +2 -2
  101. package/esm2015/testing-base/lib/components/mock.label.component.js +1 -1
  102. package/esm2015/testing-base/lib/components/mock.list-experimental.component.js +1 -1
  103. package/esm2015/testing-base/lib/components/mock.list-header.component.js +1 -1
  104. package/esm2015/testing-base/lib/components/mock.list-item.component.js +1 -1
  105. package/esm2015/testing-base/lib/components/mock.list-section-header.component.js +1 -1
  106. package/esm2015/testing-base/lib/components/mock.list.component.js +1 -1
  107. package/esm2015/testing-base/lib/components/mock.loading-overlay.component.js +1 -1
  108. package/esm2015/testing-base/lib/components/mock.modal-footer.component.js +1 -1
  109. package/esm2015/testing-base/lib/components/mock.page-footer.component.js +1 -1
  110. package/esm2015/testing-base/lib/components/mock.page.component.js +1 -1
  111. package/esm2015/testing-base/lib/components/mock.popover.component.js +2 -2
  112. package/esm2015/testing-base/lib/components/mock.progress-circle.component.js +1 -1
  113. package/esm2015/testing-base/lib/components/mock.radio-group.component.js +1 -1
  114. package/esm2015/testing-base/lib/components/mock.radio.component.js +1 -1
  115. package/esm2015/testing-base/lib/components/mock.range.component.js +1 -1
  116. package/esm2015/testing-base/lib/components/mock.reorder-list.component.js +1 -1
  117. package/esm2015/testing-base/lib/components/mock.router-outlet.component.js +1 -1
  118. package/esm2015/testing-base/lib/components/mock.section-header.component.js +1 -1
  119. package/esm2015/testing-base/lib/components/mock.segmented-control.component.js +2 -2
  120. package/esm2015/testing-base/lib/components/mock.slide-button.component.js +1 -1
  121. package/esm2015/testing-base/lib/components/mock.spinner.component.js +1 -1
  122. package/esm2015/testing-base/lib/components/mock.tab-button.component.js +1 -1
  123. package/esm2015/testing-base/lib/components/mock.tabs.component.js +1 -1
  124. package/esm2015/testing-base/lib/components/mock.textarea.component.js +1 -1
  125. package/esm2015/testing-base/lib/components/mock.toggle-button.component.js +1 -1
  126. package/esm2015/testing-base/lib/components/mock.toggle.component.js +1 -1
  127. package/esm2015/testing-base/lib/mock-components.js +1 -1
  128. package/esm2015/testing-jasmine/lib/mock-providers.js +1 -1
  129. package/esm2015/testing-jest/lib/mock-providers.js +1 -1
  130. package/fesm2015/kirbydesign-designsystem-testing-base.js +1 -0
  131. package/fesm2015/kirbydesign-designsystem-testing-base.js.map +1 -1
  132. package/fesm2015/kirbydesign-designsystem-testing-jasmine.js.map +1 -1
  133. package/fesm2015/kirbydesign-designsystem-testing-jest.js.map +1 -1
  134. package/fesm2015/kirbydesign-designsystem.js +88 -83
  135. package/fesm2015/kirbydesign-designsystem.js.map +1 -1
  136. package/icons/svg/more.svg +5 -7
  137. package/kirbydesign-designsystem.metadata.json +1 -1
  138. package/lib/components/avatar/avatar.component.d.ts +2 -2
  139. package/lib/components/button/button.component.d.ts +2 -2
  140. package/lib/components/chart/chart-js/chart-js.service.d.ts +4 -3
  141. package/lib/components/chart/chart.component.d.ts +3 -3
  142. package/lib/components/chart/chart.types.d.ts +1 -0
  143. package/lib/components/dropdown/dropdown.component.d.ts +2 -2
  144. package/lib/components/form-field/input/input.component.d.ts +1 -1
  145. package/lib/components/form-field/input-counter/input-counter.component.d.ts +2 -2
  146. package/lib/components/icon/icon.component.d.ts +1 -1
  147. package/lib/components/item/item.component.d.ts +1 -1
  148. package/lib/components/popover/popover.component.d.ts +2 -3
  149. package/lib/components/segmented-control/segmented-control.component.d.ts +4 -1
  150. package/package.json +2 -2
  151. package/polyfills/intersection-observer-polyfill-loader.js +12 -12
  152. package/polyfills/resize-observer-polyfill-loader.js +1 -1
  153. package/testing-base/kirbydesign-designsystem-testing-base.metadata.json +1 -1
  154. package/testing-base/lib/components/mock.avatar.component.d.ts +1 -1
  155. package/testing-base/lib/components/mock.button.component.d.ts +1 -1
  156. package/testing-base/lib/components/mock.calendar.component.d.ts +1 -0
  157. package/testing-base/lib/components/mock.chart.component.d.ts +2 -2
  158. package/testing-base/lib/components/mock.dropdown.component.d.ts +1 -1
  159. package/testing-base/lib/components/mock.icon.component.d.ts +1 -1
  160. package/testing-base/lib/components/mock.input.component.d.ts +1 -1
  161. package/testing-base/lib/components/mock.item.component.d.ts +1 -1
  162. package/testing-base/lib/components/mock.popover.component.d.ts +1 -1
  163. package/testing-base/lib/components/mock.segmented-control.component.d.ts +1 -1
@@ -391,7 +391,7 @@
391
391
  { type: i0.Component, args: [{
392
392
  selector: 'kirby-action-sheet',
393
393
  template: "<kirby-card>\n <kirby-card-header *ngIf=\"header\" [title]=\"header\" [isTitleBold]=\"true\" [subtitle]=\"subheader\">\n </kirby-card-header>\n <button\n kirby-button\n expand=\"block\"\n size=\"lg\"\n attentionLevel=\"4\"\n (click)=\"onItemSelect(item)\"\n *ngFor=\"let item of items\"\n >\n {{ item.text }}\n </button>\n</kirby-card>\n<button\n *ngIf=\"!hideCancel\"\n kirby-button\n class=\"cancel-btn\"\n size=\"lg\"\n attentionLevel=\"2\"\n (click)=\"onCancel()\"\n>\n {{ cancelButtonText }}\n</button>\n",
394
- styles: [":host{--kirby_internal_margin_horizontal_default:32px;--kirby_internal_margin_horizontal_total:calc(2 * var(--kirby-action-sheet-margin-horizontal, var(--kirby_internal_margin_horizontal_default)))}@media (max-width:320px){:host{--kirby_internal_margin_horizontal_default:16px}}:host{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;margin:0 auto;width:calc(100vw - var(--kirby_internal_margin_horizontal_total));max-width:calc(375px - var(--kirby_internal_margin_horizontal_total))}kirby-card{align-self:stretch;pointer-events:auto;box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08)}kirby-card button[kirby-button]{margin:0;border-radius:0}kirby-card button[kirby-button]:not(:focus){border-top:1px solid var(--kirby-background-color)}.cancel-btn{font-weight:700;margin-top:16px;margin-bottom:24px;pointer-events:auto;box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08)}"]
394
+ styles: [":host{--kirby-internal-margin-horizontal-default:32px;--kirby-internal-margin-horizontal-total:calc(2 * var(--kirby-action-sheet-margin-horizontal, var(--kirby-internal-margin-horizontal-default)));display:flex;flex-direction:column;align-items:center;justify-content:flex-end;margin:0 auto;width:calc(100vw - var(--kirby-internal-margin-horizontal-total));max-width:calc(375px - var(--kirby-internal-margin-horizontal-total))}@media (max-width:320px){:host{--kirby-internal-margin-horizontal-default:16px}}kirby-card{align-self:stretch;pointer-events:auto;box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08)}kirby-card button[kirby-button]{margin:0;border-radius:0}kirby-card button[kirby-button]:not(:focus){border-top:1px solid var(--kirby-background-color)}.cancel-btn{font-weight:700;margin-top:16px;margin-bottom:24px;pointer-events:auto;box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08)}"]
395
395
  },] }
396
396
  ];
397
397
  ActionSheetComponent.propDecorators = {
@@ -767,9 +767,7 @@
767
767
  };
768
768
  ModalNavigationService.prototype.findChildRouteForUrl = function (url, routes) {
769
769
  var _this = this;
770
- var moduleRelativePaths = this.getRoutePaths(routes, [''])
771
- .sort()
772
- .reverse(); // Ensure child paths are evaluated first
770
+ var moduleRelativePaths = this.getRoutePaths(routes, ['']).sort().reverse(); // Ensure child paths are evaluated first
773
771
  var matchedChildRoute = moduleRelativePaths.find(function (path) { return url.endsWith(path); });
774
772
  if (!matchedChildRoute) {
775
773
  // No static child route found matching current route - look for child route with url params:
@@ -1313,7 +1311,7 @@
1313
1311
  template: "<ion-icon [src]=\"icon?.svg\"></ion-icon>\n",
1314
1312
  // tslint:disable-next-line: no-host-metadata-property
1315
1313
  host: { '[class.kirby-icon]': 'true' },
1316
- styles: [":host{display:inline-flex;align-items:center;justify-content:center;font-size:var(--kirby-icon-font-size,24px);margin-left:var(--kirby-icon-margin-left,unset);margin-right:var(--kirby-icon-margin-right,unset)}:host svg path{fill:currentColor;stroke:currentColor}:host(.xs){--kirby-icon-font-size:16px}:host(.sm){--kirby-icon-font-size:24px}:host(.md){--kirby-icon-font-size:32px}:host(.lg){--kirby-icon-font-size:56px}:host(.primary){color:var(--kirby-primary)}:host(.secondary){color:var(--kirby-secondary)}:host(.tertiary){color:var(--kirby-tertiary)}:host(.success){color:var(--kirby-success)}:host(.warning){color:var(--kirby-warning)}:host(.danger){color:var(--kirby-danger)}:host(.light){color:var(--kirby-light)}:host(.medium){color:var(--kirby-medium)}:host(.dark){color:var(--kirby-dark)}:host-context(kirby-item)[slot=start]{margin-inline-end:8px}:host-context(kirby-item)[slot=end]{margin-inline-start:8px}"]
1314
+ styles: [":host{display:inline-flex;align-items:center;justify-content:center;font-size:var(--kirby-icon-font-size,24px);margin-left:var(--kirby-icon-margin-left,unset);margin-right:var(--kirby-icon-margin-right,unset)}:host svg path{fill:currentcolor;stroke:currentcolor}:host(.xs){--kirby-icon-font-size:16px}:host(.sm){--kirby-icon-font-size:24px}:host(.md){--kirby-icon-font-size:32px}:host(.lg){--kirby-icon-font-size:56px}:host(.primary){color:var(--kirby-primary)}:host(.secondary){color:var(--kirby-secondary)}:host(.tertiary){color:var(--kirby-tertiary)}:host(.success){color:var(--kirby-success)}:host(.warning){color:var(--kirby-warning)}:host(.danger){color:var(--kirby-danger)}:host(.light){color:var(--kirby-light)}:host(.medium){color:var(--kirby-medium)}:host(.dark){color:var(--kirby-dark)}:host-context(kirby-item)[slot=start]{margin-inline-end:8px}:host-context(kirby-item)[slot=end]{margin-inline-start:8px}"]
1317
1315
  },] }
1318
1316
  ];
1319
1317
  /** @nocollapse */
@@ -2006,7 +2004,7 @@
2006
2004
  selector: 'kirby-modal-wrapper',
2007
2005
  template: "<ion-header (touchstart)=\"onHeaderTouchStart($event)\">\n <ion-toolbar>\n <ion-title>{{ config.title }}</ion-title>\n <ion-buttons slot=\"start\" *ngIf=\"config.flavor === 'drawer'\">\n <ng-container *ngTemplateOutlet=\"closeButton; context: { icon: 'arrow-down' }\"></ng-container>\n </ion-buttons>\n <ion-buttons slot=\"end\" *ngIf=\"config.flavor === 'modal'\">\n <ng-container *ngTemplateOutlet=\"closeButton; context: { icon: 'close' }\"></ng-container>\n </ion-buttons>\n <ion-buttons slot=\"end\" *ngIf=\"config.flavor === 'drawer' && config.drawerSupplementaryAction\">\n <ng-container\n *ngTemplateOutlet=\"supplementaryButton; context: { btn: config.drawerSupplementaryAction }\"\n ></ng-container>\n </ion-buttons>\n </ion-toolbar>\n</ion-header>\n\n<ion-content [scrollEvents]=\"true\">\n <ng-container\n *ngComponentOutlet=\"config.component; injector: componentPropsInjector\"\n ></ng-container>\n <router-outlet\n name=\"kirbyModalWrapperOutlet\"\n [style.visibility]=\"config.modalRoute ? 'visible' : 'hidden'\"\n ></router-outlet>\n</ion-content>\n\n<ng-template #closeButton let-icon=\"icon\">\n <button kirby-button attentionLevel=\"4\" size=\"sm\" (click)=\"close()\">\n <kirby-icon [name]=\"icon\"></kirby-icon>\n </button>\n</ng-template>\n\n<ng-template #supplementaryButton let-btn=\"btn\">\n <button kirby-button attentionLevel=\"2\" size=\"sm\" (click)=\"btn.action($event)\">\n <kirby-icon [name]=\"btn.iconName\"></kirby-icon>\n </button>\n</ng-template>\n",
2008
2006
  providers: [{ provide: Modal, useExisting: ModalWrapperComponent }],
2009
- styles: ["@media (min-width:721px){:host-context(ion-modal:not(.kirby-modal-full-height)){padding-top:0;position:relative;contain:inherit;min-height:min(var(--min-height),var(--vh100) - var(--kirby-modal-padding-top,0))}:host-context(ion-modal:not(.kirby-modal-full-height)) ion-content{contain:content;max-height:calc(var(--vh100) - var(--kirby-modal-padding-top, 0px) - var(--header-height) - var(--footer-height))}:host-context(ion-modal:not(.kirby-modal-full-height)) ion-content::part(scroll){height:\"100%\";position:relative}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer ion-content::part(scroll){transition:padding-bottom .15s ease-out}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer.keyboard-visible ion-content::part(scroll){transition:padding-bottom .25s ease-out 1ms}}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer{padding-top:0;position:relative;contain:inherit;min-height:min(var(--min-height),var(--vh100) - var(--kirby-modal-padding-top,0))}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer ion-content{contain:content;max-height:calc(var(--vh100) - var(--kirby-modal-padding-top, 0px) - var(--header-height) - var(--footer-height))}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer ion-content::part(scroll){height:\"100%\";position:relative}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer.drawer ion-content::part(scroll){transition:padding-bottom .15s ease-out}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer.drawer.keyboard-visible ion-content::part(scroll){transition:padding-bottom .25s ease-out 1ms}:host{--vh100:var(--vh,1vh) * 100;--header-height:0px;--footer-height:0px}:host.drawer ion-header ion-toolbar:first-of-type{padding-top:0}ion-header ion-toolbar{--padding-start:16px;--padding-end:16px;--padding-bottom:16px;--padding-top:16px;--border-width:0;--background:transparent;--color:var(--kirby-modal-color,var(--kirby-black))}ion-header ion-toolbar button{color:var(--color)}@media (min-width:721px){ion-header ion-toolbar{padding-top:8px}}:host-context(ion-modal.modal-card:not(.kirby-drawer)) ion-header ion-toolbar:first-of-type{padding-top:var(--kirby-safe-area-top,0)}@media (min-width:721px){:host-context(ion-modal.modal-card:not(.kirby-drawer)) ion-header ion-toolbar:first-of-type{padding-top:8px}}ion-title{box-sizing:border-box;padding-inline-start:calc(48px + var(--padding-start));padding-inline-end:calc(48px + var(--padding-end));font-size:22px;font-weight:700}:host(.drawer) ion-title{font-size:18px}ion-content{--background:transparent;--color:var(--kirby-modal-color,var(--kirby-black));display:flex;flex-direction:column;--padding-top:24px;--padding-bottom:24px;--padding-start:16px;--padding-end:16px}ion-content ::ng-deep>*{box-sizing:border-box;display:block}@media (min-width:721px){ion-content{--padding-start:56px;--padding-end:56px}}"]
2007
+ styles: ["ion-header ion-toolbar{--padding-start:16px;--padding-end:16px;--padding-bottom:16px;--padding-top:16px;--border-width:0;--background:transparent;--color:var(--kirby-modal-color,var(--kirby-black))}ion-header ion-toolbar button{color:var(--color)}@media (min-width:721px){ion-header ion-toolbar{padding-top:8px}}:host{--vh100:var(--vh,1vh) * 100;--header-height:0px;--footer-height:0px}:host.drawer ion-header ion-toolbar:first-of-type{padding-top:0}@media (min-width:721px){:host-context(ion-modal:not(.kirby-modal-full-height)){padding-top:0;position:relative;contain:inherit;min-height:min(var(--min-height),var(--vh100) - var(--kirby-modal-padding-top,0))}:host-context(ion-modal:not(.kirby-modal-full-height)) ion-content{contain:content;max-height:calc(var(--vh100) - var(--kirby-modal-padding-top, 0px) - var(--header-height) - var(--footer-height))}:host-context(ion-modal:not(.kirby-modal-full-height)) ion-content::part(scroll){height:\"100%\";position:relative}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer ion-content::part(scroll){transition:padding-bottom .15s ease-out}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer.keyboard-visible ion-content::part(scroll){transition:padding-bottom .25s ease-out 1ms}}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer{padding-top:0;position:relative;contain:inherit;min-height:min(var(--min-height),var(--vh100) - var(--kirby-modal-padding-top,0))}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer ion-content{contain:content;max-height:calc(var(--vh100) - var(--kirby-modal-padding-top, 0px) - var(--header-height) - var(--footer-height))}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer ion-content::part(scroll){height:\"100%\";position:relative}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer.drawer ion-content::part(scroll){transition:padding-bottom .15s ease-out}:host-context(ion-modal:not(.kirby-modal-full-height)).drawer.drawer.keyboard-visible ion-content::part(scroll){transition:padding-bottom .25s ease-out 1ms}:host-context(ion-modal.modal-card:not(.kirby-drawer)) ion-header ion-toolbar:first-of-type{padding-top:var(--kirby-safe-area-top,0)}@media (min-width:721px){:host-context(ion-modal.modal-card:not(.kirby-drawer)) ion-header ion-toolbar:first-of-type{padding-top:8px}}ion-title{box-sizing:border-box;padding-inline-start:calc(48px + var(--padding-start));padding-inline-end:calc(48px + var(--padding-end));font-size:22px;font-weight:700}:host(.drawer) ion-title{font-size:18px}ion-content{--background:transparent;--color:var(--kirby-modal-color,var(--kirby-black));display:flex;flex-direction:column;--padding-top:24px;--padding-bottom:24px;--padding-start:16px;--padding-end:16px}ion-content ::ng-deep>*{box-sizing:border-box;display:block}@media (min-width:721px){ion-content{--padding-start:56px;--padding-end:56px}}"]
2010
2008
  },] }
2011
2009
  ];
2012
2010
  /** @nocollapse */
@@ -2937,7 +2935,7 @@
2937
2935
  { type: i0.Component, args: [{
2938
2936
  selector: 'kirby-card-header',
2939
2937
  template: "<header>\n <h2 *ngIf=\"title\" [class.bold]=\"isTitleBold\">{{ title }}</h2>\n <h4 *ngIf=\"subtitle\">{{ subtitle }}</h4>\n <ng-content></ng-content>\n</header>\n",
2940
- styles: [":host{display:block;border-top-left-radius:16px;border-top-right-radius:16px;text-align:center;padding:var(--kirby_internal_card-header-padding,16px);color:var(--kirby-card-header-color);background-color:var(--kirby-card-header-background-color)}h2{font-size:16px;font-weight:400;margin:0 0 var(--kirby_internal_card-header-margin-bottom,8px);line-height:var(--kirby_internal_card-header-line-height,28px)}h2.bold{font-weight:700}h4{font-size:14px;margin:0;font-weight:400}:host(.danger){--kirby-card-header-background-color:var(--kirby-danger);--kirby-card-header-color:var(--kirby-danger-contrast)}:host(.warning){--kirby-card-header-background-color:var(--kirby-warning);--kirby-card-header-color:var(--kirby-warning-contrast)}:host(.success){--kirby-card-header-background-color:var(--kirby-success);--kirby-card-header-color:var(--kirby-success-contrast)}:host(.info){--kirby-card-header-background-color:var(--kirby-semi-light);--kirby-card-header-color:var(--kirby-semi-light-contrast)}:host(.danger,.warning,.success,.info){--kirby_internal_card-header-padding:2px 8px}:host(.danger,.warning,.success,.info) h2{--kirby_internal_card-header-line-height:24px;--kirby_internal_card-header-margin-bottom:0}"]
2938
+ styles: [":host{display:block;border-top-left-radius:16px;border-top-right-radius:16px;text-align:center;padding:var(--kirby-internal-card-header-padding,16px);color:var(--kirby-card-header-color);background-color:var(--kirby-card-header-background-color)}h2{font-size:16px;font-weight:400;margin:0 0 var(--kirby-internal-card-header-margin-bottom,8px);line-height:var(--kirby-internal-card-header-line-height,28px)}h2.bold{font-weight:700}h4{font-size:14px;margin:0;font-weight:400}:host(.danger){--kirby-card-header-background-color:var(--kirby-danger);--kirby-card-header-color:var(--kirby-danger-contrast)}:host(.warning){--kirby-card-header-background-color:var(--kirby-warning);--kirby-card-header-color:var(--kirby-warning-contrast)}:host(.success){--kirby-card-header-background-color:var(--kirby-success);--kirby-card-header-color:var(--kirby-success-contrast)}:host(.info){--kirby-card-header-background-color:var(--kirby-semi-light);--kirby-card-header-color:var(--kirby-semi-light-contrast)}:host(.danger,.warning,.success,.info){--kirby-internal-card-header-padding:2px 8px}:host(.danger,.warning,.success,.info) h2{--kirby-internal-card-header-line-height:24px;--kirby-internal-card-header-margin-bottom:0px}"]
2941
2939
  },] }
2942
2940
  ];
2943
2941
  CardHeaderComponent.propDecorators = {
@@ -3700,8 +3698,8 @@
3700
3698
  }
3701
3699
  };
3702
3700
  ChartDeprecatedComponent.prototype.setPieInput = function () {
3703
- this.mergedOptions.plotOptions.pie
3704
- .dataLabels.enabled = this.showDataLabels;
3701
+ this.mergedOptions.plotOptions.pie.dataLabels.enabled =
3702
+ this.showDataLabels;
3705
3703
  this.setSeries('pie');
3706
3704
  };
3707
3705
  ChartDeprecatedComponent.prototype.setBarInput = function () {
@@ -4479,6 +4477,8 @@
4479
4477
  this.chart.data.datasets = datasets;
4480
4478
  };
4481
4479
  ChartJSService.prototype.updateLabels = function (labels) {
4480
+ /* As labels provided via the 'labels' input property always has
4481
+ highest priority - we can just set the property directly */
4482
4482
  this.chart.data.labels = labels;
4483
4483
  };
4484
4484
  ChartJSService.prototype.updateType = function (type, customOptions) {
@@ -4530,7 +4530,7 @@
4530
4530
  };
4531
4531
  ChartJSService.prototype.destructivelyUpdateType = function (type, customOptions) {
4532
4532
  var datasets = this.chart.data.datasets;
4533
- var labels = this.chart.data.labels;
4533
+ var labels = this.chart.data.labels; // chart.js stores labels as unknown[]; cast it to ChartLabel[]
4534
4534
  var annotations = this.getExistingChartAnnotations();
4535
4535
  this.chartType = type;
4536
4536
  var options = this.createOptionsObject({ customOptions: customOptions, annotations: annotations });
@@ -4640,33 +4640,45 @@
4640
4640
  day: 'numeric',
4641
4641
  }); });
4642
4642
  };
4643
+ ChartJSService.prototype.getLabelsToApply = function (args) {
4644
+ var datasets = args.datasets, labels = args.labels, type = args.type, indexAxis = args.indexAxis;
4645
+ var datasetHasLabels = function (_d) {
4646
+ var data = _d.data;
4647
+ return !!(data === null || data === void 0 ? void 0 : data.some(function (datapoint) { return typeof datapoint === 'object' && typeof datapoint[indexAxis] === 'string'; }));
4648
+ };
4649
+ /*
4650
+ Labels can be provided by the user two ways:
4651
+ 1. As a seperate ChartLabel[] via the 'labels' input prop - this has highest priority
4652
+ 2. Together with the dataset via the 'data' input prop - here each datapoint contains
4653
+ a label for the indexAxis.
4654
+ For example: { x: 'label1', y: 1} in the case where the index axis is 'x'.
4655
+
4656
+ If no labels are provided then default labels are used.
4657
+ */
4658
+ var labelsAreGivenAsSeperateArray = labels !== undefined;
4659
+ var labelsAreGivenTogetherWithDataset = datasets.some(datasetHasLabels);
4660
+ if (labelsAreGivenAsSeperateArray) {
4661
+ return labels;
4662
+ }
4663
+ else if (labelsAreGivenTogetherWithDataset) {
4664
+ return null;
4665
+ }
4666
+ else {
4667
+ /*
4668
+ Chart.js requires labels along the index axis to render anything therefore
4669
+ all other types than stock uses empty labels as default. The stock type
4670
+ displays day & month as default.
4671
+ */
4672
+ return type === 'stock'
4673
+ ? this.getDefaultStockLabels(datasets, this.locale)
4674
+ : this.createBlankLabels(datasets);
4675
+ }
4676
+ };
4643
4677
  ChartJSService.prototype.createConfigurationObject = function (type, datasets, options, labels) {
4644
- var _this = this;
4678
+ var _a, _b;
4645
4679
  var typeConfig = this.chartConfigService.getTypeConfig(type);
4646
- var labelsToApply = (function () {
4647
- var _a, _b;
4648
- if (type === 'stock') {
4649
- /*
4650
- The time scale will auto generate labels based on data.
4651
- It should be possible to pass an empty array to get the default
4652
- behaviour of chart.js when using stock chart.
4653
-
4654
- TODO: Simplify to always pass labels, if given, to chart.js.
4655
- Would be a breaking change. See issue:
4656
- https://github.com/kirbydesign/designsystem/issues/2085
4657
- */
4658
- var shouldUseTimescaleLabels = (labels === null || labels === void 0 ? void 0 : labels.length) === 0 && ((_b = (_a = options === null || options === void 0 ? void 0 : options.scales) === null || _a === void 0 ? void 0 : _a.x) === null || _b === void 0 ? void 0 : _b.type) === 'time';
4659
- if (shouldUseTimescaleLabels)
4660
- return labels;
4661
- return _this.getDefaultStockLabels(datasets, _this.locale);
4662
- }
4663
- else if ((labels === null || labels === void 0 ? void 0 : labels.length) > 0) {
4664
- return labels;
4665
- }
4666
- else {
4667
- return _this.createBlankLabels(datasets);
4668
- }
4669
- })();
4680
+ var indexAxis = (_b = (_a = typeConfig === null || typeConfig === void 0 ? void 0 : typeConfig.options) === null || _a === void 0 ? void 0 : _a.indexAxis) !== null && _b !== void 0 ? _b : 'x';
4681
+ var labelsToApply = this.getLabelsToApply({ labels: labels, datasets: datasets, type: type, indexAxis: indexAxis });
4670
4682
  return mergeDeepAll(typeConfig, {
4671
4683
  data: {
4672
4684
  labels: labelsToApply,
@@ -5581,10 +5593,10 @@
5581
5593
  CalendarComponent.prototype._onDateSelected = function (newDay) {
5582
5594
  if (newDay.isSelectable && newDay.date) {
5583
5595
  var newDate = new Date(this.activeMonth);
5596
+ newDate.setDate(newDay.date);
5584
5597
  if (this.timezone === 'UTC') {
5585
5598
  newDate = dateFnsTz.zonedTimeToUtc(this.subtractTimezoneOffset(newDate), this.timeZoneName);
5586
5599
  }
5587
- newDate.setDate(newDay.date);
5588
5600
  var dateToEmit = newDate;
5589
5601
  if (this.hasDateChanged(newDate, this._selectedDate)) {
5590
5602
  this.onSelectedDateChange(newDate);
@@ -5996,15 +6008,8 @@
5996
6008
  enumerable: false,
5997
6009
  configurable: true
5998
6010
  });
5999
- PopoverComponent.prototype._backdropClick = function () {
6000
- this.willHide.emit();
6001
- this.hide();
6002
- };
6003
6011
  PopoverComponent.prototype._onWindowResize = function () {
6004
- if (this.isShowing) {
6005
- this.willHide.emit();
6006
- this.hide();
6007
- }
6012
+ this.hide();
6008
6013
  };
6009
6014
  PopoverComponent.prototype.ngAfterViewInit = function () {
6010
6015
  this.placePopoverAboveClosestModal();
@@ -6024,8 +6029,13 @@
6024
6029
  }
6025
6030
  };
6026
6031
  // document.removeEventListener needs the exact same event handler & options reference:
6027
- PopoverComponent.prototype.preventEvent = function (event) {
6028
- event.preventDefault();
6032
+ PopoverComponent.preventEventOutsidePopover = function (event) {
6033
+ if (event.target instanceof HTMLElement) {
6034
+ var targetIsInPopover = !!event.target.closest('kirby-popover');
6035
+ if (!targetIsInPopover) {
6036
+ event.preventDefault();
6037
+ }
6038
+ }
6029
6039
  };
6030
6040
  PopoverComponent.prototype.preventScroll = function () {
6031
6041
  this.isFirstToLockScroll = !this.document.body.classList.contains('backdrop-no-scroll');
@@ -6033,13 +6043,13 @@
6033
6043
  this.renderer.addClass(this.document.body, 'backdrop-no-scroll');
6034
6044
  }
6035
6045
  // preventDefault does not work with Renderer2.listen method; add event listener directly to document instead
6036
- this.document.addEventListener('touchmove', this.preventEvent, this.preventScrollEventListenerOptions);
6046
+ this.document.addEventListener('touchmove', PopoverComponent.preventEventOutsidePopover, this.preventScrollEventListenerOptions);
6037
6047
  };
6038
6048
  PopoverComponent.prototype.releaseScroll = function () {
6039
6049
  if (this.isFirstToLockScroll) {
6040
6050
  this.renderer.removeClass(this.document.body, 'backdrop-no-scroll');
6041
6051
  }
6042
- this.document.removeEventListener('touchmove', this.preventEvent, this.preventScrollEventListenerOptions);
6052
+ this.document.removeEventListener('touchmove', PopoverComponent.preventEventOutsidePopover, this.preventScrollEventListenerOptions);
6043
6053
  };
6044
6054
  PopoverComponent.prototype.show = function () {
6045
6055
  this.renderer.addClass(this.elementRef.nativeElement, 'is-opening');
@@ -6051,7 +6061,10 @@
6051
6061
  this.isShowing = true;
6052
6062
  };
6053
6063
  PopoverComponent.prototype.hide = function () {
6054
- this.renderer.removeChild(this.document.body, this.elementRef.nativeElement);
6064
+ if (!this.isShowing)
6065
+ return;
6066
+ this.willHide.emit();
6067
+ this.renderer.removeChild(this.elementRef.nativeElement.parentElement, this.elementRef.nativeElement);
6055
6068
  this.releaseScroll();
6056
6069
  this.renderer.removeStyle(this.targetElement, 'z-index');
6057
6070
  this.renderer.removeStyle(this.targetElement, 'pointer-events');
@@ -6104,7 +6117,7 @@
6104
6117
  PopoverComponent.decorators = [
6105
6118
  { type: i0.Component, args: [{
6106
6119
  selector: 'kirby-popover',
6107
- template: "\n <div #wrapper class=\"wrapper\"><ng-content></ng-content></div>\n ",
6120
+ template: " <div #wrapper class=\"wrapper\"><ng-content></ng-content></div> ",
6108
6121
  styles: [":host{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:850}:host(.is-opening){display:block;visibility:hidden}:host(.is-open){display:block}.wrapper{position:fixed;margin-top:4px;margin-bottom:4px}"]
6109
6122
  },] }
6110
6123
  ];
@@ -6118,7 +6131,6 @@
6118
6131
  popout: [{ type: i0.Input }],
6119
6132
  target: [{ type: i0.Input }],
6120
6133
  willHide: [{ type: i0.Output }],
6121
- _backdropClick: [{ type: i0.HostListener, args: ['click',] }],
6122
6134
  _onWindowResize: [{ type: i0.HostListener, args: ['window:resize',] }]
6123
6135
  };
6124
6136
 
@@ -6619,7 +6631,7 @@
6619
6631
  multi: true,
6620
6632
  },
6621
6633
  ],
6622
- styles: [":host{display:inline-block;position:relative;max-width:calc(100vw - 32px);outline:none}:host.expand{display:block}:host.expand kirby-card{width:100%;min-width:0;max-width:none}@media (hover:hover){:host:focus>button,:host:focus>button.attention-level3{border-color:#4d90fe}}:host.error>button,:host.ng-touched.ng-invalid>button{border-color:var(--kirby-danger)}:host>button{position:relative;margin:0;outline:none;width:100%;transition:box-shadow .2s,border-color .2s}:host>button.attention-level2{border:1px solid transparent}:host>button .text{overflow:hidden;text-overflow:ellipsis}kirby-popover{--max-height:352px}kirby-card{max-height:352px;margin-top:4px;margin-bottom:4px;overflow-y:auto;box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);min-width:288px;max-width:calc(100vw - 32px)}@media (min-width:321px){kirby-card{min-width:343px}}:host(:not(.with-popover)) kirby-card{display:none;opacity:0;position:absolute;z-index:800}:host(:not(.with-popover)).is-opening kirby-card{display:block}:host(:not(.with-popover)).is-open kirby-card{display:block;opacity:1}:host(:not(.with-popover)).popout-left kirby-card{right:0}:host(:not(.with-popover)).popout-up kirby-card{top:0;margin-top:-4px;transform:translateY(-100%)}:host(:not(.with-popover)).popout-up.is-open>button{z-index:801}:host(.is-open)>button{box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08)}:host-context(kirby-calendar)>button{border-color:transparent;font-weight:700;font-size:medium}:host-context(kirby-calendar).is-open>button{box-shadow:none}"]
6634
+ styles: [":host{display:inline-block;position:relative;max-width:calc(100vw - 32px);outline:none}:host.expand{display:block}:host.expand kirby-card{width:100%;min-width:0;max-width:none}@media (hover:hover){:host:focus>button,:host:focus>button.attention-level3{border-color:#4d90fe}}:host.error>button,:host.ng-touched.ng-invalid>button{border-color:var(--kirby-danger)}:host>button{position:relative;margin:0;outline:none;width:100%;transition:box-shadow .2s,border-color .2s}:host>button.attention-level2{border:1px solid transparent}:host>button .text{overflow:hidden;text-overflow:ellipsis}kirby-popover{--max-height:352px}kirby-card{max-height:352px;margin-top:4px;margin-bottom:4px;overflow-y:auto;box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);min-width:288px;max-width:calc(100vw - 32px)}@media (min-width:321px){kirby-card{min-width:343px}}:host(:not(.with-popover)) kirby-card{display:none;opacity:0;position:absolute;z-index:800}:host(:not(.with-popover)).is-opening kirby-card{display:block}:host(:not(.with-popover)).is-open kirby-card{display:block;opacity:1}:host(:not(.with-popover)).popout-left kirby-card{right:0}:host(:not(.with-popover)).popout-up kirby-card{top:0;margin-top:-4px;transform:translateY(-100%)}:host(:not(.with-popover)).popout-up.is-open>button{z-index:801}:host(.with-popover).is-open kirby-card{display:block}:host(.is-open)>button{box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08)}:host-context(kirby-calendar)>button{border-color:transparent;font-weight:700;font-size:medium}:host-context(kirby-calendar).is-open>button{box-shadow:none}"]
6623
6635
  },] }
6624
6636
  ];
6625
6637
  /** @nocollapse */
@@ -7041,8 +7053,7 @@
7041
7053
  InputCounterComponent.decorators = [
7042
7054
  { type: i0.Component, args: [{
7043
7055
  selector: 'kirby-input-counter',
7044
- template: "<kirby-form-field-message [text]=\"text\"></kirby-form-field-message>\n",
7045
- styles: [""]
7056
+ template: "<kirby-form-field-message [text]=\"text\"></kirby-form-field-message>\n"
7046
7057
  },] }
7047
7058
  ];
7048
7059
  InputCounterComponent.propDecorators = {
@@ -7095,7 +7106,7 @@
7095
7106
  // tslint:disable-next-line:component-selector
7096
7107
  selector: 'input[kirby-input]',
7097
7108
  template: '',
7098
- styles: [":host(.error){border:1px solid var(--kirby-danger)}:host(.cloned-input){pointer-events:none;position:absolute;top:0;left:0}:host-context(label).cloned-input{top:24px}:host{background-color:var(--kirby-white);color:var(--kirby-white-contrast);border:none;box-sizing:border-box;display:block;font-family:var(--kirby-font-family);font-size:16px;line-height:24px;outline:none;margin:0;-webkit-appearance:none;border-radius:16px;box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);padding:16px;width:100%}:host.borderless,:host:host-context(kirby-item){border-radius:0;box-shadow:none;padding:0;width:auto}:host:disabled{background-color:var(--kirby-light-tint);color:var(--kirby-text-color-semi-dark);box-shadow:none}:host::placeholder{color:var(--kirby-text-color-semi-dark)}:host::-ms-input-placeholder,:host::-webkit-input-placeholder{color:var(--kirby-text-color-semi-dark)}:host{height:56px}:host[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}:host::-webkit-inner-spin-button,:host::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}:host(.md){height:40px;border-radius:24px}:host-context(kirby-item kirby-form-field[slot=end])[type=number]{font-weight:700}.date-mask-wrapper{position:relative}:host-context(.date-mask-wrapper){color:var(--kirby-text-color-semi-dark)}.date-mask{font-family:var(--kirby-font-family);font-size:16px;line-height:24px;color:var(--kirby-white-contrast);position:absolute;top:0;left:0;margin:16px}"]
7109
+ styles: [":host(.error){border:1px solid var(--kirby-danger)}:host(.cloned-input){pointer-events:none;position:absolute;top:0;left:0}:host-context(label).cloned-input{top:24px}:host{background-color:var(--kirby-white);color:var(--kirby-white-contrast);border:none;box-sizing:border-box;display:block;font-family:var(--kirby-font-family);font-size:16px;line-height:24px;outline:none;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:16px;box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);padding:16px;width:100%}:host.borderless,:host:host-context(kirby-item){border-radius:0;box-shadow:none;padding:0;width:auto}:host:disabled{background-color:var(--kirby-light-tint);color:var(--kirby-text-color-semi-dark);box-shadow:none}:host::placeholder{color:var(--kirby-text-color-semi-dark)}:host{height:56px}:host[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}:host::-webkit-inner-spin-button,:host::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}:host(.md){height:40px;border-radius:24px}:host-context(kirby-item kirby-form-field[slot=end])[type=number]{font-weight:700}.date-mask-wrapper{position:relative}:host-context(.date-mask-wrapper){color:var(--kirby-text-color-semi-dark)}.date-mask{font-family:var(--kirby-font-family);font-size:16px;line-height:24px;color:var(--kirby-white-contrast);position:absolute;top:0;left:0;margin:16px}"]
7099
7110
  },] }
7100
7111
  ];
7101
7112
  InputComponent.propDecorators = {
@@ -7139,7 +7150,7 @@
7139
7150
  // tslint:disable-next-line:component-selector
7140
7151
  selector: 'textarea[kirby-textarea]',
7141
7152
  template: "<ng-content *ngIf=\"!value\"></ng-content>\n<ng-container *ngIf=\"value\">{{ value }}</ng-container>\n",
7142
- styles: [":host(.error){border:1px solid var(--kirby-danger)}:host(.cloned-input){pointer-events:none;position:absolute;top:0;left:0}:host-context(label).cloned-input{top:24px}:host{background-color:var(--kirby-white);color:var(--kirby-white-contrast);border:none;box-sizing:border-box;display:block;font-size:16px;line-height:24px;outline:none;margin:0;-webkit-appearance:none;border-radius:16px;box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);padding:16px;width:100%}:host.borderless,:host:host-context(kirby-item){border-radius:0;box-shadow:none;padding:0;width:auto}:host:disabled{background-color:var(--kirby-light-tint);color:var(--kirby-text-color-semi-dark);box-shadow:none}:host::placeholder{color:var(--kirby-text-color-semi-dark)}:host::-ms-input-placeholder,:host::-webkit-input-placeholder{color:var(--kirby-text-color-semi-dark)}:host{font-family:var(--kirby-font-family);resize:none}@media (min-width:721px){:host{resize:vertical}}"]
7153
+ styles: [":host(.error){border:1px solid var(--kirby-danger)}:host(.cloned-input){pointer-events:none;position:absolute;top:0;left:0}:host-context(label).cloned-input{top:24px}:host{background-color:var(--kirby-white);color:var(--kirby-white-contrast);border:none;box-sizing:border-box;display:block;font-size:16px;line-height:24px;outline:none;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:16px;box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);padding:16px;width:100%}:host.borderless,:host:host-context(kirby-item){border-radius:0;box-shadow:none;padding:0;width:auto}:host:disabled{background-color:var(--kirby-light-tint);color:var(--kirby-text-color-semi-dark);box-shadow:none}:host::placeholder{color:var(--kirby-text-color-semi-dark)}:host{font-family:var(--kirby-font-family);resize:none}@media (min-width:721px){:host{resize:vertical}}"]
7143
7154
  },] }
7144
7155
  ];
7145
7156
  TextareaComponent.propDecorators = {
@@ -7511,6 +7522,7 @@
7511
7522
  var closeIcon = fabButtonElement.shadowRoot.querySelector('.close-icon ion-icon');
7512
7523
  if (closeIcon) {
7513
7524
  var closeIconSvgLoaded = closeIcon.shadowRoot.querySelector('.icon-inner svg');
7525
+ // prettier-ignore
7514
7526
  var ionCloseIcon = closeIcon;
7515
7527
  if (ionCloseIcon && closeIconSvgLoaded) {
7516
7528
  ionCloseIcon.src = kirbyCloseIcon.svg;
@@ -8191,7 +8203,7 @@
8191
8203
  selector: 'kirby-list',
8192
8204
  template: "<ion-list\n #list\n kirbyInfiniteScroll\n (scrollEnd)=\"_onLoadOnDemand()\"\n [disabled]=\"!isLoadOnDemandEnabled\"\n class=\"list\"\n [class.has-header]=\"headerTemplate\"\n [class.has-footer]=\"footerTemplate\"\n [class.has-divider]=\"showDivider\"\n>\n <ion-list-header *ngIf=\"headerTemplate\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </ion-list-header>\n\n <ng-container\n *ngTemplateOutlet=\"\n _isSectionsEnabled ? groupedListTemplate : itemsTemplate;\n context: { $implicit: items }\n \"\n ></ng-container>\n\n <div *ngIf=\"footerTemplate\" class=\"footer\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</ion-list>\n\n<p *ngIf=\"!isLoadOnDemandEnabled && noMoreItemsText\" class=\"no-more-items\">\n {{ noMoreItemsText }}\n</p>\n<div *ngIf=\"_isLoading\" class=\"loading\">\n <kirby-spinner></kirby-spinner>\n</div>\n\n<ng-template #groupedListTemplate>\n <ion-item-group *ngFor=\"let section of _groupedItems; trackBy: sectionTrackBy\">\n <ion-item-divider>\n <ng-container\n *ngTemplateOutlet=\"sectionHeaderTemplate; context: { $implicit: section.name }\"\n ></ng-container>\n </ion-item-divider>\n\n <div class=\"list-items\">\n <ng-container\n *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: section.items }\"\n ></ng-container>\n </div>\n </ion-item-group>\n</ng-template>\n\n<ng-template #itemsTemplate let-items>\n <kirby-list-item\n *ngFor=\"let item of items; let i = index; trackBy: trackBy || defaultTrackBy\"\n [item]=\"item\"\n [itemTemplate]=\"itemTemplate\"\n [swipeActions]=\"swipeActions\"\n [boundaryClass]=\"_getBoundaryClass(i, items)\"\n [isSelectable]=\"_isSelectable\"\n [getItemColor]=\"getItemColor\"\n [isSelected]=\"_isSelectable && item === _selectedItem\"\n (itemSelect)=\"onItemSelect($event)\"\n (swipeActionSelect)=\"onSwipeActionSelect($event)\"\n [class.is-single]=\"items.length === 1\"\n >\n </kirby-list-item>\n</ng-template>\n",
8193
8205
  providers: [ListHelper, GroupByPipe],
8194
- styles: ["ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}:host{display:block}.list{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);background:transparent;contain:inherit;padding:0}ion-list-header{background-color:var(--kirby-white);border-bottom:1px solid var(--kirby-background-color);padding:0;text-transform:inherit;letter-spacing:inherit;font-weight:inherit;font-size:inherit;min-height:0;overflow:inherit}ion-item{--background:var(--kirby-white);--background-activated:var(--kirby-white-shade);--background-hover:var(--kirby-background-color);--background-focused:var(--kirby-background-color);--inner-border-width:0;--ion-safe-area-right:0;--min-height:56px;--padding-bottom:8px;--padding-end:16px;--padding-start:16px;--padding-top:8px;display:flex;font-size:14px;min-height:56px;overflow:visible;width:100%}ion-item-divider{font-weight:inherit}ion-item-sliding.item-sliding-active-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}ion-item-sliding.light{--kirby-item-background:var(--kirby-light);--kirby-item-background-activated:var(--kirby-light-shade);--kirby-item-background-focused:var(--kirby-light-shade);--kirby-item-background-hover:var(--kirby-light-tint)}ion-item-sliding.light ion-item{--background:var(--kirby-light);--color:var(--kirby-light-contrast);--background-activated:var(--kirby-light-shade);--background-focused:var(--kirby-light-shade);--background-hover:var(--kirby-light-tint)}ion-item-group{margin-bottom:24px}ion-item-group:last-of-type{margin-bottom:0}ion-item-divider{--inner-padding-end:0;--color:unset;background-color:transparent;border-color:transparent;min-height:0;padding:0 16px 8px}.footer{background-color:var(--kirby-white);border-top:1px solid var(--kirby-background-color);display:flex;align-items:center;justify-content:space-between;width:100%}.loading,.no-more-items{width:100%;padding:24px 0;text-align:center}.swipe-action{display:flex;color:var(--kirby-black);background-color:transparent}.swipe-action ion-item-option{height:100%;display:inline-block;text-align:center}.swipe-action .item-content{display:inline-grid;min-width:70px;flex-direction:column}.swipe-action .item-content ion-label{--background:unset;--color:unset}ion-item-options[side=end]{border-bottom-width:0}:host-context(.has-sections) .list{box-shadow:none}:host-context(.has-sections) .list-items{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);border-radius:16px}:host-context(.has-sections) .footer{background-color:transparent;border-top:none}:host-context(.has-sections) ion-list-header{background-color:transparent;border-bottom:none}:host-context(.shape-rounded) .list,:host-context(.shape-rounded) .list-items{border-radius:16px}:host-context(.shape-rounded) ion-item-sliding.first,:host-context(.shape-rounded) ion-item.first,:host-context(.shape-rounded) ion-list-header{border-top-left-radius:16px;border-top-right-radius:16px;-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-header ion-item,:host-context(.shape-rounded):not(.has-sections) .has-header ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-top-left-radius:0;border-top-right-radius:0}:host-context(.shape-rounded) .footer,:host-context(.shape-rounded) ion-item-sliding.last,:host-context(.shape-rounded) ion-item.last{border-bottom-left-radius:16px;border-bottom-right-radius:16px;-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item,:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-bottom-left-radius:0;border-bottom-right-radius:0}:host-context(.shape-none) .list,:host-context(.shape-none) .list-items{box-shadow:none;border-radius:unset}:host-context(.shape-none) .list ion-item,:host-context(.shape-none) .list ion-item-sliding{--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;--inner-padding-start:0;--inner-padding-end:0;--inner-padding-top:0;--inner-padding-bottom:0;--background:none;--background-activated:none;--background-hover:none;--background-focused:none;overflow:visible}:host-context(.item-spacing) .list kirby-list-item{margin-bottom:16px}:host-context(.item-spacing) .list kirby-list-item:last-child,:host-context(.item-spacing) .list kirby-list-item>ion-item{margin-bottom:0}"]
8206
+ styles: ["ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}:host{display:block}.list{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);background:transparent;contain:inherit;padding:0}ion-list-header{background-color:var(--kirby-white);border-bottom:1px solid var(--kirby-background-color);padding:0;text-transform:inherit;letter-spacing:inherit;font-weight:inherit;font-size:inherit;min-height:0;overflow:inherit}ion-item{--background:var(--kirby-white);--background-activated:var(--kirby-white-shade);--background-hover:var(--kirby-background-color);--background-focused:var(--kirby-background-color);--inner-border-width:0;--ion-safe-area-right:0;--min-height:56px;--padding-bottom:8px;--padding-end:16px;--padding-start:16px;--padding-top:8px;display:flex;font-size:14px;min-height:56px;overflow:visible;width:100%}ion-item-sliding.item-sliding-active-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}ion-item-sliding.light{--kirby-item-background:var(--kirby-light);--kirby-item-background-activated:var(--kirby-light-shade);--kirby-item-background-focused:var(--kirby-light-shade);--kirby-item-background-hover:var(--kirby-light-tint)}ion-item-sliding.light ion-item{--background:var(--kirby-light);--color:var(--kirby-light-contrast);--background-activated:var(--kirby-light-shade);--background-focused:var(--kirby-light-shade);--background-hover:var(--kirby-light-tint)}ion-item-group{margin-bottom:24px}ion-item-group:last-of-type{margin-bottom:0}ion-item-divider{--inner-padding-end:0;--color:unset;background-color:transparent;border-color:transparent;min-height:0;padding:0 16px 8px;font-weight:inherit}.footer{background-color:var(--kirby-white);border-top:1px solid var(--kirby-background-color);display:flex;align-items:center;justify-content:space-between;width:100%}.loading,.no-more-items{width:100%;padding:24px 0;text-align:center}.swipe-action{display:flex;color:var(--kirby-black);background-color:transparent}.swipe-action ion-item-option{height:100%;display:inline-block;text-align:center}.swipe-action .item-content{display:inline-grid;min-width:70px;flex-direction:column}.swipe-action .item-content ion-label{--background:unset;--color:unset}ion-item-options[side=end]{border-bottom-width:0}:host-context(.has-sections) .list{box-shadow:none}:host-context(.has-sections) .list-items{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);border-radius:16px}:host-context(.has-sections) .footer{background-color:transparent;border-top:none}:host-context(.has-sections) ion-list-header{background-color:transparent;border-bottom:none}:host-context(.shape-rounded) .list,:host-context(.shape-rounded) .list-items{border-radius:16px}:host-context(.shape-rounded) ion-item-sliding.first,:host-context(.shape-rounded) ion-item.first,:host-context(.shape-rounded) ion-list-header{border-top-left-radius:16px;border-top-right-radius:16px;-webkit-mask-image:radial-gradient(#fff,#000);mask-image:radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-header ion-item,:host-context(.shape-rounded):not(.has-sections) .has-header ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-top-left-radius:0;border-top-right-radius:0}:host-context(.shape-rounded) .footer,:host-context(.shape-rounded) ion-item-sliding.last,:host-context(.shape-rounded) ion-item.last{border-bottom-left-radius:16px;border-bottom-right-radius:16px;-webkit-mask-image:radial-gradient(#fff,#000);mask-image:radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item,:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-bottom-left-radius:0;border-bottom-right-radius:0}:host-context(.shape-none) .list,:host-context(.shape-none) .list-items{box-shadow:none;border-radius:unset}:host-context(.shape-none) .list ion-item,:host-context(.shape-none) .list ion-item-sliding{--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;--inner-padding-start:0;--inner-padding-end:0;--inner-padding-top:0;--inner-padding-bottom:0;--background:none;--background-activated:none;--background-hover:none;--background-focused:none;overflow:visible}:host-context(.item-spacing) .list kirby-list-item{margin-bottom:16px}:host-context(.item-spacing) .list kirby-list-item:last-child,:host-context(.item-spacing) .list kirby-list-item>ion-item{margin-bottom:0}"]
8195
8207
  },] }
8196
8208
  ];
8197
8209
  /** @nocollapse */
@@ -8250,8 +8262,7 @@
8250
8262
  ListSectionHeaderComponent.decorators = [
8251
8263
  { type: i0.Component, args: [{
8252
8264
  selector: 'kirby-list-section-header',
8253
- template: "<div class=\"header\">\n <span class=\"kirby-text-small\">{{ title }}</span>\n</div>\n",
8254
- styles: [""]
8265
+ template: "<div class=\"header\">\n <span class=\"kirby-text-small\">{{ title }}</span>\n</div>\n"
8255
8266
  },] }
8256
8267
  ];
8257
8268
  /** @nocollapse */
@@ -8358,7 +8369,7 @@
8358
8369
  { type: i0.Component, args: [{
8359
8370
  selector: 'kirby-list-item',
8360
8371
  template: "<ion-item-sliding\n [class.selected]=\"isSelected\"\n [kirbyListItemColor]=\"getItemColor\"\n [item]=\"item\"\n [disabled]=\"_isSwipingEnabled ? null : true\"\n keyHandler\n [ngClass]=\"boundaryClass\"\n (click)=\"_onItemSelect(item)\"\n>\n <ng-container\n *ngTemplateOutlet=\"swipeActionsTemplate; context: { $implicit: item }\"\n ></ng-container>\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n</ion-item-sliding>\n\n<ng-template #swipeActionsTemplate let-item>\n <ion-item-options *ngIf=\"_hasSwipeActions(item)\" [side]=\"_getSwipeActionEnd(item)\">\n <div class=\"swipe-action\">\n <ng-container *ngFor=\"let swipeAction of _getSwipeActions(item)\">\n <ion-item-option\n [ngClass]=\"_getSwipeActionType(swipeAction, item)\"\n (click)=\"_onSwipeActionSelect(swipeAction, item, $event)\"\n >\n <div class=\"item-content\">\n <kirby-icon\n *ngIf=\"_getSwipeActionIcon(swipeAction, item)\"\n size=\"sm\"\n [name]=\"_getSwipeActionIcon(swipeAction, item)\"\n >\n </kirby-icon>\n <ion-label>\n {{ _getSwipeActionTitle(swipeAction, item) }}\n </ion-label>\n </div>\n </ion-item-option>\n </ng-container>\n </div>\n </ion-item-options>\n</ng-template>\n",
8361
- styles: ["ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}:host{display:block}.list{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);background:transparent;contain:inherit;padding:0}ion-list-header{background-color:var(--kirby-white);border-bottom:1px solid var(--kirby-background-color);padding:0;text-transform:inherit;letter-spacing:inherit;font-weight:inherit;font-size:inherit;min-height:0;overflow:inherit}ion-item{--background:var(--kirby-white);--background-activated:var(--kirby-white-shade);--background-hover:var(--kirby-background-color);--background-focused:var(--kirby-background-color);--inner-border-width:0;--ion-safe-area-right:0;--min-height:56px;--padding-bottom:8px;--padding-end:16px;--padding-start:16px;--padding-top:8px;display:flex;font-size:14px;min-height:56px;overflow:visible;width:100%}ion-item-divider{font-weight:inherit}ion-item-sliding.item-sliding-active-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}ion-item-sliding.light{--kirby-item-background:var(--kirby-light);--kirby-item-background-activated:var(--kirby-light-shade);--kirby-item-background-focused:var(--kirby-light-shade);--kirby-item-background-hover:var(--kirby-light-tint)}ion-item-sliding.light ion-item{--background:var(--kirby-light);--color:var(--kirby-light-contrast);--background-activated:var(--kirby-light-shade);--background-focused:var(--kirby-light-shade);--background-hover:var(--kirby-light-tint)}ion-item-group{margin-bottom:24px}ion-item-group:last-of-type{margin-bottom:0}ion-item-divider{--inner-padding-end:0;--color:unset;background-color:transparent;border-color:transparent;min-height:0;padding:0 16px 8px}.footer{background-color:var(--kirby-white);border-top:1px solid var(--kirby-background-color);display:flex;align-items:center;justify-content:space-between;width:100%}.loading,.no-more-items{width:100%;padding:24px 0;text-align:center}.swipe-action{display:flex;color:var(--kirby-black);background-color:transparent}.swipe-action ion-item-option{height:100%;display:inline-block;text-align:center}.swipe-action .item-content{display:inline-grid;min-width:70px;flex-direction:column}.swipe-action .item-content ion-label{--background:unset;--color:unset}ion-item-options[side=end]{border-bottom-width:0}:host-context(.has-sections) .list{box-shadow:none}:host-context(.has-sections) .list-items{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);border-radius:16px}:host-context(.has-sections) .footer{background-color:transparent;border-top:none}:host-context(.has-sections) ion-list-header{background-color:transparent;border-bottom:none}:host-context(.shape-rounded) .list,:host-context(.shape-rounded) .list-items{border-radius:16px}:host-context(.shape-rounded) ion-item-sliding.first,:host-context(.shape-rounded) ion-item.first,:host-context(.shape-rounded) ion-list-header{border-top-left-radius:16px;border-top-right-radius:16px;-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-header ion-item,:host-context(.shape-rounded):not(.has-sections) .has-header ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-top-left-radius:0;border-top-right-radius:0}:host-context(.shape-rounded) .footer,:host-context(.shape-rounded) ion-item-sliding.last,:host-context(.shape-rounded) ion-item.last{border-bottom-left-radius:16px;border-bottom-right-radius:16px;-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item,:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-bottom-left-radius:0;border-bottom-right-radius:0}:host-context(.shape-none) .list,:host-context(.shape-none) .list-items{box-shadow:none;border-radius:unset}:host-context(.shape-none) .list ion-item,:host-context(.shape-none) .list ion-item-sliding{--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;--inner-padding-start:0;--inner-padding-end:0;--inner-padding-top:0;--inner-padding-bottom:0;--background:none;--background-activated:none;--background-hover:none;--background-focused:none;overflow:visible}:host-context(.item-spacing) .list kirby-list-item{margin-bottom:16px}:host-context(.item-spacing) .list kirby-list-item:last-child,:host-context(.item-spacing) .list kirby-list-item>ion-item{margin-bottom:0}", ":host{overflow:hidden}:host-context(.has-divider) ion-item-sliding:not(.last){border-bottom:1px solid var(--kirby-background-color)}"]
8372
+ styles: ["ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}:host{display:block}.list{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);background:transparent;contain:inherit;padding:0}ion-list-header{background-color:var(--kirby-white);border-bottom:1px solid var(--kirby-background-color);padding:0;text-transform:inherit;letter-spacing:inherit;font-weight:inherit;font-size:inherit;min-height:0;overflow:inherit}ion-item{--background:var(--kirby-white);--background-activated:var(--kirby-white-shade);--background-hover:var(--kirby-background-color);--background-focused:var(--kirby-background-color);--inner-border-width:0;--ion-safe-area-right:0;--min-height:56px;--padding-bottom:8px;--padding-end:16px;--padding-start:16px;--padding-top:8px;display:flex;font-size:14px;min-height:56px;overflow:visible;width:100%}ion-item-sliding.item-sliding-active-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}ion-item-sliding.light{--kirby-item-background:var(--kirby-light);--kirby-item-background-activated:var(--kirby-light-shade);--kirby-item-background-focused:var(--kirby-light-shade);--kirby-item-background-hover:var(--kirby-light-tint)}ion-item-sliding.light ion-item{--background:var(--kirby-light);--color:var(--kirby-light-contrast);--background-activated:var(--kirby-light-shade);--background-focused:var(--kirby-light-shade);--background-hover:var(--kirby-light-tint)}ion-item-group{margin-bottom:24px}ion-item-group:last-of-type{margin-bottom:0}ion-item-divider{--inner-padding-end:0;--color:unset;background-color:transparent;border-color:transparent;min-height:0;padding:0 16px 8px;font-weight:inherit}.footer{background-color:var(--kirby-white);border-top:1px solid var(--kirby-background-color);display:flex;align-items:center;justify-content:space-between;width:100%}.loading,.no-more-items{width:100%;padding:24px 0;text-align:center}.swipe-action{display:flex;color:var(--kirby-black);background-color:transparent}.swipe-action ion-item-option{height:100%;display:inline-block;text-align:center}.swipe-action .item-content{display:inline-grid;min-width:70px;flex-direction:column}.swipe-action .item-content ion-label{--background:unset;--color:unset}ion-item-options[side=end]{border-bottom-width:0}:host-context(.has-sections) .list{box-shadow:none}:host-context(.has-sections) .list-items{box-shadow:0 5px 10px -10px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);border-radius:16px}:host-context(.has-sections) .footer{background-color:transparent;border-top:none}:host-context(.has-sections) ion-list-header{background-color:transparent;border-bottom:none}:host-context(.shape-rounded) .list,:host-context(.shape-rounded) .list-items{border-radius:16px}:host-context(.shape-rounded) ion-item-sliding.first,:host-context(.shape-rounded) ion-item.first,:host-context(.shape-rounded) ion-list-header{border-top-left-radius:16px;border-top-right-radius:16px;-webkit-mask-image:radial-gradient(#fff,#000);mask-image:radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-header ion-item,:host-context(.shape-rounded):not(.has-sections) .has-header ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-top-left-radius:0;border-top-right-radius:0}:host-context(.shape-rounded) .footer,:host-context(.shape-rounded) ion-item-sliding.last,:host-context(.shape-rounded) ion-item.last{border-bottom-left-radius:16px;border-bottom-right-radius:16px;-webkit-mask-image:radial-gradient(#fff,#000);mask-image:radial-gradient(#fff,#000)}:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item,:host-context(.shape-rounded):not(.has-sections) .has-footer ion-item-sliding,:host-context(.shape-rounded) ion-item-sliding>ion-item{border-bottom-left-radius:0;border-bottom-right-radius:0}:host-context(.shape-none) .list,:host-context(.shape-none) .list-items{box-shadow:none;border-radius:unset}:host-context(.shape-none) .list ion-item,:host-context(.shape-none) .list ion-item-sliding{--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;--inner-padding-start:0;--inner-padding-end:0;--inner-padding-top:0;--inner-padding-bottom:0;--background:none;--background-activated:none;--background-hover:none;--background-focused:none;overflow:visible}:host-context(.item-spacing) .list kirby-list-item{margin-bottom:16px}:host-context(.item-spacing) .list kirby-list-item:last-child,:host-context(.item-spacing) .list kirby-list-item>ion-item{margin-bottom:0}", ":host{overflow:hidden}:host-context(.has-divider) ion-item-sliding:not(.last){border-bottom:1px solid var(--kirby-background-color)}"]
8362
8373
  },] }
8363
8374
  ];
8364
8375
  /** @nocollapse */
@@ -8508,8 +8519,8 @@
8508
8519
  ReorderListComponent.decorators = [
8509
8520
  { type: i0.Component, args: [{
8510
8521
  selector: 'kirby-reorder-list',
8511
- template: "<ion-backdrop *ngIf=\"reorderActive\" [tappable]=\"false\" [visible]=\"true\" [stopPropagation]=\"false\">\n</ion-backdrop>\n<ion-reorder-group (ionItemReorder)=\"doReorder($event)\" disabled=\"false\">\n <div *ngFor=\"let reorderItem of items\" class=\"outerGroup\">\n <kirby-card>\n <ng-container\n *ngTemplateOutlet=\"itemTemplate || defaultItemTemplate; context: { $implicit: reorderItem }\"\n >\n </ng-container>\n <div *ngIf=\"reorderItem[subItemsName]\" #reorderGroupContainer>\n <ion-reorder-group (ionItemReorder)=\"doSubReorder($event, reorderItem)\" disabled=\"false\">\n <div *ngFor=\"let subItem of reorderItem[subItemsName]\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate || defaultItemTemplate;\n context: { $implicit: subItem, isSubItem: true }\n \"\n ></ng-container>\n </div>\n </ion-reorder-group>\n </div>\n </kirby-card>\n </div>\n</ion-reorder-group>\n\n<ng-template #defaultItemTemplate let-item let-isSubItem>\n <kirby-item [reorderable]=\"true\">\n <h3>{{ getItemTextDefault(item) }}</h3>\n </kirby-item>\n</ng-template>\n",
8512
- styles: ["ion-backdrop{opacity:.3;z-index:101;position:fixed}.reorder-selected{box-shadow:none;opacity:1;z-index:104}.reorder-selected kirby-card{transform:scale(1.05)}.reorder-selected kirby-card div:first-child{border-top:1px solid var(--kirby-background-color)}.reorder-selected ::ng-deep>kirby-item{box-shadow:0 0 10px rgba(0,0,0,.4);transform:scale(1.05);border-radius:16px;overflow:hidden}.reorder-list-active>*{position:relative;z-index:103}.reorder-list-active>.reorder-selected{z-index:104}.reorder-list-active div:first-child{border-top:none}.reorder-list-active ::ng-deep>div:last-child kirby-item{border-bottom-left-radius:16px;border-bottom-right-radius:16px;overflow:hidden}.reorder-list-active .reorder-selected ::ng-deep>kirby-item{box-shadow:0 0 10px rgba(0,0,0,.4);transform:scale(1.05);border-radius:16px;overflow:hidden}.outerGroup{border-bottom:20px solid transparent}kirby-card{overflow:inherit;z-index:auto}kirby-card ::ng-deep>div:last-child ion-reorder-group div:last-child>kirby-item{border-bottom-left-radius:16px;border-bottom-right-radius:16px;overflow:hidden}kirby-card ::ng-deep>div kirby-item{z-index:1}kirby-card ::ng-deep>div:first-child>kirby-item{border-radius:16px;overflow:hidden}kirby-card ::ng-deep>div .reorder-list-active kirby-item{z-index:103}kirby-card div:first-child{border-top:1px solid var(--kirby-background-color)}"]
8522
+ template: "<ion-backdrop *ngIf=\"reorderActive\" [tappable]=\"false\" [visible]=\"true\" [stopPropagation]=\"false\">\n</ion-backdrop>\n<ion-reorder-group (ionItemReorder)=\"doReorder($event)\" disabled=\"false\">\n <div *ngFor=\"let reorderItem of items\" class=\"outer-group\">\n <kirby-card>\n <ng-container\n *ngTemplateOutlet=\"itemTemplate || defaultItemTemplate; context: { $implicit: reorderItem }\"\n >\n </ng-container>\n <div *ngIf=\"reorderItem[subItemsName]\" #reorderGroupContainer>\n <ion-reorder-group (ionItemReorder)=\"doSubReorder($event, reorderItem)\" disabled=\"false\">\n <div *ngFor=\"let subItem of reorderItem[subItemsName]\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate || defaultItemTemplate;\n context: { $implicit: subItem, isSubItem: true }\n \"\n ></ng-container>\n </div>\n </ion-reorder-group>\n </div>\n </kirby-card>\n </div>\n</ion-reorder-group>\n\n<ng-template #defaultItemTemplate let-item let-isSubItem>\n <kirby-item [reorderable]=\"true\">\n <h3>{{ getItemTextDefault(item) }}</h3>\n </kirby-item>\n</ng-template>\n",
8523
+ styles: ["ion-backdrop{opacity:.3;z-index:101;position:fixed}.reorder-selected{box-shadow:none;opacity:1;z-index:104}.reorder-selected kirby-card{transform:scale(1.05)}.reorder-selected kirby-card div:first-child{border-top:1px solid var(--kirby-background-color)}.reorder-selected ::ng-deep>kirby-item{box-shadow:0 0 10px rgba(0,0,0,.4);transform:scale(1.05);border-radius:16px;overflow:hidden}.reorder-list-active>*{position:relative;z-index:103}.reorder-list-active>.reorder-selected{z-index:104}.reorder-list-active div:first-child{border-top:none}.reorder-list-active ::ng-deep>div:last-child kirby-item{border-bottom-left-radius:16px;border-bottom-right-radius:16px;overflow:hidden}.reorder-list-active .reorder-selected ::ng-deep>kirby-item{box-shadow:0 0 10px rgba(0,0,0,.4);transform:scale(1.05);border-radius:16px;overflow:hidden}.outer-group{border-bottom:20px solid transparent}kirby-card{overflow:inherit;z-index:auto}kirby-card ::ng-deep>div:last-child ion-reorder-group div:last-child>kirby-item{border-bottom-left-radius:16px;border-bottom-right-radius:16px;overflow:hidden}kirby-card ::ng-deep>div kirby-item{z-index:1}kirby-card ::ng-deep>div:first-child>kirby-item{border-radius:16px;overflow:hidden}kirby-card ::ng-deep>div .reorder-list-active kirby-item{z-index:103}kirby-card div:first-child{border-top:1px solid var(--kirby-background-color)}"]
8513
8524
  },] }
8514
8525
  ];
8515
8526
  /** @nocollapse */
@@ -8537,7 +8548,7 @@
8537
8548
  { type: i0.Component, args: [{
8538
8549
  selector: 'kirby-modal-footer',
8539
8550
  template: "<ion-footer>\n <ng-content></ng-content>\n</ion-footer>\n",
8540
- styles: ["ion-footer{box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);display:flex;justify-content:var(--kirby-modal-footer-justify-content,center);align-items:center;background-color:var(--kirby-modal-footer-background,var(--kirby-white));color:var(--kirby-modal-footer-color,var(--kirby-white-contrast));padding:8px 16px;padding-bottom:calc(8px + var(--kirby-modal-footer-safe-area-bottom, 0px))}@media (max-width:720px){:host{--kirby-modal-footer-safe-area-bottom:var(--kirby-safe-area-bottom)}}:host-context(.modal-wrapper.full-height){--kirby-modal-footer-safe-area-bottom:var(--kirby-safe-area-bottom)}:host(.snap-to-keyboard) ion-footer{transition:transform .15s ease-out}:host-context(.keyboard-visible).snap-to-keyboard ion-footer{transition:transform .25s ease-out 1ms;transform:translateY(calc((var(--keyboard-offset, 0px) - var(--kirby-modal-footer-safe-area-bottom, 0px)) * -1))}:host(.light) ion-footer{background-color:var(--kirby-background-color)}:host(.inline) ion-footer{background:transparent;box-shadow:none}"]
8551
+ styles: ["ion-footer{box-shadow:0 20px 30px -15px rgba(28,28,28,.3),0 0 5px 0 rgba(28,28,28,.08);display:flex;justify-content:var(--kirby-modal-footer-justify-content,center);align-items:center;background-color:var(--kirby-modal-footer-background,var(--kirby-white));color:var(--kirby-modal-footer-color,var(--kirby-white-contrast));padding:8px 16px;padding-bottom:calc(8px + var(--kirby-modal-footer-safe-area-bottom, 0px))}@media (max-width:720px){:host{--kirby-modal-footer-safe-area-bottom:var(--kirby-safe-area-bottom)}}:host(.snap-to-keyboard) ion-footer{transition:transform .15s ease-out}:host(.light) ion-footer{background-color:var(--kirby-background-color)}:host(.inline) ion-footer{background:transparent;box-shadow:none}:host-context(.keyboard-visible).snap-to-keyboard ion-footer{transition:transform .25s ease-out 1ms;transform:translateY(calc((var(--keyboard-offset, 0px) - var(--kirby-modal-footer-safe-area-bottom, 0px)) * -1))}:host-context(.modal-wrapper.full-height){--kirby-modal-footer-safe-area-bottom:var(--kirby-safe-area-bottom)}"]
8541
8552
  },] }
8542
8553
  ];
8543
8554
  ModalFooterComponent.propDecorators = {
@@ -8686,7 +8697,7 @@
8686
8697
  PageProgressComponent.decorators = [
8687
8698
  { type: i0.Component, args: [{
8688
8699
  selector: 'kirby-page-progress',
8689
- template: "\n <ng-content></ng-content>\n ",
8700
+ template: " <ng-content></ng-content> ",
8690
8701
  styles: [':host {display: flex}']
8691
8702
  },] }
8692
8703
  ];
@@ -8705,7 +8716,7 @@
8705
8716
  PageTitleComponent.decorators = [
8706
8717
  { type: i0.Component, args: [{
8707
8718
  selector: 'kirby-page-title',
8708
- template: "\n <ng-content></ng-content>\n "
8719
+ template: " <ng-content></ng-content> "
8709
8720
  },] }
8710
8721
  ];
8711
8722
  var PageContentComponent = /** @class */ (function () {
@@ -8716,7 +8727,7 @@
8716
8727
  PageContentComponent.decorators = [
8717
8728
  { type: i0.Component, args: [{
8718
8729
  selector: 'kirby-page-content',
8719
- template: "\n <ng-content></ng-content>\n "
8730
+ template: " <ng-content></ng-content> "
8720
8731
  },] }
8721
8732
  ];
8722
8733
  var PageActionsComponent = /** @class */ (function () {
@@ -8727,7 +8738,7 @@
8727
8738
  PageActionsComponent.decorators = [
8728
8739
  { type: i0.Component, args: [{
8729
8740
  selector: 'kirby-page-actions',
8730
- template: "\n <ng-content select=\"button[kirby-button]\"></ng-content>\n "
8741
+ template: " <ng-content select=\"button[kirby-button]\"></ng-content> "
8731
8742
  },] }
8732
8743
  ];
8733
8744
  var PageComponent = /** @class */ (function () {
@@ -9232,6 +9243,7 @@
9232
9243
  this.mode = exports.SegmentedControlMode.default;
9233
9244
  this._items = [];
9234
9245
  this._selectedIndex = -1;
9246
+ this._disableChangeOnSwipe = false;
9235
9247
  this.segmentSelect = new i0.EventEmitter();
9236
9248
  }
9237
9249
  SegmentedControlComponent.prototype.preventWrapperClick = function (event) {
@@ -9308,6 +9320,16 @@
9308
9320
  enumerable: false,
9309
9321
  configurable: true
9310
9322
  });
9323
+ Object.defineProperty(SegmentedControlComponent.prototype, "disableChangeOnSwipe", {
9324
+ get: function () {
9325
+ return this._disableChangeOnSwipe;
9326
+ },
9327
+ set: function (value) {
9328
+ this._disableChangeOnSwipe = value;
9329
+ },
9330
+ enumerable: false,
9331
+ configurable: true
9332
+ });
9311
9333
  SegmentedControlComponent.prototype.onSegmentSelect = function (selectedId) {
9312
9334
  var selectedItemIndex = this.items.findIndex(function (item) { return selectedId === item.id; });
9313
9335
  if (selectedItemIndex !== this.selectedIndex) {
@@ -9320,7 +9342,7 @@
9320
9342
  SegmentedControlComponent.decorators = [
9321
9343
  { type: i0.Component, args: [{
9322
9344
  selector: 'kirby-segmented-control',
9323
- template: "<ion-segment\n *ngIf=\"mode === 'default'\"\n [value]=\"value?.id\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventWrapperClick($event)\"\n>\n <div *ngFor=\"let item of items\" class=\"segment-btn-wrapper\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n</ion-segment>\n\n<ng-container *ngIf=\"mode === 'chip' || mode === 'compactChip'\">\n <kirby-chip\n *ngFor=\"let item of items; let index = index\"\n [text]=\"item.text\"\n [isSelected]=\"index === selectedIndex\"\n (click)=\"onSegmentSelect(item.id)\"\n role=\"button\"\n ></kirby-chip>\n</ng-container>\n",
9345
+ template: "<ion-segment\n *ngIf=\"mode === 'default'\"\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventWrapperClick($event)\"\n>\n <div *ngFor=\"let item of items\" class=\"segment-btn-wrapper\">\n <ion-segment-button [value]=\"item.id\">{{ item.text }}</ion-segment-button>\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon\n *ngIf=\"item.badge.isCustomIcon; else defaultIconName\"\n [customName]=\"item.badge.icon\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </div>\n</ion-segment>\n\n<ng-container *ngIf=\"mode === 'chip' || mode === 'compactChip'\">\n <kirby-chip\n *ngFor=\"let item of items; let index = index\"\n [text]=\"item.text\"\n [isSelected]=\"index === selectedIndex\"\n (click)=\"onSegmentSelect(item.id)\"\n role=\"button\"\n ></kirby-chip>\n</ng-container>\n",
9324
9346
  // tslint:disable-next-line: no-host-metadata-property
9325
9347
  host: { role: 'group' },
9326
9348
  styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-elevation:0 5px 10px -10px rgba(28,28,28,0.3),0 0 5px 0 rgba(28,28,28,0.08);--kirby-badge-position:absolute;--kirby-badge-top:-8px;--kirby-badge-right:8px;--kirby-badge-z-index:2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start:16px;--padding-end:16px}:host.chip-mode{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}@media (pointer:coarse){:host.chip-mode{scrollbar-width:none}:host.chip-mode::-webkit-scrollbar{display:none}}ion-segment{display:inline-flex;width:auto;overflow:visible;contain:unset;--background:var(--kirby-white);border-radius:999px}ion-segment-button{position:relative;min-height:40px;font-weight:400;font-size:14px;text-transform:none;--border-radius:999px;--border-style:none;--background:none;--color:var(--kirby-white-contrast);--indicator-color:var(--kirby-black);--color-checked:var(--kirby-black-contrast);--color-hover:var(--kirby-black-tint);--indicator-box-shadow:none;--padding-start:24px;--padding-end:24px;--margin-bottom:0;--margin-end:0;--margin-start:0;--margin-top:0;margin:0}ion-segment-button:after{content:\"\";position:absolute;min-height:44px;min-width:44px;width:100%;height:100%;transform:translate(-50%,-50%);left:50%;top:50%}.segment-btn-wrapper{position:relative}:host-context(.plt-desktop) ion-segment-button:focus-within{outline-color:-webkit-focus-ring-color;outline-style:auto}"]
@@ -9338,6 +9360,7 @@
9338
9360
  value: [{ type: i0.Input }],
9339
9361
  isSmallSize: [{ type: i0.HostBinding, args: ['class.sm',] }],
9340
9362
  size: [{ type: i0.Input }],
9363
+ disableChangeOnSwipe: [{ type: i0.Input }],
9341
9364
  segmentSelect: [{ type: i0.Output }]
9342
9365
  };
9343
9366
 
@@ -9407,7 +9430,7 @@
9407
9430
  selector: 'kirby-slide-button',
9408
9431
  template: "<div class=\"slide-button-container\" [ngClass]=\"{ 'slide-done': isSlideDone }\">\n <input\n type=\"range\"\n (mouseup)=\"onSliderMouseup()\"\n (touchend)=\"onSliderMouseup()\"\n (input)=\"onSliderValueChange($event.target.value)\"\n (mousedown)=\"onSliderMousedown()\"\n (touchstart)=\"onSliderMousedown()\"\n class=\"slide-button\"\n [value]=\"value\"\n max=\"100\"\n />\n <p class=\"slide-button-text slide-{{ pctInTens }}-pct\">{{ text }}</p>\n</div>\n",
9409
9432
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
9410
- styles: [":host{position:relative;display:inline-block;width:256px;-webkit-user-select:none;user-select:none}:host[expand=block]{display:block;width:100%}:host .slide-button-container{width:100%;display:flex;justify-content:center;align-items:center;color:var(--kirby-primary-contrast);background-color:var(--kirby-primary);height:56px;border-radius:26px}:host .slide-10-pct{opacity:.9}:host .slide-20-pct{opacity:.8}:host .slide-30-pct{opacity:.7}:host .slide-40-pct{opacity:.6}:host .slide-50-pct{opacity:.5}:host .slide-60-pct{opacity:.4}:host .slide-70-pct{opacity:.3}:host .slide-80-pct{opacity:.2}:host .slide-90-pct{opacity:.1}:host .slide-100-pct{opacity:0}:host .slide-button-text{position:absolute;font-size:16px;margin:0;line-height:1;z-index:1;width:100%;text-align:center;padding:0 26px 0 56px}:host .slide-button{width:100%;height:100%;-webkit-appearance:none;background:transparent;z-index:2}:host .slide-button::-webkit-slider-thumb{-webkit-appearance:none;border-radius:50%;background-color:var(--kirby-white);background-image:url(/assets/kirby/icons/svg/arrow-more.svg);background-repeat:no-repeat;background-position:50%;background-size:24px;width:52px;height:52px;border:none;cursor:pointer}:host .slide-button::-moz-range-thumb{-webkit-appearance:none;border-radius:50%;background-color:var(--kirby-white);background-image:url(/assets/kirby/icons/svg/arrow-more.svg);background-repeat:no-repeat;background-position:50%;background-size:24px;width:52px;height:52px;border:none;cursor:pointer}:host .slide-done{transition:all .3s ease-in-out;opacity:0;height:0;transform:scale(0);pointer-events:none}"]
9433
+ styles: [":host{position:relative;display:inline-block;width:256px;-webkit-user-select:none;user-select:none}:host[expand=block]{display:block;width:100%}:host .slide-button-container{width:100%;display:flex;justify-content:center;align-items:center;color:var(--kirby-primary-contrast);background-color:var(--kirby-primary);height:56px;border-radius:26px}:host .slide-10-pct{opacity:.9}:host .slide-20-pct{opacity:.8}:host .slide-30-pct{opacity:.7}:host .slide-40-pct{opacity:.6}:host .slide-50-pct{opacity:.5}:host .slide-60-pct{opacity:.4}:host .slide-70-pct{opacity:.3}:host .slide-80-pct{opacity:.2}:host .slide-90-pct{opacity:.1}:host .slide-100-pct{opacity:0}:host .slide-button-text{position:absolute;font-size:16px;margin:0;line-height:1;z-index:1;width:100%;text-align:center;padding:0 26px 0 56px}:host .slide-button{width:100%;height:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;z-index:2}:host .slide-button::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;border-radius:50%;background-color:var(--kirby-white);background-image:url(/assets/kirby/icons/svg/arrow-more.svg);background-repeat:no-repeat;background-position:50%;background-size:24px;width:52px;height:52px;border:none;cursor:pointer}:host .slide-button::-moz-range-thumb{-moz-appearance:none;appearance:none;border-radius:50%;background-color:var(--kirby-white);background-image:url(/assets/kirby/icons/svg/arrow-more.svg);background-repeat:no-repeat;background-position:50%;background-size:24px;width:52px;height:52px;border:none;cursor:pointer}:host .slide-done{transition:all .3s ease-in-out;opacity:0;height:0;transform:scale(0);pointer-events:none}"]
9411
9434
  },] }
9412
9435
  ];
9413
9436
  /** @nocollapse */
@@ -9720,9 +9743,9 @@
9720
9743
  FlagComponent.decorators = [
9721
9744
  { type: i0.Component, args: [{
9722
9745
  selector: 'kirby-flag',
9723
- template: "\n <ng-content></ng-content>\n ",
9746
+ template: " <ng-content></ng-content> ",
9724
9747
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
9725
- styles: [":host{display:inline-block;background-color:var(--kirby-flag-background-color,transparent);color:var(--kirby-flag-color,var(--kirby-white-contrast));border:1px solid var(--kirby-flag-border-color,var(--kirby-medium));border-radius:4px;font-size:16px;padding:2px 8px}:host.sm{font-size:14px}:host.xs{font-size:12px;padding-left:4px;padding-right:4px}:host(.success){--kirby-flag-background-color:var(--kirby-success);--kirby-flag-color:var(--kirby-success-contrast);--kirby-flag-border-color:var(--kirby-success)}:host(.warning){--kirby-flag-background-color:var(--kirby-warning);--kirby-flag-color:var(--kirby-warning-contrast);--kirby-flag-border-color:var(--kirby-warning)}:host(.danger){--kirby-flag-background-color:var(--kirby-danger);--kirby-flag-color:var(--kirby-danger-contrast);--kirby-flag-border-color:var(--kirby-danger)}:host(.semi-light){--kirby-flag-background-color:var(--kirby-semi-light);--kirby-flag-color:var(--kirby-semi-light-contrast);--kirby-flag-border-color:var(--kirby-semi-light)}"]
9748
+ styles: [":host{display:inline-block;background-color:var(--kirby-flag-background-color,transparent);color:var(--kirby-flag-color,var(--kirby-white-contrast));border:1px solid var(--kirby-flag-border-color,var(--kirby-medium));border-radius:4px;font-size:16px;padding:2px 8px;font-weight:500}:host.sm{font-size:14px}:host.xs{font-size:12px;padding-left:4px;padding-right:4px}:host(.success){--kirby-flag-background-color:#2cf287;--kirby-flag-color:var(--kirby-success-contrast);--kirby-flag-border-color:#2cf287}:host(.warning){--kirby-flag-background-color:#ffca3a;--kirby-flag-color:var(--kirby-warning-contrast);--kirby-flag-border-color:#ffca3a}:host(.danger){--kirby-flag-background-color:#ff878a;--kirby-flag-color:var(--kirby-danger-contrast);--kirby-flag-border-color:#ff878a}:host(.semi-light){--kirby-flag-background-color:var(--kirby-semi-light);--kirby-flag-color:var(--kirby-semi-light-contrast);--kirby-flag-border-color:var(--kirby-semi-light)}"]
9726
9749
  },] }
9727
9750
  ];
9728
9751
  FlagComponent.propDecorators = {
@@ -9920,7 +9943,7 @@
9920
9943
  useExisting: i0.forwardRef(function () { return RangeComponent; }),
9921
9944
  },
9922
9945
  ],
9923
- styles: [":host{display:flex;justify-content:space-between;flex-wrap:wrap}ion-range{--knob-background:var(--kirby-white);--knob-box-shadow:0 5px 10px 0px rgba(28,28,28,0.3),0 0 5px 0 rgba(28,28,28,0.08);--knob-size:24px;--pin-color:var(--kirby-text-color-black);--pin-background:var(--kirby-semi-light);--bar-background:var(--kirby-medium);--bar-background-active:var(--kirby-dark);--bar-border-radius:4px;--bar-height:2px;flex:1 1 100%;padding:0}ion-range.range-disabled{--knob-background:var(--kirby-semi-light);--knob-box-shadow:none;--bar-background:var(--kirby-semi-light);--bar-background-active:var(--kirby-semi-light)}ion-range.range-disabled::part(tick){background:var(--kirby-semi-light)}ion-range.range-has-pin{padding:0 3px}ion-range::part(pin){font-size:12px;color:var(--pin-color);background-color:var(--pin-background);padding:2px 4px;border-radius:4px;min-width:40px;position:relative}ion-range::part(pin):before{content:\"\";position:absolute;top:100%;left:50%;transform:translateX(-50%);display:block;border:6px solid transparent;border-top:6px solid var(--pin-background)}ion-range::part(tick),ion-range::part(tick-active){border-radius:50%;width:6px;height:6px;z-index:1;margin-inline-start:-3px}ion-range::part(tick){background:var(--kirby-medium)}label{font-size:12px;line-height:16px;color:var(--kirby-text-color-semi-dark);margin-top:-4px}"]
9946
+ styles: [":host{display:flex;justify-content:space-between;flex-wrap:wrap}ion-range{--knob-background:var(--kirby-white);--knob-box-shadow:0 5px 10px 0 rgb(28 28 28/30%),0 0 5px 0 rgb(28 28 28/8%);--knob-size:24px;--pin-color:var(--kirby-text-color-black);--pin-background:var(--kirby-semi-light);--bar-background:var(--kirby-medium);--bar-background-active:var(--kirby-dark);--bar-border-radius:4px;--bar-height:2px;flex:1 1 100%;padding:0}ion-range.range-disabled{--knob-background:var(--kirby-semi-light);--knob-box-shadow:none;--bar-background:var(--kirby-semi-light);--bar-background-active:var(--kirby-semi-light)}ion-range.range-disabled::part(tick){background:var(--kirby-semi-light)}ion-range.range-has-pin{padding:0 3px}ion-range::part(pin){font-size:12px;color:var(--pin-color);background-color:var(--pin-background);padding:2px 4px;border-radius:4px;min-width:40px;position:relative}ion-range::part(pin):before{content:\"\";position:absolute;top:100%;left:50%;transform:translateX(-50%);display:block;border:6px solid transparent;border-top:6px solid var(--pin-background)}ion-range::part(tick),ion-range::part(tick-active){border-radius:50%;width:6px;height:6px;z-index:1;margin-inline-start:-3px}ion-range::part(tick){background:var(--kirby-medium)}label{font-size:12px;line-height:16px;color:var(--kirby-text-color-semi-dark);margin-top:-4px}"]
9924
9947
  },] }
9925
9948
  ];
9926
9949
  RangeComponent.propDecorators = {