{"version":3,"file":"qualcomm-ui-angular-inline-icon-button.mjs","sources":["../../src/inline-icon-button/use-inline-icon-button-api.ts","../../src/inline-icon-button/inline-icon-button.component.ts","../../src/inline-icon-button/qualcomm-ui-angular-inline-icon-button.ts"],"sourcesContent":["// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, type Signal} from \"@angular/core\"\n\nimport {normalizeProps} from \"@qualcomm-ui/angular-core/machine\"\nimport {\n  accessSignal,\n  type MaybeSignalInput,\n} from \"@qualcomm-ui/angular-core/signals\"\nimport {\n  createQdsInlineIconButtonApi,\n  type QdsInlineIconButtonApi,\n  type QdsInlineIconButtonApiProps,\n} from \"@qualcomm-ui/qds-core/inline-icon-button\"\nimport type {Explicit} from \"@qualcomm-ui/utils/guard\"\n\nexport function useInlineIconButtonApi({\n  emphasis,\n  size,\n  variant,\n}: MaybeSignalInput<QdsInlineIconButtonApiProps>): Signal<QdsInlineIconButtonApi> {\n  return computed(() =>\n    createQdsInlineIconButtonApi(\n      {\n        emphasis: accessSignal(emphasis),\n        size: accessSignal(size),\n        variant: accessSignal(variant),\n      } satisfies Explicit<QdsInlineIconButtonApiProps>,\n      normalizeProps,\n    ),\n  )\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Component, input, type OnInit} from \"@angular/core\"\nimport {X} from \"lucide-angular\"\n\nimport {IconDirective} from \"@qualcomm-ui/angular/icon\"\nimport {QuiPreloadDirective} from \"@qualcomm-ui/angular/transitions\"\nimport type {LucideIcon} from \"@qualcomm-ui/angular-core/lucide\"\nimport {\n  QBindDirective,\n  useTrackBindings,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport {\n  type QdsInlineIconButtonApiProps,\n  type QdsInlineIconButtonEmphasis,\n  type QdsInlineIconButtonSize,\n  type QdsInlineIconButtonVariant,\n} from \"@qualcomm-ui/qds-core/inline-icon-button\"\n\nimport {useInlineIconButtonApi} from \"./use-inline-icon-button-api\"\n\n@Component({\n  hostDirectives: [QuiPreloadDirective],\n  imports: [IconDirective, QBindDirective],\n  selector: \"[q-inline-icon-button]\",\n  template: `\n    <svg [q-bind]=\"api().getIconBindings()\" [qIcon]=\"icon()\"></svg>\n  `,\n})\nexport class InlineIconButtonComponent\n  implements SignalifyInput<QdsInlineIconButtonApiProps>, OnInit\n{\n  /**\n   * @default X\n   */\n  readonly icon = input<LucideIcon>(X)\n\n  /**\n   * The style variant of the button. Governs color.\n   *\n   * @default 'neutral'\n   */\n  readonly emphasis = input<QdsInlineIconButtonEmphasis>()\n\n  /**\n   * The size of the button and its icon.\n   *\n   * @default 'md'\n   */\n  readonly size = input<QdsInlineIconButtonSize>()\n\n  /**\n   * The style variant of the button's icon that controls its size\n   *\n   * @option `scale`: The icon size scales with the button's size\n   * @option `fixed`: The icon size is constant, regardless of the button's size\n   *\n   * @default 'fixed'\n   */\n  readonly variant = input<QdsInlineIconButtonVariant | undefined>()\n\n  protected readonly api = useInlineIconButtonApi({\n    emphasis: this.emphasis,\n    size: this.size,\n    variant: this.variant,\n  })\n\n  readonly trackBindings = useTrackBindings(() => this.api().getRootBindings())\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}