@radix-ng/primitives 0.51.0 → 1.0.0-beta.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/fesm2022/radix-ng-primitives-accordion.mjs +105 -38
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +221 -129
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-arrow.mjs +20 -4
- package/fesm2022/radix-ng-primitives-arrow.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-aspect-ratio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-avatar.mjs +54 -61
- package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-button.mjs +123 -0
- package/fesm2022/radix-ng-primitives-button.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +378 -54
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +182 -81
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collection.mjs +40 -57
- package/fesm2022/radix-ng-primitives-collection.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-config.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-context-menu.mjs +140 -424
- package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-core.mjs +735 -744
- package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-cropper.mjs +1 -0
- package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-date-field.mjs +51 -45
- package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs +655 -327
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dismissable-layer.mjs +70 -46
- package/fesm2022/radix-ng-primitives-dismissable-layer.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-drawer.mjs +1059 -0
- package/fesm2022/radix-ng-primitives-drawer.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-field.mjs +363 -0
- package/fesm2022/radix-ng-primitives-field.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-fieldset.mjs +79 -0
- package/fesm2022/radix-ng-primitives-fieldset.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-focus-scope.mjs +23 -8
- package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-input.mjs +172 -0
- package/fesm2022/radix-ng-primitives-input.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-label.mjs +6 -6
- package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menu.mjs +1480 -344
- package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menubar.mjs +290 -162
- package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-meter.mjs +271 -0
- package/fesm2022/radix-ng-primitives-meter.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs +1052 -1553
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-number-field.mjs +1102 -367
- package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-pagination.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popover.mjs +978 -989
- package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popper.mjs +91 -41
- package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-portal.mjs +34 -10
- package/fesm2022/radix-ng-primitives-portal.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-presence.mjs +134 -246
- package/fesm2022/radix-ng-primitives-presence.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-preview-card.mjs +997 -0
- package/fesm2022/radix-ng-primitives-preview-card.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-progress.mjs +223 -84
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-radio.mjs +191 -51
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs +96 -50
- package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-select.mjs +791 -509
- package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-separator.mjs +12 -35
- package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-slider.mjs +969 -717
- package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-stepper.mjs +15 -19
- package/fesm2022/radix-ng-primitives-stepper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +125 -113
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs +381 -108
- package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-time-field.mjs +55 -46
- package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +121 -247
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle.mjs +98 -61
- package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toolbar.mjs +303 -92
- package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tooltip.mjs +690 -1071
- package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs +25 -66
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +1 -1
- package/meter/README.md +3 -0
- package/navigation-menu/README.md +2 -1
- package/package.json +31 -18
- package/portal/README.md +2 -0
- package/preview-card/README.md +3 -0
- package/schematics/collection.json +1 -0
- package/schematics/ng-add/index.d.ts +3 -2
- package/schematics/ng-add/index.js +62 -31
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/package-config.d.ts +4 -2
- package/schematics/ng-add/package-config.js +10 -2
- package/schematics/ng-add/package-config.js.map +1 -1
- package/schematics/ng-add/schema.d.ts +3 -0
- package/schematics/ng-add/schema.js +3 -0
- package/schematics/ng-add/schema.js.map +1 -0
- package/schematics/ng-add/schema.json +14 -0
- package/select/README.md +2 -0
- package/types/radix-ng-primitives-accordion.d.ts +48 -14
- package/types/radix-ng-primitives-alert-dialog.d.ts +95 -38
- package/types/radix-ng-primitives-arrow.d.ts +1 -1
- package/types/radix-ng-primitives-aspect-ratio.d.ts +1 -1
- package/types/radix-ng-primitives-avatar.d.ts +7 -11
- package/types/radix-ng-primitives-button.d.ts +73 -0
- package/types/radix-ng-primitives-calendar.d.ts +1 -2
- package/types/radix-ng-primitives-checkbox.d.ts +201 -32
- package/types/radix-ng-primitives-collapsible.d.ts +112 -39
- package/types/radix-ng-primitives-collection.d.ts +38 -34
- package/types/radix-ng-primitives-config.d.ts +1 -1
- package/types/radix-ng-primitives-context-menu.d.ts +60 -116
- package/types/radix-ng-primitives-core.d.ts +307 -236
- package/types/radix-ng-primitives-cropper.d.ts +2 -2
- package/types/radix-ng-primitives-date-field.d.ts +38 -23
- package/types/radix-ng-primitives-dialog.d.ts +282 -165
- package/types/radix-ng-primitives-dismissable-layer.d.ts +15 -7
- package/types/radix-ng-primitives-drawer.d.ts +448 -0
- package/types/radix-ng-primitives-editable.d.ts +1 -1
- package/types/radix-ng-primitives-field.d.ts +373 -0
- package/types/radix-ng-primitives-fieldset.d.ts +48 -0
- package/types/radix-ng-primitives-focus-scope.d.ts +13 -5
- package/types/radix-ng-primitives-input.d.ts +87 -0
- package/types/radix-ng-primitives-label.d.ts +0 -1
- package/types/radix-ng-primitives-menu.d.ts +572 -99
- package/types/radix-ng-primitives-menubar.d.ts +60 -50
- package/types/radix-ng-primitives-meter.d.ts +193 -0
- package/types/radix-ng-primitives-navigation-menu.d.ts +422 -340
- package/types/radix-ng-primitives-number-field.d.ts +405 -145
- package/types/radix-ng-primitives-pagination.d.ts +2 -2
- package/types/radix-ng-primitives-popover.d.ts +365 -351
- package/types/radix-ng-primitives-popper.d.ts +49 -9
- package/types/radix-ng-primitives-portal.d.ts +14 -6
- package/types/radix-ng-primitives-presence.d.ts +28 -76
- package/types/radix-ng-primitives-preview-card.d.ts +359 -0
- package/types/radix-ng-primitives-progress.d.ts +174 -48
- package/types/radix-ng-primitives-radio.d.ts +55 -25
- package/types/radix-ng-primitives-roving-focus.d.ts +30 -21
- package/types/radix-ng-primitives-select.d.ts +475 -177
- package/types/radix-ng-primitives-separator.d.ts +7 -32
- package/types/radix-ng-primitives-slider.d.ts +315 -201
- package/types/radix-ng-primitives-stepper.d.ts +5 -7
- package/types/radix-ng-primitives-switch.d.ts +86 -71
- package/types/radix-ng-primitives-tabs.d.ts +213 -79
- package/types/radix-ng-primitives-time-field.d.ts +42 -27
- package/types/radix-ng-primitives-toggle-group.d.ts +85 -164
- package/types/radix-ng-primitives-toggle.d.ts +43 -53
- package/types/radix-ng-primitives-toolbar.d.ts +163 -38
- package/types/radix-ng-primitives-tooltip.d.ts +347 -384
- package/types/radix-ng-primitives-visually-hidden.d.ts +19 -19
- package/dropdown-menu/README.md +0 -1
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +0 -581
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-hover-card.mjs +0 -1238
- package/fesm2022/radix-ng-primitives-hover-card.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-select2.mjs +0 -897
- package/fesm2022/radix-ng-primitives-select2.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-tooltip2.mjs +0 -735
- package/fesm2022/radix-ng-primitives-tooltip2.mjs.map +0 -1
- package/hover-card/README.md +0 -3
- package/select2/README.md +0 -3
- package/tooltip2/README.md +0 -3
- package/types/radix-ng-primitives-dropdown-menu.d.ts +0 -171
- package/types/radix-ng-primitives-hover-card.d.ts +0 -471
- package/types/radix-ng-primitives-select2.d.ts +0 -511
- package/types/radix-ng-primitives-tooltip2.d.ts +0 -325
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"radix-ng-primitives-tooltip2.mjs","sources":["../../../packages/primitives/tooltip2/src/tooltip-trigger.ts","../../../packages/primitives/tooltip2/src/tooltip.config.ts","../../../packages/primitives/tooltip2/src/utils.ts","../../../packages/primitives/tooltip2/src/tooltip.ts","../../../packages/primitives/tooltip2/src/tooltip-arrow.ts","../../../packages/primitives/tooltip2/src/tooltip-content.ts","../../../packages/primitives/tooltip2/src/useGraceArea.ts","../../../packages/primitives/tooltip2/src/tooltip-content-wrapper.ts","../../../packages/primitives/tooltip2/src/tooltip-portal.ts","../../../packages/primitives/tooltip2/src/tooltip-portal-presence.ts","../../../packages/primitives/tooltip2/index.ts","../../../packages/primitives/tooltip2/radix-ng-primitives-tooltip2.ts"],"sourcesContent":["import { Directive, ElementRef, inject, input, signal } from '@angular/core';\nimport { RdxPopperAnchor } from '@radix-ng/primitives/popper';\nimport { injectRdxTooltipContext } from './tooltip';\n\n@Directive({\n selector: '[rdxTooltipTrigger]',\n hostDirectives: [RdxPopperAnchor],\n host: {\n 'data-grace-area-trigger': \"''\",\n '[attr.aria-describedby]': 'rootContext.isOpen() ? rootContext.contentId : undefined',\n '[attr.data-state]': 'rootContext.state()',\n '(pointermove)': 'rootContext.isDisabled() ? undefined : handlePointerMove($event)',\n '(pointerleave)': 'rootContext.isDisabled() ? undefined : handlePointerLeave()',\n '(pointerdown)': 'rootContext.isDisabled() ? undefined : handlePointerDown($event)',\n '(focus)': 'rootContext.isDisabled() ? undefined : handleFocus($event)',\n '(blur)': 'rootContext.isDisabled() ? undefined : handleBlur()',\n '(click)': 'rootContext.isDisabled() ? undefined : handleClick()'\n }\n})\nexport class RdxTooltipTrigger {\n protected readonly rootContext = injectRdxTooltipContext()!;\n readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n readonly userOnPointerDown = input<(event: PointerEvent) => void | boolean | Promise<void | boolean> | undefined>(\n undefined,\n {\n alias: 'rdxOnPointerDown'\n }\n );\n\n protected readonly isPointerDown = signal(false);\n\n private readonly hasPointerMoveOpened = signal(false);\n\n protected handleFocus(event: FocusEvent) {\n if (this.rootContext.isControlledState()) return;\n if (this.isPointerDown()) return;\n\n if (this.rootContext.ignoreNonKeyboardFocus() && !(event.target as HTMLElement).matches?.(':focus-visible')) {\n return;\n }\n\n this.rootContext.open();\n }\n\n protected handleBlur() {\n if (this.rootContext.isControlledState()) return;\n this.rootContext.close();\n }\n\n protected handleClick() {\n if (this.rootContext.isControlledState()) return;\n if (!this.rootContext.disableClosingTrigger()) {\n this.rootContext.close();\n }\n }\n\n protected handlePointerMove(event: PointerEvent) {\n if (event.pointerType === 'touch') return;\n if (this.rootContext.isControlledState()) return;\n if (!this.hasPointerMoveOpened() && !this.rootContext.isPointerInTransit()) {\n this.rootContext.onTriggerEnter();\n this.hasPointerMoveOpened.set(true);\n }\n }\n\n protected handlePointerLeave() {\n if (this.rootContext.isControlledState()) return;\n this.rootContext.onTriggerLeave();\n this.hasPointerMoveOpened.set(false);\n }\n\n protected async handlePointerDown(event: PointerEvent) {\n const user = this.userOnPointerDown();\n let result: unknown;\n\n if (user) {\n result = user(event);\n if (result instanceof Promise) result = await result;\n }\n\n if (event.defaultPrevented || result === false) return;\n\n if (this.rootContext.isOpen() && !this.rootContext.disableClosingTrigger()) {\n this.rootContext.close();\n }\n\n this.isPointerDown.set(true);\n\n const handlePointerUp = () => {\n setTimeout(() => this.isPointerDown.set(false), 1);\n };\n\n document.addEventListener('pointerup', handlePointerUp, { once: true });\n }\n}\n","import { inject, InjectionToken, Provider } from '@angular/core';\n\nexport type RdxTooltipConfig = {\n /**\n * The duration from when the pointer enters the trigger until the tooltip gets opened.\n * @defaultValue 700\n */\n delayDuration?: number;\n /**\n * How much time a user has to enter another trigger without incurring a delay again.\n * @defaultValue 300\n */\n skipDelayDuration?: number;\n /**\n * When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.\n * @defaultValue false\n */\n disableHoverableContent?: boolean;\n /**\n * When `true`, clicking on trigger will not close the content.\n * @defaultValue false\n */\n disableClosingTrigger?: boolean;\n\n /**\n * How long to wait before closing the tooltip. Specified in milliseconds.\n */\n closeDelay?: number;\n};\n\nexport const defaultTooltipConfig: RdxTooltipConfig = {\n delayDuration: 700,\n skipDelayDuration: 300,\n disableHoverableContent: false,\n disableClosingTrigger: false,\n closeDelay: 0\n};\n\nexport const RdxTooltipDefaultsToken = new InjectionToken<RdxTooltipConfig>('RdxTooltipDefaults Token');\n\nexport function provideRdxTooltipConfig(config: Partial<RdxTooltipConfig>): Provider[] {\n return [\n {\n provide: RdxTooltipDefaultsToken,\n useValue: { ...defaultTooltipConfig, ...config }\n }\n ];\n}\n\nexport function injectRdxTooltipConfig(): RdxTooltipConfig {\n return inject(RdxTooltipDefaultsToken, { optional: true }) ?? defaultTooltipConfig;\n}\n","import { DestroyRef } from '@angular/core';\n\nexport type TimeoutController = {\n start: () => void;\n stop: () => void;\n isPending: () => boolean;\n};\n\nexport function useTimeoutFn(\n cb: () => void,\n delay: number | (() => number),\n options: { immediate?: boolean } = {},\n destroyRef?: DestroyRef\n): TimeoutController {\n let id: number | null = null;\n\n const resolveDelay = () => (typeof delay === 'function' ? (delay as () => number)() : delay);\n\n const stop = () => {\n if (id != null) {\n clearTimeout(id);\n id = null;\n }\n };\n\n const start = () => {\n stop();\n const ms = resolveDelay();\n if (ms <= 0) {\n queueMicrotask(cb);\n return;\n }\n id = window.setTimeout(() => {\n id = null;\n cb();\n }, ms);\n };\n\n if (options.immediate) {\n start();\n }\n if (destroyRef) {\n destroyRef.onDestroy(stop);\n }\n\n return { start, stop, isPending: () => id != null };\n}\n","import { _IdGenerator } from '@angular/cdk/a11y';\nimport { BooleanInput } from '@angular/cdk/coercion';\nimport {\n booleanAttribute,\n computed,\n contentChild,\n DestroyRef,\n Directive,\n inject,\n input,\n model,\n numberAttribute,\n signal\n} from '@angular/core';\nimport { createContext, watch } from '@radix-ng/primitives/core';\nimport { RdxPopper } from '@radix-ng/primitives/popper';\nimport { RdxTooltipTrigger } from './tooltip-trigger';\nimport { injectRdxTooltipConfig } from './tooltip.config';\nimport { useTimeoutFn } from './utils';\n\nconst context = () => {\n const context = inject(RdxTooltip);\n\n return {\n isOpen: context.open,\n state: context.state,\n contentId: inject(_IdGenerator).getId('rdx-tooltip-content-'),\n trigger: context.trigger,\n isDisabled: context.disabled,\n ignoreNonKeyboardFocus: context.ignoreNonKeyboardFocus,\n disableClosingTrigger: context.disableClosingTrigger,\n disableHoverableContent: context.disableHoverableContent,\n isPointerInTransit: context.isPointerInTransit.asReadonly(),\n isControlledState: context.isControlledState,\n open() {\n context.handleOpen();\n },\n close() {\n context.handleClose();\n },\n onTriggerEnter() {\n if (context.isOpenDelayed()) {\n context.handleDelayedOpen();\n } else {\n context.handleOpen();\n }\n },\n onTriggerLeave() {\n if (context.disableHoverableContent()) {\n context.handleClose();\n } else {\n // Clear the timer in case the pointer leaves the trigger before the tooltip is opened.\n context.clearTimer();\n }\n }\n };\n};\n\nexport type RdxTooltipContext = ReturnType<typeof context>;\n\nexport const [injectRdxTooltipContext, provideRdxTooltipContext] =\n createContext<RdxTooltipContext>('RdxTooltipContext');\n\n@Directive({\n selector: '[rdxTooltip]',\n exportAs: 'rdxTooltip',\n providers: [provideRdxTooltipContext(context)],\n hostDirectives: [RdxPopper]\n})\nexport class RdxTooltip {\n private readonly defaultConfig = injectRdxTooltipConfig();\n private readonly destroyRef = inject(DestroyRef);\n\n /**\n * Whether the tooltip is currently open.\n */\n readonly open = model(false);\n\n /**\n * The duration from when the pointer enters the trigger until the tooltip gets opened.\n */\n readonly delayDuration = input(this.defaultConfig.delayDuration, {\n transform: numberAttribute\n });\n\n /**\n * How much time a user has to enter another trigger without incurring a delay again.\n * @defaultValue 300\n */\n readonly skipDelayDuration = input(this.defaultConfig.skipDelayDuration, { transform: numberAttribute });\n\n /**\n * When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.\n */\n readonly disableHoverableContent = input(this.defaultConfig.disableHoverableContent, {\n transform: booleanAttribute\n });\n\n /**\n * When `true`, disable tooltip\n * @defaultValue false\n */\n readonly disabled = input(false, { transform: booleanAttribute });\n\n /**\n * How long to wait before closing the tooltip. Specified in milliseconds.\n */\n readonly closeDelay = input(this.defaultConfig.closeDelay, { transform: numberAttribute });\n\n /**\n * When `true`, clicking on trigger will not close the content.\n * @defaultValue false\n */\n readonly disableClosingTrigger = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * Prevent the tooltip from opening if the focus did not come from\n * the keyboard by matching against the `:focus-visible` selector.\n * This is useful if you want to avoid opening it when switching\n * browser tabs or closing a dialog.\n * @defaultValue false\n */\n readonly ignoreNonKeyboardFocus = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * To render a controlled tooltip\n */\n readonly isControlledState = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n readonly isPointerInTransit = signal(false);\n readonly isOpenDelayed = signal(true);\n\n private readonly wasOpenDelayed = signal(false);\n\n readonly state = computed(() => {\n if (!this.open()) {\n return 'closed';\n }\n\n return this.wasOpenDelayed() ? 'delayed-open' : 'instant-open';\n });\n\n readonly trigger = contentChild.required(RdxTooltipTrigger);\n\n readonly timerProvider = useTimeoutFn(\n () => {\n this.isOpenDelayed.set(true);\n },\n () => this.skipDelayDuration()!,\n { immediate: false },\n this.destroyRef\n );\n\n private readonly timer = useTimeoutFn(\n () => {\n this.wasOpenDelayed.set(true);\n this.open.set(true);\n },\n () => this.delayDuration()!,\n { immediate: false },\n this.destroyRef\n );\n\n readonly startTimer = () => this.timer.start();\n readonly clearTimer = () => this.timer.stop();\n\n constructor() {\n watch([this.open], ([isOpen]) => {\n if (isOpen) {\n this.timerProvider.stop();\n this.isOpenDelayed.set(false);\n } else {\n this.timerProvider.start();\n }\n });\n }\n\n handleOpen() {\n this.clearTimer();\n this.wasOpenDelayed.set(false);\n this.open.set(true);\n }\n\n handleClose() {\n this.clearTimer();\n\n window.setTimeout(() => {\n this.open.set(false);\n }, this.closeDelay());\n }\n\n handleDelayedOpen() {\n this.startTimer();\n }\n}\n","import { Directive, inject } from '@angular/core';\nimport { RdxPopperArrow } from '@radix-ng/primitives/popper';\nimport { RdxVisuallyHiddenDirective } from '@radix-ng/primitives/visually-hidden';\n\n@Directive({\n selector: '[rdxTooltipArrow]',\n hostDirectives: [RdxPopperArrow],\n host: {\n '[hidden]': 'isVisuallyHidden'\n }\n})\nexport class RdxTooltipArrow {\n protected readonly isVisuallyHidden = !!inject(RdxVisuallyHiddenDirective, {\n optional: true\n });\n}\n","import { Directive } from '@angular/core';\nimport { RdxPopperContent } from '@radix-ng/primitives/popper';\nimport { injectRdxTooltipContext } from './tooltip';\n\n@Directive({\n selector: '[rdxTooltipContent]',\n hostDirectives: [RdxPopperContent],\n host: {\n role: 'tooltip',\n '[id]': 'rootContext.contentId'\n }\n})\nexport class RdxTooltipContent {\n protected rootContext = injectRdxTooltipContext()!;\n}\n","import { effect, signal, type Signal, type WritableSignal } from '@angular/core';\nimport { Side } from '@radix-ng/primitives/popper';\n\nfunction createSignalEvent<T = void>() {\n const handlers = new Set<(v: T) => void>();\n return {\n on(cb: (v: T) => void): () => void {\n handlers.add(cb);\n return () => handlers.delete(cb);\n },\n emit(v: T extends void ? never : T extends undefined ? never : T): void {\n handlers.forEach((h) => h(v));\n },\n emitVoid(): void {\n handlers.forEach((h) => h(undefined as unknown as T));\n },\n clear() {\n handlers.clear();\n }\n };\n}\n\n/**\n *\n * @param triggerEl Signal<HTMLElement | null | undefined>\n * @param containerEl Signal<HTMLElement | null | undefined>\n * @param resetMs\n */\nexport function useGraceArea(\n triggerEl: Signal<HTMLElement | null | undefined>,\n containerEl: Signal<HTMLElement | null | undefined>,\n resetMs = 300\n) {\n const isPointerInTransit: WritableSignal<boolean> = signal(false);\n const pointerExit = createSignalEvent<void>();\n\n let pointerGraceArea: Polygon | null = null;\n let resetTimer: number | null = null;\n\n function armInTransitAutoReset() {\n if (resetTimer !== null) window.clearTimeout(resetTimer);\n resetTimer = window.setTimeout(() => {\n isPointerInTransit.set(false);\n resetTimer = null;\n }, resetMs);\n }\n\n function clearGraceArea() {\n pointerGraceArea = null;\n isPointerInTransit.set(false);\n if (resetTimer !== null) {\n window.clearTimeout(resetTimer);\n resetTimer = null;\n }\n }\n\n function createGraceArea(event: PointerEvent, hoverTarget: HTMLElement) {\n const currentTarget = event.currentTarget as HTMLElement;\n const exitPoint = { x: event.clientX, y: event.clientY };\n const exitSide = getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());\n const paddedExitPoints = getPaddedExitPoints(exitPoint, exitSide);\n const hoverTargetPoints = getPointsFromRect(hoverTarget.getBoundingClientRect());\n pointerGraceArea = getHull([...paddedExitPoints, ...hoverTargetPoints]);\n isPointerInTransit.set(true);\n armInTransitAutoReset();\n }\n\n function trackPointerGrace(event: PointerEvent) {\n if (!pointerGraceArea) return;\n if (!(event.target instanceof HTMLElement)) return;\n\n const trigger = triggerEl();\n const container = containerEl();\n if (!trigger || !container) return;\n\n const target = event.target;\n const pointerPosition = { x: event.clientX, y: event.clientY };\n const hasEnteredTarget = trigger.contains(target) || container.contains(target);\n const isOutsideGrace = !isPointInPolygon(pointerPosition, pointerGraceArea);\n const isAnotherGraceAreaTrigger = !!target.closest('[data-grace-area-trigger]');\n\n if (hasEnteredTarget) {\n clearGraceArea();\n } else if (isOutsideGrace || isAnotherGraceAreaTrigger) {\n clearGraceArea();\n pointerExit.emitVoid();\n }\n }\n\n effect((onCleanupFn) => {\n const trigger = triggerEl();\n const container = containerEl();\n\n onCleanupFn(() => {\n const doc = trigger?.ownerDocument;\n trigger?.removeEventListener('pointerleave', onTriggerLeave as EventListener);\n container?.removeEventListener('pointerleave', onContainerLeave as EventListener);\n doc?.removeEventListener('pointermove', trackPointerGrace as EventListener);\n trigger?.removeAttribute('data-grace-area-trigger');\n clearGraceArea();\n });\n\n if (!trigger || !container) return;\n\n trigger.setAttribute('data-grace-area-trigger', '');\n\n const onTriggerLeave = (e: PointerEvent) => createGraceArea(e, container);\n const onContainerLeave = (e: PointerEvent) => createGraceArea(e, trigger);\n\n trigger.addEventListener('pointerleave', onTriggerLeave as EventListener, { passive: true });\n container.addEventListener('pointerleave', onContainerLeave as EventListener, { passive: true });\n trigger.ownerDocument.addEventListener('pointermove', trackPointerGrace as EventListener, { passive: true });\n });\n\n return {\n isPointerInTransit: isPointerInTransit.asReadonly(),\n onPointerExit: pointerExit.on\n };\n}\n\ninterface Point {\n x: number;\n y: number;\n}\ntype Polygon = Point[];\n\nfunction getExitSideFromRect(point: Point, rect: DOMRect): Side {\n const top = Math.abs(rect.top - point.y);\n const bottom = Math.abs(rect.bottom - point.y);\n const right = Math.abs(rect.right - point.x);\n const left = Math.abs(rect.left - point.x);\n\n switch (Math.min(top, bottom, right, left)) {\n case left:\n return 'left';\n case right:\n return 'right';\n case top:\n return 'top';\n case bottom:\n return 'bottom';\n default:\n throw new Error('unreachable');\n }\n}\n\nfunction getPaddedExitPoints(exitPoint: Point, exitSide: Side, padding = 5) {\n const pts: Point[] = [];\n switch (exitSide) {\n case 'top':\n pts.push(\n { x: exitPoint.x - padding, y: exitPoint.y + padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case 'bottom':\n pts.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y - padding }\n );\n break;\n case 'left':\n pts.push(\n { x: exitPoint.x + padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case 'right':\n pts.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x - padding, y: exitPoint.y + padding }\n );\n break;\n }\n return pts;\n}\n\nfunction getPointsFromRect(rect: DOMRect) {\n const { top, right, bottom, left } = rect;\n return [\n { x: left, y: top },\n { x: right, y: top },\n { x: right, y: bottom },\n { x: left, y: bottom }\n ];\n}\n\nfunction isPointInPolygon(point: Point, polygon: Polygon) {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const xi = polygon[i].x,\n yi = polygon[i].y;\n const xj = polygon[j].x,\n yj = polygon[j].y;\n const intersect = yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\n\nfunction getHull<P extends Point>(points: Readonly<Array<P>>): Array<P> {\n const newPoints: Array<P> = points.slice() as Array<P>;\n newPoints.sort((a, b) => a.x - b.x || a.y - b.y);\n return getHullPresorted(newPoints);\n}\n\nfunction getHullPresorted<P extends Point>(points: Readonly<Array<P>>): Array<P> {\n if (points.length <= 1) return points.slice() as Array<P>;\n\n const upper: Array<P> = [];\n for (let i = 0; i < points.length; i++) {\n const p = points[i]!;\n while (upper.length >= 2) {\n const q = upper[upper.length - 1]!;\n const r = upper[upper.length - 2]!;\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) upper.pop();\n else break;\n }\n upper.push(p);\n }\n upper.pop();\n\n const lower: Array<P> = [];\n for (let i = points.length - 1; i >= 0; i--) {\n const p = points[i]!;\n while (lower.length >= 2) {\n const q = lower[lower.length - 1]!;\n const r = lower[lower.length - 2]!;\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) lower.pop();\n else break;\n }\n lower.push(p);\n }\n lower.pop();\n\n if (upper.length === 1 && lower.length === 1 && upper[0]!.x === lower[0]!.x && upper[0]!.y === lower[0]!.y) {\n return upper;\n } else {\n return upper.concat(lower);\n }\n}\n","import {\n afterNextRender,\n booleanAttribute,\n DestroyRef,\n Directive,\n ElementRef,\n inject,\n input,\n numberAttribute,\n signal\n} from '@angular/core';\nimport { outputFromObservable, outputToObservable } from '@angular/core/rxjs-interop';\nimport { RdxDismissableLayer } from '@radix-ng/primitives/dismissable-layer';\nimport { Align, RdxPopperContentWrapper, Side } from '@radix-ng/primitives/popper';\nimport { injectRdxTooltipContext } from './tooltip';\nimport { useGraceArea } from './useGraceArea';\n\n@Directive({\n selector: '[rdxTooltipContentWrapper]',\n hostDirectives: [\n RdxDismissableLayer,\n {\n directive: RdxPopperContentWrapper,\n inputs: [\n 'side',\n 'sideOffset',\n 'align',\n 'alignOffset',\n 'arrowPadding',\n 'avoidCollisions',\n 'collisionBoundary',\n 'collisionPadding',\n 'sticky',\n 'hideWhenDetached',\n 'updatePositionStrategy'\n ]\n }\n ],\n host: {\n '[attr.data-state]': 'rootContext.state()',\n // re-namespace exposed content custom properties\n '[style]': `{\n '--radix-tooltip-content-transform-origin': 'var(--radix-popper-transform-origin)',\n '--radix-tooltip-content-available-width': 'var(--radix-popper-available-width)',\n '--radix-tooltip-content-available-height': 'var(--radix-popper-available-height)',\n '--radix-tooltip-trigger-width': 'var(--radix-popper-anchor-width)',\n '--radix-tooltip-trigger-height': 'var(--radix-popper-anchor-height)',\n }`\n }\n})\nexport class RdxTooltipContentWrapper {\n protected readonly rootContext = injectRdxTooltipContext()!;\n private readonly destroyRef = inject(DestroyRef);\n private readonly dismissableLayer = inject(RdxDismissableLayer);\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /**\n * The preferred side of the anchor to render against when open.\n * Will be reversed when collisions occur and avoidCollisions is enabled.\n */\n readonly side = input<Side>('bottom');\n\n /**\n * The distance in pixels from the anchor.\n */\n readonly sideOffset = input(0, { transform: numberAttribute });\n\n /**\n * The preferred alignment against the anchor. May change when collisions occur.\n */\n readonly align = input<Align>('center');\n\n /**\n * An offset in pixels from the `start` or `end` alignment options.\n */\n readonly alignOffset = input(0, { transform: numberAttribute });\n\n /**\n * The padding between the arrow and the edges of the content.\n * If your content has border-radius, this will prevent it from overflowing the corners.\n */\n readonly arrowPadding = input(0, { transform: numberAttribute });\n\n /**\n * When `true`, overrides the `side` and `align` preferences to prevent collisions with boundary edges.\n */\n readonly avoidCollisions = input(true, { transform: booleanAttribute });\n\n /**\n * The element used as the collision boundary.\n * By default this is the viewport, though you can provide additional element(s) to be included in this check.\n */\n readonly collisionBoundary = input<ElementRef<HTMLElement> | ElementRef<HTMLElement>[]>();\n\n /**\n * The distance in pixels from the boundary edges where collision detection should occur.\n * Accepts a number (same for all sides), or a partial padding object, for example: `{ top: 20, left: 20 }`.\n */\n readonly collisionPadding = input<number | Partial<Record<Side, number>>>(0);\n\n /**\n * The sticky behavior on the `align` axis.\n * - `partial` will keep the content in the boundary as long as the trigger is at least partially in the boundary\n * - `always` will keep the content in the boundary regardless.\n */\n readonly sticky = input<'partial' | 'always'>('partial');\n\n /**\n * Whether to hide the content when the trigger becomes fully occluded.\n */\n readonly hideWhenDetached = input(false, { transform: booleanAttribute });\n\n /**\n * Whether to update the position of the floating element on every animation frame if required.\n */\n readonly updatePositionStrategy = input<'optimized' | 'always'>('always');\n\n /**\n * Emits when the element is placed.\n */\n readonly placed = outputFromObservable(outputToObservable(inject(RdxPopperContentWrapper).placed));\n\n /**\n * Event handler called when the escape key is down.\n * Can be prevented.\n */\n readonly escapeKeyDown = outputFromObservable(outputToObservable(this.dismissableLayer.escapeKeyDown));\n\n /**\n * Event handler called when a `pointerdown` event happens outside of the `DismissableLayer`.\n * Can be prevented.\n */\n readonly pointerDownOutside = outputFromObservable(outputToObservable(this.dismissableLayer.pointerDownOutside));\n\n private readonly triggerEl = signal<HTMLElement | null>(null);\n private readonly containerEl = signal<HTMLElement | null>(null);\n\n private readonly graceArea = useGraceArea(this.triggerEl, this.containerEl, 300);\n\n private readonly afterNextRender = afterNextRender(() => {\n this.triggerEl.set(this.rootContext.trigger().elementRef.nativeElement);\n this.containerEl.set(this.elementRef.nativeElement);\n\n const handleScroll = (event: Event) => {\n const target = event.target as HTMLElement;\n\n if (target?.contains(this.rootContext.trigger().elementRef.nativeElement)) {\n this.rootContext.close();\n }\n };\n\n window.addEventListener('scroll', handleScroll, { capture: true });\n\n this.destroyRef.onDestroy(() => {\n window.removeEventListener('scroll', handleScroll, { capture: true });\n });\n\n this.graceArea.onPointerExit(() => {\n if (this.rootContext.disableHoverableContent()) return;\n this.rootContext.close();\n });\n });\n\n constructor() {\n this.dismissableLayer.focusOutside.subscribe((e) => e.preventDefault());\n\n this.dismissableLayer.dismiss.subscribe(() => this.rootContext.close());\n\n this.dismissableLayer.pointerDownOutside.subscribe((event) => {\n if (\n this.rootContext.disableClosingTrigger() &&\n this.rootContext.trigger().elementRef.nativeElement.contains(event.target as HTMLElement)\n )\n event.preventDefault();\n });\n }\n}\n","import { Directive, ElementRef, input } from '@angular/core';\nimport { RdxPortal } from '@radix-ng/primitives/portal';\n\n@Directive({\n selector: '[rdxTooltipPortal]',\n hostDirectives: [\n {\n directive: RdxPortal,\n inputs: ['container']\n }\n ]\n})\nexport class RdxTooltipPortal {\n readonly container = input.required<ElementRef<HTMLElement>>();\n}\n","import { Directive } from '@angular/core';\nimport { provideRdxPresenceContext, RdxPresenceDirective } from '@radix-ng/primitives/presence';\nimport { injectRdxTooltipContext } from './tooltip';\n\n@Directive({\n selector: 'ng-template[rdxTooltipPortalPresence]',\n hostDirectives: [RdxPresenceDirective],\n providers: [\n provideRdxPresenceContext(() => {\n const context = injectRdxTooltipContext()!;\n\n return { present: context.isOpen };\n })\n ]\n})\nexport class RdxTooltipPortalPresence {}\n","import { RdxTooltip } from './src/tooltip';\nimport { RdxTooltipArrow } from './src/tooltip-arrow';\nimport { RdxTooltipContent } from './src/tooltip-content';\nimport { RdxTooltipContentWrapper } from './src/tooltip-content-wrapper';\nimport { RdxTooltipPortal } from './src/tooltip-portal';\nimport { RdxTooltipPortalPresence } from './src/tooltip-portal-presence';\nimport { RdxTooltipTrigger } from './src/tooltip-trigger';\n\nexport * from './src/tooltip';\nexport * from './src/tooltip-arrow';\nexport * from './src/tooltip-content';\nexport * from './src/tooltip-content-wrapper';\nexport * from './src/tooltip-portal';\nexport * from './src/tooltip-portal-presence';\nexport * from './src/tooltip-trigger';\nexport * from './src/tooltip.config';\n\nexport const tooltipImports = [\n RdxTooltip,\n RdxTooltipArrow,\n RdxTooltipContent,\n RdxTooltipContentWrapper,\n RdxTooltipPortal,\n RdxTooltipTrigger,\n RdxTooltipPortalPresence\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2"],"mappings":"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"}
|
package/hover-card/README.md
DELETED
package/select2/README.md
DELETED
package/tooltip2/README.md
DELETED
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { TemplateRef, EventEmitter, AfterContentInit, OnDestroy } from '@angular/core';
|
|
3
|
-
import { BooleanInput } from '@angular/cdk/coercion';
|
|
4
|
-
import { CdkMenuTrigger, CdkMenuItem, CdkMenu } from '@angular/cdk/menu';
|
|
5
|
-
import { ConnectedPosition, OverlayRef } from '@angular/cdk/overlay';
|
|
6
|
-
import { Subject } from 'rxjs';
|
|
7
|
-
import * as i1 from '@radix-ng/primitives/menu';
|
|
8
|
-
|
|
9
|
-
declare enum DropdownSide {
|
|
10
|
-
Top = "top",
|
|
11
|
-
Right = "right",
|
|
12
|
-
Bottom = "bottom",
|
|
13
|
-
Left = "left"
|
|
14
|
-
}
|
|
15
|
-
declare enum DropdownAlign {
|
|
16
|
-
Start = "start",
|
|
17
|
-
Center = "center",
|
|
18
|
-
End = "end"
|
|
19
|
-
}
|
|
20
|
-
declare const mapRdxAlignToCdkPosition: {
|
|
21
|
-
start: string;
|
|
22
|
-
center: string;
|
|
23
|
-
end: string;
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* @group Components
|
|
27
|
-
*/
|
|
28
|
-
declare class RdxDropdownMenuTriggerDirective extends CdkMenuTrigger {
|
|
29
|
-
readonly disabled: i0.InputSignalWithTransform<boolean, BooleanInput>;
|
|
30
|
-
set rdxDropdownMenuTrigger(value: TemplateRef<unknown> | null);
|
|
31
|
-
/**
|
|
32
|
-
* The preferred side of the trigger to render against when open.
|
|
33
|
-
* Will be reversed when collisions occur and `avoidCollisions` is enabled.
|
|
34
|
-
*
|
|
35
|
-
* @group Props
|
|
36
|
-
* @defaultValue 'bottom'
|
|
37
|
-
*/
|
|
38
|
-
set side(value: DropdownSide);
|
|
39
|
-
get side(): DropdownSide;
|
|
40
|
-
private _side;
|
|
41
|
-
/**
|
|
42
|
-
* The preferred alignment against the trigger. May change when collisions occur.
|
|
43
|
-
*
|
|
44
|
-
* @group Props
|
|
45
|
-
* @defaultValue 'center'
|
|
46
|
-
*/
|
|
47
|
-
set align(value: DropdownAlign);
|
|
48
|
-
get align(): DropdownAlign;
|
|
49
|
-
private _align;
|
|
50
|
-
/**
|
|
51
|
-
* The distance in pixels from the trigger.
|
|
52
|
-
* @group Props
|
|
53
|
-
* @defaultValue 0
|
|
54
|
-
*/
|
|
55
|
-
set sideOffset(value: number);
|
|
56
|
-
get sideOffset(): number;
|
|
57
|
-
private _sideOffset;
|
|
58
|
-
/**
|
|
59
|
-
* An offset in pixels from the "start" or "end" alignment options.
|
|
60
|
-
* @group Props
|
|
61
|
-
* @defaultValue 0
|
|
62
|
-
*/
|
|
63
|
-
set alignOffset(value: number);
|
|
64
|
-
get alignOffset(): number;
|
|
65
|
-
private _alignOffset;
|
|
66
|
-
onOpenChange: i0.OutputRef<void>;
|
|
67
|
-
get isVertical(): boolean;
|
|
68
|
-
get defaultPosition(): ConnectedPosition;
|
|
69
|
-
constructor();
|
|
70
|
-
onPointerDown($event: MouseEvent): void;
|
|
71
|
-
getOverlayRef(): OverlayRef | null;
|
|
72
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuTriggerDirective, never>;
|
|
73
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuTriggerDirective, "[rdxDropdownMenuTrigger]", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "rdxDropdownMenuTrigger": { "alias": "rdxDropdownMenuTrigger"; "required": false; }; "side": { "alias": "side"; "required": false; }; "align": { "alias": "align"; "required": false; }; "sideOffset": { "alias": "sideOffset"; "required": false; }; "alignOffset": { "alias": "alignOffset"; "required": false; }; }, { "onOpenChange": "onOpenChange"; }, never, never, true, never>;
|
|
74
|
-
static ngAcceptInputType_sideOffset: unknown;
|
|
75
|
-
static ngAcceptInputType_alignOffset: unknown;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
declare class RdxDropdownMenuItemDirective extends CdkMenuItem {
|
|
79
|
-
protected readonly menu: RdxDropdownMenuContentDirective;
|
|
80
|
-
protected readonly nativeElement: any;
|
|
81
|
-
highlighted: boolean;
|
|
82
|
-
disabled: boolean;
|
|
83
|
-
readonly onSelect: EventEmitter<void>;
|
|
84
|
-
constructor();
|
|
85
|
-
protected onPointerMove(): void;
|
|
86
|
-
protected onKeydown(event: KeyboardEvent): void;
|
|
87
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuItemDirective, never>;
|
|
88
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuItemDirective, "[rdxDropdownMenuItem]", never, { "disabled": { "alias": "disabled"; "required": false; }; }, { "onSelect": "onSelect"; }, never, never, true, never>;
|
|
89
|
-
static ngAcceptInputType_disabled: unknown;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
declare class RdxDropdownMenuContentDirective extends CdkMenu {
|
|
93
|
-
readonly highlighted: Subject<RdxDropdownMenuItemDirective>;
|
|
94
|
-
readonly menuTrigger: RdxDropdownMenuTriggerDirective | null;
|
|
95
|
-
onEscapeKeyDown: (event?: Event) => void;
|
|
96
|
-
closeOnEscape: boolean;
|
|
97
|
-
constructor();
|
|
98
|
-
updateActiveItem(item: CdkMenuItem): void;
|
|
99
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuContentDirective, never>;
|
|
100
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuContentDirective, "[rdxDropdownMenuContent]", never, { "onEscapeKeyDown": { "alias": "onEscapeKeyDown"; "required": false; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; }; }, {}, never, never, true, never>;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
/** Base class providing checked state for selectable DropdownMenuItems. */
|
|
104
|
-
declare class RdxDropdownMenuSelectable extends RdxDropdownMenuItemDirective {
|
|
105
|
-
/** Whether the element is checked */
|
|
106
|
-
checked: boolean;
|
|
107
|
-
readonly checkedChange: EventEmitter<boolean>;
|
|
108
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuSelectable, never>;
|
|
109
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuSelectable, never, never, { "checked": { "alias": "checked"; "required": false; }; }, { "checkedChange": "checkedChange"; }, never, never, true, never>;
|
|
110
|
-
static ngAcceptInputType_checked: unknown;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
declare class RdxDropdownMenuItemCheckboxDirective extends RdxDropdownMenuSelectable {
|
|
114
|
-
trigger(options?: {
|
|
115
|
-
keepOpen: boolean;
|
|
116
|
-
}): void;
|
|
117
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuItemCheckboxDirective, never>;
|
|
118
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuItemCheckboxDirective, "[rdxDropdownMenuItemCheckbox]", never, {}, {}, never, never, true, never>;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
declare class RdxDropdownMenuItemIndicatorDirective {
|
|
122
|
-
item: RdxDropdownMenuSelectable;
|
|
123
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuItemIndicatorDirective, never>;
|
|
124
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuItemIndicatorDirective, "[rdxDropdownMenuItemIndicator]", never, {}, {}, never, never, true, never>;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
declare class RdxDropdownMenuItemRadioGroupDirective<T> implements AfterContentInit {
|
|
128
|
-
private readonly selectionDispatcher;
|
|
129
|
-
set value(id: T | null);
|
|
130
|
-
get value(): T | null;
|
|
131
|
-
private _value;
|
|
132
|
-
readonly valueChange: EventEmitter<any>;
|
|
133
|
-
ngAfterContentInit(): void;
|
|
134
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuItemRadioGroupDirective<any>, never>;
|
|
135
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuItemRadioGroupDirective<any>, "[rdxDropdownMenuItemRadioGroup]", never, { "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
declare class RdxDropdownMenuItemRadioDirective extends RdxDropdownMenuSelectable implements AfterContentInit, OnDestroy {
|
|
139
|
-
/** The unique selection dispatcher for this radio's `RdxDropdownMenuItemRadioGroupDirective`. */
|
|
140
|
-
private readonly selectionDispatcher;
|
|
141
|
-
private readonly group;
|
|
142
|
-
get value(): string;
|
|
143
|
-
set value(value: string);
|
|
144
|
-
private _value;
|
|
145
|
-
/** An ID to identify this radio item to the `UniqueSelectionDispatcher`. */
|
|
146
|
-
private id;
|
|
147
|
-
private removeDispatcherListener;
|
|
148
|
-
constructor();
|
|
149
|
-
ngAfterContentInit(): void;
|
|
150
|
-
ngOnDestroy(): void;
|
|
151
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuItemRadioDirective, never>;
|
|
152
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuItemRadioDirective, "[rdxDropdownMenuItemRadio]", never, { "value": { "alias": "value"; "required": false; }; }, {}, never, never, true, never>;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
declare class RdxDropdownMenuLabelDirective {
|
|
156
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuLabelDirective, never>;
|
|
157
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuLabelDirective, "[rdxDropdownMenuLabel]", never, {}, {}, never, never, true, [{ directive: typeof i1.RdxMenuLabelDirective; inputs: {}; outputs: {}; }]>;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
declare class RdxDropdownMenuSeparatorDirective {
|
|
161
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RdxDropdownMenuSeparatorDirective, never>;
|
|
162
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<RdxDropdownMenuSeparatorDirective, "[rdxDropdownMenuSeparator]", never, {}, {}, never, never, true, [{ directive: typeof i1.RdxMenuSeparatorDirective; inputs: {}; outputs: {}; }]>;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
declare class Rdx {
|
|
166
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<Rdx, never>;
|
|
167
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<Rdx, never, [typeof RdxDropdownMenuTriggerDirective, typeof RdxDropdownMenuContentDirective, typeof RdxDropdownMenuItemCheckboxDirective, typeof RdxDropdownMenuItemIndicatorDirective, typeof RdxDropdownMenuItemRadioGroupDirective, typeof RdxDropdownMenuItemRadioDirective, typeof RdxDropdownMenuSelectable, typeof RdxDropdownMenuItemDirective, typeof RdxDropdownMenuLabelDirective, typeof RdxDropdownMenuSeparatorDirective, typeof RdxDropdownMenuTriggerDirective], [typeof RdxDropdownMenuTriggerDirective, typeof RdxDropdownMenuContentDirective, typeof RdxDropdownMenuItemCheckboxDirective, typeof RdxDropdownMenuItemIndicatorDirective, typeof RdxDropdownMenuItemRadioGroupDirective, typeof RdxDropdownMenuItemRadioDirective, typeof RdxDropdownMenuSelectable, typeof RdxDropdownMenuItemDirective, typeof RdxDropdownMenuLabelDirective, typeof RdxDropdownMenuSeparatorDirective, typeof RdxDropdownMenuTriggerDirective]>;
|
|
168
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<Rdx>;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
export { DropdownAlign, DropdownSide, Rdx, RdxDropdownMenuContentDirective, RdxDropdownMenuItemCheckboxDirective, RdxDropdownMenuItemDirective, RdxDropdownMenuItemIndicatorDirective, RdxDropdownMenuItemRadioDirective, RdxDropdownMenuItemRadioGroupDirective, RdxDropdownMenuLabelDirective, RdxDropdownMenuSelectable, RdxDropdownMenuSeparatorDirective, RdxDropdownMenuTriggerDirective, mapRdxAlignToCdkPosition };
|