CINXE.COM
Downloads
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <link rel="stylesheet" href="https://static-production.npmjs.com/styles.0c10d02ae8f02a124267.css" /> <title data-react-helmet="true">esify - npm</title> <meta data-react-helmet="true" http-equiv="cleartype" content="on"/><meta data-react-helmet="true" name="apple-mobile-web-app-capable" content="yes"/><meta data-react-helmet="true" name="mobile-web-app-capable" content="yes"/><meta data-react-helmet="true" name="viewport" content="width=device-width,minimum-scale=1.0,initial-scale=1,user-scalable=yes"/><meta data-react-helmet="true" property="og:image" content="https://static-production.npmjs.com/338e4905a2684ca96e08c7780fc68412.png"/><meta data-react-helmet="true" name="msapplication-TileColor" content="#cb3837"/><meta data-react-helmet="true" name="msapplication-TileImage" content="https://static-production.npmjs.com/7a7ffabbd910fc60161bc04f2cee4160.png"/><meta data-react-helmet="true" name="msapplication-config" content="https://static-production.npmjs.com/668aac888e52ae13cac9cfd71fabd31f.xml"/><meta data-react-helmet="true" name="theme-color" content="#cb3837"/><meta data-react-helmet="true" name="description" content="A CLI for converting Shopify’s CoffeeScript to ESNext.. Latest version: 15.1.2, last published: 8 years ago. Start using esify in your project by running `npm i esify`. There are no other projects in the npm registry using esify."/><meta data-react-helmet="true" property="og:description" content="A CLI for converting Shopify’s CoffeeScript to ESNext.. Latest version: 15.1.2, last published: 8 years ago. Start using esify in your project by running `npm i esify`. There are no other projects in the npm registry using esify."/><meta data-react-helmet="true" property="og:title" content="esify"/><meta data-react-helmet="true" property="og:url" content="https://www.npmjs.com/package/esify"/><meta data-react-helmet="true" property="og:site_name" content="npm"/><meta data-react-helmet="true" name="keywords" content=""/><meta data-react-helmet="true" name="twitter:card" content="summary"/><meta data-react-helmet="true" name="twitter:url" content="https://www.npmjs.com/package/esify"/><meta data-react-helmet="true" name="twitter:title" content="npm: esify"/><meta data-react-helmet="true" name="twitter:description" content="A CLI for converting Shopify’s CoffeeScript to ESNext.. Latest version: 15.1.2, last published: 8 years ago. Start using esify in your project by running `npm i esify`. There are no other projects in the npm registry using esify."/> <link data-react-helmet="true" href="https://static-production.npmjs.com/osd.xml" rel="search" title="npm package search" type="application/opensearchdescription+xml"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="120x120" href="https://static-production.npmjs.com/58a19602036db1daee0d7863c94673a4.png"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="144x144" href="https://static-production.npmjs.com/7a7ffabbd910fc60161bc04f2cee4160.png"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="152x152" href="https://static-production.npmjs.com/34110fd7686e2c90a487ca98e7336e99.png"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="180x180" href="https://static-production.npmjs.com/3dc95981de4241b35cd55fe126ab6b2c.png"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/b0f1a8318363185cc2ea6a40ac23eeb2.png" sizes="32x32"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/1996fcfdf7ca81ea795f67f093d7f449.png" sizes="230x230"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/f1786e9b7cba9753ca7b9c40e8b98f67.png" sizes="96x96"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/5f6e93af5bf0f5dcdd1eecdac99f51ee.png" sizes="192x192"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/c426a1116301d1fd178c51522484127a.png" sizes="228x228"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/da3ab40fb0861d15c83854c29f5f2962.png" sizes="16x16"/> </head> <body> <div id="app"><div class="_452c3ec4 d68c66a8"><div class="cf325dbd list ma0 pa0 tr z-999"><div class="c746cc21 list ma0 pa0 tr z-999"></div></div><div class="flex flex-column vh-100"><header class="_755f5b0f bg-white z-2 bb b--black-20"><div></div><div class="e7070742 pv3-ns ph1-ns bg-white"><div id="header" class="bbefbfcc">skip to:<a aria-label="skip to content" class="d6d0dbcf" href="#main">content</a><a aria-label="skip to package search" class="d6d0dbcf" href="#search">package search</a><a aria-label="skip to sign in" class="d6d0dbcf" href="#signin">sign in</a></div><div class="ef7c6e62 center mw9 border-box ph4-ns ph3 flex items-center"><span class="_0edb515f pr3 dn dib-ns link lh-title dim b--white-30">❤</span><nav class="_4a5f2a79 db w-100 w-auto-ns truncate" aria-label="Product Navigation"><ul id="main-menu" class="list pl0" role="menu" aria-label="Nav Menu"><li role="none" class="dib"><a href="/products/pro" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-pro-link">Pro</a></li><li role="none"><a href="/products/teams" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-teams-link">Teams</a></li><li role="none" class="dib"><a href="/products" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-pricing-link">Pricing</a></li><li role="none" class="dib"><a href="https://docs.npmjs.com" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-docs-link">Documentation</a></li></ul></nav></div></div><div class="_4ea0e50d bt b--black-10"><div class="c5b9953b center mw9 flex flex-wrap ph4-ns border-box"><span class="_657f443d">npm</span><div class="af43375d mt3 db mr4-ns pb3 pb0-ns flex-auto 2-ns ph3 ph0-ns"><a href="/" aria-label="Npm"><svg viewBox="0 0 780 250" aria-hidden="true"><path fill="#231F20" d="M240,250h100v-50h100V0H240V250z M340,50h50v100h-50V50z M480,0v200h100V50h50v150h50V50h50v150h50V0H480z M0,200h100V50h50v150h50V0H0V200z" stroke-width="5" stroke="#f7f7f7"></path></svg></a></div><div id="search" class="_581ebd89 relative flex-auto w-100 w-50-ns pv2-ns order-1-ns order-2"><form id="search" method="GET" action="/search" class="_13c93d41 relative flex bg-transparent ph3 ph2 pv2 ph0-ns pv0-ns bt b--black-10 bn-ns"><div class="e82b10fd relative dde91b96"><div class="_2f299eeb nowrap flex"><span class="_705cdf4f db fl pl3 pr1"><svg width="15px" height="15px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" aria-hidden="true"><g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g stroke="#777777" stroke-width="1.3"><g><path d="M13.4044,7.0274 C13.4044,10.5494 10.5494,13.4044 7.0274,13.4044 C3.5054,13.4044 0.6504,10.5494 0.6504,7.0274 C0.6504,3.5054 3.5054,0.6504 7.0274,0.6504 C10.5494,0.6504 13.4044,3.5054 13.4044,7.0274 Z"></path><path d="M11.4913,11.4913 L17.8683,17.8683"></path></g></g></g></svg></span><input type="search" role="combobox" name="q" hotkeys="[object Object]" placeholder="Search packages" aria-label="Search packages" aria-controls="typeahead-list-308596" aria-expanded="false" aria-activedescendant="" inputref="[object Object]" autoComplete="off" class="_390acbc5 f5 fw3 black relative" value="" element="input"/></div><div aria-live="polite" aria-atomic="true" class="_6f20b8d1"></div></div><button type="submit" class="_0da775bb bn pv2 ph4 f6 white pointer bn pv2 ph4 f6 white pointer" aria-label="Search">Search</button><input type="hidden" name="csrftoken" value="uaUXgYnvXIYKr28OwXmytKDJ7NA29rg3iHWEH3dn_bQ"/></form></div><div class="_6f31c82b ml3 mt2 mt0-ns pv2-ns flex-auto tr nowrap relative pointer fw6 order-1 order-2-ns"><div class="_1066d9e7 flex items-center self-center pl3"><a href="/signup" id="signup" class="_9752c8b3 pa2 lh-copy br2 f6 no-underline fw5 black dim ph3 mr3">Sign Up</a><a href="/login" id="signin" class="_352269a0 pa1 lh-copy br2 f6 no-underline fw5 black dim">Sign In</a></div></div></div></div></header><main id="main"> <div class="_36ae70e9 flex flex-row flex-wrap pb5 ph3-l mw-100 mt4-ns mt1 center-ns mh1" id="top"><div class="w-100 ph0-l ph3 ph4-m"><h2 class="cd6ce1fd flex flex-row justify-start items-center w-100 fw6 mt3 black dib ma0 tracked-tight no-underline hover-black f3-ns"><span class="_50685029 truncate">esify</span></h2><span class="_76473bea f6 dib ph0 pv2 mb2-ns black-80 nowrap f5 fw4 lh-copy">15.1.2<!-- --> • </span><span class="_813b53b2 _76473bea f6 dib ph0 pv2 mb2-ns black-80 nowrap f5 fw4 lh-copy">Public</span><span class="_76473bea f6 dib ph0 pv2 mb2-ns black-80 nowrap f5 fw4 lh-copy"> • Published <time dateTime="2017-01-04T04:25:41.440Z" title="1/4/2017, 4:25:41 AM">8 years ago</time></span></div><ul class="cfb2a888 flex flex-column flex-row-l w-100 ma0 pa0 mr2 mr0-l list" role="tablist" aria-owns="package-tab-readme package-tab-code package-tab-dependencies package-tab-dependents package-tab-versions"><li class="_8055e658 f5 fw5 tc pointer d9f99065 ac5f7ef8 f4 fw6 black-50" role="presentation"><a class="_38ce9a85 link db ph4 fw6" href="?activeTab=readme" aria-selected="true" role="tab" aria-controls="tabpanel-readme" id="package-tab-readme" tabindex="0"><span><svg aria-hidden="true" focusable="false" data-prefix="far" data-icon="file-alt" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M288 248v28c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-28c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm-12 72H108c-6.6 0-12 5.4-12 12v28c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-28c0-6.6-5.4-12-12-12zm108-188.1V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h204.1C264.8 0 277 5.1 286 14.1L369.9 98c9 8.9 14.1 21.2 14.1 33.9zm-128-80V128h76.1L256 51.9zM336 464V176H232c-13.3 0-24-10.7-24-24V48H48v416h288z"></path></svg> Readme</span></a></li><li class="_8055e658 f5 fw5 tc pointer _7aa1ee94" role="presentation"><a class="_38ce9a85 link db ph4 fw6" href="?activeTab=code" aria-selected="false" role="tab" aria-controls="tabpanel-explore" id="package-tab-code" tabindex="-1"><span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="file-archive" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zM128.4 336c-17.9 0-32.4 12.1-32.4 27 0 15 14.6 27 32.5 27s32.4-12.1 32.4-27-14.6-27-32.5-27zM224 136V0h-63.6v32h-32V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM95.9 32h32v32h-32zm32.3 384c-33.2 0-58-30.4-51.4-62.9L96.4 256v-32h32v-32h-32v-32h32v-32h-32V96h32V64h32v32h-32v32h32v32h-32v32h32v32h-32v32h22.1c5.7 0 10.7 4.1 11.8 9.7l17.3 87.7c6.4 32.4-18.4 62.6-51.4 62.6z"></path></svg>Code <span class="a17280e0"><span class="Label-sc-6dyj7v-0 kghsgn _22665c13">Beta</span></span></span></a></li><li class="_8055e658 f5 fw5 tc pointer c1f85151" role="presentation"><a class="_38ce9a85 link db ph4 fw6" href="?activeTab=dependencies" aria-selected="false" role="tab" aria-controls="tabpanel-dependencies" id="package-tab-dependencies" tabindex="-1"><span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cube" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z"></path></svg>6 Dependencies</span></a></li><li class="_8055e658 f5 fw5 tc pointer _7cec0316" role="presentation"><a class="_38ce9a85 link db ph4 fw6" href="?activeTab=dependents" aria-selected="false" role="tab" aria-controls="tabpanel-dependents" id="package-tab-dependents" tabindex="-1"><span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cubes" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M488.6 250.2L392 214V105.5c0-15-9.3-28.4-23.4-33.7l-100-37.5c-8.1-3.1-17.1-3.1-25.3 0l-100 37.5c-14.1 5.3-23.4 18.7-23.4 33.7V214l-96.6 36.2C9.3 255.5 0 268.9 0 283.9V394c0 13.6 7.7 26.1 19.9 32.2l100 50c10.1 5.1 22.1 5.1 32.2 0l103.9-52 103.9 52c10.1 5.1 22.1 5.1 32.2 0l100-50c12.2-6.1 19.9-18.6 19.9-32.2V283.9c0-15-9.3-28.4-23.4-33.7zM358 214.8l-85 31.9v-68.2l85-37v73.3zM154 104.1l102-38.2 102 38.2v.6l-102 41.4-102-41.4v-.6zm84 291.1l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6zm240 112l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6z"></path></svg>0 Dependents</span></a></li><li class="_8055e658 f5 fw5 tc pointer b4fcfd19" role="presentation"><a class="_38ce9a85 link db ph4 fw6" href="?activeTab=versions" aria-selected="false" role="tab" aria-controls="tabpanel-versions" id="package-tab-versions" tabindex="-1"><span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="tags" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M497.941 225.941L286.059 14.059A48 48 0 0 0 252.118 0H48C21.49 0 0 21.49 0 48v204.118a48 48 0 0 0 14.059 33.941l211.882 211.882c18.744 18.745 49.136 18.746 67.882 0l204.118-204.118c18.745-18.745 18.745-49.137 0-67.882zM112 160c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm513.941 133.823L421.823 497.941c-18.745 18.745-49.137 18.745-67.882 0l-.36-.36L527.64 323.522c16.999-16.999 26.36-39.6 26.36-63.64s-9.362-46.641-26.36-63.64L331.397 0h48.721a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882z"></path></svg>22 Versions</span></a></li></ul><div class="_6620a4fd mw8-l mw-100 w-100 w-two-thirds-l ph3-m pt2 pl0-ns pl2"><span><section class="e22ba268 ph2 ph0-ns ml0-ns mr3-ns black-80" id="tabpanel-readme" aria-labelledby="package-tab-readme" role="tabpanel" data-attribute=""><div class=""><article><div id="readme" class="_704c034e _6d9832ac pr4-ns pl0-ns ph1-m pr3-m pr2"><h1 class="package-name-redundant"><a id="user-content-esify" class="deep-link" href="#esify" aria-hidden="true" rel="nofollow"><svg aria-hidden="true" class="deep-link-icon" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>esify</h1> <p><code>esify</code> is a combination of various tools with the purpose of automatically translating Shopify’s CoffeeScript to ESNext. Unless you work at Shopify, you probably don’t need this.</p> <h2><a id="user-content-installation" class="deep-link" href="#installation" aria-hidden="true" rel="nofollow"><svg aria-hidden="true" class="deep-link-icon" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Installation</h2> <div class="highlight sh"><pre class="editor editor-colors"><div class="line"><span class="source shell"><span>npm install -g esify</span></span></div></pre></div> <h2><a id="user-content-limitations" class="deep-link" href="#limitations" aria-hidden="true" rel="nofollow"><svg aria-hidden="true" class="deep-link-icon" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Limitations</h2> <p>The tools on which <code>esify</code> is build have certain limitations that prevent us from providing the ideal conversion in some cases. We strongly recommend you have our linting configuration, <a href="../eslint-plugin-shopify" rel="nofollow"><code>eslint-plugin-shopify</code></a>, set up for your project before beginning to translate in order to easily identify small translation errors (unused or missing references, indentation, etc). Below is a list of limitations that you should check for in the code you are converting:</p> <ul> <li>All comments will be removed in the transformed output (including Sprockets directives)</li> <li>CoffeeScript soak calls with embedded methods (e.g., <code>foo.bar()?.baz</code>) will compile to JavaScript that is hard to read</li> <li>Assignment to a global outside of the file creating that global will result in incorrect exports (e.g., <code>Shopify.UIPopover.foo = 'bar'</code> outside the file declaring <code>Shopify.UIPopover.foo</code>)</li> <li>Strings and regular expressions with complex escapes might be converted improperly</li> <li>Multiline CoffeeScript strings become a single-line string with newlines inserted as needed</li> <li>Object keys that use interpolation are not handled correctly.</li> </ul> <p>Our CoffeeScript to JavaScript converter also makes a few assumptions that allow us to convert more files without user intervention, but which may not be true for your codebase:</p> <ul> <li> <p>Private variables inside of a class declaration are moved to the top of the scope in which the class is defined because JavaScript does not allow variables to be scoped to a class.</p> <div class="highlight coffee"><pre class="editor editor-colors"><div class="line"><span class="source coffee"><span class="meta class coffee"><span class="storage type class coffee"><span>class</span></span><span> </span><span class="entity name type class coffee"><span>A</span></span></span></span></div><div class="line"><span class="source coffee"><span> </span><span class="variable assignment coffee"><span class="variable assignment coffee"><span>b </span><span class="keyword operator coffee"><span>=</span></span></span></span><span> </span><span class="constant numeric coffee"><span>123</span></span></span></div><div class="line"><span class="source coffee"><span> </span><span class="meta function coffee"><span class="entity name function coffee"><span>c </span></span></span><span class="keyword operator coffee"><span>=</span></span><span> </span><span class="meta inline function coffee"><span class="variable function coffee"><span>()</span></span><span> </span><span class="storage type function coffee"><span>-></span></span></span></span></div></pre></div> <p>Becomes:</p> <div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="storage type js"><span>var</span></span><span> b </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="constant numeric decimal js"><span>123</span></span><span class="punctuation terminator statement js"><span>;</span></span></span></div><div class="line"><span class="source js"><span class="storage type js"><span>var</span></span><span> </span><span class="meta function js"><span class="entity name function js"><span>c</span></span><span> </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="storage type function js"><span>function</span></span><span class="meta js"><span class="punctuation definition begin round js"><span>(</span></span><span class="punctuation definition end round js"><span>)</span></span></span></span><span> </span><span class="punctuation definition function begin curly js"><span>{</span></span><span class="punctuation definition function end curly js"><span>}</span></span><span class="punctuation terminator statement js"><span>;</span></span></span></div><div class="line"><span class="source js"><span> </span></span></div><div class="line"><span class="source js"><span class="meta class js"><span class="storage type class js"><span>class</span></span><span> </span><span class="entity name type class js"><span>A</span></span></span><span> </span><span class="punctuation section scope begin js"><span>{</span></span><span class="punctuation section scope end js"><span>}</span></span></span></div></pre></div> </li> <li> <p>Function calls executed in a class block are moved to the bottom of the scope, after the class’s definition. This can cause problems if the function call was made with the assumption that the prototype of the class has not yet been set up, as the JavaScript conversion will run after the class has been fully constructed.</p> <div class="highlight coffee"><pre class="editor editor-colors"><div class="line"><span class="source coffee"><span class="meta class coffee"><span class="storage type class coffee"><span>class</span></span><span> </span><span class="entity name type class coffee"><span>A</span></span></span></span></div><div class="line"><span class="source coffee"><span> _</span><span class="meta delimiter method period coffee"><span>.</span></span><span>extend</span><span class="meta brace round coffee"><span>(</span></span><span class="variable other readwrite instance coffee"><span>@prototype</span></span><span class="meta delimiter object comma coffee"><span>, </span></span><span>B</span><span class="meta brace round coffee"><span>)</span></span></span></div></pre></div> <p>Becomes:</p> <div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="meta class js"><span class="storage type class js"><span>class</span></span><span> </span><span class="entity name type class js"><span>A</span></span></span><span> </span><span class="punctuation section scope begin js"><span>{</span></span><span class="punctuation section scope end js"><span>}</span></span></span></div><div class="line"><span class="source js"><span class="variable other object js"><span>_</span></span><span class="meta js"><span class="meta delimiter method period js"><span>.</span></span><span class="entity name function js"><span>extend</span></span><span class="meta js"><span class="punctuation definition begin round js"><span>(</span></span><span class="constant other object js"><span>A</span></span><span class="meta delimiter period js"><span>.</span></span><span class="support variable js"><span>prototype</span></span><span class="meta delimiter object comma js"><span>,</span></span><span> </span><span class="constant other js"><span>B</span></span><span class="punctuation definition end round js"><span>)</span></span></span></span><span class="punctuation terminator statement js"><span>;</span></span></span></div></pre></div> </li> </ul> <h2><a id="user-content-usage" class="deep-link" href="#usage" aria-hidden="true" rel="nofollow"><svg aria-hidden="true" class="deep-link-icon" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Usage</h2> <p>From the root of the Shopify directory, run this script with a single, relative CoffeeScript file, or a glob pattern. Wait for it to finish, and marvel at the clean ESNext code that is spit out beside the original file! Note this script does not delete the original CoffeeScript file — you should review the output before pushing any changes.</p> <div class="highlight sh"><pre class="editor editor-colors"><div class="line"><span class="source shell"><span>esify app/assets/javascripts/admin/lib/</span><span class="keyword operator shell"><span>*</span></span><span>.coffee</span></span></div></pre></div> <p>You can provide custom options to <code>esify</code> by adding an <code>esify.config.js</code> file to the directory from which you are running the <code>esify</code> command. An example configuration is shown below:</p> <div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> your-project/esify.config.js</span></span></span></div><div class="line"><span class="source js"><span class="storage type js"><span>var</span></span><span> path </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="meta function-call js"><span class="support function js"><span>require</span></span><span class="meta js"><span class="punctuation definition begin round js"><span>(</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>path</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="punctuation definition end round js"><span>)</span></span></span></span><span class="punctuation terminator statement js"><span>;</span></span></span></div><div class="line"><span class="source js"><span> </span></span></div><div class="line"><span class="source js"><span class="support variable js"><span>module</span></span><span class="meta delimiter period js"><span>.</span></span><span class="variable other js"><span>exports</span></span><span> </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> The global namespaces used in your current JavaScript code.</span></span></span></div><div class="line"><span class="source js"><span> appGlobalIdentifiers</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>Shopify</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> The root folder for your JavaScripts</span></span></span></div><div class="line"><span class="source js"><span> javaScriptSourceLocation</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="variable other object js"><span>path</span></span><span class="meta js"><span class="meta delimiter method period js"><span>.</span></span><span class="support function js"><span>join</span></span><span class="meta js"><span class="punctuation definition begin round js"><span>(</span></span><span class="support variable js"><span>__dirname</span></span><span class="meta delimiter object comma js"><span>,</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>app/assets/javascripts</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="punctuation definition end round js"><span>)</span></span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> The output style for your code. You can see all available options in the Recast docs:</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> </span><span class="markup underline link hyperlink"><span>https://github.com/benjamn/recast/blob/master/lib/options.js</span></span></span></span></div><div class="line"><span class="source js"><span> printOptions</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> quote</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>single</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> trailingComma</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="constant language boolean true js"><span>true</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> tabWidth</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>2</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> wrapColumn</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>1000</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> The options for the mocha-context-to-global-reference shopify-codemod transform</span></span></span></div><div class="line"><span class="source js"><span> testContextToGlobals</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> testClock</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> properties</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>clock</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> replace</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="constant language boolean true js"><span>true</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> sandbox</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> properties</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>spy</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>stub</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>mock</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>server</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>requests</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> A list of globals and their associated import paths for global-identifier-to-import</span></span></span></div><div class="line"><span class="source js"><span> globalIdentifiers</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> _</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>lodash</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> $</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>jquery</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> moment</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>moment</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> A list of identifiers to rename for rename-identifier</span></span></span></div><div class="line"><span class="source js"><span> renameIdentifiers</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> jQuery</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>$</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> A list of identifiers and their properties that should be renamed for rename-property</span></span></span></div><div class="line"><span class="source js"><span> renameProperties</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> _</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> first</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>head</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> each</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>forEach</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> eachRight</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>forEachRight</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> entries</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>toPairs</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> entriesIn</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>toPairsIn</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> extend</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>assignIn</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> extendWith</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>assignInWith</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> A list of object/ property pairs that always ignore return values of any</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> callbacks passed to them</span></span></span></div><div class="line"><span class="source js"><span> methodsThatIgnoreReturnValues</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> object</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>_</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> methods</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>each</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> object</span><span class="keyword operator assignment js"><span>:</span></span><span class="string regexp js"><span> </span><span class="punctuation definition string begin js"><span>/</span></span><span class="constant character regexp"><span>.</span></span><span class="keyword operator quantifier regexp"><span>*</span></span><span class="punctuation definition string end js"><span>/</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> methods</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>forEach</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> A list of object/ property pairs that always return undefined when called</span></span></span></div><div class="line"><span class="source js"><span> methodsReturningVoid</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> object</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>console</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> methods</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>log</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>warn</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> object</span><span class="keyword operator assignment js"><span>:</span></span><span class="string regexp js"><span> </span><span class="punctuation definition string begin js"><span>/</span></span><span class="keyword control anchor regexp"><span>^</span></span><span class="meta group regexp"><span class="punctuation definition group regexp"><span>(</span></span><span>e</span><span class="keyword operator or regexp"><span>|</span></span><span>evt</span><span class="keyword operator or regexp"><span>|</span></span><span>event</span><span class="punctuation definition group regexp"><span>)</span></span></span><span class="keyword control anchor regexp"><span>$</span></span><span class="punctuation definition string end js"><span>/</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> methods</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>preventDefault</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> object</span><span class="keyword operator assignment js"><span>:</span></span><span class="string regexp js"><span> </span><span class="punctuation definition string begin js"><span>/</span></span><span class="constant character regexp"><span>.</span></span><span class="keyword operator quantifier regexp"><span>*</span></span><span class="punctuation definition string end js"><span>/</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> methods</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>forEach</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span> object</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>_</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> methods</span><span class="keyword operator assignment js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>each</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace curly js"><span>}</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span> </span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span class="meta brace curly js"><span>}</span></span></span></div></pre></div> </div></article></div><div class="pv4"><h2 class="c7520c26">Readme</h2><h3 id="user-content-keywords" class="a0dff0b1 mt2 pt2 mb3 pb3 f4 fw6 b--black-10">Keywords</h3>none</div></section><section class="e22ba268 ph2 ph0-ns ml0-ns mr3-ns black-80" id="tabpanel-explore" aria-labelledby="package-tab-explore" role="tabpanel" data-attribute="hidden"></section><section class="e22ba268 ph2 ph0-ns ml0-ns mr3-ns black-80" id="tabpanel-admin" aria-labelledby="package-tab-admin" role="tabpanel" data-attribute="hidden"></section><section class="e22ba268 ph2 ph0-ns ml0-ns mr3-ns black-80" id="tabpanel-dependencies" aria-labelledby="package-tab-dependencies" role="tabpanel" data-attribute="hidden"></section><section class="e22ba268 ph2 ph0-ns ml0-ns mr3-ns black-80" id="tabpanel-dependents" aria-labelledby="package-tab-dependents" role="tabpanel" data-attribute="hidden"></section><div class="e22ba268 ph2 ph0-ns ml0-ns mr3-ns black-80" id="tabpanel-versions" aria-labelledby="package-tab-versions" role="tabpanel" data-attribute="hidden"></div></span><span aria-live="polite"></span></div><div class="fdbf4038 w-third-l mt3 w-100 ph3 ph4-m pv3 pv0-l"><h2 class="c7520c26">Package Sidebar</h2><h3 class="c84e15be f5 mt2 pt2 mb0">Install</h3><div class="d767adf4 lh-copy truncate ph0 mb3 black-80 b5be2af6 f6 flex flex-row"><svg viewBox="0 0 12.32 9.33" aria-hidden="true"><g><line class="st1" x1="7.6" y1="8.9" x2="7.6" y2="6.9"></line><rect width="1.9" height="1.9"></rect><rect x="1.9" y="1.9" width="1.9" height="1.9"></rect><rect x="3.7" y="3.7" width="1.9" height="1.9"></rect><rect x="1.9" y="5.6" width="1.9" height="1.9"></rect><rect y="7.5" width="1.9" height="1.9"></rect></g></svg><p class="flex-auto truncate db ma0"><code>npm i <!-- -->esify</code><button class="fbd04dd1" type="button" aria-label="Copy install command line"><svg aria-hidden="true" focusable="false" data-prefix="far" data-icon="copy" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z" fill="#808080"></path></svg></button></p></div><div><div class="_702d723c dib w-50 fl bb b--black-10 pr2 w-100" role="button" tabindex="0" aria-label="Showing weekly downloads"><h3 class="c84e15be f5 mt2 pt2 mb0 _5cfc0900"><svg viewBox="0 0 7.22 11.76" aria-hidden="true"><title>Downloads</title><g><polygon points="4.59 4.94 4.59 0 2.62 0 2.62 4.94 0 4.94 3.28 9.53 7.22 4.94 4.59 4.94" aria-label="Downloads icon"></polygon><rect x="0.11" y="10.76" width="7" height="1"></rect></g></svg>Weekly Downloads</h3><div class="_000ae427 flex flex-row-reverse items-end"><svg class="_418c4939 flex-none" width="200" height="40" stroke-width="3" stroke="#8956FF" fill="rgba(137, 86, 255, .2)" aria-hidden="true"></svg><p class="_9ba9a726 f4 tl flex-auto fw6 black-80 ma0 pr2 pb1">12</p></div></div></div><div class="_702d723c dib w-50 fl bb b--black-10 pr2"><h3 class="c84e15be f5 mt2 pt2 mb0">Version</h3><div class="abe380b3 flex flex-row items-center"><p class="f2874b88 fw6 mb3 mt2 truncate black-80 f4">15.1.2</p></div></div><div class="_702d723c dib w-50 fl bb b--black-10 pr2"><h3 class="c84e15be f5 mt2 pt2 mb0">License</h3><p class="f2874b88 fw6 mb3 mt2 truncate black-80 f4">MIT</p></div><div class="_702d723c dib w-50 fl bb b--black-10 pr2 w-100"><h3 class="c84e15be f5 mt2 pt2 mb0">Last publish</h3><p class="f2874b88 fw6 mb3 mt2 truncate black-80 f4"><time dateTime="2017-01-04T04:25:41.440Z" title="1/4/2017, 4:25:41 AM">8 years ago</time></p></div><div class="_702d723c dib w-50 fl bb b--black-10 pr2 bb-0 w-100"><h3 id="collaborators" class="c84e15be f5 mt2 pt2 mb0">Collaborators</h3><ul aria-labelledby="collaborators" class="list pl0 cf"><li class="_426b8533 fl dib mr2 mb2"><div><a href="/~shopify-dep"><img src="/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9mY2RlZmVlMzRiYjcxNzIzYzFjYWFkNjVlNDdiMGQ0Yj9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.WluQCrlW0OR7che98s5i7x6Wm6TaOebWcxfyTpoQwn8" style="width:42px;height:42px;min-width:42px;border-radius:4%" alt="shopify-dep" title="shopify-dep"/></a></div></li><li class="_426b8533 fl dib mr2 mb2"><div><a href="/~bouk"><img src="/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci85MWQwNTlkZThiZDcxMDc4NGJjY2MzOWRlMzdkZjcyND9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.qtzt0fW2dHUTBhd2eA4Hpe4FmEcrrQCejYKpvyOe6LE" style="width:42px;height:42px;min-width:42px;border-radius:4%" alt="bouk" title="bouk"/></a></div></li><li class="_426b8533 fl dib mr2 mb2"><div><a href="/~goodforonefare"><img src="/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yMzUzMmNmOTEyZTc0ZTVjOGM0ZjI0MDMzZGJhMDlmZT9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.HmsLkN4TZZXimliX17Ndq1XTGvz5SFFA-H7XWs6dTTA" style="width:42px;height:42px;min-width:42px;border-radius:4%" alt="goodforonefare" title="goodforonefare"/></a></div></li><li class="_426b8533 fl dib mr2 mb2"><div><a href="/~lemonmade"><img src="/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yZTA3MTE0ZDNkMzk5MWRjOTI2ZDY4ZWJmM2E4MjFlMz9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.z6Mnks_0oqNFtFrufVt1UuK8f_cU405Mt9G4CJRzUW4" style="width:42px;height:42px;min-width:42px;border-radius:4%" alt="lemonmade" title="lemonmade"/></a></div></li></ul></div><div class="w-100"><a class="c37751f6 _24a1e9c7 dab9924c br2 pv2 ph3 fw5 f5 tc button button-reset pointer ma2 truncate ml0 no-underline mt2 dib w-100" rel="noopener noreferrer nofollow" href="https://runkit.com/npm/esify"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="terminal" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M257.981 272.971L63.638 467.314c-9.373 9.373-24.569 9.373-33.941 0L7.029 444.647c-9.357-9.357-9.375-24.522-.04-33.901L161.011 256 6.99 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L257.981 239.03c9.373 9.372 9.373 24.568 0 33.941zM640 456v-32c0-13.255-10.745-24-24-24H312c-13.255 0-24 10.745-24 24v32c0 13.255 10.745 24 24 24h304c13.255 0 24-10.745 24-24z"></path></svg><strong>Try</strong> on RunKit</a></div><div class="_33c89934 w-100"><a class="_4a3f8f21 _24a1e9c7 dab9924c br2 pv2 ph3 fw5 f5 tc button button-reset pointer ma2 truncate ml0 no-underline mt2 dib w-100" href="/support?inquire=security&security-inquire=malware&package=esify&version=15.1.2"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="flag" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M349.565 98.783C295.978 98.783 251.721 64 184.348 64c-24.955 0-47.309 4.384-68.045 12.013a55.947 55.947 0 0 0 3.586-23.562C118.117 24.015 94.806 1.206 66.338.048 34.345-1.254 8 24.296 8 56c0 19.026 9.497 35.825 24 45.945V488c0 13.255 10.745 24 24 24h16c13.255 0 24-10.745 24-24v-94.4c28.311-12.064 63.582-22.122 114.435-22.122 53.588 0 97.844 34.783 165.217 34.783 48.169 0 86.667-16.294 122.505-40.858C506.84 359.452 512 349.571 512 339.045v-243.1c0-23.393-24.269-38.87-45.485-29.016-34.338 15.948-76.454 31.854-116.95 31.854z"></path></svg><strong>Report</strong> malware</a></div></div></div> </main><footer class="cd2827bb bt b--black-10 mt4"><h2 class="e13b5dae">Footer</h2><div id="footer" class="center mw9 pa3 flex flex-column flex-wrap-m flex-row-ns"><div class="flex-auto pa4-ns pa3 w-100 w-10-l"><div class="_802b5507 pt3"><a target="_blank" rel="noopener noreferrer nofollow" href="https://github.com/npm" aria-label="Visit npm GitHub page"><svg viewBox="0 0 27.23 27.23" aria-hidden="true"><rect fill="#333333" width="27.23" height="27.23" rx="2"></rect><polygon fill="#fff" points="5.8 21.75 13.66 21.75 13.67 9.98 17.59 9.98 17.58 21.76 21.51 21.76 21.52 6.06 5.82 6.04 5.8 21.75"></polygon></svg></a></div><div class="_802b5507 pt3"><a target="_blank" rel="noopener noreferrer nofollow" href="https://github.com" aria-label="GitHub"><svg aria-hidden="true" focusable="false" class="" viewBox="0 0 24 24" width="50" height="50" fill="black" style="display:inline-block;user-select:none;vertical-align:top;overflow:visible"><path d="M12.5.75C6.146.75 1 5.896 1 12.25c0 5.089 3.292 9.387 7.863 10.91.575.101.79-.244.79-.546 0-.273-.014-1.178-.014-2.142-2.889.532-3.636-.704-3.866-1.35-.13-.331-.69-1.352-1.18-1.625-.402-.216-.977-.748-.014-.762.906-.014 1.553.834 1.769 1.179 1.035 1.74 2.688 1.25 3.349.948.1-.747.402-1.25.733-1.538-2.559-.287-5.232-1.279-5.232-5.678 0-1.25.445-2.285 1.178-3.09-.115-.288-.517-1.467.115-3.048 0 0 .963-.302 3.163 1.179.92-.259 1.897-.388 2.875-.388.977 0 1.955.13 2.875.388 2.2-1.495 3.162-1.179 3.162-1.179.633 1.581.23 2.76.115 3.048.733.805 1.179 1.825 1.179 3.09 0 4.413-2.688 5.39-5.247 5.678.417.36.776 1.05.776 2.128 0 1.538-.014 2.774-.014 3.162 0 .302.216.662.79.547C20.709 21.637 24 17.324 24 12.25 24 5.896 18.854.75 12.5.75Z"></path></svg></a></div></div><div class="flex-auto pa4-ns pa3 w-30-ns w-50-m"><h3 id="support" class="_1b8c0a9f">Support</h3><ul class="list pl0" aria-labelledby="support"><li class="pv1"><a class="df995acb no-underline pr1" href="https://docs.npmjs.com">Help</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="https://github.com/advisories">Advisories</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="http://status.npmjs.org/">Status</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/support">Contact npm</a></li></ul></div><div class="flex-auto pa4-ns pa3 w-30-ns w-50-m"><h3 id="company" class="_1b8c0a9f">Company</h3><ul class="list pl0" aria-labelledby="company"><li class="pv1"><a class="df995acb no-underline pr1" href="/about">About</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="https://github.blog/tag/npm/">Blog</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/press">Press</a></li></ul></div><div class="flex-auto pa4-ns pa3 w-30-ns w-50-m"><h3 id="terms" class="_1b8c0a9f">Terms & Policies</h3><ul class="list pl0" aria-labelledby="terms"><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/">Policies</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/terms">Terms of Use</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/conduct">Code of Conduct</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/privacy">Privacy</a></li></ul></div></div></footer></div><div class="_8a62ca63 fixed top-0 left-0 z-999" style="opacity:0;transform:scaleX(1);-webkit-transform:scaleX(1);-moz-transform:scaleX(1)"></div></div></div><script integrity="sha512-jlL4O8/0nFaR1YM5O1Ijkg6Q5GHQE+DFSlK+g5bKhchN5QU2G8S9/HArGPfV9QvVRI+uWyV3gkdKkjdV2xbRmw==">window.__context__ = {"context":{"notifications":[],"csrftoken":"uaUXgYnvXIYKr28OwXmytKDJ7NA29rg3iHWEH3dn_bQ","userEmailVerified":null,"auditLogEnabled":false,"user":null,"documentContext":{"readme.data":"readme"},"undefined":true,"readme":{"ref":"readme","data":null},"versionsDownloads":{"11.0.0":1,"11.2.0":1,"12.0.2":1,"11.3.0":2,"12.3.4":1,"10.11.0":1,"14.0.0":2,"13.0.0":1,"15.1.0":1,"15.0.0":1,"12.2.0":1,"12.0.0":1,"15.1.2":10,"12.3.0":1,"15.1.1":2,"10.11.2":1,"12.1.0":1,"11.1.2":1,"12.3.2":1,"10.11.1":1,"11.1.3":1,"12.3.3":1},"starAction":"/package/esify/star","provenance":{"enabled":false,"feedbackUrl":" https://github.com/npm/feedback"},"isSecurityPlaceholder":false,"private":false,"devDeps":["eslint","eslint-plugin-shopify"],"deps":["babel-register","chalk","glob","jscodeshift","shopify-codemod","shopify-decaf"],"packument":{"author":{"name":"Shopify","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMjlmYmVhYmIyMjhiNWI3MmExZWJhZjcyMmM2MjIxMz9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.mwoE7IVMvUbsH9OhTAIm5hv9Vo7b7GKFSiZoMMMYqG8","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMjlmYmVhYmIyMjhiNWI3MmExZWJhZjcyMmM2MjIxMz9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.WsdnsGFJ5r9bdIefCmsstD0EGjSS4GY4MHdKTRbuZ3Y","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMjlmYmVhYmIyMjhiNWI3MmExZWJhZjcyMmM2MjIxMz9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.FKt7kOUPRtnmu59WhcdiCYNh0K22Blp7PmHYiGo88SY"}},"description":"A CLI for converting Shopify’s CoffeeScript to ESNext.","distTags":{"latest":"15.1.2"},"maintainers":[{"name":"shopify-dep","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9mY2RlZmVlMzRiYjcxNzIzYzFjYWFkNjVlNDdiMGQ0Yj9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.1lhu1rjh0q-joopycv8W7ouLyyAcgT3x0JlPQtydH-E","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9mY2RlZmVlMzRiYjcxNzIzYzFjYWFkNjVlNDdiMGQ0Yj9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.WluQCrlW0OR7che98s5i7x6Wm6TaOebWcxfyTpoQwn8","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9mY2RlZmVlMzRiYjcxNzIzYzFjYWFkNjVlNDdiMGQ0Yj9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.b6ryLsQjK5O3ai37Nsr0DfY7vcyce1Vu_LleCjVe8r0"}},{"name":"bouk","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci85MWQwNTlkZThiZDcxMDc4NGJjY2MzOWRlMzdkZjcyND9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.ENqJtxeOAzZ6UFxFUEZ4H4io5U0a5daMgE5la0xrZ_o","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci85MWQwNTlkZThiZDcxMDc4NGJjY2MzOWRlMzdkZjcyND9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.qtzt0fW2dHUTBhd2eA4Hpe4FmEcrrQCejYKpvyOe6LE","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci85MWQwNTlkZThiZDcxMDc4NGJjY2MzOWRlMzdkZjcyND9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.-GsxF63W0084U7ZIc-n_yfirf1-vpNyO9BWjvK5Jngo"}},{"name":"goodforonefare","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yMzUzMmNmOTEyZTc0ZTVjOGM0ZjI0MDMzZGJhMDlmZT9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.ZLEBG7762pE7m21mZ9ioueemb69VSEUha3vOV-h3lWc","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yMzUzMmNmOTEyZTc0ZTVjOGM0ZjI0MDMzZGJhMDlmZT9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.HmsLkN4TZZXimliX17Ndq1XTGvz5SFFA-H7XWs6dTTA","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yMzUzMmNmOTEyZTc0ZTVjOGM0ZjI0MDMzZGJhMDlmZT9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0._ahjxBoZjHIBP5VmLPBcebxhhSFZsgMZsuoya7aGN5o"}},{"name":"lemonmade","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yZTA3MTE0ZDNkMzk5MWRjOTI2ZDY4ZWJmM2E4MjFlMz9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.3NRV5bdI1osW16BHalgWjFP9jtyzbD4J2jdyfxZ3TN4","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yZTA3MTE0ZDNkMzk5MWRjOTI2ZDY4ZWJmM2E4MjFlMz9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.z6Mnks_0oqNFtFrufVt1UuK8f_cU405Mt9G4CJRzUW4","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yZTA3MTE0ZDNkMzk5MWRjOTI2ZDY4ZWJmM2E4MjFlMz9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.ynm5SH5xYjH9v0mgAu0hU90kQexelT6aOaySJxk6MJY"}}],"name":"esify","license":"MIT","version":"15.1.2","versions":[{"version":"15.1.2","date":{"ts":1483503941440,"rel":"8 years ago"},"dist":{"shasum":"361635d2f8d284a85a233336d8dc8085d9ef721e","tarball":"https://registry.npmjs.org/esify/-/esify-15.1.2.tgz","integrity":"sha512-yzrlAZlSrW27G2dNzra/ior9eq+P7ChplVwaAnKYmos4TCnYv0/QUYnKcRFkpunvIxNdr0J7L4/fxSbyE4HcWA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqXiqFzIR8VgbTWGw2F1wLQMPgCG2qL0SwRgxjZnSLOwIhAKz6WkB03HdSotMA2hbaEvu8BiftYAGleas3qVTtyutY"}]}},{"version":"15.1.1","date":{"ts":1483477884482,"rel":"8 years ago"},"dist":{"shasum":"b276b3afe369ef908d5f0ae531e294a7792ca970","tarball":"https://registry.npmjs.org/esify/-/esify-15.1.1.tgz","integrity":"sha512-DtQTAQNxJF0kowIy3qsxPa/AgNt0zjY619VRWa5c7rsZYWiiyAKOwyHa1wr91jDAFtG6QzMbfVw+bZfqYt/4jg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA48nbuUF2hcOjc3Ruvo2Ud5J1PPvOm2sCmid2A2owuOAiAoaRpT3q8a6SLH9+wrerV//6J1ZdXaFTLl4aLv/KAsbQ=="}]}},{"version":"15.1.0","date":{"ts":1480025312252,"rel":"8 years ago"},"dist":{"shasum":"6cece4809fc5345c6a65ed3ba54539d635f8b45c","tarball":"https://registry.npmjs.org/esify/-/esify-15.1.0.tgz","integrity":"sha512-XHcJmMoRT5aYNtpKhJt46dHR00+0ANdYwqLSPyKAY9lMz6ZLRo7XAmXJD+mDnLdcVe42nTNptPw+P+KE21HeWw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE8Cj8LoGdM0tD0WERNt8rlwQx29M7M3Iszk9kXRaM6sAiBf2BJQsOykxhSMUOoirJzQk/PT1ylKUZk8Nr6tlkJG7w=="}]}},{"version":"15.0.0","date":{"ts":1476382932452,"rel":"8 years ago"},"dist":{"shasum":"c10372d5c2436fda55352758c7c41398e5fecbed","tarball":"https://registry.npmjs.org/esify/-/esify-15.0.0.tgz","integrity":"sha512-sZYhj7R+Q5uC8Nna1JTkQ4yY8sgW4K2osuDlYu46c6iTCtWJ36v7Jmxuq5UPxYQCm+OISzpeBRbt1Qh7L4x3OA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvTYQk3aVnpc8Ng2qWcn8UDWmNr7KUAkf+B8hoCURzqgIgOPJiy68AeSqY4LRNR/AhOtuqkPRGMSAbUJ2jP4nrwrw="}]}},{"version":"14.0.0","date":{"ts":1471870868622,"rel":"9 years ago"},"dist":{"shasum":"8d7d77ee9accb51150c7fbc3c55ecd9ee7e71548","tarball":"https://registry.npmjs.org/esify/-/esify-14.0.0.tgz","integrity":"sha512-wa91xEBthJWYCsf02RDh3dxaYauJHBJbrLv6KcZ5x2QuE87omwLen0TkvQMFbBtnBNi2u72wYm+Najm+xR98ww==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFbRf5ho79/2QbwELiBpV1PYfbbMzCjHX7+fn26SZdekAiBNVx31Wm0LvF76uWbNXD9OX55aXsRKIL5U0duKq3Ui7w=="}]}},{"version":"13.0.0","date":{"ts":1469029774742,"rel":"9 years ago"},"dist":{"shasum":"eb64c4e0f97d70c994a5e9f4db66f3342fe972a0","tarball":"https://registry.npmjs.org/esify/-/esify-13.0.0.tgz","integrity":"sha512-aXlfXRPWIAcmd94NKCh6qMWflsg8fVZ6KQe8I+UF0E1h9TgaE0/l3Hqnn0xJxnNDTURn6sBvAKPUh12B+VGU/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPabgBqnwrQfIvFbgxd923tTImPUvSzDXLlZuQptXdhQIhAOdrqakZOQMk8gUs596VTWm/nvTLzg+Ug1dbfhO5St7D"}]}},{"version":"12.3.4","date":{"ts":1468352199861,"rel":"9 years ago"},"dist":{"shasum":"c7f9288726471f5a6f4c7caf81e893e78592c2cf","tarball":"https://registry.npmjs.org/esify/-/esify-12.3.4.tgz","integrity":"sha512-1NjFYiBaIWEWPmoPzKEtSZdY2hHmKlHX27ru3NLQehoYa+HlgFGrxvIzcgjIisOPWEuPyp7c1As6gJbo8uBCKA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHS2agTcJexqGf9MXbNwlqRL3ufo/Xsa07WzT69GTYYAIgX5ib7m9T+ssNwX232r7Epgik2T31KzkWbvbRBMGzAXE="}]}},{"version":"12.3.3","date":{"ts":1467058334764,"rel":"9 years ago"},"dist":{"shasum":"09d71cc92341c2ca93210b89f495b94771abf00f","tarball":"https://registry.npmjs.org/esify/-/esify-12.3.3.tgz","integrity":"sha512-j145jMMtxp+7Q4H4SuRlSV28ba3ynUzeaxhVZTH34DJgpGEuCCRSpjq7Pww1SC2qwXSn/6c4nGjTzQtXuJLlhg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEyejdIkHC4JaPcxivCM7lvZlTtEOY1BUedEDrJHgct/AiAQX8EZTEjmunRbXChSRBd7qm6C6ljBtWw121Hnc0niLw=="}]}},{"version":"12.3.2","date":{"ts":1466101704236,"rel":"9 years ago"},"dist":{"shasum":"f8aef64ce9e26f61b3e709d999fe89d860d430fa","tarball":"https://registry.npmjs.org/esify/-/esify-12.3.2.tgz","integrity":"sha512-DLTHVHYdRr70xzieB/S2h745jz6B5zVeyV/UN8sY/li+8AR2qo8gzM2Di+upg9RAbwMn0l2nXRbJk0rVCc5hDQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE1VhCISAjTXwCL2+lWbNnYYR7mG4qLnfH8eu3djGkORAiB3Jj1X6cpykfc4ClYIu81+QCauohZ8I/is5nSFSEQ3BA=="}]}},{"version":"12.3.0","date":{"ts":1466019755821,"rel":"9 years ago"},"dist":{"shasum":"cc0ebf47a8f28db5f85d0e7c1a9c1da8a538602b","tarball":"https://registry.npmjs.org/esify/-/esify-12.3.0.tgz","integrity":"sha512-Gn+tiUNjGdk6n5JjDEjgTS3pWZROV/PLz5Z3h15mqxgHuaw2XNNkVK8tZqHLWHL2FIA5pxioE8Llv1UoH3+xeQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzpRyK8RAWCSvZTPg4UNSxlGwYyxiCJIARbM/fGWBMDAIgGMT6pEgcmtRx4XD9XcSaFdRxbXe8iv7dCoF6l3NqBFE="}]}},{"version":"12.2.0","date":{"ts":1464871357966,"rel":"9 years ago"},"dist":{"shasum":"4e43233832109062d380dafe4508c43c7f331cdc","tarball":"https://registry.npmjs.org/esify/-/esify-12.2.0.tgz","integrity":"sha512-nnkAV2MNYfzRzEQQ3rbe/9S+6DbEmc7Ujcs0xl2mdCbTMkyzuyEsVQDl96+SaO7S3o165/TIk+r7AZXJEWtUsw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbkhBDxWB/dhL62ha3UuOGLFwS3OgF/a2ElW77bD6IWgIhAKwwXQibIOfmJPHuC6LQoHHIQX/0ZOfCZNqfASyXm3oV"}]}},{"version":"12.1.0","date":{"ts":1464804155000,"rel":"9 years ago"},"dist":{"shasum":"78b0caaf10521165e0f8e2177e8f14c4ebf32854","tarball":"https://registry.npmjs.org/esify/-/esify-12.1.0.tgz","integrity":"sha512-IbXqMUys1gHWAh3NmfJ97hQp3cIXyIpsvLJs8hsXiP9cg5fqPFtCDTiTQQwiwbUm0lF5wqrZTWXCdDgqZfR98g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCTermi+oSSalLd6ks8QEpB2/4GuzVp5Kn9Grqe3mKf6wIgd5Fsg2AlesdCEPIgMyoALTwxwfG6ZHvAoqbc0R3Xq4s="}]}},{"version":"12.0.2","date":{"ts":1464628743718,"rel":"9 years ago"},"dist":{"shasum":"db011b657bcb5f9d20f36b80a729027c6d89567c","tarball":"https://registry.npmjs.org/esify/-/esify-12.0.2.tgz","integrity":"sha512-Xc01QHmPchkYCBVQ0QfN/LyquOWoApYED6YZlGAdpwkz3BaKA+tyUzmnY8fIh6+nG5We9btvrK+vazn/Y00qVg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH8kys/KkE+RuJW9+lyhE1c6scdZ1pEJ3Ts8UMSLBUz/AiEArHfptMipGSV+k6mxfS9oGtaae25QV9ZIxLywWTXBv00="}]}},{"version":"12.0.0","date":{"ts":1464371867287,"rel":"9 years ago"},"dist":{"shasum":"ceeab352fbac540613af817425d3fa6931dc8965","tarball":"https://registry.npmjs.org/esify/-/esify-12.0.0.tgz","integrity":"sha512-K+NzzHcNzxm5Gh1SxdvlqGxsIT0kp2Ino23T7g+Xnz5/TqAd5x/Pgv773dBBjpBuoIrqmsNyeDWiqtQuasB5jw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDb0AD21SZ1f0qZIu3x6Brw0DWsjnMZtwuMDUi25rJjRAIhAOH982lQIoRH+7NVuOOXqL+KJp/RxxRyxLwye/FgPg6Z"}]}},{"version":"11.3.0","date":{"ts":1464292229355,"rel":"9 years ago"},"dist":{"shasum":"dc5025d1f97b2492ff14245385d36eefc498faf2","tarball":"https://registry.npmjs.org/esify/-/esify-11.3.0.tgz","integrity":"sha512-vSj+7RaYkgG/l2EuRkkwbjsh8OA1HFoa9OR8S6e3qoe2+eEg07UQFtMb9nQ8p6qvDW9FAzyjyMjGd+LBgwzOaQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGk30q7l+pQxeBZtwXki95AAO1aFOi/UxlMLm3jUozwnAiBXECobxKgT4eqHdUZzvWo5+heJRN/fU6xXfEqX0uKITw=="}]}},{"version":"11.2.0","date":{"ts":1463677774450,"rel":"9 years ago"},"dist":{"shasum":"6312362bf1d7657b3416e17cc2c23fed3202750b","tarball":"https://registry.npmjs.org/esify/-/esify-11.2.0.tgz","integrity":"sha512-TKBb2KfSUTTqNx+5mX47GCJyNv4NuPGl3Bscutl2Xd5O4M4RQ9ns6uRiXQyS9MPC/joHd/LWgxBSZ6jV1WrQ/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF0A/sKQ1ec8NiKf7NioTGI7LkTIP6JGw1K7zJGItbF3AiEAula4/nb8DhPZ8Im9WFeNRFF5I5Xn8Th/u/lGagaaNdQ="}]}},{"version":"11.1.3","date":{"ts":1462997136207,"rel":"9 years ago"},"dist":{"shasum":"9039ef6a2125400905d34280d3557bed27284d53","tarball":"https://registry.npmjs.org/esify/-/esify-11.1.3.tgz","integrity":"sha512-ROR/qej36T/PDK6HsH2D/2SXohhCdO3Pf0/Mzk+3ARICUMVYPT0G2VoLfjjjCeTU/1tjkHm2wlqw8/qzQ+U4nQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFw+55+vGs62QgPzX4by4mIJr4m1UbXV9xt0gNlsZN9LAiAo1WjNPFD7maLKT4VqFnSXWXJNL5bEeGp81SAt7bQRGQ=="}]}},{"version":"11.1.2","date":{"ts":1461846183163,"rel":"9 years ago"},"dist":{"shasum":"3d83697a3a7cbe83bea050f9cf46f170aa718130","tarball":"https://registry.npmjs.org/esify/-/esify-11.1.2.tgz","integrity":"sha512-Rf4fdvQw+g9bimUh2QcuJqNFU9HjWFp/AM9QB0Sil5wUbw1WoHQ4ZuO80ClKPQr+5qJy2krBKn67HPbnUNzvfw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC767nNhE/LNTBHlOGiO14+bbJJ5uxZiXocK+yxfUYeZQIgVpJKJylpWpUYbO34ualsd5lFVt9lQBc+NevTq4L31mE="}]}},{"version":"11.0.0","date":{"ts":1461279937881,"rel":"9 years ago"},"dist":{"shasum":"3631ce58e80d69a2ec909ab9d588fc30f88b6b6d","tarball":"https://registry.npmjs.org/esify/-/esify-11.0.0.tgz","integrity":"sha512-Lh93WF5YFwqk5XnUx7apxHPXSKaoTG7ds4AakLj+U9zO4/T5Zsqn6Nd1l3S6ypOJ4MNKYxSIklJUTI28Jwb3Qg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGsxcAEE+ld1GPh4NukSecxqGKV/MyuqcLmH3Tqku6FiAiAz7akfYDk/OGlz/tTYvbQiDoag62UDaomnwYdNmIlpow=="}]}},{"version":"10.11.2","date":{"ts":1461246090770,"rel":"9 years ago"},"dist":{"shasum":"11527ff8486a8c6271dea933672109f7520762cc","tarball":"https://registry.npmjs.org/esify/-/esify-10.11.2.tgz","integrity":"sha512-kTa4jo2ILpBZxrtCzrONGBhEEduHr/IOhZgrlO3ItFSVsjASZwaSN6/IuwUoSxDmKeOb33hTHXHbqxruUGF+rg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmSb21kesU82TJrlYuJfx3CyeDsjwDwXTNqJs/d4/FPAIhAJcog9drLeSOwDN9gr5CMAV0VLPIaqcl0Q057YOthu4d"}]}},{"version":"10.11.1","date":{"ts":1461244630850,"rel":"9 years ago"},"dist":{"shasum":"7f1a15dcab7319b10861d9ecd99e0a3d7383cc55","tarball":"https://registry.npmjs.org/esify/-/esify-10.11.1.tgz","integrity":"sha512-+k67JNFW9AvmE6CjFGTI+VinpQtXnl3u7yM77Y1P/eNlESNmw27uO1poVgMapfofUE9C/AovtZpY+xv/gHhZxg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAEj0rgXELbDPmHOI/R2uTweS8mJ0nriic2rWF9TVk6WAiAJwOJaSVenjPP0mDmPnPM9Or1mLlC3c2E/frTlia3P1w=="}]}},{"version":"10.11.0","date":{"ts":1461244077044,"rel":"9 years ago"},"dist":{"shasum":"df9eceff0856bb204b25eb0006358463a81619bf","tarball":"https://registry.npmjs.org/esify/-/esify-10.11.0.tgz","integrity":"sha512-ak5etiO/xCk/8JeivD2xB6xfeHvDyE8lAeeSSExsbXqx6dLC3yewYw6usGR9zhzOTf3gbJCEgM+X7m6SDdVgXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFm7lnr3XhY79lO3pKBAqyERAHD6aMZwVyehgFXLo5lFAiEAwfEsXcupRW/xVyOTVbXrujE3oJtVl7oVp9ceE5OWx90="}]}}],"deprecations":[]},"packageVersion":{"author":{"name":"Shopify","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMjlmYmVhYmIyMjhiNWI3MmExZWJhZjcyMmM2MjIxMz9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.mwoE7IVMvUbsH9OhTAIm5hv9Vo7b7GKFSiZoMMMYqG8","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMjlmYmVhYmIyMjhiNWI3MmExZWJhZjcyMmM2MjIxMz9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.WsdnsGFJ5r9bdIefCmsstD0EGjSS4GY4MHdKTRbuZ3Y","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMjlmYmVhYmIyMjhiNWI3MmExZWJhZjcyMmM2MjIxMz9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.FKt7kOUPRtnmu59WhcdiCYNh0K22Blp7PmHYiGo88SY"}},"description":"A CLI for converting Shopify’s CoffeeScript to ESNext.","dependencies":{"babel-register":"^6.16.3","chalk":"^1.1.3","glob":"^7.1.1","js-codemod":"github:cpojer/js-codemod","jscodeshift":"^0.3.29","shopify-codemod":"latest","shopify-decaf":"latest"},"devDependencies":{"eslint":"3.10.x","eslint-plugin-shopify":"15.1.0"},"maintainers":[{"name":"bouk","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci85MWQwNTlkZThiZDcxMDc4NGJjY2MzOWRlMzdkZjcyND9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.ENqJtxeOAzZ6UFxFUEZ4H4io5U0a5daMgE5la0xrZ_o","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci85MWQwNTlkZThiZDcxMDc4NGJjY2MzOWRlMzdkZjcyND9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.qtzt0fW2dHUTBhd2eA4Hpe4FmEcrrQCejYKpvyOe6LE","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci85MWQwNTlkZThiZDcxMDc4NGJjY2MzOWRlMzdkZjcyND9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.-GsxF63W0084U7ZIc-n_yfirf1-vpNyO9BWjvK5Jngo"}},{"name":"goodforonefare","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yMzUzMmNmOTEyZTc0ZTVjOGM0ZjI0MDMzZGJhMDlmZT9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.ZLEBG7762pE7m21mZ9ioueemb69VSEUha3vOV-h3lWc","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yMzUzMmNmOTEyZTc0ZTVjOGM0ZjI0MDMzZGJhMDlmZT9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.HmsLkN4TZZXimliX17Ndq1XTGvz5SFFA-H7XWs6dTTA","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yMzUzMmNmOTEyZTc0ZTVjOGM0ZjI0MDMzZGJhMDlmZT9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0._ahjxBoZjHIBP5VmLPBcebxhhSFZsgMZsuoya7aGN5o"}},{"name":"lemonmade","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yZTA3MTE0ZDNkMzk5MWRjOTI2ZDY4ZWJmM2E4MjFlMz9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.3NRV5bdI1osW16BHalgWjFP9jtyzbD4J2jdyfxZ3TN4","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yZTA3MTE0ZDNkMzk5MWRjOTI2ZDY4ZWJmM2E4MjFlMz9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.z6Mnks_0oqNFtFrufVt1UuK8f_cU405Mt9G4CJRzUW4","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci8yZTA3MTE0ZDNkMzk5MWRjOTI2ZDY4ZWJmM2E4MjFlMz9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.ynm5SH5xYjH9v0mgAu0hU90kQexelT6aOaySJxk6MJY"}},{"name":"shopify-dep","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9mY2RlZmVlMzRiYjcxNzIzYzFjYWFkNjVlNDdiMGQ0Yj9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.1lhu1rjh0q-joopycv8W7ouLyyAcgT3x0JlPQtydH-E","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9mY2RlZmVlMzRiYjcxNzIzYzFjYWFkNjVlNDdiMGQ0Yj9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.WluQCrlW0OR7che98s5i7x6Wm6TaOebWcxfyTpoQwn8","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9mY2RlZmVlMzRiYjcxNzIzYzFjYWFkNjVlNDdiMGQ0Yj9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.b6ryLsQjK5O3ai37Nsr0DfY7vcyce1Vu_LleCjVe8r0"}}],"name":"esify","license":"MIT","version":"15.1.2","versions":[],"deprecations":[]},"packageUrl":"/package/esify","packageLinkingCallToActionHref":null,"package":"esify","linkingAllowedForPackage":false,"isStarred":false,"downloads":[{"downloads":28,"label":"2024-04-09 to 2024-04-15"},{"downloads":18,"label":"2024-04-16 to 2024-04-22"},{"downloads":24,"label":"2024-04-23 to 2024-04-29"},{"downloads":2,"label":"2024-04-30 to 2024-05-06"},{"downloads":30,"label":"2024-05-07 to 2024-05-13"},{"downloads":2,"label":"2024-05-14 to 2024-05-20"},{"downloads":2,"label":"2024-05-21 to 2024-05-27"},{"downloads":3,"label":"2024-05-28 to 2024-06-03"},{"downloads":0,"label":"2024-06-04 to 2024-06-10"},{"downloads":3,"label":"2024-06-11 to 2024-06-17"},{"downloads":3,"label":"2024-06-18 to 2024-06-24"},{"downloads":0,"label":"2024-06-25 to 2024-07-01"},{"downloads":7,"label":"2024-07-02 to 2024-07-08"},{"downloads":5,"label":"2024-07-09 to 2024-07-15"},{"downloads":1,"label":"2024-07-16 to 2024-07-22"},{"downloads":2,"label":"2024-07-23 to 2024-07-29"},{"downloads":113,"label":"2024-07-30 to 2024-08-05"},{"downloads":4,"label":"2024-08-06 to 2024-08-12"},{"downloads":3,"label":"2024-08-13 to 2024-08-19"},{"downloads":4,"label":"2024-08-20 to 2024-08-26"},{"downloads":31,"label":"2024-08-27 to 2024-09-02"},{"downloads":5,"label":"2024-09-03 to 2024-09-09"},{"downloads":24,"label":"2024-09-10 to 2024-09-16"},{"downloads":25,"label":"2024-09-17 to 2024-09-23"},{"downloads":7,"label":"2024-09-24 to 2024-09-30"},{"downloads":4,"label":"2024-10-01 to 2024-10-07"},{"downloads":3,"label":"2024-10-08 to 2024-10-14"},{"downloads":4,"label":"2024-10-15 to 2024-10-21"},{"downloads":7,"label":"2024-10-22 to 2024-10-28"},{"downloads":3,"label":"2024-10-29 to 2024-11-04"},{"downloads":5,"label":"2024-11-05 to 2024-11-11"},{"downloads":1,"label":"2024-11-12 to 2024-11-18"},{"downloads":28,"label":"2024-11-19 to 2024-11-25"},{"downloads":2,"label":"2024-11-26 to 2024-12-02"},{"downloads":25,"label":"2024-12-03 to 2024-12-09"},{"downloads":39,"label":"2024-12-10 to 2024-12-16"},{"downloads":0,"label":"2024-12-17 to 2024-12-23"},{"downloads":0,"label":"2024-12-24 to 2024-12-30"},{"downloads":13,"label":"2024-12-31 to 2025-01-06"},{"downloads":5,"label":"2025-01-07 to 2025-01-13"},{"downloads":24,"label":"2025-01-14 to 2025-01-20"},{"downloads":12,"label":"2025-01-21 to 2025-01-27"},{"downloads":24,"label":"2025-01-28 to 2025-02-03"},{"downloads":2,"label":"2025-02-04 to 2025-02-10"},{"downloads":3,"label":"2025-02-11 to 2025-02-17"},{"downloads":2,"label":"2025-02-18 to 2025-02-24"},{"downloads":1,"label":"2025-02-25 to 2025-03-03"},{"downloads":1,"label":"2025-03-04 to 2025-03-10"},{"downloads":0,"label":"2025-03-11 to 2025-03-17"},{"downloads":23,"label":"2025-03-18 to 2025-03-24"},{"downloads":45,"label":"2025-03-25 to 2025-03-31"},{"downloads":12,"label":"2025-04-01 to 2025-04-07"}],"dependents":{"dependentsCount":0,"dependentsTruncated":[]},"capsule":{"name":"esify","description":"A CLI for converting Shopify’s CoffeeScript to ESNext.","maintainers":["shopify-dep","bouk","goodforonefare","lemonmade"],"dist-tags":{"latest":"15.1.2"},"lastPublish":{"maintainer":"shopify-dep","time":"2017-01-04T04:25:41.440Z"},"types":{}},"canEditPackage":false},"chunks":{"commons":["commons.0ba212e3e37c274d9891.js","commons.0ba212e3e37c274d9891.js.map"],"styles":["styles.0c10d02ae8f02a124267.css","minicssextractbug.5e618e91899d8994a6c1.js","styles.0c10d02ae8f02a124267.css.map","minicssextractbug.5e618e91899d8994a6c1.js.map"],"acceptance/acceptance":["acceptance/acceptance.5575c2f494927ac8f7f8.js","acceptance/acceptance.5575c2f494927ac8f7f8.js.map"],"audit-logs/actions/common/auditLogContainer":["audit-logs/actions/common/auditLogContainer.53b5fa5258981ececeb9.js","audit-logs/actions/common/auditLogContainer.53b5fa5258981ececeb9.js.map"],"audit-logs/actions/common/dot":["audit-logs/actions/common/dot.5bf81ef92b885c903994.js","audit-logs/actions/common/dot.5bf81ef92b885c903994.js.map"],"audit-logs/actions/common/filterActions":["audit-logs/actions/common/filterActions.10690b8013721a202a2b.js","audit-logs/actions/common/filterActions.10690b8013721a202a2b.js.map"],"audit-logs/actions/common/spaceGap":["audit-logs/actions/common/spaceGap.aa2921bf2a5d6e05483a.js","audit-logs/actions/common/spaceGap.aa2921bf2a5d6e05483a.js.map"],"audit-logs/actions/orgAddUser":["audit-logs/actions/orgAddUser.d5d0d5bcf3f7e4f5dbac.js","audit-logs/actions/orgAddUser.d5d0d5bcf3f7e4f5dbac.js.map"],"audit-logs/actions/orgCreateTeam":["audit-logs/actions/orgCreateTeam.f3c8638ae26a5432da0a.js","audit-logs/actions/orgCreateTeam.f3c8638ae26a5432da0a.js.map"],"audit-logs/actions/orgDeleteTeam":["audit-logs/actions/orgDeleteTeam.2073c01d7db1e005936d.js","audit-logs/actions/orgDeleteTeam.2073c01d7db1e005936d.js.map"],"audit-logs/actions/orgRemoveUser":["audit-logs/actions/orgRemoveUser.a463ae17c53c89864fb1.js","audit-logs/actions/orgRemoveUser.a463ae17c53c89864fb1.js.map"],"audit-logs/actions/packageAddDistTag":["audit-logs/actions/packageAddDistTag.b1b4e9ab0c219dfc5f65.js","audit-logs/actions/packageAddDistTag.b1b4e9ab0c219dfc5f65.js.map"],"audit-logs/actions/packageDeprecate":["audit-logs/actions/packageDeprecate.c12cc6f4799d190117e2.js","audit-logs/actions/packageDeprecate.c12cc6f4799d190117e2.js.map"],"audit-logs/actions/packagePublish":["audit-logs/actions/packagePublish.247947174088bf623eae.js","audit-logs/actions/packagePublish.247947174088bf623eae.js.map"],"audit-logs/actions/packageRemoveDistTag":["audit-logs/actions/packageRemoveDistTag.1465c1aa3e3e9e93c041.js","audit-logs/actions/packageRemoveDistTag.1465c1aa3e3e9e93c041.js.map"],"audit-logs/actions/packageUnpublish":["audit-logs/actions/packageUnpublish.0e83f1b81fef4e90ce82.js","audit-logs/actions/packageUnpublish.0e83f1b81fef4e90ce82.js.map"],"audit-logs/actions/packageUpdateAccess":["audit-logs/actions/packageUpdateAccess.1b0a7517cee5ffd6beab.js","audit-logs/actions/packageUpdateAccess.1b0a7517cee5ffd6beab.js.map"],"audit-logs/actions/teamAddPackage":["audit-logs/actions/teamAddPackage.20b541d7f7c95f1b337a.js","audit-logs/actions/teamAddPackage.20b541d7f7c95f1b337a.js.map"],"audit-logs/actions/teamAddUser":["audit-logs/actions/teamAddUser.49bf53d0bbd02dd1c213.js","audit-logs/actions/teamAddUser.49bf53d0bbd02dd1c213.js.map"],"audit-logs/actions/teamRemovePackage":["audit-logs/actions/teamRemovePackage.6a84c5be4cdcd2ab6abd.js","audit-logs/actions/teamRemovePackage.6a84c5be4cdcd2ab6abd.js.map"],"audit-logs/actions/teamRemoveUser":["audit-logs/actions/teamRemoveUser.26501999dfef91f14796.js","audit-logs/actions/teamRemoveUser.26501999dfef91f14796.js.map"],"audit-logs/actions/teamUpdatePackageAccess":["audit-logs/actions/teamUpdatePackageAccess.1aa40c3085010574a6b9.js","audit-logs/actions/teamUpdatePackageAccess.1aa40c3085010574a6b9.js.map"],"audit-logs/audit-logs":["audit-logs/audit-logs.ac10dbe638f6a5896569.js","audit-logs/audit-logs.ac10dbe638f6a5896569.js.map"],"audit-logs/audit-search-input":["audit-logs/audit-search-input.1f4c0979acfeeda2eabd.js","audit-logs/audit-search-input.1f4c0979acfeeda2eabd.js.map"],"audit-logs/list":["audit-logs/list.e423085a49a7ea95f88c.js","audit-logs/list.e423085a49a7ea95f88c.js.map"],"audit-logs/no-logs":["audit-logs/no-logs.097c43676219c095b9c7.js","audit-logs/no-logs.097c43676219c095b9c7.js.map"],"audit-logs/no-logs-with-query":["audit-logs/no-logs-with-query.37a7c9f6da8aace2dc93.js","audit-logs/no-logs-with-query.37a7c9f6da8aace2dc93.js.map"],"auth/account-recovery-message":["auth/account-recovery-message.0d506a438223b8c9a1ff.js","auth/account-recovery-message.0d506a438223b8c9a1ff.js.map"],"auth/authentication-successful":["auth/authentication-successful.4fd43328312cbfaa9ed1.js","auth/authentication-successful.4fd43328312cbfaa9ed1.js.map"],"auth/email-otp":["auth/email-otp.d3e77f241f5cd988e6a4.js","auth/email-otp.d3e77f241f5cd988e6a4.js.map"],"auth/escalate":["auth/escalate.c7b9840c3235c5b2c7e1.js","auth/escalate.c7b9840c3235c5b2c7e1.js.map"],"auth/forgot":["auth/forgot.48ae879edda21d9a472a.js","auth/forgot.48ae879edda21d9a472a.js.map"],"auth/forgot-sent":["auth/forgot-sent.f8f6d177f637a5a7e03c.js","auth/forgot-sent.f8f6d177f637a5a7e03c.js.map"],"auth/forgot-sent-anonymized":["auth/forgot-sent-anonymized.f64b98265e9a2b52d53e.js","auth/forgot-sent-anonymized.f64b98265e9a2b52d53e.js.map"],"auth/invite-signup":["auth/invite-signup.e9c4f23f0923194f8419.js","auth/invite-signup.e9c4f23f0923194f8419.js.map"],"auth/liminal-login-footer":["auth/liminal-login-footer.9595439ced5e1639b8c3.js","auth/liminal-login-footer.9595439ced5e1639b8c3.js.map"],"auth/login":["auth/login.da4a3f4ba305c643fff9.js","auth/login.da4a3f4ba305c643fff9.js.map"],"auth/otp":["auth/otp.c70f61c795b64ef188d9.js","auth/otp.c70f61c795b64ef188d9.js.map"],"auth/password":["auth/password.1afae512890ca4228d73.js","auth/password.1afae512890ca4228d73.js.map"],"auth/recovery-code":["auth/recovery-code.1f4dd86b712dcc781e11.js","auth/recovery-code.1f4dd86b712dcc781e11.js.map"],"auth/recovery-email-otp":["auth/recovery-email-otp.939ed2b3128357b03c95.js","auth/recovery-email-otp.939ed2b3128357b03c95.js.map"],"auth/reset-password":["auth/reset-password.95379d24efc544ee35a0.js","auth/reset-password.95379d24efc544ee35a0.js.map"],"auth/signup":["auth/signup.27059e13ca2a8e1530c0.js","auth/signup.27059e13ca2a8e1530c0.js.map"],"auth/test/email-otp-test":["auth/test/email-otp-test.ad70427a3af6c0bd3d4d.js","auth/test/email-otp-test.ad70427a3af6c0bd3d4d.js.map"],"auth/test/escalate-test":["auth/test/escalate-test.36b01807b28b0444b8a5.js","auth/test/escalate-test.36b01807b28b0444b8a5.js.map"],"auth/test/otp-test":["auth/test/otp-test.c508c5d7f1f1abc5f05d.js","auth/test/otp-test.c508c5d7f1f1abc5f05d.js.map"],"auth/test/webauthn-login-test":["auth/test/webauthn-login-test.709677f41d612aa8b50c.js","auth/test/webauthn-login-test.709677f41d612aa8b50c.js.map"],"auth/webauthn-cli-login":["auth/webauthn-cli-login.33aa23809fe62b1edf1b.js","auth/webauthn-cli-login.33aa23809fe62b1edf1b.js.map"],"auth/webauthn-login":["auth/webauthn-login.e8c5bfac5a15737713dc.js","auth/webauthn-login.e8c5bfac5a15737713dc.js.map"],"billing/delete-org":["billing/delete-org.170569abc33971564a01.js","billing/delete-org.170569abc33971564a01.js.map"],"billing/detail":["billing/detail.18e3ed01922c05e4dfb2.js","billing/detail.18e3ed01922c05e4dfb2.js.map"],"billing/downgrade":["billing/downgrade.fed0e01cb9b36e035a9a.js","billing/downgrade.fed0e01cb9b36e035a9a.js.map"],"billing/upgrade":["billing/upgrade.a20df18ca4bdf8b10d3e.js","billing/upgrade.a20df18ca4bdf8b10d3e.js.map"],"contact/contact":["contact/contact.c78252dd3ae387d059ce.js","contact/contact.c78252dd3ae387d059ce.js.map"],"contact/recovery-support-v1":["contact/recovery-support-v1.b13d02cc55034fd6e947.js","contact/recovery-support-v1.b13d02cc55034fd6e947.js.map"],"contact/recovery-support-v2":["contact/recovery-support-v2.4a400ac2e57bf7814a99.js","contact/recovery-support-v2.4a400ac2e57bf7814a99.js.map"],"contact/sidebar":["contact/sidebar.57617cbe0ed84c53393c.js","contact/sidebar.57617cbe0ed84c53393c.js.map"],"debug/badstatus":["debug/badstatus.72faa169acea19f432b4.js","debug/badstatus.72faa169acea19f432b4.js.map"],"debug/detail":["debug/detail.fae59735003e3d7542b5.js","debug/detail.fae59735003e3d7542b5.js.map"],"debug/failcomponent":["debug/failcomponent.4746b7ac0423c3269442.js","debug/failcomponent.4746b7ac0423c3269442.js.map"],"dev/choose-template":["dev/choose-template.a2580c31bf387413c937.js","dev/choose-template.a2580c31bf387413c937.js.map"],"dsr/dsr-export":["dsr/dsr-export.3c7ba9cb22442e59c4ca.js","dsr/dsr-export.3c7ba9cb22442e59c4ca.js.map"],"egg/egg":["egg/egg.b70ddd833435e1495752.js","egg/egg.b70ddd833435e1495752.js.map"],"errors/bad-request":["errors/bad-request.f32f3e2efea80a0b4071.js","errors/bad-request.f32f3e2efea80a0b4071.js.map"],"errors/not-found":["errors/not-found.d7035efefa4c0dd5d49c.js","errors/not-found.d7035efefa4c0dd5d49c.js.map"],"errors/server":["errors/server.83cd3309633b81a1a32f.js","errors/server.83cd3309633b81a1a32f.js.map"],"errors/tea-pot":["errors/tea-pot.623e6725daa99d349263.js","errors/tea-pot.623e6725daa99d349263.js.map"],"errors/template":["errors/template.caa52f2f2472737f5482.js","errors/template.caa52f2f2472737f5482.js.map"],"flatpage/flatpage":["flatpage/flatpage.b2ea5de3a6147090e6c7.js","flatpage/flatpage.b2ea5de3a6147090e6c7.js.map"],"homepage/homepage":["homepage/homepage.9e1b974cb15a6641fa0f.js","homepage/homepage.9e1b974cb15a6641fa0f.js.map"],"homepage/homepage-logged-in":["homepage/homepage-logged-in.67378c34a99d72aa5f54.js","homepage/homepage-logged-in.67378c34a99d72aa5f54.js.map"],"orgs/create":["orgs/create.35e743f3289f151e7159.js","orgs/create.35e743f3289f151e7159.js.map"],"orgs/detail":["orgs/detail.36f2d11e1fa381258e8c.js","orgs/detail.36f2d11e1fa381258e8c.js.map"],"orgs/invite":["orgs/invite.bae7fe8de3991fbe0cb0.js","orgs/invite.bae7fe8de3991fbe0cb0.js.map"],"orgs/tfa-enforced":["orgs/tfa-enforced.b04847c8705b81014195.js","orgs/tfa-enforced.b04847c8705b81014195.js.map"],"orgs/upgrade":["orgs/upgrade.9b4054af94ce6fd277e4.js","orgs/upgrade.9b4054af94ce6fd277e4.js.map"],"package-list/package-list":["package-list/package-list.034909898b77fb576afd.js","package-list/package-list.034909898b77fb576afd.js.map"],"package/delete-package":["package/delete-package.b9f1dc1e9fbe50b975b4.js","package/delete-package.b9f1dc1e9fbe50b975b4.js.map"],"package/deprecate-package":["package/deprecate-package.6127c35f556db4223388.js","package/deprecate-package.6127c35f556db4223388.js.map"],"package/error-message-package":["package/error-message-package.e34888da29ef7ec0d9fd.js","package/error-message-package.e34888da29ef7ec0d9fd.js.map"],"package/package":["package/package.97c9c3bab36f5eea1998.js","package/package.97c9c3bab36f5eea1998.js.map"],"profile/profile":["profile/profile.26d55f45d0f6be348b4c.js","profile/profile.26d55f45d0f6be348b4c.js.map"],"recovery-codes/show":["recovery-codes/show.47474dbc1dde6b02050d.js","recovery-codes/show.47474dbc1dde6b02050d.js.map"],"search/search":["search/search.d82def087c954e1d79bf.js","search/search.d82def087c954e1d79bf.js.map"],"searchv2/search":["searchv2/search.402bde8adf63eafe1b60.js","searchv2/search.402bde8adf63eafe1b60.js.map"],"settings/change-password":["settings/change-password.f45d0ffa8727d53499dc.js","settings/change-password.f45d0ffa8727d53499dc.js.map"],"settings/delete-account":["settings/delete-account.b6990d211b473cee8bbd.js","settings/delete-account.b6990d211b473cee8bbd.js.map"],"settings/email":["settings/email.8fe3fd03f268f4d92384.js","settings/email.8fe3fd03f268f4d92384.js.map"],"settings/memberships":["settings/memberships.ebac238ad8590faa690a.js","settings/memberships.ebac238ad8590faa690a.js.map"],"settings/packages":["settings/packages.4eab4b663ff7af33b4a6.js","settings/packages.4eab4b663ff7af33b4a6.js.map"],"settings/profile":["settings/profile.96b72ff69d0df96f316d.js","settings/profile.96b72ff69d0df96f316d.js.map"],"teams/create":["teams/create.e89c1cc55739d4c8975f.js","teams/create.e89c1cc55739d4c8975f.js.map"],"teams/detail":["teams/detail.61eb81080c5fd336fc04.js","teams/detail.61eb81080c5fd336fc04.js.map"],"teams/list":["teams/list.c9f926350f711b1aa76a.js","teams/list.c9f926350f711b1aa76a.js.map"],"teams/packages":["teams/packages.6718cc7173f9436b8c22.js","teams/packages.6718cc7173f9436b8c22.js.map"],"teams/users":["teams/users.63b0d4f8c4d207a88469.js","teams/users.63b0d4f8c4d207a88469.js.map"],"tfa/additional-options":["tfa/additional-options.dd68ff58e44b096759c8.js","tfa/additional-options.dd68ff58e44b096759c8.js.map"],"tfa/enable":["tfa/enable.04855e54a07c82988507.js","tfa/enable.04855e54a07c82988507.js.map"],"tfa/list":["tfa/list.1ba77aefa7c17f9f8a40.js","tfa/list.1ba77aefa7c17f9f8a40.js.map"],"tfa/recovery-codes":["tfa/recovery-codes.3c546c80a07d8e31dad9.js","tfa/recovery-codes.3c546c80a07d8e31dad9.js.map"],"tfa/security-key-list":["tfa/security-key-list.bcfccd633042d321919f.js","tfa/security-key-list.bcfccd633042d321919f.js.map"],"tfa/showTFAQRCode":["tfa/showTFAQRCode.66ed9d5271cbb3e67dde.js","tfa/showTFAQRCode.66ed9d5271cbb3e67dde.js.map"],"tfa/showTFASuccess":["tfa/showTFASuccess.7b81db9fe5441cdb0b7d.js","tfa/showTFASuccess.7b81db9fe5441cdb0b7d.js.map"],"tfa/tfa-disable":["tfa/tfa-disable.a2a4f52d2f312c55ee42.js","tfa/tfa-disable.a2a4f52d2f312c55ee42.js.map"],"tfa/tfa-mode-selection":["tfa/tfa-mode-selection.c0b558aeb7d5e69222d9.js","tfa/tfa-mode-selection.c0b558aeb7d5e69222d9.js.map"],"tfa/tfa-password-entry":["tfa/tfa-password-entry.f23b5fab15025214edeb.js","tfa/tfa-password-entry.f23b5fab15025214edeb.js.map"],"tfa/totp":["tfa/totp.4473f4361bb7dfa0ddbd.js","tfa/totp.4473f4361bb7dfa0ddbd.js.map"],"tokens/create":["tokens/create.bfd8d7b6d4d1b58aa5be.js","tokens/create.bfd8d7b6d4d1b58aa5be.js.map"],"tokens/create-gat":["tokens/create-gat.cd7e4d5a6d2bce892523.js","tokens/create-gat.cd7e4d5a6d2bce892523.js.map"],"tokens/gat-details":["tokens/gat-details.72271bf6509b02b4f38e.js","tokens/gat-details.72271bf6509b02b4f38e.js.map"],"tokens/gat/allowed-ip-ranges-input":["tokens/gat/allowed-ip-ranges-input.96415ab2996ee209afd4.js","tokens/gat/allowed-ip-ranges-input.96415ab2996ee209afd4.js.map"],"tokens/gat/constants":["tokens/gat/constants.8a392a2d499d6b3ed1cd.js","tokens/gat/constants.8a392a2d499d6b3ed1cd.js.map"],"tokens/gat/divider":["tokens/gat/divider.7007918eace69a2f5577.js","tokens/gat/divider.7007918eace69a2f5577.js.map"],"tokens/gat/expiration-days-input":["tokens/gat/expiration-days-input.9b5f33b7a37c9fae89e2.js","tokens/gat/expiration-days-input.9b5f33b7a37c9fae89e2.js.map"],"tokens/gat/gat-expiration":["tokens/gat/gat-expiration.6c8a78e4492c422ce771.js","tokens/gat/gat-expiration.6c8a78e4492c422ce771.js.map"],"tokens/gat/gat-input":["tokens/gat/gat-input.0a9d6c1b3711db824841.js","tokens/gat/gat-input.0a9d6c1b3711db824841.js.map"],"tokens/gat/organizations-input":["tokens/gat/organizations-input.66af89af72951db1b82f.js","tokens/gat/organizations-input.66af89af72951db1b82f.js.map"],"tokens/gat/organizations-section":["tokens/gat/organizations-section.c0dbb6da2749bb25765b.js","tokens/gat/organizations-section.c0dbb6da2749bb25765b.js.map"],"tokens/gat/packages-and-scopes-input":["tokens/gat/packages-and-scopes-input.e11017d4287762ad8f4e.js","tokens/gat/packages-and-scopes-input.e11017d4287762ad8f4e.js.map"],"tokens/gat/packages-and-scopes-section":["tokens/gat/packages-and-scopes-section.f504706a85d62fd65ac6.js","tokens/gat/packages-and-scopes-section.f504706a85d62fd65ac6.js.map"],"tokens/gat/permissions-input":["tokens/gat/permissions-input.b553cc36608f73bd14b3.js","tokens/gat/permissions-input.b553cc36608f73bd14b3.js.map"],"tokens/gat/section":["tokens/gat/section.4d84e100709265d5335d.js","tokens/gat/section.4d84e100709265d5335d.js.map"],"tokens/gat/section-heading":["tokens/gat/section-heading.d6bc938ad37f09773d93.js","tokens/gat/section-heading.d6bc938ad37f09773d93.js.map"],"tokens/gat/selected-items":["tokens/gat/selected-items.d03d39150b7908ad6418.js","tokens/gat/selected-items.d03d39150b7908ad6418.js.map"],"tokens/gat/utils":["tokens/gat/utils.25178dd41dde2ae2134c.js","tokens/gat/utils.25178dd41dde2ae2134c.js.map"],"tokens/generate-token":["tokens/generate-token.a4af023c73d460b1b68d.js","tokens/generate-token.a4af023c73d460b1b68d.js.map"],"tokens/list":["tokens/list.423b8e1b1dd087818911.js","tokens/list.423b8e1b1dd087818911.js.map"],"vouchers/view":["vouchers/view.1a6f2bd03dc1fdc85f48.js","vouchers/view.1a6f2bd03dc1fdc85f48.js.map"]},"hash":"0ba212e3e37c274d9891","name":"package/package","containerId":"app","headerName":"x-spiferack","publicPath":"https://static-production.npmjs.com/"}</script><script crossorigin="anonymous" src="https://static-production.npmjs.com/commons.0ba212e3e37c274d9891.js"></script> <script crossorigin="anonymous" src="https://static-production.npmjs.com/minicssextractbug.5e618e91899d8994a6c1.js"></script> <script crossorigin="anonymous" src="https://static-production.npmjs.com/package/package.97c9c3bab36f5eea1998.js"></script> </body> </html>