{"version":3,"file":"origin-ui-components-dialog.mjs","sources":["../../../../packages/components/dialog/src/dialog.component.ts","../../../../packages/components/dialog/origin-ui-components-dialog.ts"],"sourcesContent":["import {\n    ChangeDetectionStrategy,\n    Component,\n    computed,\n    Directive,\n    effect,\n    inject,\n    input,\n    InputSignal,\n    TemplateRef\n} from '@angular/core';\nimport { cn } from '@origin-ui/components/utils';\nimport {\n    RdxDialogCloseDirective,\n    RdxDialogConfig,\n    RdxDialogContentDirective,\n    RdxDialogTriggerDirective\n} from '@radix-ng/primitives/dialog';\nimport { LucideAngularModule, X } from 'lucide-angular';\n\n@Directive({\n    selector: '[oriDialogTrigger]',\n    hostDirectives: [\n        {\n            directive: RdxDialogTriggerDirective,\n            inputs: ['rdxDialogTrigger: oriDialogTrigger']\n        }\n    ]\n})\nexport class OriDialogTriggerDirective {\n    readonly rdxDialogTrigger = inject(RdxDialogTriggerDirective, { host: true });\n\n    readonly oriDialogTrigger = input.required<TemplateRef<void>>();\n\n    readonly oriDialogConfig: InputSignal<RdxDialogConfig<unknown> | undefined> = input<RdxDialogConfig<unknown>>();\n\n    #config = effect(() => {\n        this.rdxDialogTrigger.dialogConfig = {\n            ...this.oriDialogConfig(),\n            content: this.oriDialogTrigger(),\n            backdropClass: this.#backdropClass\n        };\n    });\n\n    #backdropClass = 'fixed inset-0 z-[101] bg-black/80'.split(' ');\n}\n\n@Component({\n    selector: 'ori-dialog-content',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    imports: [\n        RdxDialogCloseDirective,\n        LucideAngularModule\n    ],\n    hostDirectives: [RdxDialogContentDirective],\n    host: {\n        '[class]': 'hostClasses()'\n    },\n    template: `\n        <ng-content />\n\n        <button\n            class=\"focus-visible:outline-ring/70 group absolute right-3 top-3 flex size-7 items-center justify-center rounded-lg outline-offset-2 transition-colors focus-visible:outline focus-visible:outline-2 disabled:pointer-events-none\"\n            rdxDialogClose\n        >\n            <lucide-angular\n                class=\"opacity-60 transition-opacity group-hover:opacity-100\"\n                [img]=\"X\"\n                size=\"16\"\n                strokeWidth=\"2\"\n            />\n            <span class=\"sr-only\">Close</span>\n        </button>\n    `\n})\nexport class OriDialogComponent {\n    readonly class = input<string>();\n    protected readonly hostClasses = computed(() =>\n        cn(\n            'bg-background fixed left-1/2 top-1/2 z-[101] grid max-h-[calc(100%-4rem)] w-full -translate-x-1/2 -translate-y-1/2 gap-4 overflow-y-auto border p-6 shadow-lg shadow-black/5  sm:max-w-[400px] sm:rounded-xl',\n            this.class()\n        )\n    );\n\n    protected readonly cn = cn;\n    protected readonly X = X;\n}\n\n@Component({\n    selector: 'ori-dialog-description',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        '[class]': 'hostClasses()'\n    },\n    template: `\n        <ng-content />\n    `\n})\nexport class OriDialogDescription {\n    readonly class = input<string>();\n    protected readonly hostClasses = computed(() => cn('text-sm text-muted-foreground', this.class()));\n}\n\n@Component({\n    selector: 'ori-dialog-header',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        '[class]': 'hostClasses()'\n    },\n    template: `\n        <ng-content />\n    `\n})\nexport class OriDialogHeader {\n    readonly class = input<string>();\n    protected readonly hostClasses = computed(() => cn('flex flex-col gap-1 text-center sm:text-left', this.class()));\n}\n\n@Component({\n    selector: 'ori-dialog-title, [oriDialogTitle]',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        '[class]': 'hostClasses()'\n    },\n    template: `\n        <ng-content />\n    `\n})\nexport class OriDialogTitle {\n    readonly class = input<string>();\n    protected readonly hostClasses = computed(() => cn('text-lg leading-none font-semibold', this.class()));\n}\n\n@Component({\n    selector: 'ori-dialog-footer',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        '[class]': 'hostClasses()'\n    },\n    template: `\n        <ng-content />\n    `\n})\nexport class OriDialogFooter {\n    readonly class = input<string>();\n    protected readonly hostClasses = computed(() =>\n        cn('flex flex-col-reverse gap-2 sm:flex-row sm:justify-end sm:gap-3', this.class())\n    );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}