{"version":3,"file":"uib-angular-utils.mjs","sources":["../../../../libs/angular-components/utils/src/lib/facade/with-subscriptions.ts","../../../../libs/angular-components/utils/src/lib/helpers/angular.ts","../../../../libs/angular-components/utils/src/lib/helpers/array.ts","../../../../libs/angular-components/utils/src/lib/helpers/debounce.ts","../../../../libs/angular-components/utils/src/lib/helpers/type-guards.ts","../../../../libs/angular-components/utils/src/lib/helpers/format.ts","../../../../libs/angular-components/utils/src/lib/helpers/get-enum-values.ts","../../../../libs/angular-components/utils/src/lib/helpers/has-changed.ts","../../../../libs/angular-components/utils/src/lib/helpers/has-scrollbar.ts","../../../../libs/angular-components/utils/src/lib/helpers/is-dark-color.ts","../../../../libs/angular-components/utils/src/lib/helpers/math.ts","../../../../libs/angular-components/utils/src/lib/helpers/observer.ts","../../../../libs/angular-components/utils/src/lib/helpers/provide-module-config.ts","../../../../libs/angular-components/utils/src/lib/helpers/set-inputs.ts","../../../../libs/angular-components/utils/src/lib/helpers/string.ts","../../../../libs/angular-components/utils/src/lib/helpers/styles.ts","../../../../libs/angular-components/utils/src/lib/helpers/uuid.ts","../../../../libs/angular-components/utils/src/lib/helpers/with-mutiple-descriptors.ts","../../../../libs/angular-components/utils/src/lib/models/queue.ts","../../../../libs/angular-components/utils/src/lib/rxjs/array-map.ts","../../../../libs/angular-components/utils/src/lib/rxjs/filter-map.ts","../../../../libs/angular-components/utils/src/lib/rxjs/filter-nil.ts","../../../../libs/angular-components/utils/src/lib/rxjs/from-events.ts","../../../../libs/angular-components/utils/src/lib/rxjs/watch.ts","../../../../libs/angular-components/utils/src/uib-angular-utils.ts"],"sourcesContent":["import { Injectable, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n/**\n * @deprecated Use the `DestroyService` instead\n */\n@Injectable()\nexport class WithSubscriptions implements OnDestroy {\n  protected readonly ngUnsubscribe = new Subject<void>();\n\n  public ngOnDestroy(): void {\n    this.unsubscribe();\n  }\n\n  protected unsubscribe(): void {\n    this.ngUnsubscribe.next();\n    this.ngUnsubscribe.complete();\n  }\n}\n","import { ElementRef, QueryList, Renderer2 } from '@angular/core';\nimport { map, Observable, startWith } from 'rxjs';\n\nexport function observableFromQueryList<T>(queryList: QueryList<T>): Observable<readonly T[]> {\n  return queryList.changes.pipe(\n    map(() => queryList.toArray()),\n    startWith(queryList.toArray()),\n  );\n}\n\nexport function toggleClass<T>(renderer: Renderer2, element: ElementRef<T>, cssClass: string, state: boolean) {\n  if (state) {\n    renderer.addClass(element.nativeElement, cssClass);\n  } else {\n    renderer.removeClass(element.nativeElement, cssClass);\n  }\n}\n","export function isEmptyArray<T = unknown>(value: T | T[]): value is T[] {\n  return Array.isArray(value) && value.length === 0;\n}\n\nexport function pluckFromArray<T, K extends keyof T>(arr: T[], key: K): Array<T[K]> {\n  return arr.map((value) => value[key]);\n}\n\nexport function toRecord<T, K extends keyof T, V extends Extract<T[K], string | number>>(\n  value: T[],\n  key: V extends never ? never : K,\n): Record<V, T> {\n  const obj = {} as Record<V, T>;\n  for (const entry of value) {\n    obj[entry[key] as never as V] = entry;\n  }\n  return obj;\n}\n\nexport function mapReduce<T, K extends keyof T, V extends Extract<T[K], string | number>, R>(\n  value: T[],\n  key: V extends never ? never : K,\n  mapFn: (value: T) => R,\n): Record<V, R> {\n  const obj = {} as Record<V, R>;\n  for (const entry of value) {\n    obj[entry[key] as never as V] = mapFn(entry);\n  }\n  return obj;\n}\n","/**\n * Creates a debounced function that delays invoking func until after delay milliseconds\n * have elapsed since the last time the debounced function was invoked.\n * @param func The function to debounce\n * @param delay The debounce delay in miliseconds\n * @param immediate If true invokes the debounce function on the leading edge of the timeout.\n */\nexport function debounce<Args extends unknown[]>(\n  func: (...args: Args) => void,\n  delay: number,\n  immediate: boolean = false,\n): (...args: Args) => void {\n  let timeout: number | null = null;\n\n  return function (this: unknown, ...args: Args) {\n    // eslint-disable-next-line @typescript-eslint/no-this-alias\n    const context = this;\n    const callImmediately = immediate && timeout === null;\n    if (timeout !== null) {\n      clearTimeout(timeout);\n    }\n    timeout = setTimeout(function () {\n      timeout = null;\n      if (!callImmediately) {\n        func.apply(context, args);\n      }\n    }, delay) as unknown as number;\n    if (callImmediately) {\n      func.apply(context, args);\n    }\n  };\n}\n","import { TemplateRef, Type, ViewContainerRef } from '@angular/core';\n\nexport function isViewContainer(value: unknown): value is ViewContainerRef {\n  return isFunction((value as ViewContainerRef)?.createComponent);\n}\n\nexport function isTemplateRef(value: unknown): value is TemplateRef<unknown> {\n  return value instanceof TemplateRef;\n}\n\nexport function isComponent(value: unknown): value is Type<unknown> {\n  return isFunction(value);\n}\n\nexport function isString(value: unknown): value is string {\n  return typeof value === 'string';\n}\n\nexport function isNonEmptyString(value: unknown): value is string {\n  return isString(value) && value.length > 0;\n}\n\nexport function isBoolean(value: unknown): value is boolean {\n  return typeof value === 'boolean';\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function isFunction(value: unknown): value is Function {\n  return typeof value === 'function';\n}\n\nexport function isPresent<T>(value: T | null | undefined): value is NonNullable<T> {\n  return value !== null && value !== undefined;\n}\n","import { isPresent } from './type-guards';\n\nexport function px(value?: number | null): string | null {\n  return isPresent(value) ? `${value}px` : null;\n}\n","export function getEnumValues<TEnum, TKeys extends string>(e: { [key in TKeys]: TEnum }): TEnum[] {\n  const keys = Object.keys(e) as TKeys[];\n  return keys.filter((key) => e[key] !== undefined).map((key) => e[key]);\n}\n","import { NgChanges } from '../facade';\n\nexport function hasChanged<U extends Record<string, unknown>, T extends NgChanges<U>, K extends keyof T>(\n  changes: T,\n  keyOrKeys: K | K[],\n  ignoreFirstChange = true,\n): boolean {\n  if (Array.isArray(keyOrKeys)) {\n    for (const key of keyOrKeys) {\n      if (hasChanged(changes, key, ignoreFirstChange)) {\n        return true;\n      }\n    }\n    return false;\n  } else {\n    return keyOrKeys in changes && (!ignoreFirstChange || !changes[keyOrKeys].isFirstChange());\n  }\n}\n","export function hasVerticalScrollbar(element: Element | null): boolean {\n  return element ? element.scrollHeight > element.clientHeight : false;\n}\n\nexport function hasHorizontalScrollbar(element: Element | null): boolean {\n  return element ? element.scrollWidth > element.clientWidth : false;\n}\n\nexport function hasScrollbar(element: Element | null): boolean {\n  return hasVerticalScrollbar(element) || hasHorizontalScrollbar(element);\n}\n","export function toRGB(color: string): [number, number, number] {\n  if (color.startsWith('rgb')) {\n    // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n    const c = color.match(/[.?\\d]+/g)!;\n\n    return [parseInt(c[0], 10), parseInt(c[1], 10), parseInt(c[2], 10)];\n  } else {\n    let r = '0x0';\n    let g = '0x0';\n    let b = '0x0';\n    if (color.length == 4) {\n      r = '0x' + color[1] + color[1];\n      g = '0x' + color[2] + color[2];\n      b = '0x' + color[3] + color[3];\n    } else if (color.length == 7) {\n      r = '0x' + color[1] + color[2];\n      g = '0x' + color[3] + color[4];\n      b = '0x' + color[5] + color[6];\n    }\n\n    return [+r, +g, +b];\n  }\n}\n\nexport function isDarkColor(color: string): boolean {\n  const [r, g, b] = toRGB(color);\n  const hsp = Math.sqrt(0.299 * (r * r) + 0.587 * (g * g) + 0.114 * (b * b));\n\n  return hsp < 127.5;\n}\n","export function clamp(value: number, min: number = -Infinity, max: number = Infinity): number {\n  return Math.min(max, Math.max(min, value));\n}\n\nexport function round(value: number, precision: number = 0): number {\n  return roundWithPrecision(value, precision, Math.round);\n}\n\nexport function ceil(value: number, precision: number = 0): number {\n  return roundWithPrecision(value, precision, Math.ceil);\n}\n\nexport function floor(value: number, precision: number = 0): number {\n  return roundWithPrecision(value, precision, Math.floor);\n}\n\nfunction roundWithPrecision(value: number, precision: number, func: (x: number) => number): number {\n  if (value === Infinity) {\n    return value;\n  }\n\n  precision = Math.min(precision, 292);\n\n  const pair = `${value}e`.split('e');\n  const tempValue = func(Number(`${pair[0]}e${Number(pair[1]) + precision}`));\n  const processedPair = `${tempValue}e`.split('e');\n\n  return Number(`${processedPair[0]}e${Number(processedPair[1]) - precision}`);\n}\n","import { Observable } from 'rxjs';\n\nexport function isElementInView$(\n  target: Element,\n  options: IntersectionObserverInit = {\n    root: null,\n    threshold: 0.3,\n  },\n): Observable<boolean> {\n  return new Observable<boolean>((subscriber) => {\n    try {\n      const observer = new IntersectionObserver((events) => {\n        const event = events[events.length - 1];\n        if (event) {\n          subscriber.next(event.isIntersecting);\n        }\n      }, options);\n      subscriber.add(() => observer.disconnect());\n      observer.observe(target);\n    } catch {\n      subscriber.complete();\n    }\n  });\n}\n\nexport function dimensionsChanged$(target: Element): Observable<ResizeObserverEntry> {\n  return new Observable((subscriber) => {\n    try {\n      const observer = new ResizeObserver((events) => {\n        const event = events[events.length - 1];\n        if (event) {\n          subscriber.next(event);\n        }\n      });\n      subscriber.add(() => observer.disconnect());\n      observer.observe(target);\n    } catch {\n      subscriber.complete();\n    }\n  });\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { FactoryProvider, InjectionToken, Type, ValueProvider } from '@angular/core';\n\nexport type ModuleConfigDependencies<T = unknown> = ReadonlyArray<Type<T> | InjectionToken<T>>;\n\ninterface ModuleConfigFactoryProvider<T, D extends ModuleConfigDependencies> {\n  useFactory: (\n    ...args: { [I in keyof D]: D[I] extends Type<unknown> ? InstanceType<D[I]> : D[I] extends InjectionToken<unknown> ? any : never }\n  ) => T;\n  deps?: [...D];\n}\n\nexport type ModuleConfigProvider<T = unknown, D extends ModuleConfigDependencies = []> = ModuleConfigFactoryProvider<T, D> | T;\n\nexport function provideModuleConfig<T, D extends ModuleConfigDependencies = ModuleConfigDependencies>(\n  token: InjectionToken<T>,\n  config: ModuleConfigProvider<T, D>,\n): FactoryProvider | ValueProvider {\n  if ('useFactory' in config) {\n    return {\n      provide: token,\n      useFactory: config.useFactory,\n      deps: config.deps,\n    };\n  }\n  return {\n    provide: token,\n    useValue: config,\n  };\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { SimpleChange, SimpleChanges } from '@angular/core';\nimport { GetProperties } from '../types';\nimport { isString } from './type-guards';\n\nexport function setInputs<T, K extends keyof GetProperties<T>>(\n  instance: T,\n  key: K,\n  value: GetProperties<T>[K],\n  firstChange?: boolean,\n): T & { [KEY in K]: T[K] };\nexport function setInputs<T, KV extends GetProperties<T>>(instance: T, keyValues?: Partial<KV>): T & KV;\nexport function setInputs(instance: any, keyOrKeyValues: any, value?: any, firstChange: boolean = true): any {\n  const changes: SimpleChanges = {};\n\n  function setInput(key: string, newValue: any) {\n    if (instance[key] !== newValue) {\n      changes[key] = new SimpleChange(instance[key], newValue, firstChange);\n    }\n\n    instance[key] = newValue;\n  }\n\n  if (isString(keyOrKeyValues)) {\n    setInput(keyOrKeyValues, value);\n  } else {\n    for (const p in keyOrKeyValues) {\n      setInput(p, keyOrKeyValues[p]);\n    }\n  }\n\n  if (Object.keys(changes).length) {\n    instance.ngOnChanges?.(changes);\n  }\n\n  return instance;\n}\n","export function getWordsFromString(value: string): string[] {\n  return value\n    .split(' ')\n    .map((word) => word.trim())\n    .filter(Boolean);\n}\n","export function isTransparentColor(color: string): boolean {\n  return color === 'rgba(0, 0, 0, 0)' || color === 'transparent';\n}\n\nexport function isStaticPosition(styles?: CSSStyleDeclaration | null): boolean {\n  return styles?.position === 'static';\n}\n","export function uuid(): string {\n  return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n    const r = (Math.random() * 16) | 0,\n      v = c == 'x' ? r : (r & 0x3) | 0x8;\n    return v.toString(16);\n  });\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\ninterface DescriptiorManager {\n  addGetter: (value: any) => void;\n  addSetter: (value: any) => void;\n  init: () => void;\n}\n\n/* istanbul ignore next */\nexport function ɵwithMultipleDescriptors(target: any, key: PropertyKey, symbol: symbol): DescriptiorManager {\n  const setters = (target[`__uibPropSetters__${target.constructor}__${key.toString()}`] ??= []);\n  const getters = (target[`__uibPropGetters__${target.constructor}__${key.toString()}`] ??= []);\n  const propertyValue = `__uibPropValue_${String(key)}__`;\n  return {\n    addSetter(fn: (this: any, value: any) => void) {\n      setters.push({ fn, propertySymbol: symbol });\n    },\n    addGetter(fn: (this: any, value: any) => void) {\n      getters.push({ fn });\n    },\n    init() {\n      Object.defineProperty(target, key, {\n        set(value) {\n          this[propertyValue] = setters.reduce((result: any, { fn, propertySymbol }: any) => {\n            fn.call(this, result);\n            return this[propertySymbol];\n          }, value);\n        },\n        get() {\n          if (Array.isArray(getters)) {\n            return getters.reduce((_: any, { fn }: any) => fn.call(this), this[propertyValue]);\n          } else {\n            return this[propertyValue];\n          }\n        },\n        configurable: true,\n      });\n    },\n  };\n}\n","import { BehaviorSubject } from 'rxjs';\nimport { map, shareReplay } from 'rxjs/operators';\nimport { isFunction, uuid } from '../helpers';\n\ntype ID = string | number;\ntype QueueItem<T> = T & { id: ID };\ntype QueueDef<T> = Record<ID, QueueItem<T>>;\n\nexport class Queue<T> extends BehaviorSubject<QueueDef<T>> {\n  public value$ = this.pipe(\n    map((values) => this.sort(values)),\n    shareReplay({ bufferSize: 1, refCount: true }),\n  );\n\n  public current$ = this.value$.pipe(\n    map((values) => values[0] ?? null),\n    shareReplay({ bufferSize: 1, refCount: true }),\n  );\n\n  constructor(public readonly sortFn?: (a: T, b: T) => number) {\n    super({});\n  }\n\n  public add(value: Omit<QueueItem<T>, 'id'> & { id?: ID }, override = false): QueueItem<T> {\n    const queue = override ? {} : this.getValue();\n    const id = value.id !== '' ? value.id ?? uuid() : uuid();\n    const item = { ...value, id } as QueueItem<T>;\n    this.next({ ...queue, [id]: item });\n\n    return item;\n  }\n\n  public remove(value: QueueItem<T>): QueueItem<T> {\n    const { [value.id]: removedItem, ...queue } = this.getValue();\n    this.next(queue);\n\n    return removedItem;\n  }\n\n  private sort(values: QueueDef<T>) {\n    return Object.values(values).sort((a, b) => {\n      if (isFunction(this.sortFn)) {\n        return this.sortFn(a, b);\n      } else {\n        return 0;\n      }\n    });\n  }\n}\n","import { map, OperatorFunction } from 'rxjs';\n\nexport function arrayMap<T, R>(mapFn: (value: T) => R): OperatorFunction<T[], R[]> {\n  return map((arr) => arr.map((value) => mapFn(value)));\n}\n","import { OperatorFunction } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nexport function filterMap<T>(predicateFn: (value: T) => boolean): OperatorFunction<T[], T[]> {\n  return map((arr: T[]) => arr.filter(predicateFn));\n}\n","import { OperatorFunction } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { isPresent } from '../helpers';\n\nexport function filterNil<T>(): OperatorFunction<T, NonNullable<T>> {\n  return filter((value: T): value is NonNullable<T> => isPresent(value));\n}\n","import { fromEvent, merge, Observable } from 'rxjs';\nimport { HasEventTargetAddRemove } from 'rxjs/internal/observable/fromEvent';\n\nexport function fromEvents<E>(target: HasEventTargetAddRemove<E> | HasEventTargetAddRemove<E>[], ...events: string[]): Observable<E> {\n  return merge(...events.map((event) => fromEvent(target, event)));\n}\n","import { ChangeDetectorRef } from '@angular/core';\nimport { MonoTypeOperatorFunction } from 'rxjs';\nimport { tap } from 'rxjs/operators';\n\nexport function watch<T>(changeDetectorRef: ChangeDetectorRef): MonoTypeOperatorFunction<T> {\n  return tap(() => {\n    changeDetectorRef.markForCheck();\n  });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["map"],"mappings":"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"}