From 58abeeb9bd316ea0ca6beed27d9fad37abcf4f7f Mon Sep 17 00:00:00 2001 From: Mikael Karlsson <43226266+Micke-K@users.noreply.github.com> Date: Sat, 4 Sep 2021 10:19:42 +1000 Subject: [PATCH] 3.2.1 --- .gitignore | 5 +- Core.psm1 | 8 +- Documentation.md | 4 +- Documentation/ObjectInfo/#Applications.json | 81 ++++++ .../#microsoft.graph.deviceHealthScript.json | 41 +++ Documentation/Strings-cs.json | Bin 2397798 -> 2450678 bytes Documentation/Strings-de.json | Bin 2542504 -> 2597102 bytes Documentation/Strings-en.json | Bin 2277408 -> 2330386 bytes Documentation/Strings-es.json | Bin 2555838 -> 2610312 bytes Documentation/Strings-fr.json | Bin 2559548 -> 2614588 bytes Documentation/Strings-hu.json | Bin 2518992 -> 2573718 bytes Documentation/Strings-it.json | Bin 2555248 -> 2609640 bytes Documentation/Strings-ja.json | Bin 1900252 -> 1946942 bytes Documentation/Strings-ko.json | Bin 1868998 -> 1915028 bytes Documentation/Strings-nl.json | Bin 2489522 -> 2542648 bytes Documentation/Strings-pl.json | Bin 2514462 -> 2568482 bytes Documentation/Strings-pt.json | Bin 2277408 -> 2330386 bytes Documentation/Strings-ru.json | Bin 2470928 -> 2525056 bytes Documentation/Strings-sv.json | Bin 2345888 -> 2397642 bytes Documentation/Strings-tr.json | Bin 2393612 -> 2446242 bytes Documentation/Strings-zh-chs.json | Bin 2277408 -> 2330386 bytes Documentation/Strings-zh-cht.json | Bin 2277408 -> 2330386 bytes Documentation/Strings-zh-hans.json | Bin 1698856 -> 1742960 bytes Documentation/Strings-zh-hant.json | Bin 1717592 -> 1762028 bytes Documentation/Strings-zh.json | Bin 2277408 -> 2330386 bytes Extensions/Compare.psm1 | 17 +- Extensions/Documentation.psm1 | 101 +++++-- Extensions/DocumentationCustom.psm1 | 27 +- Extensions/DocumentationWord.psm1 | 63 ++++- Extensions/EndpointManager.psm1 | 162 ++++++++---- Extensions/IntuneAssignments.psm1 | 249 ++++++++++++++++++ Extensions/IntuneTools.psm1 | 98 ++++--- README.md | 15 +- ReleaseNotes.md | 36 +++ Xaml/EditScriptDialog.xaml | 27 ++ ...EndpointManagerToolsIntuneAssignments.xaml | 80 ++++++ Xaml/ObjectDetails.xaml | 4 +- 37 files changed, 882 insertions(+), 136 deletions(-) create mode 100644 Documentation/ObjectInfo/#microsoft.graph.deviceHealthScript.json create mode 100644 Extensions/IntuneAssignments.psm1 create mode 100644 Xaml/EditScriptDialog.xaml create mode 100644 Xaml/EndpointManagerToolsIntuneAssignments.xaml diff --git a/.gitignore b/.gitignore index 9348176..2ef597a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,7 @@ .vs/ .vscode/ .git/ -/CloudAPIPowerShellManagement.Log -/CloudAPIPowerShellManagement.Lo_ -/Documentation/Get-LanguageStrings.ps1 +/*.Log +/*.Lo_ /*.csv diff --git a/Core.psm1 b/Core.psm1 index 1ec03d0..56d8e1d 100644 --- a/Core.psm1 +++ b/Core.psm1 @@ -12,7 +12,7 @@ This module handles the WPF UI function Get-ModuleVersion { - '3.1.5' + '3.1.6' } function Start-CoreApp @@ -484,7 +484,7 @@ function Show-UpdatesDialog $content = Invoke-RestMethod "https://api.github.com/repos/Micke-K/IntuneManagement/contents/ReleaseNotes.md" if($content) { - $txt = [System.Text.Encoding]::ASCII.GetString(([System.Convert]::FromBase64String($content.content))) + $txt = [System.Text.Encoding]::UTF8.GetString(([System.Convert]::FromBase64String($content.content))) Set-XamlProperty $script:dlgUpdates "txtReleaseNotes" "Text" $txt if($content.sha -ne $curHash.Hash) @@ -1528,8 +1528,8 @@ function Get-JWTtoken while ($payload.Length % 4) { $payload += "=" } # Add padding to match required length return (New-Object PSObject -Property @{ - Header=(([System.Text.Encoding]::ASCII.GetString(([System.Convert]::FromBase64String($header)))) | ConvertFrom-Json) - Payload=(([System.Text.Encoding]::ASCII.GetString(([System.Convert]::FromBase64String($payload)))) | ConvertFrom-Json) + Header=(([System.Text.Encoding]::UTF8.GetString(([System.Convert]::FromBase64String($header)))) | ConvertFrom-Json) + Payload=(([System.Text.Encoding]::UTF8.GetString(([System.Convert]::FromBase64String($payload)))) | ConvertFrom-Json) }) } #endregion diff --git a/Documentation.md b/Documentation.md index df14af9..16577bb 100644 --- a/Documentation.md +++ b/Documentation.md @@ -109,7 +109,7 @@ These files will have to be re-generated when new functionality is released in I **Scripts for Generated Files** -The scripts that automatically generates language files, translation files, object info etc. are not included in the release. These scripts are currently not in a state that they can be released. The best would be if Microsoft released all the required information in Graph. A deep dive into graph suggests that it might be possible in the future since some information about the generated files are there but with some properties missing or missing. The information can't be accessed unless an API is called that gets the definition for all the profiles at the same time. +The scripts that automatically generates language files, translation files, object info etc. are not included in the release. These scripts are currently not in a state that they can be released. The best would be if Microsoft released all the required information in Graph. A deep dive into graph suggests that it might be possible in the future since some information about the generated files are there but with some properties missing or language text missing. The information can't be accessed unless an API is called that gets the definition for all the profiles at the same time (the file is over 100MB). ## Extending The Documentation @@ -130,7 +130,7 @@ The priority order for object documentation is: **Documentation Provider** -The documentation provider takes care of the collection information about the object. The `DocumentationCustom.psm1`file is an example of this. This file has examples of custom translation of properties for json files and examples of custom translation of objects via a PowerShell functions. +The documentation provider takes care of collecting all the information about the object. The `DocumentationCustom.psm1`file is an example of this. This file has examples of custom translation of properties for json files and examples of custom translation of objects via a PowerShell functions. Documentation providers has a Priority property. This defines in what order the providers will be triggered. The provider with the lowest priority number will be executed first. The included custom documentation provider has a priority number of 1000. The information gathering of the provider can be overridden by creating a custom documentation provider with a lower priority number. diff --git a/Documentation/ObjectInfo/#Applications.json b/Documentation/ObjectInfo/#Applications.json index 0a1c1b4..cad3288 100644 --- a/Documentation/ObjectInfo/#Applications.json +++ b/Documentation/ObjectInfo/#Applications.json @@ -351,6 +351,22 @@ ] } }, + { + "nameResourceKey": "OfficeSuiteAppsTab.xmlConfigurationLabel", + "descriptionResourceKey": "", + "entityKey": "MSAppsConfigXml", + "dataType": 20, + "booleanActions": 0, + "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", + "Condition": { + "Expressions": [ + { + "property": "@OData.Type", + "value": "#microsoft.graph.officeSuiteApp" + } + ] + } + }, { "nameResourceKey": "OfficeSuiteAppsTab.appsToBeInstalledLabel", "descriptionResourceKey": "OfficeSuiteAppsTab.selectOfficeAppsTooltip", @@ -393,7 +409,12 @@ } ], "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -419,7 +440,12 @@ } ], "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -433,7 +459,12 @@ "dataType": 8, "booleanActions": 0, "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -459,7 +490,12 @@ } ], "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -497,7 +533,12 @@ } ], "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -513,7 +554,12 @@ "booleanActions": 109, "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -529,7 +575,12 @@ "booleanActions": 0, "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -543,7 +594,12 @@ "dataType": 8, "booleanActions": 0, "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -559,7 +615,12 @@ "booleanActions": 109, "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -575,7 +636,12 @@ "booleanActions": 109, "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -591,7 +657,12 @@ "booleanActions": 109, "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -607,7 +678,12 @@ "booleanActions": 0, "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" @@ -660,7 +736,12 @@ "category": "OfficeSuiteAppsTab.appSuiteConfigurationLabel", "unconfiguredValue": "os-default", "Condition": { + "type": "and", "Expressions": [ + { + "property": "MSAppsConfigXml", + "operator": "null" + }, { "property": "@OData.Type", "value": "#microsoft.graph.officeSuiteApp" diff --git a/Documentation/ObjectInfo/#microsoft.graph.deviceHealthScript.json b/Documentation/ObjectInfo/#microsoft.graph.deviceHealthScript.json new file mode 100644 index 0000000..3333713 --- /dev/null +++ b/Documentation/ObjectInfo/#microsoft.graph.deviceHealthScript.json @@ -0,0 +1,41 @@ +[ + { + "nameResourceKey": "ProactiveRemediations.Create.Settings.DetectionScriptMultiLineTextBox.label", + "descriptionResourceKey": "", + "entityKey": "detectionScriptAdded", + "dataType": 0, + "booleanActions": 109, + "category": "WindowsManagement.scriptsettingsTabHeader" + }, + { + "nameResourceKey": "ProactiveRemediations.Create.Settings.RemediationScriptMultiLineTextBox.label", + "descriptionResourceKey": "", + "entityKey": "remediationScriptAdded", + "dataType": 0, + "booleanActions": 109, + "category": "WindowsManagement.scriptsettingsTabHeader" + }, + { + "nameResourceKey": "ProactiveRemediations.Create.Settings.LoggedOnCredentialsOptionPicker.label", + "descriptionResourceKey": "", + "entityKey": "useLoggedOnCredentials", + "dataType": 0, + "booleanActions": 109 + }, + { + "nameResourceKey": "ProactiveRemediations.Create.Settings.EnforceScriptSignatureCheckOptionPicker.label", + "descriptionResourceKey": "", + "entityKey": "enforceSignatureCheck", + "dataType": 0, + "booleanActions": 109 + + }, + { + "nameResourceKey": "ProactiveRemediations.Create.Settings.RunIn64BitPSOptionPicker.label", + "descriptionResourceKey": "", + "entityKey": "runAs32Bit", + "dataType": 0, + "booleanActions": 110 + + } +] \ No newline at end of file diff --git a/Documentation/Strings-cs.json b/Documentation/Strings-cs.json index 0a5703c85476c582382841a59ff9848fcead2c29..a16a06d5ea2d4b3add2b9d4f3cb19e141f6b331c 100644 GIT binary patch delta 11443 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 delta 1852 zcmZuye{56N6@Jfte!g}b=jHiF94E0~Yy&BaAdL`>N=jY=tfr-DMzc~XmKjPi$RP0& z(=kMu*JW`BEKPW=KZGjkM%&6#M$={5ZL2MHw`!u>WL$AUZ|^UnRwIrrRi?JReTgz960yHd5h74G69$Cc!X63>ie z_1hK1Jd%XMD^|(+sR6D&X?p<4hgb-cdrc8z+c%ZD>xU27DnCOZj1(jCKs#9>!S`BC zJM`n?X0*(DBxs#6O*ZW55dM7BI*#~*VjSJ?hUK|; zFgEnFK{50^dbmYOExJs6(Pe&lh9CX4`JgpD#~i8ooSDz(q>rCZ8&q=HId_m_1MXJ#n_$hXe2W z6=+Q^sj^(mU9@mJg!k};$NV)o_@zdj7}LM9GGq2`8GQz;=L`Rq`#jj`vkvhYm-QY6 z*$-__e&>MI^gi-Wcq8bIvIO*3X$_v}k=#iBhH_qrvei%)+%m2W)ZH@`lcx$YvL81t z<(ZA_@eU+Mt0gpz2dE#M6$%O~?M^=UUDjno?1i9%ljA!bMoeYAdzvkZ$egWJki5ep zW7F--!Sg?0iV6A*WBjR8?52ntf46j{*O2oIC#-8Bzs8(=;xvm^@ohh6hb-89j;%+F zzsiq*Xm{fJFNkC9FWK@Y{_fkYV5Rlzj1Xe zjQJ0OPO~OFiuc}()S+kP5+_17SG|!`Bx5Y)H&d76xy}lYWjA%e2%cT41hMudWrZ~^ zY!#`!(CDvoq1RlkV*Ona6)hVSs?Y0QKe9emF}pMkFI{1GrMED-axXQ~SE#Y~34=lc z+yCgU#l>}AHNDfK7fb2*UC<6CtkkEn5rt4qPzf%Ao8TdM2{k+$@nu#Z)9YKFYU=gz zrrz3P_o6Ue>&Ha2QbYU?b}7{|T}$v2>In6O2Hr9qxVQxQ70ii4t%?_gOSDfW*EhH! z%~a?}R$JXDC{`7@T%Zj%&IVLy=K>F+r>M)E3p8`mg=Ua^#Z9$6?xBj01|w~jVM?kW z)lXJ>@W%ag#4nCe?Fati_nPTg#dD+14Vat_x}pC#=;cRW2p;}E1}@p%X;@_xuCQk6 zk5cO!6W^ozpiHQ9kPU79^zpw5jwY_g;Ktk%o5x3wMj;dq|WUVN*u9Vgr9j%iV?5|m|)ZDrj} zow@nxWsN5zXsW2DJM0SW=ZQ^?59hdE7rL>C!bRE5PgI2S2`DSw5>6bkhm5XEn~{Hp wW@_IGU!zOsL!SfL@$eYml?qGuV%l$smi|N8WTI5JGC7q!ALiNfk=4ik116htw*UYD diff --git a/Documentation/Strings-de.json b/Documentation/Strings-de.json index 7c7846058c26b57c1827110c15a1a185d265eda3..7490b7de86d1914ddb64c846f856ac31f796b0ae 100644 GIT binary patch delta 12263 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 delta 2399 zcma)7e{56N751~ApYMBqd3kYO9LIJX$3H^IAT<#hAwro0h=w!`8A=C@vdGW?rBDbE zeh37kQ&+dB%M6b4Rlul$4H#QPAi$-AhOkazLZ~<^Wmz>?HdR1T6nXqwve9-2*rutP zrv34~_wK#to_p?j-}%nyg?+*i>=Ak&%|xu&#!$Ol(4jAsMQooYYiMsQ7U8`oC}`VC z3qGYlMenPEhA;aK3EeE@z}vQPX>!#pKgw6?412qDHTlM5J=rr$!=#X?BJx+u9P~aL zo{x5mMeoyQsTO>>SlWOHgsFX(=NyP)c%@bBo3W$HjLdagps&5NM@UAd8W{M2Rl>tE zvxc^tLhR`Vf3ihJ$KoO#OGEiC3{*bFpov@`VYS9P>j zIu&RKR0qo6@=KP@ru8`P2^V7EnF%TqZ8i}d@8vfjb;)cXv1Wq7{mX0)Cz_U94a7cR z6=<)OooM`?&CP$Y)wWINj|Odb)}gZ^m!WqkPl8?-VAyq6@S@y7bBP~i*CTa}?zDCe zJF*6j&wS)KZI@7bhB>X1O^v2mShGhfLRo=Nf$K`HA4a3SJefGCV4%xhM>)oJU6GKk z6&z^&oH-GB-KL^vSfQ#P7F-T z6Vd&MP0CtlT10-9(Q~nB35u_?JpSn;wovB7l3b}J(-#>o2dM^P4}(&7U!iu|B~LXY zG0&r8dz`pie@|AB)&&WvxYgi3uUu+I+AlLM7RlA-r1Z>8M4k;9ILBBuj|SyXHXo~y zk6Lj$z-FU2LUE-h5GVQ<>KeQ*ubQlP>ljXDxu8EMR~(K_mrHr?BDrckj$9!wja`!s z7@uWVP)&&G6!ZTiq4zYD+x1?ZBklZ<9ElEvI0Io*WRuP6H#+c$wN=BT|@mZ z6%FZa8jD8)c7jUC;*o$hb|2~UM2~2Gb|YfP^(g!+%nYNhY%Q+4vbpZkeN|7g!1V?C z4l|$AtZz6W%)_5NK@ZY(7TWq7D*ec6IzYEh@Z({2Kok79@|ID6dOb&hIVYzox%QwJ zqd5f(EnRjM(HBGq>JBIhPA@I-A@ea+l-?22WU4e`Q;R8p{r=n{8-38Q8dIJ#@*aEl z*&okLqPg{^Rmd4K=b~XJDadF%U&8KdUIQal0+o|5*ManWZ6>J{E5*L%91^G%b~hS7 z%=cntqsI|l@gCT-V*i@ zyo5r6k5I&0!v2x1c-u`m==9KGvCTFoX6$7eh70qfNN={4@Ro!A)29%dW}l682^0Ct zFBXqgT34Ia62UL*)bbD;H|uEbb!qUOA`0Js$8e%^++4LYregRFv&dt+ik%`RO(!$= z-$flGuUYG!3Tor-Vkc)Pe)(rO`I67s{o7y^4HunKvig07%(ntAF4hEU4YZD%Nzy)- z9Y{^Fi%5){E1!73A&9u~iL9f#(93w!3xQ2_|MeXGNWhC7?*`m_TPmQN(d7y_aQlJ% zNi0r`^{6xPZyThJ1&rjQMa|G_Z6tXIDU6Q}24XVqpZ$+3IPvi!D&vXw0xXz} zEMAyVpp)S}%Tk3$^{l;PwDbmyUTpnpC_zoF>eZL)->vH%J2 z1q*3;GC=L=sNcXxgTb}v-@_dIMkv@-irZTp{}i6KcPv!RVd`F2pATlRVYXYtzMZ;+ zYYo9kc=%1L3(6fg3G4vLQtF%}qG4T#_#P{kcywOyZ-Z!U4=Q|bap>XPuivS5$m2wV z;#Tgst;LV9H zFK!+V*Q3Wu1xPKD$d*Hl>x_wv4;%^CTf3LIRg@nme^-0Lbtt)%r6Zl?RZvpyaNt}* zP!T&8{yrjxBZTzX{A$FmTa170(h&(s3QzThf7O7djG4N94mDfv2}y~c{3^^(epOPn F{~wA2LJt4{ diff --git a/Documentation/Strings-en.json b/Documentation/Strings-en.json index 1866929d5564bd075be937ff780e1ff103be4ae0..2f1181085cebd5fbe96ed3d84c451e486b597d62 100644 GIT binary patch delta 13499 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 delta 4047 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 bP@;yuFX-#udB2+BX)>anJWuF0{15*xdN-jq diff --git a/Documentation/Strings-es.json b/Documentation/Strings-es.json index c2fb9eed7d54803194356b2e2c6fa13a0e1a45d2..02a874d31c6eb5e533dab3690bfc6b8d1a84017a 100644 GIT binary patch delta 11316 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 diff --git a/Documentation/Strings-fr.json b/Documentation/Strings-fr.json index 083b6092d561a2d89f42bb221dbf9c71a22cedff..d5738c7f33a3ca826d98efd67ca31eeb5cd4f2b3 100644 GIT binary patch delta 10812 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 aHX>}hF@OxhX54Q#jpZPDlLeba& delta 1578 zcmZ9MeQXnD9LIa@?Rs}Rj_c7L-O+WocI{pwWK5ZJKvTAf11Bzmkr2eGbj z6~Pi1Tj5||vLF;C0tV-Bz(Zh}4JN(-&S4adAzBdM78un(fcOXauth`sO(qMuM3BsMr5D9BZ5+~8H;?Y`#&f8-ZBuY=sZY*$ z*|OTQ93QN4WtqXMW^_HCB_VM-UqQmqc*M_)*RcMlyc#pIskF0YEQi!eM(<5mUShD- zrK?EK^07Gj0#j~FSk9P^nWlNRYBtmX;V_I>Shlz83C|1+UJk05(`@kO-6LxeZpl+o z8x=+TSeCDKTE}>Mm$kjhAiCDh^=|2iGKdcaHMDoQL=;T4dLV_Eh^cgidZk_60@^xU z60S9>PV@5HP81(>g^;eW&O`A!);aodeR(#Wu8YCGGTI^b?1S}S85L&C|iNFB~*!T!eUv6@L%QZvaWe~iJ`7&i&uvdKKs z_iR#3zGoxyJ+|~q^z3%9vB<>?61m9jnT-n`dx5RmQi20KzivlFp*0&2KICOF{5L0K znr3$rx7U99NhEh>mZ82ZQ$dPxvxt{SZiFXGB92~ARrKHH6vWR4tB^kB*AP9ID?vV< zuaWC3?7C(~a(Jx&oYztRmc0oB8|^$vykS43V6ZkrK6%N0@OQ|SnuPT$Gj%f9&lgoe zJ)cuV!ZzWg@IbcY7@<`rX|Le5lDJP;VMXLQn(L#0Fw=^zZaC0uVo z{Sl?4vnhwg>}Z}y27VR>89EO)a*pT?L&2(TqC|YZ3W-9*yR&(6R1t?(ldhO}!5X`| zRitE6B+3|ab*rp)qhY+a49PRJT;fl?97cu|Mp9(7n6-Q?v6d_S(?>cbk+sS$D>=MD ziJV}bhGUs43-UfzM(Q!Y6ZQR>PG$*?ZIE2J_H95z@+r56G0@S=`;i=Qc%au!P!OK( z;IOe#2s01i*t0$t76nxe14B8AEoCuqu~wLXo;O9eZJc3XL!(fMgwFGhmn_RIOD)Zo zC6-o;VQH~6;>xOEHp)Vpj50y5fHIZlO_ezEFj%j8JC8_3vDzsPib@$raZ+3qjWV9% zCbd(tN>3pCN=~gZFJ4x$ThO-Y_9+oT6RLF2}e`rV~wJmqgR9mB^8H<;V zbK&({Ru#(gEEVYqj=Ibp8;hYwRS8CspF{P%u?t|F&()ClBG*aY`7F2L_{iUGC>2Y0 zM0hBlXsp@YsbJw6p8~$sr=snuuYjc1`Uad2Brje<)s|?I!-y7&D(T+gv#vvOwIIRM z;^(oi+9Qs35wD~^m1bOS^xR=WFjx;ux@G@cbCHhcmcXd+8Awm`-Jh4kzg^s)7D}DJ z?7tH#L={76Lng^O|NKIv&hsL9X1l+fVG`KC*_(}NKhP!YX{Q(WR_i=D*Y5Ys!mdWH zbhKvZdw+B@_ARuFF=J8QA!AWML{k-A|LDrVs&!cK3$KFRO<(rDBa-MJfdv^PdNVMa zVJ6|qbZN$@Q}%S|GTLqi$ns-iea&mH#rl+|#ZPJr8tt?_Eg~})&_Df4aL@4Dd8?idSj06 zL0yDO2a5MK#(Zi+ZQkyyqqjt<%xHAd@M4pdIyRa_wY6zOW6VmG$wnVlF0qtQEGs;N zqLrz<8hKS=U)iZu&P=DS8g5-sc7b zTb&fysz`KfL_nsFk}N05f4B0&Vy;>@fm7xC0wn2!K5FeuQq6_sr)qU>ZY1%g-n@Q2l)ScH=Q2kT9hs2Em$oGMfr_-Cf zlInffriLtb^8{|GZkDb>r%>Z(J_nU>4spm5U9E1Ou2NT{E7dK-PfK)X@mr~Gflk5C zwYsl$Y|b3rLi}3`N$2a%Q}QXli$3=2-Sq54my@EGGmEJ+-I7fagGo@^A5W*w6Il}N zpAvM_In}S+q+r3sa_qS0vG81Nxg303(DxVGHd{!g4Y$Y=Nw1lm)chsKr?Qy~G_fH# zL_3eUOvL3Bw3t%qbR-G)UgD2A1M)d>c}_sXqc+@Sl!gTP2!=d zO02h#PKWZ^D~WltFlQM40xQ-1 zT*t;dsLRDq3hsfev0VFRFcmzgj9}-Ekg_Vv&K1$NF1N#YqYZrYkU_K28N1tm(QKye zU2Z!~E=-mwXN*mtH(H_O*mUz4YN!#$QfDRS{DFloEHoCXRrSTxH6sW^-<(Zf?=x;_ zx?~dQg}oUzI#nx5w0F1OnUt`ug!H+Zk73?G*lsnoJ-}^mj7fbqykRM4r;a0>xck_X zwTnm=IV-(B!yr@ac9>4it)?=Z&I}7b%!yQdHykJOGyWm!@MkL|SKCDzI2~rP^B#kf zyM=Zg@VXp}Ic6xO&^6QKm%3`*yiJ#q)2QlWi$qngdjvZ6X^NBVeh1>g6qi5){xysk z;pPOIcqqf!^o<0AdC2KZVx~R^3zg$4&eDlGK8;%1%>wN?#JOo=YqFOjdrX31mac{_ zRoWc1Z$QvWMVBG_j7U;Gj$A}B#lTaSIZLK4HC3k5BgIkpelS!~#)at6kYpDPHJVmX zUC01?WoK$AOcE{S*qOQFJS?43prroT(UeatR@z!>bkmVr{63P$x%gz}z|7!gX+Bm% z!DkE(1MEgkF{g4hs((Tzbxu{F*b2Q&%20#kVIIZ|XHNIL3K;4v-4Z%`Yle&R=D3}d zoiExf=b_PA7y=ihLmR{Qu>5m|i0VsNo^~80xr^RYS^CUPQt2AjAxtt<+p2y6I{w zEWvpskk5w9rPddXHY!=n%~p5rTi+P7QRJj?wc7POPkU$LDw?+_B6aRE?x6PHOR}W^ zVwdag(v8{WP=56IdOS{hqk7rVTZ4HYZ7zA z1-O-^(9%*m`?VnvH?-w+gVYHr4g(gVRWF4`GT|z;Wem%8Mb!AR-bE{S>4oH3x+>ht zXgF{gGfjHNBHlz-k8?JPrN}%@ZB2G-i=1c*-$(KtzR7H*`Pxb}xDkGvb21&;+%7?z z3nanBB4`DoVEr#r)5v;FmX>EZ&bKr0)N02?lH<=XeuaE|8< zvvs9(cz%+DE{@hOz2W=Pd_zWXJT%^`dDuZn3$Y6RKTbCa8E6m{%*f874b~)y=59yG zY&{eXP-hD~q-3-{Ap$cvfg%DYnYx#vaqBogb^XLF(I=Y(J3YBlw9$GiB>nyx0s15@ z8%ROa6l0hK-AmcEbuF0y z64|0aN1l{?)cJ2Fp6qKh;i#*LxKAkl6a0Ubn;wIe!2 zna>n|?==Dr{V8j|8aT5~lh9lR!Tb4w^xI$}I3{ekPgZ%MSD@D0Vfn>J(`?C#hQ{V- z0bl}GOXFJn8Pqhz=rsUuQ0ZXKW4@}v4nPL_r9-}nhW^8Equ~$gLo{fKKApC-`rQ~i zFOl53ev4$aLk!z#LuxRfuJ+kUneNphaV@ZIUyScQSVVUlJJ{_)8uMAD=~furpm~0K z(Fv71;7J~j+n<8Z0(=(f9-#W8;t4JPHQi}&HsvE3 z*4dr1T9s*4TYl}OEx*&>X4G&IZTrlgMosToWE#5=z_Z0~w^D2>9Q3_6q$txDM8!8f zc{eF>2NB&+=IYeA)aj!4huINqr|PjuBkpg@Y_~)W2kdTYy$JJL@w9oh7NsDrA*3s$ z7cX&sbbR0f#<9INg~zeiD7E~Cjjp9Mji+=&UwjpJl#z* z{({JMZJ}H9-4&W;^hz~ElPal3e-nMv;dJ+GK0w9hS{*Sv-(XAbAF>K`MJy}1sNpbI z!OD?)du=(LnoBe6wC_da(dc$;I%B(`jM9q?R_bizowW5ugrvIX;L-Vhhd>we4I!$V z?+|I)L@t|RZ$TFoFF6Bh)kGV$7CI%0{ly?szSStwsE8zU=V{SpF-Q&JWS(YEN-6Bt zHlW(~w0*mFuKLr)G-{ul;UmR}C==Umh$X~{7@)9krtqlGP6{Fg=4Yo<`wEARI!+_B zm#i0MLyhiB+BPvZBUB^NFsC#3a$?ZaEQk%?L1AKV6Z1bXH|VpKRr~P!I{g; zB$-wY#Lz1?wRVqv#*c(3tfKbijbchfo>w=^i~lc_2#L#DZZb=m0o!^u5* z?B}h)w`0|pmnz1+F#|Pu0NzvOOI60#-&pGL2fB2ABm$At`K`WMdU_N<6eh@ zd?|gKJ^EjLF5wA64#sm1DBAeT|xmWO$H{qmya|V1Y;TE zdnE{P27W#%k2lUqqDLH_ATCD>f5fDnl7I~d?{ZHGhhEq zr>_6xB=uB*NVaJ{A8qluy|iI541Qk*s;HijbG?YYv3oFLcfnbki=r7wg_vfg<1zen zHQ&%1vj-xpiw79B;5)s8BF)IZb*n%jxNi>INMGx;8(Gy|Nrya=hsp%w zD2n{jiu`|fwm@}<^tcJ2KkgkWea?bl@n^6-U5}*!6Y4qt+=puJ=*cm0hNhOjNZji0b&a$r8!Sg3~o}rO5=50wQc<>{&r> zI-y7W{tn@x^$#!-#!OLHF=GFFA7{C>U1+^o_R`Xm`rF`Zk$xkzD!XfRSkxAxj%QE+ zADEh5$%X)jzR6pu`d6v21uIG|jn+{r01%o-n#Ar3VEn3}hpt{ib=0zv7rMbGH0UAQ zXv1J_JH?o0gMBcaTSB@?Jqo8>pV33j-}#CXE6dd|zb{N??~e`2xDn?~geA;`ku21( zP$gY@TJ(TXvrC3rfF7>a=^*z>hnI$*G0W8Up;>794U&8f1z;GAs>04ZtzTjACII~U zrNAE12Mu!1wM8;`-qZ~(>CC5DK}+u;7^eMO*hOU_em3mEWT%Q<@SWoWLEp9WelM2D z9m+o*FOs;bU8<7AQ;T4f49FF9aJxR0a;}C^tAqSACCI-Ts$ZLuMcI-;28Gf`^5m+y zTRqhEqE*nUv2r!{CmsV3G%fPk?}nBqGDb#3A;?nJ9NP9S0NKhU7-ie?OrK`BbLenm z8p1GmG@AVXB;dN2B=_}O?>g#o(9U?KO>J+sQq?ypcC~J6Hnso5&#RkPtko(OsDgGr zY!)AFdzFi~y{g~5pSm((=FV2mYc7JsjNZCaE!dPwr$#5+X_P_n8X5J48t?IdiOkID5U?1%^`+&j=BuA<$uZEwz8qT|M^pSUQmA>`*8RWZ~=B4SQ z6&rnVEfk>gn=$o5oV#&-^F)YL4$Um0gFEzDX6Ewq!Hm>UX`b0Z)ekt*X-$#uwi`C; zH|^b{u;@-#G?lZfd!Cfl;XjvD-wG>z@*MwTO3XkRi9pC4 zp+?Je;}9Av@bf&aAVP_0;v8y`vG)k~WZ!wizR5Q%K`EV150|SJ7}I*r{ryRov+c(3RyHU6aa&uOA#YD=7uzM2L3e#9Oy#JG?wYKidX(1WbGXooNLaY zV+`*f#yHiToBuz)h2wx*HuXDMFV=TEj# zRdK+|mD8?I9UdyV1++};W-!P6KdkArd2W{7a~9`f+}k{jJ1NybPe3W4f@+k+=d$@> zRQIidCd2}y*8%q!15~I7a$b3u59resin&p3Y>lRR>2wzO?#flDyN)kNMIHSlf?6F9 zuBCNs$WEP`B!TW-=y0XK?Zwz;YBxyg|ETMUYTM+P2AUam($K3`oAE5}0374gASsQGQGFU+ zA&ZZWEi%T(772St8goIz8<5K zn`*zXH?dO5m@ug5pE@)`v|7vX=uQQw^`{7yYv1BEpc>O=cjTIQ|NUA3V%EmE!|LlL zR8uY-?h{ZwHrYyBUJ-gKYj7rs-WN#PS3q^ew%DAs?k&EE9b&$=#l_dM8h2`=(OI*R^*fuQUOj;;ItD!!A4T%MqMJ{L9>{Q|E`We6jMd;)mS}mN zCB{X#_eM+5LE)`n0wRAFd5ts8ecG0q+&6>K*YoJZY21RwSUPy3`E=zZP|XMb;8DH5 z&#z~Fy~OS`{o9~I`@aI!Rx`ke8v123iqU$D;9;GaTKvbz^aZ-lz+5p4SLpNoz?bP6 zCdtxIF7;9YwhC!mO?@uwS!Ng_YH`te^CZaMbCUlLBl%08!YFn|^wROo=&pPtm^5B< zcJDPL7vhY}LYb){;M1j}Mh6vky2d8VO2as@B%@63<-sULUIk`fcD`r5j!hy@iL%y< z>wrQEc)>LrN3MprEY|i4P4)REKk8g|6Ue66uLS>}iD>uB`}v32W;OjpZit$u^$Lx^Dp7N9Im~MecdaIG z3(D}6ZU@yuza|yv&1Zx zr-$nD5R=eh!bMI(Kjeom7W1ZFFI3`gpu75aMHhWC%H)LZX3=3w_EQ)5gg%GU=HT5~J1RmTGv{EtNv;g3F>MT-~+j}ySHVLK0)P_#GCJr+)-b_U!@7g>iPariOP6NsmTc5^9zBI~epYF|Z>%DwVESmDDV_3- zrWz{QDi2WGYeaM;WGlo^+i5?boiyAm3Si09>^AOKpV>n5qqidbAiNyi{e+s^Xevtkx@d*2y zL=#P*A(_4?{7$-@_`|g?OajtRb-%{Tf8aM3Q4?Kqv?+U6VS{PoLG(_in}B>Sj>#6x zKQs=lA1e*}J(^;^BOV)t-buG7c4L3wK;X?(T$WO}?)L;m>gQ=}TY8{x68j3}9>eP0 zGg(+obYo{}!g2Gc@grd-bT%1=w}p2a$oZ8wY^lo=gQ7Uam}d1;Mxw=^X!f(VzoNTg5r`-FYmm49+qtwjnEgAg!(Pmx zYLmd=#MI8QV@)C5$OP_naEtn^t7#QFuf@Tz&8+AgiuT-qHS9~N?j#pgtKe&0CXk$0 z*NW-!YuALlztXAaKsLyq3cT?rKyJD5k>^aQg>>aLt!uwJYmxgTD5C=|)m@u>{HNQ_ELD#0i_I(CM#&vKoCZ-LVjcS&ciW0XVM42Ne}@8UB$>3XN!q`b8VS z=yF8Q2Vla0iPX5wkwF!H(N6qqsf3MW?ZS8@D#rATYp~L>PwQW^4aZE}wP-HUo`zuUL^JSO#Du*+M|Ig>p%^JAbdA5;$mtQ&Y3{o` zUTYv;_--{tkFvEXBkA9ylp$7Z_xLh?$g%Cos2-8aM*-!~-r`CI9T9xuPX*yG8ehTk{?H0I}l zY`S<*$)@I3JP&Exfq$yf06>~gJE7ve9yuxTG-xzJBHlGo$~oRe*=0O>U{letY}*5J z;M7ZaauRL?+*EvNu-Z*N(VwXA7%9Q{62_QRYyUE)6K|33&Pbyfs}Y6AEO*&Vi5FOd z==?!cWfOBGpM^p8?l(zvcBa8a&U2_Eo*f`NsXzQgN-Qd65E>+!HDdQce4YPKJk27(7f4lHIS)t?2Y zKfIYa_(1_4{X^pi#4G0|SLwAKO;ccMfKT-F7L$ig{}p}Jt`ZVR)zp zS)KXWSw6$aal%icor4)|2-96bEHx&giBt{0uQO&vbGz0&(6x}4|tQn^7+ zOeSxt&-ZAKmwnRkNyo>JPavM-&EOYO!jT2roMH~l_}1+ zm>YWG9jX`ynt&e%EdRkUD}n~AelHfgr1*hrp*`Qx{BcIxs=k*PlM(R}Oi1EimhISc zqp`?&1;DC_$8zj}0do!pxfMj;L?z39o{2a;58tvIWp7btViXEC1Ulw8ESe|QtHOOV z@}Ctk3I*R%T&q}xHw)pMO-mF(>=oZaEWr8<3LG^-c2)J;fV~bJ**k{Kd_Wt`#se4Q zUnUAGqn2wBTZ^^b0yD8#@JQ^cu(E(Hz_3bU%S3x(mi7d3669s?1Xyjx5D7wdw~$Og zcGh9KW}QVDj&T*be7a@4@m6XZj8_{&#~bmkY&^o7_Uo1L#vJM#kF5U1c;jd)EHUC~ z2^%-21g{7&4zI8VIV7rB6du)^=Xjc4E6VXT*D_lkq&+t|+)Zl)iC!Ke4WiiBZr;Q& z3#6u$)lOH_RDnn1Yuja;C%&OJyu(P!9QaOjRoIE=AqD;L&ihc!Sx5^)hdw)~+_dR* zHb8VGUdl!5!ku)%j5e`-wbR+XV*R)1zKkAbv&N(K;km^$@JrKR%6EZg?J{74ogS3P s(G_?^RZ=dV31@Vj=1ONa4 delta 1723 zcmYjRe{2+G8lIV*ot+^Ol61b=h76r!OqaPPK2?vLl2 zZ{Gdpd7k%s-*@xRz08mQ=S6;Ka2W<7nvA-LCSs>w(a{Gr1ml-lIU25Lrfb|`;o^4H zfc-qL!}x(Wu;J;_5S$Ywa!P)l@LN22rxnGx6p&owppGLO_yd?+7Bz=Q zmPsDGSK@8%cWk#WyLfo(T`#5FbI*=pdWCG<-!Vgw;WG4mn0u56A1B%#?lF4b#-+L6 z(Q^w)bW_|Wq-o92+C^vE=)|>HD@8LDy&7>__g-)d`(pFfaT{m&W_5aKZxdIMrH!~B zn_=9<+2~K{r5+N+=Kb-~+pn?yzayKz>gH~yFCU=YtgoWq;uUlgZwJ>-yBUXAv%^=a z*+ie_HWejj=x;3MG@C&Og^O;}SN(3JY>K~L)dLUDQg`zA^)O^fbe+>Cx}6e9xo!u? z^?7Y{oAqusrw=c3f1^aUk%?BKEndrYBGT?5b+R)DHM^Bv{f>_DF-vso-VLG4DUp5G z6c_%GIGBGy5>Ytdk=*3rn7jY)yItpGkNf>y2Qc!1CydE^R1wK9cx$*Yuq(}`xANV` zk@8AnZs!7l?OfnF{06c=ddiVuf{5usPncy3o^c$>mWd)$#p3EMxaF)+C|E}?L^QsmEo z&xGSjG2h}PUO?I(x)pt`+6JUX1#|yHD#`<@j)7ZzI_%fVES6dCGcBC`wS8~DBctyq z(baYNL}b%GnO*Mo?KO~byb?y1du0r+RVpyFi*H~n-}X(N<+tE`iyC1qf02y_egS*# z8~F#F}KKQD7-eF$HY=qu7AH zPSIp?K#3XbwJIg=#pxZofzj3y6RG(T3rB2a9SZ*ngwb-F;m5wHLf&49m!s|}ZxV&c zfSk8wnWbu!n`_xyjY@tC7O(a#LgAJwnGL+7O!2etGf7UgmFR40OzEkeDHKKoQDiHp z6lXIVY**hAa+e=b2^v8sl(5T>`2Tze-!7?1BD;;Mn0z^I=IZ$XtLKfQOBh+|71*Jq zQ9sPDM(`_Pj&?Uy!KS`D!}Wk)7?_L3lhJAq4Kez6n3dSQRIyxRg`{*)XBNk#6R#AE zU!eO*zl2Y-K|e<7DkMz&L9@{GU{Hj9rZVI!9&P9T3%)5B!S=60D(a?#GN$?}YxyM3 zd@NPr@*2g4uz^Zt^lB!I(x8O-e-l)E{aKlTC(<$E`v)~_HWNu9b-}33ojPw2f`kyE zlwcCd2o_-uJ9WPNlY{tv&)oUB%$~U{vnSl+p!r-loa_3ohzOyAP)WFfb$wSQZi1t! ze)L{3EDW^R7REKT0s|9r@_LVzBlVDd6B}A@zj@x9rfKXz@Pbf^`BQ?4Q(yWdy!1~^ zMb8qyi3dNAl_Ps!v;jtA)I#s7sEL(aW)^X$54|ZvO_;bYs!i| zA*3z}V*XWXxfzDZE71lvsK*}OhRl~986%A}28Vw|Dyw=0Kh7O7D=_k?mSV;;u_xAI z&tF9oL;sEq;!SPdtZ{bw(^&I7jEUrNe7PX8W+8s`eVnR}tIQdXpSZ%DkE%y^Aiqwb z`gKwg&NpQ$zZ7dekPgTOsr894tmedr=u@f|v(){Gb&Y6vo?nkbuPo-9 t5+OG6r^MKOTJc|UD|JXGP4ni3@ukQf%^> diff --git a/Documentation/Strings-it.json b/Documentation/Strings-it.json index 0e958298ebe4f0f0cd8cdd3bf716ba1f1e30a753..d8b327988caaf062853bc234d7db8a582f751f1d 100644 GIT binary patch delta 11344 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 Sop?h|cU4A6S7rHzeg6V=GfZ{> diff --git a/Documentation/Strings-ja.json b/Documentation/Strings-ja.json index cdf5eff160ebb31c08b8ba0bbbbd949bd073b6da..de69305653f78ec78b3890831034938f5d253b39 100644 GIT binary patch delta 10794 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 K_w9Ga=KeqRPE`K@ delta 1555 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 delta 1227 zcmYL|eN0g^ln#h$_|cRft4-&ECeki0m*WnsUD0*BJqf2VfdPeao=!ZPjq}y#I~=u z%{ZeX=1dGPwa$oGQzBiLVxCD6%L3f#g^$3XXn@1qEmPvuFh&F{*?E^S; zZjo<<;-%$J_+2y+nmV_RgI*>n+1GJjw(aL&tTBTioeA5mLb;&*q#Q3T9dZ+L^QJB| zEG20+UBMKu_Q2x{@`dgRkah(^;l($d>HCU(gc+QxGCiBse1(#mf@~uV%d? zd1^G0M?75x^BOGyw@YXW!lwugsyjt|@)z7}CJ(4)HEB9h!_@XO^8_Q%ub+ZR>XwGTg#BVtZf){>mga7 zBEZ(E(t!0JN`rbw$wC7-0wnKWrg&%wkP-x^Nd{S`Nq-hdIgAcT56Fq{A($-?sBoT| zC_@{6QsWE+zY|!bh$QKu%M7}hLA!Azvb0_$`z#E)siW;Uu!HJqnD-GJtluy*$hVJn zY0@kHFz#GY&hhmSmVHMGI!adPn zLjOIT^2C(IEf{0z9}t^Wqyx;1C)%_CsjF-qSYvFl|6{EPzTq4Jj`cAtY~0ftyc;X5 zf>uGNkfoqk*oQV&3@2*+LUsw-;hX!Xp}SXqxbrbDV-vfk)+B&W#;#e?{rQ zIgrKsQ?%Z{$#d`%ZE-*Q!?Yf))R|ATA;%SSCE=eozXbP|jXWBfHs?L1 hWUyKmKOp1_zfv%E#jF8#o-g#8?wFD3j^+IEe*tHM*S`P& diff --git a/Documentation/Strings-nl.json b/Documentation/Strings-nl.json index 96a58176883450b9a293567b68512f7f189d8c9d..db1064fdca58b46cf2467f9a03d7cdca33cd1de6 100644 GIT binary patch delta 11387 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 delta 1768 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 delta 4047 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 bP@;yuFX-#udB2+BX)>anJWuF0{15*xdN-jq diff --git a/Documentation/Strings-ru.json b/Documentation/Strings-ru.json index d61d861d310147ef1bf2ca8149c788ba28425302..3a6b5f52bb57b91e62f1595b864f0fd7d67cc5be 100644 GIT binary patch delta 11282 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 K?h18#{C@yBrg&BW delta 1633 zcmZ9Me{2(F7{`0px7YWMTX%HjR<_b!OJM_+*$GU9QI2jl6LdBN1*gJ+hy-IO3z-F_n2cXSBEmETfgtfMB>cf2pXBbj=Xsy! z-sk%~skb|Y%=va97mq=^CKGg@mk5UD8w542l8V9Qh9*qG*E0hnkbKy#!`N-tvQ4oV ztgJ$W=~y(;U4$DIZUq;<4XZeR&c8gHdNsB=S16(T26dscOfKndid`1*`Q|ar*@2yt zdi8jViOhozg4AncTaq znPS1+yQS^0?5rbG$Tad0zMkzb#+7Y>D6}7)bF%~1-LbIBgm*9y5+w}wc|BS2U3XT0 zA=PG)Y-&Xl`Ui#gkaEcy_p_61Wruw9pbO551j`B(Kd@>@M-G7f;j*7!P$WKwpS+Z)Zm?| zMA|IonwAsH?Bjx%`iOtqQJOG+bo-WdO%e0X4cT# zA9Y5Ni`w0Hd9c(;`k8=>c8Rj%r>P>M;Y%ULQs?Ltjn!SHNe5D23@0GVsD_^M0uORQ zs>6MaE{2sUEW!Rn0k7||QWaWIcESIPQUdK?N98SD8redH_1~o9$FZ7n`I8+m`+SuB z@twS8CF;AVn>9~Yz7f-hOocOyqjCz^A=6c}y1gu9!n8z++hpB2Yat&j>w1VGyj6?~x6&YTM4KU^A;g8>bZ z;~@_!PDn1~#tk$1ZY3Ias=+w(SBKV(xixU?_!FVrk@kTR3cE02wC@tkQB=ZF+38}- z{Neu97|f_441K2%%-RwTkY8$0;rw!S53?F&m4 zW_E-ZIFQ&LzL}5GaqL+>6ZE=Lf%bzQ^Y-jn25&XHTDuDKv_@F{ vj_{IM`N^`{Ea~nvCp5k^Ba8VSOTNrI*L`giZ*E7}ot}Ro%;sMhQ@-_oz4bl` diff --git a/Documentation/Strings-sv.json b/Documentation/Strings-sv.json index 19f9677249390aa4e7193b45bda1e05edfde4ce1..5904ee51ca32ddf1f7527cc7b0df809e8400e437 100644 GIT binary patch delta 10691 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 O>qq({>qiD0jsFiN3?sk* delta 1380 zcmYk6eQZ-z7{>2cZ%^CX_R?)#*LCe(H{+ZG=dvilxv!A1kTDyFI$;^(OJqXVl|f(( zSqNI3%Pf@iNnjf_A`Cz3NR0<3fs*hcGt5O8l10fNh$v=Mjb<1^Jm4St$1gYMp7XwW z&-*^l8U1(J>eiUsx0WU45>!%NX+ItlSr zf(+Mf9YIod%1AEqNNC(;^ukqXHR8>^W*5|@I*DJ8-4of5N0JpP0#Tt9sXcr>y1x?$ zipK;c;jV}a5C-yw5?$55mx1)>*)TnrO%lExP66REy^L6mUPJ7Do-^ToyP3zZUvEch zGDFh6#;xVn;phR~nuxY#E-Dq?lBnzXm1RDdEtwweavj`iE{NZrl{Q9_Tjxc5+a#!; z8`8x97r@hB>nk4C(~R!R9vR^cnfA!kUK>UZ=={4|?1|#2-B0D!{JsxDnn|FVN$ea% z{FvyV!$-vjGPDs<2{j)VY4dUE{y?-ql|Y(wDz2^*Y_Mb*Ty%J;ZVA-~x#gV3Eu!W$ z85^l4fH*Poq}4*TJ!GhWy1yiy`=PyRAhh)r!x!sOSW0YYYL!)5 zbIvd5;y(%s`f4==gB^rGxsjWWmOrd+z5`YH`B@mb%mmmxVV#5NKg}}Y+YJ_^l7=F_ z2%Z;nvUwk_A2B{5q-mH+8p<(kbSOyif;@W#_ZJuBTG_OMToIdC8@G~soqg9covmU2 zn35jtY1}GqHQEQ9S&>n<6X7?Agifzq3hjNOATVw%K+{B4VW|I-m7y|bF>H)9Mmi&d z_FuBs+{5HpW??9HF_XqFI!3EQJ8fAECnKBTV&u@BHg~BR58Buzl3UXAY6kJ&^9e*nW>pKkD}cZU2k)pB2glKc6P_L!cxlwt_>!LlUy*&#eB~6VOpCNK&_^<^hH}M2b pTf7d$#=HuO9i$L9ea!e_jXj;aUN$miZt>0wDaJgi81qlQ`wyZH_DcW& diff --git a/Documentation/Strings-tr.json b/Documentation/Strings-tr.json index 316cd22a375b65be250d340ad0f7b72d5ae8424c..9eb88c3be48f436a09753ba4d33aa2892b5093db 100644 GIT binary patch delta 11327 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 E15(YC)Bpeg delta 1508 zcmY+DYfKbZ7=~wdXNTEg7-olI8DTH8T$B=H7GnKj42~2LZNo zzqj}F`|SSxhuML>3lZ)Th0d3Q9FFxTNl==SL=4YUWIWjGR1jI8&ZBfnRx%8xiCNDW z%wndVsb$_^Ynjb-R|?McXj0hUq{^CST_U3wFbvWh0 z=Js_gjC(vk*b-}E?P#Hf$k&E~-5!T(*F3RorLA=E>bu=;_Xe8fCZ>_8N9Z??ALj93 z3C-mdB#Jq$^MX@FyT_qm-71r9l|MxV{iVq~;&DO2hRI~r`4&@)&1V7`P&Oq?I2CtfLz&A}z&z^U?13dB zs%GYiXpLvkN8j^2(f{Tv($T)qtzqCop!kqQl^G3awyNrCy8laYTz@R7-?q`qHZ z?es{Hr!r;o*?i%qiM|7pMlNp`>fDIT%=4o413@FoJAzJCP0RM7dzs9W=?>vGOUy2z z)Iq{Wg$WkE?_4EhxLasXC71ezY8P^U5Xy-4sW3E)G>r*+>(Md67h$~BFCZSy=1F9Q zdz^iC7+*$9m4_sW9ISM!v!03}kj8CpZ423d*L}(nJ3ry3h?HcCM9xp7+*}RidYXcs zd_}k8?HZ<6a1vT$Stg1X%idT`xlC%xQy^7!>?(68Pg_%un*I~;STk%4Pie7{b+V$BNgC?vIIvu_* z11r1GeMTrnPl%dFnd9JLt_}+1>gwP<6_T1#0_Ayn*nBD=5xFjSd!B0xZPj|PqbccV zxkAm>bTvr@AE%R7I_lOD3Cu7NKNs{OaVqE~fs?_N$Jtp3m2orBQ)mS6(i25PA}u{? zUm6fdbg8i~4b4}mktVJG{V}}Nt&*uKqo=`+zbc_-zCoLHOOSE4((6Se*<;$4#gQX% zBfkRC6oG@eOOp`)H>hAogG)j<7}|$!UtTfju&G#mBOnvg2!-=d`ZFzdvNu`4{xQFZ zRiDTbc2s5x>}>4(NcUsa3qcwBF`tg2f3oM`wX#szvkJrOM7h%=@@N!8a}h5KX-NjN zoLR&y$F6JsG(0$zObz(R&5>nGLN(vQ($Ynud9r`MOSRW|QZb!GPVz%V`S`Kw%j@Pzo=3=;k6=T*&4zWgZOAh`A#mgH4 diff --git a/Documentation/Strings-zh-chs.json b/Documentation/Strings-zh-chs.json index 1866929d5564bd075be937ff780e1ff103be4ae0..2f1181085cebd5fbe96ed3d84c451e486b597d62 100644 GIT binary patch delta 13499 zcmbVz3wRUNwtps>OeT|bGI=M>qmzIT&zkV&r zo;_=?z1G_6@mrh5>W$R14YgF$@q3_sirNOv^C)g_c+?6CviDLpsP?IcYNn}zQk}yi zg|gOb2db8sN3+p1RBtDnEcSd&2-B9!}V}sOJ7$bzfV^}G?p|&n!tlt}O!N{Mq z78tmRnIUB^9s$)qd08p{&1Cp!t|(CDaH@oH0()3oTNmLZann3#`ana&M<0p8o|S?c z+Mialu>G3e0md?&02veYEM$I@#K480e8zibs2)?zRh6kqRWnr;Dp9pS`CEabWjG?L zDpgBW<*F)Gv1$o^tHQA*_*YcTz?n;6t5)M25`SeTl9;PJD#pj9%4@}{`8ZahyjYBc zXXEQtI8v^f4KEEf--p{703nlufdey{-cn?`ZEs$6HU&*qe=@uq)p3w_PHluO9ybRW zl%Ion=TN#u%`R47jQkO9D&X#XkDIz%TIjWoszSCakh+-QWPxfH{tU$L6OmmJH<5Tr z;b@Ms!C5#rF)F21*x|s3A_o^=pjarMknDgpG@W{T1-?zhQK=e%Z=&v0kE;eKpVAVa z;xbsS8U$ZIM(04tn3O7o|I-Go=O`nH12pt)M2x>752S`dhut%SGZl*%zxpVvTZsE1 zTcmuVTMBL5;U4pAVuh^Pd=84UKoO@@T@#cpZj4DSeOcgN@^aFOORR3OB9%GP#-A3~ zMOUEbvZNP%sfgA@ZJ$J4S7Td9>TDAsm{tLX66^Dr9T{zBF6fJt@$OOe5bb@kc~WEl@}h z0&&(WR5RhyGon>XEU5~zo~G8}k%i_@)LeWY(-yP5H0W}eaII{E|2ZH)|D|T2 zinnBtM{^)nMKh4uN6SLvWNIW;0cqd6t@#W$0($cppg?^PRo z45a@Bc^b)aoO7mX5gJGdN{C2liSj9mqFJ@oXV=C_uX@~X*CiAKSr4R)Ce+Gqp_cs` z?moO+&6sDZ@Lg3dN`40FVXmqa(m2izmI}248fth(M;0RF1CLX79dQS^0|@8?y+GJ6 zRzOQ7H3lNjX=zwJ*=B(-j}mSBhk=Df+tmWh`anRl&Cz5hWXnM73@vRZ3SX>POoi%x z{5%5}E`#D_77z6M(a1ydIt}BDJC1C{Iyxq!0|E1^)F=?!bSpvl2R#6q_XrGx_6UB6 zad_JBeF56?oD53!fz6a1#7wo(BdQ7&FHoYmpb5BR;>d{a9t~+O^{7tv8b8trhAhRT z?sikoMMwWw_|+O6O^_7y4sjD0XgZ^Cludn@EPt`ja6kOmLYnC#@-rU8(&sY zr8vc91m3I8B#V_PhAu^~a=HW^m|ITy;Ko>%1FuINg7yt5G+Zv!gy76G^rE_mzrLS# zEqrN1mv=})n->e{1}MtlI2idZ#Z#s5^>J-4XnGq@j^Ne|f^dpXIc?J*^R$x&|85t9 zF6M9*6M)(u(LY}9Ls<+7TSKyFezC?215=q}ES1|1TLm7M4-{3T(#9FD~F_O8{BG$( z)_}EAG0f45^Xtax_7Js05>GEtTw7F&=Zu*q3b1W#FowrYq(Mw&aO??mH|LIPMdEIb z-Qv8{7zgYLX$FAzdxn$NJmP?i&D2m}vMs!HY#5gB6g$2F{HYA)BTrBq>~W$LM@&HPO#E%! zoH~PF)Qe}e&sOBM?YNKAll>FFKL9ShuJ-6i04PBVKk~HB4)Z2!9B{EeO{~ZKA$rPf zyDVNf8{t@}`7DKp>MI%+MlA5zK&;~wvyDRYn>tHJd`pTmA5sk`%)_Z(8Y?tWn%>ZQ zh@v4P^DOi^?DNCL0{VAoz{)O~FJTl9e}GYZ%0JXb(*#uQB>a68f6-q--9y2Tp&`Jt zN+1^|*pp#iGH$e~h-0An39A5C_xUW4`GeXfU8r}#l^4~529q4PG}hsPscbS2p#iw} zF<vT3~q-Y~m3{N;wtYw+J4Kg?I@#D}f zwBFVs!oiCEvlV+SL2-ymVwa!|=1ML=;vcfshp?u^za^_E-q7iV&;zE>0XG!AEtV3K zn9*gSkuNZ7X)4rI!Nj|02Q+7^9a3<4GTaEFP_O-o6QD}Kxbog#*hNb4?hO2$GP_HW z+2g%6w?TWMCLIJXroYWoZ5VK`8ZjeXhY9@2X;d|Y&u9pZFtn*Lj;o!NEvZ{{fwv^e zsrW9OHL#1trV=khMd53a8Vqx^Zkv?p<-4i67LNUetsonl+I4#D9nu@7NG~5vNK`3Q zhQNyH!TngLD2g23UyA|nrrKid=C~E7GDh0{#b;e6*Cng7w+C4G`!uT&R?lLVA-hw$ z7VZ?xklz-}HS#)>8+@;m4P87=WPy2w&Iy^XFdbo=>k>vtND{QlJSbkLOM$ip4i1X$ z>TXb!;z|y8@zkqB80m^I3eYr3o<3Lc$|B|f7@r6|pQ0(;PkJX));LpRQGOL2ewG}? zKl~z3f174?Lcv|M>zC~tBI8nQ9WJ7iskGl<3JJQ2l=gKp1ZTD<39xT6B|t1EFs+9@ z6Zyb*!}XZ%I;oJK-Xxkr3M}J{b3z zop$c-5Z$1jTmp3fi`dNX-E?OTN(>jH#Y!bwkW>q*Uk%XpxBF;_p7$f^gGv3MJs&f( zV}+Cj+Uj+jbVz5E4n2vLOQD*U+Sl4pdFD?wGrOvCsr8=D!Elb&2tvKcz_W$E-e4Pw zdmMVs#zWPXz*MMSp!Py_2^JQ$D+NZMt*995Wcb>G21OU?ExJVQ48=7x7HupIEfLHZ z$#l5#k?4Zvt0bIF6L~A~GI2?fz(7jjnXoEDZ?C_E(qtb@Nrt@3I-!3Q4TDTXH;2>W z1w`M3U6BB@03B9b%vgBafgkQiS68m@Luz~)T($ALtrG(|y_j`KH9NWI z_J|IMX)s?2KdQwrv5kf`=`KNvAuPxFh=v_U-r6%e{*{9Pyd-0}Y= z8li0%dT|TIj8W=bXmVkx|hY^H_R`<>czALni~US zZxxW(6%N1Qx*VRTfO}$(AxFi;QzFTGrx3UNTw{L@}{8xarV1F@e7w zr8F9{R%q@~cvTWGaXO}dxReX7&v4m#F4}s#Ch>Gj35Kt#G`)anJUb(vyooQfoPHv% zIUh6GGB`Cz?FN1@hQ<8Z2tG^=a>+2JOy`9IzsIzt$%=K*tbrN};y-0xG21omeItLnGoLYN5p!M_7Pg}!09 zB$AGkQZkB14edFX-ne(nwSt$R{RK=3iKD$&shrAiN-5OEe0B(57qG6&5V0=mi{*>A zg=W*nqI|p1k6B2Olni|nXhvWB+%-Z_jlNRxpcELo&zOO-RbT~HHz#3zt6mFwr0WZL zskzQ?n2Cdl8U)O5Yf>PTWn&<+7Y}T3ipK_5mtox$DWP1_g=e3K>U&T){Ba$#uHgkr zZg@d`R)Y3bE(~y+D3^YWB9vlPj`aQd{%|41WP@W1lLZ)b&|!gD+nDsYo-&_sF&!@u z*+f-iVE1;v2fWXzIbA7^V1*4^|C-VZ^2aa?CN86(xP=-5O>5COezys|)3zY$XXiue zJX2p3EAd~6N)+xq=y1aMbru`d7qX_R2SfCn?w{5zKt>7PwE&9ytKC{s0+z$pxA9Ph z4mxbV$ZFRsrf1Z*K~*I>*I(Ng%y@{hP?b76h7fqPD8>A98i!J1_F{F>TNa5oxi(=?pie1|52o(-SiT3xUXVRSaGH4b*a z<#U3tn8xzMqc-Y^O}b45a}N9Hu=``#9r*T_@>W7}<=uiZBF=jMw}61W13{>cUc-P(%XA zQ6)V52|cX7*2GYEK-LnI6(W*@)gyi!FZ>}(!~(n}ht7tUBpQ$S+ZdKNuQzgVLhZy- zX|G&>m5zHwpaix)ZLxz;fU@YeE+Q9L3srf0!-n|?6>Zta*yNM% zYC|Dy8o~i-ul|bDN z6y%CASoQZlXmG)Kn_z)Ok8u_d`z2!##cB&kJ|G_&!dy4&?nK&YSZbwJvg6_pqwi`F z$glJYFd~-`waNszS-@06`(s`N%W@fiVz79LcM{_Iplm{UxO!aY8(YUQe}u-x-UmBp zMDIg9uWfwC>$2fK<_;=BYFHlgM*O4vbsn>r?&K@*0ONt{HKviBWFkwwsSr)larFg^ z?bdnj`a*0g2uZqJh!irZ5MJiRq89hiZPNZirkv_F0_!I-&Hpsw(uk^jSoJnLK|V2w z>7(_9mEc4wGXl;Mgoq@>^YIr?h_q_nBk^v;h8!&i@5~URhM+1NeP<;(>_EA+b#StQ zV&JPElP$1wh?>*pkwXCY4Q1TYfiF%F2s8XIR!psiqS?j9BEr&^lC0F?Q3zjf^nu9B zDYViJsb*~0IjO*0YD+U)PZ9zp&E0tf?J|ET<3Mt|;DtBALj$BpRS$^p;12(kIk`H@U+ zQK2I~8)V>OiK&yDeYX%Rn;tx%%xa%V8^QRqUX(K4;~;$8#zIWQ!}|Q+un4V0F_T1_ zV3=F`(pKFpMf&rB3bVa*38BOPyqfF=%iBJi)h!Z*5XhRmRfRt@;mB6%NldBd!J(m8 zIj%URW3jxbdr>o*oFeQt@yhCPY`?k0<$^IYG&a~g3bFmzbi@>D|5L{sqNqYrJr`rf zpVdqIG$Ht0LvVXsneSRy-c#7cE7nA$okR?zyLRJ8tGR%7)iVYfnk}pmxYv>um@ta` z4D6C?;~iRB8$~)*Ks~}(rPACrM0-W?bKh9#H$v(l{|FEoFj!U>T3KjbjwCPqj1@DI z$Xtq+S=f+J&aM{gX)e{rX9SWiExm`kTc zMvjV(`g^f6#lFCVq6GbCoC?AW8o_d!y2+wcjjk=x`O519WciQ$i*wc$b8s%g~ep0j@v#HN$Mmcgl)T+TI08l$Mi^){% zb{?&{gNWfVWPTj}lE9IzSaKL+;jgKQ7;<+R`{95IJwMaP*rYw5yeDNGttIBqLPnaF z`L(?qSMYsObTUa~;d_yR5=C}LhPejAv|LIs-*O<8Hsb_1QsQ#Mq9sW-IQk-LruJufX zUDg!-6DFN(p5LMyhz3?G<@~% zn)14cMR7DF<(KmNTcCUo$HM_T;t9QPV;6O404`6*5S4!zo8HZB1t^H0hlDlTjD z6_bHTlEp8z8(1t7v4snPgH}7W2#WKW`w~YIF;r4lv}7RyJj;jZWxEwo@VFOGMnP|Z zl{oKm9sWDTG`K{eBm{}jVGe`OW;V6QMKzE_fp)UQDt;mZQkZ&QBhPU@7> zGr64{Zc>8%3iWP#SoL>zTxxOWTU}*mpmdR42>iw-;zc49r?~I$ViLr$9vX!84DI=i zb>ZVH?gxJ1B?dO{PT_9Elu24zK;O6#EAMwQ2PQJu_66_+d^OmXKX z?16;{jwVf3e8n7qlc$Vk&~mkjNPLZau@xnH!nd3dkIyx4{)H_5<6uB=OL`jHTrW ztHU()SQ4h5pPTTH_zhwfE3aU2e~#qpzq`!jD!Hb7Az639ZAhf97`R5msW!nbx25Z* zB!O_uOvBp8{Q{=YY1pNBV2Iu$N3wPMLeP|@Vq!@sCry|jl%3Kd z!WP16nRL1^-;@Z_RXqz)5zLica?=Xk2?Mmgq-9{umw56*gRwK%UXLX6|A?sn=_^bT zNm5B~585ZQw7%0=Br0%UXXT)*wdJslgHNw8k;EI=u%4|GVaZ`XIs%fSw@<`nP9OG{ zDPIY;^}8J@j`|{mW5i|+Bkx+TYoVa|nw^mvUf`hmkPkb!RXP_`H71M*c3Q04;ygboB!x#B3Gi6P^O?H7&&>PZa+mJAtRjo9(yz`ef(HxPFE*GSnylm zqY?t);nw7q8r`Q9w7lxXtdwk3ctOMH!%FRrtdOqbD7bnfE=h{dvt4DXyYsb5ECLEd;KQNbT{W}2PnobH=WS+ zQ^Q9N`4f1W46iYYpy+p9pE+X_t2zcW-ET80qv_`SQbTOOG+x zIGue}3!y?6hN=fy0a}jXCUZ-$=^UM9<)QWA_!#1^^XWW@z3QgrcV@8Ii2E%+Fg(sk zbT})>hnBO$xkMSc>S^{-IkJ}hbX2Eq1Zn?m7^+F-O?-}Y`f80FeS}t1h}6-w&{*hX zpxuRKcf)Za>D))`SX({M^H6gF(}c)DRK)9NOfKbRdGiT&I1R@qI(QIM@K{_wqsfn7 z&}jTu#LuI{bS~-i;j!rKLh<2Q6VQH%W09|%WMgW`bmQ)ubZ8l93fV;Cg1qJwd;Nac z?9dybb+*CQr2f6%R-afHyt*6#42P{ku+ReFZU!9xt33uYX;qLB|NY zC+qO;LV>=tdtu8L>IWobb!sl{gm9sLnZCo37J~VT#VWTJ>MIg;x%|K+eSZx^$Dp0} z@W$s}R}YX+Owl|1orng)H0^#y9=TXQaW!e7%Fq3*U#h?5u|Vl~xkAI0^|@s*dYEG5 z5viPdDfHQID}bgQ94kNnGWXp8ST;p(>(DG^@F-rLsFF?$exGVcfoVf9N`#k?TK|Y) z477iR-NykRA&v2;xX(@hR~r0MFP_kITpzg5-ylHs?=2S8A7_Kmzo9!j){4ZV=Q$%Z zs|}@)-ii-)(gwVSU{4lFC253)Av7xs-*8p_|Lf9S?8j(>x99qeZ5%CcQ5!P){eRJI z&M@@D&b$Hh$Br$@-`#Fl?dkF@p(zRR$%k?bQ8BKf$Ww;#kh##n$j{C(9PlcGG7k2} zJ9H!{E6)W93sCPsTQ=>*r$+?DHa2JiXQ>+?hb+F{Zjj za(Q&Vl3NpCnq+r#ly7d4KS{O)_anBsp7 zvD|J``oZl&lk4Yoc%6mGzdP1rR*g6XxP5DN|Eu!o24E=qrYrKrq^G3mv z#~ie-;_8$KIahhdEs9m1!=NGoEPtqb+692v$}JOVNB`k`@*)dgkG@u^aIz9^Ty zz|Z*_xPF^>$>oU%ntPlA;npo$tWL0)#tikQ&`3GCe)ijwitM$_H4L^lm#?{;}= zw&j97F3G7=EO|zlRpoLe2*c`4jEj<{+ zd~2D3mh1Of9t^{)y|F#jxr2l|&oa9v5o(-VuC?~j{o+b^amQrE774?%>uwmW@(rWy z+MNW0pVA4*4}i`0*jl>A19g|KeF{>F|78fmK$4W5mC%DR78z`W3v<@C((F{Cb6B+TC5D-VOd;4sYT+qWN|? zf0x7cX9EG7$YpYpdB3&T`4AXaBKJY`b$RkR_b8yCliA0Z7C*7Qs4VhX` zu>P<~g!bv2P2Q>YG>%eKjisfhJ*1>NlPW#H$Ct`n?V%^a&U+96YJJnuFTUuxCU#)` zxd1C~Ipc}F2rDabsSQiL9SIp~#SPv{Z$oFwMw&9DKqU2qj9sFM9qkfqu3)3>F>hl+ zq1cI;3)o+w<;{!m5_4j7<1()gT$SEgp!7^)mEP2@Cwmhg?^*8Mo%r~-<=(dwAGfaX z{&&~M+hO2hLnbNIcv-#DTe}YC{b0+5mc5v{oz?pG2~g9Q8A0&kNCqZeUpjn)($Plo zn%~L{pF=)=pKth!U3tch@?eI7T1pwOAP%;Mg=OFR1bN0^e0VLT=6i;fFaGSyD~Fc3 z{#5zw9DjW-q6ikK*zMofgNTwoSMBk;dc}QjzvF&E-tr&*T`Rgx97zPo$TbBiTgF23 zaa4@bXvw?k=j1^zr0n?y4jso^6eIU0yW}|^(nBfTNF~x{z?&!Nw;}ikdMJcG!oaxa z4|EJp+-t@Q!8sP}8{);-4;=``z2%_g3oFF63wzpPV6ljWKQfaz&gz7Wz!0(#c{rP>SS%cLlJnxjSHMgKzyBTqzc0Z>dH}JtUv&9~}7* zTzwsj9ej-c59LX0sD8O2CE>!cOu_S@L7?;bv2?r(gt$;Y#Coa%C>N~@4pnzkQaunr9ser{!Vdc}8B>_)pk)KL oBG>@p#^A9|R#~vr1Z_Q8C1DRvo6wRns)Dsd(F_6(!SLY!1xhaar~m)} delta 4047 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 bP@;yuFX-#udB2+BX)>anJWuF0{15*xdN-jq diff --git a/Documentation/Strings-zh-cht.json b/Documentation/Strings-zh-cht.json index 1866929d5564bd075be937ff780e1ff103be4ae0..2f1181085cebd5fbe96ed3d84c451e486b597d62 100644 GIT binary patch delta 13499 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 delta 4047 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 bP@;yuFX-#udB2+BX)>anJWuF0{15*xdN-jq diff --git a/Documentation/Strings-zh-hans.json b/Documentation/Strings-zh-hans.json index 8123632184f048d5f7bf0720d66831354207cc4f..fc673a4911f98c7df726cb9f50596829baa84c8a 100644 GIT binary patch delta 9375 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 E1AgH}ZU6uP delta 1221 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 CMgukg diff --git a/Documentation/Strings-zh.json b/Documentation/Strings-zh.json index 1866929d5564bd075be937ff780e1ff103be4ae0..2f1181085cebd5fbe96ed3d84c451e486b597d62 100644 GIT binary patch delta 13499 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 delta 4047 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 bP@;yuFX-#udB2+BX)>anJWuF0{15*xdN-jq diff --git a/Extensions/Compare.psm1 b/Extensions/Compare.psm1 index ab6a634..6e2daab 100644 --- a/Extensions/Compare.psm1 +++ b/Extensions/Compare.psm1 @@ -11,7 +11,7 @@ Objects can be compared based on Properties or Documentatation info. function Get-ModuleVersion { - '1.0.6' + '1.0.7' } function Invoke-InitializeModule @@ -399,8 +399,9 @@ function Invoke-BulkCompareNamedObjects } else { - # Add objects that are exported but deleted - Write-Log "Object '$((Get-GraphObjectName $graphObj.Object $graphObj.ObjectType))' with id $($graphObj.Object.Id) has no matching object with the compate pattern" 2 + $sourceObj = Get-GraphObject $graphObj.Object $graphObj.ObjectType + # Add objects that are exported but deleted/not imported etc. + Write-Log "Object '$((Get-GraphObjectName $graphObj.Object $graphObj.ObjectType))' with id $($graphObj.Object.Id) has no matching object with the compare pattern" 2 $compareProperties = @([PSCustomObject]@{ Object1Value = (Get-GraphObjectName $graphObj.Object $graphObj.ObjectType) Object2Value = $null @@ -828,7 +829,15 @@ function Compare-Objects $script:compareProperties = @() - if($global:cbCompareType.SelectedItem.Compare) + if($obj1.'@OData.Type' -eq "#microsoft.graph.deviceManagementConfigurationPolicy" -or + $obj1.'@OData.Type' -eq "#microsoft.graph.deviceManagementIntent" -or + $obj1.'@OData.Type' -eq "#microsoft.graph.groupPolicyConfiguration") + { + # Always use documentation for Settings Catalog, Endpoint Security and Administrative Template policies + # These use Graph API for docummentation and all properties will be documented + $compareResult = Compare-ObjectsBasedonDocumentation $obj1 $obj2 $objectType + } + elseif($global:cbCompareType.SelectedItem.Compare) { $compareResult = & $global:cbCompareType.SelectedItem.Compare $obj1 $obj2 $objectType } diff --git a/Extensions/Documentation.psm1 b/Extensions/Documentation.psm1 index bca0503..6ae6a82 100644 --- a/Extensions/Documentation.psm1 +++ b/Extensions/Documentation.psm1 @@ -20,7 +20,7 @@ $global:documentationProviders = @() function Get-ModuleVersion { - '1.0.6' + '1.0.7' } function Invoke-InitializeModule @@ -443,6 +443,10 @@ function Get-ObjectTypeString elseif($objTypeId -eq "TenantAdmin") { return (Get-LanguageString "Titles.tenantAdmin") + } + elseif($objTypeId -eq "Azure") + { + return "Azure" } } @@ -1600,10 +1604,14 @@ function Invoke-VerifyCondition return $false } - if($expression.value -eq $null) + if($expression.operator -eq "null") + { + $tmpRet = $null -eq $tmpProp.Value + } + elseif($null -eq $expression.value) { # Value not specified. Check if the property is set - $tmpRet = $tmpProp.Value -ne $null + $tmpRet = $null -ne $tmpProp.Value } elseif($expression.operator -eq "ne") { @@ -1737,7 +1745,7 @@ function Invoke-TranslateSection { $value = Get-LanguageString $prop.value - Add-PropertyInfo $prop $value $rawValue + Add-PropertyInfo $prop $value $rawValue $rawValue } } elseif([String]::IsNullOrEmpty($prop.entityKey) -eq $false) @@ -1791,6 +1799,7 @@ function Invoke-TranslateSection { $value = $cert.displayName } + $rawValue = $value } } elseif($prop.dataType -eq 200) # Multi option based on boolean value @@ -2063,7 +2072,7 @@ function Get-PropertyInfo $categoryStr = Get-Category $prop.category } - if(!$jsonValue -and $rawValue -ne $null -and "$($rawValue)" -ne "") + if(!$jsonValue -and $null -ne $rawValue -and "$($rawValue)" -ne "") { $jsonValue = $rawValue | ConvertTo-Json -Depth 10 -Compress } @@ -2436,7 +2445,7 @@ function Invoke-TranslateOption Value=$optionValue } - Add-PropertyInfo $prop $optionValue -originalValue $propValue + Add-PropertyInfo $prop $optionValue $propValue if($SkipOptionChildren -ne $true) { Invoke-ChildSections (Get-CustomChildObject $obj $prop) $option @@ -3138,6 +3147,8 @@ function Show-DocumentationForm { foreach($groupId in ($objectTypes | Select GroupId -Unique).GroupId) { + if(-not $groupId) { continue } + #$script:DocumentationLanguage = ?? $global:cbDocumentationLanguage.SelectedValue "en" $script:DocumentationLanguage = "en" $groupName = Get-ObjectTypeString -ObjectType $groupId @@ -3375,9 +3386,24 @@ function Show-DocumentationForm } $tmpCurObjectType = $null + $tmpCurObjectGroup = $null + $allObjectTypeObjects = @() foreach($tmpObj in ($sourceList)) { - $obj = Get-GraphObject $tmpObj.Object $tmpObj.ObjectType + if($allObjectTypeObjects.Count -gt 0 -and $tmpCurObjectGroup -ne $tmpObj.ObjectType.GroupId -and $tmpCurObjectType -ne $tmpObj.ObjectType.Id) + { + if($global:cbDocumentationType.SelectedItem.ProcessAllObjects) + { + & $global:cbDocumentationType.SelectedItem.ProcessAllObjects $allObjectTypeObjects + $allObjectTypeObjects = @() + } + else + { + Write-Log "ProcessAllObjects not defined. $tmpCurObjectType will not be documented" 3 + } + } + + $obj = Get-GraphObject $tmpObj.Object $tmpObj.ObjectType if($obj) { @@ -3398,19 +3424,35 @@ function Show-DocumentationForm { # The provider takes care of all the processing Write-Status "Run CustomProcess for $($global:cbDocumentationType.SelectedItem.Name)" - & $global:cbDocumentationType.SelectedItem.CustomProcess $obj $documentedObj - continue + $ret = & $global:cbDocumentationType.SelectedItem.CustomProcess $obj $documentedObj + if($ret -is [boolean] -and $ret -eq $true) { continue } } - if($tmpCurObjectType -ne $obj.ObjectType.GroupId) + if($tmpCurObjectGroup -ne $obj.ObjectType.GroupId) { + # A group matches a menu item in the protal but can contain multiple object types + # New object group e.g. Script, Tennant, Device Configuration + if($global:cbDocumentationType.SelectedItem.NewObjectGroup) + { + Write-Status "Run NewObjectGroup for $($global:cbDocumentationType.SelectedItem.Name)" + $ret = & $global:cbDocumentationType.SelectedItem.NewObjectGroup $obj $documentedObj + if($ret -is [boolean] -and $ret -eq $true) { continue } + } + $tmpCurObjectGroup = $obj.ObjectType.GroupId + } + + if($tmpCurObjectType -ne $obj.ObjectType.Id) + { + # New object type e.g Administrative Template, VPN profile etc. if($global:cbDocumentationType.SelectedItem.NewObjectType) { Write-Status "Run NewObjectType for $($global:cbDocumentationType.SelectedItem.Name)" - & $global:cbDocumentationType.SelectedItem.NewObjectType $obj $documentedObj + $ret = & $global:cbDocumentationType.SelectedItem.NewObjectType $obj $documentedObj + if($ret -is [boolean] -and $ret -eq $true) { continue } } - $tmpCurObjectType = $obj.ObjectType.GroupId - } + $tmpCurObjectType = $obj.ObjectType.Id + $allObjectTypeObjects = @() + } if($documentedObj) { @@ -3435,15 +3477,16 @@ function Show-DocumentationForm $filteredSettings = @() foreach($item in $documentedObj.Settings) { - if(-not ($item.PSObject.Properties | Where Name -eq RawValue) -or $documentedObj.UpdateFilteredObject -eq $false) + if(-not ($item.PSObject.Properties | Where Name -eq "RawValue") -or $documentedObj.UpdateFilteredObject -eq $false) { $filteredSettings = $documentedObj.Settings break } - if($global:chkSkipNotConfigured.IsChecked -and (([String]::IsNullOrEmpty($item.RawValue) -or ("$($item.RawValue)" -eq "notConfigured")))) + if($global:chkSkipNotConfigured.IsChecked -and (($item.RawValue -isnot [array] -and ([String]::IsNullOrEmpty($item.RawValue) -or ("$($item.RawValue)" -eq "notConfigured"))) -or ($item.RawValue -is [array] -and ($item.RawValue | measure).Count -eq 0))) { # Skip unconfigured items e.g. properties with null values + # Note: This could removed configured properties if RawValue is not specified continue } elseif($global:chkSkipNotConfigured.IsChecked -and $documentedObj.UnconfiguredProperties -and ($documentedObj.UnconfiguredProperties | Where EntityKey -eq $item.EntityKey)) @@ -3472,7 +3515,7 @@ function Show-DocumentationForm } } - if($updateNotConfigured -and ($item.RawValue -eq $null -or "$($item.RawValue)" -eq "" -or "$($item.RawValue)" -eq "notConfigured") -and [String]::IsNullOrEmpty($item.Value)) + if($updateNotConfigured -and (($item.RawValue -isnot [array] -and ($null -eq $item.RawValue -or "$($item.RawValue)" -eq "" -or "$($item.RawValue)" -eq "notConfigured") -and [String]::IsNullOrEmpty($item.Value)) -or ($item.RawValue -is [array] -and ($item.RawValue | measure).Count -eq 0))) { $item.Value = $notConfiguredText } @@ -3489,12 +3532,36 @@ function Show-DocumentationForm $documentedObj | Add-Member Noteproperty -Name "FilteredSettings" -Value $filteredSettings -Force - & $global:cbDocumentationType.SelectedItem.Process $obj.Object $obj.ObjectType $documentedObj + if($obj.ObjectType.DocumentAll -eq $true) + { + $allObjectTypeObjects += [PSCustomObject]@{ + Object = $obj + DocumentationObject = $documentedObj + } + } + else + { + & $global:cbDocumentationType.SelectedItem.Process $obj.Object $obj.ObjectType $documentedObj + } } } } } + if($allObjectTypeObjects.Count -gt 0) + { + if($global:cbDocumentationType.SelectedItem.ProcessAllObjects) + { + & $global:cbDocumentationType.SelectedItem.ProcessAllObjects $allObjectTypeObjects + $allObjectTypeObjects = @() + } + else + { + Write-Log "ProcessAllObjects not defined. $tmpCurObjectType will not be documented" 3 + } + } + + if($global:cbDocumentationType.SelectedItem.PostProcess) { Write-Status "Run PostProcess for $($global:cbDocumentationType.SelectedItem.Name)" diff --git a/Extensions/DocumentationCustom.psm1 b/Extensions/DocumentationCustom.psm1 index 58ebad2..e90114c 100644 --- a/Extensions/DocumentationCustom.psm1 +++ b/Extensions/DocumentationCustom.psm1 @@ -10,7 +10,7 @@ This module will also document some objects based on PowerShell functions function Get-ModuleVersion { - '1.0.4' + '1.0.5' } function Invoke-InitializeModule @@ -306,6 +306,20 @@ function Add-CDDocumentCustomProfileValue } } } + elseif($obj.'@OData.Type' -like "#microsoft.graph.windows10VpnConfiguration") + { + if($prop.EntityKey -eq "enableSplitTunneling" -and $prop.enabled -eq $false) + { + # SplitTunneling settings are moved to another file + return $false + } + elseif($prop.EntityKey -eq "eapXml" -and $obj.eapXml) + { + $propValue = [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($obj.eapXml)) + Add-PropertyInfo $prop $propValue -originalValue $propValue + return $false + } + } } <# @@ -638,6 +652,11 @@ function Add-CDDocumentCustomProfileProperty $obj | Add-Member Noteproperty -Name "useMicrosoftSearchAsDefault" -Value ($obj.excludedApps.bing -eq $false) + if($obj.officeConfigurationXml) + { + $xmlConfig = [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($obj.officeConfigurationXml)) + $obj | Add-Member Noteproperty -Name "MSAppsConfigXml" -Value $xmlConfig + } $retValue = $true } elseif($obj.'@OData.Type' -like "#microsoft.graph.windowsWifiEnterpriseEAPConfiguration") @@ -1037,6 +1056,12 @@ function Add-CDDocumentCustomProfileProperty $obj | Add-Member Noteproperty -Name "returnCodes" -Value ($returnCodes -join $objSeparator) -Force $obj | Add-Member Noteproperty -Name "win10Release" -Value (Get-LanguageString "MinimumOperatingSystem.Windows.V10Release.release$($obj.minimumSupportedWindowsRelease)") -Force } + elseif($obj.'@OData.Type' -eq "#microsoft.graph.deviceHealthScript") + { + $obj | Add-Member Noteproperty -Name "detectionScriptAdded" -Value (-not [String]::IsNullOrEmpty($obj.detectionScriptContent)) + $obj | Add-Member Noteproperty -Name "remediationScriptAdded" -Value (-not [String]::IsNullOrEmpty($obj.remediationScriptContent)) + $obj | Add-Member Noteproperty -Name "useLoggedOnCredentials" -Value ($obj.runAsAccount -ne "system") + } if(($obj.PSObject.Properties | where Name -eq "securityRequireSafetyNetAttestationBasicIntegrity") -and ($obj.PSObject.Properties | where Name -eq "securityRequireSafetyNetAttestationCertifiedDevice")) diff --git a/Extensions/DocumentationWord.psm1 b/Extensions/DocumentationWord.psm1 index 9fedef6..02b0042 100644 --- a/Extensions/DocumentationWord.psm1 +++ b/Extensions/DocumentationWord.psm1 @@ -3,7 +3,7 @@ #https://docs.microsoft.com/en-us/office/vba/api/overview/word function Get-ModuleVersion { - '1.0.3' + '1.0.4' } function Invoke-InitializeModule @@ -27,9 +27,10 @@ function Invoke-InitializeModule OutputOptions = (Add-WordOptionsControl) Activate = { Invoke-WordActivate @args } PreProcess = { Invoke-WordPreProcessItems @args } - NewObjectType = { Invoke-WordNewObjectType @args } + NewObjectGroup = { Invoke-WordNewObjectGroup @args } Process = { Invoke-WordProcessItem @args } PostProcess = { Invoke-WordPostProcessItems @args } + ProcessAllObjects = { Invoke-WordProcessAllObjects @args } }) $script:columnHeaders = @{ @@ -389,7 +390,7 @@ function Set-WordContentControlText } } -function Invoke-WordNewObjectType +function Invoke-WordNewObjectGroup { param($obj, $documentedObj) @@ -408,7 +409,7 @@ function Invoke-WordProcessItem Add-DocText $objName $global:txtWordHeader2Style.Text - $script:doc.Application.Selection.TypeParagraph() + $script:doc.Application.Selection.TypeParagraph() try { @@ -517,6 +518,45 @@ function Invoke-WordProcessItem } } +function Invoke-WordProcessAllObjects +{ + param($allObjectTypeObjects) + + if(($allObjectTypeObjects | measure).Count -eq 0) { return } + + $tmpObj = $allObjectTypeObjects | Select -First 1 + if(-not $tmpObj) { return } + + $objectType = $tmpObj.Object.ObjectType + if($objectType.Id -eq "ScopeTags") + { + $objTypeName = Get-LanguageString "SettingDetails.scopeTags" + + Add-DocText $objTypeName $global:txtWordHeader2Style.Text + + $script:doc.Application.Selection.TypeParagraph() + + $items = @() + + $nameLabel = Get-LanguageString "Inputs.displayNameLabel" + $descriptionLable = Get-LanguageString "TableHeaders.description" + foreach($obj in $allObjectTypeObjects.Object.Object) + { + $items += [PSCustomObject]@{ + $nameLabel = $obj.displayName + ID = $obj.Id + $descriptionLable = $obj.Description + } + } + + $items = $items | Sort -Property $nameLabel + + $properties = @($nameLabel,"id",$descriptionLable) + + Add-DocTableItems $tmpObj.Object.Object $tmpObj.Object.ObjectType $items $properties -captionOverride (Get-LanguageString "SettingDetails.scopeTags") + } +} + function Invoke-WordTranslateColumnHeader { param($columnName) @@ -529,6 +569,13 @@ function Invoke-WordTranslateColumnHeader (?? $lngText $columnName) } + +function Invoke-WordCustomProcessItems +{ + param($obj, $documentedObj) + +} + function Set-WordColumnHeaderLanguageId { param($columnName, $lngId) @@ -547,7 +594,7 @@ function Set-WordColumnHeaderLanguageId function Add-DocTableItems { - param($obj, $objectType, $items, $properties, $lngId, [switch]$AddCategories, [switch]$AddSubcategories) + param($obj, $objectType, $items, $properties, $lngId, [switch]$AddCategories, [switch]$AddSubcategories, $captionOverride) $tblHeaderStyle = $global:txtWordTableHeaderStyle.Text $tblCategoryStyle = $global:txtWordCategoryHeaderStyle.Text @@ -559,7 +606,11 @@ function Add-DocTableItems $script:docTable.ApplyStyleHeadingRows = $true Set-DocObjectStyle $script:docTable $global:txtWordTableStyle.Text - if($lngId) + if($captionOverride) + { + $caption = $captionOverride + } + elseif($lngId) { $caption = "$((Get-LanguageString $lngId)) - $((Get-GraphObjectName $obj $objectType))" } diff --git a/Extensions/EndpointManager.psm1 b/Extensions/EndpointManager.psm1 index ac7dd86..a2950dc 100644 --- a/Extensions/EndpointManager.psm1 +++ b/Extensions/EndpointManager.psm1 @@ -10,7 +10,7 @@ This module is for the Endpoint Manager/Intune View. It manages Export/Import/Co #> function Get-ModuleVersion { - '3.1.9' + '3.1.10' } function Invoke-InitializeModule @@ -106,9 +106,8 @@ function Invoke-InitializeModule Permissons=@("DeviceManagementConfiguration.ReadWrite.All") PropertiesToRemove = @("privacyAccessControls") PostFileImportCommand = { Start-PostFileImportDeviceConfiguration @args } - PreCopyCommand = { Start-PreCopyDeviceConfiguration @args } PostCopyCommand = { Start-PostCopyDeviceConfiguration @args } - PostExportCommand = { Start-PostExportDeviceConfiguration @args } + PostGetCommand = { Start-PostGetDeviceConfiguration @args } GroupId = "DeviceConfiguration" }) @@ -204,6 +203,7 @@ function Invoke-InitializeModule Permissons=@("Organization.ReadWrite.All") Icon = "Branding" SkipRemoveProperties = @('Id') + GroupId = "Azure" }) Add-ViewItem (New-Object PSObject -Property @{ @@ -510,6 +510,7 @@ function Invoke-InitializeModule Permissons=@("DeviceManagementRBAC.ReadWrite.All") PostExportCommand = { Start-PostExportScopeTags @args } ImportOrder = 10 + DocumentAll = $true GroupId = "TenantAdmin" }) @@ -954,17 +955,17 @@ function Start-PostCopyDeviceConfiguration } } -function Start-PreCopyDeviceConfiguration +function Start-PostGetDeviceConfiguration { - param($obj, $objectType, $newName) - - if(($obj.omaSettings | measure).Count -gt 0) + param($obj, $objectType) + + if(($obj.Object.omaSettings | measure).Count -gt 0) { - foreach($omaSetting in ($obj.omaSettings | Where isEncrypted -eq $true)) + foreach($omaSetting in ($obj.Object.omaSettings | Where isEncrypted -eq $true)) { if($omaSetting.isEncrypted -eq $false) { continue } - $xmlValue = Invoke-GraphRequest -Url "/deviceManagement/deviceConfigurations/$($obj.Id)/getOmaSettingPlainTextValue(secretReferenceValueId='$($omaSetting.secretReferenceValueId)')" + $xmlValue = Invoke-GraphRequest -Url "/deviceManagement/deviceConfigurations/$($obj.Object.Id)/getOmaSettingPlainTextValue(secretReferenceValueId='$($omaSetting.secretReferenceValueId)')" if($xmlValue.Value) { $omaSetting.isEncrypted = $false @@ -982,49 +983,7 @@ function Start-PreCopyDeviceConfiguration } } } - } - - $false -} - -function Start-PostExportDeviceConfiguration -{ - param($obj, $objectType, $path) - - $fileName = "$path\$((Remove-InvalidFileNameChars (Get-GraphObjectName $obj $objectType))).json" - - if(($obj.omaSettings | measure).Count -gt 0) - { - $updated = $false - foreach($omaSetting in @(($obj.omaSettings | Where isEncrypted -eq $true))) - { - if($omaSetting.isEncrypted -eq $false) { continue } - - # Get decrypted value and mark OMA-URI setting as not encrypted - $xmlValue = Invoke-GraphRequest -Url "/deviceManagement/deviceConfigurations/$($obj.Id)/getOmaSettingPlainTextValue(secretReferenceValueId='$($omaSetting.secretReferenceValueId)')" - if($xmlValue.Value) - { - $omaSetting.isEncrypted = $false - $omaSetting.secretReferenceValueId = $null - if($omaSetting.'@odata.type' -eq "#microsoft.graph.omaSettingStringXml" -or - $omaSetting.'value@odata.type' -eq "#Binary") - { - $Bytes = [System.Text.Encoding]::UTF8.GetBytes($xmlValue.Value) - $omaSetting.value = [Convert]::ToBase64String($bytes) - } - else - { - $omaSetting.value = $xmlValue.Value - } - $updated = $true - } - } - - if($updated) - { - $obj | ConvertTo-Json -Depth 20 | Out-File -LiteralPath $fileName -Force - } - } + } } #endregion @@ -1251,6 +1210,22 @@ function Add-ScriptExtensions { $tmp.Children.Insert($index, $btnDownload) } + + $btnDownload = New-Object System.Windows.Controls.Button + $btnDownload.Content = 'Edit' + $btnDownload.Name = 'btnEdit' + $btnDownload.Margin = "0,0,5,0" + $btnDownload.Width = "100" + + $btnDownload.Add_Click({ + Invoke-EditScript + }) + + $tmp = $form.FindName($buttonPanel) + if($tmp) + { + $tmp.Children.Insert($index, $btnDownload) + } } function Add-ScriptExportExtensions @@ -1280,7 +1255,7 @@ function Start-PostExportScripts { Write-Log "Export script $($obj.FileName)" $fileName = [IO.Path]::Combine($exportPath, $obj.FileName) - [System.Text.Encoding]::ASCII.GetString([System.Convert]::FromBase64String($obj.scriptContent)) | Out-File -LiteralPath $fileName -Force + [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($obj.scriptContent)) | Out-File -LiteralPath $fileName -Force } } @@ -1306,6 +1281,87 @@ function Invoke-DownloadScript } } +function Invoke-EditScript +{ + if(-not $global:dgObjects.SelectedItem.Object.id) { return } + + $obj = (Get-GraphObject $global:dgObjects.SelectedItem $global:curObjectType) + Write-Status "" + if(-not $obj.Object.scriptContent) { return } + $script:currentScriptObject = $obj + + $script:editForm = Get-XamlObject ($global:AppRootFolder + "\Xaml\EditScriptDialog.xaml") + + if(-not $script:editForm) { return } + + Set-XamlProperty $script:editForm "txtEditScriptTitle" "Text" "Edit: $($obj.Object.displayName)" + + $scriptText = [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($obj.Object.scriptContent)) + Set-XamlProperty $script:editForm "txtScriptText" "Text" $scriptText + + $script:currentModal = $null + if($global:grdModal.Children.Count -gt 0) + { + $script:currentModal = $global:grdModal.Children[0] + } + + Add-XamlEvent $script:editForm "btnSaveScriptEdit" "add_click" ({ + $scriptText = Get-XamlProperty $script:editForm "txtScriptText" "Text" + $bytes = [System.Text.Encoding]::UTF8.GetBytes($scriptText) + $encodedText = [Convert]::ToBase64String($bytes) + + if($script:currentScriptObject.Object.scriptContent -ne $encodedText) + { + # Save script + if(([System.Windows.MessageBox]::Show("Are you sure you want to update the script?`n`nObject:`n$($script:currentScriptObject.displayName)", "Update script?", "YesNo", "Warning")) -eq "Yes") + { + Write-Status "Update $($script:currentScriptObject.displayName)" + $obj = $script:currentScriptObject.Object | ConvertTo-Json -Depth 20 | ConvertFrom-Json + $obj.scriptContent = $encodedText + Start-GraphPreImport $obj $script:currentScriptObject.ObjectType + foreach($prop in $script:currentScriptObject.ObjectType.PropertiesToRemoveForUpdate) + { + Remove-Property $obj $prop + } + Remove-Property $obj "Assignments" + Remove-Property $obj "isAssigned" + + $json = ConvertTo-Json $obj -Depth 15 + + $objectUpdated = (Invoke-GraphRequest -Url "$($script:currentScriptObject.ObjectType.API)/$($script:currentScriptObject.Object.Id)" -Content $json -HttpMethod "PATCH") + if(-not $objectUpdated) + { + Write-Log "Failed to update script" 3 + [System.Windows.MessageBox]::Show("Failed to save the script object. See log for more information","Update failed!", "OK", "Error") + } + Write-Status "" + } + } + + $global:grdModal.Children.Clear() + if($script:currentModal) + { + $global:grdModal.Children.Add($script:currentModal) + } + [System.Windows.Forms.Application]::DoEvents() + }) + + Add-XamlEvent $script:editForm "btnCancelScriptEdit" "add_click" ({ + $global:grdModal.Children.Clear() + if($script:currentModal) + { + $global:grdModal.Children.Add($script:currentModal) + } + [System.Windows.Forms.Application]::DoEvents() + }) + + $global:grdModal.Children.Clear() + $script:editForm.SetValue([System.Windows.Controls.Grid]::RowProperty,1) + $script:editForm.SetValue([System.Windows.Controls.Grid]::ColumnProperty,1) + $global:grdModal.Children.Add($script:editForm) | Out-Null + [System.Windows.Forms.Application]::DoEvents() +} + #endregion #region Terms and Conditions diff --git a/Extensions/IntuneAssignments.psm1 b/Extensions/IntuneAssignments.psm1 new file mode 100644 index 0000000..cd23ec0 --- /dev/null +++ b/Extensions/IntuneAssignments.psm1 @@ -0,0 +1,249 @@ +<# +.SYNOPSIS +Module for listing Intune assignments + +.DESCRIPTION + +.NOTES + Author: Mikael Karlsson +#> +function Get-ModuleVersion +{ + '1.0.0' +} + +function Invoke-InitializeModule +{ + Add-EMToolsViewItem (New-Object PSObject -Property @{ + Title = "Intune Assignments" + Id = "IntuneAssignments" + ViewID = "EMTools" + Permissons=@("DeviceManagementConfiguration.ReadWrite.All") + Icon="DeviceConfiguration" + ShowViewItem = { Show-EMToolsIntuneAssignments } + }) +} + +function Show-EMToolsIntuneAssignments +{ + if(-not $script:frmIntuneAssignments) + { + $script:frmIntuneAssignments = Get-XamlObject ($global:AppRootFolder + "\Xaml\EndpointManagerToolsIntuneAssignments.xaml") #-AddVariables + + if(-not $script:frmIntuneAssignments) { return } + + Add-XamlEvent $script:frmIntuneAssignments "btnBrowseIntuneAssignmentsExportPath" "add_click" ({ + $folder = Get-Folder (Get-XamlProperty $script:frmIntuneAssignments "txtIntuneAssignmentsExportPath" "Text") "Select root folder for exported files" + if($folder) + { + Set-XamlProperty $script:frmIntuneAssignments "txtIntuneAssignmentsExportPath" "Text" $folder + } + }) + + Add-XamlEvent $script:frmIntuneAssignments "btnGetIntuneAssignments" "add_click" ({ + $folder = Get-XamlProperty $script:frmIntuneAssignments "txtIntuneAssignmentsExportPath" "Text" + if($folder) + { + Write-Status "Get Intune Assignments" + Get-EMIntuneAssignments $folder + Write-Status "" + } + }) + + Add-XamlEvent $script:frmIntuneAssignments "btnIntuneAssignmentsCopy" "add_click" ({ + $script:objAssignments | Select Name, Type, IncludedString, ExcludedString | ConvertTo-Csv -NoTypeInformation | Set-Clipboard + }) + + Add-XamlEvent $script:frmIntuneAssignments "btnIntuneAssignmentsSave" "add_click" ({ + + $dlgSave = New-Object -Typename System.Windows.Forms.SaveFileDialog + #$dlgSave.InitialDirectory = Get-SettingValue "IntuneRootFolder" $env:Temp + $dlgSave.FileName = $obj.FileName + $sf.DefaultExt = "*.csv" + $sf.Filter = "CSV (*.csv)|*.csv|All files (*.*)| *.*" + if($dlgSave.ShowDialog() -eq [System.Windows.Forms.DialogResult]::OK -and $dlgSave.Filename) + { + $script:objAssignments | Select Name, Type, IncludedString, ExcludedString | ConvertTo-Csv -NoTypeInformation | Out-File -LiteralPath $dlgSave.Filename -Encoding UTF8 -Force + } + }) + } + + $global:grdToolsMain.Children.Clear() + $global:grdToolsMain.Children.Add($frmIntuneAssignments) +} + +function Get-EMIntuneAssignmentInfo +{ + param($rootDir) + + Write-Status "Gather Export Information" + + $path = "$rootDir\Groups" + + $script:htGroups = @{} + + foreach($file in (Get-Item -path "$path\*.json")) + { + $graphObj = (ConvertFrom-Json (Get-Content -LiteralPath $file.FullName -Raw)) + $htGroups.Add($graphObj.Id, $graphObj) + } + + $script:fileArr = @() + + foreach($path in [IO.Directory]::EnumerateDirectories($rootDir)) + { + if($path -eq "$rootDir\Groups") { continue } + + foreach($file in (Get-Item -path "$path\*.json" -Exclude @("*_settings.json","*_assignments.json"))) + { + $graphObj = (ConvertFrom-Json (Get-Content -LiteralPath $file.FullName -Raw)) + + $obj = New-Object PSObject -Property @{ + FileName = $file.Name + FileInfo = $file + Selected = $SelectedStatus + Object = $graphObj + } + + $script:fileArr += $obj + } + } +} + +function Get-EMIntuneAssignments +{ + param($folder) + + Set-XamlProperty $script:frmIntuneAssignments "dgIntuneAssignments" "ItemsSource" $null + + $folderDI = [IO.DirectoryInfo]$folder + if(-not $folderDI.Exists) { return } + + Get-EMIntuneAssignmentInfo $folder + + Write-Status "Collect exported assignments" + + $script:objAssignments = @() + + foreach($fileObj in $script:fileArr) + { + $obj = New-Object PSObject -Property @{ + Object = $fileObj.Object + Name = $fileObj.Object.DisplayName + Type = $null + Included = $null + Excluded = $null + IncludedString = "" + ExcludedString = "" + } + $obj.Included = @() + $obj.Excluded = @() + if($fileObj.Object.'@OData.Type') + { + $obj.Type = $fileObj.Object.'@OData.Type'.Split('.')[-1] + } + else + { + $obj.Type = $file.Directory.Parent.Name + } + + foreach($assignment in $fileObj.Object.assignments) + { + $assignmentObj = $null + $included = $true + + if($assignment.target.'@odata.type' -eq "#microsoft.graph.groupAssignmentTarget" -or + $assignment.target.'@odata.type' -eq "#microsoft.graph.exclusionGroupAssignmentTarget") + { + if($script:htGroups.ContainsKey($assignment.target.groupId)) + { + $assignmentObj = $script:htGroups[$assignment.target.groupId].displayName + } + else + { + Write-Warning "Could not find a group with ID $($assignment.target.groupId)" + } + $included = $assignment.target.'@odata.type' -eq "#microsoft.graph.groupAssignmentTarget" + } + elseif($assignment.target.'@odata.type' -eq "#microsoft.graph.allDevicesAssignmentTarget") + { + $assignmentObj = "All Devices" + } + elseif($assignment.target.'@odata.type' -eq "#microsoft.graph.allLicensedUsersAssignmentTarget") + { + $assignmentObj = "All Users" + } + + if($included) + { + $obj.Included += $assignmentObj + } + else + { + $obj.Excluded += $assignmentObj + } + } + $obj.IncludedString = $obj.Included -join ";" + $obj.ExcludedString = $obj.Excluded -join ";" + + $script:objAssignments += $obj + } + + Add-XamlEvent $script:frmIntuneAssignments "txtIntuneAssignmentsFilter" "Add_LostFocus" ({ + Invoke-IntueAssignmentFilterBoxChanged $this + }) + + Add-XamlEvent $script:frmIntuneAssignments "txtIntuneAssignmentsFilter" "Add_GotFocus" ({ + if($this.Tag -eq "1" -and $this.Text -eq "Filter") { $this.Text = "" } + Invoke-IntueAssignmentFilterBoxChanged $this ($script:frmIntuneAssignments.FindName("dgIntuneAssignments")) + }) + + Add-XamlEvent $script:frmIntuneAssignments "txtIntuneAssignmentsFilter" "Add_TextChanged" ({ + Invoke-IntueAssignmentFilterBoxChanged $this ($script:frmIntuneAssignments.FindName("dgIntuneAssignments")) + }) + + Invoke-IntueAssignmentFilterBoxChanged ($script:frmIntuneAssignments.FindName("txtIntuneAssignmentsFilter")) ($script:frmIntuneAssignments.FindName("dgIntuneAssignments")) + + $ocList = [System.Collections.ObjectModel.ObservableCollection[object]]::new(@($script:objAssignments)) + + Set-XamlProperty $script:frmIntuneAssignments "dgIntuneAssignments" "ItemsSource" ([System.Windows.Data.CollectionViewSource]::GetDefaultView($ocList)) +} + +function Invoke-IntueAssignmentFilterBoxChanged +{ + param($txtBox, $dgObject) + + $filter = $null + + if($txtBox.Text.Trim() -eq "" -and $txtBox.IsFocused -eq $false) + { + $txtBox.FontStyle = "Italic" + $txtBox.Tag = 1 + $txtBox.Text = "Filter" + $txtBox.Foreground="Lightgray" + } + else + { + if($txtBox.Tag -eq "1" -and $txtBox.Text -eq "Filter" -and $txtBox.IsFocused -eq $false) { return } + $txtBox.FontStyle = "Normal" + $txtBox.Tag = $null + $txtBox.Foreground="Black" + $txtBox.Background="White" + + if($txtBox.Text) + { + $filter = { + param ($item) + + return ( $item.Name -match [regex]::Escape($txtBox.Text) -or $item.IncludedString -match [regex]::Escape($txtBox.Text) -or $item.ExcludedString -match [regex]::Escape($txtBox.Text) ) + } + } + } + + if($dgObject.ItemsSource -is [System.Windows.Data.ListCollectionView]) + { + # This causes odd behaviour with focus e.g. and item has to be clicked twice to be selected + $dgObject.ItemsSource.Filter = $filter + $dgObject.ItemsSource.Refresh() + } +} diff --git a/Extensions/IntuneTools.psm1 b/Extensions/IntuneTools.psm1 index 11c5712..cb7ece2 100644 --- a/Extensions/IntuneTools.psm1 +++ b/Extensions/IntuneTools.psm1 @@ -17,53 +17,19 @@ This module is for the Intune Tools View. .NOTES Author: Mikael Karlsson #> + +$global:EMToolsViewObject = $null + function Get-ModuleVersion { - '1.0.0' + '1.0.1' } function Invoke-InitializeModule { - $viewPanel = Get-XamlObject ($global:AppRootFolder + "\Xaml\EndpointManagerTools.xaml") -AddVariables - - if(-not $viewPanel) { return } - - Add-ADMXRegClasses - - #Add menu group and items - $global:EMToolsViewObject = (New-Object PSObject -Property @{ - Title = "Intune Tools" - Description = "Additional tools for managing Intune" - ID = "EMTools" - ViewPanel = $viewPanel - ItemChanged = { Show-EMTool } - Activating = { Invoke-EMToolsActivatingView } - Authentication = (Get-MSALAuthenticationObject) - Authenticate = { Invoke-EMToolsAuthenticateToMSAL } - AppInfo = (Get-GraphAppInfo "EM" "d1ddf0e4-d672-4dae-b554-9d5bdfd93547") - SaveSettings = { Invoke-EMSaveSettings } - Permissions = @() - }) - - Add-ViewObject $global:EMToolsViewObject + Add-ADMXRegClasses - Add-ViewItem (New-Object PSObject -Property @{ - Title = "ADMX Import" - Id = "ADMXImport" - ViewID = "EMTools" - Permissons=@("DeviceManagementConfiguration.ReadWrite.All") - Icon="DeviceConfiguration" - ShowViewItem = { Show-ADMXIngestion } - }) - - Add-ViewItem (New-Object PSObject -Property @{ - Title = "Reg Values" - Id = "ADMXRegValues" - ViewID = "EMTools" - Permissons=@("DeviceManagementConfiguration.ReadWrite.All") - Icon="DeviceConfiguration" - ShowViewItem = { Show-ADMXRegValues } - }) + Add-EMToolsViewItem # https://docs.microsoft.com/en-us/windows/client-management/mdm/win32-and-centennial-app-policy-configuration # ADMX ingestion cannot write to these paths: @@ -95,6 +61,58 @@ function Invoke-InitializeModule "@ } +function Add-EMToolsViewItem +{ + param($viewItem) + + if(-not $global:EMToolsViewObject) + { + $viewPanel = Get-XamlObject ($global:AppRootFolder + "\Xaml\EndpointManagerTools.xaml") -AddVariables + + if(-not $viewPanel) { return } + + #Add menu group and items + $global:EMToolsViewObject = (New-Object PSObject -Property @{ + Title = "Intune Tools" + Description = "Additional tools for managing Intune" + ID = "EMTools" + ViewPanel = $viewPanel + ItemChanged = { Show-EMTool } + Activating = { Invoke-EMToolsActivatingView } + Authentication = (Get-MSALAuthenticationObject) + Authenticate = { Invoke-EMToolsAuthenticateToMSAL } + AppInfo = (Get-GraphAppInfo "EM" "d1ddf0e4-d672-4dae-b554-9d5bdfd93547") + SaveSettings = { Invoke-EMSaveSettings } + Permissions = @() + }) + + Add-ViewObject $global:EMToolsViewObject + + Add-ViewItem (New-Object PSObject -Property @{ + Title = "ADMX Import" + Id = "ADMXImport" + ViewID = "EMTools" + Permissons=@("DeviceManagementConfiguration.ReadWrite.All") + Icon="DeviceConfiguration" + ShowViewItem = { Show-ADMXIngestion } + }) + + Add-ViewItem (New-Object PSObject -Property @{ + Title = "Reg Values" + Id = "ADMXRegValues" + ViewID = "EMTools" + Permissons=@("DeviceManagementConfiguration.ReadWrite.All") + Icon="DeviceConfiguration" + ShowViewItem = { Show-ADMXRegValues } + }) + } + + if($viewItem) + { + Add-ViewItem $viewItem + } +} + function Invoke-EMToolsActivatingView { diff --git a/README.md b/README.md index d504119..e605c73 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ The script can import the exported json files in multiple ways. * **Skip if object exists:** The script will look if there is an existing object with the same name and type. It will not import the file if existing object is detected -* **Replace (Preview):** If a existing object is detected, the script will +* **Replace (Preview):** If an existing object is detected, the script will * Import the file without assignments * Copy assignments from the existing object @@ -52,7 +52,7 @@ The script can import the exported json files in multiple ways. * **Update (Preview):** This will update the existing object. - Update does not support all the properties that import does and object types behaves differently during update e.g. Settings for Endpoint Security objects will not be cleared. There is no API for removing settings only adding. If a settings does not in the import file, the existing setting will be set to Not Configured. Settings Catalog replaces the whole settings property during update. + The update APIs does not support all the properties that the import API sdoes and object types behaves differently during update e.g. Settings for **Endpoint Security** objects will not be cleared. There is no API for removing settings, only adding. If a setting does not exist in the import file, the existing setting will be set to *Not Configured*. **Settings Catalog** replaces the whole settings property during update. This has been tested with all supported object types *except* Import Scripts (Shell), Android OEM Config and Apple Enrollment Types. @@ -115,6 +115,11 @@ Additional Intune Tools is included in the script. * List (Key/Value pair) * This tool creates a custom ADMX file based on the specified registry keys. +* Intune Assignments + * Quickly gather all assignments from an export + * Easily identify all profiles/polices a group is assigned to + * Export as CSV to analyse in Excel + See [ADMX Import](ADMXImport.md) for more information about the ADMX tools ## Change log @@ -187,16 +192,18 @@ Android Store Apps are **not** imported. The Create API is documented in Microso Using multiple tenants support causes multiple logins/consent prompts the first time if 'Microsoft Graph PowerShell' is used. Querying the API for tenant list uses a different scope that is not included by default in the 'Microsoft Graph PowerShell' app. -Using multiple tenants support *might* cause and endless loop in the login screen and cause duplicate accounts in token cache. Actual cause is not found yet but it happens on rare occasions and it looks like it happens when a guest account is used. Workaround: Cancel the login, restart the script, logout and restart the script again. +~~Using multiple tenants support *might* cause and endless loop in the login screen and cause duplicate accounts in token cache. Actual cause is not found yet but it happens on rare occasions and it looks like it happens when a guest account is used. Workaround: Cancel the login, restart the script, logout and restart the script again.~~ - Not seen this in a long time. Please create issue if this happens When multi tenant settings is Enabled/Disabled, the Profile Info is not updated until the account is changed or app is restarted. Profile Info popup is built after logon. -The list applications API might not list an imported app immediately after the import. Click Refresh to reload the application objects. +The *List Applications* API might not list an imported app immediately after the import. Click *Refresh* to reload the application objects. When using the filter box to search for items, the checkbox must be clicked twice to select an item. Logout will only clear the token from cache and not from the browser e.g. if login is triggered after a logout, the user will still be listed in the 'Select user' dialog. +Referenced settings will NOT be imported/copied. There is no value stored in a property on the object for these settings. Example: A VPN profile has certificates as referenced properties. The certificates must be added manually after import/copy. + See [Documentation](Documentation.md) for issues regarding the documentation process. ## TIP diff --git a/ReleaseNotes.md b/ReleaseNotes.md index 3f29b46..ee3aa73 100644 --- a/ReleaseNotes.md +++ b/ReleaseNotes.md @@ -1,5 +1,41 @@ # Release Notes +## 3.2.1 - 2021-09-04 + +**New features** + +- PowerShell Scripts can now be viewed and edited in the tool +- Intune Tools + - Added Intune Assignment - Simple tool to quickly gather all assignments from exported objects +- Documentation + - Added documentation support for + - Scope (Tags) + Note: This will generate one section for all Scopes in the word document + - Health Scripts (Remediation Scripts) + +**Fixes** + +* General + + * Custom Device Configuration profiles will convert encrypted OMA URI values when the full object is loaded instead during Copy and Export. + * All file exports are now saved in UTF8 + +* Compare + + * Fixed issue where the wrong name was specified if the compare object was missing + * Administrative Templates, Settings Catalog and Endpoint Security will always compare based on documentation. + * Encrypted OMA URI values are now supported + +* Documentation + + * Minor updates to support documenting all objects of a specific object type in one section instead of one section per object + * Fixed "Not Configured" value issues for empty arrays + * Fixed documentation of Microsoft 365 Apps when XML is used + * Minor updates on VPN profile documentation. EAP XML will be in XML format and removed duplicate SplitTunneling values. + Note: The EAP XML will require manual update of the column sizes in Word + + + ## 3.2.0 - 2021-08-15 **New features** diff --git a/Xaml/EditScriptDialog.xaml b/Xaml/EditScriptDialog.xaml new file mode 100644 index 0000000..8d8055a --- /dev/null +++ b/Xaml/EditScriptDialog.xaml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Xaml/EndpointManagerToolsIntuneAssignments.xaml b/Xaml/EndpointManagerToolsIntuneAssignments.xaml new file mode 100644 index 0000000..058b8ef --- /dev/null +++ b/Xaml/EndpointManagerToolsIntuneAssignments.xaml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +