{"version":3,"file":"angular-mobile-ui.mjs","sources":["../../../packages/ui/src/components/page/page.component.ts","../../../packages/ui/src/components/header/header.component.ts","../../../packages/ui/src/components/title/title.component.ts","../../../packages/ui/src/components/content/content.component.ts","../../../packages/ui/src/components/fab/fab.component.ts","../../../packages/ui/src/components/list/list.component.ts","../../../packages/ui/src/components/swipe-item/swipe-item.component.ts","../../../packages/ui/src/components/actions/actions.component.ts","../../../packages/ui/src/components/action/action.component.ts","../../../packages/ui/src/tokens/ui-tokens.ts","../../../packages/ui/src/angular-mobile-ui.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n  selector: 'm-page',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `<ng-content />`,\n  styles: [`\n    m-page {\n      display: flex;\n      flex-direction: column;\n      width: 100%;\n      height: 100dvh;\n      background: var(--amk-color-bg);\n      color: var(--amk-color-text);\n      font-family: var(--amk-font-sans);\n      overflow: hidden;\n    }\n  `],\n})\nexport class MPageComponent {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n  selector: 'm-header',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `<div class=\"m-header__inner\"><ng-content /></div>`,\n  styles: [`\n    m-header {\n      flex: 0 0 auto;\n      display: block;\n      background: var(--amk-color-surface);\n      border-bottom: 1px solid var(--amk-color-border);\n      padding-top: env(safe-area-inset-top);\n    }\n    m-header .m-header__inner {\n      height: var(--amk-header-height);\n      display: flex;\n      align-items: center;\n      padding: 0 var(--amk-space-4);\n    }\n  `],\n})\nexport class MHeaderComponent {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n  selector: 'm-title',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `<ng-content />`,\n  styles: [`\n    m-title {\n      display: block;\n      font-size: 18px;\n      font-weight: 600;\n      letter-spacing: -0.01em;\n      color: var(--amk-color-text);\n    }\n  `],\n})\nexport class MTitleComponent {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n  selector: 'm-content',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `<ng-content />`,\n  styles: [`\n    m-content {\n      flex: 1 1 auto;\n      display: block;\n      overflow-y: auto;\n      -webkit-overflow-scrolling: touch;\n      overscroll-behavior: contain;\n      padding: var(--amk-space-4);\n      padding-bottom: calc(var(--amk-space-4) + env(safe-area-inset-bottom));\n    }\n  `],\n})\nexport class MContentComponent {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation, input } from '@angular/core';\n\n@Component({\n  selector: 'm-fab',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `<button type=\"button\" class=\"m-fab__button\" [attr.aria-label]=\"label() ?? 'action'\">\n    <span class=\"m-fab__icon\">{{ glyph() }}</span>\n  </button>`,\n  styles: [`\n    m-fab {\n      position: absolute;\n      right: var(--amk-space-5);\n      bottom: calc(var(--amk-space-5) + env(safe-area-inset-bottom));\n      z-index: 10;\n    }\n    m-fab .m-fab__button {\n      width: var(--amk-fab-size);\n      height: var(--amk-fab-size);\n      border: 0;\n      border-radius: 50%;\n      background: var(--amk-color-primary);\n      color: #fff;\n      box-shadow: var(--amk-shadow-2);\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      font-size: 22px;\n      line-height: 1;\n    }\n    m-fab .m-fab__button:active { transform: scale(0.96); }\n  `],\n})\nexport class MFabComponent {\n  readonly icon = input<string>('add');\n  readonly label = input<string | undefined>(undefined);\n\n  glyph(): string {\n    const map: Record<string, string> = {\n      add: '+',\n      check: '✓',\n      close: '✕',\n      edit: '✎',\n    };\n    return map[this.icon()] ?? '+';\n  }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n  selector: 'm-list',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `<ng-content />`,\n  styles: [`\n    m-list {\n      display: flex;\n      flex-direction: column;\n      gap: var(--amk-space-2);\n      list-style: none;\n      margin: 0;\n      padding: 0;\n    }\n  `],\n})\nexport class MListComponent {}\n","import {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  Component,\n  ElementRef,\n  HostListener,\n  ViewChild,\n  ViewEncapsulation,\n  signal,\n} from '@angular/core';\n\nconst OPEN_THRESHOLD_RATIO = 0.4;\nconst SWIPE_FRICTION = 1;\n\n@Component({\n  selector: 'm-swipe-item',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <div\n      class=\"m-swipe-item__actions\"\n      #actionsHost (click)=\"close()\"\n      [style.visibility]=\"offset() === 0 ? 'hidden' : 'visible'\"\n    >\n      <ng-content select=\"m-actions\" />\n    </div>\n    <div\n      class=\"m-swipe-item__body\"\n      [class.m-swipe-item__body--dragging]=\"dragging()\"\n      [style.transform]=\"bodyTransform()\"\n      (pointerdown)=\"onPointerDown($event)\"\n      (pointermove)=\"onPointerMove($event)\"\n      (pointerup)=\"onPointerUp($event)\"\n      (pointercancel)=\"onPointerUp($event)\"\n    >\n      <ng-content />\n      @if (isOpen()) {\n        <div class=\"m-swipe-item__shield\" (click)=\"close(); $event.stopPropagation()\"></div>\n      }\n    </div>\n  `,\n  styles: [`\n    m-swipe-item {\n      position: relative;\n      display: block;\n      overflow: hidden;\n      border-radius: var(--amk-radius-md);\n      border: 1px solid var(--amk-color-border);\n      isolation: isolate;\n      touch-action: pan-y;\n      user-select: none;\n    }\n    m-swipe-item .m-swipe-item__actions {\n      position: absolute;\n      inset: 0 0 0 auto;\n      display: flex;\n      z-index: 0;\n    }\n    m-swipe-item .m-swipe-item__body {\n      position: relative;\n      z-index: 1;\n      background: var(--amk-color-surface);\n      transform: translateX(0);\n      transition: transform 200ms ease;\n      will-change: transform;\n    }\n    m-swipe-item .m-swipe-item__body--dragging { transition: none; }\n    m-swipe-item .m-swipe-item__shield {\n      position: absolute;\n      inset: 0;\n      background: transparent;\n      cursor: pointer;\n      z-index: 2;\n    }\n  `],\n})\nexport class MSwipeItemComponent implements AfterViewInit {\n  @ViewChild('actionsHost', { static: true })\n  private readonly actionsHost!: ElementRef<HTMLElement>;\n\n  protected readonly offset = signal(0);\n  protected readonly dragging = signal(false);\n  private actionsWidth = 0;\n  private startX = 0;\n  private startOffset = 0;\n  private pointerId: number | null = null;\n\n  protected bodyTransform(): string {\n    return `translateX(${this.offset()}px)`;\n  }\n\n  protected isOpen(): boolean {\n    return this.offset() < -1;\n  }\n\n  ngAfterViewInit(): void {\n    queueMicrotask(() => this.measureActions());\n  }\n\n  protected onPointerDown(event: PointerEvent): void {\n    if (event.button !== 0 && event.pointerType === 'mouse') return;\n    this.measureActions();\n    if (this.actionsWidth === 0) return;\n    this.startX = event.clientX;\n    this.startOffset = this.offset();\n    this.pointerId = event.pointerId;\n    this.dragging.set(true);\n    (event.target as Element).setPointerCapture?.(event.pointerId);\n  }\n\n  protected onPointerMove(event: PointerEvent): void {\n    if (!this.dragging() || event.pointerId !== this.pointerId) return;\n    const delta = (event.clientX - this.startX) * SWIPE_FRICTION;\n    const next = this.clamp(this.startOffset + delta);\n    this.offset.set(next);\n  }\n\n  protected onPointerUp(event: PointerEvent): void {\n    if (event.pointerId !== this.pointerId) return;\n    this.dragging.set(false);\n    this.pointerId = null;\n    // Decide entre aberto e fechado pelo threshold\n    const threshold = this.actionsWidth * OPEN_THRESHOLD_RATIO;\n    if (-this.offset() > threshold) {\n      this.open();\n    } else {\n      this.close();\n    }\n  }\n\n  @HostListener('document:click', ['$event'])\n  protected onDocumentClick(event: MouseEvent): void {\n    if (!this.isOpen()) return;\n    const root = this.actionsHost.nativeElement.parentElement;\n    if (root && !root.contains(event.target as Node)) {\n      this.close();\n    }\n  }\n\n  protected open(): void {\n    this.offset.set(-this.actionsWidth);\n  }\n\n  protected close(): void {\n    this.offset.set(0);\n  }\n\n  private measureActions(): void {\n    const w = this.actionsHost.nativeElement.offsetWidth;\n    if (w > 0) this.actionsWidth = w;\n  }\n\n  private clamp(value: number): number {\n    if (value > 0) return 0;\n    if (value < -this.actionsWidth) return -this.actionsWidth;\n    return value;\n  }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n  selector: 'm-actions',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `<ng-content />`,\n  styles: [`\n    m-actions {\n      display: inline-flex;\n      align-items: stretch;\n      height: 100%;\n    }\n  `],\n})\nexport class MActionsComponent {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation, input } from '@angular/core';\n\nexport type MActionColor = 'neutral' | 'primary' | 'danger';\n\n@Component({\n  selector: 'm-action',\n  standalone: true,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <button\n      type=\"button\"\n      class=\"m-action__button\"\n      [class.m-action__button--primary]=\"color() === 'primary'\"\n      [class.m-action__button--danger]=\"color() === 'danger'\"\n      [attr.aria-label]=\"label() ?? null\">\n      <ng-content />\n    </button>\n  `,\n  styles: [`\n    m-action { display: inline-flex; align-items: stretch; height: 100%; }\n    m-action .m-action__button {\n      border: 0;\n      cursor: pointer;\n      padding: 0 var(--amk-space-4);\n      min-width: 80px;\n      font-size: 14px;\n      font-weight: 600;\n      color: #fff;\n      background: var(--amk-color-text-muted);\n      display: inline-flex; align-items: center; justify-content: center;\n    }\n    m-action .m-action__button--primary { background: var(--amk-color-primary); }\n    m-action .m-action__button--danger { background: var(--amk-color-danger); }\n    m-action .m-action__button:active { filter: brightness(0.92); }\n  `],\n})\nexport class MActionComponent {\n  readonly color = input<MActionColor>('neutral');\n  readonly label = input<string | undefined>(undefined);\n}\n","export const AMK_UI_VERSION = '0.0.1';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}