@kirbydesign/extensions-angular 3.3.0 → 3.5.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.
- package/assets/spot-illustrations/airballoon.wind.ballon-part.cloud.medium.svg +8 -0
- package/assets/spot-illustrations/banknotes.arrow.dot.circle.medium.svg +16 -0
- package/assets/spot-illustrations/bell.checkmark.dot.bars.xlarge.svg +9 -0
- package/assets/spot-illustrations/bell.exclamation-mark.triangle.bars.medium.svg +9 -0
- package/assets/spot-illustrations/box.curve.box.half-circle.medium.svg +8 -0
- package/assets/spot-illustrations/box.none.plus-dot.bars.large.svg +9 -0
- package/assets/spot-illustrations/calculator.money.coin.rectangle.medium.svg +9 -0
- package/assets/spot-illustrations/calendar.money.coin.bars.medium.svg +9 -0
- package/assets/spot-illustrations/calender.loop-arrow.zoom.bars.large.svg +9 -0
- package/assets/spot-illustrations/calender.loop-arrow.zoom.bars.xlarge.svg +8 -0
- package/assets/spot-illustrations/calender.money-arrows.header.bars.large.svg +9 -0
- package/assets/spot-illustrations/calender.money-arrows.header.bars.medium.svg +9 -0
- package/assets/spot-illustrations/checkmark.circle.circle-part.shadow.large.svg +9 -0
- package/assets/spot-illustrations/computer.certificate.padlock.circle.large.svg +9 -0
- package/assets/spot-illustrations/cross.circle.circle-part.shadow.large.svg +9 -0
- package/assets/spot-illustrations/exclamation-mark.circle.circle-part.shadow.large.svg +9 -0
- package/assets/spot-illustrations/hand-money.line.money-dot.bars.medium.svg +8 -0
- package/assets/spot-illustrations/hand.balloon.balloon.circle.xlarge.svg +9 -0
- package/assets/spot-illustrations/invest-document.graph.bars.square.medium.svg +9 -0
- package/assets/spot-illustrations/invest-document.graph.bars.square.xlarge.svg +9 -0
- package/assets/spot-illustrations/invest-page.money.dot.circle.medium.svg +8 -0
- package/assets/spot-illustrations/megaphone.sound.megaphone-part.circle.xlarge.svg +9 -0
- package/assets/spot-illustrations/money.arrow.coin.bars.medium.svg +12 -0
- package/assets/spot-illustrations/money.none.coin.bars.medium.svg +16 -0
- package/assets/spot-illustrations/piggy-bank.money.money-dot.bars.medium.svg +8 -0
- package/assets/spot-illustrations/plant.bars.leaf.bars.medium.svg +9 -0
- package/assets/spot-illustrations/robot.none.antenna-dot.body.large.svg +8 -0
- package/assets/spot-illustrations/robot.none.antenna-dot.body.medium.svg +29 -0
- package/fesm2022/kirbydesign-extensions-angular-image-banner.mjs +10 -12
- package/fesm2022/kirbydesign-extensions-angular-image-banner.mjs.map +1 -1
- package/fesm2022/kirbydesign-extensions-angular-localization.mjs +30 -30
- package/fesm2022/kirbydesign-extensions-angular-localization.mjs.map +1 -1
- package/fesm2022/kirbydesign-extensions-angular-sidebar-menu.mjs +620 -0
- package/fesm2022/kirbydesign-extensions-angular-sidebar-menu.mjs.map +1 -0
- package/fesm2022/kirbydesign-extensions-angular-skeleton-loader.mjs +6 -6
- package/fesm2022/kirbydesign-extensions-angular-skeleton-loader.mjs.map +1 -1
- package/fesm2022/kirbydesign-extensions-angular-spot-illustration.mjs +10 -4
- package/fesm2022/kirbydesign-extensions-angular-spot-illustration.mjs.map +1 -1
- package/fesm2022/kirbydesign-extensions-angular.mjs.map +1 -1
- package/package.json +18 -8
- package/sidebar-menu/index.d.ts +86 -0
- package/spot-illustration/index.d.ts +6 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kirbydesign-extensions-angular-sidebar-menu.mjs","sources":["../../sidebar-menu/src/functions/scroll-into-view-if-necessary/scroll-into-view-if-necessary.function.ts","../../sidebar-menu/src/components/menu-item/menu-item.component.ts","../../sidebar-menu/src/components/menu-item/menu-item.component.html","../../sidebar-menu/src/services/menu-state/menu-state.service.ts","../../sidebar-menu/src/components/menu-anchor-item/menu-anchor-item.component.ts","../../sidebar-menu/src/components/menu-anchor-item/menu-anchor-item.component.html","../../sidebar-menu/src/functions/ensure-in-view/ensure-in-view.function.ts","../../sidebar-menu/src/animations/drop-down.animation.ts","../../sidebar-menu/src/components/menu-submenu-item/menu-submenu-item.component.ts","../../sidebar-menu/src/components/menu-submenu-item/menu-submenu-item.component.html","../../sidebar-menu/src/components/menu-item-list/menu-item-list.component.ts","../../sidebar-menu/src/components/menu-item-list/menu-item-list.component.html","../../sidebar-menu/src/components/menu-container/menu-container.component.ts","../../sidebar-menu/src/directives/height-observer/height-observer.directive.ts","../../sidebar-menu/src/functions/select-menu-item/select-menu-item.function.ts","../../sidebar-menu/src/functions/toggle-submenu/toggle-submenu.function.ts","../../sidebar-menu/src/functions/toggle-submenu-auto-collapsed/toggle-submenu-auto-collapsed.function.ts","../../sidebar-menu/src/services/sidebar/sidebar.service.ts","../../sidebar-menu/src/functions/check-menu-item/check-menu-item.function.ts","../../sidebar-menu/src/components/sidebar-menu/sidebar-menu.component.ts","../../sidebar-menu/src/components/sidebar-menu/sidebar-menu.component.html","../../sidebar-menu/src/public-components/sidebar/sidebar.component.ts","../../sidebar-menu/src/public-components/sidebar-footer/sidebar-footer.component.ts","../../sidebar-menu/src/public-components/sidebar-header/sidebar-header.component.ts","../../sidebar-menu/src/sidebar.module.ts","../../sidebar-menu/src/kirbydesign-extensions-angular-sidebar-menu.ts"],"sourcesContent":["/**\n * the HTMLElement.scrollIntoViewIfNecessary is non-standard and not supported in all browsers (e.g. firefox),\n * so we implement a version based on standard\n */\nexport function scrollIntoViewIfNecessary(\n scrollContainer: Element,\n child: Element,\n position: ScrollLogicalPosition = 'center'\n) {\n const containerRect = scrollContainer.getBoundingClientRect();\n const elementRect = child.getBoundingClientRect();\n if (containerRect.top > elementRect.top || containerRect.bottom < elementRect.bottom) {\n child.scrollIntoView({\n behavior: 'instant',\n block: position,\n inline: position,\n });\n }\n}\n","import { Component, computed, input } from '@angular/core';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\nimport { MenuItemSize } from '../../types';\n\n@Component({\n selector: 'a[kirby-x-menu-item],button[kirby-x-menu-item]',\n host: {\n '[attr.id]': '\"item\" + id()',\n '[class]': 'size()',\n },\n templateUrl: './menu-item.component.html',\n styleUrls: ['./menu-item.component.scss'],\n imports: [IconModule, BadgeComponent],\n})\nexport class MenuItemComponent {\n readonly id = input.required<string>();\n readonly size = input.required<MenuItemSize>();\n readonly icon = input<string>();\n\n readonly iconSize = computed(() => (this.size() === 'lg' ? 'sm' : 'xs'));\n}\n","<div class=\"menu-item-start {{ size() }}\">\n @if (icon(); as icon) {\n <kirby-icon [size]=\"iconSize()\" [name]=\"icon\"></kirby-icon>\n }\n</div>\n\n<div class=\"menu-item-content {{ size() }}\">\n <ng-content></ng-content>\n</div>\n\n<div class=\"menu-item-end\">\n <ng-content select=\"[slot='end']\"></ng-content>\n</div>\n","import { Injectable, Signal, signal } from '@angular/core';\n\nimport { CheckEvent, SidebarMenuItem } from '../../models';\n\n@Injectable({ providedIn: 'root' })\nexport class MenuStateService<T extends SidebarMenuItem> {\n readonly #toggledSubmenu = signal<T | undefined>(undefined);\n readonly #selectedItem = signal<T | undefined>(undefined);\n readonly #checkEvent = signal<CheckEvent<T> | undefined>(undefined);\n\n get toggledSubmenu(): Signal<T | undefined> {\n return this.#toggledSubmenu;\n }\n\n set toggledSubmenu(item: T) {\n this.#toggledSubmenu.set(item);\n }\n\n get selectedItem(): Signal<T | undefined> {\n return this.#selectedItem;\n }\n\n set selectedItem(item: T) {\n if (item.selectable ?? true) {\n this.#selectedItem.set(item);\n }\n }\n\n get checkEvent(): Signal<CheckEvent<T> | undefined> {\n return this.#checkEvent.asReadonly();\n }\n\n set checkEvent(event: CheckEvent<T>) {\n this.#checkEvent.set(event);\n }\n}\n","import { Component, computed, inject, input, Signal } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { ToggleButtonComponent } from '@kirbydesign/designsystem/toggle-button';\nimport { ButtonComponent } from '@kirbydesign/designsystem/button';\nimport { IconComponent } from '@kirbydesign/designsystem/icon';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\nimport { Badge, SidebarMenuItem, ToggleButton } from '../../models';\nimport { MenuItemSize } from '../../types';\nimport { MenuItemComponent } from '../menu-item';\nimport { MenuStateService } from '../../services/menu-state';\n\ntype ViewModel = {\n link: Signal<LinkType | undefined>;\n id: Signal<string>;\n size: Signal<MenuItemSize>;\n badge: Signal<Badge | undefined>;\n toggle: Signal<ToggleButton | undefined>;\n icon: Signal<string | undefined>;\n isSelected: Signal<boolean>;\n title: Signal<string>;\n selectItem: () => void;\n checkItem: (checked: boolean) => void;\n};\n\n@Component({\n selector: 'li[kirby-x-menu-anchor-item]',\n templateUrl: './menu-anchor-item.component.html',\n styleUrls: ['./menu-anchor-item.component.scss'],\n host: {\n '[class.selected]': 'vm.isSelected()',\n '[class.checked]': 'vm.toggle()?.isChecked',\n '[class.has-toggle]': '!!vm.toggle()',\n '[class.has-badge]': '!!vm.badge()',\n },\n imports: [\n MenuItemComponent,\n RouterLink,\n ToggleButtonComponent,\n ButtonComponent,\n IconComponent,\n BadgeComponent,\n ],\n})\nexport class MenuAnchorItemComponent<T extends SidebarMenuItem> {\n readonly item = input.required<T>();\n readonly size = input.required<MenuItemSize>();\n\n readonly #menuStateService = inject(MenuStateService);\n\n #selectItem(): void {\n this.#menuStateService.selectedItem = this.item();\n }\n\n #checkItem(checked: boolean): void {\n this.#menuStateService.checkEvent = { item: this.item(), checked };\n }\n\n readonly vm: ViewModel = {\n link: computed(() => determineLinkType(this.item())),\n id: computed(() => this.item().id),\n size: this.size,\n badge: computed(() => this.item().badge),\n toggle: computed(() => this.item().toggle),\n icon: computed(() => this.item().icon),\n isSelected: computed(() => this.item().selected ?? false),\n title: computed(() => this.item().title ?? ''),\n selectItem: this.#selectItem.bind(this),\n checkItem: this.#checkItem.bind(this),\n };\n}\n\nfunction determineLinkType(item: SidebarMenuItem): LinkType | undefined {\n if (item.isAction) {\n return {\n type: 'action',\n url: item.link?.url ?? '',\n };\n }\n if (item.link?.relativeLink) {\n return {\n type: 'router-link',\n target: item.link.target ?? '_self',\n route: item.link.relativeLink,\n queryParams: item.link.queryParams,\n skipLocationChange: item.skipLocationChange ?? false,\n replaceUrl: item.replaceUrl ?? false,\n };\n }\n if (item.link?.url) {\n return {\n type: 'external-link',\n url: item.link.url,\n target: item.link.target ?? '_self',\n };\n }\n return undefined;\n}\n\ntype ActionType = {\n type: 'action';\n url: string;\n};\n\ntype RouterLinkType = {\n type: 'router-link';\n target: string;\n route: string;\n queryParams?: { [key: string]: unknown };\n skipLocationChange: boolean;\n replaceUrl: boolean;\n};\n\ntype ExternalLinkType = {\n type: 'external-link';\n url: string;\n target: string;\n};\n\ntype LinkType = ActionType | RouterLinkType | ExternalLinkType;\n","@let link = vm.link();\n@if (link) {\n @switch (link.type) {\n @case ('action') {\n <a\n kirby-x-menu-item\n [class.selected]=\"vm.isSelected()\"\n [id]=\"vm.id()\"\n [size]=\"vm.size()\"\n [icon]=\"vm.icon()\"\n [attr.href]=\"link.url\"\n (click)=\"$event.preventDefault(); vm.selectItem()\"\n (keydown.enter)=\"$event.preventDefault(); vm.selectItem()\"\n >\n {{ vm.title() }}\n <div class=\"end-wrapper\" slot=\"end\">\n @if (vm.badge(); as badge) {\n <kirby-badge class=\"item-badge\" [themeColor]=\"badge.themeColor ?? 'primary'\">\n {{ badge.value }}\n </kirby-badge>\n }\n </div>\n </a>\n }\n @case ('router-link') {\n <a\n kirby-x-menu-item\n [class.selected]=\"vm.isSelected()\"\n [id]=\"vm.id()\"\n [size]=\"vm.size()\"\n [icon]=\"vm.icon()\"\n [routerLink]=\"link.route\"\n [queryParams]=\"link.queryParams\"\n [skipLocationChange]=\"link.skipLocationChange\"\n [replaceUrl]=\"link.replaceUrl\"\n (click)=\"vm.selectItem()\"\n (keydown.enter)=\"vm.selectItem()\"\n >\n {{ vm.title() }}\n <div class=\"end-wrapper\" slot=\"end\">\n @if (vm.badge(); as badge) {\n <kirby-badge class=\"item-badge\" [themeColor]=\"badge.themeColor ?? 'primary'\">\n {{ badge.value }}\n </kirby-badge>\n }\n </div>\n </a>\n }\n @case ('external-link') {\n <a\n kirby-x-menu-item\n [class.selected]=\"vm.isSelected()\"\n [id]=\"vm.id()\"\n [size]=\"vm.size()\"\n [icon]=\"vm.icon()\"\n [attr.href]=\"link.url\"\n [attr.target]=\"link.target\"\n (click)=\"vm.selectItem()\"\n (keydown.enter)=\"vm.selectItem()\"\n >\n {{ vm.title() }}\n <div class=\"end-wrapper\" slot=\"end\">\n @if (vm.badge(); as badge) {\n <kirby-badge class=\"item-badge\" [themeColor]=\"badge.themeColor ?? 'primary'\">\n {{ badge.value }}\n </kirby-badge>\n }\n </div>\n </a>\n }\n }\n\n @if (vm.toggle(); as toggle) {\n <kirby-toggle-button\n class=\"toggle-button-wrapper\"\n [checked]=\"toggle.isChecked\"\n (checkChanged)=\"vm.checkItem($event)\"\n >\n <button\n kirby-button\n unchecked\n size=\"xs\"\n attentionLevel=\"3\"\n tabindex=\"-1\"\n [noDecoration]=\"true\"\n class=\"toggle-button toggle-button-unchecked\"\n >\n <kirby-icon size=\"xs\" [name]=\"toggle.uncheckedIcon\"></kirby-icon>\n </button>\n <button\n kirby-button\n checked\n size=\"xs\"\n attentionLevel=\"3\"\n tabindex=\"-1\"\n [noDecoration]=\"true\"\n class=\"toggle-button toggle-button-checked\"\n >\n <kirby-icon size=\"xs\" [name]=\"toggle.checkedIcon\"></kirby-icon>\n </button>\n </kirby-toggle-button>\n }\n}\n","import { scrollIntoViewIfNecessary } from '../scroll-into-view-if-necessary';\n\n/**\n * Ensures the element top is not smaller than the scroll container top.\n */\nexport function ensureInView(scrollContainer: Element, element: Element, durationMs: number): void {\n let startTime: number | null = null;\n\n const updatePosition = (timestamp: number) => {\n if (!startTime) {\n startTime = timestamp;\n }\n\n const elapsedTime = timestamp - startTime;\n\n if (elapsedTime < durationMs) {\n scrollIntoViewIfNecessary(scrollContainer, element, 'start');\n requestAnimationFrame(updatePosition);\n }\n };\n\n requestAnimationFrame(updatePosition);\n}\n","import { animate, AUTO_STYLE, style, transition, trigger } from '@angular/animations';\n\nexport const DropDownAnimation = trigger('dropDownMenu', [\n transition(':enter', [\n style({ height: 0, overflow: 'hidden' }),\n animate('300ms ease', style({ height: AUTO_STYLE })),\n ]),\n\n transition(':leave', [\n style({ height: AUTO_STYLE, overflow: 'hidden' }),\n animate('300ms ease', style({ height: 0 })),\n ]),\n]);\n","import { Component, computed, ElementRef, forwardRef, inject, input, Signal } from '@angular/core';\nimport { IconComponent } from '@kirbydesign/designsystem/icon';\nimport { SidebarMenuItem } from '../../models';\nimport { MenuItemComponent } from '../menu-item';\nimport { MenuItemSize } from '../../types';\nimport { MenuItemListComponent } from '../menu-item-list';\nimport { MenuStateService } from '../../services/menu-state';\nimport { ensureInView } from '../../functions/ensure-in-view';\nimport { DropDownAnimation } from '../../animations';\n\ntype ViewModel<T> = {\n id: Signal<string>;\n submenuId: Signal<string>;\n title: Signal<string>;\n size: Signal<MenuItemSize>;\n icon: Signal<string | undefined>;\n isExpanded: Signal<boolean>;\n children: Signal<T[]>;\n submenuSize: Signal<MenuItemSize>;\n disableAnimations: Signal<boolean>;\n toggleSubmenu: () => void;\n};\n\n@Component({\n selector: 'li[kirby-x-menu-submenu-item]',\n templateUrl: './menu-submenu-item.component.html',\n styleUrls: ['./menu-submenu-item.component.scss'],\n animations: [DropDownAnimation],\n imports: [MenuItemComponent, IconComponent, forwardRef(() => MenuItemListComponent)],\n})\nexport class MenuSubmenuItemComponent<T extends SidebarMenuItem> {\n readonly item = input.required<T>();\n readonly size = input.required<MenuItemSize>();\n readonly disableAnimations = input.required<boolean>();\n\n readonly #element = inject(ElementRef).nativeElement as Element;\n readonly #menuStateService = inject(MenuStateService);\n\n readonly #isExpanded = computed(() => this.item().isExpanded ?? false);\n readonly #submenuSize = computed(() => {\n switch (this.size()) {\n case 'lg':\n return 'md';\n case 'md':\n return 'sm';\n default:\n return 'xs';\n }\n });\n\n #toggleSubmenu(): void {\n const button = this.#element.querySelector('button[kirby-x-menu-item]');\n const scrollContainer = this.#element.closest('.sidebar-content');\n if (button && scrollContainer) {\n console.log('Ensuring submenu item is in view');\n ensureInView(scrollContainer, button, 400);\n }\n this.#menuStateService.toggledSubmenu = this.item();\n }\n\n readonly vm: ViewModel<T> = {\n id: computed(() => this.item().id),\n submenuId: computed(() => `item-${this.item().id}-content`),\n title: computed(() => this.item().title ?? ''),\n size: this.size,\n icon: computed(() => this.item().icon),\n isExpanded: this.#isExpanded,\n children: computed(() => this.item().children ?? []),\n submenuSize: this.#submenuSize,\n disableAnimations: this.disableAnimations,\n toggleSubmenu: this.#toggleSubmenu.bind(this),\n };\n}\n","<button\n kirby-x-menu-item\n type=\"button\"\n class=\"submenu-toggle\"\n [id]=\"vm.id()\"\n [size]=\"vm.size()\"\n [icon]=\"vm.icon()\"\n [attr.aria-controls]=\"vm.submenuId()\"\n [attr.aria-expanded]=\"vm.isExpanded()\"\n (click)=\"vm.toggleSubmenu()\"\n>\n {{ vm.title() }}\n <kirby-icon\n slot=\"end\"\n name=\"arrow-more\"\n class=\"disclosure\"\n [class.rotate]=\"vm.isExpanded()\"\n ></kirby-icon>\n</button>\n@if (vm.isExpanded()) {\n <ul\n kirby-x-menu-item-list\n [items]=\"vm.children()\"\n [size]=\"vm.submenuSize()\"\n [id]=\"vm.submenuId()\"\n [disableAnimations]=\"vm.disableAnimations()\"\n [@dropDownMenu]\n [@.disabled]=\"vm.disableAnimations()\"\n ></ul>\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n forwardRef,\n input,\n Signal,\n} from '@angular/core';\nimport { DividerComponent } from '@kirbydesign/designsystem/divider';\nimport { SidebarMenuItem } from '../../models';\nimport { MenuAnchorItemComponent } from '../menu-anchor-item';\nimport { MenuSubmenuItemComponent } from '../menu-submenu-item';\nimport { MenuItemSize } from '../../types';\n\ntype ViewModel<T> = {\n id: Signal<string | undefined>;\n size: Signal<MenuItemSize>;\n items: Signal<T[]>;\n disableAnimations: Signal<boolean>;\n};\n\n@Component({\n selector: 'ul[kirby-x-menu-item-list]',\n templateUrl: './menu-item-list.component.html',\n styleUrls: ['./menu-item-list.component.scss'],\n host: {\n '[attr.id]': 'vm.id()',\n '[class]': 'vm.size()',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [DividerComponent, MenuAnchorItemComponent, forwardRef(() => MenuSubmenuItemComponent)],\n})\nexport class MenuItemListComponent<T extends SidebarMenuItem> {\n readonly items = input.required<T[]>();\n readonly size = input<MenuItemSize>('lg');\n readonly id = input<string>();\n readonly disableAnimations = input<boolean>(false);\n\n readonly vm: ViewModel<T> = {\n id: this.id,\n size: this.size,\n items: computed(() => this.items().filter((item) => !item.hidden)),\n disableAnimations: this.disableAnimations,\n };\n}\n","@for (item of vm.items(); track item.id) {\n @if (item.isDivider) {\n <kirby-divider aria-hidden=\"true\"></kirby-divider>\n } @else if (item.children) {\n <li\n kirby-x-menu-submenu-item\n [item]=\"item\"\n [size]=\"vm.size()\"\n [disableAnimations]=\"vm.disableAnimations()\"\n ></li>\n } @else {\n <li kirby-x-menu-anchor-item [item]=\"item\" [size]=\"vm.size()\"></li>\n }\n}\n","import {\n afterNextRender,\n Component,\n ElementRef,\n inject,\n input,\n Signal,\n signal,\n} from '@angular/core';\n\nimport { scrollIntoViewIfNecessary } from '../../functions/scroll-into-view-if-necessary';\nimport { SidebarMenuItem } from '../../models';\nimport { MenuItemListComponent } from '../menu-item-list';\n\ntype ViewModel<T> = {\n items: Signal<T[]>;\n disableAnimations: Signal<boolean>;\n};\n\n@Component({\n selector: 'kirby-x-menu-container',\n template: `\n <nav aria-label=\"Sidebar Menu\">\n <ul\n kirby-x-menu-item-list\n [items]=\"vm.items()\"\n [disableAnimations]=\"vm.disableAnimations()\"\n ></ul>\n </nav>\n `,\n styles: 'nav { padding: 0 var(--kirby-spacing-xxs); }',\n imports: [MenuItemListComponent],\n})\nexport class MenuContainerComponent<T extends SidebarMenuItem> {\n readonly items = input.required<T[]>();\n\n readonly #element = inject(ElementRef).nativeElement;\n\n readonly #disableAnimations = signal<boolean>(true);\n\n constructor() {\n afterNextRender({\n read: () => {\n this.#scrollSelectedItemIntoView();\n this.#disableAnimations.set(false);\n },\n });\n }\n\n #scrollSelectedItemIntoView() {\n const selectedItem = this.#element.querySelector('.menu-item.selected');\n const scrollContainer = this.#element.closest('.sidebar-content');\n if (selectedItem && scrollContainer) {\n scrollIntoViewIfNecessary(scrollContainer, selectedItem);\n }\n }\n\n readonly vm: ViewModel<T> = {\n items: this.items,\n disableAnimations: this.#disableAnimations.asReadonly(),\n };\n}\n","import { Directive, ElementRef, inject, OnDestroy, output } from '@angular/core';\nimport { debounceTime, Subject } from 'rxjs';\nimport { distinctUntilChanged } from 'rxjs/operators';\n\n@Directive({\n selector: '[kirbyXHeightObserver]',\n})\nexport class HeightObserverDirective implements OnDestroy {\n readonly heightChange = output<number>();\n\n readonly #element = inject(ElementRef).nativeElement;\n readonly #heightChanges = new Subject<number>();\n\n readonly #observer = new ResizeObserver((entries) => {\n this.#heightChanges.next(entries[0].contentRect.height);\n });\n\n constructor() {\n this.#observer.observe(this.#element, { box: 'content-box' });\n this.#heightChanges\n .pipe(debounceTime(50), distinctUntilChanged())\n .subscribe(this.heightChange.emit.bind(this.heightChange));\n }\n\n ngOnDestroy() {\n this.#observer.unobserve(this.#element);\n this.#observer.disconnect();\n }\n}\n","import { SidebarMenuItem } from '../../models';\n\nexport function selectMenuItem<T extends SidebarMenuItem>(itemId: string, items: T[]): T[] {\n return items.map((item) => {\n if (item.id === itemId) {\n return { ...item, selected: true };\n }\n if (item.children) {\n return { ...item, children: selectMenuItem(itemId, item.children) };\n }\n return { ...item, selected: false };\n });\n}\n","import { SidebarMenuItem } from '../../models';\n\nexport function toggleSubmenu<T extends SidebarMenuItem>(itemId: string, items: T[]): T[] {\n return items.map((item) => {\n if (item.id === itemId) {\n return { ...item, isExpanded: !item.isExpanded };\n }\n if (item.children && item.isExpanded) {\n return { ...item, children: toggleSubmenu(itemId, item.children) };\n }\n return item;\n });\n}\n","import { SidebarMenuItem } from '../../models';\n\nexport function toggleSubmenuAutoCollapsed<T extends SidebarMenuItem>(\n itemId: string,\n items: T[]\n): T[] {\n return toggleSubmenuAndCollapseNonAncestors(itemId, items).updatedItems;\n}\n\nfunction toggleSubmenuAndCollapseNonAncestors<T extends SidebarMenuItem>(\n itemId: string,\n items: T[]\n): { updatedItems: T[]; isAncestor: boolean } {\n let found = false;\n const updatedItems = items.map((item) => {\n if (found) {\n return collapse(item);\n }\n if (item.id === itemId) {\n found = true;\n return item.isExpanded ? collapse(item) : { ...item, isExpanded: true };\n }\n if (item.children && item.isExpanded) {\n const { updatedItems, isAncestor } = toggleSubmenuAndCollapseNonAncestors(\n itemId,\n item.children\n );\n found = isAncestor;\n return { ...item, isExpanded: isAncestor, children: updatedItems };\n }\n return item;\n });\n return { updatedItems, isAncestor: found };\n}\n\nfunction collapse<T extends SidebarMenuItem>(item: T): T {\n if (item.children && item.isExpanded) {\n return { ...item, isExpanded: false, children: item.children.map(collapse) };\n }\n return item;\n}\n","import { computed, Injectable, Signal, signal } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class SidebarService {\n readonly #menuHeight = signal<number>(0);\n readonly #containerHeight = signal<number>(0);\n readonly #scrollDistance = signal<number>(0);\n\n readonly #scrollableDistance = computed(() =>\n Math.max(0, this.#menuHeight() - this.#containerHeight())\n );\n readonly #hasScrollbar = computed(() => this.#scrollableDistance() > 0);\n readonly #notAtBottom = computed(() => this.#scrollDistance() < this.#scrollableDistance());\n readonly #showHeaderBottomBorder = computed(() => this.#scrollDistance() > 0);\n readonly #showFooterTopBorder = computed(() => this.#hasScrollbar() && this.#notAtBottom());\n\n get showHeaderBottomBorder(): Signal<boolean> {\n return this.#showHeaderBottomBorder;\n }\n\n get showFooterTopBorder(): Signal<boolean> {\n return this.#showFooterTopBorder;\n }\n\n set menuHeight(height: number) {\n this.#menuHeight.set(height);\n }\n\n set containerHeight(height: number) {\n this.#containerHeight.set(height);\n }\n\n set scrollDistance(distance: number) {\n this.#scrollDistance.set(distance);\n }\n}\n","import { SidebarMenuItem } from '../../models';\n\nexport function checkMenuItem<T extends SidebarMenuItem>(\n itemId: string,\n isChecked: boolean,\n items: T[]\n): T[] {\n return items.map((item) => {\n if (item.id === itemId) {\n return { ...item, toggle: { ...item.toggle, isChecked } };\n }\n if (item.children) {\n return { ...item, children: checkMenuItem(itemId, isChecked, item.children) };\n }\n return item;\n });\n}\n","import { Component, effect, inject, input, model, output, Signal } from '@angular/core';\nimport { MenuContainerComponent } from '../menu-container';\nimport { HeightObserverDirective } from '../../directives/height-observer';\nimport { selectMenuItem } from '../../functions/select-menu-item';\nimport { toggleSubmenu } from '../../functions/toggle-submenu';\nimport { toggleSubmenuAutoCollapsed } from '../../functions/toggle-submenu-auto-collapsed';\nimport { CheckEvent, SidebarMenuItem } from '../../models';\nimport { MenuStateService } from '../../services/menu-state';\nimport { SidebarService } from '../../services/sidebar';\nimport { checkMenuItem } from '../../functions/check-menu-item';\n\ntype ViewModel<T> = {\n items: Signal<T[]>;\n showHeaderBottomBorder: Signal<boolean>;\n showFooterTopBorder: Signal<boolean>;\n setContainerHeight: (height: number) => void;\n setMenuHeight: (height: number) => void;\n setScroll: (scroll: Event) => void;\n};\n\n@Component({\n selector: 'aside[kirby-x-sidebar-menu]',\n templateUrl: './sidebar-menu.component.html',\n styleUrls: ['./sidebar-menu.component.scss'],\n imports: [HeightObserverDirective, MenuContainerComponent],\n})\nexport class SidebarMenuComponent<T extends SidebarMenuItem> {\n readonly menuItems = model.required<T[]>();\n readonly autoCollapse = input<boolean>(false);\n readonly submenuToggle = output<T>();\n readonly itemClick = output<T>();\n readonly itemChecked = output<CheckEvent<T>>();\n\n readonly #sidebarService = inject(SidebarService);\n readonly #menuStateService = inject(MenuStateService<T>);\n\n constructor() {\n effect(() => {\n const toggledSubmenu = this.#menuStateService.toggledSubmenu();\n if (toggledSubmenu) {\n this.submenuToggle.emit(toggledSubmenu);\n this.menuItems.update((items) =>\n this.autoCollapse()\n ? toggleSubmenuAutoCollapsed(toggledSubmenu.id, items)\n : toggleSubmenu(toggledSubmenu.id, items)\n );\n }\n });\n\n effect(() => {\n const selectedItem = this.#menuStateService.selectedItem();\n if (selectedItem) {\n this.itemClick.emit(selectedItem);\n this.menuItems.update((items) => selectMenuItem(selectedItem.id, items));\n }\n });\n\n effect(() => {\n const checkEvent = this.#menuStateService.checkEvent();\n if (checkEvent) {\n this.itemChecked.emit(checkEvent);\n this.menuItems.update((items) =>\n checkMenuItem(checkEvent.item.id, checkEvent.checked, items)\n );\n }\n });\n }\n\n #setContainerHeight(height: number): void {\n this.#sidebarService.containerHeight = height;\n }\n\n #setMenuHeight(height: number): void {\n this.#sidebarService.menuHeight = height;\n }\n\n #setScrollDistance(event: Event): void {\n const target = event.target as HTMLElement | null;\n if (target) {\n this.#sidebarService.scrollDistance = target.scrollTop;\n }\n }\n\n readonly vm: ViewModel<T> = {\n items: this.menuItems.asReadonly(),\n showHeaderBottomBorder: this.#sidebarService.showHeaderBottomBorder,\n showFooterTopBorder: this.#sidebarService.showFooterTopBorder,\n setContainerHeight: this.#setContainerHeight.bind(this),\n setMenuHeight: this.#setMenuHeight.bind(this),\n setScroll: this.#setScrollDistance.bind(this),\n };\n}\n","<div class=\"sidebar-header\" [class.bottom-border]=\"vm.showHeaderBottomBorder()\">\n <ng-content select=\"[slot='header']\"></ng-content>\n</div>\n<div\n kirbyXHeightObserver\n class=\"sidebar-content\"\n (scroll)=\"vm.setScroll($event)\"\n (heightChange)=\"vm.setContainerHeight($event)\"\n>\n <kirby-x-menu-container\n kirbyXHeightObserver\n [items]=\"vm.items()\"\n (heightChange)=\"vm.setMenuHeight($event)\"\n ></kirby-x-menu-container>\n</div>\n<div class=\"sidebar-footer\" [class.top-border]=\"vm.showFooterTopBorder()\">\n <ng-content select=\"[slot='footer']\"></ng-content>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { CheckEvent, SidebarMenuItem } from '../../models';\nimport { SidebarMenuComponent } from '../../components/sidebar-menu';\n\n@Component({\n selector: 'kirby-x-sidebar',\n template: `\n <aside\n kirby-x-sidebar-menu\n [menuItems]=\"menuItems\"\n [autoCollapse]=\"autoCollapse\"\n (menuItemsChange)=\"changeMenuItems($event)\"\n (itemClick)=\"afterMenuClicked.emit($event)\"\n (submenuToggle)=\"afterMenuToggled.emit($event)\"\n (itemChecked)=\"itemChecked.emit($event)\"\n >\n <ng-content select=\"kirby-x-sidebar-header\" slot=\"header\"></ng-content>\n <ng-content select=\"kirby-x-sidebar-footer\" slot=\"footer\"></ng-content>\n </aside>\n `,\n imports: [SidebarMenuComponent],\n})\nexport class SidebarComponent<T extends SidebarMenuItem> {\n @Input() menuItems!: T[];\n @Input() autoCollapse = false;\n @Output() menuItemsChange = new EventEmitter<T[]>();\n @Output() afterMenuClicked = new EventEmitter<T>();\n @Output() afterMenuToggled = new EventEmitter<T>();\n @Output() itemChecked = new EventEmitter<CheckEvent<T>>();\n\n /**\n * @deprecated has not had an effect for a long time\n */\n @Input() expandIconOnHover = false;\n\n /**\n * @deprecated should use menuItemsChange or two-way binding on menuItems instead\n **/\n @Output() menuItemsChanged = new EventEmitter<T[]>();\n\n changeMenuItems(event: T[]): void {\n this.menuItems = event;\n this.menuItemsChange.emit(this.menuItems);\n this.menuItemsChanged.emit(this.menuItems);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'kirby-x-sidebar-footer',\n template: '<footer><ng-content></ng-content></footer>',\n styles: `\n :host,\n footer {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n\n :host {\n min-height: 80px;\n }\n\n footer {\n width: 100%;\n }\n `,\n})\nexport class SidebarFooterComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'kirby-x-sidebar-header',\n template: `\n <header>\n <span class=\"sidebar-logo\"><ng-content slot=\"logo\"></ng-content></span>\n <div class=\"action-bar\">\n <ng-content select=\"[slot='action']\"></ng-content>\n </div>\n </header>\n `,\n styles: `\n :host,\n header {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n\n :host {\n flex-grow: 1;\n }\n\n header {\n width: 100%;\n }\n\n :host::ng-deep [slot='logo'] {\n height: inherit;\n }\n\n :host::ng-deep [slot='logo'] img {\n object-fit: contain;\n width: 100%;\n height: 100%;\n }\n\n .sidebar-logo {\n display: flex;\n align-items: center;\n height: 50px;\n margin: var(--kirby-spacing-l) var(--kirby-spacing-m);\n }\n\n .action-bar {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 100%;\n\n &:has([slot='action']) {\n padding: 0 var(--kirby-spacing-xs) var(--kirby-spacing-xs);\n }\n }\n `,\n})\nexport class SidebarHeaderComponent {}\n","import { NgModule } from '@angular/core';\nimport { SidebarComponent } from './public-components/sidebar';\nimport { SidebarFooterComponent } from './public-components/sidebar-footer';\nimport { SidebarHeaderComponent } from './public-components/sidebar-header';\n\n@NgModule({\n imports: [SidebarComponent, SidebarFooterComponent, SidebarHeaderComponent],\n exports: [SidebarComponent, SidebarFooterComponent, SidebarHeaderComponent],\n})\nexport class SidebarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { HostBinding, Input, Component } from '@angular/core';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { CardComponent } from '@kirbydesign/designsystem/card';
|
|
4
|
+
import { IconComponent } from '@kirbydesign/designsystem/icon';
|
|
5
5
|
import { IonSkeletonText } from '@ionic/angular/standalone';
|
|
6
6
|
|
|
7
7
|
class SkeletonLoaderComponent {
|
|
@@ -18,12 +18,12 @@ class SkeletonLoaderComponent {
|
|
|
18
18
|
get _cssClass() {
|
|
19
19
|
return [this.theme, this.shape].filter((cssClass) => !!cssClass);
|
|
20
20
|
}
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
22
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SkeletonLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: SkeletonLoaderComponent, isStandalone: true, selector: "kirby-x-skeleton-loader", inputs: { theme: "theme", shape: "shape" }, host: { properties: { "class": "this._cssClass" } }, ngImport: i0, template: "<ion-skeleton-text animated=\"true\"></ion-skeleton-text>\n", styles: [":host{overflow:hidden;display:flex;justify-content:center;align-items:center;height:var(--kirby-font-size-n)}:host.rectangle{border-radius:var(--kirby-border-radius-xs)}:host.circle{border-radius:var(--kirby-border-radius-circle)}:host.pill{border-radius:var(--kirby-border-radius-pill)}:host.dark ion-skeleton-text{background-image:linear-gradient(to right,#ffffff29,#ffffff47,#ffffff29 50%)}:host.light ion-skeleton-text{background-image:linear-gradient(to right,#2828280f,#2828281f,#2828280f 50%)}:host-context(.kirby-color-brightness-white) ion-skeleton-text,:host-context(.kirby-color-brightness-light) ion-skeleton-text{background-image:linear-gradient(to right,#2828280f,#2828281f,#2828280f 50%)}:host-context(.kirby-color-brightness-dark) ion-skeleton-text{background-image:linear-gradient(to right,#ffffff29,#ffffff47,#ffffff29 50%)}ion-skeleton-text{position:relative;margin:0;animation-duration:1.5s;background-clip:border-box}\n"], dependencies: [{ kind: "component", type: IonSkeletonText, selector: "ion-skeleton-text", inputs: ["animated"] }] }); }
|
|
23
23
|
}
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SkeletonLoaderComponent, decorators: [{
|
|
25
25
|
type: Component,
|
|
26
|
-
args: [{ selector: 'kirby-x-skeleton-loader', standalone: true, imports: [
|
|
26
|
+
args: [{ selector: 'kirby-x-skeleton-loader', standalone: true, imports: [CardComponent, IconComponent, IonSkeletonText], template: "<ion-skeleton-text animated=\"true\"></ion-skeleton-text>\n", styles: [":host{overflow:hidden;display:flex;justify-content:center;align-items:center;height:var(--kirby-font-size-n)}:host.rectangle{border-radius:var(--kirby-border-radius-xs)}:host.circle{border-radius:var(--kirby-border-radius-circle)}:host.pill{border-radius:var(--kirby-border-radius-pill)}:host.dark ion-skeleton-text{background-image:linear-gradient(to right,#ffffff29,#ffffff47,#ffffff29 50%)}:host.light ion-skeleton-text{background-image:linear-gradient(to right,#2828280f,#2828281f,#2828280f 50%)}:host-context(.kirby-color-brightness-white) ion-skeleton-text,:host-context(.kirby-color-brightness-light) ion-skeleton-text{background-image:linear-gradient(to right,#2828280f,#2828281f,#2828280f 50%)}:host-context(.kirby-color-brightness-dark) ion-skeleton-text{background-image:linear-gradient(to right,#ffffff29,#ffffff47,#ffffff29 50%)}ion-skeleton-text{position:relative;margin:0;animation-duration:1.5s;background-clip:border-box}\n"] }]
|
|
27
27
|
}], propDecorators: { theme: [{
|
|
28
28
|
type: Input
|
|
29
29
|
}], shape: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kirbydesign-extensions-angular-skeleton-loader.mjs","sources":["
|
|
1
|
+
{"version":3,"file":"kirbydesign-extensions-angular-skeleton-loader.mjs","sources":["../../skeleton-loader/src/skeleton-loader.component.ts","../../skeleton-loader/src/skeleton-loader.component.html","../../skeleton-loader/src/kirbydesign-extensions-angular-skeleton-loader.ts"],"sourcesContent":["import { Component, HostBinding, Input } from '@angular/core';\nimport { CardComponent } from '@kirbydesign/designsystem/card';\nimport { IconComponent } from '@kirbydesign/designsystem/icon';\nimport { IonSkeletonText } from '@ionic/angular/standalone';\n\n@Component({\n selector: 'kirby-x-skeleton-loader',\n standalone: true,\n imports: [CardComponent, IconComponent, IonSkeletonText],\n templateUrl: './skeleton-loader.component.html',\n styleUrl: './skeleton-loader.component.scss',\n})\nexport class SkeletonLoaderComponent {\n /**\n * The theme for the skeleton loader to use for gradient color. Theme is automatically set when used inside a themed kirby-card.\n */\n @Input()\n theme: 'light' | 'dark' = 'light';\n\n /**\n * The shape of the skeleton loader.\n */\n @Input()\n shape: 'rectangle' | 'circle' | 'pill' = 'rectangle';\n\n @HostBinding('class')\n get _cssClass() {\n return [this.theme, this.shape].filter((cssClass) => !!cssClass);\n }\n}\n","<ion-skeleton-text animated=\"true\"></ion-skeleton-text>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAYa,uBAAuB,CAAA;AAPpC,IAAA,WAAA,GAAA;AAQE;;AAEG;QAEH,IAAA,CAAA,KAAK,GAAqB,OAAO;AAEjC;;AAEG;QAEH,IAAA,CAAA,KAAK,GAAoC,WAAW;AAMrD,IAAA;AAJC,IAAA,IACI,SAAS,GAAA;QACX,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,CAAC;IAClE;+GAhBW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZpC,6DACA,EAAA,MAAA,EAAA,CAAA,86BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDO0C,eAAe,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAI5C,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAPnC,SAAS;+BACE,yBAAyB,EAAA,UAAA,EACvB,IAAI,EAAA,OAAA,EACP,CAAC,aAAa,EAAE,aAAa,EAAE,eAAe,CAAC,EAAA,QAAA,EAAA,6DAAA,EAAA,MAAA,EAAA,CAAA,86BAAA,CAAA,EAAA;;sBAQvD;;sBAMA;;sBAGA,WAAW;uBAAC,OAAO;;;AEzBtB;;AAEG;;;;"}
|
|
@@ -90,7 +90,13 @@ const illustrations = {
|
|
|
90
90
|
|
|
91
91
|
class SpotIllustrationComponent {
|
|
92
92
|
constructor() {
|
|
93
|
+
/**
|
|
94
|
+
* The size of the Spot Illustration
|
|
95
|
+
*/
|
|
93
96
|
this.size = input(SpotIllustrationSize.MD, ...(ngDevMode ? [{ debugName: "size" }] : []));
|
|
97
|
+
/**
|
|
98
|
+
* The name of the Spot Illustration to display
|
|
99
|
+
*/
|
|
94
100
|
this.name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
95
101
|
this.illustration = computed(() => {
|
|
96
102
|
const name = this.name();
|
|
@@ -104,13 +110,13 @@ class SpotIllustrationComponent {
|
|
|
104
110
|
: undefined;
|
|
105
111
|
}, ...(ngDevMode ? [{ debugName: "svg" }] : []));
|
|
106
112
|
}
|
|
107
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
108
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.
|
|
113
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SpotIllustrationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
114
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: SpotIllustrationComponent, isStandalone: true, selector: "kirby-x-spot-illustration", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@if (svg()) {\n <ion-icon [src]=\"svg()\" [class]=\"size()\"></ion-icon>\n}\n", styles: [".sm{font-size:40px;display:block}.md{font-size:56px;display:block}.lg{font-size:96px;display:block}.xl{font-size:136px;display:block}:host-context(.kirby-color-brightness-dark){--kirby-x-spot-illustration-background-color: var(--kirby-white-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-white);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}:host-context(.kirby-color-brightness-white){--kirby-x-spot-illustration-background-color: var(--kirby-dark-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-black);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}ion-icon::part(background){fill:var(--kirby-x-spot-illustration-background-color, var(--kirby-dark-overlay))}ion-icon::part(outline){fill:var(--kirby-x-spot-illustration-outline-color, var(--kirby-black))}ion-icon::part(highlight){fill:var(--kirby-x-spot-illustration-highlight-color, var(--kirby-primary))}ion-icon::part(danger){fill:var(--kirby-danger)}ion-icon::part(warning){fill:var(--kirby-warning)}ion-icon::part(success){fill:var(--kirby-success)}\n"], dependencies: [{ kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
|
|
109
115
|
}
|
|
110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SpotIllustrationComponent, decorators: [{
|
|
111
117
|
type: Component,
|
|
112
118
|
args: [{ selector: 'kirby-x-spot-illustration', imports: [IonIcon], template: "@if (svg()) {\n <ion-icon [src]=\"svg()\" [class]=\"size()\"></ion-icon>\n}\n", styles: [".sm{font-size:40px;display:block}.md{font-size:56px;display:block}.lg{font-size:96px;display:block}.xl{font-size:136px;display:block}:host-context(.kirby-color-brightness-dark){--kirby-x-spot-illustration-background-color: var(--kirby-white-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-white);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}:host-context(.kirby-color-brightness-white){--kirby-x-spot-illustration-background-color: var(--kirby-dark-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-black);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}ion-icon::part(background){fill:var(--kirby-x-spot-illustration-background-color, var(--kirby-dark-overlay))}ion-icon::part(outline){fill:var(--kirby-x-spot-illustration-outline-color, var(--kirby-black))}ion-icon::part(highlight){fill:var(--kirby-x-spot-illustration-highlight-color, var(--kirby-primary))}ion-icon::part(danger){fill:var(--kirby-danger)}ion-icon::part(warning){fill:var(--kirby-warning)}ion-icon::part(success){fill:var(--kirby-success)}\n"] }]
|
|
113
|
-
}] });
|
|
119
|
+
}], propDecorators: { size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }] } });
|
|
114
120
|
|
|
115
121
|
/**
|
|
116
122
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kirbydesign-extensions-angular-spot-illustration.mjs","sources":["../tmp-esm2022/spot-illustration/spot-illustrations.js","../tmp-esm2022/spot-illustration/spot-illustration.component.js","../tmp-esm2022/spot-illustration/kirbydesign-extensions-angular-spot-illustration.js"],"sourcesContent":["export var SpotIllustrationSize;\n(function (SpotIllustrationSize) {\n SpotIllustrationSize[\"SM\"] = \"sm\";\n SpotIllustrationSize[\"MD\"] = \"md\";\n SpotIllustrationSize[\"LG\"] = \"lg\";\n SpotIllustrationSize[\"XL\"] = \"xl\";\n})(SpotIllustrationSize || (SpotIllustrationSize = {}));\nexport const illustrations = {\n 'airballoon.wind.ballon-part.cloud': {\n md: 'airballoon.wind.ballon-part.cloud.medium.svg',\n },\n 'banknotes.arrow.dot.circle': {\n md: 'banknotes.arrow.dot.circle.medium.svg',\n },\n 'bell.exclamation-mark.triangle.bars': {\n md: 'bell.exclamation-mark.triangle.bars.medium.svg',\n },\n 'bell.checkmark.dot.bars': {\n xl: 'bell.checkmark.dot.bars.xlarge.svg',\n },\n 'box.none.plus-dot.bars': {\n lg: 'box.none.plus-dot.bars.large.svg',\n },\n 'box.curve.box.half-circle': {\n md: 'box.curve.box.half-circle.medium.svg',\n },\n 'calculator.money.coin.rectangle': {\n md: 'calculator.money.coin.rectangle.medium.svg',\n },\n 'calender.loop-arrow.zoom.bars': {\n lg: 'calender.loop-arrow.zoom.bars.large.svg',\n xl: 'calender.loop-arrow.zoom.bars.xlarge.svg',\n },\n 'calendar.money.coin.bars': {\n md: 'calendar.money.coin.bars.medium.svg',\n },\n 'calender.money-arrows.header.bars': {\n md: 'calender.money-arrows.header.bars.medium.svg',\n lg: 'calender.money-arrows.header.bars.large.svg',\n },\n 'checkmark.circle.circle-part.shadow': {\n lg: 'checkmark.circle.circle-part.shadow.large.svg',\n },\n 'computer.certificate.padlock.circle': {\n lg: 'computer.certificate.padlock.circle.large.svg',\n },\n 'cross.circle.circle-part.shadow': {\n lg: 'cross.circle.circle-part.shadow.large.svg',\n },\n 'exclamation-mark.circle.circle-part.shadow': {\n lg: 'exclamation-mark.circle.circle-part.shadow.large.svg',\n },\n 'hand.balloon.balloon.circle': {\n xl: 'hand.balloon.balloon.circle.xlarge.svg',\n },\n 'hand-money.line.money-dot.bars': {\n md: 'hand-money.line.money-dot.bars.medium.svg',\n },\n 'invest-page.money.dot.circle': {\n md: 'invest-page.money.dot.circle.medium.svg',\n },\n 'invest-document.graph.bars.square': {\n md: 'invest-document.graph.bars.square.medium.svg',\n xl: 'invest-document.graph.bars.square.xlarge.svg',\n },\n 'megaphone.sound.megaphone-part.circle': {\n xl: 'megaphone.sound.megaphone-part.circle.xlarge.svg',\n },\n 'money.none.coin.bars': {\n md: 'money.none.coin.bars.medium.svg',\n },\n 'money.arrow.coin.bars': {\n md: 'money.arrow.coin.bars.medium.svg',\n },\n 'piggy-bank.money.money-dot.bars': {\n md: 'piggy-bank.money.money-dot.bars.medium.svg',\n },\n 'plant.bars.leaf.bars': {\n md: 'plant.bars.leaf.bars.medium.svg',\n },\n 'robot.none.antenna-dot.body': {\n md: 'robot.none.antenna-dot.body.medium.svg',\n lg: 'robot.none.antenna-dot.body.large.svg',\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BvdC1pbGx1c3RyYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3BvdC1pbGx1c3RyYXRpb24vc3JjL3Nwb3QtaWxsdXN0cmF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxNQUFNLENBQU4sSUFBWSxvQkFLWDtBQUxELFdBQVksb0JBQW9CO0lBQzlCLGlDQUFTLENBQUE7SUFDVCxpQ0FBUyxDQUFBO0lBQ1QsaUNBQVMsQ0FBQTtJQUNULGlDQUFTLENBQUE7QUFDWCxDQUFDLEVBTFcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUsvQjtBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUMzQixtQ0FBbUMsRUFBRTtRQUNuQyxFQUFFLEVBQUUsOENBQThDO0tBQ25EO0lBQ0QsNEJBQTRCLEVBQUU7UUFDNUIsRUFBRSxFQUFFLHVDQUF1QztLQUM1QztJQUNELHFDQUFxQyxFQUFFO1FBQ3JDLEVBQUUsRUFBRSxnREFBZ0Q7S0FDckQ7SUFDRCx5QkFBeUIsRUFBRTtRQUN6QixFQUFFLEVBQUUsb0NBQW9DO0tBQ3pDO0lBQ0Qsd0JBQXdCLEVBQUU7UUFDeEIsRUFBRSxFQUFFLGtDQUFrQztLQUN2QztJQUNELDJCQUEyQixFQUFFO1FBQzNCLEVBQUUsRUFBRSxzQ0FBc0M7S0FDM0M7SUFDRCxpQ0FBaUMsRUFBRTtRQUNqQyxFQUFFLEVBQUUsNENBQTRDO0tBQ2pEO0lBQ0QsK0JBQStCLEVBQUU7UUFDL0IsRUFBRSxFQUFFLHlDQUF5QztRQUM3QyxFQUFFLEVBQUUsMENBQTBDO0tBQy9DO0lBQ0QsMEJBQTBCLEVBQUU7UUFDMUIsRUFBRSxFQUFFLHFDQUFxQztLQUMxQztJQUNELG1DQUFtQyxFQUFFO1FBQ25DLEVBQUUsRUFBRSw4Q0FBOEM7UUFDbEQsRUFBRSxFQUFFLDZDQUE2QztLQUNsRDtJQUNELHFDQUFxQyxFQUFFO1FBQ3JDLEVBQUUsRUFBRSwrQ0FBK0M7S0FDcEQ7SUFDRCxxQ0FBcUMsRUFBRTtRQUNyQyxFQUFFLEVBQUUsK0NBQStDO0tBQ3BEO0lBQ0QsaUNBQWlDLEVBQUU7UUFDakMsRUFBRSxFQUFFLDJDQUEyQztLQUNoRDtJQUNELDRDQUE0QyxFQUFFO1FBQzVDLEVBQUUsRUFBRSxzREFBc0Q7S0FDM0Q7SUFDRCw2QkFBNkIsRUFBRTtRQUM3QixFQUFFLEVBQUUsd0NBQXdDO0tBQzdDO0lBQ0QsZ0NBQWdDLEVBQUU7UUFDaEMsRUFBRSxFQUFFLDJDQUEyQztLQUNoRDtJQUNELDhCQUE4QixFQUFFO1FBQzlCLEVBQUUsRUFBRSx5Q0FBeUM7S0FDOUM7SUFDRCxtQ0FBbUMsRUFBRTtRQUNuQyxFQUFFLEVBQUUsOENBQThDO1FBQ2xELEVBQUUsRUFBRSw4Q0FBOEM7S0FDbkQ7SUFDRCx1Q0FBdUMsRUFBRTtRQUN2QyxFQUFFLEVBQUUsa0RBQWtEO0tBQ3ZEO0lBQ0Qsc0JBQXNCLEVBQUU7UUFDdEIsRUFBRSxFQUFFLGlDQUFpQztLQUN0QztJQUNELHVCQUF1QixFQUFFO1FBQ3ZCLEVBQUUsRUFBRSxrQ0FBa0M7S0FDdkM7SUFDRCxpQ0FBaUMsRUFBRTtRQUNqQyxFQUFFLEVBQUUsNENBQTRDO0tBQ2pEO0lBQ0Qsc0JBQXNCLEVBQUU7UUFDdEIsRUFBRSxFQUFFLGlDQUFpQztLQUN0QztJQUNELDZCQUE2QixFQUFFO1FBQzdCLEVBQUUsRUFBRSx3Q0FBd0M7UUFDNUMsRUFBRSxFQUFFLHVDQUF1QztLQUM1QztDQUM4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJbGx1c3RyYXRpb24ge1xuICBzbT86IHN0cmluZztcbiAgbWQ/OiBzdHJpbmc7XG4gIGxnPzogc3RyaW5nO1xuICB4bD86IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gU3BvdElsbHVzdHJhdGlvblNpemUge1xuICBTTSA9ICdzbScsXG4gIE1EID0gJ21kJyxcbiAgTEcgPSAnbGcnLFxuICBYTCA9ICd4bCcsXG59XG5cbmV4cG9ydCBjb25zdCBpbGx1c3RyYXRpb25zID0ge1xuICAnYWlyYmFsbG9vbi53aW5kLmJhbGxvbi1wYXJ0LmNsb3VkJzoge1xuICAgIG1kOiAnYWlyYmFsbG9vbi53aW5kLmJhbGxvbi1wYXJ0LmNsb3VkLm1lZGl1bS5zdmcnLFxuICB9LFxuICAnYmFua25vdGVzLmFycm93LmRvdC5jaXJjbGUnOiB7XG4gICAgbWQ6ICdiYW5rbm90ZXMuYXJyb3cuZG90LmNpcmNsZS5tZWRpdW0uc3ZnJyxcbiAgfSxcbiAgJ2JlbGwuZXhjbGFtYXRpb24tbWFyay50cmlhbmdsZS5iYXJzJzoge1xuICAgIG1kOiAnYmVsbC5leGNsYW1hdGlvbi1tYXJrLnRyaWFuZ2xlLmJhcnMubWVkaXVtLnN2ZycsXG4gIH0sXG4gICdiZWxsLmNoZWNrbWFyay5kb3QuYmFycyc6IHtcbiAgICB4bDogJ2JlbGwuY2hlY2ttYXJrLmRvdC5iYXJzLnhsYXJnZS5zdmcnLFxuICB9LFxuICAnYm94Lm5vbmUucGx1cy1kb3QuYmFycyc6IHtcbiAgICBsZzogJ2JveC5ub25lLnBsdXMtZG90LmJhcnMubGFyZ2Uuc3ZnJyxcbiAgfSxcbiAgJ2JveC5jdXJ2ZS5ib3guaGFsZi1jaXJjbGUnOiB7XG4gICAgbWQ6ICdib3guY3VydmUuYm94LmhhbGYtY2lyY2xlLm1lZGl1bS5zdmcnLFxuICB9LFxuICAnY2FsY3VsYXRvci5tb25leS5jb2luLnJlY3RhbmdsZSc6IHtcbiAgICBtZDogJ2NhbGN1bGF0b3IubW9uZXkuY29pbi5yZWN0YW5nbGUubWVkaXVtLnN2ZycsXG4gIH0sXG4gICdjYWxlbmRlci5sb29wLWFycm93Lnpvb20uYmFycyc6IHtcbiAgICBsZzogJ2NhbGVuZGVyLmxvb3AtYXJyb3cuem9vbS5iYXJzLmxhcmdlLnN2ZycsXG4gICAgeGw6ICdjYWxlbmRlci5sb29wLWFycm93Lnpvb20uYmFycy54bGFyZ2Uuc3ZnJyxcbiAgfSxcbiAgJ2NhbGVuZGFyLm1vbmV5LmNvaW4uYmFycyc6IHtcbiAgICBtZDogJ2NhbGVuZGFyLm1vbmV5LmNvaW4uYmFycy5tZWRpdW0uc3ZnJyxcbiAgfSxcbiAgJ2NhbGVuZGVyLm1vbmV5LWFycm93cy5oZWFkZXIuYmFycyc6IHtcbiAgICBtZDogJ2NhbGVuZGVyLm1vbmV5LWFycm93cy5oZWFkZXIuYmFycy5tZWRpdW0uc3ZnJyxcbiAgICBsZzogJ2NhbGVuZGVyLm1vbmV5LWFycm93cy5oZWFkZXIuYmFycy5sYXJnZS5zdmcnLFxuICB9LFxuICAnY2hlY2ttYXJrLmNpcmNsZS5jaXJjbGUtcGFydC5zaGFkb3cnOiB7XG4gICAgbGc6ICdjaGVja21hcmsuY2lyY2xlLmNpcmNsZS1wYXJ0LnNoYWRvdy5sYXJnZS5zdmcnLFxuICB9LFxuICAnY29tcHV0ZXIuY2VydGlmaWNhdGUucGFkbG9jay5jaXJjbGUnOiB7XG4gICAgbGc6ICdjb21wdXRlci5jZXJ0aWZpY2F0ZS5wYWRsb2NrLmNpcmNsZS5sYXJnZS5zdmcnLFxuICB9LFxuICAnY3Jvc3MuY2lyY2xlLmNpcmNsZS1wYXJ0LnNoYWRvdyc6IHtcbiAgICBsZzogJ2Nyb3NzLmNpcmNsZS5jaXJjbGUtcGFydC5zaGFkb3cubGFyZ2Uuc3ZnJyxcbiAgfSxcbiAgJ2V4Y2xhbWF0aW9uLW1hcmsuY2lyY2xlLmNpcmNsZS1wYXJ0LnNoYWRvdyc6IHtcbiAgICBsZzogJ2V4Y2xhbWF0aW9uLW1hcmsuY2lyY2xlLmNpcmNsZS1wYXJ0LnNoYWRvdy5sYXJnZS5zdmcnLFxuICB9LFxuICAnaGFuZC5iYWxsb29uLmJhbGxvb24uY2lyY2xlJzoge1xuICAgIHhsOiAnaGFuZC5iYWxsb29uLmJhbGxvb24uY2lyY2xlLnhsYXJnZS5zdmcnLFxuICB9LFxuICAnaGFuZC1tb25leS5saW5lLm1vbmV5LWRvdC5iYXJzJzoge1xuICAgIG1kOiAnaGFuZC1tb25leS5saW5lLm1vbmV5LWRvdC5iYXJzLm1lZGl1bS5zdmcnLFxuICB9LFxuICAnaW52ZXN0LXBhZ2UubW9uZXkuZG90LmNpcmNsZSc6IHtcbiAgICBtZDogJ2ludmVzdC1wYWdlLm1vbmV5LmRvdC5jaXJjbGUubWVkaXVtLnN2ZycsXG4gIH0sXG4gICdpbnZlc3QtZG9jdW1lbnQuZ3JhcGguYmFycy5zcXVhcmUnOiB7XG4gICAgbWQ6ICdpbnZlc3QtZG9jdW1lbnQuZ3JhcGguYmFycy5zcXVhcmUubWVkaXVtLnN2ZycsXG4gICAgeGw6ICdpbnZlc3QtZG9jdW1lbnQuZ3JhcGguYmFycy5zcXVhcmUueGxhcmdlLnN2ZycsXG4gIH0sXG4gICdtZWdhcGhvbmUuc291bmQubWVnYXBob25lLXBhcnQuY2lyY2xlJzoge1xuICAgIHhsOiAnbWVnYXBob25lLnNvdW5kLm1lZ2FwaG9uZS1wYXJ0LmNpcmNsZS54bGFyZ2Uuc3ZnJyxcbiAgfSxcbiAgJ21vbmV5Lm5vbmUuY29pbi5iYXJzJzoge1xuICAgIG1kOiAnbW9uZXkubm9uZS5jb2luLmJhcnMubWVkaXVtLnN2ZycsXG4gIH0sXG4gICdtb25leS5hcnJvdy5jb2luLmJhcnMnOiB7XG4gICAgbWQ6ICdtb25leS5hcnJvdy5jb2luLmJhcnMubWVkaXVtLnN2ZycsXG4gIH0sXG4gICdwaWdneS1iYW5rLm1vbmV5Lm1vbmV5LWRvdC5iYXJzJzoge1xuICAgIG1kOiAncGlnZ3ktYmFuay5tb25leS5tb25leS1kb3QuYmFycy5tZWRpdW0uc3ZnJyxcbiAgfSxcbiAgJ3BsYW50LmJhcnMubGVhZi5iYXJzJzoge1xuICAgIG1kOiAncGxhbnQuYmFycy5sZWFmLmJhcnMubWVkaXVtLnN2ZycsXG4gIH0sXG4gICdyb2JvdC5ub25lLmFudGVubmEtZG90LmJvZHknOiB7XG4gICAgbWQ6ICdyb2JvdC5ub25lLmFudGVubmEtZG90LmJvZHkubWVkaXVtLnN2ZycsXG4gICAgbGc6ICdyb2JvdC5ub25lLmFudGVubmEtZG90LmJvZHkubGFyZ2Uuc3ZnJyxcbiAgfSxcbn0gYXMgY29uc3Qgc2F0aXNmaWVzIFJlY29yZDxzdHJpbmcsIElsbHVzdHJhdGlvbj47XG5cbmV4cG9ydCB0eXBlIFNwb3RJbGx1c3RyYXRpb25OYW1lID0ga2V5b2YgdHlwZW9mIGlsbHVzdHJhdGlvbnMgfCBudWxsO1xuIl19","import { Component, computed, input } from '@angular/core';\nimport { IonIcon } from '@ionic/angular/standalone';\nimport { illustrations, SpotIllustrationSize, } from './spot-illustrations';\nimport * as i0 from \"@angular/core\";\nexport class SpotIllustrationComponent {\n constructor() {\n this.size = input(SpotIllustrationSize.MD, ...(ngDevMode ? [{ debugName: \"size\" }] : []));\n this.name = input.required(...(ngDevMode ? [{ debugName: \"name\" }] : []));\n this.illustration = computed(() => {\n const name = this.name();\n return name ? illustrations[name] : null;\n }, ...(ngDevMode ? [{ debugName: \"illustration\" }] : []));\n this.svg = computed(() => {\n const illustration = this.illustration();\n const size = this.size();\n return illustration && illustration[size]\n ? `assets/spot-illustrations/${illustration[size]}`\n : undefined;\n }, ...(ngDevMode ? [{ debugName: \"svg\" }] : []));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: SpotIllustrationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.2\", type: SpotIllustrationComponent, isStandalone: true, selector: \"kirby-x-spot-illustration\", inputs: { size: { classPropertyName: \"size\", publicName: \"size\", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: \"@if (svg()) {\\n <ion-icon [src]=\\\"svg()\\\" [class]=\\\"size()\\\"></ion-icon>\\n}\\n\", styles: [\".sm{font-size:40px;display:block}.md{font-size:56px;display:block}.lg{font-size:96px;display:block}.xl{font-size:136px;display:block}:host-context(.kirby-color-brightness-dark){--kirby-x-spot-illustration-background-color: var(--kirby-white-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-white);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}:host-context(.kirby-color-brightness-white){--kirby-x-spot-illustration-background-color: var(--kirby-dark-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-black);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}ion-icon::part(background){fill:var(--kirby-x-spot-illustration-background-color, var(--kirby-dark-overlay))}ion-icon::part(outline){fill:var(--kirby-x-spot-illustration-outline-color, var(--kirby-black))}ion-icon::part(highlight){fill:var(--kirby-x-spot-illustration-highlight-color, var(--kirby-primary))}ion-icon::part(danger){fill:var(--kirby-danger)}ion-icon::part(warning){fill:var(--kirby-warning)}ion-icon::part(success){fill:var(--kirby-success)}\\n\"], dependencies: [{ kind: \"component\", type: IonIcon, selector: \"ion-icon\", inputs: [\"color\", \"flipRtl\", \"icon\", \"ios\", \"lazy\", \"md\", \"mode\", \"name\", \"sanitize\", \"size\", \"src\"] }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: SpotIllustrationComponent, decorators: [{\n type: Component,\n args: [{ selector: 'kirby-x-spot-illustration', imports: [IonIcon], template: \"@if (svg()) {\\n <ion-icon [src]=\\\"svg()\\\" [class]=\\\"size()\\\"></ion-icon>\\n}\\n\", styles: [\".sm{font-size:40px;display:block}.md{font-size:56px;display:block}.lg{font-size:96px;display:block}.xl{font-size:136px;display:block}:host-context(.kirby-color-brightness-dark){--kirby-x-spot-illustration-background-color: var(--kirby-white-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-white);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}:host-context(.kirby-color-brightness-white){--kirby-x-spot-illustration-background-color: var(--kirby-dark-overlay);--kirby-x-spot-illustration-outline-color: var(--kirby-black);--kirby-x-spot-illustration-highlight-color: var(--kirby-primary)}ion-icon::part(background){fill:var(--kirby-x-spot-illustration-background-color, var(--kirby-dark-overlay))}ion-icon::part(outline){fill:var(--kirby-x-spot-illustration-outline-color, var(--kirby-black))}ion-icon::part(highlight){fill:var(--kirby-x-spot-illustration-highlight-color, var(--kirby-primary))}ion-icon::part(danger){fill:var(--kirby-danger)}ion-icon::part(warning){fill:var(--kirby-warning)}ion-icon::part(success){fill:var(--kirby-success)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BvdC1pbGx1c3RyYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3BvdC1pbGx1c3RyYXRpb24vc3JjL3Nwb3QtaWxsdXN0cmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3Nwb3QtaWxsdXN0cmF0aW9uL3NyYy9zcG90LWlsbHVzdHJhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFFTCxhQUFhLEVBRWIsb0JBQW9CLEdBQ3JCLE1BQU0sc0JBQXNCLENBQUM7O0FBUTlCLE1BQU0sT0FBTyx5QkFBeUI7SUFOdEM7UUFPRSxTQUFJLEdBQUcsS0FBSyxDQUF1QixvQkFBb0IsQ0FBQyxFQUFFLGdEQUFDLENBQUM7UUFDNUQsU0FBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLCtDQUF3QixDQUFDO1FBRTlDLGlCQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekIsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzNDLENBQUMsd0RBQUMsQ0FBQztRQUVILFFBQUcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ2xCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQWtCLENBQUM7WUFDekQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3pCLE9BQU8sWUFBWSxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUM7Z0JBQ3ZDLENBQUMsQ0FBQyw2QkFBNkIsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNuRCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ2hCLENBQUMsK0NBQUMsQ0FBQztLQUNKOzhHQWhCWSx5QkFBeUI7a0dBQXpCLHlCQUF5QiwwVUNmdEMsZ0ZBR0Esa25DRFFZLE9BQU87OzJGQUlOLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDRSwyQkFBMkIsV0FDNUIsQ0FBQyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW9uSWNvbiB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHtcbiAgSWxsdXN0cmF0aW9uLFxuICBpbGx1c3RyYXRpb25zLFxuICBTcG90SWxsdXN0cmF0aW9uTmFtZSxcbiAgU3BvdElsbHVzdHJhdGlvblNpemUsXG59IGZyb20gJy4vc3BvdC1pbGx1c3RyYXRpb25zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna2lyYnkteC1zcG90LWlsbHVzdHJhdGlvbicsXG4gIGltcG9ydHM6IFtJb25JY29uXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nwb3QtaWxsdXN0cmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3Nwb3QtaWxsdXN0cmF0aW9uLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgU3BvdElsbHVzdHJhdGlvbkNvbXBvbmVudCB7XG4gIHNpemUgPSBpbnB1dDxTcG90SWxsdXN0cmF0aW9uU2l6ZT4oU3BvdElsbHVzdHJhdGlvblNpemUuTUQpO1xuICBuYW1lID0gaW5wdXQucmVxdWlyZWQ8U3BvdElsbHVzdHJhdGlvbk5hbWU+KCk7XG5cbiAgaWxsdXN0cmF0aW9uID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLm5hbWUoKTtcbiAgICByZXR1cm4gbmFtZSA/IGlsbHVzdHJhdGlvbnNbbmFtZV0gOiBudWxsO1xuICB9KTtcblxuICBzdmcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgaWxsdXN0cmF0aW9uID0gdGhpcy5pbGx1c3RyYXRpb24oKSBhcyBJbGx1c3RyYXRpb247XG4gICAgY29uc3Qgc2l6ZSA9IHRoaXMuc2l6ZSgpO1xuICAgIHJldHVybiBpbGx1c3RyYXRpb24gJiYgaWxsdXN0cmF0aW9uW3NpemVdXG4gICAgICA/IGBhc3NldHMvc3BvdC1pbGx1c3RyYXRpb25zLyR7aWxsdXN0cmF0aW9uW3NpemVdfWBcbiAgICAgIDogdW5kZWZpbmVkO1xuICB9KTtcbn1cbiIsIkBpZiAoc3ZnKCkpIHtcbiAgPGlvbi1pY29uIFtzcmNdPVwic3ZnKClcIiBbY2xhc3NdPVwic2l6ZSgpXCI+PC9pb24taWNvbj5cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2lyYnlkZXNpZ24tZXh0ZW5zaW9ucy1hbmd1bGFyLXNwb3QtaWxsdXN0cmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3BvdC1pbGx1c3RyYXRpb24vc3JjL2tpcmJ5ZGVzaWduLWV4dGVuc2lvbnMtYW5ndWxhci1zcG90LWlsbHVzdHJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kirbydesign-extensions-angular-spot-illustration.mjs","sources":["../../spot-illustration/src/spot-illustrations.ts","../../spot-illustration/src/spot-illustration.component.ts","../../spot-illustration/src/spot-illustration.component.html","../../spot-illustration/src/kirbydesign-extensions-angular-spot-illustration.ts"],"sourcesContent":["export interface Illustration {\n sm?: string;\n md?: string;\n lg?: string;\n xl?: string;\n}\n\nexport enum SpotIllustrationSize {\n SM = 'sm',\n MD = 'md',\n LG = 'lg',\n XL = 'xl',\n}\n\nexport const illustrations = {\n 'airballoon.wind.ballon-part.cloud': {\n md: 'airballoon.wind.ballon-part.cloud.medium.svg',\n },\n 'banknotes.arrow.dot.circle': {\n md: 'banknotes.arrow.dot.circle.medium.svg',\n },\n 'bell.exclamation-mark.triangle.bars': {\n md: 'bell.exclamation-mark.triangle.bars.medium.svg',\n },\n 'bell.checkmark.dot.bars': {\n xl: 'bell.checkmark.dot.bars.xlarge.svg',\n },\n 'box.none.plus-dot.bars': {\n lg: 'box.none.plus-dot.bars.large.svg',\n },\n 'box.curve.box.half-circle': {\n md: 'box.curve.box.half-circle.medium.svg',\n },\n 'calculator.money.coin.rectangle': {\n md: 'calculator.money.coin.rectangle.medium.svg',\n },\n 'calender.loop-arrow.zoom.bars': {\n lg: 'calender.loop-arrow.zoom.bars.large.svg',\n xl: 'calender.loop-arrow.zoom.bars.xlarge.svg',\n },\n 'calendar.money.coin.bars': {\n md: 'calendar.money.coin.bars.medium.svg',\n },\n 'calender.money-arrows.header.bars': {\n md: 'calender.money-arrows.header.bars.medium.svg',\n lg: 'calender.money-arrows.header.bars.large.svg',\n },\n 'checkmark.circle.circle-part.shadow': {\n lg: 'checkmark.circle.circle-part.shadow.large.svg',\n },\n 'computer.certificate.padlock.circle': {\n lg: 'computer.certificate.padlock.circle.large.svg',\n },\n 'cross.circle.circle-part.shadow': {\n lg: 'cross.circle.circle-part.shadow.large.svg',\n },\n 'exclamation-mark.circle.circle-part.shadow': {\n lg: 'exclamation-mark.circle.circle-part.shadow.large.svg',\n },\n 'hand.balloon.balloon.circle': {\n xl: 'hand.balloon.balloon.circle.xlarge.svg',\n },\n 'hand-money.line.money-dot.bars': {\n md: 'hand-money.line.money-dot.bars.medium.svg',\n },\n 'invest-page.money.dot.circle': {\n md: 'invest-page.money.dot.circle.medium.svg',\n },\n 'invest-document.graph.bars.square': {\n md: 'invest-document.graph.bars.square.medium.svg',\n xl: 'invest-document.graph.bars.square.xlarge.svg',\n },\n 'megaphone.sound.megaphone-part.circle': {\n xl: 'megaphone.sound.megaphone-part.circle.xlarge.svg',\n },\n 'money.none.coin.bars': {\n md: 'money.none.coin.bars.medium.svg',\n },\n 'money.arrow.coin.bars': {\n md: 'money.arrow.coin.bars.medium.svg',\n },\n 'piggy-bank.money.money-dot.bars': {\n md: 'piggy-bank.money.money-dot.bars.medium.svg',\n },\n 'plant.bars.leaf.bars': {\n md: 'plant.bars.leaf.bars.medium.svg',\n },\n 'robot.none.antenna-dot.body': {\n md: 'robot.none.antenna-dot.body.medium.svg',\n lg: 'robot.none.antenna-dot.body.large.svg',\n },\n} as const satisfies Record<string, Illustration>;\n\nexport type SpotIllustrationName = keyof typeof illustrations | null;\n","import { Component, computed, input } from '@angular/core';\nimport { IonIcon } from '@ionic/angular/standalone';\nimport {\n Illustration,\n illustrations,\n SpotIllustrationName,\n SpotIllustrationSize,\n} from './spot-illustrations';\n\n@Component({\n selector: 'kirby-x-spot-illustration',\n imports: [IonIcon],\n templateUrl: './spot-illustration.component.html',\n styleUrl: './spot-illustration.component.scss',\n})\nexport class SpotIllustrationComponent {\n /**\n * The size of the Spot Illustration\n */\n size = input<SpotIllustrationSize>(SpotIllustrationSize.MD);\n\n /**\n * The name of the Spot Illustration to display\n */\n name = input.required<SpotIllustrationName>();\n\n illustration = computed(() => {\n const name = this.name();\n return name ? illustrations[name] : null;\n });\n\n svg = computed(() => {\n const illustration = this.illustration() as Illustration;\n const size = this.size();\n return illustration && illustration[size]\n ? `assets/spot-illustrations/${illustration[size]}`\n : undefined;\n });\n}\n","@if (svg()) {\n <ion-icon [src]=\"svg()\" [class]=\"size()\"></ion-icon>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;IAOY;AAAZ,CAAA,UAAY,oBAAoB,EAAA;AAC9B,IAAA,oBAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,oBAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,oBAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,oBAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACX,CAAC,EALW,oBAAoB,KAApB,oBAAoB,GAAA,EAAA,CAAA,CAAA;AAOzB,MAAM,aAAa,GAAG;AAC3B,IAAA,mCAAmC,EAAE;AACnC,QAAA,EAAE,EAAE,8CAA8C;AACnD,KAAA;AACD,IAAA,4BAA4B,EAAE;AAC5B,QAAA,EAAE,EAAE,uCAAuC;AAC5C,KAAA;AACD,IAAA,qCAAqC,EAAE;AACrC,QAAA,EAAE,EAAE,gDAAgD;AACrD,KAAA;AACD,IAAA,yBAAyB,EAAE;AACzB,QAAA,EAAE,EAAE,oCAAoC;AACzC,KAAA;AACD,IAAA,wBAAwB,EAAE;AACxB,QAAA,EAAE,EAAE,kCAAkC;AACvC,KAAA;AACD,IAAA,2BAA2B,EAAE;AAC3B,QAAA,EAAE,EAAE,sCAAsC;AAC3C,KAAA;AACD,IAAA,iCAAiC,EAAE;AACjC,QAAA,EAAE,EAAE,4CAA4C;AACjD,KAAA;AACD,IAAA,+BAA+B,EAAE;AAC/B,QAAA,EAAE,EAAE,yCAAyC;AAC7C,QAAA,EAAE,EAAE,0CAA0C;AAC/C,KAAA;AACD,IAAA,0BAA0B,EAAE;AAC1B,QAAA,EAAE,EAAE,qCAAqC;AAC1C,KAAA;AACD,IAAA,mCAAmC,EAAE;AACnC,QAAA,EAAE,EAAE,8CAA8C;AAClD,QAAA,EAAE,EAAE,6CAA6C;AAClD,KAAA;AACD,IAAA,qCAAqC,EAAE;AACrC,QAAA,EAAE,EAAE,+CAA+C;AACpD,KAAA;AACD,IAAA,qCAAqC,EAAE;AACrC,QAAA,EAAE,EAAE,+CAA+C;AACpD,KAAA;AACD,IAAA,iCAAiC,EAAE;AACjC,QAAA,EAAE,EAAE,2CAA2C;AAChD,KAAA;AACD,IAAA,4CAA4C,EAAE;AAC5C,QAAA,EAAE,EAAE,sDAAsD;AAC3D,KAAA;AACD,IAAA,6BAA6B,EAAE;AAC7B,QAAA,EAAE,EAAE,wCAAwC;AAC7C,KAAA;AACD,IAAA,gCAAgC,EAAE;AAChC,QAAA,EAAE,EAAE,2CAA2C;AAChD,KAAA;AACD,IAAA,8BAA8B,EAAE;AAC9B,QAAA,EAAE,EAAE,yCAAyC;AAC9C,KAAA;AACD,IAAA,mCAAmC,EAAE;AACnC,QAAA,EAAE,EAAE,8CAA8C;AAClD,QAAA,EAAE,EAAE,8CAA8C;AACnD,KAAA;AACD,IAAA,uCAAuC,EAAE;AACvC,QAAA,EAAE,EAAE,kDAAkD;AACvD,KAAA;AACD,IAAA,sBAAsB,EAAE;AACtB,QAAA,EAAE,EAAE,iCAAiC;AACtC,KAAA;AACD,IAAA,uBAAuB,EAAE;AACvB,QAAA,EAAE,EAAE,kCAAkC;AACvC,KAAA;AACD,IAAA,iCAAiC,EAAE;AACjC,QAAA,EAAE,EAAE,4CAA4C;AACjD,KAAA;AACD,IAAA,sBAAsB,EAAE;AACtB,QAAA,EAAE,EAAE,iCAAiC;AACtC,KAAA;AACD,IAAA,6BAA6B,EAAE;AAC7B,QAAA,EAAE,EAAE,wCAAwC;AAC5C,QAAA,EAAE,EAAE,uCAAuC;AAC5C,KAAA;;;MC3EU,yBAAyB,CAAA;AANtC,IAAA,WAAA,GAAA;AAOE;;AAEG;AACH,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAuB,oBAAoB,CAAC,EAAE,gDAAC;AAE3D;;AAEG;AACH,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,+CAAwB;AAE7C,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AAC3B,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AACxB,YAAA,OAAO,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI;AAC1C,QAAA,CAAC,wDAAC;AAEF,QAAA,IAAA,CAAA,GAAG,GAAG,QAAQ,CAAC,MAAK;AAClB,YAAA,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,EAAkB;AACxD,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AACxB,YAAA,OAAO,YAAY,IAAI,YAAY,CAAC,IAAI;AACtC,kBAAE,CAAA,0BAAA,EAA6B,YAAY,CAAC,IAAI,CAAC,CAAA;kBAC/C,SAAS;AACf,QAAA,CAAC,+CAAC;AACH,IAAA;+GAvBY,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECftC,gFAGA,EAAA,MAAA,EAAA,CAAA,0jCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDQY,OAAO,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,KAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIN,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;+BACE,2BAA2B,EAAA,OAAA,EAC5B,CAAC,OAAO,CAAC,EAAA,QAAA,EAAA,gFAAA,EAAA,MAAA,EAAA,CAAA,0jCAAA,CAAA,EAAA;;;AEXpB;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kirbydesign-extensions-angular.mjs","sources":["
|
|
1
|
+
{"version":3,"file":"kirbydesign-extensions-angular.mjs","sources":["../../index.ts","../../kirbydesign-extensions-angular.ts"],"sourcesContent":["// All components should be imported through their individual entry-points.\n// This file and empty export is needed to satisfy ng_packagr.\n// This workaround is inspired by Material Design https://github.com/angular/components/blob/main/src/material/index.ts\nexport default {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA,YAAe,EAAE;;ACHjB;;AAEG"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kirbydesign/extensions-angular",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.5.0",
|
|
4
|
+
"author": "kirby@bankdata.dk",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/kirbydesign/designsystem.git"
|
|
8
|
+
},
|
|
4
9
|
"peerDependencies": {
|
|
10
|
+
"@angular/animations": "^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
5
11
|
"@angular/common": "^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
6
12
|
"@angular/compiler": "^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
7
13
|
"@angular/core": "^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
@@ -9,7 +15,7 @@
|
|
|
9
15
|
"@angular/platform-browser": "^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
10
16
|
"@angular/platform-browser-dynamic": "^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
11
17
|
"@angular/router": "^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
12
|
-
"@kirbydesign/designsystem": "^
|
|
18
|
+
"@kirbydesign/designsystem": "^11.4.0",
|
|
13
19
|
"rxjs": "~7.8.0",
|
|
14
20
|
"zone.js": "^0.14.3 || ~0.15.0"
|
|
15
21
|
},
|
|
@@ -31,17 +37,21 @@
|
|
|
31
37
|
"types": "./image-banner/index.d.ts",
|
|
32
38
|
"default": "./fesm2022/kirbydesign-extensions-angular-image-banner.mjs"
|
|
33
39
|
},
|
|
34
|
-
"./
|
|
35
|
-
"types": "./
|
|
36
|
-
"default": "./fesm2022/kirbydesign-extensions-angular-
|
|
40
|
+
"./localization": {
|
|
41
|
+
"types": "./localization/index.d.ts",
|
|
42
|
+
"default": "./fesm2022/kirbydesign-extensions-angular-localization.mjs"
|
|
43
|
+
},
|
|
44
|
+
"./sidebar-menu": {
|
|
45
|
+
"types": "./sidebar-menu/index.d.ts",
|
|
46
|
+
"default": "./fesm2022/kirbydesign-extensions-angular-sidebar-menu.mjs"
|
|
37
47
|
},
|
|
38
48
|
"./skeleton-loader": {
|
|
39
49
|
"types": "./skeleton-loader/index.d.ts",
|
|
40
50
|
"default": "./fesm2022/kirbydesign-extensions-angular-skeleton-loader.mjs"
|
|
41
51
|
},
|
|
42
|
-
"./
|
|
43
|
-
"types": "./
|
|
44
|
-
"default": "./fesm2022/kirbydesign-extensions-angular-
|
|
52
|
+
"./spot-illustration": {
|
|
53
|
+
"types": "./spot-illustration/index.d.ts",
|
|
54
|
+
"default": "./fesm2022/kirbydesign-extensions-angular-spot-illustration.mjs"
|
|
45
55
|
}
|
|
46
56
|
}
|
|
47
57
|
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { ThemeColor } from '@kirbydesign/designsystem';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { EventEmitter } from '@angular/core';
|
|
4
|
+
|
|
5
|
+
type ToggleButton = {
|
|
6
|
+
checkedIcon: string;
|
|
7
|
+
uncheckedIcon: string;
|
|
8
|
+
isChecked: boolean;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
type Params = {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
};
|
|
14
|
+
interface SidebarMenuItem {
|
|
15
|
+
id: string;
|
|
16
|
+
title?: string;
|
|
17
|
+
link?: Link;
|
|
18
|
+
icon?: string;
|
|
19
|
+
iconEnd?: string;
|
|
20
|
+
selected?: boolean;
|
|
21
|
+
selectable?: boolean;
|
|
22
|
+
isAction?: boolean;
|
|
23
|
+
isExpanded?: boolean;
|
|
24
|
+
isDivider?: boolean;
|
|
25
|
+
skipLocationChange?: boolean;
|
|
26
|
+
replaceUrl?: boolean;
|
|
27
|
+
hidden?: boolean;
|
|
28
|
+
badge?: Badge;
|
|
29
|
+
toggle?: ToggleButton;
|
|
30
|
+
children?: this[];
|
|
31
|
+
}
|
|
32
|
+
interface Badge {
|
|
33
|
+
value: string;
|
|
34
|
+
themeColor?: ThemeColor;
|
|
35
|
+
slot?: string;
|
|
36
|
+
}
|
|
37
|
+
interface Link {
|
|
38
|
+
url?: string;
|
|
39
|
+
target?: string;
|
|
40
|
+
relativeLink?: string;
|
|
41
|
+
queryParams?: Params;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
type CheckEvent<T extends SidebarMenuItem> = {
|
|
45
|
+
item: T;
|
|
46
|
+
checked: boolean;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
declare class SidebarComponent<T extends SidebarMenuItem> {
|
|
50
|
+
menuItems: T[];
|
|
51
|
+
autoCollapse: boolean;
|
|
52
|
+
menuItemsChange: EventEmitter<T[]>;
|
|
53
|
+
afterMenuClicked: EventEmitter<T>;
|
|
54
|
+
afterMenuToggled: EventEmitter<T>;
|
|
55
|
+
itemChecked: EventEmitter<CheckEvent<T>>;
|
|
56
|
+
/**
|
|
57
|
+
* @deprecated has not had an effect for a long time
|
|
58
|
+
*/
|
|
59
|
+
expandIconOnHover: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* @deprecated should use menuItemsChange or two-way binding on menuItems instead
|
|
62
|
+
**/
|
|
63
|
+
menuItemsChanged: EventEmitter<T[]>;
|
|
64
|
+
changeMenuItems(event: T[]): void;
|
|
65
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SidebarComponent<any>, never>;
|
|
66
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SidebarComponent<any>, "kirby-x-sidebar", never, { "menuItems": { "alias": "menuItems"; "required": false; }; "autoCollapse": { "alias": "autoCollapse"; "required": false; }; "expandIconOnHover": { "alias": "expandIconOnHover"; "required": false; }; }, { "menuItemsChange": "menuItemsChange"; "afterMenuClicked": "afterMenuClicked"; "afterMenuToggled": "afterMenuToggled"; "itemChecked": "itemChecked"; "menuItemsChanged": "menuItemsChanged"; }, never, ["kirby-x-sidebar-header", "kirby-x-sidebar-footer"], true, never>;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
declare class SidebarFooterComponent {
|
|
70
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SidebarFooterComponent, never>;
|
|
71
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SidebarFooterComponent, "kirby-x-sidebar-footer", never, {}, {}, never, ["*"], true, never>;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
declare class SidebarHeaderComponent {
|
|
75
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SidebarHeaderComponent, never>;
|
|
76
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SidebarHeaderComponent, "kirby-x-sidebar-header", never, {}, {}, never, ["*", "[slot='action']"], true, never>;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
declare class SidebarModule {
|
|
80
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SidebarModule, never>;
|
|
81
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SidebarModule, never, [typeof SidebarComponent, typeof SidebarFooterComponent, typeof SidebarHeaderComponent], [typeof SidebarComponent, typeof SidebarFooterComponent, typeof SidebarHeaderComponent]>;
|
|
82
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<SidebarModule>;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export { SidebarComponent, SidebarFooterComponent, SidebarHeaderComponent, SidebarModule };
|
|
86
|
+
export type { Badge, CheckEvent, Link, Params, SidebarMenuItem, ToggleButton };
|
|
@@ -87,7 +87,13 @@ declare const illustrations: {
|
|
|
87
87
|
type SpotIllustrationName = keyof typeof illustrations | null;
|
|
88
88
|
|
|
89
89
|
declare class SpotIllustrationComponent {
|
|
90
|
+
/**
|
|
91
|
+
* The size of the Spot Illustration
|
|
92
|
+
*/
|
|
90
93
|
size: _angular_core.InputSignal<SpotIllustrationSize>;
|
|
94
|
+
/**
|
|
95
|
+
* The name of the Spot Illustration to display
|
|
96
|
+
*/
|
|
91
97
|
name: _angular_core.InputSignal<SpotIllustrationName>;
|
|
92
98
|
illustration: _angular_core.Signal<{
|
|
93
99
|
readonly md: "airballoon.wind.ballon-part.cloud.medium.svg";
|