<ActionTemplates>
   <Action>
      <Name>Zip.Add</Name>
      <Description>Adds files to a zip archive.</Description>
      <ReturnValueType/>
      <Arguments>
         <Arg>
            <Name>ZipFile</Name>
            <Description>The full path and file name of the Zip archive file.</Description>
            <Type>string</Type>
            <Default/>
            <Required>1</Required>
            <EasyMode>
               <Default>"C:\\Myzip.Zip"</Default>
               <DataType>fileedit</DataType>
               <Constraints>Docs</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Files</Name>
            <Description>A table containing the full paths to all of the files you want to add.</Description>
            <Type>table</Type>
            <Default/>
            <Required>1</Required>
            <EasyMode>
               <Default>{}</Default>
               <DataType>table</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>IncludeFolderNames</Name>
            <Description>Whether to preserve folder names in the archive when adding files.</Description>
            <Type>boolean</Type>
            <Default>true</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>true</Default>
               <DataType>boolean</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Password</Name>
            <Description>The password to use to protect the Zip file. This password will be needed to extract the files. This parameter is optional. If you don't want to protect the Zip file, just leave this parameter blank.</Description>
            <Type>string</Type>
            <Default>""</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>""</Default>
               <DataType>string</DataType>
               <Constraints>0,*</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>CompFactor</Name>
            <Description>The compression factor to use for the Zip file (0-9). 0 is the fastest and compresses the least, 9 is the slowest and compresses the most. The default is 5.</Description>
            <Type>number</Type>
            <Default>5</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>5</Default>
               <DataType>number</DataType>
               <Constraints>0,9</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>CallbackFunction</Name>
            <Description>The name of a function that will be called whenever progress is made in adding a file to the Zip archive. (You can use this callback function to display the progress of each file's archiving in your own custom way.).</Description>
            <Type>function</Type>
            <Default>nil</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>nil</Default>
               <DataType>function</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Recurse</Name>
            <Description>Whether to recurse subfolders when wildcards are used.</Description>
            <Type>boolean</Type>
            <Default>false</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>false</Default>
               <DataType>boolean</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
      </Arguments>
   </Action>
   <Action>
      <Name>Zip.Extract</Name>
      <Description>Extracts files from a Zip archive.</Description>
      <ReturnValueType/>
      <Arguments>
         <Arg>
            <Name>ZipFile</Name>
            <Description>The full path and file name of the Zip archive file.</Description>
            <Type>string</Type>
            <Default/>
            <Required>1</Required>
            <EasyMode>
               <Default>"AutoPlay\\Docs\\MyZip.zip"</Default>
               <DataType>fileedit</DataType>
               <Constraints>Docs</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Files</Name>
            <Description>A table containing the list of files to extract. Use {"*.*"} to extract all files from the Zip archive.</Description>
            <Type>table</Type>
            <Default/>
            <Required>1</Required>
            <EasyMode>
               <Default>{"*.*"}</Default>
               <DataType>table</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Destination</Name>
            <Description>The folder path to extract the files to.</Description>
            <Type>string</Type>
            <Default/>
            <Required>1</Required>
            <EasyMode>
               <Default>"C:\\My Folder"</Default>
               <DataType>proj_folder</DataType>
               <Constraints/>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Recurse</Name>
            <Description>Whether to recurse into subfolders as it searches for files to extract.</Description>
            <Type>boolean</Type>
            <Default>true</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>true</Default>
               <DataType>boolean</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>UseInternalFolders</Name>
            <Description>Whether to recreate the internal file structure of the Zip file when extracting files.</Description>
            <Type>boolean</Type>
            <Default>true</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>true</Default>
               <DataType>boolean</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Password</Name>
            <Description>The password required to extract files from the Zip file. (This parameter is optional and only needed if you password protected the Zip file. If no password is required, just leave this parameter blank.).</Description>
            <Type>string</Type>
            <Default>""</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>""</Default>
               <DataType>string</DataType>
               <Constraints>0,*</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>Overwrite</Name>
            <Description>Whether to overwrite any already existing files in the destination folder when extracting.</Description>
            <Type>number</Type>
            <Default>0</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>ZIP_OVERWRITE_NEVER</Default>
               <DataType>combo</DataType>
               <Constraints>ZIP_OVERWRITE_NEVER,ZIP_OVERWRITE_NEWER,ZIP_OVERWRITE_ALWAYS</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>CallbackFunction</Name>
            <Description>The name of a function that will be called whenever progress is made when extracting each file from the Zip archive. You can use this callback function to display the progress of each file's extraction in your own custom way.</Description>
            <Type>function</Type>
            <Default>nil</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>nil</Default>
               <DataType>function</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
      </Arguments>
   </Action>
   <Action>
      <Name>Zip.GetContents</Name>
      <Description>Returns the list of files within a given Zip file.</Description>
      <ReturnValueType>table</ReturnValueType>
      <Arguments>
         <Arg>
            <Name>ZipFile</Name>
            <Description>The full path and file name of the Zip archive file.</Description>
            <Type>string</Type>
            <Default/>
            <Required>1</Required>
            <EasyMode>
               <Default>"AutoPlay\\Docs\\MyZip.zip"</Default>
               <DataType>fileedit</DataType>
               <Constraints>Docs</Constraints>
            </EasyMode>
         </Arg>
         <Arg>
            <Name>IncludeFolderNames</Name>
            <Description>Whether to include any folders in the list.</Description>
            <Type>boolean</Type>
            <Default>true</Default>
            <Required>0</Required>
            <EasyMode>
               <Default>true</Default>
               <DataType>boolean</DataType>
               <Constraints>none</Constraints>
            </EasyMode>
         </Arg>
      </Arguments>
   </Action>
</ActionTemplates>
