@smallpearl/ngx-helper 0.31.25 → 0.31.26

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.
@@ -125,7 +125,7 @@ function sideloadToComposite(resp, targetObjKey, idKey = 'id', mergeStrategy = '
125
125
  const targetKey = mergeStrategy === 'inplace'
126
126
  ? key
127
127
  : `${singular(key)}${appendObjSuffix}s`;
128
- obj[targetKey] = matchingSideloadObjs;
128
+ obj[targetKey] = mergeSideloadIntoObjects(matchingSideloadObjs, mergeStrategy, appendObjSuffix);
129
129
  }
130
130
  }
131
131
  else {
@@ -145,22 +145,26 @@ function sideloadToComposite(resp, targetObjKey, idKey = 'id', mergeStrategy = '
145
145
  const keyPlural = getSideloadPluralKey(key);
146
146
  const sideloadId = getSideloadDataKey(key);
147
147
  const sideloadData = getSideloadArray(keyPlural);
148
- if (sideloadData.length > 0) {
148
+ // The second check avoids duplicate merging of sideload data
149
+ if (sideloadData.length > 0 && !Object.prototype.hasOwnProperty.call(obj, keyPlural)) {
149
150
  const matchingSideloadObj = sideloadData.find((so) => so?.[sideloadId] === value);
150
151
  if (matchingSideloadObj) {
151
152
  const targetKey = mergeStrategy === 'inplace'
152
153
  ? key
153
154
  : `${singular(key)}${appendObjSuffix}`;
154
- obj[targetKey] = matchingSideloadObj;
155
+ obj[targetKey] = { ...matchingSideloadObj };
155
156
  }
156
157
  }
157
158
  }
158
159
  }
159
160
  return obj;
160
161
  };
161
- entities.forEach((entity) => {
162
- mergeSideloadIntoObject(entity, mergeStrategy, appendObjSuffix);
163
- });
162
+ const mergeSideloadIntoObjects = (objs, mergeStrategy, appendObjSuffix) => {
163
+ return objs.map((obj) => {
164
+ return mergeSideloadIntoObject(obj, mergeStrategy, appendObjSuffix);
165
+ });
166
+ };
167
+ mergeSideloadIntoObjects(entities, mergeStrategy, appendObjSuffix);
164
168
  return resp[targetObjKey];
165
169
  }
166
170
 
@@ -1 +1 @@
1
- {"version":3,"file":"smallpearl-ngx-helper-sideload.mjs","sources":["../../../../projects/smallpearl/ngx-helper/sideload/src/sideload.ts","../../../../projects/smallpearl/ngx-helper/sideload/smallpearl-ngx-helper-sideload.ts"],"sourcesContent":["import { plural, singular } from 'pluralize';\n\n/**\n * A function merge sideloaded content into the main object thereby returning\n * a composite object.\n * @param resp - the JSON response object, typically received from remote for\n * an HTTP request.\n * @param targetObjKey - the key name of the target object into which the\n * sideloaded data are to be merged.\n * @param idKey - idKey. Function assumes that all the objects use the same\n * key name as the unique object identifier.\n * @param sideloadDataMap: An array of [string, string], where the first\n * element specifies the property name of the target object and the second\n * element the sideload data element's key. This is useful when the the\n * target objet's property name that is to be merged with sideload data do not\n * match.\n * @returns\n */\nexport function sideloadToComposite(\n resp: any,\n targetObjKey: string,\n idKey: string = 'id',\n mergeStrategy: 'inplace' | 'append' = 'append',\n appendObjSuffix: string = 'Detail',\n sideloadDataMap?: Array<[string, string, string?]>\n) {\n if (typeof resp !== 'object' && !Array.isArray(resp)) {\n return;\n }\n\n const allRespKeys = Object.keys(resp);\n const targetObjResponse = resp[targetObjKey];\n if (!targetObjResponse) {\n return;\n }\n\n // all sideload keys, except the targetObjKey\n allRespKeys.splice(\n allRespKeys.findIndex((k) => k === targetObjKey),\n 1\n );\n const allRespKeysSingular = allRespKeys.map(k => singular(k));\n\n // Normalize single target object into an array to simplify handling\n let entities: Array<any> = Array.isArray(targetObjResponse)\n ? targetObjResponse\n : [targetObjResponse];\n\n // standard keys that'll never be merged with sideloaded content\n const KEYS_TO_SKIP = new Set([\n 'id',\n 'number',\n 'date',\n 'time',\n 'timestamp',\n 'modified',\n 'created',\n 'createdAt',\n 'updatedAt',\n 'updated',\n 'description',\n 'notes',\n 'desc',\n 'description',\n 'name',\n 'firstName',\n 'lastName',\n 'fullName',\n 'email',\n 'telephone',\n 'phone',\n 'mobile',\n 'address',\n 'title',\n 'content',\n ]);\n if (idKey) {\n KEYS_TO_SKIP.add(idKey);\n }\n const getSideloadPluralKey = (key: string) => {\n if (sideloadDataMap) {\n const entry = sideloadDataMap.find(([objKey]) => objKey === key);\n if (entry?.[1]) return entry[1];\n }\n // Prefer actual response keys to avoid pluralization mismatches\n if (resp.hasOwnProperty(key)) return key;\n const pluralKey = plural(key);\n if (resp.hasOwnProperty(pluralKey)) return pluralKey;\n return pluralKey;\n };\n const getSideloadDataKey = (key: string): string => {\n if (sideloadDataMap) {\n const entry = sideloadDataMap.find(([objKey]) => objKey === key);\n // Prefer explicit sideload data key if provided, else fallback to idKey\n if (entry) {\n return entry[2] ?? idKey;\n }\n }\n return idKey;\n };\n const isEntityKeyType = (value: string) =>\n typeof value === 'string' || typeof value === 'number';\n /**\n * Given an object, enumerates all keys of the object and for any key with\n * a matching sideload value, merges that into the 'obj', either by\n * replacing the matching key's value or by appending it as a new property.\n * If the value of a property is an object, recurses with the object as\n * first argument.\n * @param obj\n * @param mergeStrategy\n * @param appendObjSuffix\n * @returns\n */\n const mergeSideloadIntoObject = (\n obj: any,\n mergeStrategy: 'inplace' | 'append',\n appendObjSuffix: string = 'Detail'\n ) => {\n for (const key in obj) {\n if (!Object.prototype.hasOwnProperty.call(obj, key) || KEYS_TO_SKIP.has(key)) {\n continue;\n }\n const value = obj[key];\n\n // Helper to get sideload data array for a key\n const getSideloadArray = (keyPlural: string) => {\n const data = resp[keyPlural];\n if (Array.isArray(data)) return data;\n if (data != null) return [data];\n return [];\n };\n\n if (Array.isArray(value) && value.length > 0) {\n if (isEntityKeyType(value[0])) {\n // Array of ids: merge sideloaded objects\n const keyPlural = getSideloadPluralKey(key);\n const sideloadId = getSideloadDataKey(key);\n const sideloadData = getSideloadArray(keyPlural);\n const matchingSideloadObjs = sideloadData.filter((so: any) =>\n value.includes(so?.[sideloadId])\n );\n if (matchingSideloadObjs.length > 0) {\n const targetKey =\n mergeStrategy === 'inplace'\n ? key\n : `${singular(key)}${appendObjSuffix}s`;\n obj[targetKey] = matchingSideloadObjs;\n }\n } else {\n // Array of objects: recurse\n value.forEach((item: any) => {\n if (typeof item === 'object' && item !== null) {\n mergeSideloadIntoObject(item, mergeStrategy, appendObjSuffix);\n }\n });\n }\n } else if (typeof value === 'object' && value !== null && !Array.isArray(value)) {\n // Nested object: recurse\n mergeSideloadIntoObject(value, mergeStrategy, appendObjSuffix);\n } else if (isEntityKeyType(value)) {\n const keyPlural = getSideloadPluralKey(key);\n const sideloadId = getSideloadDataKey(key);\n const sideloadData = getSideloadArray(keyPlural);\n if (sideloadData.length > 0) {\n const matchingSideloadObj = sideloadData.find(\n (so: any) => so?.[sideloadId] === value\n );\n if (matchingSideloadObj) {\n const targetKey =\n mergeStrategy === 'inplace'\n ? key\n : `${singular(key)}${appendObjSuffix}`;\n obj[targetKey] = matchingSideloadObj;\n }\n }\n }\n }\n return obj;\n };\n\n entities.forEach((entity) => {\n mergeSideloadIntoObject(entity, mergeStrategy, appendObjSuffix);\n });\n\n return resp[targetObjKey];\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":"smallpearl-ngx-helper-sideload.mjs","sources":["../../../../projects/smallpearl/ngx-helper/sideload/src/sideload.ts","../../../../projects/smallpearl/ngx-helper/sideload/smallpearl-ngx-helper-sideload.ts"],"sourcesContent":["import { plural, singular } from 'pluralize';\n\n/**\n * A function merge sideloaded content into the main object thereby returning\n * a composite object.\n * @param resp - the JSON response object, typically received from remote for\n * an HTTP request.\n * @param targetObjKey - the key name of the target object into which the\n * sideloaded data are to be merged.\n * @param idKey - idKey. Function assumes that all the objects use the same\n * key name as the unique object identifier.\n * @param sideloadDataMap: An array of [string, string], where the first\n * element specifies the property name of the target object and the second\n * element the sideload data element's key. This is useful when the the\n * target objet's property name that is to be merged with sideload data do not\n * match.\n * @returns\n */\nexport function sideloadToComposite(\n resp: any,\n targetObjKey: string,\n idKey: string = 'id',\n mergeStrategy: 'inplace' | 'append' = 'append',\n appendObjSuffix: string = 'Detail',\n sideloadDataMap?: Array<[string, string, string?]>\n) {\n if (typeof resp !== 'object' && !Array.isArray(resp)) {\n return;\n }\n\n const allRespKeys = Object.keys(resp);\n const targetObjResponse = resp[targetObjKey];\n if (!targetObjResponse) {\n return;\n }\n\n // all sideload keys, except the targetObjKey\n allRespKeys.splice(\n allRespKeys.findIndex((k) => k === targetObjKey),\n 1\n );\n const allRespKeysSingular = allRespKeys.map(k => singular(k));\n\n // Normalize single target object into an array to simplify handling\n let entities: Array<any> = Array.isArray(targetObjResponse)\n ? targetObjResponse\n : [targetObjResponse];\n\n // standard keys that'll never be merged with sideloaded content\n const KEYS_TO_SKIP = new Set([\n 'id',\n 'number',\n 'date',\n 'time',\n 'timestamp',\n 'modified',\n 'created',\n 'createdAt',\n 'updatedAt',\n 'updated',\n 'description',\n 'notes',\n 'desc',\n 'description',\n 'name',\n 'firstName',\n 'lastName',\n 'fullName',\n 'email',\n 'telephone',\n 'phone',\n 'mobile',\n 'address',\n 'title',\n 'content',\n ]);\n if (idKey) {\n KEYS_TO_SKIP.add(idKey);\n }\n const getSideloadPluralKey = (key: string) => {\n if (sideloadDataMap) {\n const entry = sideloadDataMap.find(([objKey]) => objKey === key);\n if (entry?.[1]) return entry[1];\n }\n // Prefer actual response keys to avoid pluralization mismatches\n if (resp.hasOwnProperty(key)) return key;\n const pluralKey = plural(key);\n if (resp.hasOwnProperty(pluralKey)) return pluralKey;\n return pluralKey;\n };\n const getSideloadDataKey = (key: string): string => {\n if (sideloadDataMap) {\n const entry = sideloadDataMap.find(([objKey]) => objKey === key);\n // Prefer explicit sideload data key if provided, else fallback to idKey\n if (entry) {\n return entry[2] ?? idKey;\n }\n }\n return idKey;\n };\n const isEntityKeyType = (value: string) =>\n typeof value === 'string' || typeof value === 'number';\n\n /**\n * Given an object, enumerates all keys of the object and for any key with\n * a matching sideload value, merges that into the 'obj', either by\n * replacing the matching key's value or by appending it as a new property.\n * If the value of a property is an object, recurses with the object as\n * first argument.\n * @param obj\n * @param mergeStrategy\n * @param appendObjSuffix\n * @returns\n */\n const mergeSideloadIntoObject = (\n obj: any,\n mergeStrategy: 'inplace' | 'append',\n appendObjSuffix: string = 'Detail'\n ) => {\n for (const key in obj) {\n if (!Object.prototype.hasOwnProperty.call(obj, key) || KEYS_TO_SKIP.has(key)) {\n continue;\n }\n const value = obj[key];\n\n // Helper to get sideload data array for a key\n const getSideloadArray = (keyPlural: string) => {\n const data = resp[keyPlural];\n if (Array.isArray(data)) return data;\n if (data != null) return [data];\n return [];\n };\n\n if (Array.isArray(value) && value.length > 0) {\n if (isEntityKeyType(value[0])) {\n // Array of ids: merge sideloaded objects\n const keyPlural = getSideloadPluralKey(key);\n const sideloadId = getSideloadDataKey(key);\n const sideloadData = getSideloadArray(keyPlural);\n const matchingSideloadObjs = sideloadData.filter((so: any) =>\n value.includes(so?.[sideloadId])\n );\n if (matchingSideloadObjs.length > 0) {\n const targetKey =\n mergeStrategy === 'inplace'\n ? key\n : `${singular(key)}${appendObjSuffix}s`;\n obj[targetKey] = mergeSideloadIntoObjects(\n matchingSideloadObjs,\n mergeStrategy,\n appendObjSuffix\n );\n }\n } else {\n // Array of objects: recurse\n value.forEach((item: any) => {\n if (typeof item === 'object' && item !== null) {\n mergeSideloadIntoObject(item, mergeStrategy, appendObjSuffix);\n }\n });\n }\n } else if (typeof value === 'object' && value !== null && !Array.isArray(value)) {\n // Nested object: recurse\n mergeSideloadIntoObject(value, mergeStrategy, appendObjSuffix);\n } else if (isEntityKeyType(value)) {\n const keyPlural = getSideloadPluralKey(key);\n const sideloadId = getSideloadDataKey(key);\n const sideloadData = getSideloadArray(keyPlural);\n // The second check avoids duplicate merging of sideload data\n if (sideloadData.length > 0 && !Object.prototype.hasOwnProperty.call(obj, keyPlural)) {\n const matchingSideloadObj = sideloadData.find(\n (so: any) => so?.[sideloadId] === value\n );\n if (matchingSideloadObj) {\n const targetKey =\n mergeStrategy === 'inplace'\n ? key\n : `${singular(key)}${appendObjSuffix}`;\n obj[targetKey] = {...matchingSideloadObj};\n }\n }\n }\n }\n return obj;\n };\n\n const mergeSideloadIntoObjects = (objs: Array<any>, mergeStrategy: 'inplace' | 'append', appendObjSuffix: string) => {\n return objs.map((obj) => {\n return mergeSideloadIntoObject(obj, mergeStrategy, appendObjSuffix);\n });\n };\n\n mergeSideloadIntoObjects(entities, mergeStrategy, appendObjSuffix);\n return resp[targetObjKey];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "path": "src/assets/i18n/"
7
7
  }
8
8
  ],
9
- "version": "0.31.25",
9
+ "version": "0.31.26",
10
10
  "peerDependencies": {
11
11
  "@angular/common": "^19.1.0",
12
12
  "@angular/core": "^19.1.0",
@@ -47,26 +47,26 @@
47
47
  "types": "./entity-field/index.d.ts",
48
48
  "default": "./fesm2022/smallpearl-ngx-helper-entity-field.mjs"
49
49
  },
50
- "./locale": {
51
- "types": "./locale/index.d.ts",
52
- "default": "./fesm2022/smallpearl-ngx-helper-locale.mjs"
50
+ "./forms": {
51
+ "types": "./forms/index.d.ts",
52
+ "default": "./fesm2022/smallpearl-ngx-helper-forms.mjs"
53
53
  },
54
54
  "./mat-busy-wheel": {
55
55
  "types": "./mat-busy-wheel/index.d.ts",
56
56
  "default": "./fesm2022/smallpearl-ngx-helper-mat-busy-wheel.mjs"
57
57
  },
58
- "./forms": {
59
- "types": "./forms/index.d.ts",
60
- "default": "./fesm2022/smallpearl-ngx-helper-forms.mjs"
61
- },
62
- "./mat-context-menu": {
63
- "types": "./mat-context-menu/index.d.ts",
64
- "default": "./fesm2022/smallpearl-ngx-helper-mat-context-menu.mjs"
58
+ "./locale": {
59
+ "types": "./locale/index.d.ts",
60
+ "default": "./fesm2022/smallpearl-ngx-helper-locale.mjs"
65
61
  },
66
62
  "./hover-dropdown": {
67
63
  "types": "./hover-dropdown/index.d.ts",
68
64
  "default": "./fesm2022/smallpearl-ngx-helper-hover-dropdown.mjs"
69
65
  },
66
+ "./mat-context-menu": {
67
+ "types": "./mat-context-menu/index.d.ts",
68
+ "default": "./fesm2022/smallpearl-ngx-helper-mat-context-menu.mjs"
69
+ },
70
70
  "./mat-entity-crud": {
71
71
  "types": "./mat-entity-crud/index.d.ts",
72
72
  "default": "./fesm2022/smallpearl-ngx-helper-mat-entity-crud.mjs"
@@ -91,14 +91,14 @@
91
91
  "types": "./mat-side-menu-layout/index.d.ts",
92
92
  "default": "./fesm2022/smallpearl-ngx-helper-mat-side-menu-layout.mjs"
93
93
  },
94
- "./mat-tel-input": {
95
- "types": "./mat-tel-input/index.d.ts",
96
- "default": "./fesm2022/smallpearl-ngx-helper-mat-tel-input.mjs"
97
- },
98
94
  "./sideload": {
99
95
  "types": "./sideload/index.d.ts",
100
96
  "default": "./fesm2022/smallpearl-ngx-helper-sideload.mjs"
101
97
  },
98
+ "./mat-tel-input": {
99
+ "types": "./mat-tel-input/index.d.ts",
100
+ "default": "./fesm2022/smallpearl-ngx-helper-mat-tel-input.mjs"
101
+ },
102
102
  "./stationary-with-line-items": {
103
103
  "types": "./stationary-with-line-items/index.d.ts",
104
104
  "default": "./fesm2022/smallpearl-ngx-helper-stationary-with-line-items.mjs"