ng-primitives 0.120.4 → 0.121.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/example-theme/index.css +9 -0
- package/fesm2022/ng-primitives-a11y.mjs +5 -5
- package/fesm2022/ng-primitives-a11y.mjs.map +1 -1
- package/fesm2022/ng-primitives-accordion.mjs +34 -51
- package/fesm2022/ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/ng-primitives-ai.mjs +39 -52
- package/fesm2022/ng-primitives-ai.mjs.map +1 -1
- package/fesm2022/ng-primitives-autofill.mjs +4 -4
- package/fesm2022/ng-primitives-autofill.mjs.map +1 -1
- package/fesm2022/ng-primitives-avatar.mjs +14 -17
- package/fesm2022/ng-primitives-avatar.mjs.map +1 -1
- package/fesm2022/ng-primitives-breadcrumbs.mjs +21 -21
- package/fesm2022/ng-primitives-breadcrumbs.mjs.map +1 -1
- package/fesm2022/ng-primitives-button.mjs +7 -9
- package/fesm2022/ng-primitives-button.mjs.map +1 -1
- package/fesm2022/ng-primitives-checkbox.mjs +15 -30
- package/fesm2022/ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/ng-primitives-combobox.mjs +60 -92
- package/fesm2022/ng-primitives-combobox.mjs.map +1 -1
- package/fesm2022/ng-primitives-common.mjs +4 -4
- package/fesm2022/ng-primitives-common.mjs.map +1 -1
- package/fesm2022/ng-primitives-context-menu.mjs +68 -121
- package/fesm2022/ng-primitives-context-menu.mjs.map +1 -1
- package/fesm2022/ng-primitives-date-picker.mjs +91 -115
- package/fesm2022/ng-primitives-date-picker.mjs.map +1 -1
- package/fesm2022/ng-primitives-dialog.mjs +35 -51
- package/fesm2022/ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/ng-primitives-file-upload.mjs +26 -53
- package/fesm2022/ng-primitives-file-upload.mjs.map +1 -1
- package/fesm2022/ng-primitives-focus-trap.mjs +5 -8
- package/fesm2022/ng-primitives-focus-trap.mjs.map +1 -1
- package/fesm2022/ng-primitives-form-field.mjs +39 -44
- package/fesm2022/ng-primitives-form-field.mjs.map +1 -1
- package/fesm2022/ng-primitives-input-otp.mjs +30 -43
- package/fesm2022/ng-primitives-input-otp.mjs.map +1 -1
- package/fesm2022/ng-primitives-input.mjs +6 -8
- package/fesm2022/ng-primitives-input.mjs.map +1 -1
- package/fesm2022/ng-primitives-interactions.mjs +31 -48
- package/fesm2022/ng-primitives-interactions.mjs.map +1 -1
- package/fesm2022/ng-primitives-internal.mjs +39 -35
- package/fesm2022/ng-primitives-internal.mjs.map +1 -1
- package/fesm2022/ng-primitives-listbox.mjs +34 -48
- package/fesm2022/ng-primitives-listbox.mjs.map +1 -1
- package/fesm2022/ng-primitives-menu.mjs +85 -151
- package/fesm2022/ng-primitives-menu.mjs.map +1 -1
- package/fesm2022/ng-primitives-meter.mjs +25 -36
- package/fesm2022/ng-primitives-meter.mjs.map +1 -1
- package/fesm2022/ng-primitives-navigation-menu.mjs +60 -108
- package/fesm2022/ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/ng-primitives-number-field.mjs +35 -59
- package/fesm2022/ng-primitives-number-field.mjs.map +1 -1
- package/fesm2022/ng-primitives-pagination.mjs +270 -297
- package/fesm2022/ng-primitives-pagination.mjs.map +1 -1
- package/fesm2022/ng-primitives-popover.mjs +209 -223
- package/fesm2022/ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/ng-primitives-portal.mjs +88 -59
- package/fesm2022/ng-primitives-portal.mjs.map +1 -1
- package/fesm2022/ng-primitives-progress.mjs +30 -41
- package/fesm2022/ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/ng-primitives-radio.mjs +20 -30
- package/fesm2022/ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/ng-primitives-resize.mjs +3 -3
- package/fesm2022/ng-primitives-resize.mjs.map +1 -1
- package/fesm2022/ng-primitives-roving-focus.mjs +20 -34
- package/fesm2022/ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/ng-primitives-search.mjs +9 -9
- package/fesm2022/ng-primitives-search.mjs.map +1 -1
- package/fesm2022/ng-primitives-select.mjs +720 -620
- package/fesm2022/ng-primitives-select.mjs.map +1 -1
- package/fesm2022/ng-primitives-separator.mjs +4 -6
- package/fesm2022/ng-primitives-separator.mjs.map +1 -1
- package/fesm2022/ng-primitives-slider.mjs +63 -100
- package/fesm2022/ng-primitives-slider.mjs.map +1 -1
- package/fesm2022/ng-primitives-state.mjs +3 -3
- package/fesm2022/ng-primitives-state.mjs.map +1 -1
- package/fesm2022/ng-primitives-switch.mjs +15 -21
- package/fesm2022/ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/ng-primitives-tabs.mjs +31 -41
- package/fesm2022/ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/ng-primitives-textarea.mjs +5 -7
- package/fesm2022/ng-primitives-textarea.mjs.map +1 -1
- package/fesm2022/ng-primitives-toast.mjs +30 -23
- package/fesm2022/ng-primitives-toast.mjs.map +1 -1
- package/fesm2022/ng-primitives-toggle-group.mjs +20 -36
- package/fesm2022/ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/ng-primitives-toggle.mjs +10 -19
- package/fesm2022/ng-primitives-toggle.mjs.map +1 -1
- package/fesm2022/ng-primitives-toolbar.mjs +4 -6
- package/fesm2022/ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/ng-primitives-tooltip.mjs +401 -402
- package/fesm2022/ng-primitives-tooltip.mjs.map +1 -1
- package/fesm2022/ng-primitives-utils.mjs +5 -4
- package/fesm2022/ng-primitives-utils.mjs.map +1 -1
- package/package.json +56 -55
- package/schematics/ng-generate/templates/select/select.__fileSuffix@dasherize__.ts.template +48 -48
- package/{a11y/index.d.ts → types/ng-primitives-a11y.d.ts} +18 -24
- package/{accordion/index.d.ts → types/ng-primitives-accordion.d.ts} +85 -98
- package/{autofill/index.d.ts → types/ng-primitives-autofill.d.ts} +3 -10
- package/{avatar/index.d.ts → types/ng-primitives-avatar.d.ts} +7 -30
- package/{breadcrumbs/index.d.ts → types/ng-primitives-breadcrumbs.d.ts} +15 -70
- package/{button/index.d.ts → types/ng-primitives-button.d.ts} +23 -29
- package/{checkbox/index.d.ts → types/ng-primitives-checkbox.d.ts} +68 -74
- package/{combobox/index.d.ts → types/ng-primitives-combobox.d.ts} +35 -35
- package/{context-menu/index.d.ts → types/ng-primitives-context-menu.d.ts} +2 -1
- package/{date-picker/index.d.ts → types/ng-primitives-date-picker.d.ts} +2 -2
- package/{dialog/index.d.ts → types/ng-primitives-dialog.d.ts} +7 -2
- package/{file-upload/index.d.ts → types/ng-primitives-file-upload.d.ts} +5 -20
- package/{focus-trap/index.d.ts → types/ng-primitives-focus-trap.d.ts} +3 -10
- package/{form-field/index.d.ts → types/ng-primitives-form-field.d.ts} +9 -40
- package/{input/index.d.ts → types/ng-primitives-input.d.ts} +3 -10
- package/{menu/index.d.ts → types/ng-primitives-menu.d.ts} +17 -63
- package/{navigation-menu/index.d.ts → types/ng-primitives-navigation-menu.d.ts} +15 -70
- package/{number-field/index.d.ts → types/ng-primitives-number-field.d.ts} +80 -110
- package/types/ng-primitives-pagination.d.ts +502 -0
- package/{popover/index.d.ts → types/ng-primitives-popover.d.ts} +244 -57
- package/{portal/index.d.ts → types/ng-primitives-portal.d.ts} +22 -13
- package/{progress/index.d.ts → types/ng-primitives-progress.d.ts} +3 -10
- package/{roving-focus/index.d.ts → types/ng-primitives-roving-focus.d.ts} +65 -79
- package/types/ng-primitives-select.d.ts +687 -0
- package/{separator/index.d.ts → types/ng-primitives-separator.d.ts} +3 -10
- package/{slider/index.d.ts → types/ng-primitives-slider.d.ts} +76 -138
- package/{state/index.d.ts → types/ng-primitives-state.d.ts} +26 -21
- package/{switch/index.d.ts → types/ng-primitives-switch.d.ts} +50 -64
- package/{tabs/index.d.ts → types/ng-primitives-tabs.d.ts} +9 -40
- package/{textarea/index.d.ts → types/ng-primitives-textarea.d.ts} +3 -10
- package/{toast/index.d.ts → types/ng-primitives-toast.d.ts} +13 -1
- package/{toggle-group/index.d.ts → types/ng-primitives-toggle-group.d.ts} +75 -89
- package/{toggle/index.d.ts → types/ng-primitives-toggle.d.ts} +50 -56
- package/{toolbar/index.d.ts → types/ng-primitives-toolbar.d.ts} +3 -10
- package/types/ng-primitives-tooltip.d.ts +691 -0
- package/pagination/index.d.ts +0 -211
- package/select/index.d.ts +0 -396
- package/tooltip/index.d.ts +0 -384
- /package/{ai/index.d.ts → types/ng-primitives-ai.d.ts} +0 -0
- /package/{common/index.d.ts → types/ng-primitives-common.d.ts} +0 -0
- /package/{date-time-luxon/index.d.ts → types/ng-primitives-date-time-luxon.d.ts} +0 -0
- /package/{date-time/index.d.ts → types/ng-primitives-date-time.d.ts} +0 -0
- /package/{input-otp/index.d.ts → types/ng-primitives-input-otp.d.ts} +0 -0
- /package/{interactions/index.d.ts → types/ng-primitives-interactions.d.ts} +0 -0
- /package/{internal/index.d.ts → types/ng-primitives-internal.d.ts} +0 -0
- /package/{listbox/index.d.ts → types/ng-primitives-listbox.d.ts} +0 -0
- /package/{meter/index.d.ts → types/ng-primitives-meter.d.ts} +0 -0
- /package/{radio/index.d.ts → types/ng-primitives-radio.d.ts} +0 -0
- /package/{resize/index.d.ts → types/ng-primitives-resize.d.ts} +0 -0
- /package/{search/index.d.ts → types/ng-primitives-search.d.ts} +0 -0
- /package/{utils/index.d.ts → types/ng-primitives-utils.d.ts} +0 -0
- /package/{index.d.ts → types/ng-primitives.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-primitives-avatar.mjs","sources":["../../../../packages/ng-primitives/avatar/src/config/avatar-config.ts","../../../../packages/ng-primitives/avatar/src/avatar/avatar-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-fallback/avatar-fallback-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-fallback/avatar-fallback.ts","../../../../packages/ng-primitives/avatar/src/avatar-image/avatar-image-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-image/avatar-image.ts","../../../../packages/ng-primitives/avatar/src/avatar/avatar.ts","../../../../packages/ng-primitives/avatar/src/ng-primitives-avatar.ts"],"sourcesContent":["import { InjectionToken, Provider, inject } from '@angular/core';\n\nexport interface NgpAvatarConfig {\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n delay: number;\n}\n\nexport const defaultAvatarConfig: NgpAvatarConfig = {\n delay: 0,\n};\n\nexport const NgpAvatarConfigToken = new InjectionToken<NgpAvatarConfig>('NgpAvatarConfigToken');\n\n/**\n * Provide the avatar config\n * @param config The avatar config\n * @returns The provider\n */\nexport function provideAvatarConfig(config: Partial<NgpAvatarConfig>): Provider[] {\n return [\n {\n provide: NgpAvatarConfigToken,\n useValue: { ...defaultAvatarConfig, ...config },\n },\n ];\n}\n\n/**\n * Inject the avatar config\n * @returns The global avatar config\n */\nexport function injectAvatarConfig(): NgpAvatarConfig {\n return inject(NgpAvatarConfigToken, { optional: true }) ?? defaultAvatarConfig;\n}\n","import { signal, Signal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, dataBinding } from 'ng-primitives/state';\n\nexport interface NgpAvatarState {\n /**\n * The avatar status.\n */\n status: Signal<NgpAvatarStatus>;\n\n /**\n * Set the avatar status.\n */\n setStatus(status: NgpAvatarStatus): void;\n}\n\nexport interface NgpAvatarProps {}\n\nexport const [NgpAvatarStateToken, ngpAvatar, injectAvatarState, provideAvatarState] =\n createPrimitive('NgpAvatar', ({}: NgpAvatarProps) => {\n const element = injectElementRef();\n const status = signal(NgpAvatarStatus.Idle);\n\n // Host bindings\n dataBinding(element, 'data-status', status);\n\n function setStatus(newStatus: NgpAvatarStatus): void {\n status.set(newStatus);\n }\n\n return {\n status,\n setStatus,\n } satisfies NgpAvatarState;\n });\n\nexport enum NgpAvatarStatus {\n Idle = 'idle',\n Loading = 'loading',\n Loaded = 'loaded',\n Error = 'error',\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, styleBinding } from 'ng-primitives/state';\nimport { injectDisposables } from 'ng-primitives/utils';\nimport { injectAvatarState, NgpAvatarStatus } from '../avatar/avatar-state';\n\nexport interface NgpAvatarFallbackState {}\n\nexport interface NgpAvatarFallbackProps {\n /**\n * The delay before showing the fallback.\n */\n delay?: Signal<number>;\n}\n\nexport const [\n NgpAvatarFallbackStateToken,\n ngpAvatarFallback,\n injectAvatarFallbackState,\n provideAvatarFallbackState,\n] = createPrimitive('NgpAvatarFallback', ({ delay = signal(0) }: NgpAvatarFallbackProps) => {\n const avatar = injectAvatarState();\n const element = injectElementRef();\n const disposables = injectDisposables();\n\n const delayElapsed = signal(false);\n const visible = computed(() => delayElapsed() && avatar().status() !== NgpAvatarStatus.Loaded);\n\n disposables.setTimeout(() => delayElapsed.set(true), delay());\n\n styleBinding(element, 'display', () => (visible() ? null : 'none'));\n\n return {} satisfies NgpAvatarFallbackState;\n});\n","import { NumberInput } from '@angular/cdk/coercion';\nimport { Directive, input, numberAttribute } from '@angular/core';\nimport { injectAvatarConfig } from '../config/avatar-config';\nimport { ngpAvatarFallback } from './avatar-fallback-state';\n\n/**\n * Apply the `ngpAvatarFallback` directive to an element that represents the user in the absence of an image. This is typically the user's initials.\n */\n@Directive({\n selector: '[ngpAvatarFallback]',\n exportAs: 'ngpAvatarFallback',\n})\nexport class NgpAvatarFallback {\n /**\n * Access the global configuration.\n */\n private readonly config = injectAvatarConfig();\n\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n readonly delay = input<number, NumberInput>(this.config.delay, {\n alias: 'ngpAvatarFallbackDelay',\n transform: numberAttribute,\n });\n\n constructor() {\n ngpAvatarFallback({ delay: this.delay });\n }\n}\n","import { ngpVisuallyHidden } from 'ng-primitives/a11y';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, listener } from 'ng-primitives/state';\nimport { injectAvatarState, NgpAvatarStatus } from '../avatar/avatar-state';\n\nexport interface NgpAvatarImageState {}\n\nexport interface NgpAvatarImageProps {}\n\nexport const [\n NgpAvatarImageStateToken,\n ngpAvatarImage,\n injectAvatarImageState,\n provideAvatarImageState,\n] = createPrimitive('NgpAvatarImage', ({}: NgpAvatarImageProps) => {\n const avatar = injectAvatarState();\n const element = injectElementRef<HTMLImageElement>();\n const visuallyHidden = ngpVisuallyHidden({});\n\n // initially mark the avatar as loading\n setStatus(NgpAvatarStatus.Loading);\n\n // if there is no src, we can report this as an error\n if (!element.nativeElement.src) {\n setStatus(NgpAvatarStatus.Error);\n }\n\n // if the image has already loaded, we can report this to the avatar\n if (element.nativeElement.complete) {\n setStatus(NgpAvatarStatus.Loaded);\n }\n\n // host listeners\n listener(element, 'load', () => setStatus(NgpAvatarStatus.Loaded));\n listener(element, 'error', () => setStatus(NgpAvatarStatus.Error));\n\n function setStatus(state: NgpAvatarStatus) {\n avatar().setStatus(state);\n visuallyHidden.setVisibility(state === NgpAvatarStatus.Loaded);\n }\n\n return {} satisfies NgpAvatarImageState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpAvatarImage } from './avatar-image-state';\n\n/**\n * Apply the `ngpAvatarImage` directive to an element that represents the avatar image. This would typically be an `img` element or a `div` with a background image.\n */\n@Directive({\n selector: 'img[ngpAvatarImage]',\n exportAs: 'ngpAvatarImage',\n})\nexport class NgpAvatarImage {\n constructor() {\n ngpAvatarImage({});\n }\n}\n","import { Directive } from '@angular/core';\nimport { ngpAvatar, NgpAvatarStatus, provideAvatarState } from './avatar-state';\n\n/**\n * Apply the `ngpAvatar` directive to an element that represents the avatar. This directive is a container for the image and/or fallback.\n */\n@Directive({\n selector: '[ngpAvatar]',\n exportAs: 'ngpAvatar',\n providers: [provideAvatarState()],\n})\nexport class NgpAvatar {\n /**\n * The avatar state.\n */\n private readonly state = ngpAvatar({});\n\n /**\n * Set the avatar status.\n * @param status The status to set.\n * @internal\n */\n setStatus(status: NgpAvatarStatus): void {\n this.state.setStatus(status);\n }\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":"ng-primitives-avatar.mjs","sources":["../../../../packages/ng-primitives/avatar/src/config/avatar-config.ts","../../../../packages/ng-primitives/avatar/src/avatar/avatar-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-fallback/avatar-fallback-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-fallback/avatar-fallback.ts","../../../../packages/ng-primitives/avatar/src/avatar-image/avatar-image-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-image/avatar-image.ts","../../../../packages/ng-primitives/avatar/src/avatar/avatar.ts","../../../../packages/ng-primitives/avatar/src/ng-primitives-avatar.ts"],"sourcesContent":["import { InjectionToken, Provider, inject } from '@angular/core';\n\nexport interface NgpAvatarConfig {\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n delay: number;\n}\n\nexport const defaultAvatarConfig: NgpAvatarConfig = {\n delay: 0,\n};\n\nexport const NgpAvatarConfigToken = new InjectionToken<NgpAvatarConfig>('NgpAvatarConfigToken');\n\n/**\n * Provide the avatar config\n * @param config The avatar config\n * @returns The provider\n */\nexport function provideAvatarConfig(config: Partial<NgpAvatarConfig>): Provider[] {\n return [\n {\n provide: NgpAvatarConfigToken,\n useValue: { ...defaultAvatarConfig, ...config },\n },\n ];\n}\n\n/**\n * Inject the avatar config\n * @returns The global avatar config\n */\nexport function injectAvatarConfig(): NgpAvatarConfig {\n return inject(NgpAvatarConfigToken, { optional: true }) ?? defaultAvatarConfig;\n}\n","import { signal, Signal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, dataBinding } from 'ng-primitives/state';\n\nexport interface NgpAvatarState {\n /**\n * The avatar status.\n */\n status: Signal<NgpAvatarStatus>;\n\n /**\n * Set the avatar status.\n */\n setStatus(status: NgpAvatarStatus): void;\n}\n\nexport interface NgpAvatarProps {}\n\nexport const [NgpAvatarStateToken, ngpAvatar, injectAvatarState, provideAvatarState] =\n createPrimitive('NgpAvatar', ({}: NgpAvatarProps) => {\n const element = injectElementRef();\n const status = signal(NgpAvatarStatus.Idle);\n\n // Host bindings\n dataBinding(element, 'data-status', status);\n\n function setStatus(newStatus: NgpAvatarStatus): void {\n status.set(newStatus);\n }\n\n return {\n status,\n setStatus,\n } satisfies NgpAvatarState;\n });\n\nexport enum NgpAvatarStatus {\n Idle = 'idle',\n Loading = 'loading',\n Loaded = 'loaded',\n Error = 'error',\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, styleBinding } from 'ng-primitives/state';\nimport { injectDisposables } from 'ng-primitives/utils';\nimport { injectAvatarState, NgpAvatarStatus } from '../avatar/avatar-state';\n\nexport interface NgpAvatarFallbackState {}\n\nexport interface NgpAvatarFallbackProps {\n /**\n * The delay before showing the fallback.\n */\n delay?: Signal<number>;\n}\n\nexport const [\n NgpAvatarFallbackStateToken,\n ngpAvatarFallback,\n injectAvatarFallbackState,\n provideAvatarFallbackState,\n] = createPrimitive('NgpAvatarFallback', ({ delay = signal(0) }: NgpAvatarFallbackProps) => {\n const avatar = injectAvatarState();\n const element = injectElementRef();\n const disposables = injectDisposables();\n\n const delayElapsed = signal(false);\n const visible = computed(() => delayElapsed() && avatar().status() !== NgpAvatarStatus.Loaded);\n\n disposables.setTimeout(() => delayElapsed.set(true), delay());\n\n styleBinding(element, 'display', () => (visible() ? null : 'none'));\n\n return {} satisfies NgpAvatarFallbackState;\n});\n","import { NumberInput } from '@angular/cdk/coercion';\nimport { Directive, input, numberAttribute } from '@angular/core';\nimport { injectAvatarConfig } from '../config/avatar-config';\nimport { ngpAvatarFallback } from './avatar-fallback-state';\n\n/**\n * Apply the `ngpAvatarFallback` directive to an element that represents the user in the absence of an image. This is typically the user's initials.\n */\n@Directive({\n selector: '[ngpAvatarFallback]',\n exportAs: 'ngpAvatarFallback',\n})\nexport class NgpAvatarFallback {\n /**\n * Access the global configuration.\n */\n private readonly config = injectAvatarConfig();\n\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n readonly delay = input<number, NumberInput>(this.config.delay, {\n alias: 'ngpAvatarFallbackDelay',\n transform: numberAttribute,\n });\n\n constructor() {\n ngpAvatarFallback({ delay: this.delay });\n }\n}\n","import { ngpVisuallyHidden } from 'ng-primitives/a11y';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, listener } from 'ng-primitives/state';\nimport { injectAvatarState, NgpAvatarStatus } from '../avatar/avatar-state';\n\nexport interface NgpAvatarImageState {}\n\nexport interface NgpAvatarImageProps {}\n\nexport const [\n NgpAvatarImageStateToken,\n ngpAvatarImage,\n injectAvatarImageState,\n provideAvatarImageState,\n] = createPrimitive('NgpAvatarImage', ({}: NgpAvatarImageProps) => {\n const avatar = injectAvatarState();\n const element = injectElementRef<HTMLImageElement>();\n const visuallyHidden = ngpVisuallyHidden({});\n\n // initially mark the avatar as loading\n setStatus(NgpAvatarStatus.Loading);\n\n // if there is no src, we can report this as an error\n if (!element.nativeElement.src) {\n setStatus(NgpAvatarStatus.Error);\n }\n\n // if the image has already loaded, we can report this to the avatar\n if (element.nativeElement.complete) {\n setStatus(NgpAvatarStatus.Loaded);\n }\n\n // host listeners\n listener(element, 'load', () => setStatus(NgpAvatarStatus.Loaded));\n listener(element, 'error', () => setStatus(NgpAvatarStatus.Error));\n\n function setStatus(state: NgpAvatarStatus) {\n avatar().setStatus(state);\n visuallyHidden.setVisibility(state === NgpAvatarStatus.Loaded);\n }\n\n return {} satisfies NgpAvatarImageState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpAvatarImage } from './avatar-image-state';\n\n/**\n * Apply the `ngpAvatarImage` directive to an element that represents the avatar image. This would typically be an `img` element or a `div` with a background image.\n */\n@Directive({\n selector: 'img[ngpAvatarImage]',\n exportAs: 'ngpAvatarImage',\n})\nexport class NgpAvatarImage {\n constructor() {\n ngpAvatarImage({});\n }\n}\n","import { Directive } from '@angular/core';\nimport { ngpAvatar, NgpAvatarStatus, provideAvatarState } from './avatar-state';\n\n/**\n * Apply the `ngpAvatar` directive to an element that represents the avatar. This directive is a container for the image and/or fallback.\n */\n@Directive({\n selector: '[ngpAvatar]',\n exportAs: 'ngpAvatar',\n providers: [provideAvatarState()],\n})\nexport class NgpAvatar {\n /**\n * The avatar state.\n */\n private readonly state = ngpAvatar({});\n\n /**\n * Set the avatar status.\n * @param status The status to set.\n * @internal\n */\n setStatus(status: NgpAvatarStatus): void {\n this.state.setStatus(status);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -19,10 +19,10 @@ class NgpBreadcrumbEllipsis {
|
|
|
19
19
|
constructor() {
|
|
20
20
|
ngpBreadcrumbEllipsis({});
|
|
21
21
|
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
23
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbEllipsis, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
23
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpBreadcrumbEllipsis, isStandalone: true, selector: "[ngpBreadcrumbEllipsis]", providers: [provideBreadcrumbEllipsisState()], exportAs: ["ngpBreadcrumbEllipsis"], ngImport: i0 }); }
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbEllipsis, decorators: [{
|
|
26
26
|
type: Directive,
|
|
27
27
|
args: [{
|
|
28
28
|
selector: '[ngpBreadcrumbEllipsis]',
|
|
@@ -45,10 +45,10 @@ class NgpBreadcrumbItem {
|
|
|
45
45
|
constructor() {
|
|
46
46
|
ngpBreadcrumbItem({});
|
|
47
47
|
}
|
|
48
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
49
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
49
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpBreadcrumbItem, isStandalone: true, selector: "[ngpBreadcrumbItem]", providers: [provideBreadcrumbItemState()], exportAs: ["ngpBreadcrumbItem"], ngImport: i0 }); }
|
|
50
50
|
}
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbItem, decorators: [{
|
|
52
52
|
type: Directive,
|
|
53
53
|
args: [{
|
|
54
54
|
selector: '[ngpBreadcrumbItem]',
|
|
@@ -70,10 +70,10 @@ class NgpBreadcrumbLink {
|
|
|
70
70
|
constructor() {
|
|
71
71
|
ngpBreadcrumbLink({});
|
|
72
72
|
}
|
|
73
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
74
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
73
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbLink, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
74
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpBreadcrumbLink, isStandalone: true, selector: "[ngpBreadcrumbLink]", providers: [provideBreadcrumbLinkState()], exportAs: ["ngpBreadcrumbLink"], ngImport: i0 }); }
|
|
75
75
|
}
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbLink, decorators: [{
|
|
77
77
|
type: Directive,
|
|
78
78
|
args: [{
|
|
79
79
|
selector: '[ngpBreadcrumbLink]',
|
|
@@ -96,10 +96,10 @@ class NgpBreadcrumbList {
|
|
|
96
96
|
constructor() {
|
|
97
97
|
ngpBreadcrumbList({});
|
|
98
98
|
}
|
|
99
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
100
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
99
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbList, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
100
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpBreadcrumbList, isStandalone: true, selector: "[ngpBreadcrumbList]", providers: [provideBreadcrumbListState()], exportAs: ["ngpBreadcrumbList"], ngImport: i0 }); }
|
|
101
101
|
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbList, decorators: [{
|
|
103
103
|
type: Directive,
|
|
104
104
|
args: [{
|
|
105
105
|
selector: '[ngpBreadcrumbList]',
|
|
@@ -122,10 +122,10 @@ class NgpBreadcrumbPage {
|
|
|
122
122
|
constructor() {
|
|
123
123
|
ngpBreadcrumbPage({});
|
|
124
124
|
}
|
|
125
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
126
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
125
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbPage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
126
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpBreadcrumbPage, isStandalone: true, selector: "[ngpBreadcrumbPage]", providers: [provideBreadcrumbPageState()], exportAs: ["ngpBreadcrumbPage"], ngImport: i0 }); }
|
|
127
127
|
}
|
|
128
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbPage, decorators: [{
|
|
129
129
|
type: Directive,
|
|
130
130
|
args: [{
|
|
131
131
|
selector: '[ngpBreadcrumbPage]',
|
|
@@ -149,10 +149,10 @@ class NgpBreadcrumbSeparator {
|
|
|
149
149
|
constructor() {
|
|
150
150
|
ngpBreadcrumbSeparator({});
|
|
151
151
|
}
|
|
152
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
153
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
152
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
153
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpBreadcrumbSeparator, isStandalone: true, selector: "[ngpBreadcrumbSeparator]", providers: [provideBreadcrumbSeparatorState()], exportAs: ["ngpBreadcrumbSeparator"], ngImport: i0 }); }
|
|
154
154
|
}
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
155
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbSeparator, decorators: [{
|
|
156
156
|
type: Directive,
|
|
157
157
|
args: [{
|
|
158
158
|
selector: '[ngpBreadcrumbSeparator]',
|
|
@@ -175,10 +175,10 @@ class NgpBreadcrumbs {
|
|
|
175
175
|
constructor() {
|
|
176
176
|
ngpBreadcrumbs({});
|
|
177
177
|
}
|
|
178
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
179
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
178
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbs, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
179
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpBreadcrumbs, isStandalone: true, selector: "[ngpBreadcrumbs]", providers: [provideBreadcrumbsState()], exportAs: ["ngpBreadcrumbs"], ngImport: i0 }); }
|
|
180
180
|
}
|
|
181
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
181
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpBreadcrumbs, decorators: [{
|
|
182
182
|
type: Directive,
|
|
183
183
|
args: [{
|
|
184
184
|
selector: '[ngpBreadcrumbs]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-primitives-breadcrumbs.mjs","sources":["../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-ellipsis/breadcrumb-ellipsis-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-ellipsis/breadcrumb-ellipsis.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-item/breadcrumb-item-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-item/breadcrumb-item.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-link/breadcrumb-link-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-link/breadcrumb-link.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-list/breadcrumb-list-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-list/breadcrumb-list.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-page/breadcrumb-page-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-page/breadcrumb-page.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-separator/breadcrumb-separator-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-separator/breadcrumb-separator.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumbs/breadcrumbs-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumbs/breadcrumbs.ts","../../../../packages/ng-primitives/breadcrumbs/src/ng-primitives-breadcrumbs.ts"],"sourcesContent":["import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbEllipsisState {}\n\nexport interface NgpBreadcrumbEllipsisProps {}\n\nexport const [\n NgpBreadcrumbEllipsisStateToken,\n ngpBreadcrumbEllipsis,\n injectBreadcrumbEllipsisState,\n provideBreadcrumbEllipsisState,\n] = createPrimitive('NgpBreadcrumbEllipsis', ({}: NgpBreadcrumbEllipsisProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'presentation');\n attrBinding(element, 'aria-hidden', 'true');\n\n return {} satisfies NgpBreadcrumbEllipsisState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbEllipsis, provideBreadcrumbEllipsisState } from './breadcrumb-ellipsis-state';\n\n/**\n * Apply `ngpBreadcrumbEllipsis` to elements that represent collapsed breadcrumb items.\n */\n@Directive({\n selector: '[ngpBreadcrumbEllipsis]',\n exportAs: 'ngpBreadcrumbEllipsis',\n providers: [provideBreadcrumbEllipsisState()],\n})\nexport class NgpBreadcrumbEllipsis {\n constructor() {\n ngpBreadcrumbEllipsis({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbItemState {}\n\nexport interface NgpBreadcrumbItemProps {}\n\nexport const [\n NgpBreadcrumbItemStateToken,\n ngpBreadcrumbItem,\n injectBreadcrumbItemState,\n provideBreadcrumbItemState,\n] = createPrimitive('NgpBreadcrumbItem', ({}: NgpBreadcrumbItemProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'listitem');\n\n return {} satisfies NgpBreadcrumbItemState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbItem, provideBreadcrumbItemState } from './breadcrumb-item-state';\n\n/**\n * Apply `ngpBreadcrumbItem` to each list item in the breadcrumb trail.\n */\n@Directive({\n selector: '[ngpBreadcrumbItem]',\n exportAs: 'ngpBreadcrumbItem',\n providers: [provideBreadcrumbItemState()],\n})\nexport class NgpBreadcrumbItem {\n constructor() {\n ngpBreadcrumbItem({});\n }\n}\n","import { ngpInteractions } from 'ng-primitives/interactions';\nimport { createPrimitive } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbLinkState {}\n\nexport interface NgpBreadcrumbLinkProps {}\n\nexport const [\n NgpBreadcrumbLinkStateToken,\n ngpBreadcrumbLink,\n injectBreadcrumbLinkState,\n provideBreadcrumbLinkState,\n] = createPrimitive('NgpBreadcrumbLink', ({}: NgpBreadcrumbLinkProps) => {\n // Set up interactions for hover, press, and focus-visible\n ngpInteractions({ hover: true, press: true, focusVisible: true });\n\n return {} satisfies NgpBreadcrumbLinkState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbLink, provideBreadcrumbLinkState } from './breadcrumb-link-state';\n\n/**\n * Apply `ngpBreadcrumbLink` to anchors or buttons that navigate to a breadcrumb destination.\n */\n@Directive({\n selector: '[ngpBreadcrumbLink]',\n exportAs: 'ngpBreadcrumbLink',\n providers: [provideBreadcrumbLinkState()],\n})\nexport class NgpBreadcrumbLink {\n constructor() {\n ngpBreadcrumbLink({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbListState {}\n\nexport interface NgpBreadcrumbListProps {}\n\nexport const [\n NgpBreadcrumbListStateToken,\n ngpBreadcrumbList,\n injectBreadcrumbListState,\n provideBreadcrumbListState,\n] = createPrimitive('NgpBreadcrumbList', ({}: NgpBreadcrumbListProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'list');\n\n return {} satisfies NgpBreadcrumbListState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbList, provideBreadcrumbListState } from './breadcrumb-list-state';\n\n/**\n * Apply `ngpBreadcrumbList` to the ordered list that groups breadcrumb items.\n */\n@Directive({\n selector: '[ngpBreadcrumbList]',\n exportAs: 'ngpBreadcrumbList',\n providers: [provideBreadcrumbListState()],\n})\nexport class NgpBreadcrumbList {\n constructor() {\n ngpBreadcrumbList({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbPageState {}\n\nexport interface NgpBreadcrumbPageProps {}\n\nexport const [\n NgpBreadcrumbPageStateToken,\n ngpBreadcrumbPage,\n injectBreadcrumbPageState,\n provideBreadcrumbPageState,\n] = createPrimitive('NgpBreadcrumbPage', ({}: NgpBreadcrumbPageProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'aria-current', 'page');\n\n return {} satisfies NgpBreadcrumbPageState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbPage, provideBreadcrumbPageState } from './breadcrumb-page-state';\n\n/**\n * Apply `ngpBreadcrumbPage` to non-link content that represents the active page.\n */\n@Directive({\n selector: '[ngpBreadcrumbPage]',\n exportAs: 'ngpBreadcrumbPage',\n providers: [provideBreadcrumbPageState()],\n})\nexport class NgpBreadcrumbPage {\n constructor() {\n ngpBreadcrumbPage({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbSeparatorState {}\n\nexport interface NgpBreadcrumbSeparatorProps {}\n\nexport const [\n NgpBreadcrumbSeparatorStateToken,\n ngpBreadcrumbSeparator,\n injectBreadcrumbSeparatorState,\n provideBreadcrumbSeparatorState,\n] = createPrimitive('NgpBreadcrumbSeparator', ({}: NgpBreadcrumbSeparatorProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'presentation');\n attrBinding(element, 'aria-hidden', 'true');\n\n return {} satisfies NgpBreadcrumbSeparatorState;\n});\n","import { Directive } from '@angular/core';\nimport {\n ngpBreadcrumbSeparator,\n provideBreadcrumbSeparatorState,\n} from './breadcrumb-separator-state';\n\n/**\n * Apply `ngpBreadcrumbSeparator` between breadcrumb items to render a visual divider.\n */\n@Directive({\n selector: '[ngpBreadcrumbSeparator]',\n exportAs: 'ngpBreadcrumbSeparator',\n providers: [provideBreadcrumbSeparatorState()],\n})\nexport class NgpBreadcrumbSeparator {\n constructor() {\n ngpBreadcrumbSeparator({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbsState {}\n\nexport interface NgpBreadcrumbsProps {}\n\nexport const [\n NgpBreadcrumbsStateToken,\n ngpBreadcrumbs,\n injectBreadcrumbsState,\n provideBreadcrumbsState,\n] = createPrimitive('NgpBreadcrumbs', ({}: NgpBreadcrumbsProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'navigation');\n\n return {} satisfies NgpBreadcrumbsState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbs, provideBreadcrumbsState } from './breadcrumbs-state';\n\n/**\n * Apply `ngpBreadcrumbs` to the navigation element that wraps the breadcrumb trail.\n */\n@Directive({\n selector: '[ngpBreadcrumbs]',\n exportAs: 'ngpBreadcrumbs',\n providers: [provideBreadcrumbsState()],\n})\nexport class NgpBreadcrumbs {\n constructor() {\n ngpBreadcrumbs({});\n }\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":"ng-primitives-breadcrumbs.mjs","sources":["../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-ellipsis/breadcrumb-ellipsis-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-ellipsis/breadcrumb-ellipsis.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-item/breadcrumb-item-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-item/breadcrumb-item.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-link/breadcrumb-link-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-link/breadcrumb-link.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-list/breadcrumb-list-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-list/breadcrumb-list.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-page/breadcrumb-page-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-page/breadcrumb-page.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-separator/breadcrumb-separator-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumb-separator/breadcrumb-separator.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumbs/breadcrumbs-state.ts","../../../../packages/ng-primitives/breadcrumbs/src/breadcrumbs/breadcrumbs.ts","../../../../packages/ng-primitives/breadcrumbs/src/ng-primitives-breadcrumbs.ts"],"sourcesContent":["import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbEllipsisState {}\n\nexport interface NgpBreadcrumbEllipsisProps {}\n\nexport const [\n NgpBreadcrumbEllipsisStateToken,\n ngpBreadcrumbEllipsis,\n injectBreadcrumbEllipsisState,\n provideBreadcrumbEllipsisState,\n] = createPrimitive('NgpBreadcrumbEllipsis', ({}: NgpBreadcrumbEllipsisProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'presentation');\n attrBinding(element, 'aria-hidden', 'true');\n\n return {} satisfies NgpBreadcrumbEllipsisState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbEllipsis, provideBreadcrumbEllipsisState } from './breadcrumb-ellipsis-state';\n\n/**\n * Apply `ngpBreadcrumbEllipsis` to elements that represent collapsed breadcrumb items.\n */\n@Directive({\n selector: '[ngpBreadcrumbEllipsis]',\n exportAs: 'ngpBreadcrumbEllipsis',\n providers: [provideBreadcrumbEllipsisState()],\n})\nexport class NgpBreadcrumbEllipsis {\n constructor() {\n ngpBreadcrumbEllipsis({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbItemState {}\n\nexport interface NgpBreadcrumbItemProps {}\n\nexport const [\n NgpBreadcrumbItemStateToken,\n ngpBreadcrumbItem,\n injectBreadcrumbItemState,\n provideBreadcrumbItemState,\n] = createPrimitive('NgpBreadcrumbItem', ({}: NgpBreadcrumbItemProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'listitem');\n\n return {} satisfies NgpBreadcrumbItemState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbItem, provideBreadcrumbItemState } from './breadcrumb-item-state';\n\n/**\n * Apply `ngpBreadcrumbItem` to each list item in the breadcrumb trail.\n */\n@Directive({\n selector: '[ngpBreadcrumbItem]',\n exportAs: 'ngpBreadcrumbItem',\n providers: [provideBreadcrumbItemState()],\n})\nexport class NgpBreadcrumbItem {\n constructor() {\n ngpBreadcrumbItem({});\n }\n}\n","import { ngpInteractions } from 'ng-primitives/interactions';\nimport { createPrimitive } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbLinkState {}\n\nexport interface NgpBreadcrumbLinkProps {}\n\nexport const [\n NgpBreadcrumbLinkStateToken,\n ngpBreadcrumbLink,\n injectBreadcrumbLinkState,\n provideBreadcrumbLinkState,\n] = createPrimitive('NgpBreadcrumbLink', ({}: NgpBreadcrumbLinkProps) => {\n // Set up interactions for hover, press, and focus-visible\n ngpInteractions({ hover: true, press: true, focusVisible: true });\n\n return {} satisfies NgpBreadcrumbLinkState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbLink, provideBreadcrumbLinkState } from './breadcrumb-link-state';\n\n/**\n * Apply `ngpBreadcrumbLink` to anchors or buttons that navigate to a breadcrumb destination.\n */\n@Directive({\n selector: '[ngpBreadcrumbLink]',\n exportAs: 'ngpBreadcrumbLink',\n providers: [provideBreadcrumbLinkState()],\n})\nexport class NgpBreadcrumbLink {\n constructor() {\n ngpBreadcrumbLink({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbListState {}\n\nexport interface NgpBreadcrumbListProps {}\n\nexport const [\n NgpBreadcrumbListStateToken,\n ngpBreadcrumbList,\n injectBreadcrumbListState,\n provideBreadcrumbListState,\n] = createPrimitive('NgpBreadcrumbList', ({}: NgpBreadcrumbListProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'list');\n\n return {} satisfies NgpBreadcrumbListState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbList, provideBreadcrumbListState } from './breadcrumb-list-state';\n\n/**\n * Apply `ngpBreadcrumbList` to the ordered list that groups breadcrumb items.\n */\n@Directive({\n selector: '[ngpBreadcrumbList]',\n exportAs: 'ngpBreadcrumbList',\n providers: [provideBreadcrumbListState()],\n})\nexport class NgpBreadcrumbList {\n constructor() {\n ngpBreadcrumbList({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbPageState {}\n\nexport interface NgpBreadcrumbPageProps {}\n\nexport const [\n NgpBreadcrumbPageStateToken,\n ngpBreadcrumbPage,\n injectBreadcrumbPageState,\n provideBreadcrumbPageState,\n] = createPrimitive('NgpBreadcrumbPage', ({}: NgpBreadcrumbPageProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'aria-current', 'page');\n\n return {} satisfies NgpBreadcrumbPageState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbPage, provideBreadcrumbPageState } from './breadcrumb-page-state';\n\n/**\n * Apply `ngpBreadcrumbPage` to non-link content that represents the active page.\n */\n@Directive({\n selector: '[ngpBreadcrumbPage]',\n exportAs: 'ngpBreadcrumbPage',\n providers: [provideBreadcrumbPageState()],\n})\nexport class NgpBreadcrumbPage {\n constructor() {\n ngpBreadcrumbPage({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbSeparatorState {}\n\nexport interface NgpBreadcrumbSeparatorProps {}\n\nexport const [\n NgpBreadcrumbSeparatorStateToken,\n ngpBreadcrumbSeparator,\n injectBreadcrumbSeparatorState,\n provideBreadcrumbSeparatorState,\n] = createPrimitive('NgpBreadcrumbSeparator', ({}: NgpBreadcrumbSeparatorProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'presentation');\n attrBinding(element, 'aria-hidden', 'true');\n\n return {} satisfies NgpBreadcrumbSeparatorState;\n});\n","import { Directive } from '@angular/core';\nimport {\n ngpBreadcrumbSeparator,\n provideBreadcrumbSeparatorState,\n} from './breadcrumb-separator-state';\n\n/**\n * Apply `ngpBreadcrumbSeparator` between breadcrumb items to render a visual divider.\n */\n@Directive({\n selector: '[ngpBreadcrumbSeparator]',\n exportAs: 'ngpBreadcrumbSeparator',\n providers: [provideBreadcrumbSeparatorState()],\n})\nexport class NgpBreadcrumbSeparator {\n constructor() {\n ngpBreadcrumbSeparator({});\n }\n}\n","import { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, attrBinding } from 'ng-primitives/state';\n\nexport interface NgpBreadcrumbsState {}\n\nexport interface NgpBreadcrumbsProps {}\n\nexport const [\n NgpBreadcrumbsStateToken,\n ngpBreadcrumbs,\n injectBreadcrumbsState,\n provideBreadcrumbsState,\n] = createPrimitive('NgpBreadcrumbs', ({}: NgpBreadcrumbsProps) => {\n const element = injectElementRef();\n\n // Host bindings\n attrBinding(element, 'role', 'navigation');\n\n return {} satisfies NgpBreadcrumbsState;\n});\n","import { Directive } from '@angular/core';\nimport { ngpBreadcrumbs, provideBreadcrumbsState } from './breadcrumbs-state';\n\n/**\n * Apply `ngpBreadcrumbs` to the navigation element that wraps the breadcrumb trail.\n */\n@Directive({\n selector: '[ngpBreadcrumbs]',\n exportAs: 'ngpBreadcrumbs',\n providers: [provideBreadcrumbsState()],\n})\nexport class NgpBreadcrumbs {\n constructor() {\n ngpBreadcrumbs({});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -8,9 +8,9 @@ const [NgpButtonStateToken, ngpButton, injectButtonState, provideButtonState] =
|
|
|
8
8
|
const element = injectElementRef();
|
|
9
9
|
const isButton = inject(HOST_TAG_NAME) === 'button';
|
|
10
10
|
const disabled = controlled(_disabled);
|
|
11
|
-
const anyDisabled = computed(() => !!disabled(), ...(ngDevMode ? [{ debugName: "anyDisabled" }] : []));
|
|
12
|
-
const softDisabled = computed(() => disabled() === 'soft', ...(ngDevMode ? [{ debugName: "softDisabled" }] : []));
|
|
13
|
-
const hardDisabled = computed(() => disabled() === true, ...(ngDevMode ? [{ debugName: "hardDisabled" }] : []));
|
|
11
|
+
const anyDisabled = computed(() => !!disabled(), ...(ngDevMode ? [{ debugName: "anyDisabled" }] : /* istanbul ignore next */ []));
|
|
12
|
+
const softDisabled = computed(() => disabled() === 'soft', ...(ngDevMode ? [{ debugName: "softDisabled" }] : /* istanbul ignore next */ []));
|
|
13
|
+
const hardDisabled = computed(() => disabled() === true, ...(ngDevMode ? [{ debugName: "hardDisabled" }] : /* istanbul ignore next */ []));
|
|
14
14
|
ngpInteractions({ hover: true, press: true, disabled: anyDisabled });
|
|
15
15
|
// Soft-disabled stays focusable, so only suppress focus-visible when fully disabled.
|
|
16
16
|
ngpFocusVisible({ disabled: hardDisabled });
|
|
@@ -37,9 +37,7 @@ class NgpButton {
|
|
|
37
37
|
* Whether the button is disabled. Use `'soft'` for an aria-disabled
|
|
38
38
|
* button that stays focusable; events still fire, so guard your handlers.
|
|
39
39
|
*/
|
|
40
|
-
this.disabled = input(false, ...(ngDevMode ?
|
|
41
|
-
transform: v => (v === 'soft' ? 'soft' : booleanAttribute(v)),
|
|
42
|
-
}]));
|
|
40
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: v => (v === 'soft' ? 'soft' : booleanAttribute(v)) });
|
|
43
41
|
/**
|
|
44
42
|
* The button state.
|
|
45
43
|
*/
|
|
@@ -52,10 +50,10 @@ class NgpButton {
|
|
|
52
50
|
setDisabled(value) {
|
|
53
51
|
this.state.setDisabled(value);
|
|
54
52
|
}
|
|
55
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
56
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpButton, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
54
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpButton, isStandalone: true, selector: "[ngpButton]", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideButtonState({ inherit: false })], exportAs: ["ngpButton"], ngImport: i0 }); }
|
|
57
55
|
}
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpButton, decorators: [{
|
|
59
57
|
type: Directive,
|
|
60
58
|
args: [{
|
|
61
59
|
selector: '[ngpButton]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-primitives-button.mjs","sources":["../../../../packages/ng-primitives/button/src/button/button-state.ts","../../../../packages/ng-primitives/button/src/button/button.ts","../../../../packages/ng-primitives/button/src/ng-primitives-button.ts"],"sourcesContent":["import { computed, HOST_TAG_NAME, inject, signal, Signal } from '@angular/core';\nimport { ngpFocusVisible, ngpInteractions } from 'ng-primitives/interactions';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, controlled, createPrimitive, dataBinding } from 'ng-primitives/state';\n\nexport interface NgpButtonState {\n /** Disabled state. `'soft'` means aria-disabled but still focusable. */\n readonly disabled: Signal<boolean | 'soft'>;\n\n /** Set the disabled state. `'soft'` keeps the button focusable. */\n setDisabled(value: boolean | 'soft'): void;\n}\n\nexport interface NgpButtonProps {\n /** Disabled state. `'soft'` means aria-disabled but still focusable. */\n readonly disabled?: Signal<boolean | 'soft'>;\n}\n\nexport const [NgpButtonStateToken, ngpButton, injectButtonState, provideButtonState] =\n createPrimitive(\n 'NgpButton',\n ({ disabled: _disabled = signal(false) }: NgpButtonProps): NgpButtonState => {\n const element = injectElementRef();\n const isButton = inject(HOST_TAG_NAME) === 'button';\n const disabled = controlled(_disabled);\n\n const anyDisabled = computed(() => !!disabled());\n const softDisabled = computed(() => disabled() === 'soft');\n const hardDisabled = computed(() => disabled() === true);\n\n ngpInteractions({ hover: true, press: true, disabled: anyDisabled });\n\n // Soft-disabled stays focusable, so only suppress focus-visible when fully disabled.\n ngpFocusVisible({ disabled: hardDisabled });\n\n dataBinding(element, 'data-disabled', () => (softDisabled() ? 'soft' : hardDisabled()));\n\n if (isButton) {\n attrBinding(element, 'disabled', () => (hardDisabled() ? '' : null));\n attrBinding(element, 'aria-disabled', () => (softDisabled() ? 'true' : null));\n } else {\n attrBinding(element, 'aria-disabled', () => (anyDisabled() ? 'true' : null));\n }\n\n function setDisabled(value: boolean | 'soft'): void {\n disabled.set(value);\n }\n\n return {\n disabled: disabled.asReadonly(),\n setDisabled,\n } satisfies NgpButtonState;\n },\n );\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpButton, provideButtonState } from './button-state';\n\n@Directive({\n selector: '[ngpButton]',\n exportAs: 'ngpButton',\n providers: [provideButtonState({ inherit: false })],\n})\nexport class NgpButton {\n /**\n * Whether the button is disabled. Use `'soft'` for an aria-disabled\n * button that stays focusable; events still fire, so guard your handlers.\n */\n readonly disabled = input<boolean | 'soft', BooleanInput>(false, {\n transform: v => (v === 'soft' ? 'soft' : booleanAttribute(v)),\n });\n\n /**\n * The button state.\n */\n protected readonly state = ngpButton({ disabled: this.disabled });\n\n /**\n * Set the disabled state of the button.\n * @param value The disabled state.\n */\n setDisabled(value: boolean | 'soft'): void {\n this.state.setDisabled(value);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAkBO,MAAM,CAAC,mBAAmB,EAAE,SAAS,EAAE,iBAAiB,EAAE,kBAAkB,CAAC,GAClF,eAAe,CACb,WAAW,EACX,CAAC,EAAE,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,EAAkB,KAAoB;AAC1E,IAAA,MAAM,OAAO,GAAG,gBAAgB,EAAE;IAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,QAAQ;AACnD,IAAA,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC;AAEtC,IAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"ng-primitives-button.mjs","sources":["../../../../packages/ng-primitives/button/src/button/button-state.ts","../../../../packages/ng-primitives/button/src/button/button.ts","../../../../packages/ng-primitives/button/src/ng-primitives-button.ts"],"sourcesContent":["import { computed, HOST_TAG_NAME, inject, signal, Signal } from '@angular/core';\nimport { ngpFocusVisible, ngpInteractions } from 'ng-primitives/interactions';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, controlled, createPrimitive, dataBinding } from 'ng-primitives/state';\n\nexport interface NgpButtonState {\n /** Disabled state. `'soft'` means aria-disabled but still focusable. */\n readonly disabled: Signal<boolean | 'soft'>;\n\n /** Set the disabled state. `'soft'` keeps the button focusable. */\n setDisabled(value: boolean | 'soft'): void;\n}\n\nexport interface NgpButtonProps {\n /** Disabled state. `'soft'` means aria-disabled but still focusable. */\n readonly disabled?: Signal<boolean | 'soft'>;\n}\n\nexport const [NgpButtonStateToken, ngpButton, injectButtonState, provideButtonState] =\n createPrimitive(\n 'NgpButton',\n ({ disabled: _disabled = signal(false) }: NgpButtonProps): NgpButtonState => {\n const element = injectElementRef();\n const isButton = inject(HOST_TAG_NAME) === 'button';\n const disabled = controlled(_disabled);\n\n const anyDisabled = computed(() => !!disabled());\n const softDisabled = computed(() => disabled() === 'soft');\n const hardDisabled = computed(() => disabled() === true);\n\n ngpInteractions({ hover: true, press: true, disabled: anyDisabled });\n\n // Soft-disabled stays focusable, so only suppress focus-visible when fully disabled.\n ngpFocusVisible({ disabled: hardDisabled });\n\n dataBinding(element, 'data-disabled', () => (softDisabled() ? 'soft' : hardDisabled()));\n\n if (isButton) {\n attrBinding(element, 'disabled', () => (hardDisabled() ? '' : null));\n attrBinding(element, 'aria-disabled', () => (softDisabled() ? 'true' : null));\n } else {\n attrBinding(element, 'aria-disabled', () => (anyDisabled() ? 'true' : null));\n }\n\n function setDisabled(value: boolean | 'soft'): void {\n disabled.set(value);\n }\n\n return {\n disabled: disabled.asReadonly(),\n setDisabled,\n } satisfies NgpButtonState;\n },\n );\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpButton, provideButtonState } from './button-state';\n\n@Directive({\n selector: '[ngpButton]',\n exportAs: 'ngpButton',\n providers: [provideButtonState({ inherit: false })],\n})\nexport class NgpButton {\n /**\n * Whether the button is disabled. Use `'soft'` for an aria-disabled\n * button that stays focusable; events still fire, so guard your handlers.\n */\n readonly disabled = input<boolean | 'soft', BooleanInput>(false, {\n transform: v => (v === 'soft' ? 'soft' : booleanAttribute(v)),\n });\n\n /**\n * The button state.\n */\n protected readonly state = ngpButton({ disabled: this.disabled });\n\n /**\n * Set the disabled state of the button.\n * @param value The disabled state.\n */\n setDisabled(value: boolean | 'soft'): void {\n this.state.setDisabled(value);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ const [NgpCheckboxStateToken, ngpCheckbox, injectCheckboxState, provideCheckboxS
|
|
|
17
17
|
const indeterminate = controlled(_indeterminate);
|
|
18
18
|
const disabled = controlled(_disabled);
|
|
19
19
|
const indeterminateChange = emitter();
|
|
20
|
-
const tabindex = computed(() => (disabled() ? -1 : 0), ...(ngDevMode ? [{ debugName: "tabindex" }] : []));
|
|
20
|
+
const tabindex = computed(() => (disabled() ? -1 : 0), ...(ngDevMode ? [{ debugName: "tabindex" }] : /* istanbul ignore next */ []));
|
|
21
21
|
// Setup interactions and form control hooks
|
|
22
22
|
ngpInteractions({ hover: true, press: true, focusVisible: true, disabled });
|
|
23
23
|
ngpFormControl({ id, disabled });
|
|
@@ -85,24 +85,18 @@ class NgpCheckbox {
|
|
|
85
85
|
* The id of the checkbox.
|
|
86
86
|
* @internal
|
|
87
87
|
*/
|
|
88
|
-
this.id = input(uniqueId('ngp-checkbox'), ...(ngDevMode ? [{ debugName: "id" }] : []));
|
|
88
|
+
this.id = input(uniqueId('ngp-checkbox'), ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
89
89
|
/**
|
|
90
90
|
* Defines whether the checkbox is checked.
|
|
91
91
|
*/
|
|
92
|
-
this.checked = input(undefined, ...(ngDevMode ?
|
|
93
|
-
|
|
94
|
-
alias: 'ngpCheckboxChecked',
|
|
95
|
-
transform: booleanAttribute,
|
|
96
|
-
}]));
|
|
92
|
+
this.checked = input(undefined, { ...(ngDevMode ? { debugName: "checked" } : /* istanbul ignore next */ {}), alias: 'ngpCheckboxChecked',
|
|
93
|
+
transform: booleanAttribute });
|
|
97
94
|
/**
|
|
98
95
|
* The default checked state for uncontrolled usage.
|
|
99
96
|
* @default false
|
|
100
97
|
*/
|
|
101
|
-
this.defaultChecked = input(false, ...(ngDevMode ?
|
|
102
|
-
|
|
103
|
-
alias: 'ngpCheckboxDefaultChecked',
|
|
104
|
-
transform: booleanAttribute,
|
|
105
|
-
}]));
|
|
98
|
+
this.defaultChecked = input(false, { ...(ngDevMode ? { debugName: "defaultChecked" } : /* istanbul ignore next */ {}), alias: 'ngpCheckboxDefaultChecked',
|
|
99
|
+
transform: booleanAttribute });
|
|
106
100
|
/**
|
|
107
101
|
* The event that is emitted when the checkbox value changes.
|
|
108
102
|
*/
|
|
@@ -112,11 +106,8 @@ class NgpCheckbox {
|
|
|
112
106
|
/**
|
|
113
107
|
* Defines whether the checkbox is indeterminate.
|
|
114
108
|
*/
|
|
115
|
-
this.indeterminate = input(false, ...(ngDevMode ?
|
|
116
|
-
|
|
117
|
-
alias: 'ngpCheckboxIndeterminate',
|
|
118
|
-
transform: booleanAttribute,
|
|
119
|
-
}]));
|
|
109
|
+
this.indeterminate = input(false, { ...(ngDevMode ? { debugName: "indeterminate" } : /* istanbul ignore next */ {}), alias: 'ngpCheckboxIndeterminate',
|
|
110
|
+
transform: booleanAttribute });
|
|
120
111
|
/**
|
|
121
112
|
* The event that is emitted when the indeterminate value changes.
|
|
122
113
|
*/
|
|
@@ -126,19 +117,13 @@ class NgpCheckbox {
|
|
|
126
117
|
/**
|
|
127
118
|
* Whether the checkbox is required.
|
|
128
119
|
*/
|
|
129
|
-
this.required = input(false, ...(ngDevMode ?
|
|
130
|
-
|
|
131
|
-
alias: 'ngpCheckboxRequired',
|
|
132
|
-
transform: booleanAttribute,
|
|
133
|
-
}]));
|
|
120
|
+
this.required = input(false, { ...(ngDevMode ? { debugName: "required" } : /* istanbul ignore next */ {}), alias: 'ngpCheckboxRequired',
|
|
121
|
+
transform: booleanAttribute });
|
|
134
122
|
/**
|
|
135
123
|
* Defines whether the checkbox is disabled.
|
|
136
124
|
*/
|
|
137
|
-
this.disabled = input(false, ...(ngDevMode ?
|
|
138
|
-
|
|
139
|
-
alias: 'ngpCheckboxDisabled',
|
|
140
|
-
transform: booleanAttribute,
|
|
141
|
-
}]));
|
|
125
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'ngpCheckboxDisabled',
|
|
126
|
+
transform: booleanAttribute });
|
|
142
127
|
/**
|
|
143
128
|
* The state of the checkbox.
|
|
144
129
|
*/
|
|
@@ -179,10 +164,10 @@ class NgpCheckbox {
|
|
|
179
164
|
setDisabled(value) {
|
|
180
165
|
this.state.setDisabled(value);
|
|
181
166
|
}
|
|
182
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
183
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
167
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
168
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpCheckbox, isStandalone: true, selector: "[ngpCheckbox]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "ngpCheckboxChecked", isSignal: true, isRequired: false, transformFunction: null }, defaultChecked: { classPropertyName: "defaultChecked", publicName: "ngpCheckboxDefaultChecked", isSignal: true, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: "indeterminate", publicName: "ngpCheckboxIndeterminate", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "ngpCheckboxRequired", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "ngpCheckboxDisabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checkedChange: "ngpCheckboxCheckedChange", indeterminateChange: "ngpCheckboxIndeterminateChange" }, providers: [provideCheckboxState({ inherit: false })], ngImport: i0 }); }
|
|
184
169
|
}
|
|
185
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
170
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpCheckbox, decorators: [{
|
|
186
171
|
type: Directive,
|
|
187
172
|
args: [{
|
|
188
173
|
selector: '[ngpCheckbox]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-primitives-checkbox.mjs","sources":["../../../../packages/ng-primitives/checkbox/src/checkbox/checkbox-state.ts","../../../../packages/ng-primitives/checkbox/src/checkbox/checkbox.ts","../../../../packages/ng-primitives/checkbox/src/ng-primitives-checkbox.ts"],"sourcesContent":["import { computed, Signal, signal, WritableSignal } from '@angular/core';\nimport { ngpFormControl } from 'ng-primitives/form-field';\nimport { ngpInteractions } from 'ng-primitives/interactions';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport {\n attrBinding,\n controlled,\n controlledState,\n createPrimitive,\n dataBinding,\n deprecatedSetter,\n emitter,\n listener,\n SetterOptions,\n} from 'ng-primitives/state';\nimport { uniqueId } from 'ng-primitives/utils';\nimport { Observable } from 'rxjs';\n\n/**\n * Public state surface for the Checkbox primitive.\n */\nexport interface NgpCheckboxState {\n /**\n * The id of the checkbox.\n */\n readonly id: Signal<string>;\n /**\n * Whether the checkbox is checked.\n */\n readonly checked: WritableSignal<boolean>;\n /**\n * Whether the checkbox is indeterminate.\n */\n readonly indeterminate: WritableSignal<boolean>;\n /**\n * Whether the checkbox is disabled.\n */\n readonly disabled: WritableSignal<boolean>;\n /**\n * Emits when the checked state changes.\n */\n readonly checkedChange: Observable<boolean>;\n /**\n * Emits when the indeterminate state changes.\n */\n readonly indeterminateChange: Observable<boolean>;\n /**\n * Toggle the checkbox value.\n */\n toggle(event?: Event): void;\n /**\n * Update the checked value.\n */\n setChecked(value: boolean, options?: SetterOptions): void;\n /**\n * Set the default checked state.\n */\n setDefaultChecked(value: boolean): void;\n /**\n * Update the indeterminate value.\n */\n setIndeterminate(value: boolean): void;\n /**\n * Set the disabled value.\n */\n setDisabled(value: boolean): void;\n}\n\n/**\n * Inputs for configuring the Checkbox primitive.\n */\nexport interface NgpCheckboxProps {\n /**\n * The id of the checkbox.\n */\n readonly id?: Signal<string>;\n /**\n * Whether the checkbox is checked.\n */\n readonly checked?: Signal<boolean | undefined>;\n /**\n * The default checked state for uncontrolled usage.\n */\n readonly defaultChecked?: Signal<boolean>;\n /**\n * Whether the checkbox is indeterminate.\n */\n readonly indeterminate?: Signal<boolean>;\n /**\n * Whether the checkbox is disabled.\n */\n readonly disabled?: Signal<boolean>;\n /**\n * Callback fired when the checked state changes.\n */\n readonly onCheckedChange?: (checked: boolean) => void;\n /**\n * Callback fired when the indeterminate state changes.\n */\n readonly onIndeterminateChange?: (indeterminate: boolean) => void;\n}\n\nexport const [NgpCheckboxStateToken, ngpCheckbox, injectCheckboxState, provideCheckboxState] =\n createPrimitive(\n 'NgpCheckbox',\n ({\n id = signal(uniqueId('ngp-checkbox')),\n checked: _checked = signal<boolean | undefined>(undefined),\n defaultChecked: _defaultChecked,\n indeterminate: _indeterminate = signal(false),\n disabled: _disabled = signal(false),\n onCheckedChange,\n onIndeterminateChange,\n }: NgpCheckboxProps): NgpCheckboxState => {\n const element = injectElementRef();\n const defaultChecked = controlled(_defaultChecked, false);\n const [checked, setChecked, checkedChange] = controlledState({\n value: _checked,\n defaultValue: defaultChecked,\n onChange: onCheckedChange,\n });\n const indeterminate = controlled(_indeterminate);\n const disabled = controlled(_disabled);\n const indeterminateChange = emitter<boolean>();\n const tabindex = computed(() => (disabled() ? -1 : 0));\n\n // Setup interactions and form control hooks\n ngpInteractions({ hover: true, press: true, focusVisible: true, disabled });\n ngpFormControl({ id, disabled });\n\n // Host bindings\n attrBinding(element, 'role', 'checkbox');\n attrBinding(element, 'aria-checked', () => (indeterminate() ? 'mixed' : checked()));\n dataBinding(element, 'data-checked', checked);\n dataBinding(element, 'data-indeterminate', indeterminate);\n attrBinding(element, 'aria-disabled', disabled);\n attrBinding(element, 'tabindex', () => tabindex().toString());\n\n // Event listeners\n listener(element, 'click', event => toggle(event));\n listener(element, 'keydown', (event: KeyboardEvent) => {\n if (event.key === 'Enter') {\n // According to WAI ARIA, checkboxes don't activate on enter keypress\n event.preventDefault();\n return;\n }\n\n if (event.key === ' ' || event.key === 'Spacebar') {\n toggle(event);\n }\n });\n\n function toggle(event?: Event): void {\n if (disabled()) {\n return;\n }\n\n // prevent this firing twice in cases where the label is clicked and the checkbox is clicked by the one event\n event?.preventDefault();\n\n const nextChecked = indeterminate() ? true : !checked();\n setChecked(nextChecked);\n\n // if the checkbox was indeterminate, it isn't anymore\n if (indeterminate()) {\n setIndeterminate(false);\n }\n }\n\n function setIndeterminate(value: boolean): void {\n indeterminate.set(value);\n onIndeterminateChange?.(value);\n indeterminateChange.emit(value);\n }\n\n function setDisabled(value: boolean): void {\n disabled.set(value);\n }\n\n return {\n id,\n checked: deprecatedSetter(checked, 'setChecked', setChecked),\n indeterminate: deprecatedSetter(indeterminate, 'setIndeterminate'),\n disabled: deprecatedSetter(disabled, 'setDisabled'),\n checkedChange,\n indeterminateChange: indeterminateChange.asObservable(),\n toggle,\n setChecked,\n setDefaultChecked: defaultChecked.set,\n setIndeterminate,\n setDisabled,\n } satisfies NgpCheckboxState;\n },\n );\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { Directive, booleanAttribute, input, output } from '@angular/core';\nimport { SetterOptions } from 'ng-primitives/state';\nimport { uniqueId } from 'ng-primitives/utils';\nimport { ngpCheckbox, provideCheckboxState } from './checkbox-state';\n\n/**\n * Apply the `ngpCheckbox` directive to an element to that represents the checkbox, such as a `button`.\n */\n@Directive({\n selector: '[ngpCheckbox]',\n providers: [provideCheckboxState({ inherit: false })],\n})\nexport class NgpCheckbox {\n /**\n * The id of the checkbox.\n * @internal\n */\n readonly id = input(uniqueId('ngp-checkbox'));\n\n /**\n * Defines whether the checkbox is checked.\n */\n readonly checked = input<boolean | undefined, BooleanInput>(undefined, {\n alias: 'ngpCheckboxChecked',\n transform: booleanAttribute,\n });\n\n /**\n * The default checked state for uncontrolled usage.\n * @default false\n */\n readonly defaultChecked = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxDefaultChecked',\n transform: booleanAttribute,\n });\n\n /**\n * The event that is emitted when the checkbox value changes.\n */\n readonly checkedChange = output<boolean>({\n alias: 'ngpCheckboxCheckedChange',\n });\n\n /**\n * Defines whether the checkbox is indeterminate.\n */\n readonly indeterminate = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxIndeterminate',\n transform: booleanAttribute,\n });\n\n /**\n * The event that is emitted when the indeterminate value changes.\n */\n readonly indeterminateChange = output<boolean>({\n alias: 'ngpCheckboxIndeterminateChange',\n });\n\n /**\n * Whether the checkbox is required.\n */\n readonly required = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxRequired',\n transform: booleanAttribute,\n });\n\n /**\n * Defines whether the checkbox is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxDisabled',\n transform: booleanAttribute,\n });\n\n /**\n * The state of the checkbox.\n */\n protected readonly state = ngpCheckbox({\n id: this.id,\n checked: this.checked,\n defaultChecked: this.defaultChecked,\n indeterminate: this.indeterminate,\n disabled: this.disabled,\n onCheckedChange: value => this.checkedChange.emit(value),\n onIndeterminateChange: value => this.indeterminateChange.emit(value),\n });\n\n toggle(event?: Event): void {\n this.state.toggle(event);\n }\n\n /**\n * Update the checked value.\n */\n setChecked(value: boolean, options?: SetterOptions): void {\n this.state.setChecked(value, options);\n }\n\n /**\n * Set the default checked state.\n */\n setDefaultChecked(value: boolean): void {\n this.state.setDefaultChecked(value);\n }\n\n /**\n * Update the indeterminate value.\n */\n setIndeterminate(value: boolean): void {\n this.state.setIndeterminate(value);\n }\n\n /**\n * Set the disabled value.\n */\n setDisabled(value: boolean): void {\n this.state.setDisabled(value);\n }\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":"ng-primitives-checkbox.mjs","sources":["../../../../packages/ng-primitives/checkbox/src/checkbox/checkbox-state.ts","../../../../packages/ng-primitives/checkbox/src/checkbox/checkbox.ts","../../../../packages/ng-primitives/checkbox/src/ng-primitives-checkbox.ts"],"sourcesContent":["import { computed, Signal, signal, WritableSignal } from '@angular/core';\nimport { ngpFormControl } from 'ng-primitives/form-field';\nimport { ngpInteractions } from 'ng-primitives/interactions';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport {\n attrBinding,\n controlled,\n controlledState,\n createPrimitive,\n dataBinding,\n deprecatedSetter,\n emitter,\n listener,\n SetterOptions,\n} from 'ng-primitives/state';\nimport { uniqueId } from 'ng-primitives/utils';\nimport { Observable } from 'rxjs';\n\n/**\n * Public state surface for the Checkbox primitive.\n */\nexport interface NgpCheckboxState {\n /**\n * The id of the checkbox.\n */\n readonly id: Signal<string>;\n /**\n * Whether the checkbox is checked.\n */\n readonly checked: WritableSignal<boolean>;\n /**\n * Whether the checkbox is indeterminate.\n */\n readonly indeterminate: WritableSignal<boolean>;\n /**\n * Whether the checkbox is disabled.\n */\n readonly disabled: WritableSignal<boolean>;\n /**\n * Emits when the checked state changes.\n */\n readonly checkedChange: Observable<boolean>;\n /**\n * Emits when the indeterminate state changes.\n */\n readonly indeterminateChange: Observable<boolean>;\n /**\n * Toggle the checkbox value.\n */\n toggle(event?: Event): void;\n /**\n * Update the checked value.\n */\n setChecked(value: boolean, options?: SetterOptions): void;\n /**\n * Set the default checked state.\n */\n setDefaultChecked(value: boolean): void;\n /**\n * Update the indeterminate value.\n */\n setIndeterminate(value: boolean): void;\n /**\n * Set the disabled value.\n */\n setDisabled(value: boolean): void;\n}\n\n/**\n * Inputs for configuring the Checkbox primitive.\n */\nexport interface NgpCheckboxProps {\n /**\n * The id of the checkbox.\n */\n readonly id?: Signal<string>;\n /**\n * Whether the checkbox is checked.\n */\n readonly checked?: Signal<boolean | undefined>;\n /**\n * The default checked state for uncontrolled usage.\n */\n readonly defaultChecked?: Signal<boolean>;\n /**\n * Whether the checkbox is indeterminate.\n */\n readonly indeterminate?: Signal<boolean>;\n /**\n * Whether the checkbox is disabled.\n */\n readonly disabled?: Signal<boolean>;\n /**\n * Callback fired when the checked state changes.\n */\n readonly onCheckedChange?: (checked: boolean) => void;\n /**\n * Callback fired when the indeterminate state changes.\n */\n readonly onIndeterminateChange?: (indeterminate: boolean) => void;\n}\n\nexport const [NgpCheckboxStateToken, ngpCheckbox, injectCheckboxState, provideCheckboxState] =\n createPrimitive(\n 'NgpCheckbox',\n ({\n id = signal(uniqueId('ngp-checkbox')),\n checked: _checked = signal<boolean | undefined>(undefined),\n defaultChecked: _defaultChecked,\n indeterminate: _indeterminate = signal(false),\n disabled: _disabled = signal(false),\n onCheckedChange,\n onIndeterminateChange,\n }: NgpCheckboxProps): NgpCheckboxState => {\n const element = injectElementRef();\n const defaultChecked = controlled(_defaultChecked, false);\n const [checked, setChecked, checkedChange] = controlledState({\n value: _checked,\n defaultValue: defaultChecked,\n onChange: onCheckedChange,\n });\n const indeterminate = controlled(_indeterminate);\n const disabled = controlled(_disabled);\n const indeterminateChange = emitter<boolean>();\n const tabindex = computed(() => (disabled() ? -1 : 0));\n\n // Setup interactions and form control hooks\n ngpInteractions({ hover: true, press: true, focusVisible: true, disabled });\n ngpFormControl({ id, disabled });\n\n // Host bindings\n attrBinding(element, 'role', 'checkbox');\n attrBinding(element, 'aria-checked', () => (indeterminate() ? 'mixed' : checked()));\n dataBinding(element, 'data-checked', checked);\n dataBinding(element, 'data-indeterminate', indeterminate);\n attrBinding(element, 'aria-disabled', disabled);\n attrBinding(element, 'tabindex', () => tabindex().toString());\n\n // Event listeners\n listener(element, 'click', event => toggle(event));\n listener(element, 'keydown', (event: KeyboardEvent) => {\n if (event.key === 'Enter') {\n // According to WAI ARIA, checkboxes don't activate on enter keypress\n event.preventDefault();\n return;\n }\n\n if (event.key === ' ' || event.key === 'Spacebar') {\n toggle(event);\n }\n });\n\n function toggle(event?: Event): void {\n if (disabled()) {\n return;\n }\n\n // prevent this firing twice in cases where the label is clicked and the checkbox is clicked by the one event\n event?.preventDefault();\n\n const nextChecked = indeterminate() ? true : !checked();\n setChecked(nextChecked);\n\n // if the checkbox was indeterminate, it isn't anymore\n if (indeterminate()) {\n setIndeterminate(false);\n }\n }\n\n function setIndeterminate(value: boolean): void {\n indeterminate.set(value);\n onIndeterminateChange?.(value);\n indeterminateChange.emit(value);\n }\n\n function setDisabled(value: boolean): void {\n disabled.set(value);\n }\n\n return {\n id,\n checked: deprecatedSetter(checked, 'setChecked', setChecked),\n indeterminate: deprecatedSetter(indeterminate, 'setIndeterminate'),\n disabled: deprecatedSetter(disabled, 'setDisabled'),\n checkedChange,\n indeterminateChange: indeterminateChange.asObservable(),\n toggle,\n setChecked,\n setDefaultChecked: defaultChecked.set,\n setIndeterminate,\n setDisabled,\n } satisfies NgpCheckboxState;\n },\n );\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { Directive, booleanAttribute, input, output } from '@angular/core';\nimport { SetterOptions } from 'ng-primitives/state';\nimport { uniqueId } from 'ng-primitives/utils';\nimport { ngpCheckbox, provideCheckboxState } from './checkbox-state';\n\n/**\n * Apply the `ngpCheckbox` directive to an element to that represents the checkbox, such as a `button`.\n */\n@Directive({\n selector: '[ngpCheckbox]',\n providers: [provideCheckboxState({ inherit: false })],\n})\nexport class NgpCheckbox {\n /**\n * The id of the checkbox.\n * @internal\n */\n readonly id = input(uniqueId('ngp-checkbox'));\n\n /**\n * Defines whether the checkbox is checked.\n */\n readonly checked = input<boolean | undefined, BooleanInput>(undefined, {\n alias: 'ngpCheckboxChecked',\n transform: booleanAttribute,\n });\n\n /**\n * The default checked state for uncontrolled usage.\n * @default false\n */\n readonly defaultChecked = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxDefaultChecked',\n transform: booleanAttribute,\n });\n\n /**\n * The event that is emitted when the checkbox value changes.\n */\n readonly checkedChange = output<boolean>({\n alias: 'ngpCheckboxCheckedChange',\n });\n\n /**\n * Defines whether the checkbox is indeterminate.\n */\n readonly indeterminate = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxIndeterminate',\n transform: booleanAttribute,\n });\n\n /**\n * The event that is emitted when the indeterminate value changes.\n */\n readonly indeterminateChange = output<boolean>({\n alias: 'ngpCheckboxIndeterminateChange',\n });\n\n /**\n * Whether the checkbox is required.\n */\n readonly required = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxRequired',\n transform: booleanAttribute,\n });\n\n /**\n * Defines whether the checkbox is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpCheckboxDisabled',\n transform: booleanAttribute,\n });\n\n /**\n * The state of the checkbox.\n */\n protected readonly state = ngpCheckbox({\n id: this.id,\n checked: this.checked,\n defaultChecked: this.defaultChecked,\n indeterminate: this.indeterminate,\n disabled: this.disabled,\n onCheckedChange: value => this.checkedChange.emit(value),\n onIndeterminateChange: value => this.indeterminateChange.emit(value),\n });\n\n toggle(event?: Event): void {\n this.state.toggle(event);\n }\n\n /**\n * Update the checked value.\n */\n setChecked(value: boolean, options?: SetterOptions): void {\n this.state.setChecked(value, options);\n }\n\n /**\n * Set the default checked state.\n */\n setDefaultChecked(value: boolean): void {\n this.state.setDefaultChecked(value);\n }\n\n /**\n * Update the indeterminate value.\n */\n setIndeterminate(value: boolean): void {\n this.state.setIndeterminate(value);\n }\n\n /**\n * Set the disabled value.\n */\n setDisabled(value: boolean): void {\n this.state.setDisabled(value);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|