From 544f2e736c1aba9f4ca925017114fc3647306b71 Mon Sep 17 00:00:00 2001 From: rsosemann Date: Tue, 16 Nov 2021 17:17:14 +0100 Subject: [PATCH] Migrated to v53 --- config/project-scratch-def.json | 10 +- .../applications/PlantUML.app-meta.xml | 3 - .../default/classes/ApexParser.cls-meta.xml | 2 +- .../classes/ClassDiagramCreatorCtrl.cls | 54 ---------- .../ClassDiagramCreatorCtrl.cls-meta.xml | 2 +- .../classes/ClassDiagramCreatorCtrl_Test.cls | 68 +++++++++++++ .../ClassDiagramCreatorCtrl_Test.cls-meta.xml | 5 + .../main/default/classes/CodeMetric_Test.cls | 36 +++++++ .../classes/CodeMetric_Test.cls-meta.xml | 5 + .../main/default/classes/CodeMetrics.cls | 31 ------ .../default/classes/CodeMetrics.cls-meta.xml | 2 +- .../main/default/classes/ERDCreatorCtrl.cls | 46 --------- .../classes/ERDCreatorCtrl.cls-meta.xml | 2 +- .../default/classes/ErdDiagramCreatorCtrl.cls | 93 ++++++++++++++++++ .../ErdDiagramCreatorCtrl.cls-meta.xml | 5 + .../classes/ErdDiagramCreatorCtrl_Test.cls | 55 +++++++++++ .../ErdDiagramCreatorCtrl_Test.cls-meta.xml | 5 + .../classes/PlantUMLClassDiagram.cls-meta.xml | 2 +- .../classes/PlantUMLERDiagram.cls-meta.xml | 2 +- .../main/default/contentassets/plantuml.asset | Bin 33343 -> 0 bytes .../contentassets/plantuml.asset-meta.xml | 17 ---- .../default/contentassets/plantuml1.asset | Bin 33343 -> 0 bytes .../contentassets/plantuml1.asset-meta.xml | 17 ---- .../PlantUML_UtilityBar.flexipage-meta.xml | 16 --- .../Plant_UML_UtilityBar.flexipage-meta.xml | 16 --- .../pages/classDiagramCreator.page-meta.xml | 2 +- .../default/pages/erdCreator.page-meta.xml | 2 +- scripts/config.sh | 2 - scripts/createScratchOrg.sh | 2 +- 29 files changed, 282 insertions(+), 220 deletions(-) create mode 100644 force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls create mode 100644 force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls-meta.xml create mode 100644 force-app/main/default/classes/CodeMetric_Test.cls create mode 100644 force-app/main/default/classes/CodeMetric_Test.cls-meta.xml create mode 100644 force-app/main/default/classes/ErdDiagramCreatorCtrl.cls create mode 100644 force-app/main/default/classes/ErdDiagramCreatorCtrl.cls-meta.xml create mode 100644 force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls create mode 100644 force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls-meta.xml delete mode 100644 force-app/main/default/contentassets/plantuml.asset delete mode 100644 force-app/main/default/contentassets/plantuml.asset-meta.xml delete mode 100644 force-app/main/default/contentassets/plantuml1.asset delete mode 100644 force-app/main/default/contentassets/plantuml1.asset-meta.xml delete mode 100644 force-app/main/default/flexipages/PlantUML_UtilityBar.flexipage-meta.xml delete mode 100644 force-app/main/default/flexipages/Plant_UML_UtilityBar.flexipage-meta.xml diff --git a/config/project-scratch-def.json b/config/project-scratch-def.json index 6f40b2f..3130a72 100644 --- a/config/project-scratch-def.json +++ b/config/project-scratch-def.json @@ -1,13 +1,5 @@ { "orgName": "salesforce-plantuml_DEV", "edition": "Developer", - "features": [], - "settings": { - "lightningExperienceSettings": { - "enableS1DesktopEnabled": true - }, - "mobileSettings": { - "enableS1EncryptedStoragePref2": false - } - } + "features": [] } diff --git a/force-app/main/default/applications/PlantUML.app-meta.xml b/force-app/main/default/applications/PlantUML.app-meta.xml index 96ffb69..2fb4271 100644 --- a/force-app/main/default/applications/PlantUML.app-meta.xml +++ b/force-app/main/default/applications/PlantUML.app-meta.xml @@ -2,8 +2,6 @@ #0070D2 - plantuml1 - 1 false Renders UML diagrams for Apex Classes and SObjects @@ -15,5 +13,4 @@ ClassDiagramCreator ErdCreator Lightning - PlantUML_UtilityBar diff --git a/force-app/main/default/classes/ApexParser.cls-meta.xml b/force-app/main/default/classes/ApexParser.cls-meta.xml index 6dc8b22..f928c8e 100644 --- a/force-app/main/default/classes/ApexParser.cls-meta.xml +++ b/force-app/main/default/classes/ApexParser.cls-meta.xml @@ -1,5 +1,5 @@ - 27.0 + 53.0 Active diff --git a/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls b/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls index 7290ad9..b19544a 100644 --- a/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls +++ b/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls @@ -61,58 +61,4 @@ public with sharing class ClassDiagramCreatorCtrl { } return null; } - - - // TEST METHODS - - - static testmethod void testUIIsPopulatedOnConstructor() { - // Setup - Boolean noExceptionWasThrown = true; - - // Execute - Test.setCurrentPageReference(Page.classDiagramCreator); - try { - ClassDiagramCreatorCtrl ctrl = new ClassDiagramCreatorCtrl(); - } - catch(Exception ignored) { - noExceptionWasThrown = false; - } - - // Verify not much more than that no Exception was thrown - System.assert(noExceptionWasThrown); - } - - static testmethod void errorShownOnCreateWithNoSelectedClass() { - // Setup - Test.setCurrentPageReference(Page.classDiagramCreator); - ClassDiagramCreatorCtrl pageCtrl = new ClassDiagramCreatorCtrl(); - - // Execute - pageCtrl.doCreateDiagram(); - - // Verify - System.assert(ApexPages.hasMessages()); - } - - static testmethod void noErrorOnCreateWithSelectedClass() { - // Setup - Test.setCurrentPageReference(Page.classDiagramCreator); - ClassDiagramCreatorCtrl pageCtrl = new ClassDiagramCreatorCtrl(); - - // Execute - Boolean hasClasses = pageCtrl.accessibleClasses.size() > 0; - if(hasClasses) { - SelectOption anObject = pageCtrl.accessibleClasses.get(0); - pageCtrl.selectedClasses.add(anObject); - pageCtrl.classDiagram.showPublicMethods = true; - pageCtrl.classDiagram.showPublicVariables = true; - pageCtrl.classDiagram.showMetrics = true; - } - pageCtrl.doCreateDiagram(); - - // Verify - System.assert(!hasClasses || !ApexPages.hasMessages()); - System.assert(!hasClasses || pageCtrl.classDiagram.plantUMLText != ''); - } } \ No newline at end of file diff --git a/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls-meta.xml b/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls-meta.xml index 307ce73..f928c8e 100644 --- a/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls-meta.xml +++ b/force-app/main/default/classes/ClassDiagramCreatorCtrl.cls-meta.xml @@ -1,5 +1,5 @@ - 25.0 + 53.0 Active diff --git a/force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls b/force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls new file mode 100644 index 0000000..cd082e1 --- /dev/null +++ b/force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls @@ -0,0 +1,68 @@ +@IsTest +private class ClassDiagramCreatorCtrl_Test { + + @IsTest + private static void testUIIsPopulatedOnConstructor() { + + // Setup + Boolean noExceptionWasThrown = true; + + + // Execute + Test.setCurrentPageReference(Page.classDiagramCreator); + try { + new ClassDiagramCreatorCtrl(); + } + catch(Exception ignored) { + noExceptionWasThrown = false; + } + + + // Verify + System.assert(noExceptionWasThrown); + } + + + @IsTest + private static void errorShownOnCreateWithNoSelectedClass() { + + // Setup + Test.setCurrentPageReference(Page.classDiagramCreator); + ClassDiagramCreatorCtrl pageCtrl = new ClassDiagramCreatorCtrl(); + + + // Execute + pageCtrl.doCreateDiagram(); + + + // Verify + System.assert(ApexPages.hasMessages()); + } + + + @IsTest + private static void noErrorOnCreateWithSelectedClass() { + + // Setup + Test.setCurrentPageReference(Page.classDiagramCreator); + ClassDiagramCreatorCtrl pageCtrl = new ClassDiagramCreatorCtrl(); + + + // Execute + Boolean hasClasses = pageCtrl.accessibleClasses.size() > 0; + if(hasClasses) { + SelectOption anObject = pageCtrl.accessibleClasses.get(0); + pageCtrl.selectedClasses.add(anObject); + pageCtrl.classDiagram.showPublicMethods = true; + pageCtrl.classDiagram.showPublicVariables = true; + pageCtrl.classDiagram.showMetrics = true; + } + + pageCtrl.doCreateDiagram(); + + + // Verify + System.assert(!hasClasses || !ApexPages.hasMessages()); + System.assert(!hasClasses || pageCtrl.classDiagram.plantUMLText != ''); + } +} diff --git a/force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls-meta.xml b/force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls-meta.xml new file mode 100644 index 0000000..f928c8e --- /dev/null +++ b/force-app/main/default/classes/ClassDiagramCreatorCtrl_Test.cls-meta.xml @@ -0,0 +1,5 @@ + + + 53.0 + Active + diff --git a/force-app/main/default/classes/CodeMetric_Test.cls b/force-app/main/default/classes/CodeMetric_Test.cls new file mode 100644 index 0000000..96259e8 --- /dev/null +++ b/force-app/main/default/classes/CodeMetric_Test.cls @@ -0,0 +1,36 @@ +@IsTest +private class CodeMetric_Test { + + @IsTest + private static void calculateMethodCCCorrectly() { + + // Setup + ApexClass original = [SELECT Name, Body FROM ApexClass WHERE Name = 'ApexClassForTests']; + + + // Execute && Verify + ApexParser parser = new ApexParser(); + for(ApexParser.ClassMember method : parser.parse(original).members) { + if(method.Name == 'complexityOf7') { + System.assertEquals(7, CodeMetrics.CC(method)); + } + } + } + + + @IsTest + private static void calculateMethodCCIgnoresCommentsAndLiterals() { + + // Setup + ApexClass original = [SELECT Name, Body FROM ApexClass WHERE Name = 'ApexClassForTests']; + + + // Execute + Verify + ApexParser parser = new ApexParser(); + for(ApexParser.ClassMember method : parser.parse(original).members) { + if(method.Name == 'ccCalculationIgnoresCommentsAndLiterals') { + System.assertEquals(1, CodeMetrics.CC(method)); + } + } + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/CodeMetric_Test.cls-meta.xml b/force-app/main/default/classes/CodeMetric_Test.cls-meta.xml new file mode 100644 index 0000000..dd61d1f --- /dev/null +++ b/force-app/main/default/classes/CodeMetric_Test.cls-meta.xml @@ -0,0 +1,5 @@ + + + 52.0 + Active + diff --git a/force-app/main/default/classes/CodeMetrics.cls b/force-app/main/default/classes/CodeMetrics.cls index 195500f..55c0d4e 100644 --- a/force-app/main/default/classes/CodeMetrics.cls +++ b/force-app/main/default/classes/CodeMetrics.cls @@ -30,35 +30,4 @@ public class CodeMetrics { return methodCC; } - - - // TEST METHODS - - - static testMethod void calculateMethodCCCorrectly() { - // Setup - ApexClass original = [SELECT Name, Body FROM ApexClass WHERE Name = 'ApexClassForTests']; - - // Execute && Verify - ApexParser parser = new ApexParser(); - for(ApexParser.ClassMember method : parser.parse(original).members) { - if(method.Name == 'complexityOf7') { - System.assertEquals(7, CodeMetrics.CC(method)); - } - } - } - - - static testMethod void calculateMethodCCIgnoresCommentsAndLiterals() { - // Setup - ApexClass original = [SELECT Name, Body FROM ApexClass WHERE Name = 'ApexClassForTests']; - - // Execute && Verify - ApexParser parser = new ApexParser(); - for(ApexParser.ClassMember method : parser.parse(original).members) { - if(method.Name == 'ccCalculationIgnoresCommentsAndLiterals') { - System.assertEquals(1, CodeMetrics.CC(method)); - } - } - } } \ No newline at end of file diff --git a/force-app/main/default/classes/CodeMetrics.cls-meta.xml b/force-app/main/default/classes/CodeMetrics.cls-meta.xml index 6dc8b22..f928c8e 100644 --- a/force-app/main/default/classes/CodeMetrics.cls-meta.xml +++ b/force-app/main/default/classes/CodeMetrics.cls-meta.xml @@ -1,5 +1,5 @@ - 27.0 + 53.0 Active diff --git a/force-app/main/default/classes/ERDCreatorCtrl.cls b/force-app/main/default/classes/ERDCreatorCtrl.cls index 8508f05..bb968de 100644 --- a/force-app/main/default/classes/ERDCreatorCtrl.cls +++ b/force-app/main/default/classes/ERDCreatorCtrl.cls @@ -88,50 +88,4 @@ public with sharing class ERDCreatorCtrl { && !name.endsWith('Tag') && !name.endsWith('Share') ; } - - - // TEST METHODS - - static testmethod void testUIIsPopulatedOnConstructor() { - // Setup - Test.setCurrentPageReference(Page.erdCreator); - - // Execute - ERDCreatorCtrl ctrl = new ERDCreatorCtrl(); - - // Verify - System.assertNotEquals(0, ctrl.accessibleSObjects.size()); - System.assertNotEquals(null, ctrl.getPermSets()); - System.assertNotEquals(0, ctrl.getProfiles().size()); - System.assertEquals(null, ctrl.erDiagram.permSet); - System.assertEquals('System Administrator', ctrl.erDiagram.profile); - System.assertEquals(0, ctrl.selectedSObjects.size()); - } - - - static testmethod void errorShownOnCreateWithNoSelectedObject() { - // Setup - Test.setCurrentPageReference(Page.erdCreator); - ERDCreatorCtrl pageCtrl = new ERDCreatorCtrl(); - - // Execute - pageCtrl.doCreateDiagram(); - - // Verify - System.assert(ApexPages.hasMessages()); - } - - - static testmethod void noErrorOnCreateWithSelectedObject() { - // Setup - Test.setCurrentPageReference(Page.erdCreator); - ERDCreatorCtrl pageCtrl = new ERDCreatorCtrl(); - - // Execute - pageCtrl.selectedSObjects.add(pageCtrl.accessibleSObjects.get(0)); - pageCtrl.doCreateDiagram(); - - // Verify - System.assert(!ApexPages.hasMessages()); - } } \ No newline at end of file diff --git a/force-app/main/default/classes/ERDCreatorCtrl.cls-meta.xml b/force-app/main/default/classes/ERDCreatorCtrl.cls-meta.xml index 307ce73..f928c8e 100644 --- a/force-app/main/default/classes/ERDCreatorCtrl.cls-meta.xml +++ b/force-app/main/default/classes/ERDCreatorCtrl.cls-meta.xml @@ -1,5 +1,5 @@ - 25.0 + 53.0 Active diff --git a/force-app/main/default/classes/ErdDiagramCreatorCtrl.cls b/force-app/main/default/classes/ErdDiagramCreatorCtrl.cls new file mode 100644 index 0000000..1af292f --- /dev/null +++ b/force-app/main/default/classes/ErdDiagramCreatorCtrl.cls @@ -0,0 +1,93 @@ +public with sharing class ErdDiagramCreatorCtrl { + + public PlantUMLERDiagram erDiagram { get; set; } + public SelectOption[] accessibleSObjects { get; set; } + public SelectOption[] selectedSObjects { get; set; } + + // CONSTRUCTOR + + public ErdDiagramCreatorCtrl() { + selectedSObjects = new List(); + accessibleSObjects = getAccessibleSObjects(); + + erDiagram = new PlantUMLERDiagram(); + erDiagram.profile = 'System Administrator'; + } + + // PUBLIC + + public List getProfiles() { + List profiles = new List(); + + for(Profile pr : [SELECT Name FROM Profile]) { + profiles.add(new SelectOption(pr.Name, pr.Name)); + } + + SelectOptionSorter.sort(profiles, SelectOptionSorter.FieldToSort.Label); + profiles.add(new SelectOption('NONE', ' - ')); + + return profiles; + } + + + public List getPermSets() { + List permSets = new List(); + + String profileName = (this.erDiagram.profile == 'NONE') ? null : this.erDiagram.profile; + for(PermissionSet ps : [SELECT Name, Label FROM PermissionSet WHERE Profile.Name = :profileName AND (NOT Name LIKE 'X00%')]) { + permSets.add(new SelectOption(ps.Name, ps.Name)); + } + + SelectOptionSorter.sort(permSets, SelectOptionSorter.FieldToSort.Label); + + return permSets; + } + + + public PageReference doCreateDiagram() { + + if(selectedSObjects.isEmpty()) { + ApexPages.Message msg = new ApexPages.Message(ApexPages.Severity.Info, 'Please select at least one sobject.'); + ApexPages.addMessage(msg); + } + else { + Set sobjectNames = new Set(); + for(SelectOption so : selectedSObjects) { + sobjectNames.add(so.getValue()); + } + + this.erDiagram.setObjects(sobjectNames); + } + return null; + } + + + // PRIVATE + + private List getAccessibleSObjects(){ + List accessibleSObjects = new List(); + + for(Schema.SObjectType type : Schema.getGlobalDescribe().values()) { + Schema.DescribeSObjectResult objectDescribe = type.getDescribe(); + + if(isAllowedObject(objectDescribe)) { + String name = objectDescribe.getName(); + String label = objectDescribe.getLabel(); + accessibleSObjects.add(new SelectOption(name, name + + ' - ' + label)); + } + } + SelectOptionSorter.sort(accessibleSObjects, SelectOptionSorter.FieldToSort.Label); + + return accessibleSObjects; + } + + + private Boolean isAllowedObject(Schema.DescribeSObjectResult objectDescribe) { + String name = objectDescribe.getName(); + return objectDescribe.isAccessible() + && !name.endsWith('History') + && !name.endsWith('Feed') + && !name.endsWith('Tag') + && !name.endsWith('Share') ; + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/ErdDiagramCreatorCtrl.cls-meta.xml b/force-app/main/default/classes/ErdDiagramCreatorCtrl.cls-meta.xml new file mode 100644 index 0000000..f928c8e --- /dev/null +++ b/force-app/main/default/classes/ErdDiagramCreatorCtrl.cls-meta.xml @@ -0,0 +1,5 @@ + + + 53.0 + Active + diff --git a/force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls b/force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls new file mode 100644 index 0000000..8561873 --- /dev/null +++ b/force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls @@ -0,0 +1,55 @@ +@IsTest +private class ErdDiagramCreatorCtrl_Test { + + @IsTest + private static void testUIIsPopulatedOnConstructor() { + + // Setup + Test.setCurrentPageReference(Page.erdCreator); + + + // Execute + ERDCreatorCtrl ctrl = new ERDCreatorCtrl(); + + + // Verify + System.assertNotEquals(0, ctrl.accessibleSObjects.size()); + System.assertNotEquals(null, ctrl.getPermSets()); + System.assertNotEquals(0, ctrl.getProfiles().size()); + System.assertEquals(null, ctrl.erDiagram.permSet); + System.assertEquals('System Administrator', ctrl.erDiagram.profile); + System.assertEquals(0, ctrl.selectedSObjects.size()); + } + + + @IsTest + private static void errorShownOnCreateWithNoSelectedObject() { + // Setup + Test.setCurrentPageReference(Page.erdCreator); + ERDCreatorCtrl pageCtrl = new ERDCreatorCtrl(); + + // Execute + pageCtrl.doCreateDiagram(); + + // Verify + System.assert(ApexPages.hasMessages()); + } + + + @IsTest + private static void noErrorOnCreateWithSelectedObject() { + + // Setup + Test.setCurrentPageReference(Page.erdCreator); + ERDCreatorCtrl pageCtrl = new ERDCreatorCtrl(); + + + // Execute + pageCtrl.selectedSObjects.add(pageCtrl.accessibleSObjects.get(0)); + pageCtrl.doCreateDiagram(); + + + // Verify + System.assert(!ApexPages.hasMessages()); + } +} diff --git a/force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls-meta.xml b/force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls-meta.xml new file mode 100644 index 0000000..f928c8e --- /dev/null +++ b/force-app/main/default/classes/ErdDiagramCreatorCtrl_Test.cls-meta.xml @@ -0,0 +1,5 @@ + + + 53.0 + Active + diff --git a/force-app/main/default/classes/PlantUMLClassDiagram.cls-meta.xml b/force-app/main/default/classes/PlantUMLClassDiagram.cls-meta.xml index 6dc8b22..f928c8e 100644 --- a/force-app/main/default/classes/PlantUMLClassDiagram.cls-meta.xml +++ b/force-app/main/default/classes/PlantUMLClassDiagram.cls-meta.xml @@ -1,5 +1,5 @@ - 27.0 + 53.0 Active diff --git a/force-app/main/default/classes/PlantUMLERDiagram.cls-meta.xml b/force-app/main/default/classes/PlantUMLERDiagram.cls-meta.xml index 6dc8b22..f928c8e 100644 --- a/force-app/main/default/classes/PlantUMLERDiagram.cls-meta.xml +++ b/force-app/main/default/classes/PlantUMLERDiagram.cls-meta.xml @@ -1,5 +1,5 @@ - 27.0 + 53.0 Active diff --git a/force-app/main/default/contentassets/plantuml.asset b/force-app/main/default/contentassets/plantuml.asset deleted file mode 100644 index 56ce991318f143c80c7f4afd1177c262540b502b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33343 zcmZ^KcR1B=`2YKu+1Yz!%ic<;kd?hxL>VEHm3fj#R#dVgiLxUr>l_qiMOI`SQ8q^z z2M53BeSE&ZKfc%Xb-7&UJkN9A_v?P$<9Xggyor$x4J8L91VJ={xsM2>_YlJ}>G z!HDGg+fNWg44GWD&^|ss1|$FLN5}8#{~Gzfz8)SP{$Eo#94<04@_)_7#>SqE3=9nX zuc`n4_0OL_78Vw>v$J62@87?zt*s|hK|w*_Lv3yC`ue)JxA&7LPxA8ePNtTZmoqXl z+S}VtzJk9yJ3HWSPft%{V`FD$=j7z%j~_qo-McqDJe-h_u)n|W>+AdG&6}GyZ|3CW zOixc|o<2w7_J##If82P^&CLzS{*jP`5X2-zM8ps|6QoED@ez@bkwDZG5IY5e*v`(5 zf`Wn;5>Zl8q9iAxha`#QOiWI3Lu6De#AMIulod!BN$k_;iAWh48P_WmNp8IQ`AU`? zVmxS2(I)5MC*xxR^rR-WO{=jHt> zEYcz<_=1bOgzpTIiro!H#vC3VMo3=r6oo%C%N=v}B3?chN})8bGfTpUe?hQq0?dre z_q85TY%J_Tc+!&BL{lslZK7_$nFlrBIp}HlpN#DvH7ohwmpl9?fxl+V^Q*h>qUyoX zf$u)v;PcT6e*fs`(ChjBAwIm)b>9{b{~Y0u_Kyyaj_}e!Lpl%?nXadG$s%N8b*e|7 zyN?4oJ7a$ITXqwf_0HLXKkMlO1G>k*?oVp+PM7lnYnT(V!u$;^_9V-&;>l^C`{X&u{NWP5DtZ9kKjTzj{1Heg%nu&Sh*Ks?~1?AHGoSdrH

WKB-C1tZQKE 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 - - false - en_US - plantuml - - - VIEWER - - - - - 1 - plantuml.png - - - diff --git a/force-app/main/default/contentassets/plantuml1.asset b/force-app/main/default/contentassets/plantuml1.asset deleted file mode 100644 index 56ce991318f143c80c7f4afd1177c262540b502b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33343 zcmZ^KcR1B=`2YKu+1Yz!%ic<;kd?hxL>VEHm3fj#R#dVgiLxUr>l_qiMOI`SQ8q^z z2M53BeSE&ZKfc%Xb-7&UJkN9A_v?P$<9Xggyor$x4J8L91VJ={xsM2>_YlJ}>G z!HDGg+fNWg44GWD&^|ss1|$FLN5}8#{~Gzfz8)SP{$Eo#94<04@_)_7#>SqE3=9nX zuc`n4_0OL_78Vw>v$J62@87?zt*s|hK|w*_Lv3yC`ue)JxA&7LPxA8ePNtTZmoqXl z+S}VtzJk9yJ3HWSPft%{V`FD$=j7z%j~_qo-McqDJe-h_u)n|W>+AdG&6}GyZ|3CW zOixc|o<2w7_J##If82P^&CLzS{*jP`5X2-zM8ps|6QoED@ez@bkwDZG5IY5e*v`(5 zf`Wn;5>Zl8q9iAxha`#QOiWI3Lu6De#AMIulod!BN$k_;iAWh48P_WmNp8IQ`AU`? zVmxS2(I)5MC*xxR^rR-WO{=jHt> zEYcz<_=1bOgzpTIiro!H#vC3VMo3=r6oo%C%N=v}B3?chN})8bGfTpUe?hQq0?dre z_q85TY%J_Tc+!&BL{lslZK7_$nFlrBIp}HlpN#DvH7ohwmpl9?fxl+V^Q*h>qUyoX zf$u)v;PcT6e*fs`(ChjBAwIm)b>9{b{~Y0u_Kyyaj_}e!Lpl%?nXadG$s%N8b*e|7 zyN?4oJ7a$ITXqwf_0HLXKkMlO1G>k*?oVp+PM7lnYnT(V!u$;^_9V-&;>l^C`{X&u{NWP5DtZ9kKjTzj{1Heg%nu&Sh*Ks?~1?AHGoSdrH

WKB-C1tZQKE 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 - - false - en_US - plantuml1 - - - VIEWER - - - - - 1 - plantuml.png - - - diff --git a/force-app/main/default/flexipages/PlantUML_UtilityBar.flexipage-meta.xml b/force-app/main/default/flexipages/PlantUML_UtilityBar.flexipage-meta.xml deleted file mode 100644 index 45f7bdd..0000000 --- a/force-app/main/default/flexipages/PlantUML_UtilityBar.flexipage-meta.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - utilityItems - Region - - - backgroundComponents - Background - - PlantUML UtilityBar - - UtilityBar - diff --git a/force-app/main/default/flexipages/Plant_UML_UtilityBar.flexipage-meta.xml b/force-app/main/default/flexipages/Plant_UML_UtilityBar.flexipage-meta.xml deleted file mode 100644 index d65fcb7..0000000 --- a/force-app/main/default/flexipages/Plant_UML_UtilityBar.flexipage-meta.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - utilityItems - Region - - - backgroundComponents - Background - - Plant UML UtilityBar - - UtilityBar - diff --git a/force-app/main/default/pages/classDiagramCreator.page-meta.xml b/force-app/main/default/pages/classDiagramCreator.page-meta.xml index 3c99b87..2e414a4 100644 --- a/force-app/main/default/pages/classDiagramCreator.page-meta.xml +++ b/force-app/main/default/pages/classDiagramCreator.page-meta.xml @@ -1,6 +1,6 @@ - 25.0 + 53.0 false false diff --git a/force-app/main/default/pages/erdCreator.page-meta.xml b/force-app/main/default/pages/erdCreator.page-meta.xml index 9dee491..637a877 100644 --- a/force-app/main/default/pages/erdCreator.page-meta.xml +++ b/force-app/main/default/pages/erdCreator.page-meta.xml @@ -1,6 +1,6 @@ - 25.0 + 53.0 false false diff --git a/scripts/config.sh b/scripts/config.sh index 2bb5e25..0319b67 100644 --- a/scripts/config.sh +++ b/scripts/config.sh @@ -1,5 +1,3 @@ #!/bin/bash DEV_HUB_ALIAS="DevHubPrivate" SCRATCH_ORG_ALIAS="salesforce-plantuml_DEV" -PACKAGENAME="salesforce-plantuml" -PACKAGING_ORG_ALIAS="salesforce-plantuml_PCK" diff --git a/scripts/createScratchOrg.sh b/scripts/createScratchOrg.sh index 0ca534b..6f2ef70 100755 --- a/scripts/createScratchOrg.sh +++ b/scripts/createScratchOrg.sh @@ -26,4 +26,4 @@ echo "Make sure Org user is english" sfdx force:data:record:update -s User -w "Name='User User'" -v "Languagelocalekey=en_US" echo "Running apex tests" -execute sfdx force:apex:test:run -l RunLocalTests -w 30 \ No newline at end of file +execute sfdx force:apex:test:run -l RunLocalTests --synchronous \ No newline at end of file