{"version":3,"file":"up-angular-ui-core.mjs","sources":["../../../projects/up-angular-ui/src/lib/constants/internal.ts","../../../projects/up-angular-ui/src/lib/tools/up-provider.ts","../../../projects/up-angular-ui/src/lib/tools/up-them-service.ts","../../../projects/up-angular-ui/src/lib/directives/up-hold.ts","../../../projects/up-angular-ui/src/lib/components/up-button/up-button.ts","../../../projects/up-angular-ui/src/lib/components/up-button/up-button.html","../../../projects/up-angular-ui/src/up-angular-ui-core.ts"],"sourcesContent":["export const DARK_MODE_SELECTOR = 'dark-theme';\n","import { provideOptimus } from '@openng/optimus-ui/config';\nimport Aura from '@openng/optimus-ui-themes/aura';\nimport { DARK_MODE_SELECTOR } from '../constants';\n\nexport const provideUpAngularUI = () => {\n  return provideOptimus({\n    theme: {\n      preset: Aura,\n      options: { darkModeSelector: `.${DARK_MODE_SELECTOR}` },\n    },\n  });\n};\n","import { Injectable } from '@angular/core';\nimport { DARK_MODE_SELECTOR } from '../constants';\n\ntype UpThemes = 'dark' | 'light';\n\n@Injectable({\n  providedIn: 'root',\n})\nexport class UpThemeService {\n  theme: UpThemes = 'light';\n\n  set(theme: UpThemes) {\n    document.documentElement.classList.toggle(DARK_MODE_SELECTOR, theme === 'dark');\n  }\n\n  toggle() {\n    this.theme = this.theme === 'light' ? 'dark' : 'light';\n    this.set(this.theme);\n  }\n}\n","import { Directive, OnDestroy, output } from '@angular/core';\nimport { Subject, interval, switchMap, takeUntil, finalize } from 'rxjs';\n\n@Directive({\n  selector: '[upHold]',\n  host: {\n    '(pointerup)': 'endHold()',\n    '(pointerdown)': 'startHold()',\n    '(pointerleave)': 'endHold()',\n    '(pointercancel)': 'endHold()',\n  },\n})\nexport class UpHoldDirective implements OnDestroy {\n  readonly held = output<void>();\n  readonly clicked = output<void>();\n  readonly holding = output<number>();\n\n  private readonly startHold$ = new Subject<void>();\n  private readonly endHold$ = new Subject<void>();\n\n  private readonly heldThresholdMilliseconds = 500;\n  private readonly clickedThresholdMilliseconds = 200;\n\n  private readonly holdingSubscription = this.startHold$\n    .pipe(\n      switchMap(() => {\n        const startedAt = Date.now();\n\n        return interval(10).pipe(\n          takeUntil(this.endHold$),\n\n          switchMap(() => {\n            const elapsed = Date.now() - startedAt;\n\n            return [elapsed];\n          }),\n\n          finalize(() => {\n            const elapsed = Date.now() - startedAt;\n\n            if (elapsed <= this.clickedThresholdMilliseconds) {\n              this.clicked.emit();\n            }\n\n            if (elapsed >= this.heldThresholdMilliseconds) {\n              this.held.emit();\n            }\n          }),\n        );\n      }),\n    )\n    .subscribe((elapsed) => this.holding.emit(elapsed));\n\n  startHold(): void {\n    this.startHold$.next();\n  }\n\n  endHold(): void {\n    this.endHold$.next();\n  }\n\n  ngOnDestroy(): void {\n    this.endHold$.next();\n    this.holdingSubscription.unsubscribe();\n  }\n}\n","import { Component } from '@angular/core';\nimport { ButtonModule } from '@openng/optimus-ui/button';\n\n@Component({\n  selector: 'up-button',\n  imports: [ButtonModule],\n  templateUrl: './up-button.html',\n})\nexport class UpButton {}\n","<p-button /* label=\"Check\" */ severity=\"contrast\" icon=\"pi pi-search\" />\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;AAAO,MAAM,kBAAkB,GAAG,YAAY;;ACIvC,MAAM,kBAAkB,GAAG,MAAK;AACrC,IAAA,OAAO,cAAc,CAAC;AACpB,QAAA,KAAK,EAAE;AACL,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,OAAO,EAAE,EAAE,gBAAgB,EAAE,CAAA,CAAA,EAAI,kBAAkB,EAAE,EAAE;AACxD,SAAA;AACF,KAAA,CAAC;AACJ;;MCHa,cAAc,CAAA;IACzB,KAAK,GAAa,OAAO;AAEzB,IAAA,GAAG,CAAC,KAAe,EAAA;AACjB,QAAA,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,KAAK,MAAM,CAAC;IACjF;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO;AACtD,QAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;IACtB;uGAVW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAd,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFb,MAAM,EAAA,CAAA;;2FAEP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCKY,eAAe,CAAA;IACjB,IAAI,GAAG,MAAM,EAAQ;IACrB,OAAO,GAAG,MAAM,EAAQ;IACxB,OAAO,GAAG,MAAM,EAAU;AAElB,IAAA,UAAU,GAAG,IAAI,OAAO,EAAQ;AAChC,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAQ;IAE9B,yBAAyB,GAAG,GAAG;IAC/B,4BAA4B,GAAG,GAAG;IAElC,mBAAmB,GAAG,IAAI,CAAC;AACzC,SAAA,IAAI,CACH,SAAS,CAAC,MAAK;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE;AAE5B,QAAA,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CACtB,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAExB,SAAS,CAAC,MAAK;YACb,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAEtC,OAAO,CAAC,OAAO,CAAC;AAClB,QAAA,CAAC,CAAC,EAEF,QAAQ,CAAC,MAAK;YACZ,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;AAEtC,YAAA,IAAI,OAAO,IAAI,IAAI,CAAC,4BAA4B,EAAE;AAChD,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YACrB;AAEA,YAAA,IAAI,OAAO,IAAI,IAAI,CAAC,yBAAyB,EAAE;AAC7C,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAClB;QACF,CAAC,CAAC,CACH;AACH,IAAA,CAAC,CAAC;AAEH,SAAA,SAAS,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAErD,SAAS,GAAA;AACP,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;IACxB;IAEA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;IACtB;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AACpB,QAAA,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE;IACxC;uGApDW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,cAAA,EAAA,WAAA,EAAA,eAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAT3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,IAAI,EAAE;AACJ,wBAAA,aAAa,EAAE,WAAW;AAC1B,wBAAA,eAAe,EAAE,aAAa;AAC9B,wBAAA,gBAAgB,EAAE,WAAW;AAC7B,wBAAA,iBAAiB,EAAE,WAAW;AAC/B,qBAAA;AACF,iBAAA;;;MCHY,QAAQ,CAAA;uGAAR,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAR,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECRrB,kFACA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDIY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,SAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,eAAA,EAAA,WAAA,EAAA,WAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAGX,QAAQ,EAAA,UAAA,EAAA,CAAA;kBALpB,SAAS;+BACE,WAAW,EAAA,OAAA,EACZ,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,kFAAA,EAAA;;;AELzB;;AAEG;;;;"}