{"id":7726,"date":"2020-10-07T13:40:56","date_gmt":"2020-10-07T10:40:56","guid":{"rendered":"https:\/\/dhtmlx.com\/blog\/?p=7726"},"modified":"2025-07-30T11:52:50","modified_gmt":"2025-07-30T08:52:50","slug":"dhtmlx-vault-4-0-touch-screens-typescript","status":"publish","type":"post","link":"https:\/\/dhtmlx.com\/blog\/dhtmlx-vault-4-0-touch-screens-typescript\/","title":{"rendered":"DHTMLX Vault 4.0: Enhanced Work on Touch Screens, Fast Switching Between Display Modes, and TypeScript Support"},"content":{"rendered":"<p>The new major release 4.0 of DHTMLX Vault delivers TypeScript support and enhanced work on touch screens. From now on, the DHTMLX file upload component provides file drag-n-drop, ability to select and remove several files at a time, toggle between the Grid and List modes, and pass custom parameters in the request header. Besides, there appear new events for listening to various user actions.<\/p>\n<p><strong><a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxVault\/download.shtml\" rel=\"noopener\" target=\"_blank\">Download DHTMLX Vault 4.0 30-day free trial version ><\/a><\/strong>  <\/p>\n<h5>TypeScript Support<\/h5>\n<p>First and foremost, the DHTMLX file upload component receives support for TypeScript. From now on, coding will become faster and easier due to embedded type definitions, autocompletion, and type checking. <a href=\"https:\/\/snippet.dhtmlx.com\/26x2jra2\" rel=\"noopener\" target=\"_blank\">Check the sample ><\/a><\/p>\n<h5>Manipulating Multiple Files<\/h5>\n<p>Starting with v4.0, end-users can manipulate multiple files in the queue of our file uploader at the same time.<br \/>\nDHTMLX Vault allows selecting several files and deleting them just in one click.<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2020\/10\/Delete.gif\" alt=\"JS File Upload Delete FIles\" width=\"552\" height=\"500\" class=\"aligncenter size-full wp-image-7729\" \/><a href=\"https:\/\/snippet.dhtmlx.com\/6dvbdt6s?tag=vault\" rel=\"noopener\" target=\"_blank\"><\/p>\n<p style=\"text-align:center;\">Check the sample ><\/p>\n<p><\/a><\/p>\n<h5>File Drag-n-Drop<\/h5>\n<p>DHTMLX Vault makes it possible to reorder files in the queue using drag-n-drop. This feature is available by default in both Grid and List modes. Thus, you can select one or multiple files and move them all together.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2020\/10\/Reorder.gif\" alt=\"JS File Drag-n-Drop\" width=\"552\" height=\"500\" class=\"aligncenter size-full wp-image-7732\" \/><a href=\"https:\/\/snippet.dhtmlx.com\/6dvbdt6s?tag=vault\" rel=\"noopener\" target=\"_blank\"><\/p>\n<p style=\"text-align:center;\">Check the sample ><\/p>\n<p><\/a><\/p>\n<h5>Switching Between Grid and List Modes<\/h5>\n<p>Another novelty is the ability to toggle between the Grid and List modes while manipulating files. Both Grid and List controls are available in the toolbar by default now. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2020\/10\/Modes.gif\" alt=\"JS file uploader file preview\" width=\"552\" height=\"500\" class=\"aligncenter size-full wp-image-7740\" \/><a href=\"https:\/\/snippet.dhtmlx.com\/6dvbdt6s?tag=vault\" rel=\"noopener\" target=\"_blank\"><\/p>\n<p style=\"text-align:center;\">Check the sample ><\/p>\n<p><\/a><\/p>\n<p>You can still hide the mode controls via the <a href=\"https:\/\/docs.dhtmlx.com\/vault\/api__vault_modecontrols_config.html\" rel=\"noopener\" target=\"_blank\"><strong>modeControls<\/strong><\/a> config. If this config is set to <strong>false<\/strong>, the controls won&#8217;t be displayed and files will be arranged in a list.<\/p>\n<div class=\"codecolorer-container javascript default codecolorer-noborder\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\"><span class=\"kw1\">var<\/span> vault <span class=\"sy0\">=<\/span> <span class=\"kw1\">new<\/span> dhx.<span class=\"me1\">Vault<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;vault_container&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"br0\">&#123;<\/span> <br \/>\n&nbsp; &nbsp; uploader<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; <span class=\"co1\">\/\/ obligatory, the path for upload<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; target<span class=\"sy0\">:<\/span><span class=\"st0\">&quot;\/upload&quot;<\/span><br \/>\n&nbsp; &nbsp; <span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; modeControls<span class=\"sy0\">:<\/span> <span class=\"kw2\">false<\/span> <br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p>The interface of DHTMLX Vault with these controls hidden looks like that:<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2020\/10\/Hide-controls.png\" alt=\"Hidden file upload controls\" width=\"550\" height=\"500\" class=\"aligncenter size-full wp-image-7733\" srcset=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2020\/10\/Hide-controls.png 550w, https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2020\/10\/Hide-controls-300x273.png 300w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/p>\n<p style=\"text-align:center;\">The List mode with hidden mode controls. <a href=\"https:\/\/snippet.dhtmlx.com\/jnw92mlv?tag=vault\" rel=\"noopener\" target=\"_blank\">Check the sample ><\/a><\/p>\n<h5>Parameters of Request Headers<\/h5>\n<p>The release brings out the ability to include any custom parameters into the request header via the <a href=\"https:\/\/docs.dhtmlx.com\/vault\/api__uploader__headerparams_config.html\" rel=\"noopener\" target=\"_blank\"><strong>headerParams<\/strong><\/a> property of the Uploader configuration object. Thanks to that, developers can pass authentication tokens and any other parameters required.<\/p>\n<div class=\"codecolorer-container javascript default codecolorer-noborder\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\"><span class=\"kw1\">var<\/span> vault <span class=\"sy0\">=<\/span> <span class=\"kw1\">new<\/span> dhx.<span class=\"me1\">Vault<\/span><span class=\"br0\">&#40;<\/span>\u201cvault\u201d<span class=\"sy0\">,<\/span> <span class=\"br0\">&#123;<\/span><br \/>\nuploader<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp; <span class=\"co1\">\/\/ obligatory, the path for upload<\/span><br \/>\n&nbsp; &nbsp; target<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;\/upload&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; headerParams<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; <span class=\"st0\">&quot;firstCustomParam&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;customValue&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; <span class=\"st0\">&quot;secondCustomParam&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;customValue&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; <span class=\"st0\">&quot;thirdCustomParam&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;customValue&quot;<\/span><br \/>\n&nbsp; &nbsp; <span class=\"br0\">&#125;<\/span><br \/>\n&nbsp;<span class=\"br0\">&#125;<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<h5>New Events<\/h5>\n<p>V4.0 enriched the API of DHTMLX Vault with a wide range of new events to make your app more interactive. Now our file uploader can listen to such user actions as dragging and dropping files, clicking and mouse hovering, and much more. <a href=\"https:\/\/docs.dhtmlx.com\/vault\/api__vault_afterdrag_event.html\" rel=\"noopener\" target=\"_blank\">Learn more ><\/a><\/p>\n<p>Here is a <a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxVault\/download.shtml\" rel=\"noopener\" target=\"_blank\">free 30-day evaluation version of DHTMLX Vault<\/a>. Download it and test the DHTMLX file uploader in your projects. We are looking forward to your feedback!<\/p>\n<p>We invite our current clients to get the latest major version in their <a href=\"https:\/\/dhtmlx.com\/clients\/\" rel=\"noopener\" target=\"_blank\">Client&#8217;s Area<\/a>. <\/p>\n<p>Our technical support team is always there to help if you face any difficulties in your work with DHTMLX components. We answer all your tickets on business days within 24 to 72 hours.<\/p>\n<h5>Related Materials:<\/h5>\n<ul>\n<li><a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxVault\/\" rel=\"noopener\" target=\"_blank\">JavaScript file upload library<\/a><\/li>\n<li><a href=\"https:\/\/docs.dhtmlx.com\/vault\/whats_new.html\" rel=\"noopener\" target=\"_blank\">Full &#8220;What&#8217;s new&#8221; list<\/a><\/li>\n<li><a href=\"https:\/\/snippet.dhtmlx.com\/6dvbdt6s?tag=vault\" rel=\"noopener\" target=\"_blank\">Samples<\/a><\/li>\n","protected":false},"excerpt":{"rendered":"<p>The new major release 4.0 of DHTMLX Vault delivers TypeScript support and enhanced work on touch screens. From now on, the DHTMLX file upload component provides file drag-n-drop, ability &#8230;<\/p>\n","protected":false},"author":101012,"featured_media":7737,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70,1,38],"tags":[33,16,41,4],"class_list":["post-7726","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-releases","category-uncategorized","category-visible","tag-all-posts","tag-dhtmlxvault","tag-typescript","tag-dhtmlx-updates"],"_links":{"self":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/7726","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/users\/101012"}],"replies":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/comments?post=7726"}],"version-history":[{"count":15,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/7726\/revisions"}],"predecessor-version":[{"id":14178,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/7726\/revisions\/14178"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media\/7737"}],"wp:attachment":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media?parent=7726"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/categories?post=7726"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/tags?post=7726"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}