@agorapulse/ui-components 20.0.0 → 20.1.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.
- package/action-dropdown/index.d.ts +3 -9
- package/agorapulse-ui-components-20.1.0.tgz +0 -0
- package/fesm2022/agorapulse-ui-components-action-dropdown.mjs +6 -16
- package/fesm2022/agorapulse-ui-components-action-dropdown.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-button.mjs +2 -2
- package/fesm2022/agorapulse-ui-components-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-nav-selector-testing.mjs +97 -0
- package/fesm2022/agorapulse-ui-components-nav-selector-testing.mjs.map +1 -0
- package/fesm2022/agorapulse-ui-components-nav-selector.mjs +27 -24
- package/fesm2022/agorapulse-ui-components-nav-selector.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-providers.mjs +19 -0
- package/fesm2022/agorapulse-ui-components-providers.mjs.map +1 -0
- package/fesm2022/agorapulse-ui-components.mjs.map +1 -1
- package/nav-selector/index.d.ts +13 -2
- package/nav-selector/testing/index.d.ts +69 -0
- package/package.json +53 -45
- package/providers/index.d.ts +11 -0
- package/agorapulse-ui-components-20.0.0.tgz +0 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Usage Example:
|
|
3
|
+
*
|
|
4
|
+
* import { generateGroupElements, generateLeafElements } from './nav-selector-entry.mock';
|
|
5
|
+
*
|
|
6
|
+
* const mockNavSelectorEntries = [
|
|
7
|
+
* // Generate 30 groups with children using default settings
|
|
8
|
+
* ...generateGroupElements({
|
|
9
|
+
* count: 30,
|
|
10
|
+
* }),
|
|
11
|
+
*
|
|
12
|
+
* // Generate individual leaf elements without groups
|
|
13
|
+
* ...generateLeafElements({
|
|
14
|
+
* count: 1,
|
|
15
|
+
* }),
|
|
16
|
+
* ];
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Utility function to generate leaf type elements
|
|
20
|
+
* @param options Configuration options for generating leaf elements
|
|
21
|
+
* @returns Array of leaf elements
|
|
22
|
+
*/
|
|
23
|
+
function generateLeafElements(options) {
|
|
24
|
+
const { count, uidPrefix = 'account', aliasPrefix = 'Account', startUid = 1000, networks = ['facebook', 'instagram', 'youtube', 'tiktok', 'linkedin', 'xPlus'], pictureUrlPattern = 'https://picsum.photos/150/150?random={uid}', disableReasonFrequency = 17, tokenInvalidFrequency = 7, featureLockedFrequency = 11, } = options;
|
|
25
|
+
return Array.from({ length: count }, (_, index) => {
|
|
26
|
+
const uid = startUid + index;
|
|
27
|
+
const networkIndex = index % networks.length;
|
|
28
|
+
const network = networks[networkIndex];
|
|
29
|
+
const finalUid = `${uidPrefix}_${uid}`;
|
|
30
|
+
const finalAlias = `${aliasPrefix} ${uid}`;
|
|
31
|
+
const finalPictureUrl = pictureUrlPattern.replace('{uid}', uid.toString());
|
|
32
|
+
return {
|
|
33
|
+
uid: finalUid,
|
|
34
|
+
counter: null,
|
|
35
|
+
alias: finalAlias,
|
|
36
|
+
pictureUrl: finalPictureUrl,
|
|
37
|
+
disableReason: index > 0 && index % disableReasonFrequency === 0 ? 'The Reports feature is not supported for this account type' : null,
|
|
38
|
+
missingPermission: false,
|
|
39
|
+
network,
|
|
40
|
+
actions: [],
|
|
41
|
+
details: [],
|
|
42
|
+
tokenInvalid: index > 0 && index % tokenInvalidFrequency === 0,
|
|
43
|
+
featureLocked: index > 0 && index % featureLockedFrequency === 0,
|
|
44
|
+
type: 'LEAF',
|
|
45
|
+
};
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Utility function to generate group type elements with children
|
|
50
|
+
* @param options Configuration options for generating group elements
|
|
51
|
+
* @returns Array of group elements
|
|
52
|
+
*/
|
|
53
|
+
function generateGroupElements(options) {
|
|
54
|
+
const { count, startGroupId = 82529, categories = ['Test Group'], childrenCounts = [10], uidPrefix = 'group', childUidPrefix = 'account', childAliasPrefix = '', startChildUid = 99, childUidIncrement = 30, networks = ['facebook', 'instagram'], pictureUrlPattern = 'https://picsum.photos/150/150?random={uid}', disableReasonFrequency = 999, tokenInvalidFrequency = 999, featureLockedFrequency = 999, } = options;
|
|
55
|
+
// Use a cache to avoid regenerating the same data
|
|
56
|
+
const cacheKey = JSON.stringify(options);
|
|
57
|
+
if (globalThis.__navSelectorMockCache?.[cacheKey]) {
|
|
58
|
+
return globalThis.__navSelectorMockCache[cacheKey];
|
|
59
|
+
}
|
|
60
|
+
const result = Array.from({ length: count }, (_, groupIndex) => {
|
|
61
|
+
const groupId = startGroupId + groupIndex;
|
|
62
|
+
// Reduce default children count to improve performance
|
|
63
|
+
const childrenCount = Math.min(childrenCounts[groupIndex] || 5, 10);
|
|
64
|
+
const startUid = startChildUid + groupIndex * childUidIncrement;
|
|
65
|
+
const groupCategory = categories[groupIndex] || `Category ${groupIndex + 1}`;
|
|
66
|
+
return {
|
|
67
|
+
uid: `${uidPrefix}_${groupId}`,
|
|
68
|
+
alias: groupCategory,
|
|
69
|
+
children: generateLeafElements({
|
|
70
|
+
count: childrenCount,
|
|
71
|
+
uidPrefix: childUidPrefix,
|
|
72
|
+
aliasPrefix: childAliasPrefix || groupCategory,
|
|
73
|
+
startUid: startUid,
|
|
74
|
+
networks,
|
|
75
|
+
pictureUrlPattern,
|
|
76
|
+
disableReasonFrequency,
|
|
77
|
+
tokenInvalidFrequency,
|
|
78
|
+
featureLockedFrequency,
|
|
79
|
+
}),
|
|
80
|
+
folded: true,
|
|
81
|
+
type: 'GROUP',
|
|
82
|
+
};
|
|
83
|
+
});
|
|
84
|
+
// Cache the result
|
|
85
|
+
if (!globalThis.__navSelectorMockCache) {
|
|
86
|
+
globalThis.__navSelectorMockCache = {};
|
|
87
|
+
}
|
|
88
|
+
globalThis.__navSelectorMockCache[cacheKey] = result;
|
|
89
|
+
return result;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Generated bundle index. Do not edit.
|
|
94
|
+
*/
|
|
95
|
+
|
|
96
|
+
export { generateGroupElements, generateLeafElements };
|
|
97
|
+
//# sourceMappingURL=agorapulse-ui-components-nav-selector-testing.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agorapulse-ui-components-nav-selector-testing.mjs","sources":["../../../libs/ui-components/nav-selector/testing/src/nav-selector-entry.mock.ts","../../../libs/ui-components/nav-selector/testing/src/agorapulse-ui-components-nav-selector-testing.ts"],"sourcesContent":["/**\n * Usage Example:\n *\n * import { generateGroupElements, generateLeafElements } from './nav-selector-entry.mock';\n *\n * const mockNavSelectorEntries = [\n * // Generate 30 groups with children using default settings\n * ...generateGroupElements({\n * count: 30,\n * }),\n *\n * // Generate individual leaf elements without groups\n * ...generateLeafElements({\n * count: 1,\n * }),\n * ];\n */\n\n/**\n * Utility function to generate leaf type elements\n * @param options Configuration options for generating leaf elements\n * @returns Array of leaf elements\n */\nexport function generateLeafElements(options: {\n count: number;\n uidPrefix?: string;\n aliasPrefix?: string;\n startUid?: number;\n networks?: string[];\n pictureUrlPattern?: string;\n disableReasonFrequency?: number;\n tokenInvalidFrequency?: number;\n featureLockedFrequency?: number;\n}) {\n const {\n count,\n uidPrefix = 'account',\n aliasPrefix = 'Account',\n startUid = 1000,\n networks = ['facebook', 'instagram', 'youtube', 'tiktok', 'linkedin', 'xPlus'],\n pictureUrlPattern = 'https://picsum.photos/150/150?random={uid}',\n disableReasonFrequency = 17,\n tokenInvalidFrequency = 7,\n featureLockedFrequency = 11,\n } = options;\n\n return Array.from({ length: count }, (_, index) => {\n const uid = startUid + index;\n const networkIndex = index % networks.length;\n const network = networks[networkIndex];\n\n const finalUid = `${uidPrefix}_${uid}`;\n const finalAlias = `${aliasPrefix} ${uid}`;\n const finalPictureUrl = pictureUrlPattern.replace('{uid}', uid.toString());\n\n return {\n uid: finalUid,\n counter: null,\n alias: finalAlias,\n pictureUrl: finalPictureUrl,\n disableReason:\n index > 0 && index % disableReasonFrequency === 0 ? 'The Reports feature is not supported for this account type' : null,\n missingPermission: false,\n network,\n actions: [],\n details: [],\n tokenInvalid: index > 0 && index % tokenInvalidFrequency === 0,\n featureLocked: index > 0 && index % featureLockedFrequency === 0,\n type: 'LEAF' as const,\n };\n });\n}\n\n/**\n * Utility function to generate group type elements with children\n * @param options Configuration options for generating group elements\n * @returns Array of group elements\n */\nexport function generateGroupElements(options: {\n count: number;\n startGroupId?: number;\n categories?: string[];\n childrenCounts?: number[];\n uidPrefix?: string;\n childUidPrefix?: string;\n childAliasPrefix?: string;\n startChildUid?: number;\n childUidIncrement?: number;\n networks?: string[];\n pictureUrlPattern?: string;\n disableReasonFrequency?: number;\n tokenInvalidFrequency?: number;\n featureLockedFrequency?: number;\n}) {\n const {\n count,\n startGroupId = 82529,\n categories = ['Test Group'],\n childrenCounts = [10],\n uidPrefix = 'group',\n childUidPrefix = 'account',\n childAliasPrefix = '',\n startChildUid = 99,\n childUidIncrement = 30,\n networks = ['facebook', 'instagram'],\n pictureUrlPattern = 'https://picsum.photos/150/150?random={uid}',\n disableReasonFrequency = 999,\n tokenInvalidFrequency = 999,\n featureLockedFrequency = 999,\n } = options;\n\n // Use a cache to avoid regenerating the same data\n const cacheKey = JSON.stringify(options);\n if ((globalThis as any).__navSelectorMockCache?.[cacheKey]) {\n return (globalThis as any).__navSelectorMockCache[cacheKey];\n }\n\n const result = Array.from({ length: count }, (_, groupIndex) => {\n const groupId = startGroupId + groupIndex;\n // Reduce default children count to improve performance\n const childrenCount = Math.min(childrenCounts[groupIndex] || 5, 10);\n const startUid = startChildUid + groupIndex * childUidIncrement;\n const groupCategory = categories[groupIndex] || `Category ${groupIndex + 1}`;\n\n return {\n uid: `${uidPrefix}_${groupId}`,\n alias: groupCategory,\n children: generateLeafElements({\n count: childrenCount,\n uidPrefix: childUidPrefix,\n aliasPrefix: childAliasPrefix || groupCategory,\n startUid: startUid,\n networks,\n pictureUrlPattern,\n disableReasonFrequency,\n tokenInvalidFrequency,\n featureLockedFrequency,\n }),\n folded: true,\n type: 'GROUP' as const,\n };\n });\n\n // Cache the result\n if (!(globalThis as any).__navSelectorMockCache) {\n (globalThis as any).__navSelectorMockCache = {};\n }\n (globalThis as any).__navSelectorMockCache[cacheKey] = result;\n\n return result;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|