ngx-lift 1.4.2 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,4 +2,9 @@
2
2
  export const emailPattern = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/;
3
3
  export const urlPattern = /^https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_+.~#?&/=]*)$/;
4
4
  export const httpsPattern = /^https:\/\/(?:www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_+.~#?&/=]*)$/;
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUN0QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsbUZBQW1GLENBQUM7QUFFaEgsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUNyQiwwR0FBMEcsQ0FBQztBQUM3RyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQ3ZCLHlHQUF5RyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9yZWdleDEwMS5jb20vbGlicmFyeS9tWDF4VzBcbmV4cG9ydCBjb25zdCBlbWFpbFBhdHRlcm4gPSAvXihbXFx3LV0rKD86XFwuW1xcdy1dKykqKUAoKD86W1xcdy1dK1xcLikqXFx3W1xcdy1dezAsNjZ9KVxcLihbYS16XXsyLDZ9KD86XFwuW2Etel17Mn0pPykkLztcblxuZXhwb3J0IGNvbnN0IHVybFBhdHRlcm4gPVxuICAvXmh0dHBzPzpcXC9cXC8oPzp3d3dcXC4pP1stYS16QS1aMC05QDolLl8rfiM9XXsxLDI1Nn1cXC5bYS16QS1aMC05KCldezEsNn1cXGIoPzpbLWEtekEtWjAtOSgpQDolXysufiM/Ji89XSopJC87XG5leHBvcnQgY29uc3QgaHR0cHNQYXR0ZXJuID1cbiAgL15odHRwczpcXC9cXC8oPzp3d3dcXC4pP1stYS16QS1aMC05QDolLl8rfiM9XXsxLDI1Nn1cXC5bYS16QS1aMC05KCldezEsNn1cXGIoPzpbLWEtekEtWjAtOSgpQDolXysufiM/Ji89XSopJC87XG4iXX0=
5
+ // https://regex101.com/library/dT0vT3?orderBy=RELEVANCE&search=ip
6
+ export const ipRegex = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
7
+ // A fully qualified domain name (FQDN) is a domain name that specifies its exact location in the tree hierarchy of the Domain Name System (DNS)
8
+ // https://www.regextester.com/103452
9
+ export const fqdnRegex = /(?=^.{4,253}$)(^((?!-)[a-zA-Z0-9-]{0,62}[a-zA-Z0-9]\.)+[a-zA-Z]{2,63}$)/;
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUN0QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsbUZBQW1GLENBQUM7QUFFaEgsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUNyQiwwR0FBMEcsQ0FBQztBQUM3RyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQ3ZCLHlHQUF5RyxDQUFDO0FBRTVHLGtFQUFrRTtBQUNsRSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQ2xCLGtLQUFrSyxDQUFDO0FBRXJLLGdKQUFnSjtBQUNoSixxQ0FBcUM7QUFDckMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLHlFQUF5RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9yZWdleDEwMS5jb20vbGlicmFyeS9tWDF4VzBcbmV4cG9ydCBjb25zdCBlbWFpbFBhdHRlcm4gPSAvXihbXFx3LV0rKD86XFwuW1xcdy1dKykqKUAoKD86W1xcdy1dK1xcLikqXFx3W1xcdy1dezAsNjZ9KVxcLihbYS16XXsyLDZ9KD86XFwuW2Etel17Mn0pPykkLztcblxuZXhwb3J0IGNvbnN0IHVybFBhdHRlcm4gPVxuICAvXmh0dHBzPzpcXC9cXC8oPzp3d3dcXC4pP1stYS16QS1aMC05QDolLl8rfiM9XXsxLDI1Nn1cXC5bYS16QS1aMC05KCldezEsNn1cXGIoPzpbLWEtekEtWjAtOSgpQDolXysufiM/Ji89XSopJC87XG5leHBvcnQgY29uc3QgaHR0cHNQYXR0ZXJuID1cbiAgL15odHRwczpcXC9cXC8oPzp3d3dcXC4pP1stYS16QS1aMC05QDolLl8rfiM9XXsxLDI1Nn1cXC5bYS16QS1aMC05KCldezEsNn1cXGIoPzpbLWEtekEtWjAtOSgpQDolXysufiM/Ji89XSopJC87XG5cbi8vIGh0dHBzOi8vcmVnZXgxMDEuY29tL2xpYnJhcnkvZFQwdlQzP29yZGVyQnk9UkVMRVZBTkNFJnNlYXJjaD1pcFxuZXhwb3J0IGNvbnN0IGlwUmVnZXggPVxuICAvXigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pXFwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldPylcXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/KVxcLigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pJC87XG5cbi8vIEEgZnVsbHkgcXVhbGlmaWVkIGRvbWFpbiBuYW1lIChGUUROKSBpcyBhIGRvbWFpbiBuYW1lIHRoYXQgc3BlY2lmaWVzIGl0cyBleGFjdCBsb2NhdGlvbiBpbiB0aGUgdHJlZSBoaWVyYXJjaHkgb2YgdGhlIERvbWFpbiBOYW1lIFN5c3RlbSAoRE5TKVxuLy8gaHR0cHM6Ly93d3cucmVnZXh0ZXN0ZXIuY29tLzEwMzQ1MlxuZXhwb3J0IGNvbnN0IGZxZG5SZWdleCA9IC8oPz1eLns0LDI1M30kKSheKCg/IS0pW2EtekEtWjAtOS1dezAsNjJ9W2EtekEtWjAtOV1cXC4pK1thLXpBLVpdezIsNjN9JCkvO1xuIl19
@@ -1,18 +1,6 @@
1
1
  import { toObservable } from '@angular/core/rxjs-interop';
2
2
  import { catchError, EMPTY, exhaustMap, from, isObservable, map, merge, of, share, startWith, timer, } from 'rxjs';
3
3
  import { isPromise } from '../utils/is-promise.util';
4
- /**
5
- * Polls data at a specified interval and can be triggered manually.
6
- *
7
- * @template Data - The type of the data emitted by the polling function.
8
- * @template Input - The type of the input parameter used to build polling parameters.
9
- * @param {object} options - The configuration options for polling.
10
- * @param {number} options.interval - The interval in milliseconds between each poll.
11
- * @param {(params: any) => Observable<Data> | Data} options.pollingFn - A function that returns an Observable, Promise, or primitive value.
12
- * @param {(input: Input | undefined) => any} [options.paramsBuilder] - An optional function that builds parameters for the polling function based on the input. The value emitted by the trigger observable will serve as the parameter.
13
- * @param {Observable<Input> | Signal<Input>} [options.trigger] - An optional Observable or Signal that triggers a manual poll.
14
- * @returns {Observable<AsyncState<Data>>} An Observable emitting objects representing the state of the asynchronous operation.
15
- */
16
4
  export function poll(options) {
17
5
  const timerEmitValue = '__timer__emission__';
18
6
  const timer$ = timer(0, options.interval).pipe(map((i) => `${timerEmitValue}${i}`));
@@ -46,4 +34,4 @@ export function poll(options) {
46
34
  return observable$;
47
35
  }), share());
48
36
  }
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9sbC5vcGVyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWZ0L3NyYy9saWIvb3BlcmF0b3JzL3BvbGwub3BlcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3hELE9BQU8sRUFDTCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFVBQVUsRUFDVixJQUFJLEVBQ0osWUFBWSxFQUNaLEdBQUcsRUFDSCxLQUFLLEVBRUwsRUFBRSxFQUNGLEtBQUssRUFDTCxTQUFTLEVBQ1QsS0FBSyxHQUNOLE1BQU0sTUFBTSxDQUFDO0FBR2QsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRW5EOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBTSxVQUFVLElBQUksQ0FBYyxPQUtqQztJQUNDLE1BQU0sY0FBYyxHQUFHLHFCQUFxQixDQUFDO0lBQzdDLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsY0FBYyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVwRixNQUFNLFFBQVEsR0FDWixPQUFPLENBQUMsT0FBTyxLQUFLLFNBQVM7UUFDM0IsQ0FBQyxDQUFDLEtBQUs7UUFDUCxDQUFDLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDN0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPO1lBQ2pCLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXRDLElBQUksY0FBYyxHQUFzQixTQUFTLENBQUMsQ0FBQyxzREFBc0Q7SUFFekcsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDakMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDbkIsMENBQTBDO1FBQzFDLE1BQU0sY0FBYyxHQUFHLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ25GLE1BQU0sZUFBZSxHQUFHLENBQUMsY0FBYyxDQUFDO1FBQ3hDLElBQUksZUFBZSxFQUFFLENBQUM7WUFDcEIsY0FBYyxHQUFHLEtBQWMsQ0FBQztRQUNsQyxDQUFDO1FBRUQsZ0NBQWdDO1FBQ2hDLCtFQUErRTtRQUMvRSxvRkFBb0Y7UUFDcEYsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO1FBRTlGLHFGQUFxRjtRQUNyRiwwRUFBMEU7UUFDMUUsTUFBTSxjQUFjLEdBQUcsS0FBSyxLQUFLLEdBQUcsY0FBYyxHQUFHLENBQUMsQ0FBQyxvREFBb0Q7UUFDM0csTUFBTSxpQkFBaUIsR0FBRyxlQUFlLElBQUksY0FBYyxDQUFDO1FBRTVELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0MsTUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFMUcsSUFBSSxXQUFXLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FDOUIsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUMsRUFDcEQsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxDQUMvRCxDQUFDO1FBRUYsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3RCLFdBQVcsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLENBQUM7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDLENBQUMsRUFDRixLQUFLLEVBQUUsQ0FDUixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7U2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9PYnNlcnZhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBFTVBUWSxcbiAgZXhoYXVzdE1hcCxcbiAgZnJvbSxcbiAgaXNPYnNlcnZhYmxlLFxuICBtYXAsXG4gIG1lcmdlLFxuICBPYnNlcnZhYmxlLFxuICBvZixcbiAgc2hhcmUsXG4gIHN0YXJ0V2l0aCxcbiAgdGltZXIsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0FzeW5jU3RhdGV9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQge2lzUHJvbWlzZX0gZnJvbSAnLi4vdXRpbHMvaXMtcHJvbWlzZS51dGlsJztcblxuLyoqXG4gKiBQb2xscyBkYXRhIGF0IGEgc3BlY2lmaWVkIGludGVydmFsIGFuZCBjYW4gYmUgdHJpZ2dlcmVkIG1hbnVhbGx5LlxuICpcbiAqIEB0ZW1wbGF0ZSBEYXRhIC0gVGhlIHR5cGUgb2YgdGhlIGRhdGEgZW1pdHRlZCBieSB0aGUgcG9sbGluZyBmdW5jdGlvbi5cbiAqIEB0ZW1wbGF0ZSBJbnB1dCAtIFRoZSB0eXBlIG9mIHRoZSBpbnB1dCBwYXJhbWV0ZXIgdXNlZCB0byBidWlsZCBwb2xsaW5nIHBhcmFtZXRlcnMuXG4gKiBAcGFyYW0ge29iamVjdH0gb3B0aW9ucyAtIFRoZSBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHBvbGxpbmcuXG4gKiBAcGFyYW0ge251bWJlcn0gb3B0aW9ucy5pbnRlcnZhbCAtIFRoZSBpbnRlcnZhbCBpbiBtaWxsaXNlY29uZHMgYmV0d2VlbiBlYWNoIHBvbGwuXG4gKiBAcGFyYW0geyhwYXJhbXM6IGFueSkgPT4gT2JzZXJ2YWJsZTxEYXRhPiB8IERhdGF9IG9wdGlvbnMucG9sbGluZ0ZuIC0gQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYW4gT2JzZXJ2YWJsZSwgUHJvbWlzZSwgb3IgcHJpbWl0aXZlIHZhbHVlLlxuICogQHBhcmFtIHsoaW5wdXQ6IElucHV0IHwgdW5kZWZpbmVkKSA9PiBhbnl9IFtvcHRpb25zLnBhcmFtc0J1aWxkZXJdIC0gQW4gb3B0aW9uYWwgZnVuY3Rpb24gdGhhdCBidWlsZHMgcGFyYW1ldGVycyBmb3IgdGhlIHBvbGxpbmcgZnVuY3Rpb24gYmFzZWQgb24gdGhlIGlucHV0LiBUaGUgdmFsdWUgZW1pdHRlZCBieSB0aGUgdHJpZ2dlciBvYnNlcnZhYmxlIHdpbGwgc2VydmUgYXMgdGhlIHBhcmFtZXRlci5cbiAqIEBwYXJhbSB7T2JzZXJ2YWJsZTxJbnB1dD4gfCBTaWduYWw8SW5wdXQ+fSBbb3B0aW9ucy50cmlnZ2VyXSAtIEFuIG9wdGlvbmFsIE9ic2VydmFibGUgb3IgU2lnbmFsIHRoYXQgdHJpZ2dlcnMgYSBtYW51YWwgcG9sbC5cbiAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPEFzeW5jU3RhdGU8RGF0YT4+fSBBbiBPYnNlcnZhYmxlIGVtaXR0aW5nIG9iamVjdHMgcmVwcmVzZW50aW5nIHRoZSBzdGF0ZSBvZiB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBvbGw8RGF0YSwgSW5wdXQ+KG9wdGlvbnM6IHtcbiAgaW50ZXJ2YWw6IG51bWJlcjtcbiAgcG9sbGluZ0ZuOiAocGFyYW1zOiBhbnkpID0+IE9ic2VydmFibGU8RGF0YT4gfCBQcm9taXNlPERhdGE+IHwgRGF0YTtcbiAgcGFyYW1zQnVpbGRlcj86IChpbnB1dD86IElucHV0IHwgdW5kZWZpbmVkKSA9PiBhbnk7XG4gIHRyaWdnZXI/OiBPYnNlcnZhYmxlPElucHV0PiB8IFNpZ25hbDxJbnB1dD47XG59KTogT2JzZXJ2YWJsZTxBc3luY1N0YXRlPERhdGE+PiB7XG4gIGNvbnN0IHRpbWVyRW1pdFZhbHVlID0gJ19fdGltZXJfX2VtaXNzaW9uX18nO1xuICBjb25zdCB0aW1lciQgPSB0aW1lcigwLCBvcHRpb25zLmludGVydmFsKS5waXBlKG1hcCgoaSkgPT4gYCR7dGltZXJFbWl0VmFsdWV9JHtpfWApKTtcblxuICBjb25zdCB0cmlnZ2VyJCA9XG4gICAgb3B0aW9ucy50cmlnZ2VyID09PSB1bmRlZmluZWRcbiAgICAgID8gRU1QVFlcbiAgICAgIDogaXNPYnNlcnZhYmxlKG9wdGlvbnMudHJpZ2dlcilcbiAgICAgICAgPyBvcHRpb25zLnRyaWdnZXJcbiAgICAgICAgOiB0b09ic2VydmFibGUob3B0aW9ucy50cmlnZ2VyKTtcblxuICBsZXQgaW5wdXRCeVRyaWdnZXI6IElucHV0IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkOyAvLyBpZiB0cmlnZ2VyIGlzIG5vdCBwcm92aWRlZCwgaW5wdXQgd2lsbCBiZSB1bmRlZmluZWRcblxuICByZXR1cm4gbWVyZ2UodHJpZ2dlciQsIHRpbWVyJCkucGlwZShcbiAgICBleGhhdXN0TWFwKChpbnB1dCkgPT4ge1xuICAgICAgLy8gaW5wdXQgY2FuIGJlIGVpdGhlciBieSB0cmlnZ2VyIG9yIHRpbWVyXG4gICAgICBjb25zdCBpc1RpbWVyVHJpZ2dlciA9IHR5cGVvZiBpbnB1dCA9PT0gJ3N0cmluZycgJiYgaW5wdXQuaW5jbHVkZXModGltZXJFbWl0VmFsdWUpO1xuICAgICAgY29uc3QgaXNNYW51YWxUcmlnZ2VyID0gIWlzVGltZXJUcmlnZ2VyO1xuICAgICAgaWYgKGlzTWFudWFsVHJpZ2dlcikge1xuICAgICAgICBpbnB1dEJ5VHJpZ2dlciA9IGlucHV0IGFzIElucHV0O1xuICAgICAgfVxuXG4gICAgICAvLyBidWlsZCBwYXJhbXMgYnkgdHJpZ2dlciBpbnB1dFxuICAgICAgLy8gaWYgcGFyYW1zQnVpbGRlciBpcyBwcm92aWRlZCwgcGFyYW1zIHdpbGwgYmUgdGhlIHZhbHVlIG9mIHRoaXMgZnVuY3Rpb24gY2FsbFxuICAgICAgLy8gaWYgcGFyYW1zQnVpbGRlciBpcyBub3QgcHJvdmlkZWQsIHBhcmFtcyB3aWxsIGJlIHRoZSB2YWx1ZSBlbWl0dGVkIGJ5IHRoZSB0cmlnZ2VyXG4gICAgICBjb25zdCBwYXJhbXMgPSBvcHRpb25zLnBhcmFtc0J1aWxkZXIgPyBvcHRpb25zLnBhcmFtc0J1aWxkZXIoaW5wdXRCeVRyaWdnZXIpIDogaW5wdXRCeVRyaWdnZXI7XG5cbiAgICAgIC8vIE5PVEU6IHVzaW5nIGV4aGF1c3RNYXAgd2lsbCBOT1QgZW1pdCAke3RpbWVyRW1pdFZhbHVlfTAgaWYgdHJpZ2dlciBpcyBub3QgcHJvdmlkZWRcbiAgICAgIC8vIHVzaW5nIGNvbmNhdE1hcCB3aWxsIGVtaXQgJHt0aW1lckVtaXRWYWx1ZX0wIGlmIHRyaWdnZXIgaXMgbm90IHByb3ZpZGVkXG4gICAgICBjb25zdCBpc0ZpcnN0UmVxdWVzdCA9IGlucHV0ID09PSBgJHt0aW1lckVtaXRWYWx1ZX0wYDsgLy8gdGltZXIgZmlyc3QgZW1pc3Npb24gd2hlbiB0cmlnZ2VyIGlzIG5vdCBwcm92aWRlZFxuICAgICAgY29uc3Qgc2hvdWxkU2hvd0xvYWRpbmcgPSBpc01hbnVhbFRyaWdnZXIgfHwgaXNGaXJzdFJlcXVlc3Q7XG5cbiAgICAgIGNvbnN0IGZuUmVzdWx0ID0gb3B0aW9ucy5wb2xsaW5nRm4ocGFyYW1zKTtcbiAgICAgIGNvbnN0IGZuUmVzdWx0JCA9IGlzT2JzZXJ2YWJsZShmblJlc3VsdCkgPyBmblJlc3VsdCA6IGlzUHJvbWlzZShmblJlc3VsdCkgPyBmcm9tKGZuUmVzdWx0KSA6IG9mKGZuUmVzdWx0KTtcblxuICAgICAgbGV0IG9ic2VydmFibGUkID0gZm5SZXN1bHQkLnBpcGUoXG4gICAgICAgIG1hcCgoZGF0YSkgPT4gKHtsb2FkaW5nOiBmYWxzZSwgZXJyb3I6IG51bGwsIGRhdGF9KSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBvZih7bG9hZGluZzogZmFsc2UsIGVycm9yLCBkYXRhOiBudWxsfSkpLFxuICAgICAgKTtcblxuICAgICAgaWYgKHNob3VsZFNob3dMb2FkaW5nKSB7XG4gICAgICAgIG9ic2VydmFibGUkID0gb2JzZXJ2YWJsZSQucGlwZShzdGFydFdpdGgoe2xvYWRpbmc6IHRydWUsIGVycm9yOiBudWxsLCBkYXRhOiBudWxsfSkpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZSQ7XG4gICAgfSksXG4gICAgc2hhcmUoKSxcbiAgKTtcbn1cbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9sbC5vcGVyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWZ0L3NyYy9saWIvb3BlcmF0b3JzL3BvbGwub3BlcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3hELE9BQU8sRUFDTCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFVBQVUsRUFDVixJQUFJLEVBQ0osWUFBWSxFQUNaLEdBQUcsRUFDSCxLQUFLLEVBRUwsRUFBRSxFQUNGLEtBQUssRUFDTCxTQUFTLEVBQ1QsS0FBSyxHQUNOLE1BQU0sTUFBTSxDQUFDO0FBR2QsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBa0NuRCxNQUFNLFVBQVUsSUFBSSxDQUFjLE9BS2pDO0lBQ0MsTUFBTSxjQUFjLEdBQUcscUJBQXFCLENBQUM7SUFDN0MsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxjQUFjLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRXBGLE1BQU0sUUFBUSxHQUNaLE9BQU8sQ0FBQyxPQUFPLEtBQUssU0FBUztRQUMzQixDQUFDLENBQUMsS0FBSztRQUNQLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztZQUM3QixDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU87WUFDakIsQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFdEMsSUFBSSxjQUFjLEdBQXNCLFNBQVMsQ0FBQyxDQUFDLHNEQUFzRDtJQUV6RyxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUNqQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNuQiwwQ0FBMEM7UUFDMUMsTUFBTSxjQUFjLEdBQUcsT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkYsTUFBTSxlQUFlLEdBQUcsQ0FBQyxjQUFjLENBQUM7UUFDeEMsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixjQUFjLEdBQUcsS0FBYyxDQUFDO1FBQ2xDLENBQUM7UUFFRCxnQ0FBZ0M7UUFDaEMsK0VBQStFO1FBQy9FLG9GQUFvRjtRQUNwRixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGNBQXVCLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO1FBRXZHLHFGQUFxRjtRQUNyRiwwRUFBMEU7UUFDMUUsTUFBTSxjQUFjLEdBQUcsS0FBSyxLQUFLLEdBQUcsY0FBYyxHQUFHLENBQUMsQ0FBQyxvREFBb0Q7UUFDM0csTUFBTSxpQkFBaUIsR0FBRyxlQUFlLElBQUksY0FBYyxDQUFDO1FBRTVELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0MsTUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFMUcsSUFBSSxXQUFXLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FDOUIsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUMsRUFDcEQsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxDQUMvRCxDQUFDO1FBRUYsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3RCLFdBQVcsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLENBQUM7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDLENBQUMsRUFDRixLQUFLLEVBQUUsQ0FDUixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7U2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9PYnNlcnZhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBFTVBUWSxcbiAgZXhoYXVzdE1hcCxcbiAgZnJvbSxcbiAgaXNPYnNlcnZhYmxlLFxuICBtYXAsXG4gIG1lcmdlLFxuICBPYnNlcnZhYmxlLFxuICBvZixcbiAgc2hhcmUsXG4gIHN0YXJ0V2l0aCxcbiAgdGltZXIsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0FzeW5jU3RhdGV9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQge2lzUHJvbWlzZX0gZnJvbSAnLi4vdXRpbHMvaXMtcHJvbWlzZS51dGlsJztcblxuLyoqXG4gKiBQb2xscyBkYXRhIGF0IGEgc3BlY2lmaWVkIGludGVydmFsIGFuZCBjYW4gYmUgdHJpZ2dlcmVkIG1hbnVhbGx5LlxuICpcbiAqIEB0ZW1wbGF0ZSBEYXRhIC0gVGhlIHR5cGUgb2YgdGhlIGRhdGEgZW1pdHRlZCBieSB0aGUgcG9sbGluZyBmdW5jdGlvbi5cbiAqIEB0ZW1wbGF0ZSBJbnB1dCAtIFRoZSB0eXBlIG9mIHRoZSBpbnB1dCBwYXJhbWV0ZXIgdXNlZCB0byBidWlsZCBwb2xsaW5nIHBhcmFtZXRlcnMuXG4gKiBAcGFyYW0ge29iamVjdH0gb3B0aW9ucyAtIFRoZSBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHBvbGxpbmcuXG4gKiBAcGFyYW0ge251bWJlcn0gb3B0aW9ucy5pbnRlcnZhbCAtIFRoZSBpbnRlcnZhbCBpbiBtaWxsaXNlY29uZHMgYmV0d2VlbiBlYWNoIHBvbGwuXG4gKiBAcGFyYW0geyhwYXJhbXM6IGFueSkgPT4gT2JzZXJ2YWJsZTxEYXRhPiB8IERhdGF9IG9wdGlvbnMucG9sbGluZ0ZuIC0gQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYW4gT2JzZXJ2YWJsZSwgUHJvbWlzZSwgb3IgcHJpbWl0aXZlIHZhbHVlLlxuICogQHBhcmFtIHtPYnNlcnZhYmxlPElucHV0PiB8IFNpZ25hbDxJbnB1dD59IFtvcHRpb25zLnRyaWdnZXJdIC0gQW4gb3B0aW9uYWwgT2JzZXJ2YWJsZSBvciBTaWduYWwgdGhhdCB0cmlnZ2VycyBhIG1hbnVhbCBwb2xsLlxuICogQHBhcmFtIHsoaW5wdXQ6IElucHV0KSA9PiBhbnl9IFtvcHRpb25zLnBhcmFtc0J1aWxkZXJdIC0gQW4gb3B0aW9uYWwgZnVuY3Rpb24gdGhhdCBidWlsZHMgcGFyYW1ldGVycyBmb3IgdGhlIHBvbGxpbmcgZnVuY3Rpb24gYmFzZWQgb24gdGhlIGlucHV0LiBUaGUgdmFsdWUgZW1pdHRlZCBieSB0aGUgdHJpZ2dlciBvYnNlcnZhYmxlIHdpbGwgc2VydmUgYXMgdGhlIHBhcmFtZXRlci5cbiAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPEFzeW5jU3RhdGU8RGF0YT4+fSBBbiBPYnNlcnZhYmxlIGVtaXR0aW5nIG9iamVjdHMgcmVwcmVzZW50aW5nIHRoZSBzdGF0ZSBvZiB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBvbGw8RGF0YT4ob3B0aW9uczoge1xuICBpbnRlcnZhbDogbnVtYmVyO1xuICBwb2xsaW5nRm46IChwYXJhbXM6IGFueSkgPT4gT2JzZXJ2YWJsZTxEYXRhPiB8IFByb21pc2U8RGF0YT4gfCBEYXRhO1xufSk6IE9ic2VydmFibGU8QXN5bmNTdGF0ZTxEYXRhPj47XG5cbi8vIHRyaWdnZXIgb3V0cHV0IGlzIHRoZSBwb2xsaW5nRm4gcGFyYW1zJyBpbnB1dFxuZXhwb3J0IGZ1bmN0aW9uIHBvbGw8RGF0YSwgSW5wdXQ+KG9wdGlvbnM6IHtcbiAgaW50ZXJ2YWw6IG51bWJlcjtcbiAgcG9sbGluZ0ZuOiAocGFyYW1zOiBJbnB1dCkgPT4gT2JzZXJ2YWJsZTxEYXRhPiB8IFByb21pc2U8RGF0YT4gfCBEYXRhO1xuICB0cmlnZ2VyOiBPYnNlcnZhYmxlPElucHV0PiB8IFNpZ25hbDxJbnB1dD47XG59KTogT2JzZXJ2YWJsZTxBc3luY1N0YXRlPERhdGE+PjtcblxuLy8gcGFyYW1zQnVpbGRlciBleGlzdHMsIHRyaWdnZXIgb3V0cHV0IGlzIHRoZSBwYXJhbXNCdWlsZGVyIHBhcmFtcycgaW5wdXRcbmV4cG9ydCBmdW5jdGlvbiBwb2xsPERhdGEsIElucHV0PihvcHRpb25zOiB7XG4gIGludGVydmFsOiBudW1iZXI7XG4gIHBvbGxpbmdGbjogKHBhcmFtczogYW55KSA9PiBPYnNlcnZhYmxlPERhdGE+IHwgUHJvbWlzZTxEYXRhPiB8IERhdGE7XG4gIHRyaWdnZXI6IE9ic2VydmFibGU8SW5wdXQ+IHwgU2lnbmFsPElucHV0PjtcbiAgcGFyYW1zQnVpbGRlcjogKGlucHV0OiBJbnB1dCkgPT4gYW55O1xufSk6IE9ic2VydmFibGU8QXN5bmNTdGF0ZTxEYXRhPj47XG5cbmV4cG9ydCBmdW5jdGlvbiBwb2xsPERhdGEsIElucHV0PihvcHRpb25zOiB7XG4gIGludGVydmFsOiBudW1iZXI7XG4gIHBvbGxpbmdGbjogKHBhcmFtczogYW55KSA9PiBPYnNlcnZhYmxlPERhdGE+IHwgUHJvbWlzZTxEYXRhPiB8IERhdGE7XG4gIHRyaWdnZXI/OiBPYnNlcnZhYmxlPElucHV0PiB8IFNpZ25hbDxJbnB1dD47XG4gIHBhcmFtc0J1aWxkZXI/OiAoaW5wdXQ6IElucHV0KSA9PiBhbnk7XG59KTogT2JzZXJ2YWJsZTxBc3luY1N0YXRlPERhdGE+PiB7XG4gIGNvbnN0IHRpbWVyRW1pdFZhbHVlID0gJ19fdGltZXJfX2VtaXNzaW9uX18nO1xuICBjb25zdCB0aW1lciQgPSB0aW1lcigwLCBvcHRpb25zLmludGVydmFsKS5waXBlKG1hcCgoaSkgPT4gYCR7dGltZXJFbWl0VmFsdWV9JHtpfWApKTtcblxuICBjb25zdCB0cmlnZ2VyJCA9XG4gICAgb3B0aW9ucy50cmlnZ2VyID09PSB1bmRlZmluZWRcbiAgICAgID8gRU1QVFlcbiAgICAgIDogaXNPYnNlcnZhYmxlKG9wdGlvbnMudHJpZ2dlcilcbiAgICAgICAgPyBvcHRpb25zLnRyaWdnZXJcbiAgICAgICAgOiB0b09ic2VydmFibGUob3B0aW9ucy50cmlnZ2VyKTtcblxuICBsZXQgaW5wdXRCeVRyaWdnZXI6IElucHV0IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkOyAvLyBpZiB0cmlnZ2VyIGlzIG5vdCBwcm92aWRlZCwgaW5wdXQgd2lsbCBiZSB1bmRlZmluZWRcblxuICByZXR1cm4gbWVyZ2UodHJpZ2dlciQsIHRpbWVyJCkucGlwZShcbiAgICBleGhhdXN0TWFwKChpbnB1dCkgPT4ge1xuICAgICAgLy8gaW5wdXQgY2FuIGJlIGVpdGhlciBieSB0cmlnZ2VyIG9yIHRpbWVyXG4gICAgICBjb25zdCBpc1RpbWVyVHJpZ2dlciA9IHR5cGVvZiBpbnB1dCA9PT0gJ3N0cmluZycgJiYgaW5wdXQuaW5jbHVkZXModGltZXJFbWl0VmFsdWUpO1xuICAgICAgY29uc3QgaXNNYW51YWxUcmlnZ2VyID0gIWlzVGltZXJUcmlnZ2VyO1xuICAgICAgaWYgKGlzTWFudWFsVHJpZ2dlcikge1xuICAgICAgICBpbnB1dEJ5VHJpZ2dlciA9IGlucHV0IGFzIElucHV0O1xuICAgICAgfVxuXG4gICAgICAvLyBidWlsZCBwYXJhbXMgYnkgdHJpZ2dlciBpbnB1dFxuICAgICAgLy8gaWYgcGFyYW1zQnVpbGRlciBpcyBwcm92aWRlZCwgcGFyYW1zIHdpbGwgYmUgdGhlIHZhbHVlIG9mIHRoaXMgZnVuY3Rpb24gY2FsbFxuICAgICAgLy8gaWYgcGFyYW1zQnVpbGRlciBpcyBub3QgcHJvdmlkZWQsIHBhcmFtcyB3aWxsIGJlIHRoZSB2YWx1ZSBlbWl0dGVkIGJ5IHRoZSB0cmlnZ2VyXG4gICAgICBjb25zdCBwYXJhbXMgPSBvcHRpb25zLnBhcmFtc0J1aWxkZXIgPyBvcHRpb25zLnBhcmFtc0J1aWxkZXIoaW5wdXRCeVRyaWdnZXIgYXMgSW5wdXQpIDogaW5wdXRCeVRyaWdnZXI7XG5cbiAgICAgIC8vIE5PVEU6IHVzaW5nIGV4aGF1c3RNYXAgd2lsbCBOT1QgZW1pdCAke3RpbWVyRW1pdFZhbHVlfTAgaWYgdHJpZ2dlciBpcyBub3QgcHJvdmlkZWRcbiAgICAgIC8vIHVzaW5nIGNvbmNhdE1hcCB3aWxsIGVtaXQgJHt0aW1lckVtaXRWYWx1ZX0wIGlmIHRyaWdnZXIgaXMgbm90IHByb3ZpZGVkXG4gICAgICBjb25zdCBpc0ZpcnN0UmVxdWVzdCA9IGlucHV0ID09PSBgJHt0aW1lckVtaXRWYWx1ZX0wYDsgLy8gdGltZXIgZmlyc3QgZW1pc3Npb24gd2hlbiB0cmlnZ2VyIGlzIG5vdCBwcm92aWRlZFxuICAgICAgY29uc3Qgc2hvdWxkU2hvd0xvYWRpbmcgPSBpc01hbnVhbFRyaWdnZXIgfHwgaXNGaXJzdFJlcXVlc3Q7XG5cbiAgICAgIGNvbnN0IGZuUmVzdWx0ID0gb3B0aW9ucy5wb2xsaW5nRm4ocGFyYW1zKTtcbiAgICAgIGNvbnN0IGZuUmVzdWx0JCA9IGlzT2JzZXJ2YWJsZShmblJlc3VsdCkgPyBmblJlc3VsdCA6IGlzUHJvbWlzZShmblJlc3VsdCkgPyBmcm9tKGZuUmVzdWx0KSA6IG9mKGZuUmVzdWx0KTtcblxuICAgICAgbGV0IG9ic2VydmFibGUkID0gZm5SZXN1bHQkLnBpcGUoXG4gICAgICAgIG1hcCgoZGF0YSkgPT4gKHtsb2FkaW5nOiBmYWxzZSwgZXJyb3I6IG51bGwsIGRhdGF9KSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBvZih7bG9hZGluZzogZmFsc2UsIGVycm9yLCBkYXRhOiBudWxsfSkpLFxuICAgICAgKTtcblxuICAgICAgaWYgKHNob3VsZFNob3dMb2FkaW5nKSB7XG4gICAgICAgIG9ic2VydmFibGUkID0gb2JzZXJ2YWJsZSQucGlwZShzdGFydFdpdGgoe2xvYWRpbmc6IHRydWUsIGVycm9yOiBudWxsLCBkYXRhOiBudWxsfSkpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZSQ7XG4gICAgfSksXG4gICAgc2hhcmUoKSxcbiAgKTtcbn1cbiJdfQ==
@@ -2,4 +2,5 @@ export * from './array-join.pipe';
2
2
  export * from './byte-converter.pipe';
3
3
  export * from './is-https.pipe';
4
4
  export * from './mask.pipe';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL3BpcGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcnJheS1qb2luLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9ieXRlLWNvbnZlcnRlci5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtaHR0cHMucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL21hc2sucGlwZSc7XG4iXX0=
5
+ export * from './range.pipe';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL3BpcGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcnJheS1qb2luLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9ieXRlLWNvbnZlcnRlci5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtaHR0cHMucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL21hc2sucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3JhbmdlLnBpcGUnO1xuIl19
@@ -1,9 +1,9 @@
1
1
  import { Pipe } from '@angular/core';
2
- import { httpsPattern } from '../const';
2
+ import { isHttps } from '../utils';
3
3
  import * as i0 from "@angular/core";
4
4
  export class IsHttpsPipe {
5
5
  transform(value) {
6
- return httpsPattern.test(value);
6
+ return isHttps(value);
7
7
  }
8
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: IsHttpsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
9
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: IsHttpsPipe, isStandalone: true, name: "isHttps" }); }
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
15
15
  standalone: true,
16
16
  }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtaHR0cHMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWZ0L3NyYy9saWIvcGlwZXMvaXMtaHR0cHMucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUVsRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sVUFBVSxDQUFDOztBQU10QyxNQUFNLE9BQU8sV0FBVztJQUN0QixTQUFTLENBQUMsS0FBYTtRQUNyQixPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQzs4R0FIVSxXQUFXOzRHQUFYLFdBQVc7OzJGQUFYLFdBQVc7a0JBSnZCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFNBQVM7b0JBQ2YsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtodHRwc1BhdHRlcm59IGZyb20gJy4uL2NvbnN0JztcblxuQFBpcGUoe1xuICBuYW1lOiAnaXNIdHRwcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIElzSHR0cHNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGh0dHBzUGF0dGVybi50ZXN0KHZhbHVlKTtcbiAgfVxufVxuIl19
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtaHR0cHMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWZ0L3NyYy9saWIvcGlwZXMvaXMtaHR0cHMucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUVsRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sVUFBVSxDQUFDOztBQU1qQyxNQUFNLE9BQU8sV0FBVztJQUN0QixTQUFTLENBQUMsS0FBYTtRQUNyQixPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDOzhHQUhVLFdBQVc7NEdBQVgsV0FBVzs7MkZBQVgsV0FBVztrQkFKdkIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsU0FBUztvQkFDZixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge2lzSHR0cHN9IGZyb20gJy4uL3V0aWxzJztcblxuQFBpcGUoe1xuICBuYW1lOiAnaXNIdHRwcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIElzSHR0cHNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzSHR0cHModmFsdWUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { range } from '../utils';
3
+ import * as i0 from "@angular/core";
4
+ export class RangePipe {
5
+ transform(value) {
6
+ const input = value;
7
+ return range(...input);
8
+ }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RangePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
10
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: RangePipe, isStandalone: true, name: "range" }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RangePipe, decorators: [{
13
+ type: Pipe,
14
+ args: [{
15
+ name: 'range',
16
+ standalone: true,
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWZ0L3NyYy9saWIvcGlwZXMvcmFuZ2UucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUVsRCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sVUFBVSxDQUFDOztBQU0vQixNQUFNLE9BQU8sU0FBUztJQUtwQixTQUFTLENBQUMsS0FBYztRQUN0QixNQUFNLEtBQUssR0FBRyxLQUEwQyxDQUFDO1FBQ3pELE9BQU8sS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0FSVSxTQUFTOzRHQUFULFNBQVM7OzJGQUFULFNBQVM7a0JBSnJCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLE9BQU87b0JBQ2IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtyYW5nZX0gZnJvbSAnLi4vdXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdyYW5nZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFJhbmdlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWU6IFtudW1iZXJdKTogbnVtYmVyW107XG4gIHRyYW5zZm9ybSh2YWx1ZTogW251bWJlciwgbnVtYmVyXSk6IG51bWJlcltdO1xuICB0cmFuc2Zvcm0odmFsdWU6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyXSk6IG51bWJlcltdO1xuICB0cmFuc2Zvcm0odmFsdWU6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBib29sZWFuXSk6IG51bWJlcltdO1xuICB0cmFuc2Zvcm0odmFsdWU6IHVua25vd24pOiBudW1iZXJbXSB7XG4gICAgY29uc3QgaW5wdXQgPSB2YWx1ZSBhcyBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgYm9vbGVhbl07XG4gICAgcmV0dXJuIHJhbmdlKC4uLmlucHV0KTtcbiAgfVxufVxuIl19
@@ -2,5 +2,8 @@ export * from './difference-in-days.util';
2
2
  export * from './form.util';
3
3
  export * from './is-empty.util';
4
4
  export * from './is-equal.util';
5
+ export * from './omit-by.util';
5
6
  export * from './pick-by.util';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RpZmZlcmVuY2UtaW4tZGF5cy51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtZW1wdHkudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL2lzLWVxdWFsLnV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi9waWNrLWJ5LnV0aWwnO1xuIl19
7
+ export * from './range.util';
8
+ export * from './url.util';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGlmZmVyZW5jZS1pbi1kYXlzLnV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLnV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1lbXB0eS51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtZXF1YWwudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL29taXQtYnkudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL3BpY2stYnkudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL3JhbmdlLnV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi91cmwudXRpbCc7XG4iXX0=
@@ -0,0 +1,12 @@
1
+ import { pickBy } from './pick-by.util';
2
+ /**
3
+ * Create an object composed of object properties that do not satisfy a given condition.
4
+ * @param {T} source - The object to omit properties from.
5
+ * @param {(value: T[keyof T], key: string) => boolean} predicate - The function invoked per property.
6
+ * @returns {Partial<T>} - Returns the new object.
7
+ */
8
+ export function omitBy(source, predicate) {
9
+ // Negate the predicate and pass it to pickBy
10
+ return pickBy(source, (value, key) => !predicate(value, key));
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib21pdC1ieS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpZnQvc3JjL2xpYi91dGlscy9vbWl0LWJ5LnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXRDOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLE1BQU0sQ0FBSSxNQUFTLEVBQUUsU0FBc0Q7SUFDekYsNkNBQTZDO0lBQzdDLE9BQU8sTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ2hFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3BpY2tCeX0gZnJvbSAnLi9waWNrLWJ5LnV0aWwnO1xuXG4vKipcbiAqIENyZWF0ZSBhbiBvYmplY3QgY29tcG9zZWQgb2Ygb2JqZWN0IHByb3BlcnRpZXMgdGhhdCBkbyBub3Qgc2F0aXNmeSBhIGdpdmVuIGNvbmRpdGlvbi5cbiAqIEBwYXJhbSB7VH0gc291cmNlIC0gVGhlIG9iamVjdCB0byBvbWl0IHByb3BlcnRpZXMgZnJvbS5cbiAqIEBwYXJhbSB7KHZhbHVlOiBUW2tleW9mIFRdLCBrZXk6IHN0cmluZykgPT4gYm9vbGVhbn0gcHJlZGljYXRlIC0gVGhlIGZ1bmN0aW9uIGludm9rZWQgcGVyIHByb3BlcnR5LlxuICogQHJldHVybnMge1BhcnRpYWw8VD59IC0gUmV0dXJucyB0aGUgbmV3IG9iamVjdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9taXRCeTxUPihzb3VyY2U6IFQsIHByZWRpY2F0ZTogKHZhbHVlOiBUW2tleW9mIFRdLCBrZXk6IHN0cmluZykgPT4gYm9vbGVhbik6IFBhcnRpYWw8VD4ge1xuICAvLyBOZWdhdGUgdGhlIHByZWRpY2F0ZSBhbmQgcGFzcyBpdCB0byBwaWNrQnlcbiAgcmV0dXJuIHBpY2tCeShzb3VyY2UsICh2YWx1ZSwga2V5KSA9PiAhcHJlZGljYXRlKHZhbHVlLCBrZXkpKTtcbn1cbiJdfQ==
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Creates an array of numbers (positive and/or negative) progressing from start up to, but not including, end.
3
+ * A step of -1 is used if a negative start is specified without an end or step.
4
+ * If end is not specified, it's set to start with start then set to 0.
5
+ *
6
+ * @param {number} start The start of the range.
7
+ * @param {number} end The end of the range.
8
+ * @param {number} step The value to increment or decrement by.
9
+ * @param {boolean} [fromRight] Specify iterating from right to left.
10
+ * @returns {Array} Returns the range of numbers.
11
+ */
12
+ export function range(start, end, step, fromRight = false) {
13
+ // if range takes only 1 input, that input is end, start with 0
14
+ if (end === undefined) {
15
+ end = start;
16
+ start = 0;
17
+ }
18
+ step = step === undefined ? (start < end ? 1 : -1) : step;
19
+ let index = -1;
20
+ let length = Math.max(Math.ceil((end - start) / (step || 1)), 0);
21
+ const result = new Array(length);
22
+ while (length--) {
23
+ result[fromRight ? length : ++index] = start;
24
+ start += step;
25
+ }
26
+ return result;
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWZ0L3NyYy9saWIvdXRpbHMvcmFuZ2UudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxVQUFVLEtBQUssQ0FBQyxLQUFhLEVBQUUsR0FBd0IsRUFBRSxJQUF5QixFQUFFLFNBQVMsR0FBRyxLQUFLO0lBQ3pHLCtEQUErRDtJQUMvRCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN0QixHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ1osS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxJQUFJLEdBQUcsSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUUxRCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNmLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLE1BQU0sTUFBTSxHQUFHLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWpDLE9BQU8sTUFBTSxFQUFFLEVBQUUsQ0FBQztRQUNoQixNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQzdDLEtBQUssSUFBSSxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENyZWF0ZXMgYW4gYXJyYXkgb2YgbnVtYmVycyAocG9zaXRpdmUgYW5kL29yIG5lZ2F0aXZlKSBwcm9ncmVzc2luZyBmcm9tIHN0YXJ0IHVwIHRvLCBidXQgbm90IGluY2x1ZGluZywgZW5kLlxuICogQSBzdGVwIG9mIC0xIGlzIHVzZWQgaWYgYSBuZWdhdGl2ZSBzdGFydCBpcyBzcGVjaWZpZWQgd2l0aG91dCBhbiBlbmQgb3Igc3RlcC5cbiAqIElmIGVuZCBpcyBub3Qgc3BlY2lmaWVkLCBpdCdzIHNldCB0byBzdGFydCB3aXRoIHN0YXJ0IHRoZW4gc2V0IHRvIDAuXG4gKlxuICogQHBhcmFtIHtudW1iZXJ9IHN0YXJ0IFRoZSBzdGFydCBvZiB0aGUgcmFuZ2UuXG4gKiBAcGFyYW0ge251bWJlcn0gZW5kIFRoZSBlbmQgb2YgdGhlIHJhbmdlLlxuICogQHBhcmFtIHtudW1iZXJ9IHN0ZXAgVGhlIHZhbHVlIHRvIGluY3JlbWVudCBvciBkZWNyZW1lbnQgYnkuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IFtmcm9tUmlnaHRdIFNwZWNpZnkgaXRlcmF0aW5nIGZyb20gcmlnaHQgdG8gbGVmdC5cbiAqIEByZXR1cm5zIHtBcnJheX0gUmV0dXJucyB0aGUgcmFuZ2Ugb2YgbnVtYmVycy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJhbmdlKHN0YXJ0OiBudW1iZXIsIGVuZD86IG51bWJlciB8IHVuZGVmaW5lZCwgc3RlcD86IG51bWJlciB8IHVuZGVmaW5lZCwgZnJvbVJpZ2h0ID0gZmFsc2UpIHtcbiAgLy8gaWYgcmFuZ2UgdGFrZXMgb25seSAxIGlucHV0LCB0aGF0IGlucHV0IGlzIGVuZCwgc3RhcnQgd2l0aCAwXG4gIGlmIChlbmQgPT09IHVuZGVmaW5lZCkge1xuICAgIGVuZCA9IHN0YXJ0O1xuICAgIHN0YXJ0ID0gMDtcbiAgfVxuXG4gIHN0ZXAgPSBzdGVwID09PSB1bmRlZmluZWQgPyAoc3RhcnQgPCBlbmQgPyAxIDogLTEpIDogc3RlcDtcblxuICBsZXQgaW5kZXggPSAtMTtcbiAgbGV0IGxlbmd0aCA9IE1hdGgubWF4KE1hdGguY2VpbCgoZW5kIC0gc3RhcnQpIC8gKHN0ZXAgfHwgMSkpLCAwKTtcbiAgY29uc3QgcmVzdWx0ID0gbmV3IEFycmF5KGxlbmd0aCk7XG5cbiAgd2hpbGUgKGxlbmd0aC0tKSB7XG4gICAgcmVzdWx0W2Zyb21SaWdodCA/IGxlbmd0aCA6ICsraW5kZXhdID0gc3RhcnQ7XG4gICAgc3RhcnQgKz0gc3RlcDtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuIl19
@@ -0,0 +1,14 @@
1
+ import { fqdnRegex, httpsPattern, ipRegex, urlPattern } from '../const';
2
+ export function isIP(ip) {
3
+ return ipRegex.test(ip);
4
+ }
5
+ export function isFQDN(fqdn) {
6
+ return fqdnRegex.test(fqdn);
7
+ }
8
+ export function isURL(url) {
9
+ return urlPattern.test(url);
10
+ }
11
+ export function isHttps(url) {
12
+ return httpsPattern.test(url);
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL3V0aWxzL3VybC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFFdEUsTUFBTSxVQUFVLElBQUksQ0FBQyxFQUFVO0lBQzdCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRUQsTUFBTSxVQUFVLE1BQU0sQ0FBQyxJQUFZO0lBQ2pDLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUM5QixDQUFDO0FBRUQsTUFBTSxVQUFVLEtBQUssQ0FBQyxHQUFXO0lBQy9CLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUM5QixDQUFDO0FBRUQsTUFBTSxVQUFVLE9BQU8sQ0FBQyxHQUFXO0lBQ2pDLE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtmcWRuUmVnZXgsIGh0dHBzUGF0dGVybiwgaXBSZWdleCwgdXJsUGF0dGVybn0gZnJvbSAnLi4vY29uc3QnO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNJUChpcDogc3RyaW5nKSB7XG4gIHJldHVybiBpcFJlZ2V4LnRlc3QoaXApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGUUROKGZxZG46IHN0cmluZykge1xuICByZXR1cm4gZnFkblJlZ2V4LnRlc3QoZnFkbik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1VSTCh1cmw6IHN0cmluZykge1xuICByZXR1cm4gdXJsUGF0dGVybi50ZXN0KHVybCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0h0dHBzKHVybDogc3RyaW5nKSB7XG4gIHJldHVybiBodHRwc1BhdHRlcm4udGVzdCh1cmwpO1xufVxuIl19
@@ -1,3 +1,4 @@
1
+ export * from './intersection.validator';
1
2
  export * from './unique.validator';
2
3
  export * from './url.validator';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL3ZhbGlkYXRvcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi91bmlxdWUudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vdXJsLnZhbGlkYXRvcic7XG4iXX0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGlmdC9zcmMvbGliL3ZhbGlkYXRvcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ludGVyc2VjdGlvbi52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi91bmlxdWUudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vdXJsLnZhbGlkYXRvcic7XG4iXX0=
@@ -0,0 +1,35 @@
1
+ /**
2
+ * A custom validator function that checks for intersection between two form controls. The two controls' values must be arrays.
3
+ *
4
+ * @param {string} controlName1 - The name of the first form control.
5
+ * @param {string} controlName2 - The name of the second form control.
6
+ * @returns {ValidatorFn} A function that validates the form group and returns an error if there is an intersection.
7
+ */
8
+ export function intersectionValidator(controlName1, controlName2) {
9
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ return (formGroup) => {
11
+ const control1 = formGroup.get(controlName1);
12
+ const control2 = formGroup.get(controlName2);
13
+ if (!control1 || !control2) {
14
+ return null; // If either control is undefined or null
15
+ }
16
+ const value1 = control1.value;
17
+ const value2 = control2.value;
18
+ // Assuming both values are arrays
19
+ if (!Array.isArray(value1) || !Array.isArray(value2)) {
20
+ return null;
21
+ }
22
+ const intersection = value1.filter((value) => value2.includes(value));
23
+ if (intersection.length > 0) {
24
+ control1.setErrors({ intersection: true });
25
+ control2.setErrors({ intersection: true });
26
+ return { intersection: true };
27
+ }
28
+ else {
29
+ control1.setErrors(null);
30
+ control2.setErrors(null);
31
+ return null;
32
+ }
33
+ };
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJzZWN0aW9uLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWZ0L3NyYy9saWIvdmFsaWRhdG9ycy9pbnRlcnNlY3Rpb24udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxxQkFBcUIsQ0FBYSxZQUFvQixFQUFFLFlBQW9CO0lBQzFGLDhEQUE4RDtJQUM5RCxPQUFPLENBQUMsU0FBMEIsRUFBK0IsRUFBRTtRQUNqRSxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzNCLE9BQU8sSUFBSSxDQUFDLENBQUMseUNBQXlDO1FBQ3hELENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQzlCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUM7UUFFOUIsa0NBQWtDO1FBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3JELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFRLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUV6RSxJQUFJLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDNUIsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFDLFlBQVksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1lBQ3pDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBQyxZQUFZLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztZQUN6QyxPQUFPLEVBQUMsWUFBWSxFQUFFLElBQUksRUFBQyxDQUFDO1FBQzlCLENBQUM7YUFBTSxDQUFDO1lBQ04sUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6QixRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3pCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLyoqXG4gKiBBIGN1c3RvbSB2YWxpZGF0b3IgZnVuY3Rpb24gdGhhdCBjaGVja3MgZm9yIGludGVyc2VjdGlvbiBiZXR3ZWVuIHR3byBmb3JtIGNvbnRyb2xzLiBUaGUgdHdvIGNvbnRyb2xzJyB2YWx1ZXMgbXVzdCBiZSBhcnJheXMuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGNvbnRyb2xOYW1lMSAtIFRoZSBuYW1lIG9mIHRoZSBmaXJzdCBmb3JtIGNvbnRyb2wuXG4gKiBAcGFyYW0ge3N0cmluZ30gY29udHJvbE5hbWUyIC0gVGhlIG5hbWUgb2YgdGhlIHNlY29uZCBmb3JtIGNvbnRyb2wuXG4gKiBAcmV0dXJucyB7VmFsaWRhdG9yRm59IEEgZnVuY3Rpb24gdGhhdCB2YWxpZGF0ZXMgdGhlIGZvcm0gZ3JvdXAgYW5kIHJldHVybnMgYW4gZXJyb3IgaWYgdGhlcmUgaXMgYW4gaW50ZXJzZWN0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaW50ZXJzZWN0aW9uVmFsaWRhdG9yPFQgPSBzdHJpbmc+KGNvbnRyb2xOYW1lMTogc3RyaW5nLCBjb250cm9sTmFtZTI6IHN0cmluZyk6IFZhbGlkYXRvckZuIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgcmV0dXJuIChmb3JtR3JvdXA6IEFic3RyYWN0Q29udHJvbCk6IHtba2V5OiBzdHJpbmddOiBhbnl9IHwgbnVsbCA9PiB7XG4gICAgY29uc3QgY29udHJvbDEgPSBmb3JtR3JvdXAuZ2V0KGNvbnRyb2xOYW1lMSk7XG4gICAgY29uc3QgY29udHJvbDIgPSBmb3JtR3JvdXAuZ2V0KGNvbnRyb2xOYW1lMik7XG5cbiAgICBpZiAoIWNvbnRyb2wxIHx8ICFjb250cm9sMikge1xuICAgICAgcmV0dXJuIG51bGw7IC8vIElmIGVpdGhlciBjb250cm9sIGlzIHVuZGVmaW5lZCBvciBudWxsXG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUxID0gY29udHJvbDEudmFsdWU7XG4gICAgY29uc3QgdmFsdWUyID0gY29udHJvbDIudmFsdWU7XG5cbiAgICAvLyBBc3N1bWluZyBib3RoIHZhbHVlcyBhcmUgYXJyYXlzXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlMSkgfHwgIUFycmF5LmlzQXJyYXkodmFsdWUyKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgaW50ZXJzZWN0aW9uID0gdmFsdWUxLmZpbHRlcigodmFsdWU6IFQpID0+IHZhbHVlMi5pbmNsdWRlcyh2YWx1ZSkpO1xuXG4gICAgaWYgKGludGVyc2VjdGlvbi5sZW5ndGggPiAwKSB7XG4gICAgICBjb250cm9sMS5zZXRFcnJvcnMoe2ludGVyc2VjdGlvbjogdHJ1ZX0pO1xuICAgICAgY29udHJvbDIuc2V0RXJyb3JzKHtpbnRlcnNlY3Rpb246IHRydWV9KTtcbiAgICAgIHJldHVybiB7aW50ZXJzZWN0aW9uOiB0cnVlfTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29udHJvbDEuc2V0RXJyb3JzKG51bGwpO1xuICAgICAgY29udHJvbDIuc2V0RXJyb3JzKG51bGwpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xufVxuIl19