@kirbydesign/designsystem 8.5.2 → 8.6.0-input-bug-fix.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/esm2020/action-group/action-group.component.mjs +3 -3
  2. package/esm2020/button/button.component.mjs +3 -3
  3. package/esm2020/fab-sheet/fab-sheet.component.mjs +2 -2
  4. package/esm2020/form-field/directives/date/date-input.directive.mjs +26 -5
  5. package/esm2020/form-field/input/input.component.mjs +27 -7
  6. package/esm2020/form-field/textarea/textarea.component.mjs +2 -2
  7. package/esm2020/grid/grid.component.mjs +2 -2
  8. package/esm2020/header/header.component.mjs +2 -2
  9. package/esm2020/item/item.component.mjs +2 -2
  10. package/esm2020/kirby-ionic-module/kirby-ionic.module.mjs +12 -16
  11. package/esm2020/modal/modal/footer/modal-footer.component.mjs +3 -3
  12. package/esm2020/modal/modal/services/modal.helper.mjs +6 -3
  13. package/esm2020/modal/modal-wrapper/config/modal-config.mjs +1 -1
  14. package/esm2020/modal/modal-wrapper/modal-wrapper.component.mjs +28 -10
  15. package/esm2020/modal/v2/footer/footer.component.mjs +2 -2
  16. package/esm2020/modal/v2/modal/modal.component.mjs +2 -2
  17. package/esm2020/modal/v2/wrapper/wrapper.component.mjs +2 -2
  18. package/esm2020/page/page.component.mjs +9 -19
  19. package/esm2020/tab-navigation/tab-navigation/tab-navigation.component.mjs +2 -2
  20. package/esm2020/tabs/tab-button/tab-button.component.mjs +2 -2
  21. package/esm2020/tabs/tabs.component.mjs +2 -2
  22. package/fesm2015/kirbydesign-designsystem-accordion.mjs +1 -0
  23. package/fesm2015/kirbydesign-designsystem-action-group.mjs +3 -2
  24. package/fesm2015/kirbydesign-designsystem-action-group.mjs.map +1 -1
  25. package/fesm2015/kirbydesign-designsystem-alert-experimental.mjs +1 -0
  26. package/fesm2015/kirbydesign-designsystem-avatar.mjs +1 -0
  27. package/fesm2015/kirbydesign-designsystem-button.mjs +3 -2
  28. package/fesm2015/kirbydesign-designsystem-button.mjs.map +1 -1
  29. package/fesm2015/kirbydesign-designsystem-calendar.mjs +1 -0
  30. package/fesm2015/kirbydesign-designsystem-card.mjs +1 -0
  31. package/fesm2015/kirbydesign-designsystem-chart.mjs +1 -0
  32. package/fesm2015/kirbydesign-designsystem-checkbox.mjs +1 -0
  33. package/fesm2015/kirbydesign-designsystem-data-table.mjs +1 -0
  34. package/fesm2015/kirbydesign-designsystem-divider.mjs +1 -0
  35. package/fesm2015/kirbydesign-designsystem-dropdown.mjs +1 -0
  36. package/fesm2015/kirbydesign-designsystem-empty-state.mjs +1 -0
  37. package/fesm2015/kirbydesign-designsystem-fab-sheet.mjs +3 -2
  38. package/fesm2015/kirbydesign-designsystem-flag.mjs +1 -0
  39. package/fesm2015/kirbydesign-designsystem-form-field.mjs +131 -91
  40. package/fesm2015/kirbydesign-designsystem-form-field.mjs.map +1 -1
  41. package/fesm2015/kirbydesign-designsystem-grid.mjs +3 -2
  42. package/fesm2015/kirbydesign-designsystem-header.mjs +3 -2
  43. package/fesm2015/kirbydesign-designsystem-header.mjs.map +1 -1
  44. package/fesm2015/kirbydesign-designsystem-helpers-scss.mjs +1 -0
  45. package/fesm2015/kirbydesign-designsystem-helpers.mjs +1 -0
  46. package/fesm2015/kirbydesign-designsystem-icon.mjs +1 -0
  47. package/fesm2015/kirbydesign-designsystem-item-group.mjs +1 -0
  48. package/fesm2015/kirbydesign-designsystem-item-sliding.mjs +1 -0
  49. package/fesm2015/kirbydesign-designsystem-item.mjs +3 -2
  50. package/fesm2015/kirbydesign-designsystem-item.mjs.map +1 -1
  51. package/fesm2015/kirbydesign-designsystem-kirby-app.mjs +1 -0
  52. package/fesm2015/kirbydesign-designsystem-kirby-ionic-module.mjs +9 -15
  53. package/fesm2015/kirbydesign-designsystem-kirby-ionic-module.mjs.map +1 -1
  54. package/fesm2015/kirbydesign-designsystem-list.mjs +1 -0
  55. package/fesm2015/kirbydesign-designsystem-loading-overlay.mjs +1 -0
  56. package/fesm2015/kirbydesign-designsystem-menu.mjs +1 -0
  57. package/fesm2015/kirbydesign-designsystem-modal-v2.mjs +7 -6
  58. package/fesm2015/kirbydesign-designsystem-modal.mjs +34 -12
  59. package/fesm2015/kirbydesign-designsystem-modal.mjs.map +1 -1
  60. package/fesm2015/kirbydesign-designsystem-page.mjs +9 -18
  61. package/fesm2015/kirbydesign-designsystem-page.mjs.map +1 -1
  62. package/fesm2015/kirbydesign-designsystem-popover.mjs +1 -0
  63. package/fesm2015/kirbydesign-designsystem-progress-circle.mjs +1 -0
  64. package/fesm2015/kirbydesign-designsystem-radio.mjs +1 -0
  65. package/fesm2015/kirbydesign-designsystem-range.mjs +1 -0
  66. package/fesm2015/kirbydesign-designsystem-reorder-list.mjs +1 -0
  67. package/fesm2015/kirbydesign-designsystem-router-outlet.mjs +1 -0
  68. package/fesm2015/kirbydesign-designsystem-section-header.mjs +1 -0
  69. package/fesm2015/kirbydesign-designsystem-shared-floating.mjs +1 -0
  70. package/fesm2015/kirbydesign-designsystem-shared-portal.mjs +1 -0
  71. package/fesm2015/kirbydesign-designsystem-shared.mjs +1 -0
  72. package/fesm2015/kirbydesign-designsystem-slide-button.mjs +1 -0
  73. package/fesm2015/kirbydesign-designsystem-slide.mjs +1 -0
  74. package/fesm2015/kirbydesign-designsystem-spinner.mjs +1 -0
  75. package/fesm2015/kirbydesign-designsystem-tab-navigation.mjs +3 -2
  76. package/fesm2015/kirbydesign-designsystem-tabs.mjs +5 -4
  77. package/fesm2015/kirbydesign-designsystem-testing-base.mjs +1 -0
  78. package/fesm2015/kirbydesign-designsystem-testing-jasmine.mjs +1 -0
  79. package/fesm2015/kirbydesign-designsystem-testing-jest.mjs +1 -0
  80. package/fesm2015/kirbydesign-designsystem-testing.mjs +1 -0
  81. package/fesm2015/kirbydesign-designsystem-toast.mjs +1 -0
  82. package/fesm2015/kirbydesign-designsystem-toggle-button.mjs +1 -0
  83. package/fesm2015/kirbydesign-designsystem-toggle.mjs +1 -0
  84. package/fesm2015/kirbydesign-designsystem-types.mjs +1 -0
  85. package/fesm2015/kirbydesign-designsystem.mjs +1 -0
  86. package/fesm2020/kirbydesign-designsystem-accordion.mjs +1 -0
  87. package/fesm2020/kirbydesign-designsystem-action-group.mjs +3 -2
  88. package/fesm2020/kirbydesign-designsystem-action-group.mjs.map +1 -1
  89. package/fesm2020/kirbydesign-designsystem-alert-experimental.mjs +1 -0
  90. package/fesm2020/kirbydesign-designsystem-avatar.mjs +1 -0
  91. package/fesm2020/kirbydesign-designsystem-button.mjs +3 -2
  92. package/fesm2020/kirbydesign-designsystem-button.mjs.map +1 -1
  93. package/fesm2020/kirbydesign-designsystem-calendar.mjs +1 -0
  94. package/fesm2020/kirbydesign-designsystem-card.mjs +1 -0
  95. package/fesm2020/kirbydesign-designsystem-chart.mjs +1 -0
  96. package/fesm2020/kirbydesign-designsystem-checkbox.mjs +1 -0
  97. package/fesm2020/kirbydesign-designsystem-data-table.mjs +1 -0
  98. package/fesm2020/kirbydesign-designsystem-divider.mjs +1 -0
  99. package/fesm2020/kirbydesign-designsystem-dropdown.mjs +1 -0
  100. package/fesm2020/kirbydesign-designsystem-empty-state.mjs +1 -0
  101. package/fesm2020/kirbydesign-designsystem-fab-sheet.mjs +3 -2
  102. package/fesm2020/kirbydesign-designsystem-flag.mjs +1 -0
  103. package/fesm2020/kirbydesign-designsystem-form-field.mjs +127 -87
  104. package/fesm2020/kirbydesign-designsystem-form-field.mjs.map +1 -1
  105. package/fesm2020/kirbydesign-designsystem-grid.mjs +3 -2
  106. package/fesm2020/kirbydesign-designsystem-header.mjs +3 -2
  107. package/fesm2020/kirbydesign-designsystem-header.mjs.map +1 -1
  108. package/fesm2020/kirbydesign-designsystem-helpers-scss.mjs +1 -0
  109. package/fesm2020/kirbydesign-designsystem-helpers.mjs +1 -0
  110. package/fesm2020/kirbydesign-designsystem-icon.mjs +1 -0
  111. package/fesm2020/kirbydesign-designsystem-item-group.mjs +1 -0
  112. package/fesm2020/kirbydesign-designsystem-item-sliding.mjs +1 -0
  113. package/fesm2020/kirbydesign-designsystem-item.mjs +3 -2
  114. package/fesm2020/kirbydesign-designsystem-item.mjs.map +1 -1
  115. package/fesm2020/kirbydesign-designsystem-kirby-app.mjs +1 -0
  116. package/fesm2020/kirbydesign-designsystem-kirby-ionic-module.mjs +12 -15
  117. package/fesm2020/kirbydesign-designsystem-kirby-ionic-module.mjs.map +1 -1
  118. package/fesm2020/kirbydesign-designsystem-list.mjs +1 -0
  119. package/fesm2020/kirbydesign-designsystem-loading-overlay.mjs +1 -0
  120. package/fesm2020/kirbydesign-designsystem-menu.mjs +1 -0
  121. package/fesm2020/kirbydesign-designsystem-modal-v2.mjs +7 -6
  122. package/fesm2020/kirbydesign-designsystem-modal.mjs +33 -11
  123. package/fesm2020/kirbydesign-designsystem-modal.mjs.map +1 -1
  124. package/fesm2020/kirbydesign-designsystem-page.mjs +9 -18
  125. package/fesm2020/kirbydesign-designsystem-page.mjs.map +1 -1
  126. package/fesm2020/kirbydesign-designsystem-popover.mjs +1 -0
  127. package/fesm2020/kirbydesign-designsystem-progress-circle.mjs +1 -0
  128. package/fesm2020/kirbydesign-designsystem-radio.mjs +1 -0
  129. package/fesm2020/kirbydesign-designsystem-range.mjs +1 -0
  130. package/fesm2020/kirbydesign-designsystem-reorder-list.mjs +1 -0
  131. package/fesm2020/kirbydesign-designsystem-router-outlet.mjs +1 -0
  132. package/fesm2020/kirbydesign-designsystem-section-header.mjs +1 -0
  133. package/fesm2020/kirbydesign-designsystem-shared-floating.mjs +1 -0
  134. package/fesm2020/kirbydesign-designsystem-shared-portal.mjs +1 -0
  135. package/fesm2020/kirbydesign-designsystem-shared.mjs +1 -0
  136. package/fesm2020/kirbydesign-designsystem-slide-button.mjs +1 -0
  137. package/fesm2020/kirbydesign-designsystem-slide.mjs +1 -0
  138. package/fesm2020/kirbydesign-designsystem-spinner.mjs +1 -0
  139. package/fesm2020/kirbydesign-designsystem-tab-navigation.mjs +3 -2
  140. package/fesm2020/kirbydesign-designsystem-tabs.mjs +5 -4
  141. package/fesm2020/kirbydesign-designsystem-testing-base.mjs +1 -0
  142. package/fesm2020/kirbydesign-designsystem-testing-jasmine.mjs +1 -0
  143. package/fesm2020/kirbydesign-designsystem-testing-jest.mjs +1 -0
  144. package/fesm2020/kirbydesign-designsystem-testing.mjs +1 -0
  145. package/fesm2020/kirbydesign-designsystem-toast.mjs +1 -0
  146. package/fesm2020/kirbydesign-designsystem-toggle-button.mjs +1 -0
  147. package/fesm2020/kirbydesign-designsystem-toggle.mjs +1 -0
  148. package/fesm2020/kirbydesign-designsystem-types.mjs +1 -0
  149. package/fesm2020/kirbydesign-designsystem.mjs +1 -0
  150. package/form-field/directives/date/date-input.directive.d.ts +12 -1
  151. package/form-field/input/input.component.d.ts +7 -3
  152. package/icon/src/README.md +16 -0
  153. package/modal/modal-wrapper/config/modal-config.d.ts +1 -0
  154. package/modal/modal-wrapper/modal-wrapper.component.d.ts +4 -1
  155. package/package.json +2 -2
  156. package/page/page.component.d.ts +4 -6
  157. package/README.md +0 -7
@@ -101,10 +101,10 @@ class TabNavigationComponent {
101
101
  }
102
102
  }
103
103
  /** @nocollapse */ TabNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: TabNavigationComponent, deps: [{ token: i1.WindowRef }, { token: i2.KeyboardHandlerService }], target: i0.ɵɵFactoryTarget.Component });
104
- /** @nocollapse */ TabNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: TabNavigationComponent, selector: "kirby-tab-navigation", inputs: { selectedIndex: "selectedIndex" }, outputs: { selectedIndexChange: "selectedIndexChange" }, host: { listeners: { "click": "onItemSelect($event)", "keydown.enter": "onItemSelect($event)", "keydown.home": "onKeydown($event)", "keydown.end": "onKeydown($event)", "keydown.arrowright": "onKeydown($event)", "keydown.arrowleft": "onKeydown($event)" } }, queries: [{ propertyName: "tabs", predicate: TabNavigationItemComponent, read: ElementRef }], viewQueries: [{ propertyName: "tabBar", first: true, predicate: ["tabBar"], descendants: true }], ngImport: i0, template: "<div role=\"tablist\" #tabBar>\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;position:relative}@media (max-width: 720px){:host{margin-inline:calc(-1 * var(--padding-start)) calc(-1 * var(--padding-end))}}:host:before{content:\"\";background-color:var(--kirby-medium);position:absolute;height:1px;bottom:0;z-index:1;left:0;width:100%}@media (max-width: 752px){:host:before{left:calc(-1 * var(--padding-start, 16px));width:calc(100% + var(--padding-start, 16px) * 2)}}div[role=tablist]{position:relative;margin:0 auto;display:flex;align-items:center;justify-content:left;flex-wrap:nowrap;overflow-x:scroll;-webkit-overflow-scrolling:auto;scrollbar-width:none}@media (max-width: 720px){div[role=tablist]{padding-inline:var(--padding-start) var(--padding-end)}}div[role=tablist]::-webkit-scrollbar{display:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
104
+ /** @nocollapse */ TabNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: TabNavigationComponent, selector: "kirby-tab-navigation", inputs: { selectedIndex: "selectedIndex" }, outputs: { selectedIndexChange: "selectedIndexChange" }, host: { listeners: { "click": "onItemSelect($event)", "keydown.enter": "onItemSelect($event)", "keydown.home": "onKeydown($event)", "keydown.end": "onKeydown($event)", "keydown.arrowright": "onKeydown($event)", "keydown.arrowleft": "onKeydown($event)" } }, queries: [{ propertyName: "tabs", predicate: TabNavigationItemComponent, read: ElementRef }], viewQueries: [{ propertyName: "tabBar", first: true, predicate: ["tabBar"], descendants: true }], ngImport: i0, template: "<div role=\"tablist\" #tabBar>\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;position:relative}@media (max-width: 767px){:host{margin-inline:calc(-1 * var(--padding-start)) calc(-1 * var(--padding-end))}}:host:before{content:\"\";background-color:var(--kirby-medium);position:absolute;height:1px;bottom:0;z-index:1;left:0;width:100%}@media (max-width: 752px){:host:before{left:calc(-1 * var(--padding-start, 16px));width:calc(100% + var(--padding-start, 16px) * 2)}}div[role=tablist]{position:relative;margin:0 auto;display:flex;align-items:center;justify-content:left;flex-wrap:nowrap;overflow-x:scroll;-webkit-overflow-scrolling:auto;scrollbar-width:none}@media (max-width: 767px){div[role=tablist]{padding-inline:var(--padding-start) var(--padding-end)}}div[role=tablist]::-webkit-scrollbar{display:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
105
105
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: TabNavigationComponent, decorators: [{
106
106
  type: Component,
107
- args: [{ selector: 'kirby-tab-navigation', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div role=\"tablist\" #tabBar>\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;position:relative}@media (max-width: 720px){:host{margin-inline:calc(-1 * var(--padding-start)) calc(-1 * var(--padding-end))}}:host:before{content:\"\";background-color:var(--kirby-medium);position:absolute;height:1px;bottom:0;z-index:1;left:0;width:100%}@media (max-width: 752px){:host:before{left:calc(-1 * var(--padding-start, 16px));width:calc(100% + var(--padding-start, 16px) * 2)}}div[role=tablist]{position:relative;margin:0 auto;display:flex;align-items:center;justify-content:left;flex-wrap:nowrap;overflow-x:scroll;-webkit-overflow-scrolling:auto;scrollbar-width:none}@media (max-width: 720px){div[role=tablist]{padding-inline:var(--padding-start) var(--padding-end)}}div[role=tablist]::-webkit-scrollbar{display:none}\n"] }]
107
+ args: [{ selector: 'kirby-tab-navigation', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div role=\"tablist\" #tabBar>\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;position:relative}@media (max-width: 767px){:host{margin-inline:calc(-1 * var(--padding-start)) calc(-1 * var(--padding-end))}}:host:before{content:\"\";background-color:var(--kirby-medium);position:absolute;height:1px;bottom:0;z-index:1;left:0;width:100%}@media (max-width: 752px){:host:before{left:calc(-1 * var(--padding-start, 16px));width:calc(100% + var(--padding-start, 16px) * 2)}}div[role=tablist]{position:relative;margin:0 auto;display:flex;align-items:center;justify-content:left;flex-wrap:nowrap;overflow-x:scroll;-webkit-overflow-scrolling:auto;scrollbar-width:none}@media (max-width: 767px){div[role=tablist]{padding-inline:var(--padding-start) var(--padding-end)}}div[role=tablist]::-webkit-scrollbar{display:none}\n"] }]
108
108
  }], ctorParameters: function () { return [{ type: i1.WindowRef }, { type: i2.KeyboardHandlerService }]; }, propDecorators: { tabBar: [{
109
109
  type: ViewChild,
110
110
  args: ['tabBar']
@@ -155,3 +155,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
155
155
 
156
156
  export { TabNavigationComponent, TabNavigationItemComponent, TabNavigationModule };
157
157
  //# sourceMappingURL=kirbydesign-designsystem-tab-navigation.mjs.map
158
+ //# sourceMappingURL=kirbydesign-designsystem-tab-navigation.mjs.map
@@ -43,10 +43,10 @@ class TabsComponent {
43
43
  }
44
44
  }
45
45
  /** @nocollapse */ TabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: TabsComponent, deps: [{ token: TabsService }], target: i0.ɵɵFactoryTarget.Component });
46
- /** @nocollapse */ TabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: TabsComponent, selector: "kirby-tab-bar", host: { properties: { "class.tab-bar-bottom-hidden": "this.tabBarBottomHidden" } }, viewQueries: [{ propertyName: "tabs", first: true, predicate: IonTabs, descendants: true, static: true }], ngImport: i0, template: "<ion-tabs>\n <ion-tab-bar [class.bottom-hidden]=\"tabBarBottomHidden\">\n <ng-content></ng-content>\n </ion-tab-bar>\n</ion-tabs>\n", styles: [":host(:not(.tab-bar-bottom-hidden)){--kirby-page-footer-safe-area-bottom: 0px}ion-tabs ion-tab-bar{--background: rgba(var(--kirby-white-rgb), .94);--border: 1px solid var(--kirby-light);--color: var(--kirby-black);display:flex;max-width:var(--kirby-tab-bar-max-width, none);justify-content:center;height:var(--kirby-tab-bar-height);padding-left:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);padding-right:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);width:100%}ion-tabs ion-tab-bar.bottom-hidden{display:none}@media (min-width: 721px){ion-tabs{--kirby-tab-bar-height: 70px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tabs{flex-direction:column-reverse;--kirby-page-footer-safe-area-bottom: initial}ion-tabs ion-tab-bar{margin:0 auto;justify-content:flex-end}ion-tabs ion-tab-bar.bottom-hidden{display:flex}}\n"], dependencies: [{ kind: "component", type: i2.IonTabBar, selector: "ion-tab-bar", inputs: ["color", "mode", "selectedTab", "translucent"] }, { kind: "component", type: i2.IonTabs, selector: "ion-tabs", outputs: ["ionTabsWillChange", "ionTabsDidChange"] }] });
46
+ /** @nocollapse */ TabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: TabsComponent, selector: "kirby-tab-bar", host: { properties: { "class.tab-bar-bottom-hidden": "this.tabBarBottomHidden" } }, viewQueries: [{ propertyName: "tabs", first: true, predicate: IonTabs, descendants: true, static: true }], ngImport: i0, template: "<ion-tabs>\n <ion-tab-bar [class.bottom-hidden]=\"tabBarBottomHidden\">\n <ng-content></ng-content>\n </ion-tab-bar>\n</ion-tabs>\n", styles: [":host(:not(.tab-bar-bottom-hidden)){--kirby-page-footer-safe-area-bottom: 0px}ion-tabs ion-tab-bar{--background: rgba(var(--kirby-white-rgb), .94);--border: 1px solid var(--kirby-light);--color: var(--kirby-black);display:flex;max-width:var(--kirby-tab-bar-max-width, none);justify-content:center;height:var(--kirby-tab-bar-height);padding-left:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);padding-right:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);width:100%}ion-tabs ion-tab-bar.bottom-hidden{display:none}@media (min-width: 768px){ion-tabs{--kirby-tab-bar-height: 70px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tabs{flex-direction:column-reverse;--kirby-page-footer-safe-area-bottom: initial}ion-tabs ion-tab-bar{margin:0 auto;justify-content:flex-end}ion-tabs ion-tab-bar.bottom-hidden{display:flex}}\n"], dependencies: [{ kind: "component", type: i2.IonTabBar, selector: "ion-tab-bar", inputs: ["color", "mode", "selectedTab", "translucent"] }, { kind: "component", type: i2.IonTabs, selector: "ion-tabs", outputs: ["ionTabsWillChange", "ionTabsDidChange"] }] });
47
47
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: TabsComponent, decorators: [{
48
48
  type: Component,
49
- args: [{ selector: 'kirby-tab-bar', template: "<ion-tabs>\n <ion-tab-bar [class.bottom-hidden]=\"tabBarBottomHidden\">\n <ng-content></ng-content>\n </ion-tab-bar>\n</ion-tabs>\n", styles: [":host(:not(.tab-bar-bottom-hidden)){--kirby-page-footer-safe-area-bottom: 0px}ion-tabs ion-tab-bar{--background: rgba(var(--kirby-white-rgb), .94);--border: 1px solid var(--kirby-light);--color: var(--kirby-black);display:flex;max-width:var(--kirby-tab-bar-max-width, none);justify-content:center;height:var(--kirby-tab-bar-height);padding-left:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);padding-right:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);width:100%}ion-tabs ion-tab-bar.bottom-hidden{display:none}@media (min-width: 721px){ion-tabs{--kirby-tab-bar-height: 70px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tabs{flex-direction:column-reverse;--kirby-page-footer-safe-area-bottom: initial}ion-tabs ion-tab-bar{margin:0 auto;justify-content:flex-end}ion-tabs ion-tab-bar.bottom-hidden{display:flex}}\n"] }]
49
+ args: [{ selector: 'kirby-tab-bar', template: "<ion-tabs>\n <ion-tab-bar [class.bottom-hidden]=\"tabBarBottomHidden\">\n <ng-content></ng-content>\n </ion-tab-bar>\n</ion-tabs>\n", styles: [":host(:not(.tab-bar-bottom-hidden)){--kirby-page-footer-safe-area-bottom: 0px}ion-tabs ion-tab-bar{--background: rgba(var(--kirby-white-rgb), .94);--border: 1px solid var(--kirby-light);--color: var(--kirby-black);display:flex;max-width:var(--kirby-tab-bar-max-width, none);justify-content:center;height:var(--kirby-tab-bar-height);padding-left:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);padding-right:calc((100vw - var(--kirby-tab-bar-max-width, none)) / 2);width:100%}ion-tabs ion-tab-bar.bottom-hidden{display:none}@media (min-width: 768px){ion-tabs{--kirby-tab-bar-height: 70px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tabs{flex-direction:column-reverse;--kirby-page-footer-safe-area-bottom: initial}ion-tabs ion-tab-bar{margin:0 auto;justify-content:flex-end}ion-tabs ion-tab-bar.bottom-hidden{display:flex}}\n"] }]
50
50
  }], ctorParameters: function () { return [{ type: TabsService }]; }, propDecorators: { tabBarBottomHidden: [{
51
51
  type: HostBinding,
52
52
  args: ['class.tab-bar-bottom-hidden']
@@ -81,10 +81,10 @@ class TabButtonComponent {
81
81
  }
82
82
  }
83
83
  /** @nocollapse */ TabButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: TabButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
84
- /** @nocollapse */ TabButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: TabButtonComponent, selector: "kirby-tab-button", inputs: { routerLink: "routerLink" }, outputs: { click: "click" }, queries: [{ propertyName: "icons", predicate: IconComponent }], ngImport: i0, template: "<ion-tab-button #ionTabButton [tab]=\"routerLink\" (click)=\"onClick($event, ionTabButton.selected)\">\n <div class=\"icon-container\" *ngIf=\"icons.length\">\n <ng-content\n *ngIf=\"icons.length === 1 || !ionTabButton.selected\"\n select=\"kirby-icon[:not([selected-tab])]\"\n ></ng-content>\n <ng-content *ngIf=\"ionTabButton.selected\" select=\"kirby-icon[selected-tab]\"></ng-content>\n </div>\n <ion-label>\n <ng-content></ng-content>\n </ion-label>\n <ng-content select=\"kirby-badge\"></ng-content>\n</ion-tab-button>\n", styles: ["ion-tab-button{transition:all 80ms linear 0ms;height:100%;flex:1 1 0%;max-width:168px;font-size:10px;--color-selected: utils.get-color(\"black\");--kirby-badge-position: absolute;--kirby-badge-top: .55em;--kirby-badge-left:calc(50% + .4em)}@media (hover: hover) and (pointer: fine){ion-tab-button.ion-focused{--background: whitesmoke;--background-focused-opacity: 0}ion-tab-button.ion-focused:focus-visible{box-shadow:none;--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}}@media (hover: hover){ion-tab-button:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black);cursor:pointer;--background: whitesmoke}}ion-tab-button:active,ion-tab-button.interaction-state-active{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background: #ebebeb}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-top: .3em;--kirby-badge-left:calc(50% + .2em)}ion-tab-button .icon-container{position:relative}@media (min-width: 721px){ion-tab-button{flex:none;flex-direction:row;padding:0 24px;margin-right:24px;font-size:14px;--color-selected: var(--kirby-black);--kirby-badge-position: absolute;--kirby-badge-top:calc(50% - 1.35em);--kirby-badge-left: 1.6em}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-position: relative;--kirby-badge-top: 0;--kirby-badge-left: 0;margin-left:2px;margin-bottom:1px}ion-tab-button:last-child{margin-right:0}ion-tab-button .icon-container{margin-right:8px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tab-button{padding:0 12px;margin-right:0}}\n"], dependencies: [{ kind: "component", type: i2.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i2.IonTabButton, selector: "ion-tab-button", inputs: ["disabled", "download", "href", "layout", "mode", "rel", "selected", "tab", "target"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
84
+ /** @nocollapse */ TabButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: TabButtonComponent, selector: "kirby-tab-button", inputs: { routerLink: "routerLink" }, outputs: { click: "click" }, queries: [{ propertyName: "icons", predicate: IconComponent }], ngImport: i0, template: "<ion-tab-button #ionTabButton [tab]=\"routerLink\" (click)=\"onClick($event, ionTabButton.selected)\">\n <div class=\"icon-container\" *ngIf=\"icons.length\">\n <ng-content\n *ngIf=\"icons.length === 1 || !ionTabButton.selected\"\n select=\"kirby-icon[:not([selected-tab])]\"\n ></ng-content>\n <ng-content *ngIf=\"ionTabButton.selected\" select=\"kirby-icon[selected-tab]\"></ng-content>\n </div>\n <ion-label>\n <ng-content></ng-content>\n </ion-label>\n <ng-content select=\"kirby-badge\"></ng-content>\n</ion-tab-button>\n", styles: ["ion-tab-button{transition:all 80ms linear 0ms;height:100%;flex:1 1 0%;max-width:168px;font-size:10px;--color-selected: utils.get-color(\"black\");--kirby-badge-position: absolute;--kirby-badge-top: .55em;--kirby-badge-left:calc(50% + .4em)}@media (hover: hover) and (pointer: fine){ion-tab-button.ion-focused{--background: whitesmoke;--background-focused-opacity: 0}ion-tab-button.ion-focused:focus-visible{box-shadow:none;--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}}@media (hover: hover){ion-tab-button:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black);cursor:pointer;--background: whitesmoke}}ion-tab-button:active,ion-tab-button.interaction-state-active{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background: #ebebeb}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-top: .3em;--kirby-badge-left:calc(50% + .2em)}ion-tab-button .icon-container{position:relative}@media (min-width: 768px){ion-tab-button{flex:none;flex-direction:row;padding:0 24px;margin-right:24px;font-size:14px;--color-selected: var(--kirby-black);--kirby-badge-position: absolute;--kirby-badge-top:calc(50% - 1.35em);--kirby-badge-left: 1.6em}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-position: relative;--kirby-badge-top: 0;--kirby-badge-left: 0;margin-left:2px;margin-bottom:1px}ion-tab-button:last-child{margin-right:0}ion-tab-button .icon-container{margin-right:8px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tab-button{padding:0 12px;margin-right:0}}\n"], dependencies: [{ kind: "component", type: i2.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i2.IonTabButton, selector: "ion-tab-button", inputs: ["disabled", "download", "href", "layout", "mode", "rel", "selected", "tab", "target"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
85
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: TabButtonComponent, decorators: [{
86
86
  type: Component,
87
- args: [{ selector: 'kirby-tab-button', template: "<ion-tab-button #ionTabButton [tab]=\"routerLink\" (click)=\"onClick($event, ionTabButton.selected)\">\n <div class=\"icon-container\" *ngIf=\"icons.length\">\n <ng-content\n *ngIf=\"icons.length === 1 || !ionTabButton.selected\"\n select=\"kirby-icon[:not([selected-tab])]\"\n ></ng-content>\n <ng-content *ngIf=\"ionTabButton.selected\" select=\"kirby-icon[selected-tab]\"></ng-content>\n </div>\n <ion-label>\n <ng-content></ng-content>\n </ion-label>\n <ng-content select=\"kirby-badge\"></ng-content>\n</ion-tab-button>\n", styles: ["ion-tab-button{transition:all 80ms linear 0ms;height:100%;flex:1 1 0%;max-width:168px;font-size:10px;--color-selected: utils.get-color(\"black\");--kirby-badge-position: absolute;--kirby-badge-top: .55em;--kirby-badge-left:calc(50% + .4em)}@media (hover: hover) and (pointer: fine){ion-tab-button.ion-focused{--background: whitesmoke;--background-focused-opacity: 0}ion-tab-button.ion-focused:focus-visible{box-shadow:none;--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}}@media (hover: hover){ion-tab-button:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black);cursor:pointer;--background: whitesmoke}}ion-tab-button:active,ion-tab-button.interaction-state-active{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background: #ebebeb}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-top: .3em;--kirby-badge-left:calc(50% + .2em)}ion-tab-button .icon-container{position:relative}@media (min-width: 721px){ion-tab-button{flex:none;flex-direction:row;padding:0 24px;margin-right:24px;font-size:14px;--color-selected: var(--kirby-black);--kirby-badge-position: absolute;--kirby-badge-top:calc(50% - 1.35em);--kirby-badge-left: 1.6em}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-position: relative;--kirby-badge-top: 0;--kirby-badge-left: 0;margin-left:2px;margin-bottom:1px}ion-tab-button:last-child{margin-right:0}ion-tab-button .icon-container{margin-right:8px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tab-button{padding:0 12px;margin-right:0}}\n"] }]
87
+ args: [{ selector: 'kirby-tab-button', template: "<ion-tab-button #ionTabButton [tab]=\"routerLink\" (click)=\"onClick($event, ionTabButton.selected)\">\n <div class=\"icon-container\" *ngIf=\"icons.length\">\n <ng-content\n *ngIf=\"icons.length === 1 || !ionTabButton.selected\"\n select=\"kirby-icon[:not([selected-tab])]\"\n ></ng-content>\n <ng-content *ngIf=\"ionTabButton.selected\" select=\"kirby-icon[selected-tab]\"></ng-content>\n </div>\n <ion-label>\n <ng-content></ng-content>\n </ion-label>\n <ng-content select=\"kirby-badge\"></ng-content>\n</ion-tab-button>\n", styles: ["ion-tab-button{transition:all 80ms linear 0ms;height:100%;flex:1 1 0%;max-width:168px;font-size:10px;--color-selected: utils.get-color(\"black\");--kirby-badge-position: absolute;--kirby-badge-top: .55em;--kirby-badge-left:calc(50% + .4em)}@media (hover: hover) and (pointer: fine){ion-tab-button.ion-focused{--background: whitesmoke;--background-focused-opacity: 0}ion-tab-button.ion-focused:focus-visible{box-shadow:none;--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}}@media (hover: hover){ion-tab-button:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black);cursor:pointer;--background: whitesmoke}}ion-tab-button:active,ion-tab-button.interaction-state-active{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background: #ebebeb}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-top: .3em;--kirby-badge-left:calc(50% + .2em)}ion-tab-button .icon-container{position:relative}@media (min-width: 768px){ion-tab-button{flex:none;flex-direction:row;padding:0 24px;margin-right:24px;font-size:14px;--color-selected: var(--kirby-black);--kirby-badge-position: absolute;--kirby-badge-top:calc(50% - 1.35em);--kirby-badge-left: 1.6em}ion-tab-button ::ng-deep>kirby-badge.md{--kirby-badge-position: relative;--kirby-badge-top: 0;--kirby-badge-left: 0;margin-left:2px;margin-bottom:1px}ion-tab-button:last-child{margin-right:0}ion-tab-button .icon-container{margin-right:8px}}@media (min-width: 1025px) and (hover: hover) and (pointer: fine){ion-tab-button{padding:0 12px;margin-right:0}}\n"] }]
88
88
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { routerLink: [{
89
89
  type: Input
90
90
  }], click: [{
@@ -115,3 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
115
115
 
116
116
  export { TabButtonComponent, TabsComponent, TabsModule, TabsService, selectedTabClickEvent };
117
117
  //# sourceMappingURL=kirbydesign-designsystem-tabs.mjs.map
118
+ //# sourceMappingURL=kirbydesign-designsystem-tabs.mjs.map
@@ -3418,3 +3418,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
3418
3418
 
3419
3419
  export { KirbyTestingBaseModule, MockAccordionDirective, MockAccordionItemComponent, MockActionGroupComponent, MockActionSheetComponent, MockAffixDirective, MockAlertComponent, MockAlertExperimentalComponent, MockAppComponent, MockAvatarComponent, MockBadgeComponent, MockBaseChartComponent, MockButtonComponent, MockCalendarComponent, MockCardAsButtonDirective, MockCardComponent, MockCardFooterComponent, MockCardHeaderComponent, MockChartComponent, MockCheckboxComponent, MockComponentLoaderDirective, MockDateInputDirective, MockDecimalMaskDirective, MockDividerComponent, MockDropdownComponent, MockEmptyStateComponent, MockFabSheetComponent, MockFitHeadingDirective, MockFlagComponent, MockFloatingDirective, MockFormFieldComponent, MockFormFieldMessageComponent, MockGridComponent, MockHeaderActionsDirective, MockHeaderComponent, MockHeaderCustomSectionDirective, MockIconComponent, MockInfiniteScrollDirective, MockInputComponent, MockInputCounterComponent, MockItemComponent, MockItemGroupComponent, MockItemSlidingComponent, MockKeyHandlerDirective, MockLabelComponent, MockListComponent, MockListExperimentalComponent, MockListFooterDirective, MockListHeaderComponent, MockListHeaderDirective, MockListItemColorDirective, MockListItemComponent, MockListItemTemplateDirective, MockListSectionHeaderComponent, MockListSectionHeaderDirective, MockLoadingOverlayComponent, MockMenuComponent, MockModalCompactWrapperComponent, MockModalFooterComponent, MockModalRouterLinkDirective, MockModalV2Component, MockModalV2FooterComponent, MockModalV2RoutingComponent, MockModalV2WrapperComponent, MockModalWrapperComponent, MockPageActionsComponent, MockPageActionsDirective, MockPageComponent, MockPageContentComponent, MockPageContentDirective, MockPageFooterComponent, MockPageLocalNavigationComponent, MockPageProgressComponent, MockPageStickyContentDirective, MockPageSubtitleDirective, MockPageTitleComponent, MockPageTitleDirective, MockPageToolbarTitleDirective, MockPopoverComponent, MockPortalDirective, MockProgressCircleComponent, MockProgressCircleRingComponent, MockRadioComponent, MockRadioGroupComponent, MockRangeComponent, MockReorderListComponent, MockRouterOutletComponent, MockSectionHeaderComponent, MockSegmentedControlComponent, MockSlideButtonComponent, MockSlideDirective, MockSlidesComponent, MockSpinnerComponent, MockStockChartComponent, MockTabButtonComponent, MockTabNavigationComponent, MockTabNavigationItemComponent, MockTableComponent, MockTableRowComponent, MockTabsComponent, MockTextareaComponent, MockThemeColorDirective, MockToggleButtonComponent, MockToggleComponent };
3420
3420
  //# sourceMappingURL=kirbydesign-designsystem-testing-base.mjs.map
3421
+ //# sourceMappingURL=kirbydesign-designsystem-testing-base.mjs.map
@@ -112,3 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
112
112
 
113
113
  export { KirbyTestingModule };
114
114
  //# sourceMappingURL=kirbydesign-designsystem-testing-jasmine.mjs.map
115
+ //# sourceMappingURL=kirbydesign-designsystem-testing-jasmine.mjs.map
@@ -118,3 +118,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
118
118
 
119
119
  export { KirbyTestingModule };
120
120
  //# sourceMappingURL=kirbydesign-designsystem-testing-jest.mjs.map
121
+ //# sourceMappingURL=kirbydesign-designsystem-testing-jest.mjs.map
@@ -233,3 +233,4 @@ function getErrorMessage(element, cssProperty, actualValue, expectedValue, expec
233
233
 
234
234
  export { ElementCssCustomMatchers, TestHelper };
235
235
  //# sourceMappingURL=kirbydesign-designsystem-testing.mjs.map
236
+ //# sourceMappingURL=kirbydesign-designsystem-testing.mjs.map
@@ -61,3 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
61
61
 
62
62
  export { ToastController, ToastHelper };
63
63
  //# sourceMappingURL=kirbydesign-designsystem-toast.mjs.map
64
+ //# sourceMappingURL=kirbydesign-designsystem-toast.mjs.map
@@ -47,3 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
47
47
 
48
48
  export { ToggleButtonComponent, ToggleButtonModule };
49
49
  //# sourceMappingURL=kirbydesign-designsystem-toggle-button.mjs.map
50
+ //# sourceMappingURL=kirbydesign-designsystem-toggle-button.mjs.map
@@ -41,3 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
41
41
 
42
42
  export { ToggleComponent };
43
43
  //# sourceMappingURL=kirbydesign-designsystem-toggle.mjs.map
44
+ //# sourceMappingURL=kirbydesign-designsystem-toggle.mjs.map
@@ -21,3 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
21
21
 
22
22
  export { WindowRef };
23
23
  //# sourceMappingURL=kirbydesign-designsystem-types.mjs.map
24
+ //# sourceMappingURL=kirbydesign-designsystem-types.mjs.map
@@ -764,3 +764,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
764
764
 
765
765
  export { KirbyBadge as BadgeComponent, KeyHandlerDirective, KirbyBadgeModule, KirbyExperimentalModule, KirbyModule, ModalRouterLinkDirective, PageLocalNavigationComponent, SegmentedControlComponent, SegmentedControlMode };
766
766
  //# sourceMappingURL=kirbydesign-designsystem.mjs.map
767
+ //# sourceMappingURL=kirbydesign-designsystem.mjs.map
@@ -6,7 +6,18 @@ export declare class DateInputDirective implements AfterViewInit {
6
6
  private renderer;
7
7
  private locale;
8
8
  onInput(): void;
9
+ prefillYear: boolean;
9
10
  private maskingElement;
11
+ /**
12
+ * `isDateInput` is used to avoid removing the type attribute on the input element and calling updateMask()
13
+ * when the directive is not used on a date input.
14
+ * This is needed for the standalone component 'InputComponent', which includes the directive
15
+ * using the `hostDirectives` component decorator prop. Angular ignores the selector of directives
16
+ * applied in the `hostDirectives` property which effectively applies the directive to all kirby-inputs, not only date inputs.
17
+ * This check prevents the directive from executing it's masking on non-date inputs.
18
+ * See: https://angular.io/guide/directive-composition-api
19
+ */
20
+ private isDateInput;
10
21
  constructor(elementRef: ElementRef, renderer: Renderer2, locale: string);
11
22
  ngAfterViewInit(): void;
12
23
  private initMask;
@@ -16,5 +27,5 @@ export declare class DateInputDirective implements AfterViewInit {
16
27
  private wrapElement;
17
28
  private updateMask;
18
29
  static ɵfac: i0.ɵɵFactoryDeclaration<DateInputDirective, never>;
19
- static ɵdir: i0.ɵɵDirectiveDeclaration<DateInputDirective, "[kirby-input][type=\"date\"]", never, {}, {}, never, never, true, never>;
30
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DateInputDirective, "[kirby-input][type=\"date\"]", never, { "prefillYear": "prefillYear"; }, {}, never, never, true, never>;
20
31
  }
@@ -1,10 +1,14 @@
1
- import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
1
+ import { ElementRef, EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ import * as i1 from "../directives/date/date-input.directive";
3
4
  export declare enum InputSize {
4
5
  medium = "md",
5
6
  large = "lg"
6
7
  }
7
- export declare class InputComponent implements OnChanges {
8
+ export declare class InputComponent implements OnChanges, OnInit {
9
+ private elementRef;
10
+ constructor(elementRef: ElementRef<HTMLInputElement>);
11
+ ngOnInit(): void;
8
12
  private static typeToInputmodeMap;
9
13
  kirbyChange: EventEmitter<string>;
10
14
  set type(value: string);
@@ -23,5 +27,5 @@ export declare class InputComponent implements OnChanges {
23
27
  _onCutPaste(target: HTMLInputElement): void;
24
28
  ngOnChanges(changes: SimpleChanges): void;
25
29
  static ɵfac: i0.ɵɵFactoryDeclaration<InputComponent, never>;
26
- static ɵcmp: i0.ɵɵComponentDeclaration<InputComponent, "input[kirby-input]", never, { "type": "type"; "size": "size"; "borderless": "borderless"; "hasError": "hasError"; "autocomplete": "autocomplete"; "autocorrect": "autocorrect"; "value": "value"; "maxlength": "maxlength"; "inputmode": "inputmode"; }, {}, never, never, true, never>;
30
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputComponent, "input[kirby-input]", never, { "type": "type"; "size": "size"; "borderless": "borderless"; "hasError": "hasError"; "autocomplete": "autocomplete"; "autocorrect": "autocorrect"; "value": "value"; "maxlength": "maxlength"; "inputmode": "inputmode"; }, {}, never, never, true, [{ directive: typeof i1.DateInputDirective; inputs: { "prefillYear": "prefillYear"; }; outputs: {}; }]>;
27
31
  }
@@ -0,0 +1,16 @@
1
+ # Add new icons
2
+
3
+ To add new icons, you should use the [icomoon app](https://icomoon.io).
4
+
5
+ ## Generate font from svg's
6
+
7
+ 1. Upload selection.json to get existing icons and settings
8
+ 2. Upload new icons
9
+ 3. Download Font
10
+
11
+ ## Update kirby icons
12
+
13
+ 1. Replace src/kirby/icon/selection.json, with newly generated selection.json
14
+ 2. Replace src/fonts/kirby.ttf, with newly generated kirby.ttf
15
+ 3. Update kirby-custom-icon-settings.ts with new icons (old icons should not have changed)
16
+ 4. Add new icon svg's to src/assets/icons/kirby
@@ -7,6 +7,7 @@ export interface ModalConfig {
7
7
  collapseTitle?: boolean;
8
8
  component: any;
9
9
  size?: ModalSize;
10
+ customHeight?: string;
10
11
  modalRoute?: ActivatedRoute;
11
12
  siblingModalRouteActivated$?: Observable<ActivatedRoute>;
12
13
  flavor?: ModalFlavor;
@@ -49,12 +49,15 @@ export declare class ModalWrapperComponent implements Modal, AfterViewInit, OnIn
49
49
  private _mutationObserver;
50
50
  private _intersectionObserver;
51
51
  private get intersectionObserver();
52
+ isContentScrolled: boolean;
53
+ private contentScrolled$;
52
54
  private destroy$;
53
55
  get _isDrawer(): boolean;
54
56
  willClose$: Observable<void>;
55
57
  private modalElementsMoverDelegate;
56
58
  constructor(changeDetector: ChangeDetectorRef, injector: Injector, elementRef: ElementRef<HTMLElement>, renderer: Renderer2, zone: NgZone, resizeObserverService: ResizeObserverService, componentFactoryResolver: ComponentFactoryResolver, windowRef: WindowRef, platform: PlatformService);
57
59
  ngOnInit(): void;
60
+ ngAfterViewInit(): void;
58
61
  private _currentFooter;
59
62
  private set currentFooter(value);
60
63
  private get currentFooter();
@@ -67,10 +70,10 @@ export declare class ModalWrapperComponent implements Modal, AfterViewInit, OnIn
67
70
  private patchScrollElementSize;
68
71
  private observeModalFullHeight;
69
72
  private getIonModalWrapperElement;
70
- ngAfterViewInit(): void;
71
73
  private observeHeaderResize;
72
74
  private listenForIonModalDidPresent;
73
75
  private listenForIonModalWillDismiss;
76
+ private initializeContentScrollListening;
74
77
  scrollToTop(scrollDuration?: KirbyAnimation.Duration): void;
75
78
  scrollToBottom(scrollDuration?: KirbyAnimation.Duration): void;
76
79
  close(data?: any): Promise<void>;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@kirbydesign/designsystem",
3
- "version": "8.5.2",
3
+ "version": "8.6.0-input-bug-fix.0",
4
4
  "dependencies": {
5
5
  "@floating-ui/dom": "^1.1.0",
6
6
  "@angular/cdk": "^15.0.3",
7
7
  "@fontsource/roboto": "4.2.1",
8
8
  "@ionic/angular": "6.2.1",
9
- "@kirbydesign/core": "0.0.49",
9
+ "@kirbydesign/core": "0.0.50",
10
10
  "inputmask": "5.0.5",
11
11
  "tslib": "^2.3.0"
12
12
  },
@@ -2,7 +2,7 @@ import { AfterContentChecked, AfterViewInit, ChangeDetectorRef, ElementRef, Even
2
2
  import { Router } from '@angular/router';
3
3
  import { IonRouterOutlet, NavController } from '@ionic/angular';
4
4
  import { TabsComponent } from '@kirbydesign/designsystem/tabs';
5
- import { ModalElementComponent, ModalElementsAdvertiser, ModalNavigationService, ModalWrapperComponent } from '@kirbydesign/designsystem/modal';
5
+ import { ModalElementComponent, ModalElementsAdvertiser, ModalNavigationService } from '@kirbydesign/designsystem/modal';
6
6
  import { FitHeadingConfig, ResizeObserverService } from '@kirbydesign/designsystem/shared';
7
7
  import { HeaderActionsDirective, HeaderComponent, HeaderTitleActionIconDirective } from '@kirbydesign/designsystem/header';
8
8
  import * as i0 from "@angular/core";
@@ -60,12 +60,10 @@ export declare class PageStickyContentDirective {
60
60
  static ɵfac: i0.ɵɵFactoryDeclaration<PageStickyContentDirective, never>;
61
61
  static ɵdir: i0.ɵɵDirectiveDeclaration<PageStickyContentDirective, "[kirbyPageStickyContent]", never, {}, {}, never, never, false, never>;
62
62
  }
63
- export declare class PageProgressComponent extends ModalElementComponent implements OnInit {
64
- private modalWrapper;
63
+ export declare class PageProgressComponent extends ModalElementComponent {
65
64
  slot: string;
66
- constructor(modalWrapper: ModalWrapperComponent, modalElementsAdvertiser: ModalElementsAdvertiser, elementRef: ElementRef<HTMLElement>);
67
- ngOnInit(): void;
68
- static ɵfac: i0.ɵɵFactoryDeclaration<PageProgressComponent, [{ optional: true; skipSelf: true; }, { optional: true; }, null]>;
65
+ constructor(modalElementsAdvertiser: ModalElementsAdvertiser, elementRef: ElementRef<HTMLElement>);
66
+ static ɵfac: i0.ɵɵFactoryDeclaration<PageProgressComponent, [{ optional: true; }, null]>;
69
67
  static ɵcmp: i0.ɵɵComponentDeclaration<PageProgressComponent, "kirby-page-progress", never, {}, {}, never, ["*"], false, never>;
70
68
  }
71
69
  export declare class PageTitleComponent extends ModalElementComponent {
package/README.md DELETED
@@ -1,7 +0,0 @@
1
- # designsystem
2
-
3
- This library was generated with [Nx](https://nx.dev).
4
-
5
- ## Running unit tests
6
-
7
- Run `nx test designsystem` to execute the unit tests.