@ngstarter-ui/components 21.0.4 → 21.0.6
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/ai/component-registry.json +42 -3
- package/fesm2022/ngstarter-ui-components-chips.mjs +24 -9
- package/fesm2022/ngstarter-ui-components-chips.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-list.mjs +4 -4
- package/fesm2022/ngstarter-ui-components-list.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-logo.mjs +2 -2
- package/fesm2022/ngstarter-ui-components-logo.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-motion.mjs +27 -0
- package/fesm2022/ngstarter-ui-components-motion.mjs.map +1 -0
- package/fesm2022/ngstarter-ui-components-number-input.mjs +12 -6
- package/fesm2022/ngstarter-ui-components-number-input.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-phone-input.mjs +60 -43
- package/fesm2022/ngstarter-ui-components-phone-input.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-select.mjs +2 -2
- package/fesm2022/ngstarter-ui-components-select.mjs.map +1 -1
- package/package.json +5 -1
- package/types/ngstarter-ui-components-chips.d.ts +10 -5
- package/types/ngstarter-ui-components-logo.d.ts +1 -1
- package/types/ngstarter-ui-components-motion.d.ts +13 -0
- package/types/ngstarter-ui-components-number-input.d.ts +1 -1
- package/types/ngstarter-ui-components-phone-input.d.ts +8 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngstarter-ui-components-list.mjs","sources":["../../../projects/components/list/src/list/list.ts","../../../projects/components/list/src/list/list.html","../../../projects/components/list/src/action-list/action-list.ts","../../../projects/components/list/src/action-list/action-list.html","../../../projects/components/list/src/nav-list/nav-list.ts","../../../projects/components/list/src/nav-list/nav-list.html","../../../projects/components/list/src/list-item-avatar.ts","../../../projects/components/list/src/list-item-icon.ts","../../../projects/components/list/src/list-item-title.ts","../../../projects/components/list/src/list-item-line.ts","../../../projects/components/list/src/list-item-meta.ts","../../../projects/components/list/src/list-item/list-item.ts","../../../projects/components/list/src/list-item/list-item.html","../../../projects/components/list/src/selection-list/selection-list.ts","../../../projects/components/list/src/selection-list/selection-list.html","../../../projects/components/list/src/list-option/list-option.ts","../../../projects/components/list/src/list-option/list-option.html","../../../projects/components/list/src/subheader.ts","../../../projects/components/list/ngstarter-ui-components-list.ts"],"sourcesContent":["import { Component, input, booleanAttribute, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'ngs-list',\n exportAs: 'ngsList',\n templateUrl: './list.html',\n styleUrl: './list.scss',\n host: {\n 'class': 'ngs-list',\n '[attr.aria-disabled]': 'disabled()',\n '[class.ngs-list-disabled]': 'disabled()',\n },\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class List {\n disabled = input(false, {\n transform: booleanAttribute\n });\n\n disableRipple = input(false, {\n transform: booleanAttribute\n });\n}\n","<ng-content />\n","import { Component, HostBinding, Input, booleanAttribute, ChangeDetectionStrategy } from '@angular/core';\nimport { List } from '../list/list';\n\n@Component({\n selector: 'ngs-action-list',\n exportAs: 'ngsActionList',\n templateUrl: './action-list.html',\n styleUrl: './action-list.scss',\n host: {\n 'class': 'ngs-action-list ngs-list',\n '[attr.aria-disabled]': 'disabled',\n },\n providers: [\n { provide: List, useExisting: ActionList }\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ActionList extends List {\n}\n","<ng-content />\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\nimport { List } from '../list/list';\n\n@Component({\n selector: 'ngs-nav-list',\n exportAs: 'ngsNavList',\n templateUrl: './nav-list.html',\n styleUrl: './nav-list.scss',\n host: {\n 'class': 'ngs-nav-list',\n 'role': 'navigation',\n '[attr.aria-disabled]': 'disabled()',\n },\n providers: [\n { provide: List, useExisting: NavList }\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NavList extends List {\n}\n","<ng-content />\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemAvatar]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-avatar',\n },\n})\nexport class ListItemAvatar {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemIcon]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-icon',\n },\n})\nexport class ListItemIcon {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemTitle]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-title',\n },\n})\nexport class ListItemTitle {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemLine], [ngsLine]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-line',\n },\n})\nexport class ListItemLine {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemMeta]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-meta',\n },\n})\nexport class ListItemMeta {\n private readonly _elementRef = inject(ElementRef);\n}\n","import {\n Component,\n input,\n booleanAttribute,\n ChangeDetectionStrategy,\n inject,\n numberAttribute,\n contentChildren\n} from '@angular/core';\nimport { Ripple } from '@ngstarter-ui/components/core';\nimport { List } from '../list/list';\nimport { ListItemAvatar } from '../list-item-avatar';\nimport { ListItemIcon } from '../list-item-icon';\nimport { ListItemTitle } from '../list-item-title';\nimport { ListItemLine } from '../list-item-line';\nimport { ListItemMeta } from '../list-item-meta';\n\n@Component({\n selector: 'ngs-list-item, a[ngs-list-item], button[ngs-list-item]',\n exportAs: 'ngsListItem',\n templateUrl: './list-item.html',\n styleUrl: './list-item.scss',\n hostDirectives: [\n {\n directive: Ripple,\n inputs: ['ngsRippleDisabled: disableRipple']\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class': 'ngs-list-item',\n '[class.ngs-list-item-disabled]': 'disabled()',\n '[attr.aria-disabled]': 'disabled()',\n '[class.ngs-list-item-with-avatar]': '_avatars().length > 0',\n '[class.ngs-list-item-with-icon]': '_icons().length > 0',\n '[class.ngs-list-item-with-meta]': '_meta().length > 0',\n '[attr.data-lines]': 'lines()',\n },\n})\nexport class ListItem {\n private _list = inject(List, { optional: true });\n\n disabled = input(false, {\n transform: booleanAttribute\n });\n lines = input<number | null, any>(null, {\n transform: numberAttribute\n });\n\n readonly _avatars = contentChildren(ListItemAvatar, { descendants: true });\n readonly _icons = contentChildren(ListItemIcon, { descendants: true });\n readonly _titles = contentChildren(ListItemTitle, { descendants: true });\n readonly _lines = contentChildren(ListItemLine, { descendants: true });\n readonly _meta = contentChildren(ListItemMeta, { descendants: true });\n\n get disableRipple() {\n return this.disabled() || this._list?.disableRipple();\n }\n}\n","<ng-content select=\"[ngsListItemAvatar],[ngsListItemIcon]\" />\n\n<span class=\"ngs-list-item-content\">\n <div class=\"ngs-list-item-title\">\n <ng-content select=\"[ngsListItemTitle]\" />\n </div>\n <div class=\"ngs-list-item-line\">\n <ng-content select=\"[ngsListItemLine],[ngsLine]\" />\n </div>\n <span class=\"ngs-list-item-unscoped-content\">\n <ng-content />\n </span>\n</span>\n\n<ng-content select=\"[ngsListItemMeta]\" />\n","import {\n Component,\n input,\n output,\n booleanAttribute,\n ChangeDetectionStrategy,\n forwardRef,\n inject,\n OnInit,\n contentChildren\n} from '@angular/core';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport { List } from '../list/list';\nimport { ListOption } from '../list-option/list-option';\n\n@Component({\n selector: 'ngs-selection-list',\n exportAs: 'ngsSelectionList',\n templateUrl: './selection-list.html',\n styleUrls: ['../list/list.scss', './selection-list.scss'],\n host: {\n 'class': 'ngs-selection-list ngs-list',\n '[attr.aria-disabled]': 'disabled()',\n 'role': 'listbox',\n '[attr.aria-multiselectable]': 'multiple()',\n },\n providers: [\n { provide: List, useExisting: SelectionList }\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SelectionList extends List implements OnInit {\n multiple = input(false, {\n transform: booleanAttribute\n });\n\n readonly selectionChange = output<any>();\n\n readonly options = contentChildren(forwardRef(() => ListOption), { descendants: true });\n\n selectedOptions!: SelectionModel<ListOption>;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n this.selectedOptions = new SelectionModel<ListOption>(this.multiple());\n this.selectedOptions.changed.subscribe(event => {\n if (this.multiple()) {\n event.added.forEach(option => option.selected.set(true));\n event.removed.forEach(option => option.selected.set(false));\n } else {\n this.options().forEach(option => {\n option.selected.set(this.selectedOptions.isSelected(option));\n });\n }\n });\n }\n}\n","<ng-content />\n","import {\n Component,\n input,\n booleanAttribute,\n ChangeDetectionStrategy,\n inject,\n HostListener,\n output,\n ChangeDetectorRef,\n model,\n contentChildren\n} from '@angular/core';\nimport { ListItem } from '../list-item/list-item';\nimport { SelectionList } from '../selection-list/selection-list';\nimport { ListItemAvatar } from '../list-item-avatar';\nimport { ListItemIcon } from '../list-item-icon';\nimport { ListItemTitle } from '../list-item-title';\nimport { ListItemLine } from '../list-item-line';\nimport { ListItemMeta } from '../list-item-meta';\nimport { Checkbox } from '@ngstarter-ui/components/checkbox';\nimport { RadioButton } from '@ngstarter-ui/components/radio';\n\n@Component({\n selector: 'ngs-list-option',\n exportAs: 'ngsListOption',\n imports: [\n Checkbox,\n RadioButton\n ],\n templateUrl: './list-option.html',\n styleUrls: [\n '../list-item/list-item.scss',\n './list-option.scss'\n ],\n host: {\n 'class': 'ngs-list-option ngs-list-item',\n '[class.ngs-list-item-disabled]': 'disabled()',\n '[class.ngs-list-option-selected]': 'selected()',\n '[attr.aria-selected]': 'selected()',\n '[attr.aria-disabled]': 'disabled()',\n 'role': 'option',\n '[class.ngs-list-item-with-avatar]': '_avatars().length > 0',\n '[class.ngs-list-item-with-icon]': '_icons().length > 0',\n '[class.ngs-list-item-with-meta]': '_meta().length > 0',\n '(click)': '_toggle()',\n },\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ListOption extends ListItem {\n protected _selectionList = inject(SelectionList);\n private _changeDetectorRef = inject(ChangeDetectorRef);\n\n override readonly _avatars = contentChildren(ListItemAvatar, { descendants: true });\n\n override readonly _icons = contentChildren(ListItemIcon, { descendants: true });\n\n override readonly _meta = contentChildren(ListItemMeta, { descendants: true });\n\n selected = model(false);\n\n value = input<any>();\n\n readonly selectedChange = output<boolean>();\n\n _toggle() {\n if (this.disabled()) {\n return;\n }\n\n if (this._selectionList.multiple()) {\n this.selected.set(!this.selected());\n this._selectionList.selectedOptions.toggle(this);\n } else {\n this.selected.set(true);\n this._selectionList.selectedOptions.select(this);\n }\n this.selectedChange.emit(this.selected());\n this._selectionList.selectionChange.emit({\n option: this,\n selected: this.selected()\n });\n }\n}\n","<ng-content select=\"[ngsListItemAvatar],[ngsListItemIcon]\" />\n\n<span class=\"ngs-list-item-content\">\n <div class=\"ngs-list-item-title\">\n <ng-content select=\"[ngsListItemTitle]\" />\n </div>\n <div class=\"ngs-list-item-line\">\n <ng-content select=\"[ngsListItemLine],[ngsLine]\" />\n </div>\n <span class=\"ngs-list-item-unscoped-content\">\n <ng-content />\n </span>\n</span>\n\n<ng-content select=\"[ngsListItemMeta]\" />\n\n@if (_selectionList.multiple()) {\n <ngs-checkbox [checked]=\"selected()\" [disabled]=\"disabled()\" />\n} @else {\n <ngs-radio-button [checked]=\"selected()\" [disabled]=\"disabled()\" />\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsSubheader]',\n standalone: true,\n host: {\n 'class': 'ngs-subheader',\n },\n})\nexport class Subheader {\n private readonly _elementRef = inject(ElementRef);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngstarter-ui-components-list.mjs","sources":["../../../projects/components/list/src/list/list.ts","../../../projects/components/list/src/list/list.html","../../../projects/components/list/src/action-list/action-list.ts","../../../projects/components/list/src/action-list/action-list.html","../../../projects/components/list/src/nav-list/nav-list.ts","../../../projects/components/list/src/nav-list/nav-list.html","../../../projects/components/list/src/list-item-avatar.ts","../../../projects/components/list/src/list-item-icon.ts","../../../projects/components/list/src/list-item-title.ts","../../../projects/components/list/src/list-item-line.ts","../../../projects/components/list/src/list-item-meta.ts","../../../projects/components/list/src/list-item/list-item.ts","../../../projects/components/list/src/list-item/list-item.html","../../../projects/components/list/src/selection-list/selection-list.ts","../../../projects/components/list/src/selection-list/selection-list.html","../../../projects/components/list/src/list-option/list-option.ts","../../../projects/components/list/src/list-option/list-option.html","../../../projects/components/list/src/subheader.ts","../../../projects/components/list/ngstarter-ui-components-list.ts"],"sourcesContent":["import { Component, input, booleanAttribute, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'ngs-list',\n exportAs: 'ngsList',\n templateUrl: './list.html',\n styleUrl: './list.scss',\n host: {\n 'class': 'ngs-list',\n '[attr.aria-disabled]': 'disabled()',\n '[class.ngs-list-disabled]': 'disabled()',\n },\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class List {\n disabled = input(false, {\n transform: booleanAttribute\n });\n\n disableRipple = input(false, {\n transform: booleanAttribute\n });\n}\n","<ng-content />\n","import { Component, HostBinding, Input, booleanAttribute, ChangeDetectionStrategy } from '@angular/core';\nimport { List } from '../list/list';\n\n@Component({\n selector: 'ngs-action-list',\n exportAs: 'ngsActionList',\n templateUrl: './action-list.html',\n styleUrl: './action-list.scss',\n host: {\n 'class': 'ngs-action-list ngs-list',\n '[attr.aria-disabled]': 'disabled',\n },\n providers: [\n { provide: List, useExisting: ActionList }\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ActionList extends List {\n}\n","<ng-content />\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\nimport { List } from '../list/list';\n\n@Component({\n selector: 'ngs-nav-list',\n exportAs: 'ngsNavList',\n templateUrl: './nav-list.html',\n styleUrl: './nav-list.scss',\n host: {\n 'class': 'ngs-nav-list',\n 'role': 'navigation',\n '[attr.aria-disabled]': 'disabled()',\n },\n providers: [\n { provide: List, useExisting: NavList }\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NavList extends List {\n}\n","<ng-content />\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemAvatar]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-avatar',\n },\n})\nexport class ListItemAvatar {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemIcon]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-icon',\n },\n})\nexport class ListItemIcon {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemTitle]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-title',\n },\n})\nexport class ListItemTitle {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemLine], [ngsLine]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-line',\n },\n})\nexport class ListItemLine {\n private readonly _elementRef = inject(ElementRef);\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsListItemMeta]',\n standalone: true,\n host: {\n 'class': 'ngs-list-item-meta',\n },\n})\nexport class ListItemMeta {\n private readonly _elementRef = inject(ElementRef);\n}\n","import {\n Component,\n input,\n booleanAttribute,\n ChangeDetectionStrategy,\n inject,\n numberAttribute,\n contentChildren\n} from '@angular/core';\nimport { Ripple } from '@ngstarter-ui/components/core';\nimport { List } from '../list/list';\nimport { ListItemAvatar } from '../list-item-avatar';\nimport { ListItemIcon } from '../list-item-icon';\nimport { ListItemTitle } from '../list-item-title';\nimport { ListItemLine } from '../list-item-line';\nimport { ListItemMeta } from '../list-item-meta';\n\n@Component({\n selector: 'ngs-list-item, a[ngs-list-item], button[ngs-list-item]',\n exportAs: 'ngsListItem',\n templateUrl: './list-item.html',\n styleUrl: './list-item.scss',\n hostDirectives: [\n {\n directive: Ripple,\n inputs: ['ngsRippleDisabled: disableRipple']\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class': 'ngs-list-item',\n '[class.ngs-list-item-disabled]': 'disabled()',\n '[attr.aria-disabled]': 'disabled()',\n '[class.ngs-list-item-with-avatar]': '_avatars().length > 0',\n '[class.ngs-list-item-with-icon]': '_icons().length > 0',\n '[class.ngs-list-item-with-meta]': '_meta().length > 0',\n '[attr.data-lines]': 'lines()',\n },\n})\nexport class ListItem {\n private _list = inject(List, { optional: true });\n\n disabled = input(false, {\n transform: booleanAttribute\n });\n lines = input<number | null, any>(null, {\n transform: numberAttribute\n });\n\n readonly _avatars = contentChildren(ListItemAvatar, { descendants: true });\n readonly _icons = contentChildren(ListItemIcon, { descendants: true });\n readonly _titles = contentChildren(ListItemTitle, { descendants: true });\n readonly _lines = contentChildren(ListItemLine, { descendants: true });\n readonly _meta = contentChildren(ListItemMeta, { descendants: true });\n\n get disableRipple() {\n return this.disabled() || this._list?.disableRipple();\n }\n}\n","<ng-content select=\"[ngsListItemAvatar],[ngsListItemIcon]\" />\n\n<span class=\"ngs-list-item-content\">\n <div class=\"ngs-list-item-title\">\n <ng-content select=\"[ngsListItemTitle]\" />\n </div>\n <div class=\"ngs-list-item-line\">\n <ng-content select=\"[ngsListItemLine],[ngsLine]\" />\n </div>\n <span class=\"ngs-list-item-unscoped-content\">\n <ng-content />\n </span>\n</span>\n\n<ng-content select=\"[ngsListItemMeta]\" />\n","import {\n Component,\n input,\n output,\n booleanAttribute,\n ChangeDetectionStrategy,\n forwardRef,\n inject,\n OnInit,\n contentChildren\n} from '@angular/core';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport { List } from '../list/list';\nimport { ListOption } from '../list-option/list-option';\n\n@Component({\n selector: 'ngs-selection-list',\n exportAs: 'ngsSelectionList',\n templateUrl: './selection-list.html',\n styleUrls: ['../list/list.scss', './selection-list.scss'],\n host: {\n 'class': 'ngs-selection-list ngs-list',\n '[attr.aria-disabled]': 'disabled()',\n 'role': 'listbox',\n '[attr.aria-multiselectable]': 'multiple()',\n },\n providers: [\n { provide: List, useExisting: SelectionList }\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SelectionList extends List implements OnInit {\n multiple = input(false, {\n transform: booleanAttribute\n });\n\n readonly selectionChange = output<any>();\n\n readonly options = contentChildren(forwardRef(() => ListOption), { descendants: true });\n\n selectedOptions!: SelectionModel<ListOption>;\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n this.selectedOptions = new SelectionModel<ListOption>(this.multiple());\n this.selectedOptions.changed.subscribe(event => {\n if (this.multiple()) {\n event.added.forEach(option => option.selected.set(true));\n event.removed.forEach(option => option.selected.set(false));\n } else {\n this.options().forEach(option => {\n option.selected.set(this.selectedOptions.isSelected(option));\n });\n }\n });\n }\n}\n","<ng-content />\n","import {\n Component,\n input,\n booleanAttribute,\n ChangeDetectionStrategy,\n inject,\n HostListener,\n output,\n ChangeDetectorRef,\n model,\n contentChildren\n} from '@angular/core';\nimport { ListItem } from '../list-item/list-item';\nimport { SelectionList } from '../selection-list/selection-list';\nimport { ListItemAvatar } from '../list-item-avatar';\nimport { ListItemIcon } from '../list-item-icon';\nimport { ListItemTitle } from '../list-item-title';\nimport { ListItemLine } from '../list-item-line';\nimport { ListItemMeta } from '../list-item-meta';\nimport { Checkbox } from '@ngstarter-ui/components/checkbox';\nimport { RadioButton } from '@ngstarter-ui/components/radio';\n\n@Component({\n selector: 'ngs-list-option',\n exportAs: 'ngsListOption',\n imports: [\n Checkbox,\n RadioButton\n ],\n templateUrl: './list-option.html',\n styleUrls: [\n '../list-item/list-item.scss',\n './list-option.scss'\n ],\n host: {\n 'class': 'ngs-list-option ngs-list-item',\n '[class.ngs-list-item-disabled]': 'disabled()',\n '[class.ngs-list-option-selected]': 'selected()',\n '[attr.aria-selected]': 'selected()',\n '[attr.aria-disabled]': 'disabled()',\n 'role': 'option',\n '[class.ngs-list-item-with-avatar]': '_avatars().length > 0',\n '[class.ngs-list-item-with-icon]': '_icons().length > 0',\n '[class.ngs-list-item-with-meta]': '_meta().length > 0',\n '(click)': '_toggle()',\n },\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ListOption extends ListItem {\n protected _selectionList = inject(SelectionList);\n private _changeDetectorRef = inject(ChangeDetectorRef);\n\n override readonly _avatars = contentChildren(ListItemAvatar, { descendants: true });\n\n override readonly _icons = contentChildren(ListItemIcon, { descendants: true });\n\n override readonly _meta = contentChildren(ListItemMeta, { descendants: true });\n\n selected = model(false);\n\n value = input<any>();\n\n readonly selectedChange = output<boolean>();\n\n _toggle() {\n if (this.disabled()) {\n return;\n }\n\n if (this._selectionList.multiple()) {\n this.selected.set(!this.selected());\n this._selectionList.selectedOptions.toggle(this);\n } else {\n this.selected.set(true);\n this._selectionList.selectedOptions.select(this);\n }\n this.selectedChange.emit(this.selected());\n this._selectionList.selectionChange.emit({\n option: this,\n selected: this.selected()\n });\n }\n}\n","<ng-content select=\"[ngsListItemAvatar],[ngsListItemIcon]\" />\n\n<span class=\"ngs-list-item-content\">\n <div class=\"ngs-list-item-title\">\n <ng-content select=\"[ngsListItemTitle]\" />\n </div>\n <div class=\"ngs-list-item-line\">\n <ng-content select=\"[ngsListItemLine],[ngsLine]\" />\n </div>\n <span class=\"ngs-list-item-unscoped-content\">\n <ng-content />\n </span>\n</span>\n\n<ng-content select=\"[ngsListItemMeta]\" />\n\n@if (_selectionList.multiple()) {\n <ngs-checkbox [checked]=\"selected()\" [disabled]=\"disabled()\" />\n} @else {\n <ngs-radio-button [checked]=\"selected()\" [disabled]=\"disabled()\" />\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n selector: '[ngsSubheader]',\n standalone: true,\n host: {\n 'class': 'ngs-subheader',\n },\n})\nexport class Subheader {\n private readonly _elementRef = inject(ElementRef);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -3,13 +3,13 @@ import { Component, input } from '@angular/core';
|
|
|
3
3
|
|
|
4
4
|
class Logo {
|
|
5
5
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: Logo, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: Logo, isStandalone: true, selector: "ngs-logo,[ngs-logo]", host: { classAttribute: "ngs-logo" }, exportAs: ["ngsLogo"], ngImport: i0, template: "<ng-content select=\"ngs-logo-shape\"/>\n<div class=\"content\">\n <ng-content select=\"ngs-logo-text\"/>\n <ng-content select=\"ngs-logo-description\"/>\n
|
|
6
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: Logo, isStandalone: true, selector: "ngs-logo,[ngs-logo]", host: { classAttribute: "ngs-logo" }, exportAs: ["ngsLogo"], ngImport: i0, template: "<ng-content select=\"ngs-logo-shape\"/>\n<div class=\"content\">\n <ng-content/>\n <ng-content select=\"ngs-logo-text\"/>\n <ng-content select=\"ngs-logo-description\"/>\n</div>\n", styles: [":host{--ngs-logo-text-font-size: var(--ngs-font-size-xl);--ngs-logo-text-font-weight: 800;--ngs-logo-text-color: var(--ngs-color-primary);--ngs-logo-text-hover-color: var(--ngs-color-tertiary);display:inline-flex;align-items:center;gap:calc(var(--spacing, .25rem) * 3)}:host:hover{filter:brightness(110%)}:host .content{display:flex;flex-direction:column;gap:calc(var(--spacing, .25rem) * 1)}:host .content:empty{display:none}\n/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */\n"] });
|
|
7
7
|
}
|
|
8
8
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: Logo, decorators: [{
|
|
9
9
|
type: Component,
|
|
10
10
|
args: [{ selector: 'ngs-logo,[ngs-logo]', exportAs: 'ngsLogo', imports: [], host: {
|
|
11
11
|
'class': 'ngs-logo',
|
|
12
|
-
}, template: "<ng-content select=\"ngs-logo-shape\"/>\n<div class=\"content\">\n <ng-content select=\"ngs-logo-text\"/>\n <ng-content select=\"ngs-logo-description\"/>\n
|
|
12
|
+
}, template: "<ng-content select=\"ngs-logo-shape\"/>\n<div class=\"content\">\n <ng-content/>\n <ng-content select=\"ngs-logo-text\"/>\n <ng-content select=\"ngs-logo-description\"/>\n</div>\n", styles: [":host{--ngs-logo-text-font-size: var(--ngs-font-size-xl);--ngs-logo-text-font-weight: 800;--ngs-logo-text-color: var(--ngs-color-primary);--ngs-logo-text-hover-color: var(--ngs-color-tertiary);display:inline-flex;align-items:center;gap:calc(var(--spacing, .25rem) * 3)}:host:hover{filter:brightness(110%)}:host .content{display:flex;flex-direction:column;gap:calc(var(--spacing, .25rem) * 1)}:host .content:empty{display:none}\n/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */\n"] }]
|
|
13
13
|
}] });
|
|
14
14
|
|
|
15
15
|
class LogoShape {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngstarter-ui-components-logo.mjs","sources":["../../../projects/components/logo/src/logo/logo.ts","../../../projects/components/logo/src/logo/logo.html","../../../projects/components/logo/src/logo-shape/logo-shape.ts","../../../projects/components/logo/src/logo-shape/logo-shape.html","../../../projects/components/logo/src/logo-text/logo-text.ts","../../../projects/components/logo/src/logo-text/logo-text.html","../../../projects/components/logo/src/logo-description/logo-description.ts","../../../projects/components/logo/src/logo-description/logo-description.html","../../../projects/components/logo/ngstarter-ui-components-logo.ts"],"sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngs-logo,[ngs-logo]',\n exportAs: 'ngsLogo',\n imports: [],\n templateUrl: './logo.html',\n styleUrl: './logo.scss',\n host: {\n 'class': 'ngs-logo',\n }\n})\nexport class Logo {\n\n}\n","<ng-content select=\"ngs-logo-shape\"/>\n<div class=\"content\">\n <ng-content select=\"ngs-logo-text\"/>\n <ng-content select=\"ngs-logo-description\"/>\n
|
|
1
|
+
{"version":3,"file":"ngstarter-ui-components-logo.mjs","sources":["../../../projects/components/logo/src/logo/logo.ts","../../../projects/components/logo/src/logo/logo.html","../../../projects/components/logo/src/logo-shape/logo-shape.ts","../../../projects/components/logo/src/logo-shape/logo-shape.html","../../../projects/components/logo/src/logo-text/logo-text.ts","../../../projects/components/logo/src/logo-text/logo-text.html","../../../projects/components/logo/src/logo-description/logo-description.ts","../../../projects/components/logo/src/logo-description/logo-description.html","../../../projects/components/logo/ngstarter-ui-components-logo.ts"],"sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngs-logo,[ngs-logo]',\n exportAs: 'ngsLogo',\n imports: [],\n templateUrl: './logo.html',\n styleUrl: './logo.scss',\n host: {\n 'class': 'ngs-logo',\n }\n})\nexport class Logo {\n\n}\n","<ng-content select=\"ngs-logo-shape\"/>\n<div class=\"content\">\n <ng-content/>\n <ng-content select=\"ngs-logo-text\"/>\n <ng-content select=\"ngs-logo-description\"/>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngs-logo-shape',\n imports: [],\n templateUrl: './logo-shape.html',\n styleUrl: './logo-shape.scss',\n})\nexport class LogoShape {\n\n}\n","<ng-content select=\"img\"/>\n","import { Component, input } from '@angular/core';\nimport { LogoTextSize } from '../types';\n\n@Component({\n selector: 'ngs-logo-text',\n exportAs: 'ngsLogoText',\n templateUrl: './logo-text.html',\n styleUrl: './logo-text.scss',\n host: {\n 'class': 'ngs-logo-text',\n '[attr.data-size]': 'size()',\n }\n})\nexport class LogoText {\n readonly size = input<LogoTextSize>('default');\n}\n","<ng-content/>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngs-logo-description',\n imports: [],\n templateUrl: './logo-description.html',\n styleUrl: './logo-description.scss',\n})\nexport class LogoDescription {\n\n}\n","<ng-content/>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAYa,IAAI,CAAA;uGAAJ,IAAI,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAJ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAI,4ICZjB,wLAMA,EAAA,MAAA,EAAA,CAAA,ifAAA,CAAA,EAAA,CAAA;;2FDMa,IAAI,EAAA,UAAA,EAAA,CAAA;kBAVhB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,EAAA,QAAA,EACrB,SAAS,EAAA,OAAA,EACV,EAAE,EAAA,IAAA,EAGL;AACJ,wBAAA,OAAO,EAAE,UAAU;AACpB,qBAAA,EAAA,QAAA,EAAA,wLAAA,EAAA,MAAA,EAAA,CAAA,ifAAA,CAAA,EAAA;;;MEFU,SAAS,CAAA;uGAAT,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAT,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,SAAS,0ECRtB,gCACA,EAAA,MAAA,EAAA,CAAA,mZAAA,CAAA,EAAA,CAAA;;2FDOa,SAAS,EAAA,UAAA,EAAA,CAAA;kBANrB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,WACjB,EAAE,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,mZAAA,CAAA,EAAA;;;MESA,QAAQ,CAAA;AACV,IAAA,IAAI,GAAG,KAAK,CAAe,SAAS,2EAAC;uGADnC,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAR,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,4TCbrB,iBACA,EAAA,MAAA,EAAA,CAAA,ibAAA,CAAA,EAAA,CAAA;;2FDYa,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAVpB,SAAS;+BACE,eAAe,EAAA,QAAA,EACf,aAAa,EAAA,IAAA,EAGjB;AACJ,wBAAA,OAAO,EAAE,eAAe;AACxB,wBAAA,kBAAkB,EAAE,QAAQ;AAC7B,qBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,ibAAA,CAAA,EAAA;;;MEHU,eAAe,CAAA;uGAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,gFCR5B,iBACA,EAAA,MAAA,EAAA,CAAA,2IAAA,CAAA,EAAA,CAAA;;2FDOa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,sBAAsB,WACvB,EAAE,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,2IAAA,CAAA,EAAA;;;AEJb;;AAEG;;;;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
class MotionPlayer {
|
|
5
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MotionPlayer, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MotionPlayer, isStandalone: true, selector: "ngs-motion-player", ngImport: i0, template: "<p>motion-player works!</p>\n", styles: [""] });
|
|
7
|
+
}
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MotionPlayer, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ selector: 'ngs-motion-player', imports: [], template: "<p>motion-player works!</p>\n" }]
|
|
11
|
+
}] });
|
|
12
|
+
|
|
13
|
+
class MotionStudio {
|
|
14
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MotionStudio, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MotionStudio, isStandalone: true, selector: "ngs-motion-studio", ngImport: i0, template: "<p>motion-studio works!</p>\n", styles: [""] });
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MotionStudio, decorators: [{
|
|
18
|
+
type: Component,
|
|
19
|
+
args: [{ selector: 'ngs-motion-studio', imports: [], template: "<p>motion-studio works!</p>\n" }]
|
|
20
|
+
}] });
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Generated bundle index. Do not edit.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
export { MotionPlayer, MotionStudio };
|
|
27
|
+
//# sourceMappingURL=ngstarter-ui-components-motion.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngstarter-ui-components-motion.mjs","sources":["../../../projects/components/motion/src/motion-player/motion-player.ts","../../../projects/components/motion/src/motion-player/motion-player.html","../../../projects/components/motion/src/motion-studio/motion-studio.ts","../../../projects/components/motion/src/motion-studio/motion-studio.html","../../../projects/components/motion/ngstarter-ui-components-motion.ts"],"sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngs-motion-player',\n imports: [],\n templateUrl: './motion-player.html',\n styleUrl: './motion-player.scss',\n})\nexport class MotionPlayer {\n\n}\n","<p>motion-player works!</p>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngs-motion-studio',\n imports: [],\n templateUrl: './motion-studio.html',\n styleUrl: './motion-studio.scss',\n})\nexport class MotionStudio {\n\n}\n","<p>motion-studio works!</p>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAQa,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,6ECRzB,+BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FDOa,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,WACpB,EAAE,EAAA,QAAA,EAAA,+BAAA,EAAA;;;MEIA,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,6ECRzB,+BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FDOa,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,WACpB,EAAE,EAAA,QAAA,EAAA,+BAAA,EAAA;;;AEJb;;AAEG;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, TemplateRef, Directive, ElementRef, viewChild, contentChild, input, numberAttribute, booleanAttribute, signal, output, computed, effect, forwardRef, Optional, Self, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { inject, TemplateRef, Directive, ElementRef, viewChild, contentChild, input, numberAttribute, booleanAttribute, signal, output, computed, effect, forwardRef, HostListener, Optional, Self, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/forms';
|
|
4
4
|
import { NgForm, FormGroupDirective } from '@angular/forms';
|
|
5
5
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
@@ -117,7 +117,7 @@ class NumberInput {
|
|
|
117
117
|
const controlElement = this._elementRef.nativeElement;
|
|
118
118
|
controlElement.setAttribute('aria-describedby', ids.join(' '));
|
|
119
119
|
}
|
|
120
|
-
onFocusIn(
|
|
120
|
+
onFocusIn() {
|
|
121
121
|
if (!this._focused()) {
|
|
122
122
|
this._focused.set(true);
|
|
123
123
|
this.stateChanges.next();
|
|
@@ -231,12 +231,12 @@ class NumberInput {
|
|
|
231
231
|
}
|
|
232
232
|
}
|
|
233
233
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: NumberInput, deps: [{ token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
234
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: NumberInput, isStandalone: true, selector: "ngs-number-input", inputs: { min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, requiredInput: { classPropertyName: "requiredInput", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, _placeholder: { classPropertyName: "_placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { attributes: { "id": "id" }, properties: { "class.floating": "shouldLabelFloat" }, classAttribute: "ngs-number-input" }, providers: [
|
|
234
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: NumberInput, isStandalone: true, selector: "ngs-number-input", inputs: { min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, requiredInput: { classPropertyName: "requiredInput", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, _placeholder: { classPropertyName: "_placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { attributes: { "id": "id" }, listeners: { "focusin": "onFocusIn()", "focusout": "onFocusOut($event)" }, properties: { "class.floating": "shouldLabelFloat" }, classAttribute: "ngs-number-input" }, providers: [
|
|
235
235
|
{
|
|
236
236
|
provide: FormFieldControl,
|
|
237
237
|
useExisting: forwardRef(() => NumberInput),
|
|
238
238
|
}
|
|
239
|
-
], queries: [{ propertyName: "_decreaseControlRef", first: true, predicate: DecreaseControlDirective, descendants: true, isSignal: true }, { propertyName: "_increaseControlRef", first: true, predicate: IncreaseControlDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "_input", first: true, predicate: ["input"], descendants: true, isSignal: true }], exportAs: ["ngsNumberInput"], ngImport: i0, template: "<input #input type=\"number\" class=\"input\"\n
|
|
239
|
+
], queries: [{ propertyName: "_decreaseControlRef", first: true, predicate: DecreaseControlDirective, descendants: true, isSignal: true }, { propertyName: "_increaseControlRef", first: true, predicate: IncreaseControlDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "_input", first: true, predicate: ["input"], descendants: true, isSignal: true }], exportAs: ["ngsNumberInput"], ngImport: i0, template: "<input #input type=\"number\" class=\"number-input\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [step]=\"step()\"\n (input)=\"inputChange($event)\">\n<div class=\"controls\">\n <button class=\"control control-decrease\" ngsRipple [disabled]=\"isDecreaseDisabled()\" (click)=\"decrease($event, input)\">\n @if (_decreaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_decreaseControlTemplateRef\"/>\n } @else {\n <svg class=\"control-icon\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" focusable=\"false\">\n <path d=\"M3.5 8h9\"/>\n </svg>\n }\n </button>\n <button class=\"control control-increase\" ngsRipple [disabled]=\"isIncreaseDisabled()\" (click)=\"increase($event, input)\">\n @if (_increaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_increaseControlTemplateRef\"/>\n } @else {\n <svg class=\"control-icon\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" focusable=\"false\">\n <path d=\"M8 3.5v9M3.5 8h9\"/>\n </svg>\n }\n </button>\n</div>\n", styles: [":host{--ngs-number-input-gap: calc(var(--spacing, .25rem) * 2);--ngs-number-input-control-bg: none;--ngs-number-input-control-color: var(--ngs-color-neutral-500);--ngs-number-input-control-hover-color: var(--ngs-color-neutral-600);--ngs-number-input-control-active-color: var(--ngs-color-neutral-700);--ngs-number-input-control-hover-bg: var(--ngs-color-surface-container);--ngs-number-input-control-active-bg: var(--ngs-color-surface-container-high);--ngs-number-input-control-font-size: 1.5rem;--ngs-number-input-control-border-radius: var(--ngs-radius-md);--ngs-number-input-suffix-gap: calc(var(--spacing, .25rem) * 3);--ngs-number-input-control-size: calc(var(--spacing, .25rem) * 7);--ngs-number-input-control-border: none;--ngs-number-input-controls-wdith: calc(var(--spacing, .25rem) * 16);display:flex!important;gap:var(--ngs-number-input-gap);padding-right:var(--ngs-number-input-controls-wdith)}:host .number-input{width:auto;max-width:none;flex-grow:1;min-width:0;background:none;outline:none;color:currentColor;font:inherit;border:none}:host .number-input::-webkit-outer-spin-button,:host .number-input::-webkit-inner-spin-button{appearance:none;margin:0}:host .controls{gap:.375rem;-webkit-user-select:none;user-select:none;position:absolute;top:0;bottom:0;right:0;display:flex;align-items:center;justify-content:center}:host .control{cursor:pointer;flex:none;display:flex;align-items:center;justify-content:center;width:var(--ngs-number-input-control-size);height:var(--ngs-number-input-control-size);background:var(--ngs-number-input-control-bg);color:var(--ngs-number-input-control-color);font-size:var(--ngs-number-input-control-font-size);line-height:var(--ngs-number-input-control-font-size);border-radius:var(--ngs-number-input-control-border-radius);position:relative;border:var(--ngs-number-input-control-border);top:1px}:host .control .control-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}:host .control ::ng-deep ngs-icon{--ngs-icon-size: calc(var(--spacing, .25rem) * 5)}:host .control:hover{background:var(--ngs-number-input-control-hover-bg);color:var(--ngs-number-input-control-hover-color)}:host .control[disabled]{pointer-events:none;opacity:.65}:host-context(html.dark){--ngs-number-input-control-color: var(--ngs-color-neutral-300);--ngs-number-input-control-hover-color: var(--ngs-color-neutral-200);--ngs-number-input-control-hover-bg: var(--ngs-color-neutral-500)}\n/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: Ripple, selector: "[ngsRipple]", inputs: ["ngsRippleColor", "ngsRippleUnbounded", "ngsRippleCentered", "ngsRippleRadius", "ngsRippleAnimation", "ngsRippleDisabled", "ngsRippleTrigger"], outputs: ["ngsRippleCenteredChange", "ngsRippleDisabledChange", "ngsRippleTriggerChange"], exportAs: ["ngsRipple"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
240
240
|
}
|
|
241
241
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: NumberInput, decorators: [{
|
|
242
242
|
type: Component,
|
|
@@ -252,12 +252,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
|
|
|
252
252
|
'class': 'ngs-number-input',
|
|
253
253
|
'[class.floating]': 'shouldLabelFloat',
|
|
254
254
|
'id': 'id'
|
|
255
|
-
}, template: "<input #input type=\"number\" class=\"input\"\n
|
|
255
|
+
}, template: "<input #input type=\"number\" class=\"number-input\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [step]=\"step()\"\n (input)=\"inputChange($event)\">\n<div class=\"controls\">\n <button class=\"control control-decrease\" ngsRipple [disabled]=\"isDecreaseDisabled()\" (click)=\"decrease($event, input)\">\n @if (_decreaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_decreaseControlTemplateRef\"/>\n } @else {\n <svg class=\"control-icon\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" focusable=\"false\">\n <path d=\"M3.5 8h9\"/>\n </svg>\n }\n </button>\n <button class=\"control control-increase\" ngsRipple [disabled]=\"isIncreaseDisabled()\" (click)=\"increase($event, input)\">\n @if (_increaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_increaseControlTemplateRef\"/>\n } @else {\n <svg class=\"control-icon\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" focusable=\"false\">\n <path d=\"M8 3.5v9M3.5 8h9\"/>\n </svg>\n }\n </button>\n</div>\n", styles: [":host{--ngs-number-input-gap: calc(var(--spacing, .25rem) * 2);--ngs-number-input-control-bg: none;--ngs-number-input-control-color: var(--ngs-color-neutral-500);--ngs-number-input-control-hover-color: var(--ngs-color-neutral-600);--ngs-number-input-control-active-color: var(--ngs-color-neutral-700);--ngs-number-input-control-hover-bg: var(--ngs-color-surface-container);--ngs-number-input-control-active-bg: var(--ngs-color-surface-container-high);--ngs-number-input-control-font-size: 1.5rem;--ngs-number-input-control-border-radius: var(--ngs-radius-md);--ngs-number-input-suffix-gap: calc(var(--spacing, .25rem) * 3);--ngs-number-input-control-size: calc(var(--spacing, .25rem) * 7);--ngs-number-input-control-border: none;--ngs-number-input-controls-wdith: calc(var(--spacing, .25rem) * 16);display:flex!important;gap:var(--ngs-number-input-gap);padding-right:var(--ngs-number-input-controls-wdith)}:host .number-input{width:auto;max-width:none;flex-grow:1;min-width:0;background:none;outline:none;color:currentColor;font:inherit;border:none}:host .number-input::-webkit-outer-spin-button,:host .number-input::-webkit-inner-spin-button{appearance:none;margin:0}:host .controls{gap:.375rem;-webkit-user-select:none;user-select:none;position:absolute;top:0;bottom:0;right:0;display:flex;align-items:center;justify-content:center}:host .control{cursor:pointer;flex:none;display:flex;align-items:center;justify-content:center;width:var(--ngs-number-input-control-size);height:var(--ngs-number-input-control-size);background:var(--ngs-number-input-control-bg);color:var(--ngs-number-input-control-color);font-size:var(--ngs-number-input-control-font-size);line-height:var(--ngs-number-input-control-font-size);border-radius:var(--ngs-number-input-control-border-radius);position:relative;border:var(--ngs-number-input-control-border);top:1px}:host .control .control-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}:host .control ::ng-deep ngs-icon{--ngs-icon-size: calc(var(--spacing, .25rem) * 5)}:host .control:hover{background:var(--ngs-number-input-control-hover-bg);color:var(--ngs-number-input-control-hover-color)}:host .control[disabled]{pointer-events:none;opacity:.65}:host-context(html.dark){--ngs-number-input-control-color: var(--ngs-color-neutral-300);--ngs-number-input-control-hover-color: var(--ngs-color-neutral-200);--ngs-number-input-control-hover-bg: var(--ngs-color-neutral-500)}\n/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */\n"] }]
|
|
256
256
|
}], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
|
|
257
257
|
type: Optional
|
|
258
258
|
}, {
|
|
259
259
|
type: Self
|
|
260
|
-
}] }], propDecorators: { _input: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }], _decreaseControlRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => DecreaseControlDirective), { isSignal: true }] }], _increaseControlRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => IncreaseControlDirective), { isSignal: true }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], requiredInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }], _placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }]
|
|
260
|
+
}] }], propDecorators: { _input: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }], _decreaseControlRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => DecreaseControlDirective), { isSignal: true }] }], _increaseControlRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => IncreaseControlDirective), { isSignal: true }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], requiredInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }], _placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], onFocusIn: [{
|
|
261
|
+
type: HostListener,
|
|
262
|
+
args: ['focusin']
|
|
263
|
+
}], onFocusOut: [{
|
|
264
|
+
type: HostListener,
|
|
265
|
+
args: ['focusout', ['$event']]
|
|
266
|
+
}] } });
|
|
261
267
|
|
|
262
268
|
class NumberInputPrefixDirective {
|
|
263
269
|
templateRef = inject(TemplateRef);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngstarter-ui-components-number-input.mjs","sources":["../../../projects/components/number-input/src/decrease-control.directive.ts","../../../projects/components/number-input/src/increase-control.directive.ts","../../../projects/components/number-input/src/number-input/number-input.ts","../../../projects/components/number-input/src/number-input/number-input.html","../../../projects/components/number-input/src/number-input-prefix.directive.ts","../../../projects/components/number-input/src/number-input-suffix.directive.ts","../../../projects/components/number-input/ngstarter-ui-components-number-input.ts"],"sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsDecreaseControl]',\n exportAs: 'ngsDecreaseControl'\n})\nexport class DecreaseControlDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsIncreaseControl]',\n exportAs: 'ngsIncreaseControl'\n})\nexport class IncreaseControlDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n DoCheck,\n ElementRef, forwardRef,\n inject, Input, input,\n numberAttribute,\n OnDestroy, Optional,\n output, Self,\n TemplateRef,\n viewChild,\n signal,\n computed,\n effect,\n} from '@angular/core';\nimport { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { DecreaseControlDirective } from '../decrease-control.directive';\nimport { IncreaseControlDirective } from '../increase-control.directive';\nimport { FormFieldControl } from '@ngstarter-ui/components/form-field';\nimport { Subject } from 'rxjs';\nimport { Ripple } from '@ngstarter-ui/components/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'ngs-number-input',\n exportAs: 'ngsNumberInput',\n imports: [\n Ripple,\n NgTemplateOutlet\n ],\n providers: [\n {\n provide: FormFieldControl,\n useExisting: forwardRef(() => NumberInput),\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './number-input.html',\n styleUrl: './number-input.scss',\n host: {\n 'class': 'ngs-number-input',\n '[class.floating]': 'shouldLabelFloat',\n 'id': 'id'\n }\n})\nexport class NumberInput implements FormFieldControl<any>, ControlValueAccessor, OnDestroy, DoCheck {\n private _parentForm = inject(NgForm, {\n optional: true,\n });\n private _parentFormGroup = inject(FormGroupDirective, {\n optional: true,\n });\n private _elementRef = inject(ElementRef);\n readonly disableAutomaticLabeling: boolean = false;\n\n private _input = viewChild.required<ElementRef>('input');\n readonly _decreaseControlRef = contentChild<DecreaseControlDirective>(DecreaseControlDirective);\n readonly _increaseControlRef = contentChild<IncreaseControlDirective>(IncreaseControlDirective);\n\n min = input(undefined, {\n transform: numberAttribute\n });\n max = input(undefined, {\n transform: numberAttribute\n });\n step = input(1, {\n transform: numberAttribute\n });\n readonly = input(false, {\n transform: booleanAttribute\n });\n\n disabledInput = input(false, {\n transform: booleanAttribute,\n alias: 'disabled'\n });\n get disabled(): boolean {\n return this.disabledInput() || this._disabled();\n }\n private _disabled = signal(false);\n\n requiredInput = input(false, {\n transform: booleanAttribute,\n alias: 'required'\n });\n get required(): boolean {\n return this.requiredInput() || this._required();\n }\n private _required = signal(false);\n\n readonly valueChange = output<number|undefined>();\n\n static nextId = 0;\n private _value = signal<number | undefined>(undefined);\n controlType?: string | undefined;\n autofilled?: boolean | undefined;\n userAriaDescribedBy?: string | undefined;\n stateChanges = new Subject<void>();\n focused = false;\n private _focused = signal(false);\n touched = false;\n errorState = false;\n private _errorState = signal(false);\n\n id = '';\n private _id = signal(`ngs-number-input${NumberInput.nextId++}`);\n\n shouldLabelFloat = false;\n private _shouldLabelFloat = computed(() => {\n return this._focused() || !this._empty();\n });\n\n empty = true;\n private _empty = computed(() => {\n const value = this._value();\n return value === undefined || value === null || value as any === '';\n });\n\n _placeholder = input<string>('', { alias: 'placeholder' });\n get placeholder(): string {\n return this._placeholder();\n }\n\n constructor(\n @Optional() @Self() public ngControl: NgControl,\n ) {\n // Replace the provider from above with this.\n if (this.ngControl != null) {\n // Setting the value accessor directly (instead of using\n // the providers) to avoid running into a circular import.\n this.ngControl.valueAccessor = this;\n }\n\n effect(() => {\n this.id = this._id();\n this.focused = this._focused();\n this.errorState = this._errorState();\n this.empty = this._empty();\n this.shouldLabelFloat = this._shouldLabelFloat();\n this.stateChanges.next();\n });\n\n effect(() => {\n const value = this._value();\n\n if (this._input()) {\n this._input().nativeElement.value = (value === undefined || value === null) ? '' : value;\n }\n });\n }\n\n setDescribedByIds(ids: string[]) {\n const controlElement = this._elementRef.nativeElement;\n controlElement.setAttribute('aria-describedby', ids.join(' '));\n }\n\n onFocusIn(event: FocusEvent) {\n if (!this._focused()) {\n this._focused.set(true);\n this.stateChanges.next();\n }\n }\n\n onFocusOut(event: FocusEvent) {\n if (!this._elementRef.nativeElement.contains(event.relatedTarget as Element)) {\n this.touched = true;\n this._focused.set(false);\n this.onTouched();\n this.stateChanges.next();\n }\n }\n\n set value(value: number | undefined) {\n if (value !== this._value()) {\n this._value.set(value);\n this.stateChanges.next();\n }\n }\n get value(): number | undefined {\n return this._value();\n }\n\n ngOnDestroy() {\n this.stateChanges.complete();\n }\n\n protected get _decreaseControlTemplateRef() {\n return this._decreaseControlRef()?.templateRef as TemplateRef<any>;\n }\n\n protected get _increaseControlTemplateRef() {\n return this._increaseControlRef()?.templateRef as TemplateRef<any>;\n }\n\n onChange: any = () => {};\n onTouched: any = () => {};\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._disabled.set(coerceBooleanProperty(isDisabled));\n }\n\n writeValue(value: any): void {\n this.value = value;\n }\n\n decrease(event: MouseEvent, input: HTMLInputElement) {\n event.preventDefault();\n event.stopPropagation();\n let value = this._value() ?? 0;\n value -= this.step();\n this._value.set(value);\n this._emitEvent();\n }\n\n increase(event: MouseEvent, input: HTMLInputElement) {\n event.preventDefault();\n event.stopPropagation();\n let value = this._value() ?? 0;\n value += this.step();\n this._value.set(value);\n this._emitEvent();\n }\n\n isDecreaseDisabled() {\n const value = this._value();\n\n if (this.min() === undefined) {\n return false;\n }\n\n return (value !== undefined && value <= (this.min() as number)) || this.readonly() || this.disabled;\n }\n\n isIncreaseDisabled() {\n const value = this._value();\n\n if (this.max() === undefined) {\n return false;\n }\n\n return (value !== undefined && value >= (this.max() as number)) || this.readonly() || this.disabled;\n }\n\n inputChange(event: any) {\n const inputValue = event.target.value;\n const value = inputValue === '' ? undefined : +inputValue;\n this._value.set(value);\n this._emitEvent();\n }\n\n private _emitEvent() {\n const value = this._value();\n\n this.onChange(value);\n this.valueChange.emit(value);\n this.updateErrorState();\n }\n\n ngDoCheck() {\n if (this.ngControl) {\n this.updateErrorState();\n }\n }\n\n focus(): void {\n this._input().nativeElement.focus();\n }\n\n onContainerClick(event: MouseEvent) {\n if ((event.target as Element).tagName.toLowerCase() != 'input') {\n this.focus();\n }\n }\n\n private updateErrorState() {\n const parent = this._parentFormGroup || this._parentForm;\n let oldState = this._errorState();\n let newState = !!(this.ngControl?.invalid) && this.touched;\n\n if (parent) {\n newState = !!(this.ngControl?.invalid) && (this.touched || parent.submitted);\n }\n\n if (oldState !== newState) {\n this._errorState.set(newState);\n this.stateChanges.next();\n }\n }\n}\n","<input #input type=\"number\" class=\"input\"\n (focusin)=\"onFocusIn($event)\"\n (focusout)=\"onFocusOut($event)\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [step]=\"step()\"\n (input)=\"inputChange($event)\">\n<div class=\"controls\">\n <button class=\"control control-decrease\" ngsRipple [disabled]=\"isDecreaseDisabled()\" (click)=\"decrease($event, input)\">\n @if (_decreaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_decreaseControlTemplateRef\"/>\n } @else {\n <span>−</span>\n }\n </button>\n <button class=\"control control-increase\" ngsRipple [disabled]=\"isIncreaseDisabled()\" (click)=\"increase($event, input)\">\n @if (_increaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_increaseControlTemplateRef\"/>\n } @else {\n <span>+</span>\n }\n </button>\n</div>\n","import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsNumberInputPrefix]',\n exportAs: 'ngsNumberInputPrefix'\n})\nexport class NumberInputPrefixDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsNumberInputSuffix]',\n exportAs: 'ngsNumberInputSuffix'\n})\nexport class NumberInputSuffixDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngstarter-ui-components-number-input.mjs","sources":["../../../projects/components/number-input/src/decrease-control.directive.ts","../../../projects/components/number-input/src/increase-control.directive.ts","../../../projects/components/number-input/src/number-input/number-input.ts","../../../projects/components/number-input/src/number-input/number-input.html","../../../projects/components/number-input/src/number-input-prefix.directive.ts","../../../projects/components/number-input/src/number-input-suffix.directive.ts","../../../projects/components/number-input/ngstarter-ui-components-number-input.ts"],"sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsDecreaseControl]',\n exportAs: 'ngsDecreaseControl'\n})\nexport class DecreaseControlDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsIncreaseControl]',\n exportAs: 'ngsIncreaseControl'\n})\nexport class IncreaseControlDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n DoCheck,\n ElementRef, forwardRef,\n inject, Input, input,\n numberAttribute,\n OnDestroy, Optional,\n output, Self,\n TemplateRef,\n viewChild,\n signal,\n computed,\n effect,\n HostListener,\n} from '@angular/core';\nimport { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { DecreaseControlDirective } from '../decrease-control.directive';\nimport { IncreaseControlDirective } from '../increase-control.directive';\nimport { FormFieldControl } from '@ngstarter-ui/components/form-field';\nimport { Subject } from 'rxjs';\nimport { Ripple } from '@ngstarter-ui/components/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'ngs-number-input',\n exportAs: 'ngsNumberInput',\n imports: [\n Ripple,\n NgTemplateOutlet\n ],\n providers: [\n {\n provide: FormFieldControl,\n useExisting: forwardRef(() => NumberInput),\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './number-input.html',\n styleUrl: './number-input.scss',\n host: {\n 'class': 'ngs-number-input',\n '[class.floating]': 'shouldLabelFloat',\n 'id': 'id'\n }\n})\nexport class NumberInput implements FormFieldControl<any>, ControlValueAccessor, OnDestroy, DoCheck {\n private _parentForm = inject(NgForm, {\n optional: true,\n });\n private _parentFormGroup = inject(FormGroupDirective, {\n optional: true,\n });\n private _elementRef = inject(ElementRef);\n readonly disableAutomaticLabeling: boolean = false;\n\n private _input = viewChild.required<ElementRef>('input');\n readonly _decreaseControlRef = contentChild<DecreaseControlDirective>(DecreaseControlDirective);\n readonly _increaseControlRef = contentChild<IncreaseControlDirective>(IncreaseControlDirective);\n\n min = input(undefined, {\n transform: numberAttribute\n });\n max = input(undefined, {\n transform: numberAttribute\n });\n step = input(1, {\n transform: numberAttribute\n });\n readonly = input(false, {\n transform: booleanAttribute\n });\n\n disabledInput = input(false, {\n transform: booleanAttribute,\n alias: 'disabled'\n });\n get disabled(): boolean {\n return this.disabledInput() || this._disabled();\n }\n private _disabled = signal(false);\n\n requiredInput = input(false, {\n transform: booleanAttribute,\n alias: 'required'\n });\n get required(): boolean {\n return this.requiredInput() || this._required();\n }\n private _required = signal(false);\n\n readonly valueChange = output<number|undefined>();\n\n static nextId = 0;\n private _value = signal<number | undefined>(undefined);\n controlType?: string | undefined;\n autofilled?: boolean | undefined;\n userAriaDescribedBy?: string | undefined;\n stateChanges = new Subject<void>();\n focused = false;\n private _focused = signal(false);\n touched = false;\n errorState = false;\n private _errorState = signal(false);\n\n id = '';\n private _id = signal(`ngs-number-input${NumberInput.nextId++}`);\n\n shouldLabelFloat = false;\n private _shouldLabelFloat = computed(() => {\n return this._focused() || !this._empty();\n });\n\n empty = true;\n private _empty = computed(() => {\n const value = this._value();\n return value === undefined || value === null || value as any === '';\n });\n\n _placeholder = input<string>('', { alias: 'placeholder' });\n get placeholder(): string {\n return this._placeholder();\n }\n\n constructor(\n @Optional() @Self() public ngControl: NgControl,\n ) {\n // Replace the provider from above with this.\n if (this.ngControl != null) {\n // Setting the value accessor directly (instead of using\n // the providers) to avoid running into a circular import.\n this.ngControl.valueAccessor = this;\n }\n\n effect(() => {\n this.id = this._id();\n this.focused = this._focused();\n this.errorState = this._errorState();\n this.empty = this._empty();\n this.shouldLabelFloat = this._shouldLabelFloat();\n this.stateChanges.next();\n });\n\n effect(() => {\n const value = this._value();\n\n if (this._input()) {\n this._input().nativeElement.value = (value === undefined || value === null) ? '' : value;\n }\n });\n }\n\n setDescribedByIds(ids: string[]) {\n const controlElement = this._elementRef.nativeElement;\n controlElement.setAttribute('aria-describedby', ids.join(' '));\n }\n\n @HostListener('focusin')\n onFocusIn() {\n if (!this._focused()) {\n this._focused.set(true);\n this.stateChanges.next();\n }\n }\n\n @HostListener('focusout', ['$event'])\n onFocusOut(event: FocusEvent) {\n if (!this._elementRef.nativeElement.contains(event.relatedTarget as Element)) {\n this.touched = true;\n this._focused.set(false);\n this.onTouched();\n this.stateChanges.next();\n }\n }\n\n set value(value: number | undefined) {\n if (value !== this._value()) {\n this._value.set(value);\n this.stateChanges.next();\n }\n }\n get value(): number | undefined {\n return this._value();\n }\n\n ngOnDestroy() {\n this.stateChanges.complete();\n }\n\n protected get _decreaseControlTemplateRef() {\n return this._decreaseControlRef()?.templateRef as TemplateRef<any>;\n }\n\n protected get _increaseControlTemplateRef() {\n return this._increaseControlRef()?.templateRef as TemplateRef<any>;\n }\n\n onChange: any = () => {};\n onTouched: any = () => {};\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._disabled.set(coerceBooleanProperty(isDisabled));\n }\n\n writeValue(value: any): void {\n this.value = value;\n }\n\n decrease(event: MouseEvent, input: HTMLInputElement) {\n event.preventDefault();\n event.stopPropagation();\n let value = this._value() ?? 0;\n value -= this.step();\n this._value.set(value);\n this._emitEvent();\n }\n\n increase(event: MouseEvent, input: HTMLInputElement) {\n event.preventDefault();\n event.stopPropagation();\n let value = this._value() ?? 0;\n value += this.step();\n this._value.set(value);\n this._emitEvent();\n }\n\n isDecreaseDisabled() {\n const value = this._value();\n\n if (this.min() === undefined) {\n return false;\n }\n\n return (value !== undefined && value <= (this.min() as number)) || this.readonly() || this.disabled;\n }\n\n isIncreaseDisabled() {\n const value = this._value();\n\n if (this.max() === undefined) {\n return false;\n }\n\n return (value !== undefined && value >= (this.max() as number)) || this.readonly() || this.disabled;\n }\n\n inputChange(event: any) {\n const inputValue = event.target.value;\n const value = inputValue === '' ? undefined : +inputValue;\n this._value.set(value);\n this._emitEvent();\n }\n\n private _emitEvent() {\n const value = this._value();\n\n this.onChange(value);\n this.valueChange.emit(value);\n this.updateErrorState();\n }\n\n ngDoCheck() {\n if (this.ngControl) {\n this.updateErrorState();\n }\n }\n\n focus(): void {\n this._input().nativeElement.focus();\n }\n\n onContainerClick(event: MouseEvent) {\n if ((event.target as Element).tagName.toLowerCase() != 'input') {\n this.focus();\n }\n }\n\n private updateErrorState() {\n const parent = this._parentFormGroup || this._parentForm;\n let oldState = this._errorState();\n let newState = !!(this.ngControl?.invalid) && this.touched;\n\n if (parent) {\n newState = !!(this.ngControl?.invalid) && (this.touched || parent.submitted);\n }\n\n if (oldState !== newState) {\n this._errorState.set(newState);\n this.stateChanges.next();\n }\n }\n}\n","<input #input type=\"number\" class=\"number-input\"\n [attr.min]=\"min()\"\n [attr.max]=\"max()\"\n [step]=\"step()\"\n (input)=\"inputChange($event)\">\n<div class=\"controls\">\n <button class=\"control control-decrease\" ngsRipple [disabled]=\"isDecreaseDisabled()\" (click)=\"decrease($event, input)\">\n @if (_decreaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_decreaseControlTemplateRef\"/>\n } @else {\n <svg class=\"control-icon\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" focusable=\"false\">\n <path d=\"M3.5 8h9\"/>\n </svg>\n }\n </button>\n <button class=\"control control-increase\" ngsRipple [disabled]=\"isIncreaseDisabled()\" (click)=\"increase($event, input)\">\n @if (_increaseControlRef()) {\n <ng-template [ngTemplateOutlet]=\"_increaseControlTemplateRef\"/>\n } @else {\n <svg class=\"control-icon\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" focusable=\"false\">\n <path d=\"M8 3.5v9M3.5 8h9\"/>\n </svg>\n }\n </button>\n</div>\n","import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsNumberInputPrefix]',\n exportAs: 'ngsNumberInputPrefix'\n})\nexport class NumberInputPrefixDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[ngsNumberInputSuffix]',\n exportAs: 'ngsNumberInputSuffix'\n})\nexport class NumberInputSuffixDirective {\n readonly templateRef = inject(TemplateRef);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|