diff --git a/CopyThisStuff/build-legacy.js b/CopyThisStuff/build-legacy.js new file mode 100644 index 0000000000000000000000000000000000000000..fccc6a6b15183ab7091154589da904905a81d8d5 --- /dev/null +++ b/CopyThisStuff/build-legacy.js @@ -0,0 +1,49 @@ +var cdn = "./"; +var ancient=false; +if (window.__appCDN) { + cdn = window.__appCDN; +} +try { + if (typeof Symbol == "undefined") { // IE 11, at least try to serve a watered down site + ancient = true; + } + new Function("let a;"); // bizarre but needed for Safari 9 bc of when it was made +} +catch (err) { + ancient = true; +} +if (!ancient) { + "use strict"; (function () { function a(a, b, c) { var d = a; if (d.state = b, d.stateData = c, 0 < d.onNextStateChange.length) { var e = d.onNextStateChange.slice(); d.onNextStateChange.length = 0; for (var f, g = 0, h = e; g < h.length; g++)f = h[g], f() } return d } function b(b) { function d() { try { document.head.removeChild(f) } catch (a) { } } var e = a(b, "Loading", void 0), f = document.createElement("script"); return f.src = b.url, null !== b.crossorigin && f.setAttribute("crossorigin", b.crossorigin), f.onload = function () { var a, b, f; void 0 === r ? (b = [], f = void 0) : (a = r(), b = a[0], f = a[1]), c(e, b, f), d() }, f.onerror = function () { g(b, new TypeError("Failed to fetch " + b.url)), d() }, document.head.appendChild(f), e } function c(b, c, e) { var f = d(b, c), g = f[0], h = f[1]; return a(b, "WaitingForTurn", { args: g, deps: h, moduleBody: e }) } function d(a, c) { for (var e, f = [], g = [], i = 0, j = c; i < j.length; i++) { if (e = j[i], "exports" === e) { f.push(a.exports); continue } if ("require" === e) { f.push(function (b, c, e) { var f = d(a, b), g = f[0], i = f[1]; h(i, function () { c && c.apply(null, g) }, e) }); continue } if ("meta" === e) { f.push({ url: !0 === a.isTopLevel ? a.url.substring(0, a.url.lastIndexOf("#")) : a.url }); continue } var l = k(n(a.urlBase, e), a.crossorigin); f.push(l.exports), g.push(l), "Initialized" === l.state && b(l) } return [f, g] } function e(b) { var c = a(b, "WaitingOnDeps", b.stateData); return h(b.stateData.deps, function () { return f(c) }, function (a) { return g(c, a) }), c } function f(b) { var c = b.stateData; if (null != c.moduleBody) try { c.moduleBody.apply(null, c.args) } catch (a) { return g(b, a) } return a(b, "Executed", void 0) } function g(b, c) { return !0 === b.isTopLevel && setTimeout(function () { throw c }), a(b, "Failed", c) } function h(a, b, c) { var d = a.shift(); return void 0 === d ? void (b && b()) : "WaitingOnDeps" === d.state ? (!1, void h(a, b, c)) : void i(d, function () { h(a, b, c) }, c) } function i(a, b, c) { switch (a.state) { case "WaitingForTurn": return e(a), void i(a, b, c); case "Failed": return void (c && c(a.stateData)); case "Executed": return void b(); case "Loading": case "WaitingOnDeps": return void a.onNextStateChange.push(function () { return i(a, b, c) }); case "Initialized": throw new Error("All dependencies should be loading already before pressureDependencyToExecute is called."); default: throw new Error("Impossible module state: " + a.state); } } function j(a, b) { switch (a.state) { case "Executed": case "Failed": return void b(); default: a.onNextStateChange.push(function () { return j(a, b) }); } } function k(a, b) { void 0 === b && (b = "anonymous"); var c = q[a]; return void 0 === c && (c = q[a] = { url: a, urlBase: m(a), exports: Object.create(null), state: "Initialized", stateData: void 0, isTopLevel: !1, crossorigin: b, onNextStateChange: [] }), c } function l(a) { return v.href = a, v.href } function m(a) { return a = a.split("?")[0], a = a.split("#")[0], a.substring(0, a.lastIndexOf("/") + 1) } function n(a, b) { return -1 === b.indexOf("://") ? l("/" === b[0] ? b : a + b) : b } function o() { return document.baseURI || (document.querySelector("base") || window.location).href } function p() { var b = document.currentScript; if (!b) return u; if (window.HTMLImports) { var c = window.HTMLImports.importForElement(b); return c ? c.href : u } var d = b.ownerDocument.createElement("a"); return d.href = "", d.href } if (!window.define) { var q = Object.create(null), r = void 0, s = 0, t = void 0, u = o(); window.define = function (a, b) { var d = !1; r = function () { return d = !0, r = void 0, [a, b] }; var f = p(), g = document.currentScript && document.currentScript.getAttribute("crossorigin") || "anonymous"; setTimeout(function () { if (!1 == d) { r = void 0; var h = f + "#" + s++, i = k(h, g); i.isTopLevel = !0; var l = c(i, a, b); void 0 === t ? e(l) : j(k(t), function () { e(l) }), t = h } }, 0) }, window.define._reset = function () { for (var a in q) delete q[a]; r = void 0, s = 0, t = void 0, u = o() }; var v = document.createElement("a") } })(); + var defs; + // FF 6x.x can be given ES6 compliant code safely + if (!/Safari/.test(navigator.userAgent) && window.customElements) { + defs = [ + cdn + "assets/babel-top.js", + cdn + "build/es6-amd/node_modules/web-animations-js/web-animations-next-lite.min.js", + cdn + "build/es6-amd/node_modules/@webcomponents/webcomponentsjs/webcomponents-loader.js", + //cdn + "build/es6-amd/node_modules/@polymer/polymer/polymer-legacy.js" + ]; + window.WCAutoloadPolyfillEntryPoint = cdn + "build/es6-amd/node_modules/@lrnwebcomponents/wc-autoload/wc-autoload.js"; + } + else { + defs = [ + cdn + "assets/babel-top.js", + cdn + "build/es5-amd/node_modules/web-animations-js/web-animations-next-lite.min.js", + cdn + "build/es5-amd/node_modules/fetch-ie8/fetch.js", + cdn + "build/es6/node_modules/@webcomponents/webcomponentsjs/custom-elements-es5-adapter.js", + cdn + "build/es5-amd/node_modules/@webcomponents/webcomponentsjs/webcomponents-bundle.js", + //cdn + "build/es5-amd/node_modules/@polymer/polymer/polymer-legacy.js" + ]; + window.WCAutoloadPolyfillEntryPoint = cdn + "build/es5-amd/node_modules/@lrnwebcomponents/wc-autoload/wc-autoload.js"; + } + define(defs, function () {"use strict"; + define([cdn + "build/es5-amd/node_modules/@lrnwebcomponents/deduping-fix/deduping-fix.js", window.WCAutoloadPolyfillEntryPoint], function () {"use strict"; + window.WCAutoload.process(); + }); + }); +} +else { + if (window.__appForceUpgrade) { + window.location = "assets/upgrade-browser.html"; + } +} \ No newline at end of file diff --git a/CopyThisStuff/build.js b/CopyThisStuff/build.js index 94fc7de3f793e1f6d9802befc9ef12c0e7f47617..67b7451b99a2c6ca8a45dd8dc0703c174e418a4a 100644 --- a/CopyThisStuff/build.js +++ b/CopyThisStuff/build.js @@ -1,61 +1,24 @@ -var entry = "dist/app.js"; -window.process = {env: {NODE_ENV: 'production'}}; +window.process = {env: {NODE_ENV: "production"}}; var cdn = "./"; +var ancient=false; if (window.__appCDN) { cdn = window.__appCDN; } -var def = document.getElementsByTagName('script')[0]; +window.WCAutoloadRegistryFile = cdn + "wc-registry.json"; try { + var def = document.getElementsByTagName("script")[0]; // if a dynamic import fails, we bail over to the compiled version - new Function('import("");'); + new Function("import('');"); // insert polyfille for web animations - if(!('animate' in document.body)) { - var ani = document.createElement('script'); - ani.src = cdn + 'build/es6/node_modules/web-animations-js/web-animations-next-lite.min.js'; - def.parentNode.insertBefore(ani, def); - } - var build = document.createElement('script'); - build.src = cdn + 'build/es6/' + entry; - build.type = 'module'; + var ani = document.createElement("script"); + ani.src = cdn + "build/es6/node_modules/web-animations-js/web-animations-next-lite.min.js"; + def.parentNode.insertBefore(ani, def); + var build = document.createElement("script"); + build.src = cdn + "build/es6/node_modules/@lrnwebcomponents/wc-autoload/wc-autoload.js"; + build.type = "module"; def.parentNode.insertBefore(build, def); } catch (err) { - var ancient=false; - try { - if (typeof Symbol == "undefined") { // IE 11, at least try to serve a watered down site - ancient = true; - } - new Function('let a;'); // bizarre but needed for Safari 9 bc of when it was made - } - catch (err) { - ancient = true; - } - if (!ancient) { - "use strict"; (function () { function a(a, b, c) { var d = a; if (d.state = b, d.stateData = c, 0 < d.onNextStateChange.length) { var e = d.onNextStateChange.slice(); d.onNextStateChange.length = 0; for (var f, g = 0, h = e; g < h.length; g++)f = h[g], f() } return d } function b(b) { function d() { try { document.head.removeChild(f) } catch (a) { } } var e = a(b, "Loading", void 0), f = document.createElement("script"); return f.src = b.url, null !== b.crossorigin && f.setAttribute("crossorigin", b.crossorigin), f.onload = function () { var a, b, f; void 0 === r ? (b = [], f = void 0) : (a = r(), b = a[0], f = a[1]), c(e, b, f), d() }, f.onerror = function () { g(b, new TypeError("Failed to fetch " + b.url)), d() }, document.head.appendChild(f), e } function c(b, c, e) { var f = d(b, c), g = f[0], h = f[1]; return a(b, "WaitingForTurn", { args: g, deps: h, moduleBody: e }) } function d(a, c) { for (var e, f = [], g = [], i = 0, j = c; i < j.length; i++) { if (e = j[i], "exports" === e) { f.push(a.exports); continue } if ("require" === e) { f.push(function (b, c, e) { var f = d(a, b), g = f[0], i = f[1]; h(i, function () { c && c.apply(null, g) }, e) }); continue } if ("meta" === e) { f.push({ url: !0 === a.isTopLevel ? a.url.substring(0, a.url.lastIndexOf("#")) : a.url }); continue } var l = k(n(a.urlBase, e), a.crossorigin); f.push(l.exports), g.push(l), "Initialized" === l.state && b(l) } return [f, g] } function e(b) { var c = a(b, "WaitingOnDeps", b.stateData); return h(b.stateData.deps, function () { return f(c) }, function (a) { return g(c, a) }), c } function f(b) { var c = b.stateData; if (null != c.moduleBody) try { c.moduleBody.apply(null, c.args) } catch (a) { return g(b, a) } return a(b, "Executed", void 0) } function g(b, c) { return !0 === b.isTopLevel && setTimeout(function () { throw c }), a(b, "Failed", c) } function h(a, b, c) { var d = a.shift(); return void 0 === d ? void (b && b()) : "WaitingOnDeps" === d.state ? (!1, void h(a, b, c)) : void i(d, function () { h(a, b, c) }, c) } function i(a, b, c) { switch (a.state) { case "WaitingForTurn": return e(a), void i(a, b, c); case "Failed": return void (c && c(a.stateData)); case "Executed": return void b(); case "Loading": case "WaitingOnDeps": return void a.onNextStateChange.push(function () { return i(a, b, c) }); case "Initialized": throw new Error("All dependencies should be loading already before pressureDependencyToExecute is called."); default: throw new Error("Impossible module state: " + a.state); } } function j(a, b) { switch (a.state) { case "Executed": case "Failed": return void b(); default: a.onNextStateChange.push(function () { return j(a, b) }); } } function k(a, b) { void 0 === b && (b = "anonymous"); var c = q[a]; return void 0 === c && (c = q[a] = { url: a, urlBase: m(a), exports: Object.create(null), state: "Initialized", stateData: void 0, isTopLevel: !1, crossorigin: b, onNextStateChange: [] }), c } function l(a) { return v.href = a, v.href } function m(a) { return a = a.split("?")[0], a = a.split("#")[0], a.substring(0, a.lastIndexOf("/") + 1) } function n(a, b) { return -1 === b.indexOf("://") ? l("/" === b[0] ? b : a + b) : b } function o() { return document.baseURI || (document.querySelector("base") || window.location).href } function p() { var b = document.currentScript; if (!b) return u; if (window.HTMLImports) { var c = window.HTMLImports.importForElement(b); return c ? c.href : u } var d = b.ownerDocument.createElement("a"); return d.href = "", d.href } if (!window.define) { var q = Object.create(null), r = void 0, s = 0, t = void 0, u = o(); window.define = function (a, b) { var d = !1; r = function () { return d = !0, r = void 0, [a, b] }; var f = p(), g = document.currentScript && document.currentScript.getAttribute("crossorigin") || "anonymous"; setTimeout(function () { if (!1 == d) { r = void 0; var h = f + "#" + s++, i = k(h, g); i.isTopLevel = !0; var l = c(i, a, b); void 0 === t ? e(l) : j(k(t), function () { e(l) }), t = h } }, 0) }, window.define._reset = function () { for (var a in q) delete q[a]; r = void 0, s = 0, t = void 0, u = o() }; var v = document.createElement("a") } })(); - var defs; - // FF 6x.x can be given ES6 compliant code safely - if (/Firefox\/6/.test(navigator.userAgent) || window.customElements) { - defs = [ - cdn + "assets/babel-top.js", - cdn + "build/es6-amd/node_modules/web-animations-js/web-animations-next-lite.min.js", - cdn + "build/es6-amd/node_modules/@webcomponents/webcomponentsjs/webcomponents-loader.js", - cdn + "build/es6-amd/" + entry - ]; - } - else { - defs = [ - cdn + "assets/babel-top.js", - cdn + "build/es5-amd/node_modules/web-animations-js/web-animations-next-lite.min.js", - cdn + "build/es5-amd/node_modules/fetch-ie8/fetch.js", - cdn + "build/es6/node_modules/@webcomponents/webcomponentsjs/custom-elements-es5-adapter.js", - cdn + "build/es5-amd/node_modules/@webcomponents/webcomponentsjs/webcomponents-bundle.js", - cdn + "build/es5-amd/" + entry - ]; - } - define(defs, function () { "use strict" }); - } - else { - if (window.__appForceUpgrade) { - window.location = "assets/upgrade-browser.html"; - } - } + var legacy = document.createElement("script"); + legacy.src = cdn + "build-legacy.js"; + def.parentNode.insertBefore(legacy, def); } \ No newline at end of file diff --git a/CopyThisStuff/dist/app.js b/CopyThisStuff/dist/app.js index a74a6ef4aa98ddc0617215d6a4815851fa7288cc..eafd6a09213e0ebb7ecb1669243126d34e4cdfd5 100644 --- a/CopyThisStuff/dist/app.js +++ b/CopyThisStuff/dist/app.js @@ -1,10 +1,9 @@ // import your web components that make up // your app / cdn / unbundled deployment -// for use in most CMSs import "@lrnwebcomponents/baseline-build-hax/baseline-build-hax.js"; import "@lrnwebcomponents/h-a-x/h-a-x.js"; import "@lrnwebcomponents/hax-body/hax-body.js"; import "@lrnwebcomponents/hax-body-behaviors/hax-body-behaviors.js"; -// common in CMSs import "@lrnwebcomponents/cms-hax/cms-hax.js"; -import "@lrnwebcomponents/wysiwyg-hax/wysiwyg-hax.js"; \ No newline at end of file +import "@lrnwebcomponents/wysiwyg-hax/wysiwyg-hax.js"; +// add additional imports here for your site \ No newline at end of file diff --git a/CopyThisStuff/gulpfile.js b/CopyThisStuff/gulpfile.js index b4060d8027a4169dc0ad4c015a2f322eef0e6b6f..0e3f11f5c6ac81a2fc13276f5157a0f313a39974 100644 --- a/CopyThisStuff/gulpfile.js +++ b/CopyThisStuff/gulpfile.js @@ -1,27 +1,96 @@ -const gulp = require('gulp'); -const terser = require('gulp-terser'); -const minifyJSTemplate = require('gulp-minify-html-literals'); +const gulp = require("gulp"); +const terser = require("gulp-terser"); +const glob = require("glob"); +const fs = require("fs"); +const path = require("path"); gulp.task( - "default", async () => { + "terser", () => { // now work on all the other files - await gulp.src('./build/es6/**/*.js') + gulp.src('./build/es6/**/*.js') .pipe(terser({ ecma: 2017, keep_fnames: true, mangle: false, module: true, })) - .pipe(minifyJSTemplate()) .pipe(gulp.dest('./build/es6/')); // now work on all the other files - return await gulp.src('./build/es6-amd/**/*.js') + return gulp.src('./build/es6-amd/**/*.js') .pipe(terser({ keep_fnames: true, mangle: false, module: true, safari10: true, })) - .pipe(minifyJSTemplate()) .pipe(gulp.dest('./build/es6-amd/')); } -); \ No newline at end of file +); + +gulp.task("wc-autoloader", async () => { + glob(path.join("./build/es6/node_modules/**/*.js"), (er, files) => { + let elements = {}; + // async loop over files + files.forEach((file) => { + // grab the name of the file + if (fs.existsSync(file)) { + let fLocation = file.replace("build/es6/node_modules/", ""); + const contents = fs.readFileSync(file, "utf8"); + // This Regex is looking for tags that are defined by string values + // this will work for customElements.define("local-time",s)) + // This will NOT work for customElements.define(LocalTime.tagName,s)) + const defineStatements = /customElements\.define\(["|'|`](.*?)["|'|`]/gm.exec( + contents + ); + // basic + if (defineStatements) { + elements[defineStatements[1]] = fLocation; + } + // .tag calls + else { + const hasDefine = /customElements\.define\((.*?),(.*?)\)/gm.exec( + contents + ); + // check for a define still + if (hasDefine && hasDefine[1] && hasDefine[1].includes('.tag')) { + const tagStatements = /static get tag\(\){return"(.*?)"}/gm.exec( + contents + ); + if (tagStatements) { + elements[tagStatements[1]] = fLocation; + } + } + else if (hasDefine && hasDefine[1] && hasDefine[1].includes('.is')) { + const tagStatements = /static get is\(\){return"(.*?)"}/gm.exec( + contents + ); + if (tagStatements) { + elements[tagStatements[1]] = fLocation; + } + } + else { + if (!hasDefine) { + // support for polymer legacy class housing + const PolymerLegacy = /\,is\:\"(.*?)\",/gm.exec( + contents + ); + if (PolymerLegacy && PolymerLegacy[1]) { + elements[PolymerLegacy[1]] = fLocation; + } + else { + // if we got here, it wasn't a file w/ a custom element definition + // so it's not an entry point + } + } + } + } + } + }); + + // write entries to file + fs.writeFileSync( + path.join(__dirname, "wc-registry.json"), + JSON.stringify(elements), + "utf8" + ); + }); +}); diff --git a/CopyThisStuff/package.json b/CopyThisStuff/package.json index 140581b6a860f08c0901d99d6c2da6080268eaa9..c4ebc0c6044959aa7fa28be3fa0ce0e50118710d 100644 --- a/CopyThisStuff/package.json +++ b/CopyThisStuff/package.json @@ -13,6 +13,9 @@ "license": "Apache-2.0", "dependencies": { "@webcomponents/webcomponentsjs": "2.4.2", + "@lrnwebcomponents/dynamic-import-registry": "^2.6.5", + "@lrnwebcomponents/wc-autoload": "^2.6.5", + "@lrnwebcomponents/deduping-fix": "2.4.0", "fetch-ie8": "1.5.0", "promise-polyfill": "8.1.3", "web-animations-js": "2.3.2", @@ -28,15 +31,16 @@ "access": "public" }, "devDependencies": { - "gulp-minify-html-literals": "1.1.7", "gulp": "4.0.2", "gulp-terser": "1.2.0", "polymer-build": "3.1.4", - "polymer-cli": "1.9.11" + "polymer-cli": "1.9.11", + "glob": "^7.1.6" }, "scripts": { - "build": "polymer build && yarn run terser", + "build": "polymer build && yarn run terser && yarn run wc-autoloader", "start": "yarn run build", - "terser": "gulp" + "terser": "gulp terser", + "wc-autoloader": "gulp wc-autoloader" } } diff --git a/CopyThisStuff/polymer.json b/CopyThisStuff/polymer.json index f8b57ad65d4c121c62e50d8222a7ed0dd00123b8..94a7199fb43022727ca7bc7e1ca3d7600ccdc345 100644 --- a/CopyThisStuff/polymer.json +++ b/CopyThisStuff/polymer.json @@ -1,19 +1,14 @@ { "entrypoint": "dist/build.html", "extraDependencies": [ - "node_modules/@lrnwebcomponents/*/*.js", - "node_modules/@lrnwebcomponents/*/lib/*", - "node_modules/@lrnwebcomponents/*/lib/*/*.js", - "node_modules/@lrnwebcomponents/*/lib/*/*", - "node_modules/@lrnwebcomponents/*/lib/*/*/*.js", "node_modules/fetch-ie8/fetch.js", "node_modules/promise-polyfill/dist/polyfill.min.js", "node_modules/web-animations-js/*.map", "node_modules/web-animations-js/*.js", + "node_modules/@lrnwebcomponents/wc-autoload/wc-autoload.js", + "node_modules/@lrnwebcomponents/dynamic-import-registry/dynamic-import-registry.js", "node_modules/@webcomponents/webcomponentsjs/*.js", "node_modules/@webcomponents/webcomponentsjs/bundles/*.js", - "node_modules/monaco-editor/min/**", - "node_modules/monaco-editor/min-maps/**", "!node_modules/@webcomponents/webcomponentsjs/gulpfile.js" ], "sources": [], diff --git a/CopyThisStuff/yarn.lock b/CopyThisStuff/yarn.lock index 68894fe84c0cba7300b0b6a8effceaa7409d03b5..e04cfe568b095ec989822e9d1a5a9501e4267fd1 100644 --- a/CopyThisStuff/yarn.lock +++ b/CopyThisStuff/yarn.lock @@ -1184,11 +1184,6 @@ resolved "https://registry.yarnpkg.com/@webcomponents/webcomponentsjs/-/webcomponentsjs-1.3.3.tgz#5bb82a0d3210c836bd4623e13a4a93145cb9dc27" integrity sha512-eLH04VBMpuZGzBIhOnUjECcQPEPcmfhWEijW9u1B5I+2PPYdWf3vWUExdDxu4Y3GljRSTCOlWnGtS9tpzmXMyQ== -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: version "1.3.7" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" @@ -1367,11 +1362,6 @@ append-field@^1.0.0: resolved "https://registry.yarnpkg.com/append-field/-/append-field-1.0.0.tgz#1e3440e915f0b1203d23748e78edd7b9b5b43e56" integrity sha1-HjRA6RXwsSA9I3SOeO3XubW0PlY= -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - archiver-utils@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz#e8a460e94b693c3e3da182a098ca6285ba9249e2" @@ -1406,14 +1396,6 @@ archy@^1.0.0: resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" integrity sha1-+cjBN1fMHde8N5rHeyxipcKGjEA= -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - arr-diff@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" @@ -2374,7 +2356,7 @@ chokidar@^2.0.0: optionalDependencies: fsevents "^1.2.7" -chownr@^1.0.1, chownr@^1.1.1: +chownr@^1.0.1: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== @@ -2716,11 +2698,6 @@ configstore@^3.0.0: write-file-atomic "^2.0.0" xdg-basedir "^3.0.0" -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - content-disposition@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" @@ -2898,7 +2875,7 @@ debug@2.6.9, debug@^2.0.0, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8: dependencies: ms "2.0.0" -debug@^3.0.0, debug@^3.1.0, debug@^3.2.6: +debug@^3.0.0, debug@^3.1.0: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -3004,11 +2981,6 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" @@ -3048,11 +3020,6 @@ detect-indent@^4.0.0: dependencies: repeating "^2.0.0" -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - detect-node@^2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" @@ -3877,13 +3844,6 @@ fs-exists-sync@^0.1.0: resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" integrity sha1-mC1ok6+RjnLQjeyehnP/K1qNat0= -fs-minipass@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - fs-mkdirp-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" @@ -3910,20 +3870,6 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - gensync@^1.0.0-beta.1: version "1.0.0-beta.1" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" @@ -4070,7 +4016,7 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: +glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -4424,11 +4370,6 @@ has-to-string-tag-x@^1.2.0: dependencies: has-symbol-support-x "^1.4.1" -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -4594,7 +4535,7 @@ https-proxy-agent@^3.0.0: agent-base "^4.3.0" debug "^3.1.0" -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: +iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -4606,13 +4547,6 @@ ieee754@^1.1.4: resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== -ignore-walk@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" - integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== - dependencies: - minimatch "^3.0.4" - ignore@^3.3.5: version "3.3.10" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" @@ -5788,21 +5722,6 @@ minimist@~0.0.1: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= -minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - mixin-deep@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" @@ -5921,15 +5840,6 @@ native-promise-only@^0.8.1: resolved "https://registry.yarnpkg.com/native-promise-only/-/native-promise-only-0.8.1.tgz#20a318c30cb45f71fe7adfbf7b21c99c1472ef11" integrity sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE= -needle@^2.2.1: - version "2.3.3" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.3.tgz#a041ad1d04a871b0ebb666f40baaf1fb47867117" - integrity sha512-EkY0GeSq87rWp1hoq/sH/wnTWgFVhYlnIkbJ0YJFfRgEFlz2RraCjBpFQ+vrEgEdp0ThfyHADmkChEhcb7PKyw== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - negotiator@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -5957,22 +5867,6 @@ node-fetch@^2.3.0: resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== -node-pre-gyp@*: - version "0.14.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" - integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4.4.2" - node-status-codes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" @@ -5986,14 +5880,6 @@ nomnom@^1.8.1: chalk "~0.4.0" underscore "~1.6.0" -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -6023,27 +5909,6 @@ now-and-later@^2.0.0: dependencies: once "^1.3.2" -npm-bundled@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" - integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA== - dependencies: - npm-normalize-package-bin "^1.0.1" - -npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== - -npm-packlist@^1.1.6: - version "1.4.8" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" - integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - npm-normalize-package-bin "^1.0.1" - npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -6051,16 +5916,6 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -6259,7 +6114,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= -osenv@^0.1.0, osenv@^0.1.3, osenv@^0.1.4: +osenv@^0.1.0, osenv@^0.1.3: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== @@ -6997,7 +6852,7 @@ raw-body@2.4.0: iconv-lite "0.4.24" unpipe "1.0.0" -rc@^1.0.1, rc@^1.1.6, rc@^1.2.7: +rc@^1.0.1, rc@^1.1.6: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== @@ -7086,7 +6941,7 @@ readable-stream@1.1.x: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.0, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.0, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -7484,11 +7339,6 @@ sauce-connect-launcher@^1.0.0: lodash "^4.16.6" rimraf "^2.5.4" -sax@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - scoped-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/scoped-regex/-/scoped-regex-1.0.0.tgz#a346bb1acd4207ae70bd7c0c7ca9e566b6baddb8" @@ -7600,7 +7450,7 @@ serviceworker-cache-polyfill@^4.0.0: resolved "https://registry.yarnpkg.com/serviceworker-cache-polyfill/-/serviceworker-cache-polyfill-4.0.0.tgz#de19ee73bef21ab3c0740a37b33db62464babdeb" integrity sha1-3hnuc77yGrPAdAo3sz22JGS6ves= -set-blocking@^2.0.0, set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= @@ -7988,7 +7838,7 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: +string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== @@ -8198,19 +8048,6 @@ tar-stream@^2.1.0: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^4.4.2: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.8.6" - minizlib "^1.2.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.3" - temp@^0.8.1, temp@^0.8.3: version "0.8.4" resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.4.tgz#8c97a33a4770072e0a05f919396c7665a7dd59f2" @@ -9052,13 +8889,6 @@ which@^2.0.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - widest-line@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c" @@ -9210,11 +9040,6 @@ yallist@^2.1.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= -yallist@^3.0.0, yallist@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - yargs-parser@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" diff --git a/webcomponents-behaviors.js b/webcomponents-behaviors.js new file mode 100644 index 0000000000000000000000000000000000000000..50d6e7d1723d6eb7e37e08cc958efc85a8716f5e --- /dev/null +++ b/webcomponents-behaviors.js @@ -0,0 +1,18 @@ +/** + * @file + * Ensure Drupal updates reprocess all tags correctly + */ +(function ($) { + $(document).ready(function(){ + if (window.WCAutoload && window.WCAutoload.process) { + window.WCAutoload.process(); + } + }); + Drupal.behaviors.WebcomponentsAutoload = { + attach: function(context) { + if (window.WCAutoload && window.WCAutoload.process) { + window.WCAutoload.process(); + } + } + }; +})(jQuery); \ No newline at end of file diff --git a/webcomponents.module b/webcomponents.module index 67c41aa3f048d886f6258accc75923744d2e91a3..9a2bbb141d20ff82f7b53f9c5941586b0da16009 100755 --- a/webcomponents.module +++ b/webcomponents.module @@ -47,7 +47,13 @@ function webcomponents_admin_settings($form, &$form_state) { ]; return system_settings_form($form); } - +/** + * Implements hook_page_build(). + */ +function webcomponents_page_build(&$page) { + // load in drupal specific behaviors to match our amazing build integration element + drupal_add_js(drupal_get_path('module', 'webcomponents') . '/webcomponents-behaviors.js'); +} /** * Implements hook_process_html(). */