@dnd-mapp/shared-ui 1.1.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +57 -15
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 +0 -0
- package/assets/fonts/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 +0 -0
- package/assets/fonts/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 +0 -0
- package/assets/fonts/L0x5DF4xlVMF-BfR8bXMIjhEq3-OXg.woff2 +0 -0
- package/assets/fonts/L0x5DF4xlVMF-BfR8bXMIjhFq3-OXg.woff2 +0 -0
- package/assets/fonts/L0x5DF4xlVMF-BfR8bXMIjhGq3-OXg.woff2 +0 -0
- package/assets/fonts/L0x5DF4xlVMF-BfR8bXMIjhIq3-OXg.woff2 +0 -0
- package/assets/fonts/L0x5DF4xlVMF-BfR8bXMIjhLq38.woff2 +0 -0
- package/assets/fonts/L0x5DF4xlVMF-BfR8bXMIjhPq3-OXg.woff2 +0 -0
- package/assets/fonts/L0x7DF4xlVMF-BfR8bXMIjhOm32WWg.woff2 +0 -0
- package/assets/fonts/L0x7DF4xlVMF-BfR8bXMIjhOm36WWoKC.woff2 +0 -0
- package/assets/fonts/L0x7DF4xlVMF-BfR8bXMIjhOm3CWWoKC.woff2 +0 -0
- package/assets/fonts/L0x7DF4xlVMF-BfR8bXMIjhOm3KWWoKC.woff2 +0 -0
- package/assets/fonts/L0x7DF4xlVMF-BfR8bXMIjhOm3OWWoKC.woff2 +0 -0
- package/assets/fonts/L0x7DF4xlVMF-BfR8bXMIjhOm3mWWoKC.woff2 +0 -0
- package/assets/styles/_normalize.scss +380 -0
- package/assets/styles/colors/_amber.scss +11 -0
- package/assets/styles/colors/_blue.scss +11 -0
- package/assets/styles/colors/_common.scss +2 -0
- package/assets/styles/colors/_cyan.scss +11 -0
- package/assets/styles/colors/_emerald.scss +11 -0
- package/assets/styles/colors/_fuchsia.scss +11 -0
- package/assets/styles/colors/_gray.scss +11 -0
- package/assets/styles/colors/_green.scss +11 -0
- package/assets/styles/colors/_indigo.scss +11 -0
- package/assets/styles/colors/_lime.scss +11 -0
- package/assets/styles/colors/_mauve.scss +11 -0
- package/assets/styles/colors/_mist.scss +11 -0
- package/assets/styles/colors/_neutral.scss +11 -0
- package/assets/styles/colors/_olive.scss +11 -0
- package/assets/styles/colors/_orange.scss +11 -0
- package/assets/styles/colors/_pink.scss +11 -0
- package/assets/styles/colors/_purple.scss +11 -0
- package/assets/styles/colors/_red.scss +11 -0
- package/assets/styles/colors/_rose.scss +11 -0
- package/assets/styles/colors/_sky.scss +11 -0
- package/assets/styles/colors/_slate.scss +11 -0
- package/assets/styles/colors/_stone.scss +11 -0
- package/assets/styles/colors/_taupe.scss +11 -0
- package/assets/styles/colors/_teal.scss +11 -0
- package/assets/styles/colors/_violet.scss +11 -0
- package/assets/styles/colors/_yellow.scss +11 -0
- package/assets/styles/colors/_zinc.scss +11 -0
- package/assets/styles/colors/index.scss +27 -0
- package/assets/styles/fonts.scss +387 -0
- package/assets/styles/main.scss +17 -0
- package/assets/styles/theme-variables/_layout.scss +8 -0
- package/assets/styles/theme-variables/_shadows.scss +37 -0
- package/assets/styles/theme-variables/_spacing.scss +23 -0
- package/assets/styles/theme-variables/_text.scss +81 -0
- package/assets/styles/theme-variables/index.scss +4 -0
- package/fesm2022/dnd-mapp-shared-ui.mjs +329 -112
- package/fesm2022/dnd-mapp-shared-ui.mjs.map +1 -1
- package/package.json +19 -9
- package/src/lib/button/README.md +32 -34
- package/src/lib/dropdown/README.md +20 -16
- package/src/lib/forms/input/README.md +60 -36
- package/src/lib/nav/active-marker/README.md +35 -22
- package/src/lib/nav/app-top-bar/README.md +18 -35
- package/src/lib/nav/navbar/README.md +13 -18
- package/src/lib/nav/navbar-brand/README.md +32 -13
- package/src/lib/nav/navbar-link/README.md +22 -11
- package/src/lib/nav/navbar-menu/README.md +42 -68
- package/src/lib/vertical-rule/README.md +7 -5
- package/types/dnd-mapp-shared-ui.d.ts +157 -15
- package/assets/styles/main.css +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dnd-mapp-shared-ui.mjs","sources":["../../../projects/shared-ui/src/lib/button/button-color.ts","../../../projects/shared-ui/src/lib/button/button.component.ts","../../../projects/shared-ui/src/lib/button/button.component.html","../../../projects/shared-ui/src/lib/dropdown/positions.ts","../../../projects/shared-ui/src/lib/dropdown/dropdown-anchor.directive.ts","../../../projects/shared-ui/src/lib/dropdown/dropdown-container.component.ts","../../../projects/shared-ui/src/lib/forms/value-accessor.ts","../../../projects/shared-ui/src/lib/forms/input/input.component.ts","../../../projects/shared-ui/src/lib/forms/input/input.component.html","../../../projects/shared-ui/src/lib/icons/solid/circle-user/circle-user.icon.ts","../../../projects/shared-ui/src/lib/icons/solid/circle-user/circle-user.icon.svg","../../../projects/shared-ui/src/lib/nav/active-marker/active-marker.component.ts","../../../projects/shared-ui/src/lib/nav/active-marker/active-marker.component.html","../../../projects/shared-ui/src/lib/nav/app-top-bar/section-position.ts","../../../projects/shared-ui/src/lib/nav/app-top-bar/app-top-bar-section.component.ts","../../../projects/shared-ui/src/lib/nav/app-top-bar/app-top-bar.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-brand/navbar-brand.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-brand/navbar-brand.component.html","../../../projects/shared-ui/src/lib/nav/navbar-link/navbar-link.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-link/navbar-link.component.html","../../../projects/shared-ui/src/lib/nav/navbar-menu/navbar-menu.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-menu/navbar-menu.component.html","../../../projects/shared-ui/src/lib/nav/navbar/navbar.component.ts","../../../projects/shared-ui/src/lib/vertical-rule/vertical-rule.component.ts","../../../projects/shared-ui/src/public-api.ts","../../../projects/shared-ui/src/dnd-mapp-shared-ui.ts"],"sourcesContent":["import { AttributeInput } from '../attribute-input';\n\nexport const ButtonColors = {\n PRIMARY: 'primary',\n BASE: 'base',\n DANGER: 'danger',\n} as const;\n\nexport type ButtonColor = (typeof ButtonColors)[keyof typeof ButtonColors];\n\nexport const DEFAULT_BUTTON_COLOR: ButtonColor = ButtonColors.BASE;\n\nexport function buttonColorAttribute(value: AttributeInput<ButtonColor>) {\n return Object.values(ButtonColors).find((color) => value === color) ?? DEFAULT_BUTTON_COLOR;\n}\n","import { Component, computed, input } from '@angular/core';\nimport { buttonColorAttribute, ButtonColors, DEFAULT_BUTTON_COLOR } from './button-color';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'button[dma-button]',\n templateUrl: './button.component.html',\n host: {\n 'class': 'font-semibold cursor-pointer py-2 px-4 rounded-md',\n '[class.text-neutral-900]': 'isBase()',\n '[class.bg-neutral-100]': 'isBase()',\n '[class.hover:bg-neutral-200]': 'isBase()',\n '[class.active:bg-neutral-300]': 'isBase()',\n '[class.text-neutral-100]': 'isPrimary()',\n '[class.bg-blue-400]': 'isPrimary()',\n '[class.hover:bg-blue-500]': 'isPrimary()',\n '[class.active:bg-blue-600]': 'isPrimary()',\n '[class.text-red-600]': 'isDanger()',\n '[class.hover:bg-red-50]': 'isDanger()',\n '[class.active:bg-red-100]': 'isDanger()',\n },\n imports: [],\n})\nexport class ButtonComponent {\n public readonly color = input(DEFAULT_BUTTON_COLOR, { transform: buttonColorAttribute, alias: 'dma-button' });\n\n protected readonly isBase = computed(() => this.color() === ButtonColors.BASE);\n\n protected readonly isPrimary = computed(() => this.color() === ButtonColors.PRIMARY);\n\n protected readonly isDanger = computed(() => this.color() === ButtonColors.DANGER);\n}\n","<div class=\"flex gap-2 items-center justify-center\">\n <ng-content select=\"dma-leading-icon\" />\n <ng-content />\n</div>\n","import { ConnectedPosition } from '@angular/cdk/overlay';\n\nexport const DEFAULT_DROPDOWN_POSITIONS: ConnectedPosition[] = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: 4,\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -4,\n },\n];\n","import { ConnectedPosition, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport {\n booleanAttribute,\n DestroyRef,\n Directive,\n ElementRef,\n inject,\n input,\n output,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { debounceTime, filter, Subject } from 'rxjs';\nimport { DEFAULT_DROPDOWN_POSITIONS } from './positions';\n\n@Directive({\n selector: '[dmaDropdownAnchor]',\n exportAs: 'dmaDropdownAnchor',\n host: {\n '(click)': 'onClick()',\n '(mouseenter)': 'onMouseenter()',\n '(mouseleave)': 'onMouseleave()',\n },\n})\nexport class DropdownAnchorDirective {\n private readonly overlay = inject(Overlay);\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly destroyRef = inject(DestroyRef);\n\n public readonly dropdownContainerTemplateRef = input.required<TemplateRef<unknown>>({ alias: 'dmaDropdownAnchor' });\n\n public readonly positions = input<ConnectedPosition[]>(DEFAULT_DROPDOWN_POSITIONS);\n\n public readonly toggleOnHover = input(false, { transform: booleanAttribute });\n\n public readonly dropdownToggle = output<boolean>();\n\n private readonly hideScheduler = new Subject<boolean>();\n\n private overlayRef: OverlayRef | null = null;\n\n constructor() {\n this.hideScheduler\n .asObservable()\n .pipe(debounceTime(100), filter(Boolean), takeUntilDestroyed())\n .subscribe({\n next: () => {\n if (!this.toggleOnHover()) return;\n this.hide();\n },\n });\n }\n\n public show() {\n this.hideScheduler.next(false);\n if (this.overlayRef) return;\n\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(this.elementRef)\n .withPositions(this.positions());\n\n this.overlayRef = this.overlay.create({\n positionStrategy: positionStrategy,\n scrollStrategy: this.overlay.scrollStrategies.close(),\n disposeOnNavigation: true,\n width: getComputedStyle(this.elementRef.nativeElement).width,\n });\n\n this.overlayRef.attach(new TemplatePortal(this.dropdownContainerTemplateRef(), this.viewContainerRef));\n\n this.overlayRef\n .detachments()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe({\n next: () => this.hide(),\n });\n\n this.dropdownToggle.emit(true);\n }\n\n public scheduleHide(shouldHide: boolean) {\n this.hideScheduler.next(shouldHide);\n }\n\n protected onClick() {\n if (this.toggleOnHover()) return;\n this.toggle();\n }\n\n protected onMouseenter() {\n if (!this.toggleOnHover()) return;\n this.show();\n }\n\n protected onMouseleave() {\n if (!this.toggleOnHover()) return;\n this.hideScheduler.next(true);\n }\n\n private toggle() {\n if (this.overlayRef) this.hide();\n else this.show();\n }\n\n private hide() {\n if (this.overlayRef === null) return;\n this.overlayRef.dispose();\n this.overlayRef = null;\n\n this.dropdownToggle.emit(false);\n }\n}\n","import { ChangeDetectionStrategy, Component, output } from '@angular/core';\n\n@Component({\n selector: 'dma-dropdown-container',\n template: `<ng-content />`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class': 'block w-full shadow-md border border-neutral-200 rounded-md bg-neutral-50 p-1',\n '(mouseenter)': 'onMouseenter()',\n '(mouseleave)': 'onMouseleave()',\n },\n})\nexport class DropdownContainerComponent {\n public readonly hover = output<boolean>();\n\n protected onMouseenter() {\n this.hover.emit(true);\n }\n\n protected onMouseleave() {\n this.hover.emit(false);\n }\n}\n","import { ExistingProvider, Type } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport function provideValueAccessor<T>(component: Type<T>): ExistingProvider {\n return {\n provide: NG_VALUE_ACCESSOR,\n useExisting: component,\n multi: true,\n };\n}\n\nexport type NgOnChange<T> = (value: T) => void;\n\nexport type NgOnTouched = () => void;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, model } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ControlValueAccessor } from '@angular/forms';\nimport { debounceTime, Subject } from 'rxjs';\nimport { NgOnChange, NgOnTouched, provideValueAccessor } from '../value-accessor';\n\n@Component({\n selector: 'dma-input',\n templateUrl: './input.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'group',\n },\n imports: [],\n providers: [provideValueAccessor(InputComponent)],\n})\nexport class InputComponent implements ControlValueAccessor {\n public readonly inputId = input.required<string>();\n\n public readonly label = input.required<string>();\n\n public readonly placeholder = input<string>('');\n\n public readonly readonly = input(false, { transform: booleanAttribute });\n\n public readonly value = model<string>('');\n\n public readonly disabled = model<boolean>(false);\n\n private readonly inputSubject = new Subject<string>();\n\n private ngOnTouched: NgOnTouched;\n\n private ngOnChange: NgOnChange<string>;\n\n constructor() {\n this.inputSubject\n .asObservable()\n .pipe(debounceTime(500), takeUntilDestroyed())\n .subscribe({\n next: (value) => this.onChange(value),\n });\n }\n\n public writeValue(value: string) {\n this.value.set(value);\n }\n\n public registerOnChange(fn: NgOnChange<string>) {\n this.ngOnChange = fn;\n }\n\n public registerOnTouched(fn: NgOnTouched) {\n this.ngOnTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n this.disabled.set(isDisabled);\n }\n\n protected onInput(value: string) {\n this.inputSubject.next(value);\n }\n\n protected onFocus() {\n if (!this.ngOnTouched) return;\n this.ngOnTouched();\n }\n\n private onChange(value: string) {\n this.value.set(value);\n\n if (this.ngOnChange) {\n this.ngOnChange(value);\n }\n }\n}\n","<label class=\"inline-block text-sm text-neutral-900 font-semibold mb-2\" [for]=\"inputId()\">{{ label() }}</label>\n<input\n class=\"block w-full disabled:opacity-35 border text-neutral-900 group-[.ng-invalid.ng-touched]:text-red-500 border-neutral-300 not-disabled:not-group-[.ng-invalid.ng-touched]:not-group-[.ng-valid.ng-touched]:hover:border-neutral-500 disabled:bg-neutral-300 group-[.ng-invalid.ng-touched]:border-red-500 group-[.ng-valid.ng-touched]:border-green-500 rounded-xl py-2 px-4 not-group-[.ng-invalid.ng-touched]:not-group-[.ng-valid.ng-touched]:focus:outline-blue-400 read-only:outline-0 group-[.ng-invalid.ng-touched]:outline-red-500 group-[.ng-valid.ng-touched]:outline-green-500 disabled:cursor-default read-only:cursor-default\"\n type=\"text\"\n #input\n [id]=\"inputId()\"\n [placeholder]=\"placeholder()\"\n [value]=\"value()\"\n [disabled]=\"disabled()\"\n [readOnly]=\"readonly()\"\n (focus)=\"onFocus()\"\n (input)=\"onInput(input.value)\"\n/>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-circle-user-icon]',\n templateUrl: './circle-user.icon.svg',\n styleUrl: '../../icon.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CircleUserIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M463 448.2C440.9 409.8 399.4 384 352 384L288 384C240.6 384 199.1 409.8 177 448.2C212.2 487.4 263.2 512 320 512C376.8 512 427.8 487.3 463 448.2zM64 320C64 178.6 178.6 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C178.6 576 64 461.4 64 320zM320 336C359.8 336 392 303.8 392 264C392 224.2 359.8 192 320 192C280.2 192 248 224.2 248 264C248 303.8 280.2 336 320 336z\"\n />\n</svg>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\n@Component({\n selector: 'dma-active-marker',\n templateUrl: './active-marker.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class': 'block',\n '[class.text-neutral-600]': 'inactive()',\n '[class.font-normal]': 'inactive()',\n '[class.font-semibold]': 'active()',\n },\n imports: [],\n})\nexport class ActiveMarkerComponent {\n public readonly label = input.required<string>();\n\n public readonly active = input(false, { transform: booleanAttribute });\n\n protected readonly inactive = computed(() => !this.active());\n}\n","<!--\n Using an invisible element with the label set to the active state so that\n the element already takes all the space it needs and doesn't shift other elements around when it becomes active\n-->\n<div class=\"grid grid-cols-1 grid-rows-1 place-items-center\">\n <span class=\"font-bold invisible col-1 row-1\">{{ label() }}</span>\n <span class=\"col-1 row-1\">{{ label() }}</span>\n</div>\n","import { AttributeInput } from '../../attribute-input';\n\nexport const SectionPositions = {\n START: 'start',\n END: 'end',\n} as const;\n\nexport type SectionPosition = (typeof SectionPositions)[keyof typeof SectionPositions];\n\nexport const DEFAULT_SECTION_POSITION: SectionPosition = SectionPositions.START;\n\nexport function sectionPositionAttribute(value: AttributeInput<SectionPosition>) {\n return Object.values(SectionPositions).find((position) => position === value) ?? DEFAULT_SECTION_POSITION;\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { sectionPositionAttribute, SectionPositions } from './section-position';\n\n@Component({\n selector: 'dma-app-top-bar-section',\n template: `<ng-content />`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class': 'flex items-center gap-3',\n '[class.grow-1]': 'positionedAtStart()',\n },\n imports: [],\n})\nexport class AppTopBarSectionComponent {\n public readonly position = input(SectionPositions.START, { transform: sectionPositionAttribute });\n\n protected readonly positionedAtStart = computed(() => this.position() === SectionPositions.START);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-app-top-bar',\n template: `<ng-content select=\"dma-app-top-bar-section\" />`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'px-3 py-2 flex justify-between items-center border-b border-b-neutral-200 bg-neutral-100',\n },\n imports: [],\n})\nexport class AppTopBarComponent {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\n\n@Component({\n selector: 'dma-navbar-brand',\n templateUrl: './navbar-brand.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [RouterLink],\n})\nexport class NavbarBrandComponent {\n public readonly imgSrc = input.required<string>();\n\n public readonly brandName = input.required<string>();\n}\n","<a class=\"flex items-center gap-2\" routerLink=\"/\">\n <img [src]=\"imgSrc()\" alt=\"Brand logo\" width=\"32\" height=\"32\" />\n <span class=\"font-semibold text-2xl\">{{ brandName() }}</span>\n</a>\n","import { ChangeDetectionStrategy, Component, DestroyRef, inject, input, OnInit, Signal } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { isActive, Router, RouterLink } from '@angular/router';\nimport { from } from 'rxjs';\nimport { ActiveMarkerComponent } from '../active-marker/active-marker.component';\n\n@Component({\n selector: 'dma-navbar-link',\n templateUrl: './navbar-link.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class':\n 'block rounded-md p-2 hover:bg-neutral-200 hover:text-neutral-900 active:bg-neutral-300 cursor-pointer',\n '(click)': 'onClick()',\n },\n imports: [RouterLink, ActiveMarkerComponent],\n})\nexport class NavbarLinkComponent implements OnInit {\n private readonly router = inject(Router);\n private readonly destroyRef = inject(DestroyRef);\n\n public readonly label = input.required<string>();\n\n public readonly route = input.required<string>();\n\n protected isActive: Signal<boolean>;\n\n public ngOnInit() {\n this.isActive = isActive(this.route(), this.router, {\n paths: 'subset',\n queryParams: 'subset',\n fragment: 'ignored',\n matrixParams: 'ignored',\n });\n }\n\n protected onClick() {\n from(this.router.navigateByUrl(this.route())).pipe(takeUntilDestroyed(this.destroyRef)).subscribe();\n }\n}\n","<a [routerLink]=\"route()\">\n <dma-active-marker [label]=\"label()\" [active]=\"isActive()\" />\n</a>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ButtonComponent } from '../../button';\nimport { DropdownAnchorDirective, DropdownContainerComponent } from '../../dropdown';\nimport { ActiveMarkerComponent } from '../active-marker/active-marker.component';\n\n@Component({\n selector: 'dma-navbar-menu',\n templateUrl: './navbar-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [ButtonComponent, DropdownAnchorDirective, DropdownContainerComponent, ActiveMarkerComponent],\n})\nexport class NavbarMenuComponent {\n public readonly toggleOnHover = input(false, { transform: booleanAttribute });\n}\n","<button\n type=\"button\"\n dma-button\n #anchor=\"dmaDropdownAnchor\"\n [toggleOnHover]=\"toggleOnHover()\"\n [dmaDropdownAnchor]=\"dropdownContainer\"\n>\n <ng-content select=\"dropdown-trigger\" />\n</button>\n\n<ng-template #dropdownContainer>\n <dma-dropdown-container (hover)=\"anchor.scheduleHide(!$event)\">\n <ng-content select=\"dropdown-menu\" />\n </dma-dropdown-container>\n</ng-template>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nav[dma-navbar]',\n template: `<ng-content />`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'flex items-center gap-4',\n },\n imports: [],\n})\nexport class NavbarComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-vr',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'inline-block h-[stretch] border-s border-s-neutral-500',\n },\n imports: [],\n})\nexport class VerticalRuleComponent {}\n","/**\n * Public API Surface of @dnd-mapp/shared-ui\n */\nexport * from './lib';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dnd-mapp-shared-ui.mjs","sources":["../../../projects/shared-ui/src/lib/button/button-color.ts","../../../projects/shared-ui/src/lib/button/button.component.ts","../../../projects/shared-ui/src/lib/button/button.component.html","../../../projects/shared-ui/src/lib/dropdown/positions.ts","../../../projects/shared-ui/src/lib/dropdown/dropdown-anchor.directive.ts","../../../projects/shared-ui/src/lib/dropdown/dropdown-container.component.ts","../../../projects/shared-ui/src/lib/dropdown/dropdown-menu.directive.ts","../../../projects/shared-ui/src/lib/dropdown/dropdown-trigger.directive.ts","../../../projects/shared-ui/src/lib/forms/value-accessor.ts","../../../projects/shared-ui/src/lib/forms/input/input.component.ts","../../../projects/shared-ui/src/lib/forms/input/input.component.html","../../../projects/shared-ui/src/lib/icons/leading-icon.directive.ts","../../../projects/shared-ui/src/lib/icons/regular/clone/clone.re-icon.ts","../../../projects/shared-ui/src/lib/icons/regular/clone/clone.re-icon.svg","../../../projects/shared-ui/src/lib/icons/regular/eye-slash/eye-slash.re-icon.ts","../../../projects/shared-ui/src/lib/icons/regular/eye-slash/eye-slash.re-icon.svg","../../../projects/shared-ui/src/lib/icons/regular/eye/eye.re-icon.ts","../../../projects/shared-ui/src/lib/icons/regular/eye/eye.re-icon.svg","../../../projects/shared-ui/src/lib/icons/regular/file-lines/file-lines.re-icon.ts","../../../projects/shared-ui/src/lib/icons/regular/file-lines/file-lines.re-icon.svg","../../../projects/shared-ui/src/lib/icons/regular/file/file.re-icon.ts","../../../projects/shared-ui/src/lib/icons/regular/file/file.re-icon.svg","../../../projects/shared-ui/src/lib/icons/regular/floppy-disk/floppy-disk.re-icon.ts","../../../projects/shared-ui/src/lib/icons/regular/floppy-disk/floppy-disk.re-icon.svg","../../../projects/shared-ui/src/lib/icons/regular/trash-can/trash-can.re-icon.ts","../../../projects/shared-ui/src/lib/icons/regular/trash-can/trash-can.re-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/angle-down/angle-down.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/angle-down/angle-down.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/angle-up/angle-up.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/angle-up/angle-up.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/arrow-rotate-left/arrow-rotate-left.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/arrow-rotate-left/arrow-rotate-left.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/book-open/book-open.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/book-open/book-open.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/box/box.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/box/box.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/check/check.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/check/check.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/circle-user/circle-user.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/circle-user/circle-user.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/clone/clone.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/clone/clone.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/eye-slash/eye-slash.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/eye-slash/eye-slash.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/eye/eye.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/eye/eye.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/file-lines/file-lines.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/file-lines/file-lines.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/file/file.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/file/file.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/floppy-disk/floppy-disk.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/floppy-disk/floppy-disk.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/plus/plus.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/plus/plus.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/trash-can/trash-can.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/trash-can/trash-can.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/trash/trash.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/trash/trash.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/users/users.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/users/users.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/wand-magic-sparkles/wand-magic-sparkles.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/wand-magic-sparkles/wand-magic-sparkles.so-icon.svg","../../../projects/shared-ui/src/lib/icons/solid/xmark/xmark.so-icon.ts","../../../projects/shared-ui/src/lib/icons/solid/xmark/xmark.so-icon.svg","../../../projects/shared-ui/src/lib/icons/trailing-icon.directive.ts","../../../projects/shared-ui/src/lib/nav/active-marker/active-marker.component.ts","../../../projects/shared-ui/src/lib/nav/active-marker/active-marker.component.html","../../../projects/shared-ui/src/lib/nav/app-top-bar/section-position.ts","../../../projects/shared-ui/src/lib/nav/app-top-bar/app-top-bar-section.component.ts","../../../projects/shared-ui/src/lib/nav/app-top-bar/app-top-bar.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-brand/navbar-brand.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-brand/navbar-brand.component.html","../../../projects/shared-ui/src/lib/nav/navbar-link/navbar-link.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-link/navbar-link.component.html","../../../projects/shared-ui/src/lib/nav/navbar-menu/navbar-menu.component.ts","../../../projects/shared-ui/src/lib/nav/navbar-menu/navbar-menu.component.html","../../../projects/shared-ui/src/lib/nav/navbar/navbar.component.ts","../../../projects/shared-ui/src/lib/vertical-rule/vertical-rule.component.ts","../../../projects/shared-ui/src/public-api.ts","../../../projects/shared-ui/src/dnd-mapp-shared-ui.ts"],"sourcesContent":["import { AttributeInput } from '../attribute-input';\n\nexport const ButtonColors = {\n PRIMARY: 'primary',\n BASE: 'base',\n DANGER: 'danger',\n} as const;\n\nexport type ButtonColor = (typeof ButtonColors)[keyof typeof ButtonColors];\n\nexport const DEFAULT_BUTTON_COLOR: ButtonColor = ButtonColors.BASE;\n\nexport function buttonColorAttribute(value: AttributeInput<ButtonColor>) {\n return Object.values(ButtonColors).find((color) => value === color) ?? DEFAULT_BUTTON_COLOR;\n}\n","import { Component, input } from '@angular/core';\nimport { buttonColorAttribute, DEFAULT_BUTTON_COLOR } from './button-color';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'button[dma-button]',\n templateUrl: './button.component.html',\n styleUrl: './button.component.scss',\n host: {\n '[attr.dma-button]': 'color()',\n },\n imports: [],\n})\nexport class ButtonComponent {\n public readonly color = input(DEFAULT_BUTTON_COLOR, { transform: buttonColorAttribute, alias: 'dma-button' });\n}\n","<div class=\"button-content\">\n <ng-content select=\"[dmaLeadingIcon]\" />\n <ng-content />\n</div>\n","import { ConnectedPosition } from '@angular/cdk/overlay';\n\nexport const DEFAULT_DROPDOWN_POSITIONS: ConnectedPosition[] = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: 4,\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -4,\n },\n];\n","import { ConnectedPosition, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport {\n booleanAttribute,\n computed,\n DestroyRef,\n Directive,\n ElementRef,\n inject,\n input,\n output,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { debounceTime, filter, Subject } from 'rxjs';\nimport { DEFAULT_DROPDOWN_POSITIONS } from './positions';\n\n@Directive({\n selector: '[dmaDropdownAnchor]',\n exportAs: 'dmaDropdownAnchor',\n host: {\n '(click)': 'onClick()',\n '(mouseenter)': 'onMouseenter()',\n '(mouseleave)': 'onMouseleave()',\n },\n})\nexport class DropdownAnchorDirective {\n private readonly overlay = inject(Overlay);\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly destroyRef = inject(DestroyRef);\n\n public readonly dropdownContainerTemplateRef = input.required<TemplateRef<unknown>>({ alias: 'dmaDropdownAnchor' });\n\n public readonly positions = input<ConnectedPosition[]>(DEFAULT_DROPDOWN_POSITIONS);\n\n public readonly toggleOnHover = input(false, { transform: booleanAttribute });\n\n public readonly dropdownToggle = output<boolean>();\n\n public readonly dropdownOpen = computed(() => Boolean(this.overlayRef));\n\n private readonly closeScheduler = new Subject<boolean>();\n\n private overlayRef: OverlayRef | null = null;\n\n constructor() {\n this.closeScheduler\n .asObservable()\n .pipe(debounceTime(100), filter(Boolean), takeUntilDestroyed())\n .subscribe({\n next: () => {\n if (!this.toggleOnHover()) return;\n this.close();\n },\n });\n }\n\n public open() {\n this.closeScheduler.next(false);\n if (this.overlayRef) return;\n\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(this.elementRef)\n .withPositions(this.positions());\n\n this.overlayRef = this.overlay.create({\n positionStrategy: positionStrategy,\n scrollStrategy: this.overlay.scrollStrategies.close(),\n disposeOnNavigation: true,\n width: getComputedStyle(this.elementRef.nativeElement).width,\n });\n\n this.overlayRef.attach(new TemplatePortal(this.dropdownContainerTemplateRef(), this.viewContainerRef));\n\n this.overlayRef\n .detachments()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe({\n next: () => this.close(),\n });\n\n this.overlayRef\n .outsidePointerEvents()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe({\n next: (mouseEvent) => this.onOutsideClick(mouseEvent),\n });\n\n this.dropdownToggle.emit(true);\n }\n\n public close() {\n if (this.overlayRef === null) return;\n this.overlayRef.dispose();\n this.overlayRef = null;\n\n this.dropdownToggle.emit(false);\n }\n\n public scheduleClose(shouldClose: boolean) {\n this.closeScheduler.next(shouldClose);\n }\n\n protected onClick() {\n if (this.toggleOnHover()) return;\n this.toggle();\n }\n\n protected onMouseenter() {\n if (!this.toggleOnHover()) return;\n this.open();\n }\n\n protected onMouseleave() {\n if (!this.toggleOnHover()) return;\n this.closeScheduler.next(true);\n }\n\n private toggle() {\n if (this.overlayRef) this.close();\n else this.open();\n }\n\n private onOutsideClick(mouseEvent: MouseEvent) {\n let target = mouseEvent.target as HTMLElement | null;\n\n while (target !== null && target !== this.elementRef.nativeElement) {\n target = target?.parentElement ?? null;\n }\n if (!target) {\n this.close();\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, output } from '@angular/core';\n\n@Component({\n selector: 'dma-dropdown-container',\n template: `<ng-content />`,\n styleUrl: './dropdown-container.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '(mouseenter)': 'onMouseenter()',\n '(mouseleave)': 'onMouseleave()',\n },\n})\nexport class DropdownContainerComponent {\n public readonly hover = output<boolean>();\n\n protected onMouseenter() {\n this.hover.emit(true);\n }\n\n protected onMouseleave() {\n this.hover.emit(false);\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({ selector: '[dmaDropdownMenu]' })\nexport class DropdownMenuDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({ selector: '[dmaDropdownTrigger]' })\nexport class DropdownTriggerDirective {}\n","import { ExistingProvider, Type } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport function provideValueAccessor<T>(component: Type<T>): ExistingProvider {\n return {\n provide: NG_VALUE_ACCESSOR,\n useExisting: component,\n multi: true,\n };\n}\n\nexport type NgOnChange<T> = (value: T) => void;\n\nexport type NgOnTouched = () => void;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, model } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ControlValueAccessor } from '@angular/forms';\nimport { debounceTime, Subject } from 'rxjs';\nimport { NgOnChange, NgOnTouched, provideValueAccessor } from '../value-accessor';\n\n@Component({\n selector: 'dma-input',\n templateUrl: './input.component.html',\n styleUrl: './input.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [provideValueAccessor(InputComponent)],\n imports: [],\n})\nexport class InputComponent implements ControlValueAccessor {\n public readonly inputId = input.required<string>();\n\n public readonly label = input.required<string>();\n\n public readonly placeholder = input<string>('');\n\n public readonly readonly = input(false, { transform: booleanAttribute });\n\n public readonly value = model<string>('');\n\n public readonly disabled = model<boolean>(false);\n\n private readonly inputSubject = new Subject<string>();\n\n private ngOnTouched: NgOnTouched;\n\n private ngOnChange: NgOnChange<string>;\n\n constructor() {\n this.inputSubject\n .asObservable()\n .pipe(debounceTime(500), takeUntilDestroyed())\n .subscribe({\n next: (value) => this.onChange(value),\n });\n }\n\n public writeValue(value: string) {\n this.value.set(value);\n }\n\n public registerOnChange(fn: NgOnChange<string>) {\n this.ngOnChange = fn;\n }\n\n public registerOnTouched(fn: NgOnTouched) {\n this.ngOnTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n this.disabled.set(isDisabled);\n }\n\n protected onInput(value: string) {\n this.inputSubject.next(value);\n }\n\n protected onFocus() {\n if (!this.ngOnTouched) return;\n this.ngOnTouched();\n }\n\n private onChange(value: string) {\n this.value.set(value);\n\n if (this.ngOnChange) {\n this.ngOnChange(value);\n }\n }\n}\n","<label [for]=\"inputId()\">{{ label() }}</label>\n<input\n type=\"text\"\n #input\n [id]=\"inputId()\"\n [placeholder]=\"placeholder()\"\n [value]=\"value()\"\n [disabled]=\"disabled()\"\n [readOnly]=\"readonly()\"\n (focus)=\"onFocus()\"\n (input)=\"onInput(input.value)\"\n/>\n","import { Directive } from '@angular/core';\n\n@Directive({ selector: '[dmaLeadingIcon]' })\nexport class LeadingIconDirective {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-clone-re-icon]',\n templateUrl: './clone.re-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CloneReIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M352 528L128 528C119.2 528 112 520.8 112 512L112 288C112 279.2 119.2 272 128 272L176 272L176 224L128 224C92.7 224 64 252.7 64 288L64 512C64 547.3 92.7 576 128 576L352 576C387.3 576 416 547.3 416 512L416 464L368 464L368 512C368 520.8 360.8 528 352 528zM288 368C279.2 368 272 360.8 272 352L272 128C272 119.2 279.2 112 288 112L512 112C520.8 112 528 119.2 528 128L528 352C528 360.8 520.8 368 512 368L288 368zM224 352C224 387.3 252.7 416 288 416L512 416C547.3 416 576 387.3 576 352L576 128C576 92.7 547.3 64 512 64L288 64C252.7 64 224 92.7 224 128L224 352z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-eye-slash-re-icon]',\n templateUrl: './eye-slash.re-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EyeSlashReIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M73 39.1C63.6 29.7 48.4 29.7 39.1 39.1C29.8 48.5 29.7 63.7 39 73.1L567 601.1C576.4 610.5 591.6 610.5 600.9 601.1C610.2 591.7 610.3 576.5 600.9 567.2L504.5 470.8C507.2 468.4 509.9 466 512.5 463.6C559.3 420.1 590.6 368.2 605.5 332.5C608.8 324.6 608.8 315.8 605.5 307.9C590.6 272.2 559.3 220.2 512.5 176.8C465.4 133.1 400.7 96.2 319.9 96.2C263.1 96.2 214.3 114.4 173.9 140.4L73 39.1zM208.9 175.1C241 156.2 278.1 144 320 144C385.2 144 438.8 173.6 479.9 211.7C518.4 247.4 545 290 558.5 320C544.9 350 518.3 392.5 479.9 428.3C476.8 431.1 473.7 433.9 470.5 436.7L425.8 392C439.8 371.5 448 346.7 448 320C448 249.3 390.7 192 320 192C293.3 192 268.5 200.2 248 214.2L208.9 175.1zM390.9 357.1L282.9 249.1C294 243.3 306.6 240 320 240C364.2 240 400 275.8 400 320C400 333.4 396.7 346 390.9 357.1zM135.4 237.2L101.4 203.2C68.8 240 46.4 279 34.5 307.7C31.2 315.6 31.2 324.4 34.5 332.3C49.4 368 80.7 420 127.5 463.4C174.6 507.1 239.3 544 320.1 544C357.4 544 391.3 536.1 421.6 523.4L384.2 486C364.2 492.4 342.8 496 320 496C254.8 496 201.2 466.4 160.1 428.3C121.6 392.6 95 350 81.5 320C91.9 296.9 110.1 266.4 135.5 237.2z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-eye-re-icon]',\n templateUrl: './eye.re-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EyeReIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M320 144C254.8 144 201.2 173.6 160.1 211.7C121.6 247.5 95 290 81.4 320C95 350 121.6 392.5 160.1 428.3C201.2 466.4 254.8 496 320 496C385.2 496 438.8 466.4 479.9 428.3C518.4 392.5 545 350 558.6 320C545 290 518.4 247.5 479.9 211.7C438.8 173.6 385.2 144 320 144zM127.4 176.6C174.5 132.8 239.2 96 320 96C400.8 96 465.5 132.8 512.6 176.6C559.4 220.1 590.7 272 605.6 307.7C608.9 315.6 608.9 324.4 605.6 332.3C590.7 368 559.4 420 512.6 463.4C465.5 507.1 400.8 544 320 544C239.2 544 174.5 507.2 127.4 463.4C80.6 419.9 49.3 368 34.4 332.3C31.1 324.4 31.1 315.6 34.4 307.7C49.3 272 80.6 220 127.4 176.6zM320 400C364.2 400 400 364.2 400 320C400 290.4 383.9 264.5 360 250.7C358.6 310.4 310.4 358.6 250.7 360C264.5 383.9 290.4 400 320 400zM240.4 311.6C242.9 311.9 245.4 312 248 312C283.3 312 312 283.3 312 248C312 245.4 311.8 242.9 311.6 240.4C274.2 244.3 244.4 274.1 240.5 311.5zM286 196.6C296.8 193.6 308.2 192.1 319.9 192.1C328.7 192.1 337.4 193 345.7 194.7C346 194.8 346.2 194.8 346.5 194.9C404.4 207.1 447.9 258.6 447.9 320.1C447.9 390.8 390.6 448.1 319.9 448.1C258.3 448.1 206.9 404.6 194.7 346.7C192.9 338.1 191.9 329.2 191.9 320.1C191.9 309.1 193.3 298.3 195.9 288.1C196.1 287.4 196.2 286.8 196.4 286.2C208.3 242.8 242.5 208.6 285.9 196.7z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-file-lines-re-icon]',\n templateUrl: './file-lines.re-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileLinesReIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M192 112L304 112L304 200C304 239.8 336.2 272 376 272L464 272L464 512C464 520.8 456.8 528 448 528L192 528C183.2 528 176 520.8 176 512L176 128C176 119.2 183.2 112 192 112zM352 131.9L444.1 224L376 224C362.7 224 352 213.3 352 200L352 131.9zM192 64C156.7 64 128 92.7 128 128L128 512C128 547.3 156.7 576 192 576L448 576C483.3 576 512 547.3 512 512L512 250.5C512 233.5 505.3 217.2 493.3 205.2L370.7 82.7C358.7 70.7 342.5 64 325.5 64L192 64zM248 320C234.7 320 224 330.7 224 344C224 357.3 234.7 368 248 368L392 368C405.3 368 416 357.3 416 344C416 330.7 405.3 320 392 320L248 320zM248 416C234.7 416 224 426.7 224 440C224 453.3 234.7 464 248 464L392 464C405.3 464 416 453.3 416 440C416 426.7 405.3 416 392 416L248 416z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-file-re-icon]',\n templateUrl: './file.re-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileReIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M304 112L192 112C183.2 112 176 119.2 176 128L176 512C176 520.8 183.2 528 192 528L448 528C456.8 528 464 520.8 464 512L464 272L376 272C336.2 272 304 239.8 304 200L304 112zM444.1 224L352 131.9L352 200C352 213.3 362.7 224 376 224L444.1 224zM128 128C128 92.7 156.7 64 192 64L325.5 64C342.5 64 358.8 70.7 370.8 82.7L493.3 205.3C505.3 217.3 512 233.6 512 250.6L512 512C512 547.3 483.3 576 448 576L192 576C156.7 576 128 547.3 128 512L128 128z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-floppy-disk-re-icon]',\n templateUrl: './floppy-disk.re-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FloppyDiskReIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M160 144C151.2 144 144 151.2 144 160L144 480C144 488.8 151.2 496 160 496L480 496C488.8 496 496 488.8 496 480L496 237.3C496 233.1 494.3 229 491.3 226L416 150.6L416 240C416 257.7 401.7 272 384 272L224 272C206.3 272 192 257.7 192 240L192 144L160 144zM240 144L240 224L368 224L368 144L240 144zM96 160C96 124.7 124.7 96 160 96L402.7 96C419.7 96 436 102.7 448 114.7L525.3 192C537.3 204 544 220.3 544 237.3L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 160zM256 384C256 348.7 284.7 320 320 320C355.3 320 384 348.7 384 384C384 419.3 355.3 448 320 448C284.7 448 256 419.3 256 384z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-trash-can-re-icon]',\n templateUrl: './trash-can.re-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TrashCanReIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M262.2 48C248.9 48 236.9 56.3 232.2 68.8L216 112L120 112C106.7 112 96 122.7 96 136C96 149.3 106.7 160 120 160L520 160C533.3 160 544 149.3 544 136C544 122.7 533.3 112 520 112L424 112L407.8 68.8C403.1 56.3 391.2 48 377.8 48L262.2 48zM128 208L128 512C128 547.3 156.7 576 192 576L448 576C483.3 576 512 547.3 512 512L512 208L464 208L464 512C464 520.8 456.8 528 448 528L192 528C183.2 528 176 520.8 176 512L176 208L128 208zM288 280C288 266.7 277.3 256 264 256C250.7 256 240 266.7 240 280L240 456C240 469.3 250.7 480 264 480C277.3 480 288 469.3 288 456L288 280zM400 280C400 266.7 389.3 256 376 256C362.7 256 352 266.7 352 280L352 456C352 469.3 362.7 480 376 480C389.3 480 400 469.3 400 456L400 280z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-angle-down-so-icon]',\n templateUrl: './angle-down.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AngleDownSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M297.4 438.6C309.9 451.1 330.2 451.1 342.7 438.6L502.7 278.6C515.2 266.1 515.2 245.8 502.7 233.3C490.2 220.8 469.9 220.8 457.4 233.3L320 370.7L182.6 233.4C170.1 220.9 149.8 220.9 137.3 233.4C124.8 245.9 124.8 266.2 137.3 278.7L297.3 438.7z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-angle-up-so-icon]',\n templateUrl: './angle-up.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AngleUpSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M297.4 201.4C309.9 188.9 330.2 188.9 342.7 201.4L502.7 361.4C515.2 373.9 515.2 394.2 502.7 406.7C490.2 419.2 469.9 419.2 457.4 406.7L320 269.3L182.6 406.6C170.1 419.1 149.8 419.1 137.3 406.6C124.8 394.1 124.8 373.8 137.3 361.3L297.3 201.3z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-arrow-rotate-left-so-icon]',\n templateUrl: './arrow-rotate-left.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ArrowRotateLeftSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M320 128C263.2 128 212.1 152.7 176.9 192L224 192C241.7 192 256 206.3 256 224C256 241.7 241.7 256 224 256L96 256C78.3 256 64 241.7 64 224L64 96C64 78.3 78.3 64 96 64C113.7 64 128 78.3 128 96L128 150.7C174.9 97.6 243.5 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C233 576 156.1 532.6 109.9 466.3C99.8 451.8 103.3 431.9 117.8 421.7C132.3 411.5 152.2 415.1 162.4 429.6C197.2 479.4 254.8 511.9 320 511.9C426 511.9 512 425.9 512 319.9C512 213.9 426 128 320 128z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-book-open-so-icon]',\n templateUrl: './book-open.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BookOpenSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M320 205.3L320 514.6L320.5 514.4C375.1 491.7 433.7 480 492.8 480L512 480L512 160L492.8 160C450.6 160 408.7 168.4 369.7 184.6C352.9 191.6 336.3 198.5 320 205.3zM294.9 125.5L320 136L345.1 125.5C391.9 106 442.1 96 492.8 96L528 96C554.5 96 576 117.5 576 144L576 496C576 522.5 554.5 544 528 544L492.8 544C442.1 544 391.9 554 345.1 573.5L332.3 578.8C324.4 582.1 315.6 582.1 307.7 578.8L294.9 573.5C248.1 554 197.9 544 147.2 544L112 544C85.5 544 64 522.5 64 496L64 144C64 117.5 85.5 96 112 96L147.2 96C197.9 96 248.1 106 294.9 125.5z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-box-so-icon]',\n templateUrl: './box.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BoxSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M465.4 192L431.1 144L209 144L174.7 192L465.4 192zM96 212.5C96 199.2 100.2 186.2 107.9 175.3L156.9 106.8C168.9 90 188.3 80 208.9 80L431 80C451.7 80 471.1 90 483.1 106.8L532 175.3C539.8 186.2 543.9 199.2 543.9 212.5L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 212.5z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-check-so-icon]',\n templateUrl: './check.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CheckSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M530.8 134.1C545.1 144.5 548.3 164.5 537.9 178.8L281.9 530.8C276.4 538.4 267.9 543.1 258.5 543.9C249.1 544.7 240 541.2 233.4 534.6L105.4 406.6C92.9 394.1 92.9 373.8 105.4 361.3C117.9 348.8 138.2 348.8 150.7 361.3L252.2 462.8L486.2 141.1C496.6 126.8 516.6 123.6 530.9 134z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-circle-user-so-icon]',\n templateUrl: './circle-user.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CircleUserSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M463 448.2C440.9 409.8 399.4 384 352 384L288 384C240.6 384 199.1 409.8 177 448.2C212.2 487.4 263.2 512 320 512C376.8 512 427.8 487.3 463 448.2zM64 320C64 178.6 178.6 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C178.6 576 64 461.4 64 320zM320 336C359.8 336 392 303.8 392 264C392 224.2 359.8 192 320 192C280.2 192 248 224.2 248 264C248 303.8 280.2 336 320 336z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-clone-so-icon]',\n templateUrl: './clone.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CloneSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M352 512L128 512L128 288L176 288L176 224L128 224C92.7 224 64 252.7 64 288L64 512C64 547.3 92.7 576 128 576L352 576C387.3 576 416 547.3 416 512L416 464L352 464L352 512zM288 416L512 416C547.3 416 576 387.3 576 352L576 128C576 92.7 547.3 64 512 64L288 64C252.7 64 224 92.7 224 128L224 352C224 387.3 252.7 416 288 416z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-eye-slash-so-icon]',\n templateUrl: './eye-slash.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EyeSlashSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M73 39.1C63.6 29.7 48.4 29.7 39.1 39.1C29.8 48.5 29.7 63.7 39 73.1L567 601.1C576.4 610.5 591.6 610.5 600.9 601.1C610.2 591.7 610.3 576.5 600.9 567.2L504.5 470.8C507.2 468.4 509.9 466 512.5 463.6C559.3 420.1 590.6 368.2 605.5 332.5C608.8 324.6 608.8 315.8 605.5 307.9C590.6 272.2 559.3 220.2 512.5 176.8C465.4 133.1 400.7 96.2 319.9 96.2C263.1 96.2 214.3 114.4 173.9 140.4L73 39.1zM236.5 202.7C260 185.9 288.9 176 320 176C399.5 176 464 240.5 464 320C464 351.1 454.1 379.9 437.3 403.5L402.6 368.8C415.3 347.4 419.6 321.1 412.7 295.1C399 243.9 346.3 213.5 295.1 227.2C286.5 229.5 278.4 232.9 271.1 237.2L236.4 202.5zM357.3 459.1C345.4 462.3 332.9 464 320 464C240.5 464 176 399.5 176 320C176 307.1 177.7 294.6 180.9 282.7L101.4 203.2C68.8 240 46.4 279 34.5 307.7C31.2 315.6 31.2 324.4 34.5 332.3C49.4 368 80.7 420 127.5 463.4C174.6 507.1 239.3 544 320.1 544C357.4 544 391.3 536.1 421.6 523.4L357.4 459.2z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-eye-so-icon]',\n templateUrl: './eye.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EyeSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M320 96C239.2 96 174.5 132.8 127.4 176.6C80.6 220.1 49.3 272 34.4 307.7C31.1 315.6 31.1 324.4 34.4 332.3C49.3 368 80.6 420 127.4 463.4C174.5 507.1 239.2 544 320 544C400.8 544 465.5 507.2 512.6 463.4C559.4 419.9 590.7 368 605.6 332.3C608.9 324.4 608.9 315.6 605.6 307.7C590.7 272 559.4 220 512.6 176.6C465.5 132.9 400.8 96 320 96zM176 320C176 240.5 240.5 176 320 176C399.5 176 464 240.5 464 320C464 399.5 399.5 464 320 464C240.5 464 176 399.5 176 320zM320 256C320 291.3 291.3 320 256 320C244.5 320 233.7 317 224.3 311.6C223.3 322.5 224.2 333.7 227.2 344.8C240.9 396 293.6 426.4 344.8 412.7C396 399 426.4 346.3 412.7 295.1C400.5 249.4 357.2 220.3 311.6 224.3C316.9 233.6 320 244.4 320 256z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-file-lines-so-icon]',\n templateUrl: './file-lines.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileLinesSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M128 128C128 92.7 156.7 64 192 64L341.5 64C358.5 64 374.8 70.7 386.8 82.7L493.3 189.3C505.3 201.3 512 217.6 512 234.6L512 512C512 547.3 483.3 576 448 576L192 576C156.7 576 128 547.3 128 512L128 128zM336 122.5L336 216C336 229.3 346.7 240 360 240L453.5 240L336 122.5zM248 320C234.7 320 224 330.7 224 344C224 357.3 234.7 368 248 368L392 368C405.3 368 416 357.3 416 344C416 330.7 405.3 320 392 320L248 320zM248 416C234.7 416 224 426.7 224 440C224 453.3 234.7 464 248 464L392 464C405.3 464 416 453.3 416 440C416 426.7 405.3 416 392 416L248 416z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-file-so-icon]',\n templateUrl: './file.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M192 64C156.7 64 128 92.7 128 128L128 512C128 547.3 156.7 576 192 576L448 576C483.3 576 512 547.3 512 512L512 234.5C512 217.5 505.3 201.2 493.3 189.2L386.7 82.7C374.7 70.7 358.5 64 341.5 64L192 64zM453.5 240L360 240C346.7 240 336 229.3 336 216L336 122.5L453.5 240z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-floppy-disk-so-icon]',\n templateUrl: './floppy-disk.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FloppyDiskSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M160 96C124.7 96 96 124.7 96 160L96 480C96 515.3 124.7 544 160 544L480 544C515.3 544 544 515.3 544 480L544 237.3C544 220.3 537.3 204 525.3 192L448 114.7C436 102.7 419.7 96 402.7 96L160 96zM192 192C192 174.3 206.3 160 224 160L384 160C401.7 160 416 174.3 416 192L416 256C416 273.7 401.7 288 384 288L224 288C206.3 288 192 273.7 192 256L192 192zM320 352C355.3 352 384 380.7 384 416C384 451.3 355.3 480 320 480C284.7 480 256 451.3 256 416C256 380.7 284.7 352 320 352z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-plus-so-icon]',\n templateUrl: './plus.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PlusSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M352 128C352 110.3 337.7 96 320 96C302.3 96 288 110.3 288 128L288 288L128 288C110.3 288 96 302.3 96 320C96 337.7 110.3 352 128 352L288 352L288 512C288 529.7 302.3 544 320 544C337.7 544 352 529.7 352 512L352 352L512 352C529.7 352 544 337.7 544 320C544 302.3 529.7 288 512 288L352 288L352 128z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-trash-can-so-icon]',\n templateUrl: './trash-can.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TrashCanSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M232.7 69.9C237.1 56.8 249.3 48 263.1 48L377 48C390.8 48 403 56.8 407.4 69.9L416 96L512 96C529.7 96 544 110.3 544 128C544 145.7 529.7 160 512 160L128 160C110.3 160 96 145.7 96 128C96 110.3 110.3 96 128 96L224 96L232.7 69.9zM128 208L512 208L512 512C512 547.3 483.3 576 448 576L192 576C156.7 576 128 547.3 128 512L128 208zM216 272C202.7 272 192 282.7 192 296L192 488C192 501.3 202.7 512 216 512C229.3 512 240 501.3 240 488L240 296C240 282.7 229.3 272 216 272zM320 272C306.7 272 296 282.7 296 296L296 488C296 501.3 306.7 512 320 512C333.3 512 344 501.3 344 488L344 296C344 282.7 333.3 272 320 272zM424 272C410.7 272 400 282.7 400 296L400 488C400 501.3 410.7 512 424 512C437.3 512 448 501.3 448 488L448 296C448 282.7 437.3 272 424 272z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-trash-so-icon]',\n templateUrl: './trash.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TrashSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M232.7 69.9L224 96L128 96C110.3 96 96 110.3 96 128C96 145.7 110.3 160 128 160L512 160C529.7 160 544 145.7 544 128C544 110.3 529.7 96 512 96L416 96L407.3 69.9C402.9 56.8 390.7 48 376.9 48L263.1 48C249.3 48 237.1 56.8 232.7 69.9zM512 208L128 208L149.1 531.1C150.7 556.4 171.7 576 197 576L443 576C468.3 576 489.3 556.4 490.9 531.1L512 208z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-users-so-icon]',\n templateUrl: './users.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class UsersSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M320 80C377.4 80 424 126.6 424 184C424 241.4 377.4 288 320 288C262.6 288 216 241.4 216 184C216 126.6 262.6 80 320 80zM96 152C135.8 152 168 184.2 168 224C168 263.8 135.8 296 96 296C56.2 296 24 263.8 24 224C24 184.2 56.2 152 96 152zM0 480C0 409.3 57.3 352 128 352C140.8 352 153.2 353.9 164.9 357.4C132 394.2 112 442.8 112 496L112 512C112 523.4 114.4 534.2 118.7 544L32 544C14.3 544 0 529.7 0 512L0 480zM521.3 544C525.6 534.2 528 523.4 528 512L528 496C528 442.8 508 394.2 475.1 357.4C486.8 353.9 499.2 352 512 352C582.7 352 640 409.3 640 480L640 512C640 529.7 625.7 544 608 544L521.3 544zM472 224C472 184.2 504.2 152 544 152C583.8 152 616 184.2 616 224C616 263.8 583.8 296 544 296C504.2 296 472 263.8 472 224zM160 496C160 407.6 231.6 336 320 336C408.4 336 480 407.6 480 496L480 512C480 529.7 465.7 544 448 544L192 544C174.3 544 160 529.7 160 512L160 496z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-wand-magic-sparkles-so-icon]',\n templateUrl: './wand-magic-sparkles.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class WandMagicSparklesSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M295.4 37L310.2 73.8L347 88.6C350 89.8 352 92.8 352 96C352 99.2 350 102.2 347 103.4L310.2 118.2L295.4 155C294.2 158 291.2 160 288 160C284.8 160 281.8 158 280.6 155L265.8 118.2L229 103.4C226 102.2 224 99.2 224 96C224 92.8 226 89.8 229 88.6L265.8 73.8L280.6 37C281.8 34 284.8 32 288 32C291.2 32 294.2 34 295.4 37zM142.7 105.7L164.2 155.8L214.3 177.3C220.2 179.8 224 185.6 224 192C224 198.4 220.2 204.2 214.3 206.7L164.2 228.2L142.7 278.3C140.2 284.2 134.4 288 128 288C121.6 288 115.8 284.2 113.3 278.3L91.8 228.2L41.7 206.7C35.8 204.2 32 198.4 32 192C32 185.6 35.8 179.8 41.7 177.3L91.8 155.8L113.3 105.7C115.8 99.8 121.6 96 128 96C134.4 96 140.2 99.8 142.7 105.7zM496 368C502.4 368 508.2 371.8 510.7 377.7L532.2 427.8L582.3 449.3C588.2 451.8 592 457.6 592 464C592 470.4 588.2 476.2 582.3 478.7L532.2 500.2L510.7 550.3C508.2 556.2 502.4 560 496 560C489.6 560 483.8 556.2 481.3 550.3L459.8 500.2L409.7 478.7C403.8 476.2 400 470.4 400 464C400 457.6 403.8 451.8 409.7 449.3L459.8 427.8L481.3 377.7C483.8 371.8 489.6 368 496 368zM492 64C503 64 513.6 68.4 521.5 76.2L563.8 118.5C571.6 126.4 576 137 576 148C576 159 571.6 169.6 563.8 177.5L475.6 265.7L374.3 164.4L462.5 76.2C470.4 68.4 481 64 492 64zM76.2 462.5L340.4 198.3L441.7 299.6L177.5 563.8C169.6 571.6 159 576 148 576C137 576 126.4 571.6 118.5 563.8L76.2 521.5C68.4 513.6 64 503 64 492C64 481 68.4 470.4 76.2 462.5z\"\n />\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-icon[dma-xmark-so-icon]',\n templateUrl: './xmark.so-icon.svg',\n styleUrl: '../../icon.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class XmarkSoIcon {}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\">\n <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->\n <path\n d=\"M183.1 137.4C170.6 124.9 150.3 124.9 137.8 137.4C125.3 149.9 125.3 170.2 137.8 182.7L275.2 320L137.9 457.4C125.4 469.9 125.4 490.2 137.9 502.7C150.4 515.2 170.7 515.2 183.2 502.7L320.5 365.3L457.9 502.6C470.4 515.1 490.7 515.1 503.2 502.6C515.7 490.1 515.7 469.8 503.2 457.3L365.8 320L503.1 182.6C515.6 170.1 515.6 149.8 503.1 137.3C490.6 124.8 470.3 124.8 457.8 137.3L320.5 274.7L183.1 137.4z\"\n />\n</svg>\n","import { Directive } from '@angular/core';\n\n@Directive({ selector: '[dmaTrailingIcon]' })\nexport class TrailingIconDirective {}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'dma-active-marker',\n templateUrl: './active-marker.component.html',\n styleUrl: './active-marker.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.active]': 'active()',\n },\n imports: [],\n})\nexport class ActiveMarkerComponent {\n public readonly label = input.required<string>();\n\n public readonly active = input(false, { transform: booleanAttribute });\n}\n","<!--\n Using an invisible element with the label set to the active state so that\n the element already takes all the space it needs and doesn't shift other elements around when it becomes active\n-->\n<span class=\"label-spacer\">{{ label() }}</span>\n<span>{{ label() }}</span>\n","import { AttributeInput } from '../../attribute-input';\n\nexport const SectionPositions = {\n START: 'start',\n END: 'end',\n} as const;\n\nexport type SectionPosition = (typeof SectionPositions)[keyof typeof SectionPositions];\n\nexport const DEFAULT_SECTION_POSITION: SectionPosition = SectionPositions.START;\n\nexport function sectionPositionAttribute(value: AttributeInput<SectionPosition>) {\n return Object.values(SectionPositions).find((position) => position === value) ?? DEFAULT_SECTION_POSITION;\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { sectionPositionAttribute, SectionPositions } from './section-position';\n\n@Component({\n selector: 'dma-app-top-bar-section',\n template: `<ng-content />`,\n styleUrl: './app-top-bar-section.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.position]': 'position()',\n },\n imports: [],\n})\nexport class AppTopBarSectionComponent {\n public readonly position = input(SectionPositions.START, { transform: sectionPositionAttribute });\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-app-top-bar',\n template: `<ng-content select=\"dma-app-top-bar-section\" />`,\n styleUrl: './app-top-bar.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n})\nexport class AppTopBarComponent {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\n\n@Component({\n selector: 'dma-navbar-brand',\n templateUrl: './navbar-brand.component.html',\n styleUrl: './navbar-brand.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [RouterLink],\n})\nexport class NavbarBrandComponent {\n public readonly imgSrc = input.required<string>();\n\n public readonly brandName = input.required<string>();\n}\n","<a routerLink=\"/\">\n <img [src]=\"imgSrc()\" alt=\"Brand logo\" width=\"32\" height=\"32\" />\n <span>{{ brandName() }}</span>\n</a>\n","import { ChangeDetectionStrategy, Component, DestroyRef, inject, input, OnInit, Signal } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { isActive, Router, RouterLink } from '@angular/router';\nimport { from } from 'rxjs';\nimport { ActiveMarkerComponent } from '../active-marker/active-marker.component';\n\n@Component({\n selector: 'dma-navbar-link',\n templateUrl: './navbar-link.component.html',\n styleUrl: './navbar-link.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '(click)': 'onClick()',\n },\n imports: [RouterLink, ActiveMarkerComponent],\n})\nexport class NavbarLinkComponent implements OnInit {\n private readonly router = inject(Router);\n private readonly destroyRef = inject(DestroyRef);\n\n public readonly label = input.required<string>();\n\n public readonly route = input.required<string>();\n\n protected isActive: Signal<boolean>;\n\n public ngOnInit() {\n this.isActive = isActive(this.route(), this.router, {\n paths: 'subset',\n queryParams: 'subset',\n fragment: 'ignored',\n matrixParams: 'ignored',\n });\n }\n\n protected onClick() {\n from(this.router.navigateByUrl(this.route())).pipe(takeUntilDestroyed(this.destroyRef)).subscribe();\n }\n}\n","<a [routerLink]=\"route()\">\n <dma-active-marker [label]=\"label()\" [active]=\"isActive()\" />\n</a>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ButtonComponent } from '../../button';\nimport { DropdownAnchorDirective, DropdownContainerComponent } from '../../dropdown';\n\n@Component({\n selector: 'dma-navbar-menu',\n templateUrl: './navbar-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [ButtonComponent, DropdownAnchorDirective, DropdownContainerComponent],\n})\nexport class NavbarMenuComponent {\n public readonly toggleOnHover = input(false, { transform: booleanAttribute });\n}\n","<button\n type=\"button\"\n dma-button\n #anchor=\"dmaDropdownAnchor\"\n [toggleOnHover]=\"toggleOnHover()\"\n [dmaDropdownAnchor]=\"dropdownContainer\"\n>\n <ng-content select=\"[dmaDropdownTrigger]\" />\n</button>\n\n<ng-template #dropdownContainer>\n <dma-dropdown-container (hover)=\"anchor.scheduleClose(!$event)\">\n <ng-content select=\"[dmaDropdownMenu]\" />\n </dma-dropdown-container>\n</ng-template>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nav[dma-navbar]',\n template: `<ng-content />`,\n styleUrl: './navbar.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n})\nexport class NavbarComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'dma-vr',\n template: '',\n styleUrl: './vertical-rule.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n})\nexport class VerticalRuleComponent {}\n","/**\n * Public API Surface of @dnd-mapp/shared-ui\n */\nexport * from './lib';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dnd-mapp/shared-ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.1",
|
|
4
4
|
"description": "Official Angular component library for the D&D Mapp platform.",
|
|
5
5
|
"author": "NoNamer777",
|
|
6
6
|
"license": "UNLICENSED",
|
|
7
7
|
"keywords": [
|
|
8
8
|
"angular",
|
|
9
9
|
"component-library",
|
|
10
|
-
"tailwind-css",
|
|
11
10
|
"ui-kit"
|
|
12
11
|
],
|
|
13
12
|
"homepage": "https://github.com/dnd-mapp/shared-ui",
|
|
@@ -19,11 +18,22 @@
|
|
|
19
18
|
"bugs": {
|
|
20
19
|
"url": "https://github.com/dnd-mapp/shared-ui"
|
|
21
20
|
},
|
|
22
|
-
"sideEffects": [
|
|
23
|
-
"*.css"
|
|
24
|
-
],
|
|
25
21
|
"exports": {
|
|
26
|
-
"./
|
|
22
|
+
"./fonts/*": "./assets/fonts/*",
|
|
23
|
+
"./images/*": "./assets/images/*",
|
|
24
|
+
"./styles/*": "./assets/styles/*",
|
|
25
|
+
"./styles/colors": {
|
|
26
|
+
"sass": "./assets/styles/colors/index.scss"
|
|
27
|
+
},
|
|
28
|
+
"./styles/fonts": {
|
|
29
|
+
"sass": "./assets/styles/fonts.scss"
|
|
30
|
+
},
|
|
31
|
+
"./styles/main": {
|
|
32
|
+
"sass": "./assets/styles/main.scss"
|
|
33
|
+
},
|
|
34
|
+
"./styles/theme-variables": {
|
|
35
|
+
"sass": "./assets/styles/theme-variables/index.scss"
|
|
36
|
+
},
|
|
27
37
|
"./package.json": {
|
|
28
38
|
"default": "./package.json"
|
|
29
39
|
},
|
|
@@ -42,12 +52,12 @@
|
|
|
42
52
|
"@angular/common": "~21.2",
|
|
43
53
|
"@angular/core": "~21.2",
|
|
44
54
|
"@angular/forms": "~21.2",
|
|
45
|
-
"@angular/router": "~21.2"
|
|
46
|
-
"tailwindcss": "~4.1"
|
|
55
|
+
"@angular/router": "~21.2"
|
|
47
56
|
},
|
|
48
57
|
"dependencies": {
|
|
49
58
|
"tslib": "~2.8"
|
|
50
59
|
},
|
|
51
60
|
"module": "fesm2022/dnd-mapp-shared-ui.mjs",
|
|
52
|
-
"typings": "types/dnd-mapp-shared-ui.d.ts"
|
|
61
|
+
"typings": "types/dnd-mapp-shared-ui.d.ts",
|
|
62
|
+
"sideEffects": false
|
|
53
63
|
}
|
package/src/lib/button/README.md
CHANGED
|
@@ -4,14 +4,18 @@
|
|
|
4
4
|
|
|
5
5
|
# Button Component (`dma-button`)
|
|
6
6
|
|
|
7
|
-
The `ButtonComponent` is a versatile UI element designed for the **D&D Mapp** design system. It is implemented as an attribute selector for standard HTML `<button>` elements, ensuring native accessibility and browser behavior while providing consistent styling.
|
|
7
|
+
The `ButtonComponent` is a versatile UI element designed for the **D&D Mapp** design system. It is implemented as an attribute selector for standard HTML `<button>` elements, ensuring native accessibility and browser behavior while providing consistent styling and flexbox-based content alignment.
|
|
8
8
|
|
|
9
9
|
## 🏰 Overview
|
|
10
10
|
|
|
11
11
|
- **Selector**: `button[dma-button]`
|
|
12
12
|
- **Format**: Attribute-based standalone component.
|
|
13
13
|
- **Compatibility**: Works with all standard HTML button attributes (e.g., `type`, `disabled`, `(click)`).
|
|
14
|
-
- **Features**:
|
|
14
|
+
- **Features**:
|
|
15
|
+
- Supports a leading icon via content projection.
|
|
16
|
+
- Automatic flex alignment for icons and text.
|
|
17
|
+
- Responsive states (hover/active) for all variants.
|
|
18
|
+
- Full-width support when nested inside a `dma-dropdown-container`.
|
|
15
19
|
|
|
16
20
|
---
|
|
17
21
|
|
|
@@ -21,7 +25,7 @@ Add `ButtonComponent` to your standalone component's `imports` array:
|
|
|
21
25
|
|
|
22
26
|
```typescript
|
|
23
27
|
import { Component } from '@angular/core';
|
|
24
|
-
import { ButtonComponent } from '@dnd-mapp/shared-ui';
|
|
28
|
+
import { ButtonComponent, LeadingIconDirective } from '@dnd-mapp/shared-ui';
|
|
25
29
|
|
|
26
30
|
@Component({
|
|
27
31
|
selector: 'app-encounter-action',
|
|
@@ -37,11 +41,11 @@ import { ButtonComponent } from '@dnd-mapp/shared-ui';
|
|
|
37
41
|
|
|
38
42
|
<!-- With a leading icon -->
|
|
39
43
|
<button type="button" dma-button>
|
|
40
|
-
<dma-icon dma-user-circle-icon
|
|
44
|
+
<dma-icon dma-user-circle-icon dmaLeadingIcon />
|
|
41
45
|
Username
|
|
42
46
|
</button>
|
|
43
47
|
`,
|
|
44
|
-
imports: [ButtonComponent],
|
|
48
|
+
imports: [ButtonComponent, LeadingIconDirective],
|
|
45
49
|
})
|
|
46
50
|
export class EncounterActionComponent {}
|
|
47
51
|
```
|
|
@@ -56,11 +60,14 @@ export class EncounterActionComponent {}
|
|
|
56
60
|
|---------|--------------|-----------------------------------|----------|--------------------------------------------|
|
|
57
61
|
| `color` | `dma-button` | `'base' \| 'primary' \| 'danger'` | `'base'` | Determines the visual style of the button. |
|
|
58
62
|
|
|
63
|
+
> [!NOTE]
|
|
64
|
+
> The `dma-button` attribute acts as both the component selector and the input for the color variant.
|
|
65
|
+
|
|
59
66
|
### Content Projection
|
|
60
67
|
|
|
61
|
-
The component
|
|
68
|
+
The component wraps content in a `.button-content` container with a predefined layout and alignment:
|
|
62
69
|
|
|
63
|
-
-
|
|
70
|
+
- **`[dmaLeadingIcon]`**: Use this element directive to project an icon at the start.
|
|
64
71
|
- **Default Slot**: Any other content provided inside the button tag will be rendered as the button label.
|
|
65
72
|
|
|
66
73
|
---
|
|
@@ -68,22 +75,19 @@ The component uses `<ng-content>` to allow for flexible labeling and icon placem
|
|
|
68
75
|
## 🌈 Color Variants
|
|
69
76
|
|
|
70
77
|
1. **Base (`base`)**
|
|
71
|
-
|
|
72
78
|
- **Usage**: `<button dma-button>` or `<button dma-button="base">`
|
|
73
|
-
- **
|
|
74
|
-
- **
|
|
79
|
+
- **Appearance**: Standard neutral styling for secondary actions.
|
|
80
|
+
- **States**: Includes visual feedback for hover and active interactions.
|
|
75
81
|
|
|
76
82
|
2. **Primary (`primary`)**
|
|
77
|
-
|
|
78
83
|
- **Usage**: `<button dma-button="primary">`
|
|
79
|
-
- **
|
|
80
|
-
- **
|
|
84
|
+
- **Appearance**: High-contrast brand coloring to highlight the main action.
|
|
85
|
+
- **States**: Shifts in tone to indicate interaction.
|
|
81
86
|
|
|
82
87
|
3. **Danger (`danger`)**
|
|
83
|
-
|
|
84
88
|
- **Usage**: `<button dma-button="danger">`
|
|
85
|
-
- **
|
|
86
|
-
- **
|
|
89
|
+
- **Appearance**: Semantic warning styling to highlight destructive intent.
|
|
90
|
+
- **States**: Subtle highlights to indicate destructive potential without overwhelming the UI.
|
|
87
91
|
|
|
88
92
|
---
|
|
89
93
|
|
|
@@ -91,37 +95,31 @@ The component uses `<ng-content>` to allow for flexible labeling and icon placem
|
|
|
91
95
|
|
|
92
96
|
### Leading Icon (Profile)
|
|
93
97
|
|
|
94
|
-
Project a specialized icon
|
|
98
|
+
Project a specialized icon directive into the `[dmaLeadingIcon]` slot. The component automatically handles the spacing between the icon and the text.
|
|
95
99
|
|
|
96
100
|
```html
|
|
97
101
|
<button type="button" dma-button>
|
|
98
|
-
<dma-icon dma-user-circle-icon
|
|
102
|
+
<dma-icon dma-user-circle-icon dmaLeadingIcon />
|
|
99
103
|
Username
|
|
100
104
|
</button>
|
|
101
105
|
```
|
|
102
106
|
|
|
103
|
-
###
|
|
107
|
+
### Layout Behavior
|
|
104
108
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
```html
|
|
108
|
-
<button dma-button (click)="closeModal()">Dismiss</button>
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### Destructive Action
|
|
112
|
-
|
|
113
|
-
Use the `danger` variant for deletions.
|
|
114
|
-
|
|
115
|
-
```html
|
|
116
|
-
<button dma-button="danger" (click)="deleteEntry()">Delete Entry</button>
|
|
117
|
-
```
|
|
109
|
+
When a `dma-button` is placed inside a component or element with the `dma-dropdown-container` attribute, it will automatically expand to fill the container width.
|
|
118
110
|
|
|
119
111
|
### Standard Button Behavior
|
|
120
112
|
|
|
121
|
-
Since this is an attribute selector, you can use all standard button features
|
|
113
|
+
Since this is an attribute selector, you can use all standard button features:
|
|
122
114
|
|
|
123
115
|
```html
|
|
124
|
-
<button
|
|
116
|
+
<button
|
|
117
|
+
type="submit"
|
|
118
|
+
dma-button="primary"
|
|
119
|
+
[disabled]="isSubmitting()"
|
|
120
|
+
>
|
|
121
|
+
Save Character
|
|
122
|
+
</button>
|
|
125
123
|
```
|
|
126
124
|
|
|
127
125
|
---
|
|
@@ -12,15 +12,7 @@ While it is often used in conjunction with the `DropdownContainerComponent` for
|
|
|
12
12
|
|
|
13
13
|
- **Selector:** `[dmaDropdownAnchor]`
|
|
14
14
|
- **Export As:** `dmaDropdownAnchor`
|
|
15
|
-
- **Format:** Angular Attribute Directive
|
|
16
|
-
|
|
17
|
-
## Installation
|
|
18
|
-
|
|
19
|
-
The component is part of the `@dnd-mapp/shared-ui` library.
|
|
20
|
-
|
|
21
|
-
```typescript
|
|
22
|
-
import { DropdownAnchorDirective, DropdownContainerComponent } from '@dnd-mapp/shared-ui';
|
|
23
|
-
```
|
|
15
|
+
- **Format:** Angular Attribute Directive (Signals-based)
|
|
24
16
|
|
|
25
17
|
## 🚀 Usage
|
|
26
18
|
|
|
@@ -45,17 +37,22 @@ To use the dropdown, define a template for your content and attach the `dmaDropd
|
|
|
45
37
|
|
|
46
38
|
### Hover Mode
|
|
47
39
|
|
|
48
|
-
The `DropdownAnchor` supports a hover-to-open mode. It includes a built-in 100ms debounce timer to prevent the dropdown from flickering or closing immediately when moving the mouse between the anchor and the container.
|
|
40
|
+
The `DropdownAnchor` supports a hover-to-open mode. It includes a built-in **100ms** debounce timer to prevent the dropdown from flickering or closing immediately when moving the mouse between the anchor and the container.
|
|
49
41
|
|
|
50
42
|
```html
|
|
51
|
-
<button
|
|
43
|
+
<button
|
|
44
|
+
[dmaDropdownAnchor]="myDropdown"
|
|
45
|
+
[toggleOnHover]="true"
|
|
46
|
+
#anchor="dmaDropdownAnchor">
|
|
47
|
+
Hover me
|
|
48
|
+
</button>
|
|
52
49
|
|
|
53
50
|
<ng-template #myDropdown>
|
|
54
51
|
<!--
|
|
55
52
|
The DropdownContainer provides the (hover) output
|
|
56
53
|
to help keep the anchor open while interacting with the menu
|
|
57
54
|
-->
|
|
58
|
-
<dma-dropdown-container (hover)="anchor.
|
|
55
|
+
<dma-dropdown-container (hover)="anchor.scheduleClose(!$event)">
|
|
59
56
|
<p>Hovering over this element keeps the menu open!</p>
|
|
60
57
|
</dma-dropdown-container>
|
|
61
58
|
</ng-template>
|
|
@@ -81,10 +78,17 @@ The `DropdownAnchor` supports a hover-to-open mode. It includes a built-in 100ms
|
|
|
81
78
|
|
|
82
79
|
#### Methods
|
|
83
80
|
|
|
84
|
-
| Name
|
|
85
|
-
|
|
86
|
-
| `
|
|
87
|
-
| `
|
|
81
|
+
| Name | Description |
|
|
82
|
+
|---------------------------------------|--------------------------------------------------------------------------------|
|
|
83
|
+
| `open()` | Programmatically opens the dropdown. |
|
|
84
|
+
| `close()` | Programmatically closes the dropdown and disposes of the overlay. |
|
|
85
|
+
| `scheduleClose(shouldClose: boolean)` | Schedules a close action with a 100ms debounce. Useful for hover interactions. |
|
|
86
|
+
|
|
87
|
+
#### Properties (Read-only)
|
|
88
|
+
|
|
89
|
+
| Name | Type | Description |
|
|
90
|
+
|----------------|-------------------|--------------------------------------------------------|
|
|
91
|
+
| `dropdownOpen` | `Signal<boolean>` | A computed signal indicating if the overlay is active. |
|
|
88
92
|
|
|
89
93
|
---
|
|
90
94
|
|