@kirbydesign/designsystem 4.0.13 → 4.0.14
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.
- package/bundles/kirbydesign-designsystem.umd.js +16 -2
- package/bundles/kirbydesign-designsystem.umd.js.map +1 -1
- package/bundles/kirbydesign-designsystem.umd.min.js +1 -1
- package/bundles/kirbydesign-designsystem.umd.min.js.map +1 -1
- package/esm2015/lib/components/segmented-control/segment-item.js +1 -1
- package/esm2015/lib/components/segmented-control/segment-item.metadata.json +1 -1
- package/esm2015/lib/components/segmented-control/segmented-control.component.js +17 -3
- package/esm2015/lib/components/segmented-control/segmented-control.component.metadata.json +1 -1
- package/fesm2015/kirbydesign-designsystem.js +15 -2
- package/fesm2015/kirbydesign-designsystem.js.map +1 -1
- package/kirbydesign-designsystem.metadata.json +1 -1
- package/lib/components/segmented-control/segment-item.d.ts +12 -6
- package/lib/components/segmented-control/segmented-control.component.d.ts +3 -0
- package/package.json +1 -1
|
@@ -8653,7 +8653,8 @@
|
|
|
8653
8653
|
SegmentedControlMode["default"] = "default";
|
|
8654
8654
|
})(exports.SegmentedControlMode || (exports.SegmentedControlMode = {}));
|
|
8655
8655
|
var SegmentedControlComponent = /** @class */ (function () {
|
|
8656
|
-
function SegmentedControlComponent() {
|
|
8656
|
+
function SegmentedControlComponent(iconRegistryService) {
|
|
8657
|
+
this.iconRegistryService = iconRegistryService;
|
|
8657
8658
|
this.mode = exports.SegmentedControlMode.default;
|
|
8658
8659
|
this._items = [];
|
|
8659
8660
|
this._selectedIndex = -1;
|
|
@@ -8683,7 +8684,16 @@
|
|
|
8683
8684
|
return this._items;
|
|
8684
8685
|
},
|
|
8685
8686
|
set: function (value) {
|
|
8687
|
+
var _this = this;
|
|
8686
8688
|
this._items = value || [];
|
|
8689
|
+
this._items.forEach(function (item) {
|
|
8690
|
+
if (item.badge === undefined)
|
|
8691
|
+
return;
|
|
8692
|
+
// We need to verify whether badges icon is custom or default, so we can check for it in the template
|
|
8693
|
+
item.badge.isCustomIcon =
|
|
8694
|
+
item.badge.icon !== undefined &&
|
|
8695
|
+
_this.iconRegistryService.getIcon(item.badge.icon) !== undefined;
|
|
8696
|
+
});
|
|
8687
8697
|
var checkedItemIndex = this.items.findIndex(function (item) { return item.checked; });
|
|
8688
8698
|
if (checkedItemIndex > -1) {
|
|
8689
8699
|
console.warn('SegmentItem.checked is deprecated - please remove from your `items` configuration. Use `selectedIndex` or `value` on `<kirby-segmented-control>` instead ');
|
|
@@ -8736,12 +8746,16 @@
|
|
|
8736
8746
|
SegmentedControlComponent.decorators = [
|
|
8737
8747
|
{ type: i0.Component, args: [{
|
|
8738
8748
|
selector: 'kirby-segmented-control',
|
|
8739
|
-
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 <kirby-icon\n
|
|
8749
|
+
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",
|
|
8740
8750
|
// tslint:disable-next-line: no-host-metadata-property
|
|
8741
8751
|
host: { role: 'group' },
|
|
8742
8752
|
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}"]
|
|
8743
8753
|
},] }
|
|
8744
8754
|
];
|
|
8755
|
+
/** @nocollapse */
|
|
8756
|
+
SegmentedControlComponent.ctorParameters = function () { return [
|
|
8757
|
+
{ type: IconRegistryService }
|
|
8758
|
+
]; };
|
|
8745
8759
|
SegmentedControlComponent.propDecorators = {
|
|
8746
8760
|
mode: [{ type: i0.Input }],
|
|
8747
8761
|
_modeCssClass: [{ type: i0.HostBinding, args: ['class',] }],
|