@nsis/dent 0.12.3 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -2
- package/dist/dent.mjs +3 -4
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -4,10 +4,12 @@
|
|
|
4
4
|
|
|
5
5
|

|
|
6
6
|
[](https://www.npmjs.org/package/@nsis/dent)
|
|
7
|
-
[](https://github.com/idleberg/nsis-javascript-tools/actions)
|
|
8
8
|
|
|
9
9
|
> [!NOTE]
|
|
10
|
-
> This is the repository for the formatting library. Chances are you
|
|
10
|
+
> This is the repository for the formatting library powering the [Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=idleberg.nsis) and [Pulsar](https://packages.pulsar-edit.dev/packages/language-nsis) packages. Chances are you were looking for the [CLI tool](https://github.com/idleberg/nsis-javascript-tools/tree/main/packages/dent-cli).
|
|
11
|
+
|
|
12
|
+
[Demo Time](https://idleberg.github.io/nsis-javascript-tools/dent/) 🙌
|
|
11
13
|
|
|
12
14
|
## Installation
|
|
13
15
|
|
package/dist/dent.mjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import{platform as e}from"node:os";import{parse as t}from"@nsis/parser";import{detectNewline as n}from"detect-newline";function r(e){return new Set(e.map(e=>e.toLowerCase()))}const i={open:r([`!if`,`!ifdef`,`!ifmacrodef`,`!ifmacrondef`,`!ifndef`,`!macro`,"${Do}","${DoUntil}","${DoWhile}","${For}","${ForEach}","${If}","${IfNot}","${MementoSection}","${MementoUnselectedSection}","${Select}","${Switch}","${Unless}",`Function`,`PageEx`,`Section`,`SectionGroup`]),case:r(["${Case}","${Case2}","${Case3}","${Case4}","${Case5}","${CaseElse}","${Default}"]),close:r([`!endif`,`!macroend`,"${EndIf}","${EndSelect}","${EndSwitch}","${EndWhile}","${Loop}","${LoopUntil}","${LoopWhile}","${MementoSectionEnd}","${Next}","${While}",`FunctionEnd`,`PageExEnd`,`SectionEnd`,`SectionGroupEnd`]),mid:r([`!else`,`!elseif`,"${Else}","${ElseIf}","${ElseIfNot}","${ElseUnless}","${AndIf}","${AndIfNot}","${AndUnless}","${OrIf}","${OrIfNot}","${OrUnless}"]),closeAfter:r(["${Break}"])};function a(e){if(e.type!==`instruction`)return!1;let t=e.keyword.toLowerCase();return i.open.has(t)||i.case.has(t)}function o(e){return e.type===`instruction`&&i.close.has(e.keyword.toLowerCase())}function s(e){let t=[],n;for(let r=0;r<e.length;r++){let i=e[r],s=t.length>0&&t[t.length-1].type===`blank`;if(n&&!s&&i.type!==`blank`)if(a(i)&&!a(n)&&n.type!==`comment`)t.push({type:`blank`});else if(i.type===`comment`&&!a(n)&&n.type!==`comment`){let n=r+1;for(;n<e.length&&(e[n].type===`blank`||e[n].type===`comment`);)n++;n<e.length&&a(e[n])&&t.push({type:`blank`})}else o(n)&&!o(i)&&!a(i)&&t.push({type:`blank`});t.push(i),i.type!==`blank`&&(n=i)}return t}function c(e){let t=0;for(;t<e.length&&e[t].type===`blank`;)t++;let n=e.length-1;for(;n>=t&&e[n].type===`blank`;)n--;let r=[],i=!1;for(let a=t;a<=n;a++){let t=e[a];t.type===`blank`?i||=(r.push(t),!0):(r.push(t),i=!1)}return r}const l=new Map([[`!addincludedir`,`!addincludedir`],[`!addplugindir`,`!addplugindir`],[`!appendfile`,`!appendfile`],[`!appendmemfile`,`!appendmemfile`],[`!assert`,`!assert`],[`!cd`,`!cd`],[`!define`,`!define`],[`!delfile`,`!delfile`],[`!echo`,`!echo`],[`!else`,`!else`],[`!elseif`,`!elseif`],[`!endif`,`!endif`],[`!error`,`!error`],[`!execute`,`!execute`],[`!finalize`,`!finalize`],[`!getdllversion`,`!getdllversion`],[`!gettlbversion`,`!gettlbversion`],[`!if`,`!if`],[`!ifdef`,`!ifdef`],[`!ifmacrodef`,`!ifmacrodef`],[`!ifmacrondef`,`!ifmacrondef`],[`!ifndef`,`!ifndef`],[`!include`,`!include`],[`!insertmacro`,`!insertmacro`],[`!macro`,`!macro`],[`!macroend`,`!macroend`],[`!macroundef`,`!macroundef`],[`!makensis`,`!makensis`],[`!packhdr`,`!packhdr`],[`!pragma`,`!pragma`],[`!searchparse`,`!searchparse`],[`!searchreplace`,`!searchreplace`],[`!system`,`!system`],[`!tempfile`,`!tempfile`],[`!undef`,`!undef`],[`!uninstfinalize`,`!uninstfinalize`],[`!verbose`,`!verbose`],[`!warning`,`!warning`],[`abort`,`Abort`],[`addbrandingimage`,`AddBrandingImage`],[`addsize`,`AddSize`],[`allowrootdirinstall`,`AllowRootDirInstall`],[`allowskipfiles`,`AllowSkipFiles`],[`autoclosewindow`,`AutoCloseWindow`],[`bgfont`,`BGFont`],[`bggradient`,`BGGradient`],[`brandingtext`,`BrandingText`],[`bringtofront`,`BringToFront`],[`call`,`Call`],[`callinstdll`,`CallInstDLL`],[`caption`,`Caption`],[`changeui`,`ChangeUI`],[`checkbitmap`,`CheckBitmap`],[`clearerrors`,`ClearErrors`],[`completedtext`,`CompletedText`],[`componenttext`,`ComponentText`],[`copyfiles`,`CopyFiles`],[`cpu`,`CPU`],[`crccheck`,`CRCCheck`],[`createdirectory`,`CreateDirectory`],[`createfont`,`CreateFont`],[`createshortcut`,`CreateShortcut`],[`delete`,`Delete`],[`deleteinisec`,`DeleteINISec`],[`deleteinistr`,`DeleteINIStr`],[`deleteregkey`,`DeleteRegKey`],[`deleteregvalue`,`DeleteRegValue`],[`detailprint`,`DetailPrint`],[`detailsbuttontext`,`DetailsButtonText`],[`dirshow`,`DirShow`],[`dirtext`,`DirText`],[`dirvar`,`DirVar`],[`dirverify`,`DirVerify`],[`enablewindow`,`EnableWindow`],[`enumregkey`,`EnumRegKey`],[`enumregvalue`,`EnumRegValue`],[`exch`,`Exch`],[`exec`,`Exec`],[`execshell`,`ExecShell`],[`execshellwait`,`ExecShellWait`],[`execwait`,`ExecWait`],[`expandenvstrings`,`ExpandEnvStrings`],[`file`,`File`],[`filebufsize`,`FileBufSize`],[`fileclose`,`FileClose`],[`fileerrortext`,`FileErrorText`],[`fileopen`,`FileOpen`],[`fileread`,`FileRead`],[`filereadbyte`,`FileReadByte`],[`filereadutf16le`,`FileReadUTF16LE`],[`filereadword`,`FileReadWord`],[`fileseek`,`FileSeek`],[`filewrite`,`FileWrite`],[`filewritebyte`,`FileWriteByte`],[`filewriteutf16le`,`FileWriteUTF16LE`],[`filewriteword`,`FileWriteWord`],[`findclose`,`FindClose`],[`findfirst`,`FindFirst`],[`findnext`,`FindNext`],[`findwindow`,`FindWindow`],[`flushini`,`FlushINI`],[`function`,`Function`],[`functionend`,`FunctionEnd`],[`getcurinsttype`,`GetCurInstType`],[`getcurrentaddress`,`GetCurrentAddress`],[`getdlgitem`,`GetDlgItem`],[`getdllversion`,`GetDLLVersion`],[`getdllversionlocal`,`GetDLLVersionLocal`],[`geterrorlevel`,`GetErrorLevel`],[`getfiletime`,`GetFileTime`],[`getfiletimelocal`,`GetFileTimeLocal`],[`getfullpathname`,`GetFullPathName`],[`getfunctionaddress`,`GetFunctionAddress`],[`getinstdirerror`,`GetInstDirError`],[`getknownfolderpath`,`GetKnownFolderPath`],[`getlabeladdress`,`GetLabelAddress`],[`getregview`,`GetRegView`],[`getshellvarcontext`,`GetShellVarContext`],[`gettempfilename`,`GetTempFileName`],[`getwinver`,`GetWinVer`],[`goto`,`Goto`],[`hidewindow`,`HideWindow`],[`icon`,`Icon`],[`ifabort`,`IfAbort`],[`ifaltregview`,`IfAltRegView`],[`iferrors`,`IfErrors`],[`iffileexists`,`IfFileExists`],[`ifrebootflag`,`IfRebootFlag`],[`ifrtllanguage`,`IfRtlLanguage`],[`ifshellvarcontextall`,`IfShellVarContextAll`],[`ifsilent`,`IfSilent`],[`initpluginsdir`,`InitPluginsDir`],[`installbuttontext`,`InstallButtonText`],[`installcolors`,`InstallColors`],[`installdir`,`InstallDir`],[`installdirregkey`,`InstallDirRegKey`],[`instprogressflags`,`InstProgressFlags`],[`insttype`,`InstType`],[`insttypegettext`,`InstTypeGetText`],[`insttypesettext`,`InstTypeSetText`],[`int64cmp`,`Int64Cmp`],[`int64cmpu`,`Int64CmpU`],[`int64fmt`,`Int64Fmt`],[`intcmp`,`IntCmp`],[`intcmpu`,`IntCmpU`],[`intfmt`,`IntFmt`],[`intop`,`IntOp`],[`intptrcmp`,`IntPtrCmp`],[`intptrcmpu`,`IntPtrCmpU`],[`intptrop`,`IntPtrOp`],[`iswindow`,`IsWindow`],[`langstring`,`LangString`],[`langstringup`,`LangStringUP`],[`licensebkcolor`,`LicenseBkColor`],[`licensedata`,`LicenseData`],[`licenseforceselection`,`LicenseForceSelection`],[`licenselangstring`,`LicenseLangString`],[`licensetext`,`LicenseText`],[`loadandsetimage`,`LoadAndSetImage`],[`loadlanguagefile`,`LoadLanguageFile`],[`lockwindow`,`LockWindow`],[`logset`,`LogSet`],[`logtext`,`LogText`],[`manifestappendcustomstring`,`ManifestAppendCustomString`],[`manifestdisablewindowfiltering`,`ManifestDisableWindowFiltering`],[`manifestdpiaware`,`ManifestDPIAware`],[`manifestdpiawareness`,`ManifestDPIAwareness`],[`manifestgdiscaling`,`ManifestGdiScaling`],[`manifestlongpathaware`,`ManifestLongPathAware`],[`manifestmaxversiontested`,`ManifestMaxVersionTested`],[`manifestsupportedos`,`ManifestSupportedOS`],[`messagebox`,`MessageBox`],[`miscbuttontext`,`MiscButtonText`],[`name`,`Name`],[`nop`,`Nop`],[`outfile`,`OutFile`],[`page`,`Page`],[`pagecallbacks`,`PageCallbacks`],[`pageex`,`PageEx`],[`pageexend`,`PageExEnd`],[`peaddresource`,`PEAddResource`],[`pedllcharacteristics`,`PEDllCharacteristics`],[`peremoveresource`,`PERemoveResource`],[`pesubsysver`,`PESubsysVer`],[`pop`,`Pop`],[`push`,`Push`],[`quit`,`Quit`],[`readenvstr`,`ReadEnvStr`],[`readinistr`,`ReadINIStr`],[`readmemory`,`ReadMemory`],[`readregdword`,`ReadRegDWORD`],[`readregstr`,`ReadRegStr`],[`reboot`,`Reboot`],[`regdll`,`RegDLL`],[`rename`,`Rename`],[`requestexecutionlevel`,`RequestExecutionLevel`],[`reservefile`,`ReserveFile`],[`return`,`Return`],[`rmdir`,`RMDir`],[`searchpath`,`SearchPath`],[`section`,`Section`],[`sectionend`,`SectionEnd`],[`sectiongetflags`,`SectionGetFlags`],[`sectiongetinsttypes`,`SectionGetInstTypes`],[`sectiongetsize`,`SectionGetSize`],[`sectiongettext`,`SectionGetText`],[`sectiongroup`,`SectionGroup`],[`sectiongroupend`,`SectionGroupEnd`],[`sectionin`,`SectionIn`],[`sectioninsttype`,`SectionInstType`],[`sectionsetflags`,`SectionSetFlags`],[`sectionsetinsttypes`,`SectionSetInstTypes`],[`sectionsetsize`,`SectionSetSize`],[`sectionsettext`,`SectionSetText`],[`sendmessage`,`SendMessage`],[`setautoclose`,`SetAutoClose`],[`setbrandingimage`,`SetBrandingImage`],[`setcompress`,`SetCompress`],[`setcompressionlevel`,`SetCompressionLevel`],[`setcompressor`,`SetCompressor`],[`setcompressordictsize`,`SetCompressorDictSize`],[`setctlcolors`,`SetCtlColors`],[`setcurinsttype`,`SetCurInstType`],[`setdatablockoptimize`,`SetDatablockOptimize`],[`setdatesave`,`SetDateSave`],[`setdetailsprint`,`SetDetailsPrint`],[`setdetailsview`,`SetDetailsView`],[`seterrorlevel`,`SetErrorLevel`],[`seterrors`,`SetErrors`],[`setfileattributes`,`SetFileAttributes`],[`setfont`,`SetFont`],[`setoutpath`,`SetOutPath`],[`setoverwrite`,`SetOverwrite`],[`setpluginunload`,`SetPluginUnload`],[`setrebootflag`,`SetRebootFlag`],[`setregview`,`SetRegView`],[`setshellvarcontext`,`SetShellVarContext`],[`setsilent`,`SetSilent`],[`showinstdetails`,`ShowInstDetails`],[`showuninstdetails`,`ShowUninstDetails`],[`showwindow`,`ShowWindow`],[`silentinstall`,`SilentInstall`],[`silentuninstall`,`SilentUnInstall`],[`sleep`,`Sleep`],[`spacetexts`,`SpaceTexts`],[`strcmp`,`StrCmp`],[`strcmps`,`StrCmpS`],[`strcpy`,`StrCpy`],[`strlen`,`StrLen`],[`subcaption`,`SubCaption`],[`subsection`,`SubSection`],[`subsectionend`,`SubSectionEnd`],[`target`,`Target`],[`unicode`,`Unicode`],[`uninstallbuttontext`,`UninstallButtonText`],[`uninstallcaption`,`UninstallCaption`],[`uninstallexename`,`UninstallExeName`],[`uninstallicon`,`UninstallIcon`],[`uninstallsubcaption`,`UninstallSubCaption`],[`uninstalltext`,`UninstallText`],[`uninstpage`,`UninstPage`],[`unregdll`,`UnRegDLL`],[`unsafestrcpy`,`UnsafeStrCpy`],[`var`,`Var`],[`viaddversionkey`,`VIAddVersionKey`],[`vifileversion`,`VIFileVersion`],[`viproductversion`,`VIProductVersion`],[`windowicon`,`WindowIcon`],[`writeinistr`,`WriteINIStr`],[`writeregbin`,`WriteRegBin`],[`writeregdword`,`WriteRegDWORD`],[`writeregexpandstr`,`WriteRegExpandStr`],[`writeregmultistr`,`WriteRegMultiStr`],[`writeregnone`,`WriteRegNone`],[`writeregstr`,`WriteRegStr`],[`writeuninstaller`,`WriteUninstaller`],[`xpstyle`,`XPStyle`]]),u=new Map([["${bannertrimpath}","${BannerTrimPath}"],["${dirstate}","${DirState}"],["${drivespace}","${DriveSpace}"],["${getbasename}","${GetBaseName}"],["${getdrives}","${GetDrives}"],["${getexename}","${GetExeName}"],["${getexepath}","${GetExePath}"],["${getfileattributes}","${GetFileAttributes}"],["${getfileext}","${GetFileExt}"],["${getfilename}","${GetFileName}"],["${getfileversion}","${GetFileVersion}"],["${getoptions}","${GetOptions}"],["${getoptionss}","${GetOptionsS}"],["${getparameters}","${GetParameters}"],["${getparent}","${GetParent}"],["${getroot}","${GetRoot}"],["${getsize}","${GetSize}"],["${gettime}","${GetTime}"],["${locate}","${Locate}"],["${refreshshellicons}","${RefreshShellIcons}"],["${andif}","${AndIf}"],["${andifnot}","${AndIfNot}"],["${andunless}","${AndUnless}"],["${break}","${Break}"],["${case}","${Case}"],["${caseelse}","${CaseElse}"],["${continue}","${Continue}"],["${default}","${Default}"],["${do}","${Do}"],["${dountil}","${DoUntil}"],["${dowhile}","${DoWhile}"],["${else}","${Else}"],["${elseif}","${ElseIf}"],["${elseifnot}","${ElseIfNot}"],["${elseunless}","${ElseUnless}"],["${endif}","${EndIf}"],["${endselect}","${EndSelect}"],["${endswitch}","${EndSwitch}"],["${exitdo}","${ExitDo}"],["${exitfor}","${ExitFor}"],["${exitwhile}","${ExitWhile}"],["${for}","${For}"],["${foreach}","${ForEach}"],["${if}","${If}"],["${ifcmd}","${IfCmd}"],["${ifnot}","${IfNot}"],["${ifnotthen}","${IfNotThen}"],["${ifthen}","${IfThen}"],["${loop}","${Loop}"],["${loopuntil}","${LoopUntil}"],["${loopwhile}","${LoopWhile}"],["${orif}","${OrIf}"],["${orifnot}","${OrIfNot}"],["${orunless}","${OrUnless}"],["${select}","${Select}"],["${switch}","${Switch}"],["${unless}","${Unless}"],["${while}","${While}"],["${mementosection}","${MementoSection}"],["${mementosectiondone}","${MementoSectionDone}"],["${mementosectionend}","${MementoSectionEnd}"],["${mementosectionrestore}","${MementoSectionRestore}"],["${mementosectionsave}","${MementoSectionSave}"],["${mementounselectedsection}","${MementoUnselectedSection}"],["${strcase}","${StrCase}"],["${strclb}","${StrClb}"],["${striotonsis}","${StrIOToNSIS}"],["${strloc}","${StrLoc}"],["${strnsistoio}","${StrNSISToIO}"],["${strrep}","${StrRep}"],["${strsort}","${StrSort}"],["${strstr}","${StrStr}"],["${strstradv}","${StrStrAdv}"],["${strtok}","${StrTok}"],["${strtrimnewlines}","${StrTrimNewLines}"],["${configread}","${ConfigRead}"],["${configreads}","${ConfigReadS}"],["${configwrite}","${ConfigWrite}"],["${configwrites}","${ConfigWriteS}"],["${filejoin}","${FileJoin}"],["${filereadfromend}","${FileReadFromEnd}"],["${filerecode}","${FileRecode}"],["${linefind}","${LineFind}"],["${lineread}","${LineRead}"],["${linesum}","${LineSum}"],["${textcompare}","${TextCompare}"],["${textcompares}","${TextCompareS}"],["${trimnewlines}","${TrimNewLines}"],["${atleastservicepack}","${AtLeastServicePack}"],["${atleastwin10}","${AtLeastWin10}"],["${atleastwin11}","${AtLeastWin11}"],["${atleastwin2000}","${AtLeastWin2000}"],["${atleastwin2003}","${AtLeastWin2003}"],["${atleastwin2008}","${AtLeastWin2008}"],["${atleastwin2008r2}","${AtLeastWin2008R2}"],["${atleastwin7}","${AtLeastWin7}"],["${atleastwin8}","${AtLeastWin8}"],["${atleastwin8.1}","${AtLeastWin8.1}"],["${atleastwin95}","${AtLeastWin95}"],["${atleastwin98}","${AtLeastWin98}"],["${atleastwinme}","${AtLeastWinME}"],["${atleastwinnt4}","${AtLeastWinNT4}"],["${atleastwinvista}","${AtLeastWinVista}"],["${atleastwinxp}","${AtLeastWinXP}"],["${atmostservicepack}","${AtMostServicePack}"],["${atmostwin10}","${AtMostWin10}"],["${atmostwin11}","${AtMostWin11}"],["${atmostwin2000}","${AtMostWin2000}"],["${atmostwin2003}","${AtMostWin2003}"],["${atmostwin2008}","${AtMostWin2008}"],["${atmostwin2008r2}","${AtMostWin2008R2}"],["${atmostwin2012}","${AtMostWin2012}"],["${atmostwin2012r2}","${AtMostWin2012R2}"],["${atmostwin7}","${AtMostWin7}"],["${atmostwin8}","${AtMostWin8}"],["${atmostwin8.1}","${AtMostWin8.1}"],["${atmostwin95}","${AtMostWin95}"],["${atmostwin98}","${AtMostWin98}"],["${atmostwinme}","${AtMostWinME}"],["${atmostwinnt4}","${AtMostWinNT4}"],["${atmostwinvista}","${AtMostWinVista}"],["${atmostwinxp}","${AtMostWinXP}"],["${isdomaincontroller}","${IsDomainController}"],["${isnt}","${IsNT}"],["${isserveros}","${IsServerOS}"],["${isservicepack}","${IsServicePack}"],["${iswin10}","${IsWin10}"],["${iswin11}","${IsWin11}"],["${iswin2000}","${IsWin2000}"],["${iswin2003}","${IsWin2003}"],["${iswin2008}","${IsWin2008}"],["${iswin2008r2}","${IsWin2008R2}"],["${iswin2012}","${IsWin2012}"],["${iswin2012r2}","${IsWin2012R2}"],["${iswin7}","${IsWin7}"],["${iswin8}","${IsWin8}"],["${iswin8.1}","${IsWin8.1}"],["${iswin95}","${IsWin95}"],["${iswin98}","${IsWin98}"],["${iswinme}","${IsWinME}"],["${iswinnt4}","${IsWinNT4}"],["${iswinvista}","${IsWinVista}"],["${iswinxp}","${IsWinXP}"],["${strfilter}","${StrFilter}"],["${strfilters}","${StrFilterS}"],["${versioncompare}","${VersionCompare}"],["${versionconvert}","${VersionConvert}"],["${wordadd}","${WordAdd}"],["${wordadds}","${WordAddS}"],["${wordfind}","${WordFind}"],["${wordfind2x}","${WordFind2X}"],["${wordfind2xs}","${WordFind2XS}"],["${wordfind3x}","${WordFind3X}"],["${wordfind3xs}","${WordFind3XS}"],["${wordfinds}","${WordFindS}"],["${wordinsert}","${WordInsert}"],["${wordinserts}","${WordInsertS}"],["${wordreplace}","${WordReplace}"],["${wordreplaces}","${WordReplaceS}"],["${disablex64fsredirection}","${DisableX64FSRedirection}"],["${enablex64fsredirection}","${EnableX64FSRedirection}"],["${iswow64}","${IsWow64}"],["${runningx64}","${RunningX64}"]]),d=new Map([[`/silent`,`/SILENT`],[`/filesonly`,`/FILESONLY`],[`/rebootok`,`/REBOOTOK`],[`/short`,`/SHORT`],[`/sd`,`/SD`],[`/branding`,`/BRANDING`],[`/final`,`/FINAL`],[`/solid`,`/SOLID`],[`/global`,`/GLOBAL`],[`/bom`,`/BOM`],[`/italic`,`/ITALIC`],[`/underline`,`/UNDERLINE`],[`/strike`,`/STRIKE`],[`/enablecancel`,`/ENABLECANCEL`],[`/overwrite`,`/OVERWRITE`],[`/replace`,`/REPLACE`],[`/noerrors`,`/NOERRORS`],[`/regedit5`,`/REGEDIT5`],[`/exeresource`,`/EXERESOURCE`],[`/stringid`,`/STRINGID`],[`/resizetofit`,`/RESIZETOFIT`],[`/resizetofitwidth`,`/RESIZETOFITWIDTH`],[`/resizetofitheight`,`/RESIZETOFITHEIGHT`],[`/trimleft`,`/TRIMLEFT`],[`/trimright`,`/TRIMRIGHT`],[`/trimcenter`,`/TRIMCENTER`],[`/windows`,`/windows`],[`/nonfatal`,`/NONFATAL`],[`/nocustom`,`/NOCUSTOM`],[`/uninstnocustom`,`/UNINSTNOCUSTOM`],[`/componentsonlyoncustom`,`/COMPONENTSONLYONCUSTOM`],[`/uninstcomponentsonlyoncustom`,`/UNINSTCOMPONENTSONLYONCUSTOM`],[`/fileexists`,`/FILEEXISTS`],[`/rawnl`,`/RAWNL`],[`/productversion`,`/ProductVersion`],[`/noworkingdir`,`/NoWorkingDir`],[`/r`,`/r`],[`/a`,`/a`],[`/e`,`/e`],[`/o`,`/o`],[`/x`,`/x`],[`/ifempty`,`/ifempty`],[`/ifnosubkeys`,`/ifnosubkeys`],[`/ifnovalues`,`/ifnovalues`],[`/nounload`,`/nounload`],[`/plugin`,`/plugin`],[`/ifndef`,`/ifndef`],[`/redef`,`/redef`],[`/date`,`/date`],[`/utcdate`,`/utcdate`],[`/file`,`/file`],[`/intfmt`,`/intfmt`],[`/math`,`/math`],[`/ignorecase`,`/ignorecase`],[`/packed`,`/packed`],[`/target`,`/target`]]),f=new Map([[`/lang=`,`/LANG=`],[`/timeout=`,`/TIMEOUT=`],[`/charset=`,`/CHARSET=`],[`/imgid=`,`/IMGID=`],[`/customstring=`,`/CUSTOMSTRING=`],[`/uninstcustomstring=`,`/UNINSTCUSTOMSTRING=`],[`/oname=`,`/oname=`]]),p=new Map;function m(e,t){for(let n of e){let e=n.toLowerCase(),r=p.get(e);r||(r=new Map,p.set(e,r));for(let[e,n]of t)r.set(e,n)}}m([`AllowRootDirInstall`,`AllowSkipFiles`,`AutoCloseWindow`,`CRCCheck`,`ManifestDPIAware`,`ManifestDisableWindowFiltering`,`ManifestGdiScaling`,`ManifestLongPathAware`,`SetAutoClose`,`SetDatablockOptimize`,`SetDateSave`,`SetPluginUnload`,`Unicode`,`WindowIcon`],[[`true`,`true`],[`false`,`false`]]),m([`CRCCheck`,`LogSet`,`LockWindow`,`SetCompress`,`SetDateSave`,`SetDatablockOptimize`,`SetOverwrite`,`WindowIcon`,`XPStyle`,`LicenseForceSelection`],[[`on`,`on`],[`off`,`off`]]),m([`FileOpen`],[[`r`,`r`],[`w`,`w`],[`a`,`a`]]),m([`SetCompressor`],[[`zlib`,`zlib`],[`bzip2`,`bzip2`],[`lzma`,`lzma`]]),m([`Target`],[[`x86`,`x86`],[`amd64`,`amd64`]]),m([`SetOverwrite`],[[`try`,`try`],[`ifnewer`,`ifnewer`],[`ifdiff`,`ifdiff`],[`lastused`,`lastused`]]),m([`SetCompress`],[[`auto`,`auto`],[`force`,`force`]]),m([`SilentInstall`],[[`normal`,`normal`],[`silent`,`silent`],[`silentlog`,`silentlog`]]),m([`SilentUnInstall`,`SetSilent`],[[`normal`,`normal`],[`silent`,`silent`]]),m([`ShowInstDetails`,`ShowUninstDetails`],[[`hide`,`hide`],[`show`,`show`],[`nevershow`,`nevershow`]]),m([`SetDetailsView`,`DirShow`],[[`show`,`show`],[`hide`,`hide`]]),m([`SetDetailsPrint`],[[`listonly`,`listonly`],[`textonly`,`textonly`],[`both`,`both`],[`none`,`none`],[`lastused`,`lastused`]]),m([`RequestExecutionLevel`],[[`none`,`none`],[`user`,`user`],[`highest`,`highest`],[`admin`,`admin`]]),m([`AddBrandingImage`],[[`top`,`top`],[`left`,`left`],[`bottom`,`bottom`],[`right`,`right`]]),m([`InstProgressFlags`],[[`smooth`,`smooth`],[`colored`,`colored`]]),m([`LicenseForceSelection`],[[`checkbox`,`checkbox`],[`radiobuttons`,`radiobuttons`]]),m([`SetShellVarContext`],[[`all`,`all`],[`current`,`current`]]),m([`DirVerify`],[[`auto`,`auto`],[`leave`,`leave`]]),m([`ExecShell`,`ExecShellWait`],[[`open`,`open`],[`print`,`print`]]),m([`Page`,`UninstPage`],[[`custom`,`custom`],[`license`,`license`],[`components`,`components`],[`directory`,`directory`],[`instfiles`,`instfiles`],[`uninstconfirm`,`uninstConfirm`]]),m([`SetCtlColors`],[[`transparent`,`transparent`]]),m([`LockWindow`],[[`on`,`on`],[`off`,`off`]]),m([`SetRegView`],[[`default`,`default`]]),m([`DeleteRegKey`,`DeleteRegValue`,`EnumRegKey`,`EnumRegValue`,`InstallDirRegKey`,`ReadRegDWORD`,`ReadRegStr`,`WriteRegBin`,`WriteRegDWORD`,`WriteRegExpandStr`,`WriteRegMultiStr`,`WriteRegNone`,`WriteRegStr`],[[`hkcr`,`HKCR`],[`hkcr32`,`HKCR32`],[`hkcr64`,`HKCR64`],[`hklm`,`HKLM`],[`hklm32`,`HKLM32`],[`hklm64`,`HKLM64`],[`hkcu`,`HKCU`],[`hkcu32`,`HKCU32`],[`hkcu64`,`HKCU64`],[`hku`,`HKU`],[`hkcc`,`HKCC`],[`hkdd`,`HKDD`],[`hkpd`,`HKPD`],[`shctx`,`SHCTX`]]),m([`MessageBox`],[[`mb_ok`,`MB_OK`],[`mb_okcancel`,`MB_OKCANCEL`],[`mb_abortretryignore`,`MB_ABORTRETRYIGNORE`],[`mb_retrycancel`,`MB_RETRYCANCEL`],[`mb_yesno`,`MB_YESNO`],[`mb_yesnocancel`,`MB_YESNOCANCEL`],[`mb_iconexclamation`,`MB_ICONEXCLAMATION`],[`mb_iconinformation`,`MB_ICONINFORMATION`],[`mb_iconquestion`,`MB_ICONQUESTION`],[`mb_iconstop`,`MB_ICONSTOP`],[`mb_usericon`,`MB_USERICON`],[`mb_topmost`,`MB_TOPMOST`],[`mb_setforeground`,`MB_SETFOREGROUND`],[`mb_right`,`MB_RIGHT`],[`mb_defbutton1`,`MB_DEFBUTTON1`],[`mb_defbutton2`,`MB_DEFBUTTON2`],[`mb_defbutton3`,`MB_DEFBUTTON3`],[`mb_defbutton4`,`MB_DEFBUTTON4`],[`idok`,`IDOK`],[`idcancel`,`IDCANCEL`],[`idyes`,`IDYES`],[`idno`,`IDNO`],[`idabort`,`IDABORT`],[`idretry`,`IDRETRY`],[`idignore`,`IDIGNORE`]]),m([`CreateShortcut`,`ShowWindow`],[[`sw_shownormal`,`SW_SHOWNORMAL`],[`sw_showmaximized`,`SW_SHOWMAXIMIZED`],[`sw_showminimized`,`SW_SHOWMINIMIZED`],[`sw_hide`,`SW_HIDE`],[`sw_show`,`SW_SHOW`]]),m([`CreateShortcut`],[[`alt`,`ALT`],[`control`,`CONTROL`],[`ext`,`EXT`],[`shift`,`SHIFT`]]),m([`SetFileAttributes`],[[`archive`,`ARCHIVE`],[`hidden`,`HIDDEN`],[`offline`,`OFFLINE`],[`readonly`,`READONLY`],[`system`,`SYSTEM`],[`temporary`,`TEMPORARY`]]),m([`FileSeek`],[[`set`,`SET`],[`cur`,`CUR`],[`end`,`END`]]),m([`GetWinVer`],[[`major`,`MAJOR`],[`minor`,`MINOR`],[`build`,`BUILD`],[`servicepack`,`SERVICEPACK`]]),m([`ManifestSupportedOS`],[[`winvista`,`WinVista`],[`win7`,`Win7`],[`win8`,`Win8`],[`win8.1`,`Win8.1`],[`win10`,`Win10`]]),m([`ChangeUI`],[[`dlg_id`,`dlg_id`]]);const h=p,g=new Set([`intop`,`intptrop`]);function _(e,t,n){let r=t.toLowerCase(),i=h.get(r);return(g.has(r)?C(e):S(e)).map(e=>x(e,i,n))}function v(e){return g.has(e.toLowerCase())}function y(e,t){return v(t)?e.join(` `):w(e)}function b(e,t){let n=T(e);if(!n)return e;let[,r]=n,i=t?`'`:`"`,a=E(r),o=a.includes(`"`),s=a.includes(`'`),c=a.includes("`");if(!o&&!s||!(i===`"`?o:s))return i===`"`?`"${a}"`:`'${a}'`;let l=i===`"`?`'`:`"`;return(l===`"`?o:s)?c?`"${D(a)}"`:`\`${a}\``:l===`"`?`"${a}"`:`'${a}'`}function x(e,t,n){if(e.startsWith(`$`))return e;if(e.startsWith(`"`)||e.startsWith(`'`)||e.startsWith("`"))return b(e,n);let r=e.toLowerCase(),i=t?.get(r)??d.get(r);if(i!==void 0)return i;let a=e.indexOf(`=`);if(a>0){let t=`${r.slice(0,a+1)}`,n=f.get(t);if(n!==void 0)return`${n}${e.slice(a+1)}`}return e}function S(e){return e.flatMap(e=>e.startsWith(`"`)||e.startsWith(`'`)||e.startsWith("`")||!e.includes(`|`)||e===`|`?[e]:O(e,`|`))}function C(e){return e.flatMap(e=>e.startsWith(`"`)||e.startsWith(`'`)||e.startsWith("`")||k.has(e)?[e]:j(e))}function w(e){let t=``;for(let n=0;n<e.length;n++){let r=e[n];r===`|`?t+=`|`:(n>0&&e[n-1]===`|`||t&&(t+=` `),t+=r)}return t}function T(e){let t=e[0];if(t===`"`||t===`'`||t==="`")return[t,e.slice(1,-1)]}function E(e){return e.replaceAll(`$\\"`,`"`).replaceAll(`""`,`"`).replaceAll(`$\\'`,`'`).replaceAll("$\\`","`")}function D(e){return e.replaceAll(`"`,`$\\"`)}function O(e,t){let n=[],r=``,i=0;for(;i<e.length;){if(e[i]===`$`&&e[i+1]===`{`){let t=e.indexOf(`}`,i+2);if(t!==-1){r+=e.slice(i,t+1),i=t+1;continue}}if(e[i]===t){r&&n.push(r),r=``,n.push(t),i++;continue}r+=e[i],i++}return r&&n.push(r),n}const k=new Set([`>>>`,`||`,`&&`,`<<`,`>>`,`+`,`-`,`*`,`/`,`%`,`|`,`&`,`^`,`~`,`!`]),A=new Set([`+`,`-`,`*`,`/`,`%`,`|`,`&`,`^`,`~`,`!`]);function j(e){let t=[],n=``,r=!0,i=0;for(;i<e.length;){if(e[i]===`$`&&e[i+1]===`{`){let t=e.indexOf(`}`,i+2);if(t!==-1){n+=e.slice(i,t+1),i=t+1,r=!1;continue}}if(i+2<e.length){let a=e.slice(i,i+3);if(k.has(a)){n&&=(t.push(n),``),t.push(a),r=!0,i+=3;continue}}if(i+1<e.length){let a=e.slice(i,i+2);if(k.has(a)){n&&=(t.push(n),``),t.push(a),r=!0,i+=2;continue}}let a=e[i];if(A.has(a)){if(a===`-`&&r){n+=a,i++;continue}n&&=(t.push(n),``),t.push(a),r=!0,i++;continue}n+=a,r=!1,i++}return n&&t.push(n),t.length>0?t:[e]}function M(e,t){let n=0,r=[],a=[],o=s(e);t.trimEmptyLines&&(o=c(o));for(let e of o)switch(e.type){case`blank`:a.push(``);break;case`comment`:a.push(P(e,n,t));break;case`label`:a.push(F(e,n,t));break;case`instruction`:{let o=e.keyword.toLowerCase();if(i.open.has(o))a.push(I(e,n,t)),r.push(n),n++;else if(i.case.has(o)){let i=(r.length>0?r[r.length-1]:0)+1;a.push(I(e,i,t)),n=i+1}else if(i.close.has(o))n=r.length>0?r.pop():0,a.push(I(e,n,t));else if(i.mid.has(o)){let n=r.length>0?r[r.length-1]:0;a.push(I(e,n,t))}else i.closeAfter.has(o)?(a.push(I(e,n,t)),n=(r.length>0?r[r.length-1]:0)+1):a.push(I(e,n,t));break}}return a.join(t.eol)+t.eol}function N(e,t){return(t.useTabs?` `:` `.repeat(t.indentSize)).repeat(e)}function P(e,t,n){let r=N(t,n);if(e.style===`block`){let t=e.value.split(/\r?\n/);return t.length===1?`${r}/*${e.value}*/`:t.map((e,n)=>{if(n===0)return`${r}/*${e}`;let i=e.trimStart();return n===t.length-1?`${r} ${i}*/`:`${r} ${i}`}).join(n.eol)}return`${r}${e.style===`hash`?`#`:`;`} ${e.value}`}function F(e,t,n){let r=`${N(t,n)}${e.name}:`;return e.comment&&(r+=` ${L(e.comment)}`),r}function I(e,t,n){let r=e.keyword.toLowerCase(),i=l.get(r)??u.get(r)??e.keyword,a=v(r),o=_(e.args,e.keyword,n.singleQuote),s=N(t,n);if(n.printWidth>0&&o.length>0)return R(i,o,e.comment?L(e.comment):void 0,s,a,n);let c=y(o,e.keyword),d=`${s}${o.length>0?`${i} ${c}`:i}`;return e.comment&&(d+=` ${L(e.comment)}`),d}function L(e){return`${e.style===`hash`?`#`:`;`} ${e.value}`}function R(e,t,n,r,i,a){let o=(t=>i?t.join(` `):y(t,e))(t),s=t.length>0?`${r}${e} ${o}`:`${r}${e}`,c=n?`${s} ${n}`:s;if(c.length<=a.printWidth)return c;let l=r+(a.useTabs?` `:` `.repeat(a.indentSize)),u=[],d=`${r}${e}`;for(let e of t){let t=`${d} ${e}`;t.length+2>a.printWidth&&d.length>r.length?(u.push(`${d} \\`),d=`${l}${e}`):d=t}return n&&(d=`${d} ${n}`),u.push(d),u.join(a.eol)}function z(r={}){let i={indentSize:2,printWidth:120,singleQuote:!1,trimEmptyLines:!0,useTabs:!0,...r};if(i.useTabs===!1&&(!i.indentSize||Number.isNaN(i.indentSize)||i.indentSize<=0))throw Error(`The indentSize option expects a positive integer`);function a(e){let n=t(e),r=s(e);return M(n,{useTabs:i.useTabs??!0,indentSize:i.indentSize??2,printWidth:i.printWidth??120,singleQuote:i.singleQuote??!1,trimEmptyLines:i.trimEmptyLines??!0,eol:r})}function o(e){let t=a(e);return t===e?null:t}function s(t){return i.endOfLine?i.endOfLine===`crlf`?`\r
|
|
1
|
+
import{parse as e}from"@nsis/parser";import{detectNewline as t}from"detect-newline";function n(e){return new Set(e.map(e=>e.toLowerCase()))}const r={open:n([`!if`,`!ifdef`,`!ifmacrodef`,`!ifmacrondef`,`!ifndef`,`!macro`,"${Do}","${DoUntil}","${DoWhile}","${For}","${ForEach}","${If}","${IfNot}","${MementoSection}","${MementoUnselectedSection}","${Select}","${Switch}","${Unless}",`Function`,`PageEx`,`Section`,`SectionGroup`]),case:n(["${Case}","${Case2}","${Case3}","${Case4}","${Case5}","${CaseElse}","${Default}"]),close:n([`!endif`,`!macroend`,"${EndIf}","${EndSelect}","${EndSwitch}","${EndWhile}","${Loop}","${LoopUntil}","${LoopWhile}","${MementoSectionEnd}","${Next}","${While}",`FunctionEnd`,`PageExEnd`,`SectionEnd`,`SectionGroupEnd`]),mid:n([`!else`,`!elseif`,"${Else}","${ElseIf}","${ElseIfNot}","${ElseUnless}","${AndIf}","${AndIfNot}","${AndUnless}","${OrIf}","${OrIfNot}","${OrUnless}"]),closeAfter:n(["${Break}"])};function i(e){if(e.type!==`instruction`)return!1;let t=e.keyword.toLowerCase();return r.open.has(t)||r.case.has(t)}function a(e){return e.type===`instruction`&&r.close.has(e.keyword.toLowerCase())}function o(e){let t=[],n;for(let r=0;r<e.length;r++){let o=e[r],s=t.length>0&&t[t.length-1].type===`blank`;if(n&&!s&&o.type!==`blank`)if(i(o)&&!i(n)&&n.type!==`comment`)t.push({type:`blank`});else if(o.type===`comment`&&!i(n)&&n.type!==`comment`){let n=r+1;for(;n<e.length&&(e[n].type===`blank`||e[n].type===`comment`);)n++;n<e.length&&i(e[n])&&t.push({type:`blank`})}else a(n)&&!a(o)&&!i(o)&&t.push({type:`blank`});t.push(o),o.type!==`blank`&&(n=o)}return t}function s(e){let t=0;for(;t<e.length&&e[t].type===`blank`;)t++;let n=e.length-1;for(;n>=t&&e[n].type===`blank`;)n--;let r=[],i=!1;for(let a=t;a<=n;a++){let t=e[a];t.type===`blank`?i||=(r.push(t),!0):(r.push(t),i=!1)}return r}const c=new Map([[`!addincludedir`,`!addincludedir`],[`!addplugindir`,`!addplugindir`],[`!appendfile`,`!appendfile`],[`!appendmemfile`,`!appendmemfile`],[`!assert`,`!assert`],[`!cd`,`!cd`],[`!define`,`!define`],[`!delfile`,`!delfile`],[`!echo`,`!echo`],[`!else`,`!else`],[`!elseif`,`!elseif`],[`!endif`,`!endif`],[`!error`,`!error`],[`!execute`,`!execute`],[`!finalize`,`!finalize`],[`!getdllversion`,`!getdllversion`],[`!gettlbversion`,`!gettlbversion`],[`!if`,`!if`],[`!ifdef`,`!ifdef`],[`!ifmacrodef`,`!ifmacrodef`],[`!ifmacrondef`,`!ifmacrondef`],[`!ifndef`,`!ifndef`],[`!include`,`!include`],[`!insertmacro`,`!insertmacro`],[`!macro`,`!macro`],[`!macroend`,`!macroend`],[`!macroundef`,`!macroundef`],[`!makensis`,`!makensis`],[`!packhdr`,`!packhdr`],[`!pragma`,`!pragma`],[`!searchparse`,`!searchparse`],[`!searchreplace`,`!searchreplace`],[`!system`,`!system`],[`!tempfile`,`!tempfile`],[`!undef`,`!undef`],[`!uninstfinalize`,`!uninstfinalize`],[`!verbose`,`!verbose`],[`!warning`,`!warning`],[`abort`,`Abort`],[`addbrandingimage`,`AddBrandingImage`],[`addsize`,`AddSize`],[`allowrootdirinstall`,`AllowRootDirInstall`],[`allowskipfiles`,`AllowSkipFiles`],[`autoclosewindow`,`AutoCloseWindow`],[`bgfont`,`BGFont`],[`bggradient`,`BGGradient`],[`brandingtext`,`BrandingText`],[`bringtofront`,`BringToFront`],[`call`,`Call`],[`callinstdll`,`CallInstDLL`],[`caption`,`Caption`],[`changeui`,`ChangeUI`],[`checkbitmap`,`CheckBitmap`],[`clearerrors`,`ClearErrors`],[`completedtext`,`CompletedText`],[`componenttext`,`ComponentText`],[`copyfiles`,`CopyFiles`],[`cpu`,`CPU`],[`crccheck`,`CRCCheck`],[`createdirectory`,`CreateDirectory`],[`createfont`,`CreateFont`],[`createshortcut`,`CreateShortcut`],[`delete`,`Delete`],[`deleteinisec`,`DeleteINISec`],[`deleteinistr`,`DeleteINIStr`],[`deleteregkey`,`DeleteRegKey`],[`deleteregvalue`,`DeleteRegValue`],[`detailprint`,`DetailPrint`],[`detailsbuttontext`,`DetailsButtonText`],[`dirshow`,`DirShow`],[`dirtext`,`DirText`],[`dirvar`,`DirVar`],[`dirverify`,`DirVerify`],[`enablewindow`,`EnableWindow`],[`enumregkey`,`EnumRegKey`],[`enumregvalue`,`EnumRegValue`],[`exch`,`Exch`],[`exec`,`Exec`],[`execshell`,`ExecShell`],[`execshellwait`,`ExecShellWait`],[`execwait`,`ExecWait`],[`expandenvstrings`,`ExpandEnvStrings`],[`file`,`File`],[`filebufsize`,`FileBufSize`],[`fileclose`,`FileClose`],[`fileerrortext`,`FileErrorText`],[`fileopen`,`FileOpen`],[`fileread`,`FileRead`],[`filereadbyte`,`FileReadByte`],[`filereadutf16le`,`FileReadUTF16LE`],[`filereadword`,`FileReadWord`],[`fileseek`,`FileSeek`],[`filewrite`,`FileWrite`],[`filewritebyte`,`FileWriteByte`],[`filewriteutf16le`,`FileWriteUTF16LE`],[`filewriteword`,`FileWriteWord`],[`findclose`,`FindClose`],[`findfirst`,`FindFirst`],[`findnext`,`FindNext`],[`findwindow`,`FindWindow`],[`flushini`,`FlushINI`],[`function`,`Function`],[`functionend`,`FunctionEnd`],[`getcurinsttype`,`GetCurInstType`],[`getcurrentaddress`,`GetCurrentAddress`],[`getdlgitem`,`GetDlgItem`],[`getdllversion`,`GetDLLVersion`],[`getdllversionlocal`,`GetDLLVersionLocal`],[`geterrorlevel`,`GetErrorLevel`],[`getfiletime`,`GetFileTime`],[`getfiletimelocal`,`GetFileTimeLocal`],[`getfullpathname`,`GetFullPathName`],[`getfunctionaddress`,`GetFunctionAddress`],[`getinstdirerror`,`GetInstDirError`],[`getknownfolderpath`,`GetKnownFolderPath`],[`getlabeladdress`,`GetLabelAddress`],[`getregview`,`GetRegView`],[`getshellvarcontext`,`GetShellVarContext`],[`gettempfilename`,`GetTempFileName`],[`getwinver`,`GetWinVer`],[`goto`,`Goto`],[`hidewindow`,`HideWindow`],[`icon`,`Icon`],[`ifabort`,`IfAbort`],[`ifaltregview`,`IfAltRegView`],[`iferrors`,`IfErrors`],[`iffileexists`,`IfFileExists`],[`ifrebootflag`,`IfRebootFlag`],[`ifrtllanguage`,`IfRtlLanguage`],[`ifshellvarcontextall`,`IfShellVarContextAll`],[`ifsilent`,`IfSilent`],[`initpluginsdir`,`InitPluginsDir`],[`installbuttontext`,`InstallButtonText`],[`installcolors`,`InstallColors`],[`installdir`,`InstallDir`],[`installdirregkey`,`InstallDirRegKey`],[`instprogressflags`,`InstProgressFlags`],[`insttype`,`InstType`],[`insttypegettext`,`InstTypeGetText`],[`insttypesettext`,`InstTypeSetText`],[`int64cmp`,`Int64Cmp`],[`int64cmpu`,`Int64CmpU`],[`int64fmt`,`Int64Fmt`],[`intcmp`,`IntCmp`],[`intcmpu`,`IntCmpU`],[`intfmt`,`IntFmt`],[`intop`,`IntOp`],[`intptrcmp`,`IntPtrCmp`],[`intptrcmpu`,`IntPtrCmpU`],[`intptrop`,`IntPtrOp`],[`iswindow`,`IsWindow`],[`langstring`,`LangString`],[`langstringup`,`LangStringUP`],[`licensebkcolor`,`LicenseBkColor`],[`licensedata`,`LicenseData`],[`licenseforceselection`,`LicenseForceSelection`],[`licenselangstring`,`LicenseLangString`],[`licensetext`,`LicenseText`],[`loadandsetimage`,`LoadAndSetImage`],[`loadlanguagefile`,`LoadLanguageFile`],[`lockwindow`,`LockWindow`],[`logset`,`LogSet`],[`logtext`,`LogText`],[`manifestappendcustomstring`,`ManifestAppendCustomString`],[`manifestdisablewindowfiltering`,`ManifestDisableWindowFiltering`],[`manifestdpiaware`,`ManifestDPIAware`],[`manifestdpiawareness`,`ManifestDPIAwareness`],[`manifestgdiscaling`,`ManifestGdiScaling`],[`manifestlongpathaware`,`ManifestLongPathAware`],[`manifestmaxversiontested`,`ManifestMaxVersionTested`],[`manifestsupportedos`,`ManifestSupportedOS`],[`messagebox`,`MessageBox`],[`miscbuttontext`,`MiscButtonText`],[`name`,`Name`],[`nop`,`Nop`],[`outfile`,`OutFile`],[`page`,`Page`],[`pagecallbacks`,`PageCallbacks`],[`pageex`,`PageEx`],[`pageexend`,`PageExEnd`],[`peaddresource`,`PEAddResource`],[`pedllcharacteristics`,`PEDllCharacteristics`],[`peremoveresource`,`PERemoveResource`],[`pesubsysver`,`PESubsysVer`],[`pop`,`Pop`],[`push`,`Push`],[`quit`,`Quit`],[`readenvstr`,`ReadEnvStr`],[`readinistr`,`ReadINIStr`],[`readmemory`,`ReadMemory`],[`readregdword`,`ReadRegDWORD`],[`readregstr`,`ReadRegStr`],[`reboot`,`Reboot`],[`regdll`,`RegDLL`],[`rename`,`Rename`],[`requestexecutionlevel`,`RequestExecutionLevel`],[`reservefile`,`ReserveFile`],[`return`,`Return`],[`rmdir`,`RMDir`],[`searchpath`,`SearchPath`],[`section`,`Section`],[`sectionend`,`SectionEnd`],[`sectiongetflags`,`SectionGetFlags`],[`sectiongetinsttypes`,`SectionGetInstTypes`],[`sectiongetsize`,`SectionGetSize`],[`sectiongettext`,`SectionGetText`],[`sectiongroup`,`SectionGroup`],[`sectiongroupend`,`SectionGroupEnd`],[`sectionin`,`SectionIn`],[`sectioninsttype`,`SectionInstType`],[`sectionsetflags`,`SectionSetFlags`],[`sectionsetinsttypes`,`SectionSetInstTypes`],[`sectionsetsize`,`SectionSetSize`],[`sectionsettext`,`SectionSetText`],[`sendmessage`,`SendMessage`],[`setautoclose`,`SetAutoClose`],[`setbrandingimage`,`SetBrandingImage`],[`setcompress`,`SetCompress`],[`setcompressionlevel`,`SetCompressionLevel`],[`setcompressor`,`SetCompressor`],[`setcompressordictsize`,`SetCompressorDictSize`],[`setctlcolors`,`SetCtlColors`],[`setcurinsttype`,`SetCurInstType`],[`setdatablockoptimize`,`SetDatablockOptimize`],[`setdatesave`,`SetDateSave`],[`setdetailsprint`,`SetDetailsPrint`],[`setdetailsview`,`SetDetailsView`],[`seterrorlevel`,`SetErrorLevel`],[`seterrors`,`SetErrors`],[`setfileattributes`,`SetFileAttributes`],[`setfont`,`SetFont`],[`setoutpath`,`SetOutPath`],[`setoverwrite`,`SetOverwrite`],[`setpluginunload`,`SetPluginUnload`],[`setrebootflag`,`SetRebootFlag`],[`setregview`,`SetRegView`],[`setshellvarcontext`,`SetShellVarContext`],[`setsilent`,`SetSilent`],[`showinstdetails`,`ShowInstDetails`],[`showuninstdetails`,`ShowUninstDetails`],[`showwindow`,`ShowWindow`],[`silentinstall`,`SilentInstall`],[`silentuninstall`,`SilentUnInstall`],[`sleep`,`Sleep`],[`spacetexts`,`SpaceTexts`],[`strcmp`,`StrCmp`],[`strcmps`,`StrCmpS`],[`strcpy`,`StrCpy`],[`strlen`,`StrLen`],[`subcaption`,`SubCaption`],[`subsection`,`SubSection`],[`subsectionend`,`SubSectionEnd`],[`target`,`Target`],[`unicode`,`Unicode`],[`uninstallbuttontext`,`UninstallButtonText`],[`uninstallcaption`,`UninstallCaption`],[`uninstallexename`,`UninstallExeName`],[`uninstallicon`,`UninstallIcon`],[`uninstallsubcaption`,`UninstallSubCaption`],[`uninstalltext`,`UninstallText`],[`uninstpage`,`UninstPage`],[`unregdll`,`UnRegDLL`],[`unsafestrcpy`,`UnsafeStrCpy`],[`var`,`Var`],[`viaddversionkey`,`VIAddVersionKey`],[`vifileversion`,`VIFileVersion`],[`viproductversion`,`VIProductVersion`],[`windowicon`,`WindowIcon`],[`writeinistr`,`WriteINIStr`],[`writeregbin`,`WriteRegBin`],[`writeregdword`,`WriteRegDWORD`],[`writeregexpandstr`,`WriteRegExpandStr`],[`writeregmultistr`,`WriteRegMultiStr`],[`writeregnone`,`WriteRegNone`],[`writeregstr`,`WriteRegStr`],[`writeuninstaller`,`WriteUninstaller`],[`xpstyle`,`XPStyle`]]),l=new Map([["${bannertrimpath}","${BannerTrimPath}"],["${dirstate}","${DirState}"],["${drivespace}","${DriveSpace}"],["${getbasename}","${GetBaseName}"],["${getdrives}","${GetDrives}"],["${getexename}","${GetExeName}"],["${getexepath}","${GetExePath}"],["${getfileattributes}","${GetFileAttributes}"],["${getfileext}","${GetFileExt}"],["${getfilename}","${GetFileName}"],["${getfileversion}","${GetFileVersion}"],["${getoptions}","${GetOptions}"],["${getoptionss}","${GetOptionsS}"],["${getparameters}","${GetParameters}"],["${getparent}","${GetParent}"],["${getroot}","${GetRoot}"],["${getsize}","${GetSize}"],["${gettime}","${GetTime}"],["${locate}","${Locate}"],["${refreshshellicons}","${RefreshShellIcons}"],["${andif}","${AndIf}"],["${andifnot}","${AndIfNot}"],["${andunless}","${AndUnless}"],["${break}","${Break}"],["${case}","${Case}"],["${caseelse}","${CaseElse}"],["${continue}","${Continue}"],["${default}","${Default}"],["${do}","${Do}"],["${dountil}","${DoUntil}"],["${dowhile}","${DoWhile}"],["${else}","${Else}"],["${elseif}","${ElseIf}"],["${elseifnot}","${ElseIfNot}"],["${elseunless}","${ElseUnless}"],["${endif}","${EndIf}"],["${endselect}","${EndSelect}"],["${endswitch}","${EndSwitch}"],["${exitdo}","${ExitDo}"],["${exitfor}","${ExitFor}"],["${exitwhile}","${ExitWhile}"],["${for}","${For}"],["${foreach}","${ForEach}"],["${if}","${If}"],["${ifcmd}","${IfCmd}"],["${ifnot}","${IfNot}"],["${ifnotthen}","${IfNotThen}"],["${ifthen}","${IfThen}"],["${loop}","${Loop}"],["${loopuntil}","${LoopUntil}"],["${loopwhile}","${LoopWhile}"],["${orif}","${OrIf}"],["${orifnot}","${OrIfNot}"],["${orunless}","${OrUnless}"],["${select}","${Select}"],["${switch}","${Switch}"],["${unless}","${Unless}"],["${while}","${While}"],["${mementosection}","${MementoSection}"],["${mementosectiondone}","${MementoSectionDone}"],["${mementosectionend}","${MementoSectionEnd}"],["${mementosectionrestore}","${MementoSectionRestore}"],["${mementosectionsave}","${MementoSectionSave}"],["${mementounselectedsection}","${MementoUnselectedSection}"],["${strcase}","${StrCase}"],["${strclb}","${StrClb}"],["${striotonsis}","${StrIOToNSIS}"],["${strloc}","${StrLoc}"],["${strnsistoio}","${StrNSISToIO}"],["${strrep}","${StrRep}"],["${strsort}","${StrSort}"],["${strstr}","${StrStr}"],["${strstradv}","${StrStrAdv}"],["${strtok}","${StrTok}"],["${strtrimnewlines}","${StrTrimNewLines}"],["${configread}","${ConfigRead}"],["${configreads}","${ConfigReadS}"],["${configwrite}","${ConfigWrite}"],["${configwrites}","${ConfigWriteS}"],["${filejoin}","${FileJoin}"],["${filereadfromend}","${FileReadFromEnd}"],["${filerecode}","${FileRecode}"],["${linefind}","${LineFind}"],["${lineread}","${LineRead}"],["${linesum}","${LineSum}"],["${textcompare}","${TextCompare}"],["${textcompares}","${TextCompareS}"],["${trimnewlines}","${TrimNewLines}"],["${atleastservicepack}","${AtLeastServicePack}"],["${atleastwin10}","${AtLeastWin10}"],["${atleastwin11}","${AtLeastWin11}"],["${atleastwin2000}","${AtLeastWin2000}"],["${atleastwin2003}","${AtLeastWin2003}"],["${atleastwin2008}","${AtLeastWin2008}"],["${atleastwin2008r2}","${AtLeastWin2008R2}"],["${atleastwin7}","${AtLeastWin7}"],["${atleastwin8}","${AtLeastWin8}"],["${atleastwin8.1}","${AtLeastWin8.1}"],["${atleastwin95}","${AtLeastWin95}"],["${atleastwin98}","${AtLeastWin98}"],["${atleastwinme}","${AtLeastWinME}"],["${atleastwinnt4}","${AtLeastWinNT4}"],["${atleastwinvista}","${AtLeastWinVista}"],["${atleastwinxp}","${AtLeastWinXP}"],["${atmostservicepack}","${AtMostServicePack}"],["${atmostwin10}","${AtMostWin10}"],["${atmostwin11}","${AtMostWin11}"],["${atmostwin2000}","${AtMostWin2000}"],["${atmostwin2003}","${AtMostWin2003}"],["${atmostwin2008}","${AtMostWin2008}"],["${atmostwin2008r2}","${AtMostWin2008R2}"],["${atmostwin2012}","${AtMostWin2012}"],["${atmostwin2012r2}","${AtMostWin2012R2}"],["${atmostwin7}","${AtMostWin7}"],["${atmostwin8}","${AtMostWin8}"],["${atmostwin8.1}","${AtMostWin8.1}"],["${atmostwin95}","${AtMostWin95}"],["${atmostwin98}","${AtMostWin98}"],["${atmostwinme}","${AtMostWinME}"],["${atmostwinnt4}","${AtMostWinNT4}"],["${atmostwinvista}","${AtMostWinVista}"],["${atmostwinxp}","${AtMostWinXP}"],["${isdomaincontroller}","${IsDomainController}"],["${isnt}","${IsNT}"],["${isserveros}","${IsServerOS}"],["${isservicepack}","${IsServicePack}"],["${iswin10}","${IsWin10}"],["${iswin11}","${IsWin11}"],["${iswin2000}","${IsWin2000}"],["${iswin2003}","${IsWin2003}"],["${iswin2008}","${IsWin2008}"],["${iswin2008r2}","${IsWin2008R2}"],["${iswin2012}","${IsWin2012}"],["${iswin2012r2}","${IsWin2012R2}"],["${iswin7}","${IsWin7}"],["${iswin8}","${IsWin8}"],["${iswin8.1}","${IsWin8.1}"],["${iswin95}","${IsWin95}"],["${iswin98}","${IsWin98}"],["${iswinme}","${IsWinME}"],["${iswinnt4}","${IsWinNT4}"],["${iswinvista}","${IsWinVista}"],["${iswinxp}","${IsWinXP}"],["${strfilter}","${StrFilter}"],["${strfilters}","${StrFilterS}"],["${versioncompare}","${VersionCompare}"],["${versionconvert}","${VersionConvert}"],["${wordadd}","${WordAdd}"],["${wordadds}","${WordAddS}"],["${wordfind}","${WordFind}"],["${wordfind2x}","${WordFind2X}"],["${wordfind2xs}","${WordFind2XS}"],["${wordfind3x}","${WordFind3X}"],["${wordfind3xs}","${WordFind3XS}"],["${wordfinds}","${WordFindS}"],["${wordinsert}","${WordInsert}"],["${wordinserts}","${WordInsertS}"],["${wordreplace}","${WordReplace}"],["${wordreplaces}","${WordReplaceS}"],["${disablex64fsredirection}","${DisableX64FSRedirection}"],["${enablex64fsredirection}","${EnableX64FSRedirection}"],["${iswow64}","${IsWow64}"],["${runningx64}","${RunningX64}"]]),u=new Map([[`/silent`,`/SILENT`],[`/filesonly`,`/FILESONLY`],[`/rebootok`,`/REBOOTOK`],[`/short`,`/SHORT`],[`/sd`,`/SD`],[`/branding`,`/BRANDING`],[`/final`,`/FINAL`],[`/solid`,`/SOLID`],[`/global`,`/GLOBAL`],[`/bom`,`/BOM`],[`/italic`,`/ITALIC`],[`/underline`,`/UNDERLINE`],[`/strike`,`/STRIKE`],[`/enablecancel`,`/ENABLECANCEL`],[`/overwrite`,`/OVERWRITE`],[`/replace`,`/REPLACE`],[`/noerrors`,`/NOERRORS`],[`/regedit5`,`/REGEDIT5`],[`/exeresource`,`/EXERESOURCE`],[`/stringid`,`/STRINGID`],[`/resizetofit`,`/RESIZETOFIT`],[`/resizetofitwidth`,`/RESIZETOFITWIDTH`],[`/resizetofitheight`,`/RESIZETOFITHEIGHT`],[`/trimleft`,`/TRIMLEFT`],[`/trimright`,`/TRIMRIGHT`],[`/trimcenter`,`/TRIMCENTER`],[`/windows`,`/windows`],[`/nonfatal`,`/NONFATAL`],[`/nocustom`,`/NOCUSTOM`],[`/uninstnocustom`,`/UNINSTNOCUSTOM`],[`/componentsonlyoncustom`,`/COMPONENTSONLYONCUSTOM`],[`/uninstcomponentsonlyoncustom`,`/UNINSTCOMPONENTSONLYONCUSTOM`],[`/fileexists`,`/FILEEXISTS`],[`/rawnl`,`/RAWNL`],[`/productversion`,`/ProductVersion`],[`/noworkingdir`,`/NoWorkingDir`],[`/r`,`/r`],[`/a`,`/a`],[`/e`,`/e`],[`/o`,`/o`],[`/x`,`/x`],[`/ifempty`,`/ifempty`],[`/ifnosubkeys`,`/ifnosubkeys`],[`/ifnovalues`,`/ifnovalues`],[`/nounload`,`/nounload`],[`/plugin`,`/plugin`],[`/ifndef`,`/ifndef`],[`/redef`,`/redef`],[`/date`,`/date`],[`/utcdate`,`/utcdate`],[`/file`,`/file`],[`/intfmt`,`/intfmt`],[`/math`,`/math`],[`/ignorecase`,`/ignorecase`],[`/packed`,`/packed`],[`/target`,`/target`]]),d=new Map([[`/lang=`,`/LANG=`],[`/timeout=`,`/TIMEOUT=`],[`/charset=`,`/CHARSET=`],[`/imgid=`,`/IMGID=`],[`/customstring=`,`/CUSTOMSTRING=`],[`/uninstcustomstring=`,`/UNINSTCUSTOMSTRING=`],[`/oname=`,`/oname=`]]),f=new Map;function p(e,t){for(let n of e){let e=n.toLowerCase(),r=f.get(e);r||(r=new Map,f.set(e,r));for(let[e,n]of t)r.set(e,n)}}p([`AllowRootDirInstall`,`AllowSkipFiles`,`AutoCloseWindow`,`CRCCheck`,`ManifestDPIAware`,`ManifestDisableWindowFiltering`,`ManifestGdiScaling`,`ManifestLongPathAware`,`SetAutoClose`,`SetDatablockOptimize`,`SetDateSave`,`SetPluginUnload`,`Unicode`,`WindowIcon`],[[`true`,`true`],[`false`,`false`]]),p([`CRCCheck`,`LogSet`,`LockWindow`,`SetCompress`,`SetDateSave`,`SetDatablockOptimize`,`SetOverwrite`,`WindowIcon`,`XPStyle`,`LicenseForceSelection`],[[`on`,`on`],[`off`,`off`]]),p([`FileOpen`],[[`r`,`r`],[`w`,`w`],[`a`,`a`]]),p([`SetCompressor`],[[`zlib`,`zlib`],[`bzip2`,`bzip2`],[`lzma`,`lzma`]]),p([`Target`],[[`x86`,`x86`],[`amd64`,`amd64`]]),p([`SetOverwrite`],[[`try`,`try`],[`ifnewer`,`ifnewer`],[`ifdiff`,`ifdiff`],[`lastused`,`lastused`]]),p([`SetCompress`],[[`auto`,`auto`],[`force`,`force`]]),p([`SilentInstall`],[[`normal`,`normal`],[`silent`,`silent`],[`silentlog`,`silentlog`]]),p([`SilentUnInstall`,`SetSilent`],[[`normal`,`normal`],[`silent`,`silent`]]),p([`ShowInstDetails`,`ShowUninstDetails`],[[`hide`,`hide`],[`show`,`show`],[`nevershow`,`nevershow`]]),p([`SetDetailsView`,`DirShow`],[[`show`,`show`],[`hide`,`hide`]]),p([`SetDetailsPrint`],[[`listonly`,`listonly`],[`textonly`,`textonly`],[`both`,`both`],[`none`,`none`],[`lastused`,`lastused`]]),p([`RequestExecutionLevel`],[[`none`,`none`],[`user`,`user`],[`highest`,`highest`],[`admin`,`admin`]]),p([`AddBrandingImage`],[[`top`,`top`],[`left`,`left`],[`bottom`,`bottom`],[`right`,`right`]]),p([`InstProgressFlags`],[[`smooth`,`smooth`],[`colored`,`colored`]]),p([`LicenseForceSelection`],[[`checkbox`,`checkbox`],[`radiobuttons`,`radiobuttons`]]),p([`SetShellVarContext`],[[`all`,`all`],[`current`,`current`]]),p([`DirVerify`],[[`auto`,`auto`],[`leave`,`leave`]]),p([`ExecShell`,`ExecShellWait`],[[`open`,`open`],[`print`,`print`]]),p([`Page`,`UninstPage`],[[`custom`,`custom`],[`license`,`license`],[`components`,`components`],[`directory`,`directory`],[`instfiles`,`instfiles`],[`uninstconfirm`,`uninstConfirm`]]),p([`SetCtlColors`],[[`transparent`,`transparent`]]),p([`LockWindow`],[[`on`,`on`],[`off`,`off`]]),p([`SetRegView`],[[`default`,`default`]]),p([`DeleteRegKey`,`DeleteRegValue`,`EnumRegKey`,`EnumRegValue`,`InstallDirRegKey`,`ReadRegDWORD`,`ReadRegStr`,`WriteRegBin`,`WriteRegDWORD`,`WriteRegExpandStr`,`WriteRegMultiStr`,`WriteRegNone`,`WriteRegStr`],[[`hkcr`,`HKCR`],[`hkcr32`,`HKCR32`],[`hkcr64`,`HKCR64`],[`hklm`,`HKLM`],[`hklm32`,`HKLM32`],[`hklm64`,`HKLM64`],[`hkcu`,`HKCU`],[`hkcu32`,`HKCU32`],[`hkcu64`,`HKCU64`],[`hku`,`HKU`],[`hkcc`,`HKCC`],[`hkdd`,`HKDD`],[`hkpd`,`HKPD`],[`shctx`,`SHCTX`]]),p([`MessageBox`],[[`mb_ok`,`MB_OK`],[`mb_okcancel`,`MB_OKCANCEL`],[`mb_abortretryignore`,`MB_ABORTRETRYIGNORE`],[`mb_retrycancel`,`MB_RETRYCANCEL`],[`mb_yesno`,`MB_YESNO`],[`mb_yesnocancel`,`MB_YESNOCANCEL`],[`mb_iconexclamation`,`MB_ICONEXCLAMATION`],[`mb_iconinformation`,`MB_ICONINFORMATION`],[`mb_iconquestion`,`MB_ICONQUESTION`],[`mb_iconstop`,`MB_ICONSTOP`],[`mb_usericon`,`MB_USERICON`],[`mb_topmost`,`MB_TOPMOST`],[`mb_setforeground`,`MB_SETFOREGROUND`],[`mb_right`,`MB_RIGHT`],[`mb_defbutton1`,`MB_DEFBUTTON1`],[`mb_defbutton2`,`MB_DEFBUTTON2`],[`mb_defbutton3`,`MB_DEFBUTTON3`],[`mb_defbutton4`,`MB_DEFBUTTON4`],[`idok`,`IDOK`],[`idcancel`,`IDCANCEL`],[`idyes`,`IDYES`],[`idno`,`IDNO`],[`idabort`,`IDABORT`],[`idretry`,`IDRETRY`],[`idignore`,`IDIGNORE`]]),p([`CreateShortcut`,`ShowWindow`],[[`sw_shownormal`,`SW_SHOWNORMAL`],[`sw_showmaximized`,`SW_SHOWMAXIMIZED`],[`sw_showminimized`,`SW_SHOWMINIMIZED`],[`sw_hide`,`SW_HIDE`],[`sw_show`,`SW_SHOW`]]),p([`CreateShortcut`],[[`alt`,`ALT`],[`control`,`CONTROL`],[`ext`,`EXT`],[`shift`,`SHIFT`]]),p([`SetFileAttributes`],[[`archive`,`ARCHIVE`],[`hidden`,`HIDDEN`],[`offline`,`OFFLINE`],[`readonly`,`READONLY`],[`system`,`SYSTEM`],[`temporary`,`TEMPORARY`]]),p([`FileSeek`],[[`set`,`SET`],[`cur`,`CUR`],[`end`,`END`]]),p([`GetWinVer`],[[`major`,`MAJOR`],[`minor`,`MINOR`],[`build`,`BUILD`],[`servicepack`,`SERVICEPACK`]]),p([`ManifestSupportedOS`],[[`winvista`,`WinVista`],[`win7`,`Win7`],[`win8`,`Win8`],[`win8.1`,`Win8.1`],[`win10`,`Win10`]]),p([`ChangeUI`],[[`dlg_id`,`dlg_id`]]);const m=f,h=new Set([`intop`,`intptrop`]);function g(e,t,n){let r=t.toLowerCase(),i=m.get(r);return(h.has(r)?S(e):x(e)).map(e=>b(e,i,n))}function _(e){return h.has(e.toLowerCase())}function v(e,t){return _(t)?e.join(` `):C(e)}function y(e,t){let n=w(e);if(!n)return e;let[,r]=n,i=t?`'`:`"`,a=T(r),o=a.includes(`"`),s=a.includes(`'`),c=a.includes("`");if(!o&&!s||!(i===`"`?o:s))return i===`"`?`"${a}"`:`'${a}'`;let l=i===`"`?`'`:`"`;return(l===`"`?o:s)?c?`"${E(a)}"`:`\`${a}\``:l===`"`?`"${a}"`:`'${a}'`}function b(e,t,n){if(e.startsWith(`$`))return e;if(e.startsWith(`"`)||e.startsWith(`'`)||e.startsWith("`"))return y(e,n);let r=e.toLowerCase(),i=t?.get(r)??u.get(r);if(i!==void 0)return i;let a=e.indexOf(`=`);if(a>0){let t=`${r.slice(0,a+1)}`,n=d.get(t);if(n!==void 0)return`${n}${e.slice(a+1)}`}return e}function x(e){return e.flatMap(e=>e.startsWith(`"`)||e.startsWith(`'`)||e.startsWith("`")||!e.includes(`|`)||e===`|`?[e]:D(e,`|`))}function S(e){return e.flatMap(e=>e.startsWith(`"`)||e.startsWith(`'`)||e.startsWith("`")||O.has(e)?[e]:A(e))}function C(e){let t=``;for(let n=0;n<e.length;n++){let r=e[n];r===`|`?t+=`|`:(n>0&&e[n-1]===`|`||t&&(t+=` `),t+=r)}return t}function w(e){let t=e[0];if(t===`"`||t===`'`||t==="`")return[t,e.slice(1,-1)]}function T(e){return e.replaceAll(`$\\"`,`"`).replaceAll(`""`,`"`).replaceAll(`$\\'`,`'`).replaceAll("$\\`","`")}function E(e){return e.replaceAll(`"`,`$\\"`)}function D(e,t){let n=[],r=``,i=0;for(;i<e.length;){if(e[i]===`$`&&e[i+1]===`{`){let t=e.indexOf(`}`,i+2);if(t!==-1){r+=e.slice(i,t+1),i=t+1;continue}}if(e[i]===t){r&&n.push(r),r=``,n.push(t),i++;continue}r+=e[i],i++}return r&&n.push(r),n}const O=new Set([`>>>`,`||`,`&&`,`<<`,`>>`,`+`,`-`,`*`,`/`,`%`,`|`,`&`,`^`,`~`,`!`]),k=new Set([`+`,`-`,`*`,`/`,`%`,`|`,`&`,`^`,`~`,`!`]);function A(e){let t=[],n=``,r=!0,i=0;for(;i<e.length;){if(e[i]===`$`&&e[i+1]===`{`){let t=e.indexOf(`}`,i+2);if(t!==-1){n+=e.slice(i,t+1),i=t+1,r=!1;continue}}if(i+2<e.length){let a=e.slice(i,i+3);if(O.has(a)){n&&=(t.push(n),``),t.push(a),r=!0,i+=3;continue}}if(i+1<e.length){let a=e.slice(i,i+2);if(O.has(a)){n&&=(t.push(n),``),t.push(a),r=!0,i+=2;continue}}let a=e[i];if(k.has(a)){if(a===`-`&&r){n+=a,i++;continue}n&&=(t.push(n),``),t.push(a),r=!0,i++;continue}n+=a,r=!1,i++}return n&&t.push(n),t.length>0?t:[e]}function j(e,t){let n=0,i=[],a=[],c=o(e);t.trimEmptyLines&&(c=s(c));for(let e of c)switch(e.type){case`blank`:a.push(``);break;case`comment`:a.push(N(e,n,t));break;case`label`:a.push(P(e,n,t));break;case`instruction`:{let o=e.keyword.toLowerCase();if(r.open.has(o))a.push(F(e,n,t)),i.push(n),n++;else if(r.case.has(o)){let r=(i.length>0?i[i.length-1]:0)+1;a.push(F(e,r,t)),n=r+1}else if(r.close.has(o))n=i.length>0?i.pop():0,a.push(F(e,n,t));else if(r.mid.has(o)){let n=i.length>0?i[i.length-1]:0;a.push(F(e,n,t))}else r.closeAfter.has(o)?(a.push(F(e,n,t)),n=(i.length>0?i[i.length-1]:0)+1):a.push(F(e,n,t));break}}return a.join(t.eol)+t.eol}function M(e,t){return(t.useTabs?` `:` `.repeat(t.indentSize)).repeat(e)}function N(e,t,n){let r=M(t,n);if(e.style===`block`){let t=e.value.split(/\r?\n/);return t.length===1?`${r}/*${e.value}*/`:t.map((e,n)=>{if(n===0)return`${r}/*${e}`;let i=e.trimStart();return n===t.length-1?`${r} ${i}*/`:`${r} ${i}`}).join(n.eol)}return`${r}${e.style===`hash`?`#`:`;`} ${e.value}`}function P(e,t,n){let r=`${M(t,n)}${e.name}:`;return e.comment&&(r+=` ${I(e.comment)}`),r}function F(e,t,n){let r=e.keyword.toLowerCase(),i=c.get(r)??l.get(r)??e.keyword,a=_(r),o=g(e.args,e.keyword,n.singleQuote),s=M(t,n);if(n.printWidth>0&&o.length>0)return L(i,o,e.comment?I(e.comment):void 0,s,a,n);let u=v(o,e.keyword),d=`${s}${o.length>0?`${i} ${u}`:i}`;return e.comment&&(d+=` ${I(e.comment)}`),d}function I(e){return`${e.style===`hash`?`#`:`;`} ${e.value}`}function L(e,t,n,r,i,a){let o=(t=>i?t.join(` `):v(t,e))(t),s=t.length>0?`${r}${e} ${o}`:`${r}${e}`,c=n?`${s} ${n}`:s;if(c.length<=a.printWidth)return c;let l=r+(a.useTabs?` `:` `.repeat(a.indentSize)),u=[],d=`${r}${e}`;for(let e of t){let t=`${d} ${e}`;t.length+2>a.printWidth&&d.length>r.length?(u.push(`${d} \\`),d=`${l}${e}`):d=t}return n&&(d=`${d} ${n}`),u.push(d),u.join(a.eol)}function R(n={}){let r={indentSize:2,printWidth:120,singleQuote:!1,trimEmptyLines:!0,useTabs:!0,...n};if(r.useTabs===!1&&(!r.indentSize||Number.isNaN(r.indentSize)||r.indentSize<=0))throw Error(`The indentSize option expects a positive integer`);function i(t){let n=e(t),i=o(t);return j(n,{useTabs:r.useTabs??!0,indentSize:r.indentSize??2,printWidth:r.printWidth??120,singleQuote:r.singleQuote??!1,trimEmptyLines:r.trimEmptyLines??!0,eol:i})}function a(e){let t=i(e);return t===e?null:t}function o(e){return r.endOfLine?r.endOfLine===`crlf`?`\r
|
|
2
2
|
`:`
|
|
3
|
-
`:
|
|
4
|
-
|
|
5
|
-
`)}return{format:a,check:o}}export{z as createFormatter};
|
|
3
|
+
`:t(e)??`\r
|
|
4
|
+
`}return{format:i,check:a}}export{R as createFormatter};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nsis/dent",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "An opinionated code formatter for NSIS scripts",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"files": [
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
},
|
|
19
19
|
"repository": {
|
|
20
20
|
"type": "git",
|
|
21
|
-
"url": "git+https://github.com/idleberg/
|
|
21
|
+
"url": "git+https://github.com/idleberg/nsis-javascript-tools.git"
|
|
22
22
|
},
|
|
23
|
-
"homepage": "https://github.com/idleberg/
|
|
23
|
+
"homepage": "https://github.com/idleberg/nsis-javascript-tools/tree/main/packages/dent#readme",
|
|
24
24
|
"keywords": [
|
|
25
25
|
"nsis",
|
|
26
26
|
"formatter"
|