UNPKG

@ngneat/cmdk

Version:

<p align="center"> <img width="20%" height="20%" src="./src/assets/ngneat%20cdk.svg"> </p>

1 lines 47.2 kB
{"version":3,"file":"ngneat-cmdk.mjs","sources":["../../../../projects/ngneat/cmdk/src/lib/cmdk.service.ts","../../../../projects/ngneat/cmdk/src/lib/directives/input/input.directive.ts","../../../../projects/ngneat/cmdk/src/lib/directives/empty/empty.directive.ts","../../../../projects/ngneat/cmdk/src/lib/directives/item/item.directive.ts","../../../../projects/ngneat/cmdk/src/lib/components/group/group.component.ts","../../../../projects/ngneat/cmdk/src/lib/components/group/group.component.html","../../../../projects/ngneat/cmdk/src/lib/components/separator/separator.component.ts","../../../../projects/ngneat/cmdk/src/lib/components/separator/separator.component.html","../../../../projects/ngneat/cmdk/src/lib/directives/loader/loader.directive.ts","../../../../projects/ngneat/cmdk/src/lib/components/list/list.component.ts","../../../../projects/ngneat/cmdk/src/lib/components/list/list.component.html","../../../../projects/ngneat/cmdk/src/lib/components/command/command.component.ts","../../../../projects/ngneat/cmdk/src/lib/components/command/command.component.html","../../../../projects/ngneat/cmdk/src/lib/cmdk.module.ts","../../../../projects/ngneat/cmdk/src/public-api.ts","../../../../projects/ngneat/cmdk/src/ngneat-cmdk.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable()\nexport class CmdkService {\n private _searchSub = new Subject<string>();\n search$ = this._searchSub.asObservable();\n private _itemClickedSub = new Subject<string>();\n itemClicked$ = this._itemClickedSub.asObservable();\n private _itemValueChangedSub = new Subject<{\n oldValue: string;\n newValue: string;\n }>();\n itemValueChanged$ = this._itemValueChangedSub.asObservable();\n\n setSearch(value: string) {\n this._searchSub.next(value);\n }\n\n itemClicked(value: string) {\n this._itemClickedSub.next(value);\n }\n\n itemValueChanged(oldValue: string, newValue: string) {\n this._itemValueChangedSub.next({ oldValue, newValue });\n }\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n inject,\n Input,\n OnDestroy,\n} from '@angular/core';\nimport { CmdkService } from '../../cmdk.service';\nimport { CmdkInputProps } from '../../types';\n\n@Directive({\n selector: 'input[cmdkInput]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-input',\n },\n standalone: true,\n})\nexport class InputDirective\n implements AfterViewInit, OnDestroy, CmdkInputProps\n{\n @Input() updateOn: 'blur' | 'change' | 'input' = 'input';\n @Input()\n set value(value: string) {\n this.search(value);\n }\n private _cmdkService = inject(CmdkService);\n private _elementRef = inject<ElementRef<any>>(ElementRef<HTMLInputElement>);\n\n search(value: string) {\n this._cmdkService.setSearch(value);\n }\n\n ngAfterViewInit(): void {\n this._elementRef.nativeElement.addEventListener(\n this.updateOn,\n (ev: Event) => this.search((ev.target as HTMLInputElement).value)\n );\n }\n\n ngOnDestroy(): void {\n this._elementRef.nativeElement.removeAllListeners &&\n this._elementRef.nativeElement.removeAllListeners(this.updateOn);\n }\n}\n","import {\n Directive,\n inject,\n Renderer2,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\n\n@Directive({\n selector: '[cmdkEmpty]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-empty',\n },\n standalone: true,\n})\nexport class EmptyDirective {\n private _hasView = false;\n private _templateRef = inject(TemplateRef<any>);\n private _viewContainer = inject(ViewContainerRef);\n private _renderer2 = inject(Renderer2);\n\n set cmdkEmpty(condition: boolean | string) {\n if (condition && !this._hasView) {\n const emb = this._viewContainer.createEmbeddedView(this._templateRef);\n this._renderer2.addClass(emb.rootNodes[0], 'cmdk-empty');\n this._hasView = true;\n } else if (!condition && this._hasView) {\n this._viewContainer.clear();\n this._hasView = false;\n }\n }\n}\n","import { ListKeyManagerOption } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterContentInit,\n Directive,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n inject,\n Input,\n Output,\n} from '@angular/core';\nimport { UntilDestroy } from '@ngneat/until-destroy';\nimport { CmdkService } from '../../cmdk.service';\nimport { CmdkItemProps } from '../../types';\n\nlet cmdkItemId = 0;\n\n@UntilDestroy()\n@Directive({\n selector: '[cmdkItem]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-item',\n },\n standalone: true,\n})\nexport class ItemDirective\n implements CmdkItemProps, ListKeyManagerOption, AfterContentInit\n{\n private _disabled = false;\n @Input()\n set disabled(value: any) {\n this._disabled = coerceBooleanProperty(value);\n }\n get disabled() {\n return this._disabled;\n }\n @Output() selected = new EventEmitter();\n originalDisplay = '';\n getLabel?(): string {\n throw new Error('Method not implemented.');\n }\n setActiveStyles(): void {\n this.active = true;\n }\n setInactiveStyles(): void {\n this.active = false;\n }\n @Input() filtered = true;\n private _active = false;\n private _value: string = '';\n @Input()\n set value(value: string) {\n if (value !== this.value) {\n this._cmdkService.itemValueChanged(this.value, value);\n this._value = value;\n }\n }\n get value() {\n return this._value\n ? this._value\n : this._elementRef.nativeElement.textContent.trim().toLowerCase();\n }\n\n private _cmdkService = inject(CmdkService);\n\n readonly itemId = `cmdk-item-${cmdkItemId++}`;\n _elementRef = inject(ElementRef<HTMLButtonElement>);\n\n @HostListener('click')\n onClick() {\n this.selected.emit();\n }\n\n @HostListener('keydown', ['event'])\n onKeyUp(ev: KeyboardEvent) {\n if (ev?.key === 'Enter') {\n this.selected.emit();\n }\n }\n\n @HostBinding('attr.cmdk-hidden')\n get hidden() {\n return !this.filtered;\n }\n\n @HostBinding('style.display')\n get display() {\n return this.filtered ? this.originalDisplay : 'none';\n }\n\n @HostBinding('attr.data-value')\n get dataValue() {\n return this.value;\n }\n\n @HostBinding('attr.role')\n get attrRole() {\n return 'option';\n }\n\n @HostBinding('type')\n get buttonType() {\n return 'button';\n }\n\n @HostBinding('attr.aria-selected')\n get isSelected() {\n return this._active;\n }\n\n @HostBinding('class.cmdk-item-active')\n get active() {\n return this._active;\n }\n\n @HostBinding('class.cmdk-item-disabled')\n get itemDisabled() {\n return this.disabled;\n }\n\n @HostBinding('class.cmdk-item-filtered')\n get itemFiltered() {\n return this.filtered;\n }\n\n set active(value: boolean) {\n this._active = value;\n }\n\n @HostListener('mouseup')\n onMouseUp() {\n this._cmdkService.itemClicked(this.value);\n }\n\n ngAfterContentInit(): void {\n this.originalDisplay = window.getComputedStyle(\n this._elementRef.nativeElement\n ).display;\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n HostBinding,\n inject,\n Input,\n QueryList,\n} from '@angular/core';\nimport { Content, DynamicViewModule } from '@ngneat/overview';\nimport { ItemDirective } from '../../directives/item/item.directive';\nimport { CmdkGroupProps } from '../../types';\nimport { NgIf } from '@angular/common';\n\nlet cmdkGroupId = 0;\n\n@Component({\n selector: 'cmdk-group',\n templateUrl: './group.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-group',\n },\n styleUrls: ['./group.component.scss'],\n standalone: true,\n imports: [NgIf, DynamicViewModule],\n})\nexport class GroupComponent implements CmdkGroupProps {\n @Input() label?: Content;\n @Input() ariaLabel?: string;\n\n @ContentChildren(ItemDirective, { descendants: true })\n items!: QueryList<ItemDirective>;\n\n showGroup = true;\n private _active = false;\n readonly groupId = `cmdk-group-${cmdkGroupId++}`;\n _cdr = inject(ChangeDetectorRef);\n\n get filteredItems() {\n return this.items?.filter((item) => item.filtered);\n }\n\n get active() {\n return this._active;\n }\n set active(value: boolean) {\n this._active = value;\n this._cdr.markForCheck();\n }\n\n get filtered() {\n return this.filteredItems.length > 0;\n }\n\n @HostBinding('id')\n get id() {\n return this.groupId;\n }\n\n @HostBinding('class.cmdk-group-active')\n get activeClass() {\n return this.active;\n }\n\n @HostBinding('attr.cmdk-hidden')\n get hidden() {\n return !this.showGroup;\n }\n\n @HostBinding('attr.data-value')\n get dataValue() {\n return this.label?.toString().toLowerCase();\n }\n}\n","<div role=\"presentation\" *ngIf=\"label\" class=\"cmdk-group-label\">\n <ng-container *dynamicView=\"label\"></ng-container>\n</div>\n<div class=\"cmdk-group-content\" role=\"group\" [attr.aria-label]=\"ariaLabel\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n inject,\n} from '@angular/core';\n\n/**\n * A visual and semantic separator between items or groups.\n * Visible when the search query is empty or `alwaysRender` is true, hidden otherwise.\n */\n@Component({\n selector: 'cmdk-separator',\n templateUrl: './separator.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-separator',\n },\n styleUrls: ['./separator.component.scss'],\n standalone: true,\n})\nexport class SeparatorComponent {\n showSeparator = true;\n public cdr = inject(ChangeDetectorRef);\n\n @HostBinding('attr.cmdk-hidden')\n get hidden() {\n return !this.showSeparator;\n }\n}\n","<hr>","import {\n Directive,\n TemplateRef,\n ViewContainerRef,\n inject,\n} from '@angular/core';\n\n@Directive({\n selector: '[cmdkLoader]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-loader',\n },\n standalone: true,\n})\nexport class LoaderDirective {\n private _hasView = false;\n private _templateRef = inject(TemplateRef);\n private _viewContainer = inject(ViewContainerRef);\n\n set cmdkLoader(condition: boolean | undefined) {\n if (condition && !this._hasView) {\n this._viewContainer.createEmbeddedView(this._templateRef);\n this._hasView = true;\n } else if (!condition && this._hasView) {\n this._viewContainer.clear();\n this._hasView = false;\n }\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n HostBinding,\n inject,\n Input,\n OnDestroy,\n QueryList,\n ViewChild,\n} from '@angular/core';\nimport { ItemDirective } from '../../directives/item/item.directive';\nimport { CmdkListProps } from '../../types';\n\nlet cmdkListId = 0;\n\n@Component({\n selector: 'cmdk-list',\n templateUrl: './list.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-list',\n },\n standalone: true,\n})\nexport class ListComponent implements AfterViewInit, OnDestroy, CmdkListProps {\n @Input() ariaLabel?: string;\n\n @ContentChildren(ItemDirective, { descendants: true })\n items!: QueryList<ItemDirective>;\n\n @ViewChild('height') heightEle!: ElementRef<HTMLDivElement>;\n\n private _active = false;\n private _elementRef = inject<ElementRef<any>>(ElementRef<any>);\n private _animationFrame: number | undefined;\n readonly listId = `cmdk-list-${cmdkListId++}`;\n _cdr = inject(ChangeDetectorRef);\n private _observer: ResizeObserver | undefined;\n\n get filteredItems() {\n return this.items?.filter((item) => item.filtered);\n }\n\n get active() {\n return this._active;\n }\n set active(value: boolean) {\n this._active = value;\n this._cdr.markForCheck();\n }\n\n get filtered() {\n return this.filteredItems.length > 0;\n }\n\n @HostBinding('id')\n get id() {\n return this.listId;\n }\n\n @HostBinding('class.cmdk-list-active')\n get activeClass() {\n return this.active;\n }\n\n ngAfterViewInit() {\n if (this.heightEle.nativeElement && this._elementRef.nativeElement) {\n const el = this.heightEle.nativeElement;\n const wrapper = this._elementRef.nativeElement;\n\n this._observer = new ResizeObserver(() => {\n this._animationFrame = requestAnimationFrame(() => {\n const height = el.getBoundingClientRect().height;\n wrapper.style.setProperty(\n `--cmdk-list-height`,\n height.toFixed(1) + 'px'\n );\n this._cdr.markForCheck();\n });\n });\n this._observer.observe(el);\n }\n }\n\n ngOnDestroy() {\n if (this._animationFrame !== undefined) {\n cancelAnimationFrame(this._animationFrame);\n }\n if (this._observer && this.heightEle.nativeElement) {\n this._observer.unobserve(this.heightEle.nativeElement);\n }\n }\n}\n","<div class=\"cmdk-list-content\" role=\"listbox\" [attr.aria-label]=\"ariaLabel\" #height>\n <ng-content></ng-content>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ChangeDetectionStrategy,\n ContentChildren,\n QueryList,\n inject,\n ContentChild,\n HostListener,\n AfterViewInit,\n OnChanges,\n SimpleChanges,\n OnDestroy,\n HostBinding,\n} from '@angular/core';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { CmdkService } from '../../cmdk.service';\nimport { EmptyDirective } from '../../directives/empty/empty.directive';\nimport { ItemDirective } from '../../directives/item/item.directive';\nimport { CmdkCommandProps } from '../../types';\nimport { GroupComponent } from '../group/group.component';\nimport { SeparatorComponent } from '../separator/separator.component';\nimport { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { LoaderDirective } from '../../directives/loader/loader.directive';\nimport { ListComponent } from '../list/list.component';\nimport { race } from 'rxjs';\n\nlet commandId = 0;\nconst GROUP_SELECTOR = 'cmdk-group';\nconst GROUP_HEADING_SELECTOR = '.cmdk-group-label';\n@UntilDestroy()\n@Component({\n selector: 'cmdk-command',\n templateUrl: './command.component.html',\n providers: [CmdkService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: 'cmdkCommand',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'cmdk-command',\n },\n standalone: true,\n})\nexport class CommandComponent\n implements CmdkCommandProps, AfterViewInit, OnChanges, OnDestroy\n{\n @Output() valueChanged = new EventEmitter<string>();\n @Input() value: string | undefined;\n @Input() ariaLabel?: string;\n @Input() loading?: boolean;\n @Input() filter:\n | ((value: string, search: string) => boolean)\n | null\n | undefined = (value, search) =>\n value.toLowerCase().includes(search.toLowerCase());\n @Input() loop = false;\n\n @ContentChildren(ItemDirective, { descendants: true })\n items!: QueryList<ItemDirective>;\n @ContentChildren(GroupComponent, { descendants: true })\n groups: QueryList<GroupComponent> | undefined;\n @ContentChildren(ListComponent, { descendants: true })\n lists: QueryList<ListComponent> | undefined;\n @ContentChildren(SeparatorComponent, { descendants: true })\n separators: QueryList<SeparatorComponent> | undefined;\n @ContentChild(EmptyDirective) empty: EmptyDirective | undefined;\n @ContentChild(LoaderDirective) loader: LoaderDirective | undefined;\n search = '';\n\n @HostBinding('attr.aria-label')\n get attrAriaLabel() {\n return this.ariaLabel;\n }\n\n @HostBinding('id')\n get id() {\n return this.panelId;\n }\n\n readonly panelId = `cmdk-command-${commandId++}`;\n\n private cmdkService = inject(CmdkService);\n\n private keyManager!: ActiveDescendantKeyManager<ItemDirective>;\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['value'] && !changes['value'].firstChange) {\n this.setValue(this.value);\n } else if (\n changes['loading'] &&\n !changes['loading'].firstChange &&\n this.loader\n ) {\n this.loader.cmdkLoader = this.loading;\n }\n }\n\n ngAfterViewInit() {\n race(this.cmdkService.itemValueChanged$, this.items.changes)\n .pipe(untilDestroyed(this))\n .subscribe(() => {\n setTimeout(() => {\n if (this.keyManager) {\n this.keyManager.destroy();\n }\n // create key and focus managers\n this.initKeyManager();\n\n if (this.filter) {\n this.handleSearch(this.search);\n }\n });\n });\n\n // show/hide loader\n if (this.loader) {\n this.loader.cmdkLoader = this.loading;\n }\n\n // create key and focus managers\n this.initKeyManager();\n\n if (this.filter) {\n this.cmdkService.search$\n .pipe(untilDestroyed(this))\n .subscribe((s) => this.handleSearch(s));\n }\n\n // if value is given, make that item active, else make first item active\n if (this.value) {\n this.setValue(this.value);\n } else {\n this.makeFirstItemActive();\n }\n\n // emit value on item clicks\n this.cmdkService.itemClicked$\n .pipe(untilDestroyed(this))\n .subscribe((value) => {\n const emit = true;\n this.setValue(value, emit);\n });\n }\n\n private initKeyManager() {\n this.keyManager = new ActiveDescendantKeyManager(this.items)\n .withWrap(this.loop)\n .withPageUpDown()\n .skipPredicate((item) => item.disabled || !item.filtered);\n\n // set active group on active item change\n this.keyManager.change.pipe(untilDestroyed(this)).subscribe(() => {\n const activeItem = this.keyManager.activeItem;\n if (activeItem) {\n const emit = true;\n this.setValue(activeItem.value, emit);\n this.setActiveGroupForActiveItem(activeItem.itemId);\n }\n });\n }\n\n get filteredItems() {\n return this.items?.filter((item) => item.filtered);\n }\n\n get filteredGroups() {\n return this.groups?.filter((group) => group.filtered);\n }\n\n get filteredLists() {\n return this.lists?.filter((group) => group.filtered);\n }\n\n handleSearch(search: string) {\n this.search = search;\n if (this.items?.length) {\n // filter items\n this.items?.forEach((item) => {\n item.filtered = this.filter ? this.filter(item.value, search) : true;\n });\n\n // make first item active and in-turn it will also make first group active, if available\n this.makeFirstItemActive();\n }\n // show/hide empty directive\n if (this.empty) {\n this.empty.cmdkEmpty = this.filteredItems?.length === 0;\n }\n\n // show/hide group\n this.groups?.forEach((group) => {\n group.showGroup = group.filteredItems?.length > 0;\n group._cdr.markForCheck();\n });\n\n // hide separator if search and filter both are present, else show\n this.separators?.forEach((seperator) => {\n seperator.showSeparator = !(this.filter && search);\n seperator.cdr.markForCheck();\n });\n }\n\n @HostListener('keydown', ['$event'])\n onKeyUp(ev: KeyboardEvent) {\n if (\n ev.key === 'Enter' &&\n this.keyManager.activeItem &&\n this.filteredItems.length > 0\n ) {\n this.valueChanged.emit(this.keyManager.activeItem.value);\n this.keyManager.activeItem.selected.emit();\n } else {\n this.keyManager.onKeydown(ev);\n }\n }\n\n ngOnDestroy(): void {\n this.keyManager.destroy();\n }\n\n private makeFirstItemActive() {\n setTimeout(() => {\n const firstItem = this.filteredItems?.[0];\n if (firstItem) {\n this.keyManager.setFirstItemActive();\n } else {\n this.valueChanged.emit(undefined);\n }\n });\n }\n\n private setActiveGroupForActiveItem(nextActiveItemId: string) {\n this.filteredGroups?.forEach((group) => {\n group.active = group.filteredItems.some(\n (item) => item.itemId === nextActiveItemId\n );\n });\n this.filteredLists?.forEach((list) => {\n list.active = list.filteredItems.some(\n (item) => item.itemId === nextActiveItemId\n );\n });\n }\n\n private setValue(value: string | undefined, emit = false) {\n if (value !== undefined) {\n const valueItem = this.filteredItems?.find(\n (item) => item.value === value\n );\n if (valueItem) {\n if (this.keyManager.activeItem !== valueItem) {\n setTimeout(() => {\n this.keyManager.setActiveItem(valueItem);\n });\n }\n setTimeout(() => {\n this.scrollActiveIntoView();\n });\n if (emit) {\n this.valueChanged.emit(value);\n }\n }\n }\n }\n\n private scrollActiveIntoView() {\n const item = this.keyManager.activeItem;\n const nativeElement = item?._elementRef?.nativeElement;\n if (nativeElement) {\n if (nativeElement.parentElement?.firstChild === nativeElement) {\n // First item in Group, ensure heading is in view\n nativeElement\n .closest(GROUP_SELECTOR)\n ?.querySelector(GROUP_HEADING_SELECTOR)\n ?.scrollIntoView({ block: 'nearest' });\n }\n\n // Ensure the item is always in view\n nativeElement.scrollIntoView({ block: 'nearest' });\n }\n }\n}\n","<ng-content></ng-content>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { InputDirective } from './directives/input/input.directive';\nimport { EmptyDirective } from './directives/empty/empty.directive';\nimport { CommandComponent } from './components/command/command.component';\nimport { DynamicViewModule } from '@ngneat/overview';\nimport { GroupComponent } from './components/group/group.component';\nimport { SeparatorComponent } from './components/separator/separator.component';\nimport { CommonModule } from '@angular/common';\nimport { ItemDirective } from './directives/item/item.directive';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { LoaderDirective } from './directives/loader/loader.directive';\nimport { ListComponent } from './components/list/list.component';\n\nconst ComponentsAndDirectives = [\n CommandComponent,\n InputDirective,\n EmptyDirective,\n GroupComponent,\n SeparatorComponent,\n ItemDirective,\n LoaderDirective,\n ListComponent,\n];\n@NgModule({\n imports: [CommonModule, DynamicViewModule, A11yModule, ...ComponentsAndDirectives],\n exports: ComponentsAndDirectives,\n})\nexport class CmdkModule {\n static forRoot(): ModuleWithProviders<CmdkModule> {\n return {\n ngModule: CmdkModule,\n };\n }\n}\n","/*\n * Public API Surface of cmdk\n */\n\nexport * from './lib/cmdk.module';\nexport * from './lib/cmdk.service';\nexport * from './lib/components/command/command.component';\nexport * from './lib/components/group/group.component';\nexport * from './lib/components/separator/separator.component';\nexport * from './lib/components/list/list.component';\nexport * from './lib/directives/empty/empty.directive';\nexport * from './lib/directives/input/input.directive';\nexport * from './lib/directives/item/item.directive';\nexport * from './lib/directives/loader/loader.directive';\nexport * from './lib/types';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}