Skip to content

Commit 5aa0421

Browse files
authored
Merge pull request #248 from SalesforceLabs/Lithium
Releasing Lithium
2 parents 60016fb + b1c71d9 commit 5aa0421

File tree

11 files changed

+72
-47
lines changed

11 files changed

+72
-47
lines changed

build/bin/OrgCheck_SR.zip

95 Bytes
Binary file not shown.

build/package.readme

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,13 @@ sfdx force:org:delete --targetusername MyScratchOrg
3030
============================================================
3131
List of usefull commands for packaging
3232
============================================================
33-
sfdx force:package:version:list --targetdevhubusername vfinet.devhub@salesforce.com
34-
sfdx force:package:version:create --targetdevhubusername vfinet.devhub@salesforce.com --package OrgCheck --definitionfile config/project-scratch-def.json --installationkeybypass --codecoverage --wait 10
35-
sfdx force:package:version:promote --targetdevhubusername vfinet.devhub@salesforce.com --package OrgCheck@2.4.1-0
33+
##sfdx force:package:version:list --targetdevhubusername vfinet.devhub@salesforce.com
34+
##sfdx force:package:version:create --targetdevhubusername vfinet.devhub@salesforce.com --package OrgCheck --definitionfile config/project-scratch-def.json --installationkeybypass --codecoverage --wait 10
35+
##sfdx force:package:version:promote --targetdevhubusername vfinet.devhub@salesforce.com --package OrgCheck@2.4.1-0
3636

37+
sfdx package version list --target-hub-org vfinet.devhub@salesforce.com
38+
sfdx package version create --target-hub-org vfinet.devhub@salesforce.com --package OrgCheck --definition-file config/project-scratch-def.json --installation-key-bypass --code-coverage --wait 10
39+
sfdx package version promote --target-hub-org vfinet.devhub@salesforce.com --package OrgCheck@2.5.0-0
3740

3841

3942

build/src/javascript/orgcheck/OrgCheck.Datasets.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,9 @@ OrgCheck.Datasets = {
545545
SALESFORCE_HANDLER.query([{
546546
string: 'SELECT Id, Name, Description, IsCustom, License.Name, NamespacePrefix, Type, '+
547547
'CreatedDate, LastModifiedDate, '+
548-
'(SELECT Id FROM Assignments WHERE Assignee.IsActive = TRUE LIMIT 1) '+ // just to see if used
548+
'(SELECT Id FROM Assignments WHERE Assignee.IsActive = TRUE LIMIT 1), '+ // just to see if used
549+
'(SELECT Id FROM FieldPerms LIMIT 101), '+
550+
'(SELECT Id FROM ObjectPerms LIMIT 101)'+
549551
'FROM PermissionSet '+
550552
'WHERE IsOwnedByProfile = FALSE'
551553
}, {
@@ -572,7 +574,9 @@ OrgCheck.Datasets = {
572574
hasMembers: hasMembers,
573575
isGroup: (r.Type === 'Group'), // other values can be 'Regular', 'Standard', 'Session
574576
createdDate: r.CreatedDate,
575-
lastModifiedDate: r.LastModifiedDate
577+
lastModifiedDate: r.LastModifiedDate,
578+
nbFieldPermissions: r.FieldPerms?.records.length || 0,
579+
nbObjectPermissions: r.ObjectPerms?.records.length || 0
576580
};
577581
if (item.isGroup === true) psgByName1[item.package+'--'+item.name] = item;
578582
pSetIds.push(item.id);

build/src/javascript/orgcheck/OrgCheck.Salesforce.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ OrgCheck.Salesforce = {
138138
'(SELECT Id, Name FROM WebLinks) '+
139139
'FROM EntityDefinition '+
140140
'WHERE DeveloperName = '+secureBindingVariable(sobjectDevNameNoExt)+' '+
141-
(sobjectPackage !== '' ? 'AND NamespacePrefix = '+secureBindingVariable(sobjectPackage)+' ' : 'AND PublisherId IN (\'System\', \'<Local>\')');
141+
(sobjectPackage !== '' ? 'AND NamespacePrefix = '+secureBindingVariable(sobjectPackage)+' ' : 'AND PublisherId IN (\'System\', \'<local>\')');
142142
connection.tooling.query(query, (error, result) => {
143143
if (error) {
144144
error.context = {
@@ -330,7 +330,11 @@ OrgCheck.Salesforce = {
330330
Promise.all(promises2)
331331
.then((results) => {
332332
const response = {};
333-
results.forEach(r => response[r.type] = r.members);
333+
results.forEach(r => {
334+
const m = response[r.type] || [];
335+
m.push(...r.members);
336+
response[r.type] = m;
337+
});
334338
return response;
335339
})
336340
.catch((err) => that.fire('error', err))

build/src/javascript/orgcheck/OrgCheck.VisualComponents.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,16 +182,20 @@ OrgCheck.VisualComponents = {
182182
const iOrder = config.sorting.order === 'asc' ? 1 : -1;
183183
const items = [].slice.call(table.rows).slice(1);
184184
const isCellNumeric = c.type === 'numeric';
185+
const size = items.length;
185186
items.sort(function compare(a, b) {
186187
const ca = a.getElementsByTagName('td')[i];
187188
const cb = b.getElementsByTagName('td')[i];
188189
if (ca && cb) {
189190
const va = ca.hasAttribute('aria-data') ? ca.getAttribute('aria-data') : ca.textContent;
190191
const vb = cb.hasAttribute('aria-data') ? cb.getAttribute('aria-data') : cb.textContent;
191192
if (isCellNumeric) {
193+
if (va === '') return size;
194+
if (vb === '') return -size;
192195
if (va && vb) return (va - vb) * iOrder;
193196
if (va) return iOrder;
194197
if (vb) return -iOrder;
198+
return 0;
195199
}
196200
if (va < vb) return -iOrder;
197201
if (va > vb) return iOrder;

build/src/javascript/orgcheck/OrgCheck.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/**
77
* Org Check Version
88
*/
9-
version: 'Helium [He,2]',
9+
version: 'Lithium [Li,3]',
1010

1111
/**
1212
* Org Check core
@@ -366,6 +366,7 @@
366366
const avsArray = Array.isArray(avs) ? avs : [ avs ];
367367
avsArray.forEach(av => appVisibility.appVisibilities.push({
368368
app: av.application,
369+
default: av.default === 'true',
369370
visible: av.visible === 'true'
370371
}));
371372
}

build/tmp/js/orgcheck.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

force-app/main/default/pages/OrgCheck_ProfilesPermSets_VFP.page

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -374,6 +374,8 @@
374374
},
375375
{ name: '{!JSENCODE($Label.OrgCheck_IsGroup_CL)}', property: 'isGroup', type: 'checkbox' },
376376
{ name: '{!JSENCODE($Label.OrgCheck_IsCustom_CL)}', property: 'isCustom', type: 'checkbox' },
377+
{ name: '#FLSs', property: 'nbFieldPermissions', formula: (r) => { return r.nbFieldPermissions > 100 ? '100+' : r.nbFieldPermissions; }, type: 'numeric' },
378+
{ name: '#Object CRUDs', property: 'nbObjectPermissions', formula: (r) => { return r.nbObjectPermissions > 100 ? '100+' : r.nbObjectPermissions; }, type: 'numeric' },
377379
{ name: '{!JSENCODE($Label.OrgCheck_License_CL)}', property: 'license' },
378380
{ name: '{!JSENCODE($Label.OrgCheck_Package_CL)}', property: 'package' },
379381
{ name: '{!JSENCODE($Label.OrgCheck_NbActiveUsers_CL)}',
@@ -529,7 +531,11 @@
529531
} else {
530532
r.appVisibilities.forEach(ap => {
531533
const d = matrixData[ap.app] || { app: ap.app };
532-
d[r.parentApiName] = (ap.visible === true ? 'Visible' : '');
534+
d[r.parentApiName] = (
535+
(ap.visible?'Visible':'') +
536+
(ap.visible&&ap.default?' / ':' ') +
537+
(ap.default?'Default':'')
538+
);
533539
matrixData[ap.app] = d;
534540
});
535541
}

force-app/main/default/pages/OrgCheck_PublicGroups_VFP.page

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -193,13 +193,15 @@
193193
helper.map.iterate2(map.publicGroups, function(d, i, s) {
194194
if (d.type === 'role' || d.type === 'roleAndSub') {
195195
const role = map.roles[d.relatedId];
196-
d.name = role.name;
197-
d.developerName = role.developerName;
198-
d.directMembersCount = role.activeMembersCount;
199-
d.directUsers = role.activeMembers;
200-
d.directGroups = [];
201-
if (d.type === 'role') d.parentId = publicGroupIDsByRoleID[role.parentId];
202-
if (d.type === 'roleAndSub') d.parentId = publicGroupIDsByRoleAndSubID[role.parentId];
196+
if (role) {
197+
d.name = role.name;
198+
d.developerName = role.developerName;
199+
d.directMembersCount = role.activeMembersCount;
200+
d.directUsers = role.activeMembers;
201+
d.directGroups = [];
202+
if (d.type === 'role') d.parentId = publicGroupIDsByRoleID[role.parentId];
203+
if (d.type === 'roleAndSub') d.parentId = publicGroupIDsByRoleAndSubID[role.parentId];
204+
}
203205
}
204206
});
205207

95 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)