imng-nrsrx-client-utils 5.261.3 → 5.263.2

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.
package/esm2020/index.mjs CHANGED
@@ -9,4 +9,5 @@ export * from './lib/id-type';
9
9
  export * from './lib/default-proxy-settings';
10
10
  export * from './lib/is-null-or-undefined';
11
11
  export * from './lib/num-pad';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2ltbmctbnJzcngtY2xpZW50LXV0aWxzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL25yc3J4LWFwaS1jbGllbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZ3VpZC5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS5leHRlbnNpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FycmF5LmV4dGVuc2lvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXJyYXkuaGVscGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25vcm1hbGl6ZS1yZXF1ZXN0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZhbHVlLXR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaWQtdHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kZWZhdWx0LXByb3h5LXNldHRpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lzLW51bGwtb3ItdW5kZWZpbmVkJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL251bS1wYWQnO1xuIl19
12
+ export * from './lib/get-related-value';
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2ltbmctbnJzcngtY2xpZW50LXV0aWxzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvbnJzcngtYXBpLWNsaWVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ndWlkLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLmV4dGVuc2lvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXJyYXkuZXh0ZW5zaW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcnJheS5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbm9ybWFsaXplLXJlcXVlc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmFsdWUtdHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pZC10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RlZmF1bHQtcHJveHktc2V0dGluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaXMtbnVsbC1vci11bmRlZmluZWQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbnVtLXBhZCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9nZXQtcmVsYXRlZC12YWx1ZSc7XG4iXX0=
@@ -0,0 +1,11 @@
1
+ export function getRelatedValue(obj, ...segments) {
2
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
+ let result = obj; //NOSONAR
4
+ segments.forEach((segment) => {
5
+ if (result) {
6
+ result = result[segment];
7
+ }
8
+ });
9
+ return result;
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXJlbGF0ZWQtdmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2ltbmctbnJzcngtY2xpZW50LXV0aWxzL3NyYy9saWIvZ2V0LXJlbGF0ZWQtdmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsR0FBVyxFQUNYLEdBQUcsUUFBa0I7SUFFckIsOERBQThEO0lBQzlELElBQUksTUFBTSxHQUFRLEdBQUcsQ0FBQyxDQUFDLFNBQVM7SUFDaEMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQzNCLElBQUksTUFBTSxFQUFFO1lBQ1YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMxQjtJQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBnZXRSZWxhdGVkVmFsdWU8RU5USVRZPihcbiAgb2JqOiBFTlRJVFksXG4gIC4uLnNlZ21lbnRzOiBzdHJpbmdbXVxuKTogdW5rbm93biB8IHVuZGVmaW5lZCB8IG51bGwge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICBsZXQgcmVzdWx0OiBhbnkgPSBvYmo7IC8vTk9TT05BUlxuICBzZWdtZW50cy5mb3JFYWNoKChzZWdtZW50KSA9PiB7XG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgcmVzdWx0ID0gcmVzdWx0W3NlZ21lbnRdO1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiByZXN1bHQ7XG59XG4iXX0=
@@ -130,9 +130,20 @@ function isNullOrUndefined(obj) {
130
130
  return obj === undefined || obj === null;
131
131
  }
132
132
 
133
+ function getRelatedValue(obj, ...segments) {
134
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
135
+ let result = obj; //NOSONAR
136
+ segments.forEach((segment) => {
137
+ if (result) {
138
+ result = result[segment];
139
+ }
140
+ });
141
+ return result;
142
+ }
143
+
133
144
  /**
134
145
  * Generated bundle index. Do not edit.
135
146
  */
136
147
 
137
- export { DAYS_PER_WEEK, GuidHelper, MILLI_SECS_PER_DAY, MILLI_SECS_PER_SEC, NrsrxBaseApiClientService, defaultProxyDebugSettings, defaultProxySettings, distinct, flat, isNullOrUndefined, isaDate, isaNumber, isaString, normalizeRequest, numPad, shortDateOptions, toLocalTimeStamp, toShortDateString, weekOfYear };
148
+ export { DAYS_PER_WEEK, GuidHelper, MILLI_SECS_PER_DAY, MILLI_SECS_PER_SEC, NrsrxBaseApiClientService, defaultProxyDebugSettings, defaultProxySettings, distinct, flat, getRelatedValue, isNullOrUndefined, isaDate, isaNumber, isaString, normalizeRequest, numPad, shortDateOptions, toLocalTimeStamp, toShortDateString, weekOfYear };
138
149
  //# sourceMappingURL=imng-nrsrx-client-utils.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"imng-nrsrx-client-utils.mjs","sources":["../../../../libs/imng-nrsrx-client-utils/src/lib/nrsrx-api-client.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/guid.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/num-pad.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/date.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/id-type.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/normalize-request.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/default-proxy-settings.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/is-null-or-undefined.ts","../../../../libs/imng-nrsrx-client-utils/src/imng-nrsrx-client-utils.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { IdType } from './id-type';\n\nexport class NrsrxBaseApiClientService<T extends { id?: IdType | null }> {\n public url = '';\n constructor(protected readonly http: HttpClient) {}\n // Used to insert entities on NRSRx based API endpoints\n public post(payload: T): Observable<T> {\n return this.http.post<T>(\n payload.id ? `${this.url}?id=${payload.id}` : this.url,\n payload,\n );\n }\n\n // Used to update entities on NRSRx based API endpoints\n public put(payload: T): Observable<T> {\n return this.http.put<T>(`${this.url}?id=${payload.id}`, payload);\n }\n\n public delete(payload: T): Observable<T> {\n return this.http.delete<T>(`${this.url}?id=${payload.id}`);\n }\n}\n","export class GuidHelper {\n private static readonly guidSegmentCriteria = `[a-f0-9]`;\n private static readonly guidRegexWithDashes = new RegExp(`${GuidHelper.guidSegmentCriteria}{8}-${GuidHelper.guidSegmentCriteria}{4}-` +\n `${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}`, 'gim');\n private static readonly dashRegex = /-/g;\n public static minimize(str: string): string {\n let m: RegExpExecArray | null;\n while ((m = this.guidRegexWithDashes.exec(str)) !== null) {\n m.forEach(element => {\n str = str.replace(element, element.replace(this.dashRegex, ''));\n });\n }\n return str;\n }\n}\n","export function numPad(x: number, maxLength: number = 2) {\n return x.toString().padStart(maxLength, \"0\");\n}\n","import { numPad } from './num-pad';\n\ndeclare global {\n export interface Date {\n toShortDateString(): string;\n weekOfYear(): number;\n toLocalTimeStamp(): string;\n }\n}\n\nexport const shortDateOptions: Intl.DateTimeFormatOptions = {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric',\n};\nexport const MILLI_SECS_PER_DAY = 86400000;\nexport const MILLI_SECS_PER_SEC = 60000;\nexport const DAYS_PER_WEEK = 7;\nif (!Date.prototype.toShortDateString) {\n //NOSONAR\n Date.prototype.toShortDateString = function (this: Date): string { //NOSONAR\n return toShortDateString(this);\n };\n}\n\nif (!Date.prototype.weekOfYear) {\n //NOSONAR\n // tslint:disable-next-line: space-before-function-paren\n Date.prototype.weekOfYear = function (this: Date): number { //NOSONAR\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n return weekOfYear(this);\n };\n}\nexport { };\n\nexport function weekOfYear(dt: Date): number {\n const onejan = new Date(dt.getFullYear(), 0, 1);\n return Math.ceil(((dt.getTime() - onejan.getTime()) / MILLI_SECS_PER_DAY + onejan.getDay() + 1) / DAYS_PER_WEEK);\n}\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toLocalTimeStamp(dt: Date = new Date()): string {\n return `${dt.getFullYear()}${numPad(dt.getMonth() + 1)}${numPad(dt.getDate())}${numPad(dt.getHours())}${numPad(dt.getMinutes())}${numPad(dt.getSeconds())}-${numPad(dt.getMilliseconds(), 3)}`;\n}\n\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toShortDateString(dt: Date): string {\n const locale =\n navigator.language || (navigator.languages && navigator.languages.length > 0) ? navigator.languages[0] : 'en-US';\n\n return dt?.toLocaleDateString(locale, shortDateOptions);\n}\n","export function distinct<T>(arr: T[]): T[] {\n return arr.filter((value, index, array) => array.indexOf(value) === index);\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function flat<T>(arr: T[] | any): T[] { //NOSONAR\n return arr.reduce((acc: T[], val: T[]) => acc.concat(val), []);\n}\n","import { distinct, flat } from './array.helper';\n\ndeclare global {\n export interface Array<T> {\n distinct(): T[];\n flat(): T;\n }\n}\n\nif (!Array.prototype.distinct) {\n Array.prototype.distinct = function <T>(this: T[]): T[] { //NOSONAR\n return distinct(this);\n };\n}\n\nif (!Array.prototype.flat) {\n Array.prototype.flat = function <T>(this: T[][] | T[]): T[] { //NOSONAR\n return flat(this);\n };\n}\nexport { };\n","export type IdType = number | string | Date;\n\nexport function isaNumber(value: unknown): value is number {\n const type = typeof value;\n return type === 'number' || type === 'bigint';\n}\n\nexport function isaString(value: unknown): value is string {\n return typeof value === 'string';\n}\nexport function isaDate(value: unknown): value is Date {\n return value instanceof Date;\n}\n","import { isaString } from './id-type';\n/**\n * Summary: This will update an object to make all properties with empty string values have null values instead.\n * @usageNotes\n * Only use this method with plain objects.\n**/\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function normalizeRequest<T extends object>(payload: T): T {\n for (const x in payload) {\n const val: unknown = payload[x];\n if ((isaString(val) && !val.length) ||\n (Array.isArray(val) && !val.length)) {\n payload[x] = null as never;\n }\n }\n return payload;\n}\n","\nexport const defaultProxySettings = {\n\n secure: true,\n changeOrigin: true,\n onProxyRes: (proxyRes: { headers: { [x: string]: string; }; }) =>\n proxyRes.headers['Cache-Control'] = `max-age=2590000, public`\n};\nexport const defaultProxyDebugSettings =\n{\n ...defaultProxySettings,\n logLevel: 'debug',\n};\n","export function isNullOrUndefined(obj: unknown): boolean {\n return obj === undefined || obj === null;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imng-nrsrx-client-utils.mjs","sources":["../../../../libs/imng-nrsrx-client-utils/src/lib/nrsrx-api-client.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/guid.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/num-pad.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/date.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/id-type.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/normalize-request.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/default-proxy-settings.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/is-null-or-undefined.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/get-related-value.ts","../../../../libs/imng-nrsrx-client-utils/src/imng-nrsrx-client-utils.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { IdType } from './id-type';\n\nexport class NrsrxBaseApiClientService<T extends { id?: IdType | null }> {\n public url = '';\n constructor(protected readonly http: HttpClient) {}\n // Used to insert entities on NRSRx based API endpoints\n public post(payload: T): Observable<T> {\n return this.http.post<T>(\n payload.id ? `${this.url}?id=${payload.id}` : this.url,\n payload,\n );\n }\n\n // Used to update entities on NRSRx based API endpoints\n public put(payload: T): Observable<T> {\n return this.http.put<T>(`${this.url}?id=${payload.id}`, payload);\n }\n\n public delete(payload: T): Observable<T> {\n return this.http.delete<T>(`${this.url}?id=${payload.id}`);\n }\n}\n","export class GuidHelper {\n private static readonly guidSegmentCriteria = `[a-f0-9]`;\n private static readonly guidRegexWithDashes = new RegExp(`${GuidHelper.guidSegmentCriteria}{8}-${GuidHelper.guidSegmentCriteria}{4}-` +\n `${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}`, 'gim');\n private static readonly dashRegex = /-/g;\n public static minimize(str: string): string {\n let m: RegExpExecArray | null;\n while ((m = this.guidRegexWithDashes.exec(str)) !== null) {\n m.forEach(element => {\n str = str.replace(element, element.replace(this.dashRegex, ''));\n });\n }\n return str;\n }\n}\n","export function numPad(x: number, maxLength: number = 2) {\n return x.toString().padStart(maxLength, \"0\");\n}\n","import { numPad } from './num-pad';\n\ndeclare global {\n export interface Date {\n toShortDateString(): string;\n weekOfYear(): number;\n toLocalTimeStamp(): string;\n }\n}\n\nexport const shortDateOptions: Intl.DateTimeFormatOptions = {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric',\n};\nexport const MILLI_SECS_PER_DAY = 86400000;\nexport const MILLI_SECS_PER_SEC = 60000;\nexport const DAYS_PER_WEEK = 7;\nif (!Date.prototype.toShortDateString) {\n //NOSONAR\n Date.prototype.toShortDateString = function (this: Date): string { //NOSONAR\n return toShortDateString(this);\n };\n}\n\nif (!Date.prototype.weekOfYear) {\n //NOSONAR\n // tslint:disable-next-line: space-before-function-paren\n Date.prototype.weekOfYear = function (this: Date): number { //NOSONAR\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n return weekOfYear(this);\n };\n}\nexport { };\n\nexport function weekOfYear(dt: Date): number {\n const onejan = new Date(dt.getFullYear(), 0, 1);\n return Math.ceil(((dt.getTime() - onejan.getTime()) / MILLI_SECS_PER_DAY + onejan.getDay() + 1) / DAYS_PER_WEEK);\n}\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toLocalTimeStamp(dt: Date = new Date()): string {\n return `${dt.getFullYear()}${numPad(dt.getMonth() + 1)}${numPad(dt.getDate())}${numPad(dt.getHours())}${numPad(dt.getMinutes())}${numPad(dt.getSeconds())}-${numPad(dt.getMilliseconds(), 3)}`;\n}\n\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toShortDateString(dt: Date): string {\n const locale =\n navigator.language || (navigator.languages && navigator.languages.length > 0) ? navigator.languages[0] : 'en-US';\n\n return dt?.toLocaleDateString(locale, shortDateOptions);\n}\n","export function distinct<T>(arr: T[]): T[] {\n return arr.filter((value, index, array) => array.indexOf(value) === index);\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function flat<T>(arr: T[] | any): T[] { //NOSONAR\n return arr.reduce((acc: T[], val: T[]) => acc.concat(val), []);\n}\n","import { distinct, flat } from './array.helper';\n\ndeclare global {\n export interface Array<T> {\n distinct(): T[];\n flat(): T;\n }\n}\n\nif (!Array.prototype.distinct) {\n Array.prototype.distinct = function <T>(this: T[]): T[] { //NOSONAR\n return distinct(this);\n };\n}\n\nif (!Array.prototype.flat) {\n Array.prototype.flat = function <T>(this: T[][] | T[]): T[] { //NOSONAR\n return flat(this);\n };\n}\nexport { };\n","export type IdType = number | string | Date;\n\nexport function isaNumber(value: unknown): value is number {\n const type = typeof value;\n return type === 'number' || type === 'bigint';\n}\n\nexport function isaString(value: unknown): value is string {\n return typeof value === 'string';\n}\nexport function isaDate(value: unknown): value is Date {\n return value instanceof Date;\n}\n","import { isaString } from './id-type';\n/**\n * Summary: This will update an object to make all properties with empty string values have null values instead.\n * @usageNotes\n * Only use this method with plain objects.\n**/\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function normalizeRequest<T extends object>(payload: T): T {\n for (const x in payload) {\n const val: unknown = payload[x];\n if ((isaString(val) && !val.length) ||\n (Array.isArray(val) && !val.length)) {\n payload[x] = null as never;\n }\n }\n return payload;\n}\n","\nexport const defaultProxySettings = {\n\n secure: true,\n changeOrigin: true,\n onProxyRes: (proxyRes: { headers: { [x: string]: string; }; }) =>\n proxyRes.headers['Cache-Control'] = `max-age=2590000, public`\n};\nexport const defaultProxyDebugSettings =\n{\n ...defaultProxySettings,\n logLevel: 'debug',\n};\n","export function isNullOrUndefined(obj: unknown): boolean {\n return obj === undefined || obj === null;\n}\n","export function getRelatedValue<ENTITY>(\n obj: ENTITY,\n ...segments: string[]\n): unknown | undefined | null {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let result: any = obj; //NOSONAR\n segments.forEach((segment) => {\n if (result) {\n result = result[segment];\n }\n });\n return result;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -133,9 +133,20 @@ function isNullOrUndefined(obj) {
133
133
  return obj === undefined || obj === null;
134
134
  }
135
135
 
136
+ function getRelatedValue(obj, ...segments) {
137
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
138
+ let result = obj; //NOSONAR
139
+ segments.forEach((segment) => {
140
+ if (result) {
141
+ result = result[segment];
142
+ }
143
+ });
144
+ return result;
145
+ }
146
+
136
147
  /**
137
148
  * Generated bundle index. Do not edit.
138
149
  */
139
150
 
140
- export { DAYS_PER_WEEK, GuidHelper, MILLI_SECS_PER_DAY, MILLI_SECS_PER_SEC, NrsrxBaseApiClientService, defaultProxyDebugSettings, defaultProxySettings, distinct, flat, isNullOrUndefined, isaDate, isaNumber, isaString, normalizeRequest, numPad, shortDateOptions, toLocalTimeStamp, toShortDateString, weekOfYear };
151
+ export { DAYS_PER_WEEK, GuidHelper, MILLI_SECS_PER_DAY, MILLI_SECS_PER_SEC, NrsrxBaseApiClientService, defaultProxyDebugSettings, defaultProxySettings, distinct, flat, getRelatedValue, isNullOrUndefined, isaDate, isaNumber, isaString, normalizeRequest, numPad, shortDateOptions, toLocalTimeStamp, toShortDateString, weekOfYear };
141
152
  //# sourceMappingURL=imng-nrsrx-client-utils.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"imng-nrsrx-client-utils.mjs","sources":["../../../../libs/imng-nrsrx-client-utils/src/lib/nrsrx-api-client.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/guid.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/num-pad.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/date.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/id-type.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/normalize-request.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/default-proxy-settings.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/is-null-or-undefined.ts","../../../../libs/imng-nrsrx-client-utils/src/imng-nrsrx-client-utils.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { IdType } from './id-type';\n\nexport class NrsrxBaseApiClientService<T extends { id?: IdType | null }> {\n public url = '';\n constructor(protected readonly http: HttpClient) {}\n // Used to insert entities on NRSRx based API endpoints\n public post(payload: T): Observable<T> {\n return this.http.post<T>(\n payload.id ? `${this.url}?id=${payload.id}` : this.url,\n payload,\n );\n }\n\n // Used to update entities on NRSRx based API endpoints\n public put(payload: T): Observable<T> {\n return this.http.put<T>(`${this.url}?id=${payload.id}`, payload);\n }\n\n public delete(payload: T): Observable<T> {\n return this.http.delete<T>(`${this.url}?id=${payload.id}`);\n }\n}\n","export class GuidHelper {\n private static readonly guidSegmentCriteria = `[a-f0-9]`;\n private static readonly guidRegexWithDashes = new RegExp(`${GuidHelper.guidSegmentCriteria}{8}-${GuidHelper.guidSegmentCriteria}{4}-` +\n `${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}`, 'gim');\n private static readonly dashRegex = /-/g;\n public static minimize(str: string): string {\n let m: RegExpExecArray | null;\n while ((m = this.guidRegexWithDashes.exec(str)) !== null) {\n m.forEach(element => {\n str = str.replace(element, element.replace(this.dashRegex, ''));\n });\n }\n return str;\n }\n}\n","export function numPad(x: number, maxLength: number = 2) {\n return x.toString().padStart(maxLength, \"0\");\n}\n","import { numPad } from './num-pad';\n\ndeclare global {\n export interface Date {\n toShortDateString(): string;\n weekOfYear(): number;\n toLocalTimeStamp(): string;\n }\n}\n\nexport const shortDateOptions: Intl.DateTimeFormatOptions = {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric',\n};\nexport const MILLI_SECS_PER_DAY = 86400000;\nexport const MILLI_SECS_PER_SEC = 60000;\nexport const DAYS_PER_WEEK = 7;\nif (!Date.prototype.toShortDateString) {\n //NOSONAR\n Date.prototype.toShortDateString = function (this: Date): string { //NOSONAR\n return toShortDateString(this);\n };\n}\n\nif (!Date.prototype.weekOfYear) {\n //NOSONAR\n // tslint:disable-next-line: space-before-function-paren\n Date.prototype.weekOfYear = function (this: Date): number { //NOSONAR\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n return weekOfYear(this);\n };\n}\nexport { };\n\nexport function weekOfYear(dt: Date): number {\n const onejan = new Date(dt.getFullYear(), 0, 1);\n return Math.ceil(((dt.getTime() - onejan.getTime()) / MILLI_SECS_PER_DAY + onejan.getDay() + 1) / DAYS_PER_WEEK);\n}\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toLocalTimeStamp(dt: Date = new Date()): string {\n return `${dt.getFullYear()}${numPad(dt.getMonth() + 1)}${numPad(dt.getDate())}${numPad(dt.getHours())}${numPad(dt.getMinutes())}${numPad(dt.getSeconds())}-${numPad(dt.getMilliseconds(), 3)}`;\n}\n\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toShortDateString(dt: Date): string {\n const locale =\n navigator.language || (navigator.languages && navigator.languages.length > 0) ? navigator.languages[0] : 'en-US';\n\n return dt?.toLocaleDateString(locale, shortDateOptions);\n}\n","export function distinct<T>(arr: T[]): T[] {\n return arr.filter((value, index, array) => array.indexOf(value) === index);\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function flat<T>(arr: T[] | any): T[] { //NOSONAR\n return arr.reduce((acc: T[], val: T[]) => acc.concat(val), []);\n}\n","import { distinct, flat } from './array.helper';\n\ndeclare global {\n export interface Array<T> {\n distinct(): T[];\n flat(): T;\n }\n}\n\nif (!Array.prototype.distinct) {\n Array.prototype.distinct = function <T>(this: T[]): T[] { //NOSONAR\n return distinct(this);\n };\n}\n\nif (!Array.prototype.flat) {\n Array.prototype.flat = function <T>(this: T[][] | T[]): T[] { //NOSONAR\n return flat(this);\n };\n}\nexport { };\n","export type IdType = number | string | Date;\n\nexport function isaNumber(value: unknown): value is number {\n const type = typeof value;\n return type === 'number' || type === 'bigint';\n}\n\nexport function isaString(value: unknown): value is string {\n return typeof value === 'string';\n}\nexport function isaDate(value: unknown): value is Date {\n return value instanceof Date;\n}\n","import { isaString } from './id-type';\n/**\n * Summary: This will update an object to make all properties with empty string values have null values instead.\n * @usageNotes\n * Only use this method with plain objects.\n**/\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function normalizeRequest<T extends object>(payload: T): T {\n for (const x in payload) {\n const val: unknown = payload[x];\n if ((isaString(val) && !val.length) ||\n (Array.isArray(val) && !val.length)) {\n payload[x] = null as never;\n }\n }\n return payload;\n}\n","\nexport const defaultProxySettings = {\n\n secure: true,\n changeOrigin: true,\n onProxyRes: (proxyRes: { headers: { [x: string]: string; }; }) =>\n proxyRes.headers['Cache-Control'] = `max-age=2590000, public`\n};\nexport const defaultProxyDebugSettings =\n{\n ...defaultProxySettings,\n logLevel: 'debug',\n};\n","export function isNullOrUndefined(obj: unknown): boolean {\n return obj === undefined || obj === null;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imng-nrsrx-client-utils.mjs","sources":["../../../../libs/imng-nrsrx-client-utils/src/lib/nrsrx-api-client.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/guid.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/num-pad.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/date.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.helper.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/array.extensions.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/id-type.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/normalize-request.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/default-proxy-settings.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/is-null-or-undefined.ts","../../../../libs/imng-nrsrx-client-utils/src/lib/get-related-value.ts","../../../../libs/imng-nrsrx-client-utils/src/imng-nrsrx-client-utils.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { IdType } from './id-type';\n\nexport class NrsrxBaseApiClientService<T extends { id?: IdType | null }> {\n public url = '';\n constructor(protected readonly http: HttpClient) {}\n // Used to insert entities on NRSRx based API endpoints\n public post(payload: T): Observable<T> {\n return this.http.post<T>(\n payload.id ? `${this.url}?id=${payload.id}` : this.url,\n payload,\n );\n }\n\n // Used to update entities on NRSRx based API endpoints\n public put(payload: T): Observable<T> {\n return this.http.put<T>(`${this.url}?id=${payload.id}`, payload);\n }\n\n public delete(payload: T): Observable<T> {\n return this.http.delete<T>(`${this.url}?id=${payload.id}`);\n }\n}\n","export class GuidHelper {\n private static readonly guidSegmentCriteria = `[a-f0-9]`;\n private static readonly guidRegexWithDashes = new RegExp(`${GuidHelper.guidSegmentCriteria}{8}-${GuidHelper.guidSegmentCriteria}{4}-` +\n `${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}{4}-${GuidHelper.guidSegmentCriteria}`, 'gim');\n private static readonly dashRegex = /-/g;\n public static minimize(str: string): string {\n let m: RegExpExecArray | null;\n while ((m = this.guidRegexWithDashes.exec(str)) !== null) {\n m.forEach(element => {\n str = str.replace(element, element.replace(this.dashRegex, ''));\n });\n }\n return str;\n }\n}\n","export function numPad(x: number, maxLength: number = 2) {\n return x.toString().padStart(maxLength, \"0\");\n}\n","import { numPad } from './num-pad';\n\ndeclare global {\n export interface Date {\n toShortDateString(): string;\n weekOfYear(): number;\n toLocalTimeStamp(): string;\n }\n}\n\nexport const shortDateOptions: Intl.DateTimeFormatOptions = {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric',\n};\nexport const MILLI_SECS_PER_DAY = 86400000;\nexport const MILLI_SECS_PER_SEC = 60000;\nexport const DAYS_PER_WEEK = 7;\nif (!Date.prototype.toShortDateString) {\n //NOSONAR\n Date.prototype.toShortDateString = function (this: Date): string { //NOSONAR\n return toShortDateString(this);\n };\n}\n\nif (!Date.prototype.weekOfYear) {\n //NOSONAR\n // tslint:disable-next-line: space-before-function-paren\n Date.prototype.weekOfYear = function (this: Date): number { //NOSONAR\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n return weekOfYear(this);\n };\n}\nexport { };\n\nexport function weekOfYear(dt: Date): number {\n const onejan = new Date(dt.getFullYear(), 0, 1);\n return Math.ceil(((dt.getTime() - onejan.getTime()) / MILLI_SECS_PER_DAY + onejan.getDay() + 1) / DAYS_PER_WEEK);\n}\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toLocalTimeStamp(dt: Date = new Date()): string {\n return `${dt.getFullYear()}${numPad(dt.getMonth() + 1)}${numPad(dt.getDate())}${numPad(dt.getHours())}${numPad(dt.getMinutes())}${numPad(dt.getSeconds())}-${numPad(dt.getMilliseconds(), 3)}`;\n}\n\n\n// tslint:disable-next-line: space-before-function-paren\nexport function toShortDateString(dt: Date): string {\n const locale =\n navigator.language || (navigator.languages && navigator.languages.length > 0) ? navigator.languages[0] : 'en-US';\n\n return dt?.toLocaleDateString(locale, shortDateOptions);\n}\n","export function distinct<T>(arr: T[]): T[] {\n return arr.filter((value, index, array) => array.indexOf(value) === index);\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function flat<T>(arr: T[] | any): T[] { //NOSONAR\n return arr.reduce((acc: T[], val: T[]) => acc.concat(val), []);\n}\n","import { distinct, flat } from './array.helper';\n\ndeclare global {\n export interface Array<T> {\n distinct(): T[];\n flat(): T;\n }\n}\n\nif (!Array.prototype.distinct) {\n Array.prototype.distinct = function <T>(this: T[]): T[] { //NOSONAR\n return distinct(this);\n };\n}\n\nif (!Array.prototype.flat) {\n Array.prototype.flat = function <T>(this: T[][] | T[]): T[] { //NOSONAR\n return flat(this);\n };\n}\nexport { };\n","export type IdType = number | string | Date;\n\nexport function isaNumber(value: unknown): value is number {\n const type = typeof value;\n return type === 'number' || type === 'bigint';\n}\n\nexport function isaString(value: unknown): value is string {\n return typeof value === 'string';\n}\nexport function isaDate(value: unknown): value is Date {\n return value instanceof Date;\n}\n","import { isaString } from './id-type';\n/**\n * Summary: This will update an object to make all properties with empty string values have null values instead.\n * @usageNotes\n * Only use this method with plain objects.\n**/\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function normalizeRequest<T extends object>(payload: T): T {\n for (const x in payload) {\n const val: unknown = payload[x];\n if ((isaString(val) && !val.length) ||\n (Array.isArray(val) && !val.length)) {\n payload[x] = null as never;\n }\n }\n return payload;\n}\n","\nexport const defaultProxySettings = {\n\n secure: true,\n changeOrigin: true,\n onProxyRes: (proxyRes: { headers: { [x: string]: string; }; }) =>\n proxyRes.headers['Cache-Control'] = `max-age=2590000, public`\n};\nexport const defaultProxyDebugSettings =\n{\n ...defaultProxySettings,\n logLevel: 'debug',\n};\n","export function isNullOrUndefined(obj: unknown): boolean {\n return obj === undefined || obj === null;\n}\n","export function getRelatedValue<ENTITY>(\n obj: ENTITY,\n ...segments: string[]\n): unknown | undefined | null {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let result: any = obj; //NOSONAR\n segments.forEach((segment) => {\n if (result) {\n result = result[segment];\n }\n });\n return result;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -9,3 +9,4 @@ export * from './lib/id-type';
9
9
  export * from './lib/default-proxy-settings';
10
10
  export * from './lib/is-null-or-undefined';
11
11
  export * from './lib/num-pad';
12
+ export * from './lib/get-related-value';
@@ -0,0 +1 @@
1
+ export declare function getRelatedValue<ENTITY>(obj: ENTITY, ...segments: string[]): unknown | undefined | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "imng-nrsrx-client-utils",
3
- "version": "5.261.3",
3
+ "version": "5.263.2",
4
4
  "keywords": [
5
5
  "Angular",
6
6
  "Utils"