{"_id":"@beyonk/async-script-loader","_rev":"38-faf750a0aa09d0157d786ae3898a579e","name":"@beyonk/async-script-loader","dist-tags":{"latest":"2.3.0"},"versions":{"1.0.2":{"name":"@beyonk/async-script-loader","version":"1.0.2","keywords":["async","script","loader","js","client"],"author":{"name":"Antony Jones"},"license":"MIT","_id":"@beyonk/async-script-loader@1.0.2","maintainers":[{"name":"antony","email":"aj@desirableobjects.co.uk"}],"dist":{"shasum":"0cc5f0428a7ac4f5573950526dad87dddfbc6d2d","tarball":"https://registry.npmjs.org/@beyonk/async-script-loader/-/async-script-loader-1.0.2.tgz","fileCount":6,"integrity":"sha512-uFavjttDVO7luTqqIjHmzvHrAZNBqpPp5509fitgJRXJf12jreWVqAlZEuKtRV/N2DxQX9lD6CJVyYOLMogrMA==","signatures":[{"sig":"MEYCIQDfFSN01PwfcNmFG5oj8V5MoI+sL/MlcLqS6KNOVCwCaAIhALblik+wlYrqzJLJFMw2UVDuKGthScBDzPH06KKg8xgU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5xnmCRA9TVsSAnZWagAABncP/1jnPVK5ouxMMuFgF3mw\npwJOx1hCFTTI6toARXFJ4xwEwYP5nNy7LV+LRJZ+fcRVTY/tjw8Ry3wMvgzL\nvHvU5h5jMAAP/d9sv+7I9pqlT3xX/hjxnz8J/Osyw42NDPCrrwxnzpTpKMAa\n4plFFVJJaCObJCISSzq+GhzYkUTuThPudAvrqh4LKrUeUkfAZmsw1/iYua5O\nv+S6gtItbL66OGH/LKZFUemNJwji8LS1/7uBqAYoDbbGPs/oRdtjBjVedopO\nNO8XTWNuCdnVsIlAYt4NXbgSp+JkksbTPqEOj0LjOTrvPxMG8bxug1SFJXUq\n2yVh3h+7vMZ06oLfbpZb0dIsJhmdadVR0fV13rj2rqlRBe9WlpB9M0xGUVdz\nvMhIo9TYEhkM9CKSX4b8gbjpuS1/IzP/R6aeDIjMhR5XwmSrP8aszE2BTdT7\nt8GTQvz6BFVMhoWuPwJ1ywHL+bRn9XZ6og2+moEFho7Jspq3818W9hRaFPc4\nKo9kUBAEKACxowBOrNVsg/248jyVSn4Q3745oRdKInuiiVf1wGb4GlfektOh\nj4BatyP3GZwlM7/i7mGWKMONSJxE34fdBUI2UUbzPPKWncdNxo025HuK9qfe\nFMG1QGyT9VwKdp5LO3WoMeKb1qoMHGvX1ZRNO4NGQ4kfOM4cpVrlAupaMXOV\njAri\r\n=A0n0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"d7c5af621df2c06fdab70e87b7621a4f19d14844","scripts":{"test":"node test-runner.js"},"_npmUser":{"name":"antony","email":"aj@desirableobjects.co.uk"},"_npmVersion":"6.9.0","description":"Loads scripts cleanly and asynchronously in SPAs","directories":{},"_nodeVersion":"10.15.3","_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","polkadot":"^1.0.0","puppeteer":"^1.16.0","pptr-testing-library":"^0.3.2"},"_npmOperationalInternal":{"tmp":"tmp/async-script-loader_1.0.2_1558649317209_0.6084598617199823","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@beyonk/async-script-loader","version":"1.0.3","keywords":["async","script","loader","js","client"],"author":{"name":"Antony Jones"},"license":"MIT","_id":"@beyonk/async-script-loader@1.0.3","maintainers":[{"name":"antony","email":"aj@desirableobjects.co.uk"}],"dist":{"shasum":"71dd39d9415cfd4560e25c0823a640b1750d1b37","tarball":"https://registry.npmjs.org/@beyonk/async-script-loader/-/async-script-loader-1.0.3.tgz","fileCount":6,"integrity":"sha512-EX204cmtpjHRyyGsNzkIvOX74OdzP974ICvAT67/7EH0eSHoAKRTvqA9b6s1bKk6Phx1JR5ReSOAI4dbjj72uA==","signatures":[{"sig":"MEQCIHaRnuKoI4BkCnoHwI4D4ErxFVuxCzUutpguWOSroMBoAiAvsRNzOdBN8kv/oZg9tk9+f2UyxYNSJsGFfJDjYfrpag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4410,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc6XT0CRA9TVsSAnZWagAAq+UP/1K7f8lMg8KpOf394dpw\nPPkyxLjlqhFQoWOVPDb4W6v2g8BJhkbfShc/Nqs9hWc81aaMUKK/x7dEkYsc\nk39NoNTR5LqWcyIkhSU/wEOL0ZSGDzPhccNuZolBhoPzbjHdddT2bbGo5lsJ\nAJ4J/upXeUfuo+TkE49+spm64dY8N1ZExNjvyuSnB2PqIgEdkI8JGdMYmHS3\nMmlFX3p97ko7LYV9NHURh+zwwT0/DiJNjUEa7xVBMeznOvsLKZQprkD1sJ9b\nuofHAgJlR045CxTiT8wym4rDYYba76KvOuR5MOff4G32sh42pww1YqE7c2q9\ngyVzkPuevvzlnKiIWq6BzePwdmF4QcNNdK9NjOwmCCbl9dz1pqZjdlYJ4sSr\n6hDaZmsMZH5xolqexUAbB86cn+AO1+ZQ1JgccIur2f0ctgQlsQbnMHtfatCQ\n1e5wNVxeCscAzmL3R9Ph4mYlf5ArYIe94I8HB6fCZn4uiyCdDGWNoowmpngt\nHckVpTl9KvLoCYJfEmR2UTlnuYxwmbFNux05rVFsOHWhiSj1rFrzq+iOFa9h\nhZTiOceWJzX7AAYTEBca7HQ7nWKB4tPDVasV14qxOSwU5G6NsV1A0Ev8h7fm\nssvIzxyuFo802/1RIz7ZS8MSuUkYeSF2ouMougeUWgHR9UIlGV0ywm3odgQk\nl3GE\r\n=TsQs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"2c6f1fd303d0aaf60fcc20d6089f2543b38e6c2e","scripts":{"test":"node test-runner.js"},"_npmUser":{"name":"antony","email":"aj@desirableobjects.co.uk"},"_npmVersion":"6.4.1","description":"Loads scripts cleanly and asynchronously in SPAs","directories":{},"_nodeVersion":"10.15.3","_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","polkadot":"^1.0.0","puppeteer":"^1.16.0","pptr-testing-library":"^0.3.2"},"_npmOperationalInternal":{"tmp":"tmp/async-script-loader_1.0.3_1558803700081_0.45357692513550885","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@beyonk/async-script-loader","version":"2.0.0","keywords":["async","script","loader","js","client"],"author":{"name":"Antony Jones"},"license":"MIT","_id":"@beyonk/async-script-loader@2.0.0","maintainers":[{"name":"adampond","email":"adamstuartpond@gmail.com"},{"name":"antony","email":"aj@desirableobjects.co.uk"},{"name":"kingham","email":"matthewkingham@gmail.com"}],"dist":{"shasum":"d8867e5cdf6ecd0e8cc06da06a8a5fb2a405f59f","tarball":"https://registry.npmjs.org/@beyonk/async-script-loader/-/async-script-loader-2.0.0.tgz","fileCount":6,"integrity":"sha512-OAhcycCXwSVsSMjJGAENz0qtrALW943IRbIGZRnJZBA2aO/BDdWuHY1gF/9l+dZITAEu/wAkwhMqtXNeqmW1rw==","signatures":[{"sig":"MEUCIB8HIuPSDq3d9GQqHb34SInWZELR6o649JzwGqep97i6AiEA75bRmu9UXx43BliI6rgWgMkmG+o3TcAiXt+f1Uvqq+4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesUCGCRA9TVsSAnZWagAA9OQQAKGcYveLylIVR6mS30aq\n3EUDTcsgQgtXSlBVQEvy/8iIh0WKM681AuAzKE7B3gnQGZ2zpeEkA3ZDHQPk\ngmAaSZXwxPOfJMRCLeYLV0DwH+kGCkRYVue2HnXCEEEEbrnnoG2GVcj/GqvT\nnq3IdnNv0XOmN6Uppuz8SuX6ozCHgMCj+fe+BWj5Soa7/T3kcZu85fUMnynj\nW4N+Nm+t4GDBRWb3E75RvCoNS0UUjJnK7epOo2RfnlEn/QdVL+LeCHTPTYTy\n0T/7UpX6Xyge4qt8wIfudl6a3waKw0DSuVwfldnBASUGo35ItqxrycKZU1F6\nJj7l+x54P+JQgtg4aIXgEUC1JiICqMHSz52JDvTyQwr0G4BGCV5wE5uSXWhg\nJAqtKZ/XL1d9xWxbQurwJpjEiRjTSnC2ESJhGEjff//R5EBV6Qyoaplgm6tC\nxN3PY8KMaIFaSL3e9VM2rR/p8gW6gSeX4b9t6FNp7u+s3xSs2G5n4YJLAfWu\nJz6uo9uukRIsfCuFUPqBANMvslQ+OtaL596xja9bVNI2VQwn4g+mEVJts0zP\ni23V8TiLAWrUmE1eWkKrt6J17Z/dvFaq0FHhN807ClUIM3QTMSWijCGPseRt\n4y0XyY93Ykm0qcSDadchd4NYlAyFCynyiuhTFZtHPyOzFc1mzBXEJcrIH9uu\nBrrf\r\n=SAbH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"3d566c1e49d1234a59f3ad70a8e8fa744db82cf7","scripts":{"test":"node test-runner.js"},"_npmUser":{"name":"antony","email":"aj@desirableobjects.co.uk"},"_npmVersion":"6.14.4","description":"Loads scripts cleanly and asynchronously in SPAs","directories":{},"_nodeVersion":"10.20.1","_hasShrinkwrap":false,"devDependencies":{"esm":"^3.2.25","polkadot":"^1.0.0","puppeteer":"^1.16.0","pptr-testing-library":"^0.3.2"},"_npmOperationalInternal":{"tmp":"tmp/async-script-loader_2.0.0_1588674693712_0.8302369468026638","host":"s3://npm-registry-packages"}},"2.2.1":{"name":"@beyonk/async-script-loader","version":"2.2.1","keywords":["async","script","loader","js","client"],"author":{"name":"Antony Jones"},"license":"MIT","_id":"@beyonk/async-script-loader@2.2.1","maintainers":[{"name":"dextermb","email":"dexter.mb@outlook.com"},{"name":"ghostsos","email":"ghostdevbusiness@gmail.com"},{"name":"ahpercival","email":"adrian.percival@beyonk.com"},{"name":"alex.dilley","email":"alex.dilley@gmail.com"},{"name":"antony","email":"aj@desirableobjects.co.uk"},{"name":"adampond","email":"adam@beyonk.com"}],"dist":{"shasum":"248b5aea9cf388abdf298d6819ac1fc914cbcd6a","tarball":"https://registry.npmjs.org/@beyonk/async-script-loader/-/async-script-loader-2.2.1.tgz","fileCount":4,"integrity":"sha512-rJtwN90T2ibzYpsIfNa48AoqwtOMjCnXyppZOuOGqaitxBBVXBwe3OHxfyeAyAfKS1bsoyhk+EhuPWMYFbvnBg==","signatures":[{"sig":"MEUCIQD7qWWD0Nl5inoNBrKzVXUEbuJeruB/3BAncgnEInL9uAIgNNRmO7bhK4DMGCE/LyB1aKrbLNr7bSJhO92tVKNzN6g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4347,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVvJyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoiGg//eZzJPE8m0dPp95xLt9PFPDXETg3BlIXH6PCsvLf+NVyzEKhV\r\nVLSCUaUrRAsCQscluF7iLMiKcyXpN4/2TkwK7G5d5oWIQa+Qw2EwRie7z3oM\r\n+lNltz/OzYiaIdLJ7hTFqAqhyRC9dOfQHE7EqyMdcvr/VaHJZVFbaD1L3iZu\r\n0CqVxvoD0b5xr2fCBDGtu5enhOvgS8J36ZaM8FSYQPn73j4Dp0w96rnXxhs9\r\n7SnjaisMdvJ1OU7+XxbKnfIsmWhMgTfwtV5LuUQi2VlBHpyO7d39p7qo4Qfh\r\n3dSlPNsi6mUQt+X5JAiX2g60DzYkodSW8ENFAHH1N1nNLhiI5/8sAQMpvcZ/\r\nSF6OQuHXr2qwLGewF1qSxsvBUdieisx4Qa9+9wJ95dz+37EabfkzgId9u7In\r\nKA2P6UAAy/PCM9JBvrhNj2TnMQRBzOw5VOC1++Q7RhDtLi+Qm/LDNN1mOBUO\r\n9jXUW2VAEqTOTY9jySQFeWz0LOS27QN6jhXMvxwpIwZ1x5AdjlNdshOS1dvE\r\nS/nBaKTq71jgyQThCc88XBp+R0S026QYY/fo6GyO/J3jWCHQK1m4vXr6MFcN\r\nXQCPeae0BOxO1YmssYjlVO8SUqfJvIgNoq/bgtlgZUQwJj1Y7GD6jBq8HIfp\r\nB7vkqziqCJPVvU9JzvOeIgQF4J5hMBayXdI=\r\n=iyWZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","type":"module","volta":{"node":"16.14.2"},"gitHead":"2ffceb9efed1aef07eacccef2c4d707be469f483","_npmUser":{"name":"antony","email":"aj@desirableobjects.co.uk"},"_npmVersion":"8.5.0","description":"Loads scripts cleanly and asynchronously in SPAs","directories":{},"_nodeVersion":"16.14.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/async-script-loader_2.2.1_1649865330265_0.22425005035040235","host":"s3://npm-registry-packages"}},"2.2.2":{"name":"@beyonk/async-script-loader","version":"2.2.2","keywords":["async","script","loader","js","client"],"author":{"name":"Antony Jones"},"license":"MIT","_id":"@beyonk/async-script-loader@2.2.2","maintainers":[{"name":"dextermb","email":"dexter.mb@outlook.com"},{"name":"ghostsos","email":"ghostdevbusiness@gmail.com"},{"name":"ahpercival","email":"adrian.percival@beyonk.com"},{"name":"alex.dilley","email":"alex.dilley@gmail.com"},{"name":"antony","email":"aj@desirableobjects.co.uk"},{"name":"adampond","email":"adam@beyonk.com"}],"dist":{"shasum":"f95194c92e2f413c9093ac4a6dbb8f08fbc55745","tarball":"https://registry.npmjs.org/@beyonk/async-script-loader/-/async-script-loader-2.2.2.tgz","fileCount":4,"integrity":"sha512-K6J9NqZy8w2A2Pyi1pZrwBf+ZmYQNwZF+94s3PDV12rdoDukAZEgxObwqs/xea2rrzlNVmeb6WMY7GBAg67ofg==","signatures":[{"sig":"MEQCIHOfkZmDzKGsoAGtJG9Cf6El58z2CpG65A/CglchiOPZAiA7abIZb5lJi/Jv4PJxmRc84zenwZm+r95p7WkIQa3McA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJii6s/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoRUA/8CIKihEeH99Bq4a+a8Dt7Lsh7pnOEzk2lSfICNzYjMe6k27rr\r\nrxxkGoeP4/YqCdJ/tX4JaJVP3BxQMfofWCWMPn3FkMwup0CRiq+WoqfbF5D/\r\nW7t7ZG+bzaaAUX3pccRY7JvvQRxZ3abElqt9zWv+7F29aII2Yu3SUxrFyMgu\r\nZJbIZ/hof7/Mmav4wBuI2TzAX4EY9x29AcO/P7MNECYaPzwq8NlXwjvIkIra\r\nmY1YwJ9rs5lEXUbE8X8yYW2qLmAu6RIWKNN1GZ56vgjiMwEMswMKs9+U0FHB\r\nXhgWf5RjVaDkLwzqCxJK7QcajIQj2amk7po9ez5H9Qf4JP0zE8Cfk7xUTp6o\r\nLV2EkwDfZqEbSCHH3W8XrumVMyaa/qhQ4P5PhGxeSWZaH0CW0H1/KFxLYOja\r\nHtuxB/JPNa3WU2jPw8mrriGn6OQDRmtGQ+JutGCZ1YebsYB2dnfAUYqE34v5\r\nEtNGBCZT3kLCw7m8OpAliLmazq5M75H2/pDADwu/QNXQyb2GGMQuJWZEZyIi\r\n/PofGz2qKA7GVenhOiJOF4lxe/xNAxwW2aLnCbN0YEN8l4d47pJPgq7GoCOk\r\nuhc1LiFKrUg8LzMsu9CRGvUG0inRjA6WjOBxM5YzQfshttQCB3B2QCM6X0bG\r\n5BRPb1DDlyutUg+R0vw3578xBXnd1QT6BgE=\r\n=eDZc\r\n-----END PGP SIGNATURE-----\r\n"},"type":"module","volta":{"node":"16.14.2"},"exports":{".":"./index.js","./package.json":"./package.json"},"gitHead":"772638414c91daa359a914e2a6df8c457535176d","_npmUser":{"name":"antony","email":"aj@desirableobjects.co.uk"},"_npmVersion":"8.5.0","description":"Loads scripts cleanly and asynchronously in SPAs","directories":{},"_nodeVersion":"16.14.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/async-script-loader_2.2.2_1653320511641_0.3212674960612081","host":"s3://npm-registry-packages"}},"2.3.0":{"name":"@beyonk/async-script-loader","version":"2.3.0","keywords":["async","script","loader","js","client"],"author":{"name":"Antony Jones"},"license":"MIT","_id":"@beyonk/async-script-loader@2.3.0","maintainers":[{"name":"dextermb","email":"dexter.mb@outlook.com"},{"name":"ghostsos","email":"ghostdevbusiness@gmail.com"},{"name":"ahpercival","email":"adrian.percival@beyonk.com"},{"name":"alex.dilley","email":"alex.dilley@gmail.com"},{"name":"antony","email":"aj@desirableobjects.co.uk"},{"name":"adampond","email":"adam@beyonk.com"}],"dist":{"shasum":"60868bff547f2122488f58b3b31b6bcde9a13dce","tarball":"https://registry.npmjs.org/@beyonk/async-script-loader/-/async-script-loader-2.3.0.tgz","fileCount":4,"integrity":"sha512-/vbDM5j8OHmtnWLx87sef0T/jGWVvZV6ILm3QFLpfRwSg0KmhQoAZnOT4XSaUL/EjOC9eMzgX5qtS2jztKzY2A==","signatures":[{"sig":"MEQCIGMNkQvSoqMTuob9zYuF+Cg/WeHf04ZqcAO9NEqDHJU8AiA49f0IS0WoQo105mK5yfhBOPWEhHqVqHjLhVt7gOc5iQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5201,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjb4mtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpSUA/8D1eB5/m8fyf2VcNZ3UxE49bioXzTwjDFZsfzOAYlrAdQ64Gi\r\nJHUIghPFgBveq2XoGgD0MpbdyW5gKkTvxf6kmtawDIY721WvzFldUntfg9sC\r\n6S4x6vt8FJfRjENT02hFTHIUgzicURVZ9dGxw4jDNMeGSQ42oOORqTcL54eO\r\nNoubbI3XSTZxNJ5fM0oxSsHwdcR0ZKTfNvXOIc2anRSHHpd1KsHWbBJJJCk8\r\ngxIb1y5b1x6DLYpWZT4lpdIctqmxZsGDzvepNtTwtfMe3wsRehPbwze343gc\r\nxhgCwr2bTEX+8lyeRgvQQUv158Etv8FAiTLG7KxCbSgXRKL8fZAagCLudoF9\r\nTRx6LVxV5h1G2OLvE3Fa9Hu+kQKtD+BcoyTd0IPKoG2B3aE9DwQKLpta0Uc+\r\nH8m+9B6zF/6zx+kF4K0LnbsidD7Jt5OW5vASlZn2Pe6Ts2TvxIgG2/1gqBeS\r\nRr3+6OhpDxso4BZ4R7rmn3yg1SpgMYNc/LfjOY3FHQS1qw+HQ2sqprwJjU3T\r\n27tTN0GXJP3xjto1TSw+XwsYAZ6Eo3hwyqShkoPxKWD3c9fsXhG0yQt0S5dK\r\nD8Z5Hm0hZSfHGj/5ZGp3a5DbmQnpbehLpK029bV9oUVEwhFk23zo18mN4ev1\r\nEHrwmLLaqEaHCZbAyanB1X8w9btVoG4LjAA=\r\n=yiPG\r\n-----END PGP SIGNATURE-----\r\n"},"type":"module","volta":{"node":"16.14.2"},"exports":{".":"./index.js","./package.json":"./package.json"},"gitHead":"4162dbcb3338ef76323447c445ab78cbff2dc7cf","_npmUser":{"name":"antony","email":"aj@desirableobjects.co.uk"},"_npmVersion":"8.5.0","description":"Loads scripts cleanly and asynchronously in SPAs","directories":{},"_nodeVersion":"16.14.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/async-script-loader_2.3.0_1668254124778_0.3603655658335694","host":"s3://npm-registry-packages"}}},"time":{"created":"2019-05-23T22:08:37.181Z","modified":"2026-08-24T12:20:55.025Z","1.0.2":"2019-05-23T22:08:37.337Z","1.0.3":"2019-05-25T17:01:40.218Z","2.0.0":"2020-05-05T10:31:33.879Z","2.2.1":"2022-04-13T15:55:30.456Z","2.2.2":"2022-05-23T15:41:51.789Z","2.3.0":"2022-11-12T11:55:25.006Z"},"author":{"name":"Antony Jones"},"license":"MIT","keywords":["async","script","loader","js","client"],"description":"Loads scripts cleanly and asynchronously in SPAs","maintainers":[{"email":"aj@desirableobjects.co.uk","name":"antony"},{"email":"adam@beyonk.com","name":"adampond"},{"email":"alex.dilley@gmail.com","name":"alex.dilley"},{"email":"jed.woodcock@beyonk.com","name":"jedwoodcock"},{"email":"active.dust5315@fastmail.com","name":"tomlewis0"},{"email":"paula.banks@beyonk.com","name":"bpaula92"},{"email":"muhammad.atif@beyonk.com","name":"moatif"},{"email":"sam.vargas+npm@posteo.com","name":"svargas-dev"}],"readme":"<a href=\"https://beyonk.com\">\n    <br />\n    <br />\n    <img src=\"https://user-images.githubusercontent.com/218949/144224348-1b3a20d5-d68e-4a7a-b6ac-6946f19f4a86.png\" width=\"198\" />\n    <br />\n    <br />\n</a>\n\n## Async Script Loader\n\n[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com) \n\nAllows asynchronous loading of scripts and styles in a Single Page Application (or anything else, in fact):\n\n* Using a test to ensure that the code is only loaded once\n* Running a callback once the script is loaded\n* Running a callback if the script is already loaded\n* Not blocking the main thread\n\n### Reasoning\n\nHaving integrated a multitude of third-party SDKs from large, well known providers, I've come to the conclusion that not having a standard interface turns the whole thing into a minefield of callbacks, timers, random library-specific loader modules, and global objects on the window, resulting in XSS risks and all sort of other undesirable behaviour. This module aims to provide a standard way of loading third-party dependencies.\n\n### Usage\n\nYou pass a list of urls to the loader, along with a method for checking that your page is ready, and a callback to call when it is.\n\nUrls can be scripts or stylesheets.\n\n### Script Tags\n\nYou can use the module like so, for a library loaded from example.com, which, when loaded, adds an attribute called PROVIDER to the global window object.\n\n```js\n<script>\n  import loader from '@beyonk/async-script-loader'\n\n  const url = '//example.com/sdk/1.0.0/lib.js'\n\n  function test () {\n    return !!window.PROVIDER\n  }\n\n  function callback () {\n    window.PROVIDER.someFunction()\n  }\n\n  loader([\n    { type: 'script', url }\n  ], test, callback)\n</script>\n```\n\nYou can pass options for script tags.\n\n```js\n<script>\n  loader([\n    { type: 'script', url, options: { async: true, defer: true } } // these are the default options\n  ], test, callback)\n</script>\n```\n\n#### Style Tags\n\nYou can include any number of tags, including style tags.\n\nWhen the last one has loaded, the callback will be called.\n\n```js\n<script>\n  import loader from '@beyonk/async-script-loader'\n\n  loader([\n    { type: 'script', url: '//example.com/sdk/1.0.0/lib.js' },\n    { type: 'script', url: '//example.com/sdk/1.0.0/lib2.js' },\n    { type: 'style', url: '//example.com/sdk/1.0.0/style.css' }\n  ], () => {\n    return !!window.PROVIDER\n  }, () => {\n    window.PROVIDER.someFunction()\n  })\n</script>\n```\n\nNo more tears!\n\n#### Inline scripts / Inline css\n\nYou can use inline content for either type of tag by passing the configuration attribute `content` *instead* of `url`. This will write the content passed into the tag's body rather than setting it as an `href` or `src` attribute `url` will always take prescidence, so leave it out for `content` to work.\n\n\n```js\n<script>\n  import loader from '@beyonk/async-script-loader'\n\n  loader([\n    { type: 'script', content: 'console.log(\"foo\");' },\n    { type: 'style', content: '* { color: red; }' }\n  ],\n  () => false, // always load\n  () => () // no-op\n)\n</script>\n```","readmeFilename":"README.MD"}