@techextensor/tab-core-utility 2.2.102 → 2.2.103

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.
@@ -29,6 +29,33 @@ export class UserPersonalizationHelper {
29
29
  filteredData = filteredData?.filter((item) => item?.UserId === null);
30
30
  return filteredData;
31
31
  }
32
+ /**
33
+ * Finds a user's personalized data for a given key and type.
34
+ * Executes the following steps:
35
+ * 1. Filters out records where the Type does not match the specified type.
36
+ * 2. Sorts the data in descending order based on the UserId field. If the UserId
37
+ * is null, it is placed at the end of the sorted array.
38
+ * 3. Filters out records where the UserId does not match the specified userId.
39
+ * If the UserId is null, the record is not filtered out.
40
+ * 4. Finds the first record where the Key matches the specified key.
41
+ * @param key The key to search for.
42
+ * @param type The type of data to search for.
43
+ * @param userId The ID of the user to search for.
44
+ * @returns The user's personalized data, or undefined if not found.
45
+ * @author Parth B Thakkar
46
+ * @date 2023-11-28
47
+ */
48
+ getUserPersonalizedDataFromKey(key, type, userId) {
49
+ const data = (Common?.tabUserPersonalizedData || [])
50
+ .filter((item) => item?.Type === type)
51
+ .sort((a, b) => (a?.UserId === null ? 1 : 0) - (b?.UserId === null ? 1 : 0) ||
52
+ (a?.UserId?.toLowerCase() === userId?.toLowerCase() ? -1 : 1))
53
+ .filter((item) => item?.UserId
54
+ ? item?.UserId?.toLowerCase() === userId?.toLowerCase()
55
+ : true)
56
+ .find((item) => item?.Key?.toLowerCase() === key?.toLowerCase());
57
+ return data;
58
+ }
32
59
  static { this.ɵfac = function UserPersonalizationHelper_Factory(t) { return new (t || UserPersonalizationHelper)(); }; }
33
60
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: UserPersonalizationHelper, factory: UserPersonalizationHelper.ɵfac, providedIn: 'root' }); }
34
61
  }
@@ -36,4 +63,4 @@ export class UserPersonalizationHelper {
36
63
  type: Injectable,
37
64
  args: [{ providedIn: 'root' }]
38
65
  }], null, null); })();
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wZXJzb25hbGl6YXRpb24uaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2hlbHBlcnMvY29tbW9uL3VzZXItcGVyc29uYWxpemF0aW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFHckUsTUFBTSxPQUFPLHlCQUF5QjtJQUR0QztRQUdtQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBOEJsRDtJQTVCQyx1QkFBdUIsQ0FBQyxJQUFRO1FBQzlCLE1BQU0sQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELHVCQUF1QixDQUFDLFFBQWdCLEVBQUUsV0FBa0IsRUFBRSxJQUFZLEVBQUUsTUFBYSxFQUFFLEdBQVk7UUFDckcsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsTUFBTSxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNwSCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsSUFBUSxFQUFFLFFBQWdCLEVBQUUsV0FBa0IsRUFBRSxJQUFZLEVBQUUsTUFBYSxFQUFFLEdBQVk7UUFDbEgsSUFBSSxZQUFZLEdBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBSyxRQUFRLEVBQUUsV0FBVyxFQUFFLElBQUksSUFBSSxFQUFFLFdBQVcsS0FBSyxXQUFXLElBQUksSUFBSSxFQUFFLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQztRQUV0SyxNQUFNLGVBQWUsR0FBRyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxLQUFLLEdBQUcsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzdHLElBQUksZUFBZSxFQUFFLE1BQU0sR0FBRyxDQUFDO1lBQzdCLFlBQVksR0FBRyxlQUFlLENBQUM7O1lBRy9CLFlBQVksR0FBRyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBRXpFLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxNQUFNLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNwSCxJQUFJLGdCQUFnQixFQUFFLE1BQU0sR0FBRyxDQUFDO1lBQzlCLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQzs7WUFHaEMsWUFBWSxHQUFHLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUM7UUFFNUUsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzswRkEvQlUseUJBQXlCO3VFQUF6Qix5QkFBeUIsV0FBekIseUJBQXlCLG1CQURaLE1BQU07O2lGQUNuQix5QkFBeUI7Y0FEckMsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJZGJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vYXV0aC9pZGItc3RvcmFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbW1vbiB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb21tb24nO1xuaW1wb3J0IHsgU3RvcmFnZUNvbnN0YW50cyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9zdG9yYWdlLWNvbnN0YW50cyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgVXNlclBlcnNvbmFsaXphdGlvbkhlbHBlciB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBpZGJTZXJ2aWNlID0gaW5qZWN0KElkYlNlcnZpY2UpO1xuXG4gIHNldFVzZXJQZXJzb25hbGl6ZWREYXRhKGRhdGE6YW55KSB7XG4gICAgQ29tbW9uLnRhYlVzZXJQZXJzb25hbGl6ZWREYXRhID0gZGF0YTtcbiAgICB0aGlzLmlkYlNlcnZpY2Uuc2V0SXRlbShTdG9yYWdlQ29uc3RhbnRzLnRhYlVzZXJQZXJzb25hbGl6ZWREYXRhLCBkYXRhKTtcbiAgfVxuXG4gIGdldFVzZXJQZXJzb25hbGl6ZWREYXRhKHNjcmVlbklkOiBzdHJpbmcsIGNvbXBvbmVudElkOnN0cmluZywgdHlwZTogbnVtYmVyLCB1c2VySWQ6c3RyaW5nLCBrZXk/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJVc2VyUGVyc29uYWxpemVkRGF0YShDb21tb24/LnRhYlVzZXJQZXJzb25hbGl6ZWREYXRhLCBzY3JlZW5JZCwgY29tcG9uZW50SWQsIHR5cGUsIHVzZXJJZCwga2V5KTtcbiAgfVxuXG4gIGZpbHRlclVzZXJQZXJzb25hbGl6ZWREYXRhKGRhdGE6YW55LCBzY3JlZW5JZDogc3RyaW5nLCBjb21wb25lbnRJZDpzdHJpbmcsIHR5cGU6IG51bWJlciwgdXNlcklkOnN0cmluZywga2V5Pzogc3RyaW5nKSB7XG4gICAgbGV0IGZpbHRlcmVkRGF0YSA9IGRhdGE/LmZpbHRlcigoaXRlbTogYW55KSA9PiBpdGVtPy5TY3JlZW5JZD8udG9Mb3dlckNhc2UoKSA9PT0gc2NyZWVuSWQ/LnRvTG93ZXJDYXNlKCkgJiYgaXRlbT8uQ29tcG9uZW50SWQgPT09IGNvbXBvbmVudElkICYmIGl0ZW0/LlR5cGUgPT09IHR5cGUpO1xuICAgIFxuICAgIGNvbnN0IGtleUZpbHRlcmVkRGF0YSA9IGZpbHRlcmVkRGF0YT8uZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0/LktleT8udG9Mb3dlckNhc2UoKSA9PT0ga2V5Py50b0xvd2VyQ2FzZSgpKTtcbiAgICBpZiAoa2V5RmlsdGVyZWREYXRhPy5sZW5ndGggPiAwKVxuICAgICAgZmlsdGVyZWREYXRhID0ga2V5RmlsdGVyZWREYXRhOyBcbiAgICBcbiAgICBlbHNlXG4gICAgICBmaWx0ZXJlZERhdGEgPSBmaWx0ZXJlZERhdGE/LmZpbHRlcigoaXRlbTogYW55KSA9PiBpdGVtPy5LZXkgPT09IG51bGwpO1xuXG4gICAgY29uc3QgdXNlckZpbHRlcmVkRGF0YSA9IGZpbHRlcmVkRGF0YT8uZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0/LlVzZXJJZD8udG9Mb3dlckNhc2UoKSA9PT0gdXNlcklkPy50b0xvd2VyQ2FzZSgpKTtcbiAgICBpZiAodXNlckZpbHRlcmVkRGF0YT8ubGVuZ3RoID4gMCkgXG4gICAgICBmaWx0ZXJlZERhdGEgPSB1c2VyRmlsdGVyZWREYXRhO1xuICAgIFxuICAgIGVsc2VcbiAgICAgIGZpbHRlcmVkRGF0YSA9IGZpbHRlcmVkRGF0YT8uZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0/LlVzZXJJZCA9PT0gbnVsbCk7ICAgXG5cbiAgICByZXR1cm4gZmlsdGVyZWREYXRhO1xuICB9XG59Il19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wZXJzb25hbGl6YXRpb24uaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2hlbHBlcnMvY29tbW9uL3VzZXItcGVyc29uYWxpemF0aW9uLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFHckUsTUFBTSxPQUFPLHlCQUF5QjtJQUR0QztRQUdtQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBaUVsRDtJQS9EQyx1QkFBdUIsQ0FBQyxJQUFRO1FBQzlCLE1BQU0sQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELHVCQUF1QixDQUFDLFFBQWdCLEVBQUUsV0FBa0IsRUFBRSxJQUFZLEVBQUUsTUFBYSxFQUFFLEdBQVk7UUFDckcsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsTUFBTSxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNwSCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsSUFBUSxFQUFFLFFBQWdCLEVBQUUsV0FBa0IsRUFBRSxJQUFZLEVBQUUsTUFBYSxFQUFFLEdBQVk7UUFDbEgsSUFBSSxZQUFZLEdBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBSyxRQUFRLEVBQUUsV0FBVyxFQUFFLElBQUksSUFBSSxFQUFFLFdBQVcsS0FBSyxXQUFXLElBQUksSUFBSSxFQUFFLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQztRQUV0SyxNQUFNLGVBQWUsR0FBRyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxLQUFLLEdBQUcsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzdHLElBQUksZUFBZSxFQUFFLE1BQU0sR0FBRyxDQUFDO1lBQzdCLFlBQVksR0FBRyxlQUFlLENBQUM7O1lBRy9CLFlBQVksR0FBRyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBRXpFLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxNQUFNLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNwSCxJQUFJLGdCQUFnQixFQUFFLE1BQU0sR0FBRyxDQUFDO1lBQzlCLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQzs7WUFHaEMsWUFBWSxHQUFHLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUM7UUFFNUUsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7T0FlRztJQUNILDhCQUE4QixDQUFDLEdBQVcsRUFBRSxJQUFZLEVBQUUsTUFBYztRQUN0RSxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sRUFBRSx1QkFBdUIsSUFBSSxFQUFFLENBQUM7YUFDakQsTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxLQUFLLElBQUksQ0FBQzthQUMxQyxJQUFJLENBQ0gsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUUsQ0FDakIsQ0FBQyxDQUFDLEVBQUUsTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzRCxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2hFO2FBQ0EsTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FDcEIsSUFBSSxFQUFFLE1BQU07WUFDVixDQUFDLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxNQUFNLEVBQUUsV0FBVyxFQUFFO1lBQ3ZELENBQUMsQ0FBQyxJQUFJLENBQ1Q7YUFDQSxJQUFJLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEtBQUssR0FBRyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFeEUsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzBGQWpFVSx5QkFBeUI7dUVBQXpCLHlCQUF5QixXQUF6Qix5QkFBeUIsbUJBRFosTUFBTTs7aUZBQ25CLHlCQUF5QjtjQURyQyxVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElkYlNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hdXRoL2lkYi1zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbW9uIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBTdG9yYWdlQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3N0b3JhZ2UtY29uc3RhbnRzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBVc2VyUGVyc29uYWxpemF0aW9uSGVscGVyIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IGlkYlNlcnZpY2UgPSBpbmplY3QoSWRiU2VydmljZSk7XG5cbiAgc2V0VXNlclBlcnNvbmFsaXplZERhdGEoZGF0YTphbnkpIHtcbiAgICBDb21tb24udGFiVXNlclBlcnNvbmFsaXplZERhdGEgPSBkYXRhO1xuICAgIHRoaXMuaWRiU2VydmljZS5zZXRJdGVtKFN0b3JhZ2VDb25zdGFudHMudGFiVXNlclBlcnNvbmFsaXplZERhdGEsIGRhdGEpO1xuICB9XG5cbiAgZ2V0VXNlclBlcnNvbmFsaXplZERhdGEoc2NyZWVuSWQ6IHN0cmluZywgY29tcG9uZW50SWQ6c3RyaW5nLCB0eXBlOiBudW1iZXIsIHVzZXJJZDpzdHJpbmcsIGtleT86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZpbHRlclVzZXJQZXJzb25hbGl6ZWREYXRhKENvbW1vbj8udGFiVXNlclBlcnNvbmFsaXplZERhdGEsIHNjcmVlbklkLCBjb21wb25lbnRJZCwgdHlwZSwgdXNlcklkLCBrZXkpO1xuICB9XG5cbiAgZmlsdGVyVXNlclBlcnNvbmFsaXplZERhdGEoZGF0YTphbnksIHNjcmVlbklkOiBzdHJpbmcsIGNvbXBvbmVudElkOnN0cmluZywgdHlwZTogbnVtYmVyLCB1c2VySWQ6c3RyaW5nLCBrZXk/OiBzdHJpbmcpIHtcbiAgICBsZXQgZmlsdGVyZWREYXRhID0gZGF0YT8uZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0/LlNjcmVlbklkPy50b0xvd2VyQ2FzZSgpID09PSBzY3JlZW5JZD8udG9Mb3dlckNhc2UoKSAmJiBpdGVtPy5Db21wb25lbnRJZCA9PT0gY29tcG9uZW50SWQgJiYgaXRlbT8uVHlwZSA9PT0gdHlwZSk7XG4gICAgXG4gICAgY29uc3Qga2V5RmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhPy5maWx0ZXIoKGl0ZW06IGFueSkgPT4gaXRlbT8uS2V5Py50b0xvd2VyQ2FzZSgpID09PSBrZXk/LnRvTG93ZXJDYXNlKCkpO1xuICAgIGlmIChrZXlGaWx0ZXJlZERhdGE/Lmxlbmd0aCA+IDApXG4gICAgICBmaWx0ZXJlZERhdGEgPSBrZXlGaWx0ZXJlZERhdGE7IFxuICAgIFxuICAgIGVsc2VcbiAgICAgIGZpbHRlcmVkRGF0YSA9IGZpbHRlcmVkRGF0YT8uZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0/LktleSA9PT0gbnVsbCk7XG5cbiAgICBjb25zdCB1c2VyRmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhPy5maWx0ZXIoKGl0ZW06IGFueSkgPT4gaXRlbT8uVXNlcklkPy50b0xvd2VyQ2FzZSgpID09PSB1c2VySWQ/LnRvTG93ZXJDYXNlKCkpO1xuICAgIGlmICh1c2VyRmlsdGVyZWREYXRhPy5sZW5ndGggPiAwKSBcbiAgICAgIGZpbHRlcmVkRGF0YSA9IHVzZXJGaWx0ZXJlZERhdGE7XG4gICAgXG4gICAgZWxzZVxuICAgICAgZmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhPy5maWx0ZXIoKGl0ZW06IGFueSkgPT4gaXRlbT8uVXNlcklkID09PSBudWxsKTsgICBcblxuICAgIHJldHVybiBmaWx0ZXJlZERhdGE7XG4gIH1cblxuICAvKipcbiAgICogRmluZHMgYSB1c2VyJ3MgcGVyc29uYWxpemVkIGRhdGEgZm9yIGEgZ2l2ZW4ga2V5IGFuZCB0eXBlLlxuICAgKiBFeGVjdXRlcyB0aGUgZm9sbG93aW5nIHN0ZXBzOlxuICAgKiAxLiBGaWx0ZXJzIG91dCByZWNvcmRzIHdoZXJlIHRoZSBUeXBlIGRvZXMgbm90IG1hdGNoIHRoZSBzcGVjaWZpZWQgdHlwZS5cbiAgICogMi4gU29ydHMgdGhlIGRhdGEgaW4gZGVzY2VuZGluZyBvcmRlciBiYXNlZCBvbiB0aGUgVXNlcklkIGZpZWxkLiBJZiB0aGUgVXNlcklkXG4gICAqICAgIGlzIG51bGwsIGl0IGlzIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHRoZSBzb3J0ZWQgYXJyYXkuXG4gICAqIDMuIEZpbHRlcnMgb3V0IHJlY29yZHMgd2hlcmUgdGhlIFVzZXJJZCBkb2VzIG5vdCBtYXRjaCB0aGUgc3BlY2lmaWVkIHVzZXJJZC5cbiAgICogICAgSWYgdGhlIFVzZXJJZCBpcyBudWxsLCB0aGUgcmVjb3JkIGlzIG5vdCBmaWx0ZXJlZCBvdXQuXG4gICAqIDQuIEZpbmRzIHRoZSBmaXJzdCByZWNvcmQgd2hlcmUgdGhlIEtleSBtYXRjaGVzIHRoZSBzcGVjaWZpZWQga2V5LlxuICAgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gc2VhcmNoIGZvci5cbiAgICogQHBhcmFtIHR5cGUgVGhlIHR5cGUgb2YgZGF0YSB0byBzZWFyY2ggZm9yLlxuICAgKiBAcGFyYW0gdXNlcklkIFRoZSBJRCBvZiB0aGUgdXNlciB0byBzZWFyY2ggZm9yLlxuICAgKiBAcmV0dXJucyBUaGUgdXNlcidzIHBlcnNvbmFsaXplZCBkYXRhLCBvciB1bmRlZmluZWQgaWYgbm90IGZvdW5kLlxuICAgKiBAYXV0aG9yIFBhcnRoIEIgVGhha2thclxuICAgKiBAZGF0ZSAyMDIzLTExLTI4XG4gICAqL1xuICBnZXRVc2VyUGVyc29uYWxpemVkRGF0YUZyb21LZXkoa2V5OiBzdHJpbmcsIHR5cGU6IG51bWJlciwgdXNlcklkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBkYXRhID0gKENvbW1vbj8udGFiVXNlclBlcnNvbmFsaXplZERhdGEgfHwgW10pXG4gICAgICAuZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0/LlR5cGUgPT09IHR5cGUpXG4gICAgICAuc29ydChcbiAgICAgICAgKGE6IGFueSwgYjogYW55KSA9PlxuICAgICAgICAgIChhPy5Vc2VySWQgPT09IG51bGwgPyAxIDogMCkgLSAoYj8uVXNlcklkID09PSBudWxsID8gMSA6IDApIHx8XG4gICAgICAgICAgKGE/LlVzZXJJZD8udG9Mb3dlckNhc2UoKSA9PT0gdXNlcklkPy50b0xvd2VyQ2FzZSgpID8gLTEgOiAxKVxuICAgICAgKVxuICAgICAgLmZpbHRlcigoaXRlbTogYW55KSA9PlxuICAgICAgICBpdGVtPy5Vc2VySWRcbiAgICAgICAgICA/IGl0ZW0/LlVzZXJJZD8udG9Mb3dlckNhc2UoKSA9PT0gdXNlcklkPy50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgOiB0cnVlXG4gICAgICApXG4gICAgICAuZmluZCgoaXRlbTogYW55KSA9PiBpdGVtPy5LZXk/LnRvTG93ZXJDYXNlKCkgPT09IGtleT8udG9Mb3dlckNhc2UoKSk7XG5cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG59Il19
@@ -4,6 +4,23 @@ export declare class UserPersonalizationHelper {
4
4
  setUserPersonalizedData(data: any): void;
5
5
  getUserPersonalizedData(screenId: string, componentId: string, type: number, userId: string, key?: string): any;
6
6
  filterUserPersonalizedData(data: any, screenId: string, componentId: string, type: number, userId: string, key?: string): any;
7
+ /**
8
+ * Finds a user's personalized data for a given key and type.
9
+ * Executes the following steps:
10
+ * 1. Filters out records where the Type does not match the specified type.
11
+ * 2. Sorts the data in descending order based on the UserId field. If the UserId
12
+ * is null, it is placed at the end of the sorted array.
13
+ * 3. Filters out records where the UserId does not match the specified userId.
14
+ * If the UserId is null, the record is not filtered out.
15
+ * 4. Finds the first record where the Key matches the specified key.
16
+ * @param key The key to search for.
17
+ * @param type The type of data to search for.
18
+ * @param userId The ID of the user to search for.
19
+ * @returns The user's personalized data, or undefined if not found.
20
+ * @author Parth B Thakkar
21
+ * @date 2023-11-28
22
+ */
23
+ getUserPersonalizedDataFromKey(key: string, type: number, userId: string): any;
7
24
  static ɵfac: i0.ɵɵFactoryDeclaration<UserPersonalizationHelper, never>;
8
25
  static ɵprov: i0.ɵɵInjectableDeclaration<UserPersonalizationHelper>;
9
26
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@techextensor/tab-core-utility",
3
- "version": "2.2.102",
3
+ "version": "2.2.103",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.3.0",
6
6
  "@angular/core": "^17.3.0",