From 1e7f91c5c28a9a563fdeef2334d2d9bc068c7aff Mon Sep 17 00:00:00 2001 From: Scott Ernst Date: Sun, 23 Feb 2020 15:32:52 -0600 Subject: [PATCH] Enhancements Improve step test file name matching when similar file names exist within a project. Also improve the load process for project notebook displays in the UI application. --- .../src/components/Notebook/Notebook.vue | 10 ++++-- ...3c2068.css => create~project.e450811e.css} | 2 +- .../js/{app.3e473437.js => app.ef2aa1b5.js} | 4 +-- ...pp.3e473437.js.map => app.ef2aa1b5.js.map} | 2 +- .../app/assets/js/create~project.1f76fa3c.js | 2 ++ .../assets/js/create~project.1f76fa3c.js.map | 1 + .../app/assets/js/create~project.3c27727e.js | 2 -- .../assets/js/create~project.3c27727e.js.map | 1 - cauldron/resources/app/index.html | 2 +- cauldron/settings.json | 2 +- cauldron/steptest/support.py | 31 ++++++++++++------- cauldron/test/steptesting/test_support.py | 6 +++- deployment.md | 7 +++-- 13 files changed, 45 insertions(+), 27 deletions(-) rename cauldron/resources/app/assets/css/{create~project.783c2068.css => create~project.e450811e.css} (93%) rename cauldron/resources/app/assets/js/{app.3e473437.js => app.ef2aa1b5.js} (99%) rename cauldron/resources/app/assets/js/{app.3e473437.js.map => app.ef2aa1b5.js.map} (99%) create mode 100644 cauldron/resources/app/assets/js/create~project.1f76fa3c.js create mode 100644 cauldron/resources/app/assets/js/create~project.1f76fa3c.js.map delete mode 100644 cauldron/resources/app/assets/js/create~project.3c27727e.js delete mode 100644 cauldron/resources/app/assets/js/create~project.3c27727e.js.map diff --git a/cauldron-app/src/components/Notebook/Notebook.vue b/cauldron-app/src/components/Notebook/Notebook.vue index c0211928..9a421874 100644 --- a/cauldron-app/src/components/Notebook/Notebook.vue +++ b/cauldron-app/src/components/Notebook/Notebook.vue @@ -7,10 +7,11 @@ import notebook from '../../notebook'; import emitter from '../../emitter'; import http from '../../http'; +import utils from '../../utils'; function showIframe() { const { project, view } = this.$store.getters; - return (this.viewer ? view : project) !== null; + return this.isMounted && (this.viewer ? view : project) !== null; } /** @@ -37,6 +38,7 @@ function watchSelectedStep(newStepName, oldStepName) { function data() { return { isLoading: true, + isMounted: false, }; } @@ -87,7 +89,11 @@ function mounted() { // Don't return this promise because we don't want the resolution process to be // blocking. - this.onLoaded() + utils.thenWait(1000) + .then(() => { + this.isMounted = true; + }) + .then(() => this.onLoaded()) .then(() => { emitter.$on('refresh-notebook', this.refresh); }) diff --git a/cauldron/resources/app/assets/css/create~project.783c2068.css b/cauldron/resources/app/assets/css/create~project.e450811e.css similarity index 93% rename from cauldron/resources/app/assets/css/create~project.783c2068.css rename to cauldron/resources/app/assets/css/create~project.e450811e.css index a5bb96a7..3b29f865 100644 --- a/cauldron/resources/app/assets/css/create~project.783c2068.css +++ b/cauldron/resources/app/assets/css/create~project.e450811e.css @@ -1 +1 @@ -.Folder[data-v-84006e5e]{display:-webkit-box;display:-ms-flexbox;display:flex;padding:.2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;color:#444}.Folder[data-v-84006e5e]:hover{background-color:#efefef;color:#000}.Folder__icon[data-v-84006e5e]{margin-right:.5em}.Folder__label[data-v-84006e5e]{font-size:.7em}.ProjectFolder[data-v-70fb8706]{display:-webkit-box;display:-ms-flexbox;display:flex;padding:.2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;color:#567c4b}.ProjectFolder[data-v-70fb8706]:hover{background-color:#accfab;color:#47673e}.ProjectFolder__icon[data-v-70fb8706]{margin-right:.5em}.ProjectFolder__label[data-v-70fb8706]{font-size:.7em}.File[data-v-c353654a]{color:#777;display:-webkit-box;display:-ms-flexbox;display:flex;padding:.2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.File[data-v-c353654a]:hover{background-color:#efefef;color:#000}.File__icon[data-v-c353654a]{margin-right:.5em}.File__label[data-v-c353654a]{font-size:.7em}.StandardPathButton[data-v-aae35e30]{width:1.4em;height:1.4em;border-radius:2em;background-color:#fff;margin-left:.25em;color:#999;border:1px solid #999;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.StandardPathButton[data-v-aae35e30]:hover{background-color:#efefef;color:#444;border:1px solid #444}.Browser[data-v-30d102f5]{font-family:Source Sans Pro,sans-serif;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden;height:100%}.Browser__toolbar[data-v-30d102f5]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:.25em;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.Browser__path[data-v-30d102f5]{color:#444;font-size:.6em;padding:.2em;background-color:#eee}.Browser__box[data-v-30d102f5]{overflow-y:scroll;-webkit-box-flex:1;-ms-flex:1;flex:1;border:1px solid #eee}.Browser__padding[data-v-30d102f5]{height:100px}.Notebook[data-v-69378d50]{background-color:#fff;-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:480px;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;overflow:hidden}.Notebook__frame[data-v-69378d50],.Notebook__overlay[data-v-69378d50]{position:absolute;top:0;left:0;width:100%;height:100%}.Notebook__overlay[data-v-69378d50]{font-family:Source Sans Pro,sans-serif;font-size:.8em;z-index:5;background-color:#fff;padding-top:4em;text-align:center}.AlertDialog[data-v-5ad52046]{background-color:#fff;z-index:51;padding:.5em}.AlertDialog__title[data-v-5ad52046]{font-size:1.2em;padding:.5em;width:100%}.AlertDialog__message[data-v-5ad52046]{font-size:.8em;color:#444}.AlertDialog__buttonBox[data-v-5ad52046]{margin-top:.75em;display:-webkit-box;display:-ms-flexbox;display:flex}.AlertDialog__spacer[data-v-5ad52046]{-webkit-box-flex:1;-ms-flex:1;flex:1} \ No newline at end of file +.Folder[data-v-84006e5e]{display:-webkit-box;display:-ms-flexbox;display:flex;padding:.2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;color:#444}.Folder[data-v-84006e5e]:hover{background-color:#efefef;color:#000}.Folder__icon[data-v-84006e5e]{margin-right:.5em}.Folder__label[data-v-84006e5e]{font-size:.7em}.ProjectFolder[data-v-70fb8706]{display:-webkit-box;display:-ms-flexbox;display:flex;padding:.2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;color:#567c4b}.ProjectFolder[data-v-70fb8706]:hover{background-color:#accfab;color:#47673e}.ProjectFolder__icon[data-v-70fb8706]{margin-right:.5em}.ProjectFolder__label[data-v-70fb8706]{font-size:.7em}.File[data-v-c353654a]{color:#777;display:-webkit-box;display:-ms-flexbox;display:flex;padding:.2em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.File[data-v-c353654a]:hover{background-color:#efefef;color:#000}.File__icon[data-v-c353654a]{margin-right:.5em}.File__label[data-v-c353654a]{font-size:.7em}.StandardPathButton[data-v-aae35e30]{width:1.4em;height:1.4em;border-radius:2em;background-color:#fff;margin-left:.25em;color:#999;border:1px solid #999;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.StandardPathButton[data-v-aae35e30]:hover{background-color:#efefef;color:#444;border:1px solid #444}.Browser[data-v-30d102f5]{font-family:Source Sans Pro,sans-serif;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden;height:100%}.Browser__toolbar[data-v-30d102f5]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:.25em;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.Browser__path[data-v-30d102f5]{color:#444;font-size:.6em;padding:.2em;background-color:#eee}.Browser__box[data-v-30d102f5]{overflow-y:scroll;-webkit-box-flex:1;-ms-flex:1;flex:1;border:1px solid #eee}.Browser__padding[data-v-30d102f5]{height:100px}.Notebook[data-v-136b1954]{background-color:#fff;-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:480px;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;overflow:hidden}.Notebook__frame[data-v-136b1954],.Notebook__overlay[data-v-136b1954]{position:absolute;top:0;left:0;width:100%;height:100%}.Notebook__overlay[data-v-136b1954]{font-family:Source Sans Pro,sans-serif;font-size:.8em;z-index:5;background-color:#fff;padding-top:4em;text-align:center}.AlertDialog[data-v-5ad52046]{background-color:#fff;z-index:51;padding:.5em}.AlertDialog__title[data-v-5ad52046]{font-size:1.2em;padding:.5em;width:100%}.AlertDialog__message[data-v-5ad52046]{font-size:.8em;color:#444}.AlertDialog__buttonBox[data-v-5ad52046]{margin-top:.75em;display:-webkit-box;display:-ms-flexbox;display:flex}.AlertDialog__spacer[data-v-5ad52046]{-webkit-box-flex:1;-ms-flex:1;flex:1} \ No newline at end of file diff --git a/cauldron/resources/app/assets/js/app.3e473437.js b/cauldron/resources/app/assets/js/app.ef2aa1b5.js similarity index 99% rename from cauldron/resources/app/assets/js/app.3e473437.js rename to cauldron/resources/app/assets/js/app.ef2aa1b5.js index 3035a030..f053072c 100644 --- a/cauldron/resources/app/assets/js/app.3e473437.js +++ b/cauldron/resources/app/assets/js/app.ef2aa1b5.js @@ -1,2 +1,2 @@ -(function(t){function e(e){for(var r,o,i=e[0],c=e[1],u=e[2],l=0,d=[];ls}))}function m(t,e,n){var s=p(e||[]),i=0===Object.keys(t||{}).length&&0===(s||[]).length;if(i)return Promise.resolve();var c=d();return c?c.processStepRenames(t||{}).then((function(){c.processStepUpdates(s);var t=a["a"].getters.previousStepChanges,e=s.reduce((function(t,e){return Object.assign(t,Object(r["a"])({},e.name,e))}),{}),n=Object.assign({},t,e);return a["a"].commit("previousStepChanges",n),o["a"].thenWait(300)})).then((function(){if(n||a["a"].getters.followSteps){var t=(a["a"].getters.project||{}).steps||[],r=t.filter((function(t){return t.name===n})).concat(e.filter((function(t){return t.step})).reverse());if(0!==r.length){var o=r[0],s=(o.status||{}).error;f(o.name,s?"error":"end")}}})):Promise.resolve()}function v(){return new Promise((function(t,e){var n=0,r=0,o=setInterval((function(){var s=d(),i=a["a"].getters,c=i.project,u=i.view;return c||u?s&&s.on&&s.on.ready?s.RUNNING?(clearInterval(o),void s.on.ready.then((function(){return t(s)}))):(r+=1,void(r>10&&(r=0,console.warn("Notebook load running timeout reached. Refreshing..."),l()))):(n+=1,void(n>10&&(n=0,console.warn("Notebook load wait timeout reached. Refreshing..."),l()))):(clearInterval(o),void e())}),200)}))}e["a"]={applyStepModifications:m,getUrl:i,getViewUrl:c,getCauldronObject:d,getIframe:u,refresh:l,onLoaded:v,scrollToStep:f}},"46aa":function(t,e,n){"use strict";var r=n("a88a"),o=n.n(r);o.a},"473f":function(t,e,n){},"491d":function(t,e,n){},"56d7":function(t,e,n){"use strict";n.r(e);n("cadf"),n("551c"),n("f751"),n("097d");var r=n("2b0e"),o=n("6018"),a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"App",attrs:{id:"app"}},[n("router-view",{staticClass:"App__routerView"}),t.warning?n("warning-overlay",{attrs:{warning:t.warning},on:{close:t.onDismissWarning}}):t._e(),t.error?n("error-overlay",{attrs:{error:t.error},on:{close:t.onDismissError}}):t._e(),t.showLostConnection?n("lost-connection-overlay"):t._e(),t.loadingMessage.id?n("loader",{attrs:{message:t.loadingMessage.message}}):t._e()],1)},s=[],i=(n("f559"),n("ba6a")),c=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"WarningOverlay"},[n("div",{staticClass:"WarningOverlay__focus"},[n("div",{staticClass:"WarningOverlay__headerBox"},[n("i",{staticClass:"WarningOverlay__icon material-icons md-36"},[t._v("warning")]),n("div",{staticClass:"WarningOverlay__titleBox"},[n("div",{staticClass:"WarningOverlay__titleHeader"},[t._v("Warning")]),n("div",{staticClass:"WarningOverlay__title"},[t._v(t._s(t.warning.code))])])]),n("div",{staticClass:"WarningOverlay__infoBox"},[n("div",{staticClass:"WarningOverlay__message"},[t._v(t._s(t.warning.message))])]),n("div",{staticClass:"WarningOverlay__buttonBox"},[n("div",{staticClass:"WarningOverlay__spacer"}),n("button",{staticClass:"WarningOverlay__button button is-small is-dark",on:{click:t.onDismiss}},[t._v("OK")])])])])},u=[];function l(){return{}}function d(){this.$emit("close")}var f={name:"WarningOverlay",props:{warning:{type:Object,default:function(){}}},data:l,methods:{onDismiss:d}},p=f,m=(n("1f1d"),n("2877")),v=Object(m["a"])(p,c,u,!1,null,"15015cde",null),g=v.exports,h=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"ErrorOverlay"},[n("div",{staticClass:"ErrorOverlay__focus"},[n("div",{staticClass:"ErrorOverlay__headerBox"},[n("i",{staticClass:"ErrorOverlay__icon material-icons md-36"},[t._v("error_outline")]),n("div",{staticClass:"ErrorOverlay__titleBox"},[n("div",{staticClass:"ErrorOverlay__titleHeader"},[t._v("Error")]),n("div",{staticClass:"ErrorOverlay__title"},[t._v(t._s(t.error.code))])])]),n("div",{staticClass:"ErrorOverlay__infoBox"},[n("div",{staticClass:"ErrorOverlay__message"},[t._v(t._s(t.error.message))])]),n("div",{staticClass:"ErrorOverlay__buttonBox"},[n("div",{staticClass:"ErrorOverlay__spacer"}),n("button",{staticClass:"ErrorOverlay__button button is-small",on:{click:t.onDismiss}},[t._v("OK")])])])])},_=[];function y(){return{}}function C(){this.$emit("close")}var b={name:"ErrorOverlay",props:{error:{type:Object,default:function(){}}},data:y,methods:{onDismiss:C}},w=b,S=(n("ff27"),Object(m["a"])(w,h,_,!1,null,"1dde40ec",null)),O=S.exports,j=n("726c"),R=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},E=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"LostConnectionOverlay"},[n("div",{staticClass:"LostConnectionOverlay__focus"},[n("div",{staticClass:"LostConnectionOverlay__headerBox"},[n("i",{staticClass:"LostConnectionOverlay__icon material-icons md-36"},[t._v("signal_wifi_off")]),n("div",{staticClass:"LostConnectionOverlay__titleBox"},[n("div",{staticClass:"LostConnectionOverlay__titleHeader"},[t._v("No Response")]),n("div",{staticClass:"LostConnectionOverlay__title"},[t._v("Lost Kernel Connection")])])]),n("div",{staticClass:"LostConnectionOverlay__infoBox"},[n("div",{staticClass:"LostConnectionOverlay__message"},[t._v("Trying to re-establish communication with the Cauldron kernel...")])])])])}],T={name:"LostConnectionOverlay"},x=T,k=(n("771f"),Object(m["a"])(x,R,E,!1,null,"73a56477",null)),L=k.exports,N=n("025e"),P=n("ea2f"),$="success",M="failure",W="lost";function D(){var t=this.$store.getters.loadingMessages||[];return t.length>0?t.splice(-1)[0]:{}}function I(){var t=this.$store.getters.warnings;return t.length<1?null:t[0]}function q(){var t=this.$store.getters.warnings.concat();t.length<1||(t.shift(),this.$store.commit("warnings",t))}function H(){var t=this.$store.getters.errors;return t.length<1?null:t[0]}function B(){var t=this.$store.getters.errors.concat();t.length<1||(t.shift(),this.$store.commit("errors",t))}function A(t,e){return this.recentResponses.push({kind:t,responseOrError:e,success:t===$}),this.recentResponses.length>50&&this.recentResponses.shift(),e}function F(){var t=this,e=this.$store.getters,n=e.isStatusDirty,r=e.isNotebookLoading,o=e.errors,a=e.warnings;if(o.length>0||a.length>0)return n||this.$store.commit("isStatusDirty",!0),clearTimeout(this.timeoutHandle),this.timeoutHandle=setTimeout(this.updateStatusLoop,100),Promise.resolve();if(r)return clearTimeout(this.timeoutHandle),this.timeoutHandle=setTimeout(this.updateStatusLoop,200),Promise.resolve();n&&this.$store.commit("isStatusDirty",!1);var s=this.$store.getters.running?500:1e3;return i["a"].updateStatus(n?0:s).then((function(e){if(e.data.success)return t.recordResponse($,e),e;var n=e.data.errors.map((function(t){return t.code}));return-1!==n.indexOf("LOST_REMOTE_CONNECTION")?t.recordResponse(W,e):(t.recordResponse(M,e),console.error("Failed update response",e.data),e)})).catch((function(e){return e.request?"ECONNABORTED"===e.code||408===(e.response||{}).status?(t.recordResponse(W,e),N["a"].thenWait(200)):e.response?(t.recordResponse(M,e),N["a"].thenWait(200)):(t.recordResponse(W,e),N["a"].thenWait(500)):(t.recordResponse(M,e),j["a"].addError({code:"UNKNOWN_ERROR",message:"Malformed request attempt has halted communication with the kernel."}),console.warn(e),Promise.resolve())})).finally((function(){var e=t.$router.currentRoute.path,n=t.$store.getters,r=n.project,o=n.view;o&&!e.startsWith("/view")?t.$router.push("/view"):o||!r||e.startsWith("/project")?null===r&&e.startsWith("/project")?t.$router.push("/"):null===o&&e.startsWith("/view")&&t.$router.push("/"):t.$router.push("/project"),clearTimeout(t.timeoutHandle),t.timeoutHandle=setTimeout(t.updateStatusLoop,100)}))}function U(){if(0===this.recentResponses.length)return!1;var t=this.recentResponses.slice(-1)[0].kind;return t===W}function z(){return{timeoutHandle:null,recentResponses:[]}}function K(){return this.updateStatusLoop()}function Q(){clearInterval(this.timeoutHandle)}var G={name:"App",components:{Loader:P["a"],LostConnectionOverlay:L,ErrorOverlay:O,WarningOverlay:g},data:z,computed:{warning:I,error:H,showLostConnection:U,loadingMessage:D},mounted:K,beforeDestroy:Q,methods:{recordResponse:A,updateStatusLoop:F,onDismissWarning:q,onDismissError:B}},J=G,V=(n("5c0b"),Object(m["a"])(J,a,s,!1,null,null,null)),X=V.exports,Y=n("8c4f"),Z=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Home"},[n("div",{staticClass:"Home__splash"},[n("div",{staticClass:"Home__focus"},[n("img",{staticClass:"Home__logo",attrs:{src:t.logo}}),n("div",{staticClass:"Home__title"},[t._v("Cauldron")]),n("div",{staticClass:"Home__tagline"},[n("div",[t._v("Interactive Computing Environment")]),n("div",{staticClass:"Home__version"},[t._v("v"+t._s(t.info.version))])]),n("div",{staticClass:"Home__buttonBox"},[n("div",{staticClass:"button Home__button tooltip",attrs:{"data-tooltip":"A new notebook project"},on:{click:t.createProject}},[t._v("Create")]),n("div",{staticClass:"button Home__button tooltip",attrs:{"data-tooltip":"An existing notebook project from a local directory"},on:{click:t.openProjectBrowser}},[t._v("Open")])])])]),t.recentProjects.length>0?n("div",{staticClass:"Home__recent"},t._l(t.recentProjects,(function(e){return n("recent-item",{attrs:{item:e},on:{click:t.onProjectClick}})})),1):t._e(),t.loadingMessage?n("loader",{attrs:{message:t.loadingMessage}}):t._e()],1)},tt=[],et=(n("7f7f"),n("2423")),nt=n.n(et),rt=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"RecentItem",on:{click:t.openProject}},[t._m(0),n("div",{staticClass:"RecentItem__box"},[n("div",{staticClass:"RecentItem__title"},[t._v(t._s(t.item.name))]),n("div",{staticClass:"RecentItem__path"},[t._v(t._s(t.item.directory.short))]),n("div",{directives:[{name:"tippy",rawName:"v-tippy",value:{placement:"top"},expression:"{ placement: 'top' }"}],staticClass:"RecentItem__date",attrs:{content:t.item.modified.display}},[t._v(t._s(t.item.modified.elapsed))])]),n("div",{staticClass:"RecentItem__rightBox"},[n("div",{staticClass:"RecentItem__remove tooltip is-tooltip-left is-tooltip-danger",attrs:{"data-tooltip":"Remove from recent list"},on:{click:function(e){return e.stopPropagation(),t.removeFromRecent(e)}}},[n("i",{staticClass:"material-icons md-18"},[t._v("close")])])])])},ot=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"RecentItem__leftBox"},[n("div",{staticClass:"material-icons RecentItem__icon"},[t._v("folder_open")])])}];function at(t){return this.$emit("click",{action:"remove",event:t,item:this.item})}function st(t){return this.$emit("click",{action:"open",event:t,item:this.item})}var it={name:"RecentItem",props:{item:{type:Object,default:function(){}}},methods:{openProject:st,removeFromRecent:at}},ct=it,ut=(n("46aa"),Object(m["a"])(ct,rt,ot,!1,null,"48a6cff4",null)),lt=ut.exports,dt=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"RemoteConnect tooltip is-tooltip-right",class:{"RemoteConnect--connected":t.connected,"RemoteConnect--disconnected":!t.connected},attrs:{"data-tooltip":"Manage remote connection"}},[n("div",{staticClass:"material-icons"},[t._v(t._s(t.icon))])])},ft=[];function pt(){return this.status.connected?"link":"link_off"}function mt(){return this.status.connected||!1}var vt={name:"RemoteConnect",props:{status:{type:Object,default:function(){}}},computed:{connected:mt,icon:pt}},gt=vt,ht=(n("6f64"),Object(m["a"])(gt,dt,ft,!1,null,"1504decf",null)),_t=ht.exports;function yt(){return this.$router.push("/create")}function Ct(){return this.$router.push("/open")}function bt(t){var e=this,n=t.item.uid;if("remove"===t.action)return this.loadingMessage="Removing Recent Project Entry",i["a"].execute("list erase ".concat(n," --yes")).then((function(t){e.recentProjects=t.data.data.projects,e.loadingMessage=null}));var r=t.item.name,o=t.item.directory.absolute;return this.loadingMessage='Loading "'.concat(r,'" Project'),i["a"].execute('open "'.concat(o,'"')).then((function(t){i["a"].markStatusDirty(),t.data.success||(e.loadingMessage=null)}))}function wt(){return{logo:nt.a,loadingMessage:"Synchronizing with Cauldron Kernel",info:{version:"unknown"},recentProjects:[]}}function St(){var t=this;return i["a"].updateStatus(500).then((function(e){return t.info=e.data.data,i["a"].execute("list recent")})).then((function(e){t.recentProjects=e.data.data.projects,t.loadingMessage=null}))}var Ot={name:"Home",components:{Loader:P["a"],RecentItem:lt,RemoteConnect:_t},data:wt,mounted:St,methods:{createProject:yt,onProjectClick:bt,openProjectBrowser:Ct}},jt=Ot,Rt=(n("80cf"),Object(m["a"])(jt,Z,tt,!1,null,"5d9f75e5",null)),Et=Rt.exports;r["a"].use(Y["a"]);var Tt=new Y["a"]({mode:"history",base:"/v1/app/",routes:[{path:"/",name:"home",component:Et},{path:"/project",name:"project",component:function(){return Promise.all([n.e("create~project"),n.e("project")]).then(n.bind(null,"b7bc"))}},{path:"/create",name:"create",component:function(){return Promise.all([n.e("create~project"),n.e("create")]).then(n.bind(null,"f28d"))}},{path:"/open",name:"open",component:function(){return Promise.all([n.e("create~project"),n.e("create")]).then(n.bind(null,"8d29"))}},{path:"/view",name:"viewer",component:function(){return Promise.all([n.e("create~project"),n.e("create")]).then(n.bind(null,"03e7"))}}]}),xt=n("c0d6");r["a"].use(o["b"]),r["a"].component("tippy",o["a"]),r["a"].config.productionTip=!1,new r["a"]({router:Tt,store:xt["a"],render:function(t){return t(X)}}).$mount("#app")},5843:function(t,e,n){"use strict";n("7f7f");var r=n("c0d6");function o(t){var e=(r["a"].getters.project||{}).steps||[],n=e.filter((function(e){return e.name===t}));return n.length>0?n[0]:null}function a(){var t=(r["a"].getters.project||{}).steps||[],e=t.filter((function(t){return t.status.selected}));return e.length>0?e[0]:null}function s(t){return r["a"].getters.queuedStepsToRun.filter((function(e){return e===t})).length>0}function i(t){var e=o(t);return null!==e&&e.status.running}function c(t){if(!s(t)&&!i(t)){var e=r["a"].getters.queuedStepsToRun.concat([t]);r["a"].commit("queuedStepsToRun",e)}}function u(t){var e=r["a"].getters.queuedStepsToRun.concat(),n=e.indexOf(t);return!(n<0)&&(e.splice(n,1),r["a"].commit("queuedStepsToRun",e),!0)}function l(t){var e=r["a"].getters.queuedStepsToRun.concat(),n=t.filter((function(t){return e.indexOf(t)<0}));n.length>0&&r["a"].commit("queuedStepsToRun",e.concat(n))}function d(t){r["a"].commit("runningStepName",t),r["a"].commit("running",null!==t)}function f(){r["a"].commit("queuedStepsToRun",[])}e["a"]={addToQueue:l,clearQueue:f,getStep:o,getSelectedStep:a,isStepQueued:s,isStepRunning:i,queueStepToRun:c,removeStepFromQueue:u,setStepRunning:d}},"5c0b":function(t,e,n){"use strict";var r=n("e332"),o=n.n(r);o.a},"6f64":function(t,e,n){"use strict";var r=n("473f"),o=n.n(r);o.a},"726c":function(t,e,n){"use strict";var r=n("c0d6"),o=["EXECUTION_ERROR"];function a(t){var e=r["a"].getters.errors.concat(),n=e.map((function(t){return t.code})).concat(o),a=(t||[]).filter((function(t){return-1===n.indexOf(t.code)}));a&&r["a"].commit("errors",e.concat(a))}function s(t){return a([t])}function i(t){var e=r["a"].getters.warnings.concat(),n=e.map((function(t){return t.code})),o=(t||[]).filter((function(t){return-1===n.indexOf(t.code)}));o&&r["a"].commit("warnings",e.concat(o))}function c(t){return i([t])}e["a"]={addErrors:a,addError:s,addWarnings:i,addWarning:c}},"771f":function(t,e,n){"use strict";var r=n("b3be"),o=n.n(r);o.a},"80cf":function(t,e,n){"use strict";var r=n("491d"),o=n.n(r);o.a},8382:function(t,e,n){"use strict";var r=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Spinner"},[n("svg",{staticClass:"Spinner__box",attrs:{xmlns:"http://www.w3.org/2000/svg",width:t.size,height:t.size}},[n("circle",{staticClass:"Spinner__path",class:t.themingClasses,attrs:{fill:"none","stroke-linecap":"round","stroke-width":t.thickness,cx:t.half,cy:t.half,r:t.radius}})])])},o=[];n("c5f6");function a(){return this.size}function s(){return Math.floor(this.size/2)}function i(){return this.half-this.thickness}function c(){return Math.max(2,Math.floor(6*Math.min(1,this.size/60)))}function u(){return"Spinner__path--".concat(this.theme)}var l={name:"Spinner",props:{size:{type:Number,default:40},theme:{type:String,default:"light"}},computed:{extent:a,half:s,radius:i,thickness:c,themingClasses:u}},d=l,f=(n("e675"),n("2877")),p=Object(f["a"])(d,r,o,!1,null,"38b6b456",null);e["a"]=p.exports},8711:function(t,e,n){},a88a:function(t,e,n){},b3be:function(t,e,n){},ba6a:function(t,e,n){"use strict";n("7f7f");var r=n("bc3a"),o=n.n(r),a=n("c0d6"),s=n("5843"),i=n("3fa3"),c=n("726c"),u=n("025e"),l={lastInvocationTimestamp:0};function d(){a["a"].commit("isStatusDirty",!0)}function f(t){var e=((t||{}).data||{}).errors||[];c["a"].addErrors(e)}function p(t){var e=((t||{}).data||{}).warnings||[];c["a"].addWarnings(e)}function m(t){var e=window.location.origin;return o.a.create({baseURL:"".concat(e,"/v1/api/"),timeout:t||1e4,headers:{"Content-Type":"application/json"}})}function v(t,e){return m(e).get(t).catch((function(e){throw console.error("FAILED GET::".concat(t),e),e}))}function g(t,e,n){return m(n).post(t,e||{}).catch((function(n){throw console.error("FAILED POST::".concat(t),e,n),n}))}function h(t){return g("/command/sync",{command:t},3e4).then((function(t){return f(t),p(t),t}))}function _(t){return g("/command/async",{command:t}).then((function(t){return f(t),p(t),t}))}function y(t){var e=t.data.data.step_changes||[],n=!t.data.success||(t.data.errors||[]).length>0||e.filter((function(t){return((t||{}).step||{}).has_error})).length>0;return n&&(s["a"].clearQueue(),a["a"].commit("running",!1),d()),n}function C(t){return a["a"].commit("running",!0),a["a"].commit("runningStepName",t),_('run "'.concat(t,'" --print-status'),t).then((function(t){y(t);var e=t.data;return i["a"].applyStepModifications(e.data.step_renames,e.data.step_changes).then((function(){return d(),t}))}))}function b(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Math.max(l.lastInvocationTimestamp,0);if(t>0){var r=(new Date).getTime(),o=r-n;if(o0,h=((o||{}).sync||{}).active;p!==m&&(a["a"].commit("status",e),a["a"].commit("project",r));var _=a["a"].getters.running,b=h||g||s||a["a"].getters.queuedStepsToRun.length>0;_!==b&&a["a"].commit("running",b);var w=a["a"].getters.runningStepName,S=[g?v[0].name:null,b?w:null],O=S.reduce((function(t,e){return e||t}),null);return w!==O&&a["a"].commit("runningStepName",O),_&&!b&&d(),i["a"].applyStepModifications(e.data.step_renames,e.data.step_changes).then((function(){var e=!h&&!g&&!s&&a["a"].getters.queuedStepsToRun.length>0;if(e){var n=a["a"].getters.queuedStepsToRun[0];return a["a"].commit("queuedStepsToRun",a["a"].getters.queuedStepsToRun.slice(1)),u["a"].thenWait(100).then((function(){return C(n)})).then((function(){return u["a"].thenWait(100)})).then((function(){return t}))}return t}))}))}function w(){return s["a"].clearQueue(),g("/command/abort").then((function(t){return f(t),p(t),a["a"].commit("running",!1),d(),t}))}e["a"]={abortExecution:w,get:v,post:g,execute:h,executeAsync:_,updateStatus:b,markStatusDirty:d}},c0d6:function(t,e,n){"use strict";var r=n("2b0e"),o=n("2f62");function a(){return{data:{success:!0,timestamp:0}}}r["a"].use(o["a"]),e["a"]=new o["a"].Store({state:{followSteps:!0,errors:[],warnings:[],isStatusDirty:!0,project:null,queuedStepsToRun:[],running:!1,runningStepName:null,savingFile:!1,status:a(),loadingMessages:[],isNotebookLoading:!1,previousStepChanges:{}},mutations:{followSteps:function(t,e){t.followSteps=e||!1},errors:function(t,e){t.errors=e||[]},warnings:function(t,e){t.warnings=e||[]},isStatusDirty:function(t,e){t.isStatusDirty=e||!1},project:function(t,e){t.project=e||null},queuedStepsToRun:function(t,e){t.queuedStepsToRun=e||[]},running:function(t,e){t.running=e||!1},runningStepName:function(t,e){t.runningStepName=e||null},savingFile:function(t,e){t.savingFile=e||!1},status:function(t,e){t.status=e||a()},loadingMessages:function(t,e){t.loadingMessages=e||[]},isNotebookLoading:function(t,e){t.isNotebookLoading=e||!1},previousStepChanges:function(t,e){t.previousStepChanges=e||{}}},getters:{followSteps:function(t){return t.followSteps},errors:function(t){return t.errors},warnings:function(t){return t.warnings},isStatusDirty:function(t){return t.isStatusDirty},project:function(t){return t.project},queuedStepsToRun:function(t){return t.queuedStepsToRun},running:function(t){return t.running},runningStepName:function(t){return t.runningStepName},savingFile:function(t){return t.savingFile},status:function(t){return t.status},view:function(t){return((t.status||{}).data||{}).view||null},loadingMessages:function(t){return t.loadingMessages},isNotebookLoading:function(t){return t.isNotebookLoading},previousStepChanges:function(t){return t.previousStepChanges}}})},cea1:function(t,e,n){},e332:function(t,e,n){},e675:function(t,e,n){"use strict";var r=n("cea1"),o=n.n(r);o.a},ea2f:function(t,e,n){"use strict";var r=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Loader"},[n("div",{staticClass:"Loader__focus"},[n("spinner",{staticClass:"Loader__spinner"}),t.message?n("div",{staticClass:"Loader__message"},[t._v(t._s(t.message))]):t._e()],1)])},o=[],a=n("8382");function s(){return{}}var i={name:"Loader",components:{Spinner:a["a"]},props:{message:{type:String,default:""}},data:s},c=i,u=(n("1aaf"),n("2877")),l=Object(u["a"])(c,r,o,!1,null,"d43f3f76",null);e["a"]=l.exports},ff27:function(t,e,n){"use strict";var r=n("0fd6"),o=n.n(r);o.a}}); -//# sourceMappingURL=app.3e473437.js.map \ No newline at end of file +(function(t){function e(e){for(var r,o,i=e[0],c=e[1],u=e[2],l=0,d=[];ls}))}function m(t,e,n){var s=p(e||[]),i=0===Object.keys(t||{}).length&&0===(s||[]).length;if(i)return Promise.resolve();var c=d();return c?c.processStepRenames(t||{}).then((function(){c.processStepUpdates(s);var t=a["a"].getters.previousStepChanges,e=s.reduce((function(t,e){return Object.assign(t,Object(r["a"])({},e.name,e))}),{}),n=Object.assign({},t,e);return a["a"].commit("previousStepChanges",n),o["a"].thenWait(300)})).then((function(){if(n||a["a"].getters.followSteps){var t=(a["a"].getters.project||{}).steps||[],r=t.filter((function(t){return t.name===n})).concat(e.filter((function(t){return t.step})).reverse());if(0!==r.length){var o=r[0],s=(o.status||{}).error;f(o.name,s?"error":"end")}}})):Promise.resolve()}function v(){return new Promise((function(t,e){var n=0,r=0,o=setInterval((function(){var s=d(),i=a["a"].getters,c=i.project,u=i.view;return c||u?s&&s.on&&s.on.ready?s.RUNNING?(clearInterval(o),void s.on.ready.then((function(){return t(s)}))):(r+=1,void(r>10&&(r=0,console.warn("Notebook load running timeout reached. Refreshing..."),l()))):(n+=1,void(n>10&&(n=0,console.warn("Notebook load wait timeout reached. Refreshing..."),l()))):(clearInterval(o),void e())}),200)}))}e["a"]={applyStepModifications:m,getUrl:i,getViewUrl:c,getCauldronObject:d,getIframe:u,refresh:l,onLoaded:v,scrollToStep:f}},"46aa":function(t,e,n){"use strict";var r=n("a88a"),o=n.n(r);o.a},"473f":function(t,e,n){},"491d":function(t,e,n){},"56d7":function(t,e,n){"use strict";n.r(e);n("cadf"),n("551c"),n("f751"),n("097d");var r=n("2b0e"),o=n("6018"),a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"App",attrs:{id:"app"}},[n("router-view",{staticClass:"App__routerView"}),t.warning?n("warning-overlay",{attrs:{warning:t.warning},on:{close:t.onDismissWarning}}):t._e(),t.error?n("error-overlay",{attrs:{error:t.error},on:{close:t.onDismissError}}):t._e(),t.showLostConnection?n("lost-connection-overlay"):t._e(),t.loadingMessage.id?n("loader",{attrs:{message:t.loadingMessage.message}}):t._e()],1)},s=[],i=(n("f559"),n("ba6a")),c=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"WarningOverlay"},[n("div",{staticClass:"WarningOverlay__focus"},[n("div",{staticClass:"WarningOverlay__headerBox"},[n("i",{staticClass:"WarningOverlay__icon material-icons md-36"},[t._v("warning")]),n("div",{staticClass:"WarningOverlay__titleBox"},[n("div",{staticClass:"WarningOverlay__titleHeader"},[t._v("Warning")]),n("div",{staticClass:"WarningOverlay__title"},[t._v(t._s(t.warning.code))])])]),n("div",{staticClass:"WarningOverlay__infoBox"},[n("div",{staticClass:"WarningOverlay__message"},[t._v(t._s(t.warning.message))])]),n("div",{staticClass:"WarningOverlay__buttonBox"},[n("div",{staticClass:"WarningOverlay__spacer"}),n("button",{staticClass:"WarningOverlay__button button is-small is-dark",on:{click:t.onDismiss}},[t._v("OK")])])])])},u=[];function l(){return{}}function d(){this.$emit("close")}var f={name:"WarningOverlay",props:{warning:{type:Object,default:function(){}}},data:l,methods:{onDismiss:d}},p=f,m=(n("1f1d"),n("2877")),v=Object(m["a"])(p,c,u,!1,null,"15015cde",null),g=v.exports,h=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"ErrorOverlay"},[n("div",{staticClass:"ErrorOverlay__focus"},[n("div",{staticClass:"ErrorOverlay__headerBox"},[n("i",{staticClass:"ErrorOverlay__icon material-icons md-36"},[t._v("error_outline")]),n("div",{staticClass:"ErrorOverlay__titleBox"},[n("div",{staticClass:"ErrorOverlay__titleHeader"},[t._v("Error")]),n("div",{staticClass:"ErrorOverlay__title"},[t._v(t._s(t.error.code))])])]),n("div",{staticClass:"ErrorOverlay__infoBox"},[n("div",{staticClass:"ErrorOverlay__message"},[t._v(t._s(t.error.message))])]),n("div",{staticClass:"ErrorOverlay__buttonBox"},[n("div",{staticClass:"ErrorOverlay__spacer"}),n("button",{staticClass:"ErrorOverlay__button button is-small",on:{click:t.onDismiss}},[t._v("OK")])])])])},_=[];function y(){return{}}function C(){this.$emit("close")}var b={name:"ErrorOverlay",props:{error:{type:Object,default:function(){}}},data:y,methods:{onDismiss:C}},w=b,S=(n("ff27"),Object(m["a"])(w,h,_,!1,null,"1dde40ec",null)),O=S.exports,j=n("726c"),R=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},E=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"LostConnectionOverlay"},[n("div",{staticClass:"LostConnectionOverlay__focus"},[n("div",{staticClass:"LostConnectionOverlay__headerBox"},[n("i",{staticClass:"LostConnectionOverlay__icon material-icons md-36"},[t._v("signal_wifi_off")]),n("div",{staticClass:"LostConnectionOverlay__titleBox"},[n("div",{staticClass:"LostConnectionOverlay__titleHeader"},[t._v("No Response")]),n("div",{staticClass:"LostConnectionOverlay__title"},[t._v("Lost Kernel Connection")])])]),n("div",{staticClass:"LostConnectionOverlay__infoBox"},[n("div",{staticClass:"LostConnectionOverlay__message"},[t._v("Trying to re-establish communication with the Cauldron kernel...")])])])])}],T={name:"LostConnectionOverlay"},x=T,k=(n("771f"),Object(m["a"])(x,R,E,!1,null,"73a56477",null)),L=k.exports,N=n("025e"),P=n("ea2f"),$="success",M="failure",W="lost";function D(){var t=this.$store.getters.loadingMessages||[];return t.length>0?t.splice(-1)[0]:{}}function I(){var t=this.$store.getters.warnings;return t.length<1?null:t[0]}function q(){var t=this.$store.getters.warnings.concat();t.length<1||(t.shift(),this.$store.commit("warnings",t))}function H(){var t=this.$store.getters.errors;return t.length<1?null:t[0]}function B(){var t=this.$store.getters.errors.concat();t.length<1||(t.shift(),this.$store.commit("errors",t))}function A(t,e){return this.recentResponses.push({kind:t,responseOrError:e,success:t===$}),this.recentResponses.length>50&&this.recentResponses.shift(),e}function F(){var t=this,e=this.$store.getters,n=e.isStatusDirty,r=e.isNotebookLoading,o=e.errors,a=e.warnings;if(o.length>0||a.length>0)return n||this.$store.commit("isStatusDirty",!0),clearTimeout(this.timeoutHandle),this.timeoutHandle=setTimeout(this.updateStatusLoop,100),Promise.resolve();if(r)return clearTimeout(this.timeoutHandle),this.timeoutHandle=setTimeout(this.updateStatusLoop,200),Promise.resolve();n&&this.$store.commit("isStatusDirty",!1);var s=this.$store.getters.running?500:1e3;return i["a"].updateStatus(n?0:s).then((function(e){if(e.data.success)return t.recordResponse($,e),e;var n=e.data.errors.map((function(t){return t.code}));return-1!==n.indexOf("LOST_REMOTE_CONNECTION")?t.recordResponse(W,e):(t.recordResponse(M,e),console.error("Failed update response",e.data),e)})).catch((function(e){return e.request?"ECONNABORTED"===e.code||408===(e.response||{}).status?(t.recordResponse(W,e),N["a"].thenWait(200)):e.response?(t.recordResponse(M,e),N["a"].thenWait(200)):(t.recordResponse(W,e),N["a"].thenWait(500)):(t.recordResponse(M,e),j["a"].addError({code:"UNKNOWN_ERROR",message:"Malformed request attempt has halted communication with the kernel."}),console.warn(e),Promise.resolve())})).finally((function(){var e=t.$router.currentRoute.path,n=t.$store.getters,r=n.project,o=n.view;o&&!e.startsWith("/view")?t.$router.push("/view"):o||!r||e.startsWith("/project")?null===r&&e.startsWith("/project")?t.$router.push("/"):null===o&&e.startsWith("/view")&&t.$router.push("/"):t.$router.push("/project"),clearTimeout(t.timeoutHandle),t.timeoutHandle=setTimeout(t.updateStatusLoop,100)}))}function U(){if(0===this.recentResponses.length)return!1;var t=this.recentResponses.slice(-1)[0].kind;return t===W}function z(){return{timeoutHandle:null,recentResponses:[]}}function K(){return this.updateStatusLoop()}function Q(){clearInterval(this.timeoutHandle)}var G={name:"App",components:{Loader:P["a"],LostConnectionOverlay:L,ErrorOverlay:O,WarningOverlay:g},data:z,computed:{warning:I,error:H,showLostConnection:U,loadingMessage:D},mounted:K,beforeDestroy:Q,methods:{recordResponse:A,updateStatusLoop:F,onDismissWarning:q,onDismissError:B}},J=G,V=(n("5c0b"),Object(m["a"])(J,a,s,!1,null,null,null)),X=V.exports,Y=n("8c4f"),Z=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Home"},[n("div",{staticClass:"Home__splash"},[n("div",{staticClass:"Home__focus"},[n("img",{staticClass:"Home__logo",attrs:{src:t.logo}}),n("div",{staticClass:"Home__title"},[t._v("Cauldron")]),n("div",{staticClass:"Home__tagline"},[n("div",[t._v("Interactive Computing Environment")]),n("div",{staticClass:"Home__version"},[t._v("v"+t._s(t.info.version))])]),n("div",{staticClass:"Home__buttonBox"},[n("div",{staticClass:"button Home__button tooltip",attrs:{"data-tooltip":"A new notebook project"},on:{click:t.createProject}},[t._v("Create")]),n("div",{staticClass:"button Home__button tooltip",attrs:{"data-tooltip":"An existing notebook project from a local directory"},on:{click:t.openProjectBrowser}},[t._v("Open")])])])]),t.recentProjects.length>0?n("div",{staticClass:"Home__recent"},t._l(t.recentProjects,(function(e){return n("recent-item",{attrs:{item:e},on:{click:t.onProjectClick}})})),1):t._e(),t.loadingMessage?n("loader",{attrs:{message:t.loadingMessage}}):t._e()],1)},tt=[],et=(n("7f7f"),n("2423")),nt=n.n(et),rt=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"RecentItem",on:{click:t.openProject}},[t._m(0),n("div",{staticClass:"RecentItem__box"},[n("div",{staticClass:"RecentItem__title"},[t._v(t._s(t.item.name))]),n("div",{staticClass:"RecentItem__path"},[t._v(t._s(t.item.directory.short))]),n("div",{directives:[{name:"tippy",rawName:"v-tippy",value:{placement:"top"},expression:"{ placement: 'top' }"}],staticClass:"RecentItem__date",attrs:{content:t.item.modified.display}},[t._v(t._s(t.item.modified.elapsed))])]),n("div",{staticClass:"RecentItem__rightBox"},[n("div",{staticClass:"RecentItem__remove tooltip is-tooltip-left is-tooltip-danger",attrs:{"data-tooltip":"Remove from recent list"},on:{click:function(e){return e.stopPropagation(),t.removeFromRecent(e)}}},[n("i",{staticClass:"material-icons md-18"},[t._v("close")])])])])},ot=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"RecentItem__leftBox"},[n("div",{staticClass:"material-icons RecentItem__icon"},[t._v("folder_open")])])}];function at(t){return this.$emit("click",{action:"remove",event:t,item:this.item})}function st(t){return this.$emit("click",{action:"open",event:t,item:this.item})}var it={name:"RecentItem",props:{item:{type:Object,default:function(){}}},methods:{openProject:st,removeFromRecent:at}},ct=it,ut=(n("46aa"),Object(m["a"])(ct,rt,ot,!1,null,"48a6cff4",null)),lt=ut.exports,dt=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"RemoteConnect tooltip is-tooltip-right",class:{"RemoteConnect--connected":t.connected,"RemoteConnect--disconnected":!t.connected},attrs:{"data-tooltip":"Manage remote connection"}},[n("div",{staticClass:"material-icons"},[t._v(t._s(t.icon))])])},ft=[];function pt(){return this.status.connected?"link":"link_off"}function mt(){return this.status.connected||!1}var vt={name:"RemoteConnect",props:{status:{type:Object,default:function(){}}},computed:{connected:mt,icon:pt}},gt=vt,ht=(n("6f64"),Object(m["a"])(gt,dt,ft,!1,null,"1504decf",null)),_t=ht.exports;function yt(){return this.$router.push("/create")}function Ct(){return this.$router.push("/open")}function bt(t){var e=this,n=t.item.uid;if("remove"===t.action)return this.loadingMessage="Removing Recent Project Entry",i["a"].execute("list erase ".concat(n," --yes")).then((function(t){e.recentProjects=t.data.data.projects,e.loadingMessage=null}));var r=t.item.name,o=t.item.directory.absolute;return this.loadingMessage='Loading "'.concat(r,'" Project'),i["a"].execute('open "'.concat(o,'"')).then((function(t){i["a"].markStatusDirty(),t.data.success||(e.loadingMessage=null)}))}function wt(){return{logo:nt.a,loadingMessage:"Synchronizing with Cauldron Kernel",info:{version:"unknown"},recentProjects:[]}}function St(){var t=this;return i["a"].updateStatus(500).then((function(e){return t.info=e.data.data,i["a"].execute("list recent")})).then((function(e){t.recentProjects=e.data.data.projects,t.loadingMessage=null}))}var Ot={name:"Home",components:{Loader:P["a"],RecentItem:lt,RemoteConnect:_t},data:wt,mounted:St,methods:{createProject:yt,onProjectClick:bt,openProjectBrowser:Ct}},jt=Ot,Rt=(n("80cf"),Object(m["a"])(jt,Z,tt,!1,null,"5d9f75e5",null)),Et=Rt.exports;r["a"].use(Y["a"]);var Tt=new Y["a"]({mode:"history",base:"/v1/app/",routes:[{path:"/",name:"home",component:Et},{path:"/project",name:"project",component:function(){return Promise.all([n.e("create~project"),n.e("project")]).then(n.bind(null,"b7bc"))}},{path:"/create",name:"create",component:function(){return Promise.all([n.e("create~project"),n.e("create")]).then(n.bind(null,"f28d"))}},{path:"/open",name:"open",component:function(){return Promise.all([n.e("create~project"),n.e("create")]).then(n.bind(null,"8d29"))}},{path:"/view",name:"viewer",component:function(){return Promise.all([n.e("create~project"),n.e("create")]).then(n.bind(null,"03e7"))}}]}),xt=n("c0d6");r["a"].use(o["b"]),r["a"].component("tippy",o["a"]),r["a"].config.productionTip=!1,new r["a"]({router:Tt,store:xt["a"],render:function(t){return t(X)}}).$mount("#app")},5843:function(t,e,n){"use strict";n("7f7f");var r=n("c0d6");function o(t){var e=(r["a"].getters.project||{}).steps||[],n=e.filter((function(e){return e.name===t}));return n.length>0?n[0]:null}function a(){var t=(r["a"].getters.project||{}).steps||[],e=t.filter((function(t){return t.status.selected}));return e.length>0?e[0]:null}function s(t){return r["a"].getters.queuedStepsToRun.filter((function(e){return e===t})).length>0}function i(t){var e=o(t);return null!==e&&e.status.running}function c(t){if(!s(t)&&!i(t)){var e=r["a"].getters.queuedStepsToRun.concat([t]);r["a"].commit("queuedStepsToRun",e)}}function u(t){var e=r["a"].getters.queuedStepsToRun.concat(),n=e.indexOf(t);return!(n<0)&&(e.splice(n,1),r["a"].commit("queuedStepsToRun",e),!0)}function l(t){var e=r["a"].getters.queuedStepsToRun.concat(),n=t.filter((function(t){return e.indexOf(t)<0}));n.length>0&&r["a"].commit("queuedStepsToRun",e.concat(n))}function d(t){r["a"].commit("runningStepName",t),r["a"].commit("running",null!==t)}function f(){r["a"].commit("queuedStepsToRun",[])}e["a"]={addToQueue:l,clearQueue:f,getStep:o,getSelectedStep:a,isStepQueued:s,isStepRunning:i,queueStepToRun:c,removeStepFromQueue:u,setStepRunning:d}},"5c0b":function(t,e,n){"use strict";var r=n("e332"),o=n.n(r);o.a},"6f64":function(t,e,n){"use strict";var r=n("473f"),o=n.n(r);o.a},"726c":function(t,e,n){"use strict";var r=n("c0d6"),o=["EXECUTION_ERROR"];function a(t){var e=r["a"].getters.errors.concat(),n=e.map((function(t){return t.code})).concat(o),a=(t||[]).filter((function(t){return-1===n.indexOf(t.code)}));a&&r["a"].commit("errors",e.concat(a))}function s(t){return a([t])}function i(t){var e=r["a"].getters.warnings.concat(),n=e.map((function(t){return t.code})),o=(t||[]).filter((function(t){return-1===n.indexOf(t.code)}));o&&r["a"].commit("warnings",e.concat(o))}function c(t){return i([t])}e["a"]={addErrors:a,addError:s,addWarnings:i,addWarning:c}},"771f":function(t,e,n){"use strict";var r=n("b3be"),o=n.n(r);o.a},"80cf":function(t,e,n){"use strict";var r=n("491d"),o=n.n(r);o.a},8382:function(t,e,n){"use strict";var r=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Spinner"},[n("svg",{staticClass:"Spinner__box",attrs:{xmlns:"http://www.w3.org/2000/svg",width:t.size,height:t.size}},[n("circle",{staticClass:"Spinner__path",class:t.themingClasses,attrs:{fill:"none","stroke-linecap":"round","stroke-width":t.thickness,cx:t.half,cy:t.half,r:t.radius}})])])},o=[];n("c5f6");function a(){return this.size}function s(){return Math.floor(this.size/2)}function i(){return this.half-this.thickness}function c(){return Math.max(2,Math.floor(6*Math.min(1,this.size/60)))}function u(){return"Spinner__path--".concat(this.theme)}var l={name:"Spinner",props:{size:{type:Number,default:40},theme:{type:String,default:"light"}},computed:{extent:a,half:s,radius:i,thickness:c,themingClasses:u}},d=l,f=(n("e675"),n("2877")),p=Object(f["a"])(d,r,o,!1,null,"38b6b456",null);e["a"]=p.exports},8711:function(t,e,n){},a88a:function(t,e,n){},b3be:function(t,e,n){},ba6a:function(t,e,n){"use strict";n("7f7f");var r=n("bc3a"),o=n.n(r),a=n("c0d6"),s=n("5843"),i=n("3fa3"),c=n("726c"),u=n("025e"),l={lastInvocationTimestamp:0};function d(){a["a"].commit("isStatusDirty",!0)}function f(t){var e=((t||{}).data||{}).errors||[];c["a"].addErrors(e)}function p(t){var e=((t||{}).data||{}).warnings||[];c["a"].addWarnings(e)}function m(t){var e=window.location.origin;return o.a.create({baseURL:"".concat(e,"/v1/api/"),timeout:t||1e4,headers:{"Content-Type":"application/json"}})}function v(t,e){return m(e).get(t).catch((function(e){throw console.error("FAILED GET::".concat(t),e),e}))}function g(t,e,n){return m(n).post(t,e||{}).catch((function(n){throw console.error("FAILED POST::".concat(t),e,n),n}))}function h(t){return g("/command/sync",{command:t},3e4).then((function(t){return f(t),p(t),t}))}function _(t){return g("/command/async",{command:t}).then((function(t){return f(t),p(t),t}))}function y(t){var e=t.data.data.step_changes||[],n=!t.data.success||(t.data.errors||[]).length>0||e.filter((function(t){return((t||{}).step||{}).has_error})).length>0;return n&&(s["a"].clearQueue(),a["a"].commit("running",!1),d()),n}function C(t){return a["a"].commit("running",!0),a["a"].commit("runningStepName",t),_('run "'.concat(t,'" --print-status'),t).then((function(t){y(t);var e=t.data;return i["a"].applyStepModifications(e.data.step_renames,e.data.step_changes).then((function(){return d(),t}))}))}function b(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Math.max(l.lastInvocationTimestamp,0);if(t>0){var r=(new Date).getTime(),o=r-n;if(o0,h=((o||{}).sync||{}).active;p!==m&&(a["a"].commit("status",e),a["a"].commit("project",r));var _=a["a"].getters.running,b=h||g||s||a["a"].getters.queuedStepsToRun.length>0;_!==b&&a["a"].commit("running",b);var w=a["a"].getters.runningStepName,S=[g?v[0].name:null,b?w:null],O=S.reduce((function(t,e){return e||t}),null);return w!==O&&a["a"].commit("runningStepName",O),_&&!b&&d(),i["a"].applyStepModifications(e.data.step_renames,e.data.step_changes).then((function(){var e=!h&&!g&&!s&&a["a"].getters.queuedStepsToRun.length>0;if(e){var n=a["a"].getters.queuedStepsToRun[0];return a["a"].commit("queuedStepsToRun",a["a"].getters.queuedStepsToRun.slice(1)),u["a"].thenWait(100).then((function(){return C(n)})).then((function(){return u["a"].thenWait(100)})).then((function(){return t}))}return t}))}))}function w(){return s["a"].clearQueue(),g("/command/abort").then((function(t){return f(t),p(t),a["a"].commit("running",!1),d(),t}))}e["a"]={abortExecution:w,get:v,post:g,execute:h,executeAsync:_,updateStatus:b,markStatusDirty:d}},c0d6:function(t,e,n){"use strict";var r=n("2b0e"),o=n("2f62");function a(){return{data:{success:!0,timestamp:0}}}r["a"].use(o["a"]),e["a"]=new o["a"].Store({state:{followSteps:!0,errors:[],warnings:[],isStatusDirty:!0,project:null,queuedStepsToRun:[],running:!1,runningStepName:null,savingFile:!1,status:a(),loadingMessages:[],isNotebookLoading:!1,previousStepChanges:{}},mutations:{followSteps:function(t,e){t.followSteps=e||!1},errors:function(t,e){t.errors=e||[]},warnings:function(t,e){t.warnings=e||[]},isStatusDirty:function(t,e){t.isStatusDirty=e||!1},project:function(t,e){t.project=e||null},queuedStepsToRun:function(t,e){t.queuedStepsToRun=e||[]},running:function(t,e){t.running=e||!1},runningStepName:function(t,e){t.runningStepName=e||null},savingFile:function(t,e){t.savingFile=e||!1},status:function(t,e){t.status=e||a()},loadingMessages:function(t,e){t.loadingMessages=e||[]},isNotebookLoading:function(t,e){t.isNotebookLoading=e||!1},previousStepChanges:function(t,e){t.previousStepChanges=e||{}}},getters:{followSteps:function(t){return t.followSteps},errors:function(t){return t.errors},warnings:function(t){return t.warnings},isStatusDirty:function(t){return t.isStatusDirty},project:function(t){return t.project},queuedStepsToRun:function(t){return t.queuedStepsToRun},running:function(t){return t.running},runningStepName:function(t){return t.runningStepName},savingFile:function(t){return t.savingFile},status:function(t){return t.status},view:function(t){return((t.status||{}).data||{}).view||null},loadingMessages:function(t){return t.loadingMessages},isNotebookLoading:function(t){return t.isNotebookLoading},previousStepChanges:function(t){return t.previousStepChanges}}})},cea1:function(t,e,n){},e332:function(t,e,n){},e675:function(t,e,n){"use strict";var r=n("cea1"),o=n.n(r);o.a},ea2f:function(t,e,n){"use strict";var r=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Loader"},[n("div",{staticClass:"Loader__focus"},[n("spinner",{staticClass:"Loader__spinner"}),t.message?n("div",{staticClass:"Loader__message"},[t._v(t._s(t.message))]):t._e()],1)])},o=[],a=n("8382");function s(){return{}}var i={name:"Loader",components:{Spinner:a["a"]},props:{message:{type:String,default:""}},data:s},c=i,u=(n("1aaf"),n("2877")),l=Object(u["a"])(c,r,o,!1,null,"d43f3f76",null);e["a"]=l.exports},ff27:function(t,e,n){"use strict";var r=n("0fd6"),o=n.n(r);o.a}}); +//# sourceMappingURL=app.ef2aa1b5.js.map \ No newline at end of file diff --git a/cauldron/resources/app/assets/js/app.3e473437.js.map b/cauldron/resources/app/assets/js/app.ef2aa1b5.js.map similarity index 99% rename from cauldron/resources/app/assets/js/app.3e473437.js.map rename to cauldron/resources/app/assets/js/app.ef2aa1b5.js.map index d6d2d2d1..7f92d18d 100644 --- a/cauldron/resources/app/assets/js/app.3e473437.js.map +++ b/cauldron/resources/app/assets/js/app.ef2aa1b5.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/utils.js","webpack:///./src/components/loader/Loader.vue?7af4","webpack:///./src/components/warningOverlay/WarningOverlay.vue?8966","webpack:///./src/views/home/logo-128.png","webpack:///./src/notebook.js","webpack:///./src/views/home/RecentItem.vue?992b","webpack:///./src/App.vue?cf1c","webpack:///./src/components/warningOverlay/WarningOverlay.vue?2f68","webpack:///src/components/warningOverlay/WarningOverlay.vue","webpack:///./src/components/warningOverlay/WarningOverlay.vue?52f4","webpack:///./src/components/warningOverlay/WarningOverlay.vue","webpack:///./src/components/errorOverlay/ErrorOverlay.vue?22c1","webpack:///src/components/errorOverlay/ErrorOverlay.vue","webpack:///./src/components/errorOverlay/ErrorOverlay.vue?b3ce","webpack:///./src/components/errorOverlay/ErrorOverlay.vue","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue?4c1e","webpack:///src/components/lostConnectionOverlay/LostConnectionOverlay.vue","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue?2bb6","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue","webpack:///src/App.vue","webpack:///./src/App.vue?382d","webpack:///./src/App.vue?a286","webpack:///./src/views/home/Home.vue?b292","webpack:///./src/views/home/RecentItem.vue?f406","webpack:///src/views/home/RecentItem.vue","webpack:///./src/views/home/RecentItem.vue?82a1","webpack:///./src/views/home/RecentItem.vue","webpack:///./src/views/home/RemoteConnect.vue?64ab","webpack:///src/views/home/RemoteConnect.vue","webpack:///./src/views/home/RemoteConnect.vue?01d0","webpack:///./src/views/home/RemoteConnect.vue","webpack:///src/views/home/Home.vue","webpack:///./src/views/home/Home.vue?47a0","webpack:///./src/views/home/Home.vue","webpack:///./src/router.js","webpack:///./src/main.js","webpack:///./src/stepper.js","webpack:///./src/App.vue?f711","webpack:///./src/views/home/RemoteConnect.vue?e788","webpack:///./src/exceptions.js","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue?e539","webpack:///./src/views/home/Home.vue?4bdf","webpack:///./src/components/spinner/Spinner.vue?d4ea","webpack:///src/components/spinner/Spinner.vue","webpack:///./src/components/spinner/Spinner.vue?1bf0","webpack:///./src/components/spinner/Spinner.vue","webpack:///./src/http.js","webpack:///./src/store.js","webpack:///./src/components/spinner/Spinner.vue?cbe1","webpack:///./src/components/loader/Loader.vue?505e","webpack:///src/components/loader/Loader.vue","webpack:///./src/components/loader/Loader.vue?2ee0","webpack:///./src/components/loader/Loader.vue","webpack:///./src/components/errorOverlay/ErrorOverlay.vue?493d"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","thenWait","elapsedMilliseconds","args","cacheBuster","Math","round","Date","getTime","getUrl","origin","location","myPath","pathname","replace","getViewUrl","view","store","getters","dataRoot","encodeURIComponent","id","getIframe","querySelector","refresh","iframe","contentWindow","reload","getCauldronObject","CAULDRON","ignore","scrollToStep","stepName","position","cauldron","scrollToAnchor","steps","project","targets","filter","isRunning","status","running","runningStepName","selected","followSteps","defaultPosition","filterStepChanges","changes","previousStepChanges","previous","newBody","step","body","oldBody","newTimestamp","timestamp","oldTimestamp","action","applyStepModifications","renames","newChanges","isUnmodified","keys","processStepRenames","processStepUpdates","updatedChanges","reduce","assign","combinedChanges","commit","utils","targetSteps","concat","reverse","hasError","onLoaded","waitCount","retryCount","interval","setInterval","on","ready","RUNNING","clearInterval","warn","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","warning","onDismissWarning","_e","onDismissError","loadingMessage","staticRenderFns","_v","_s","onDismiss","$emit","props","methods","component","_m","items","warnings","$store","errors","recordResponse","kind","responseOrError","recentResponses","updateStatusLoop","isStatusDirty","timeoutHandle","isNotebookLoading","http","showLostConnection","mounted","beforeDestroy","components","Loader","LostConnectionOverlay","ErrorOverlay","WarningOverlay","computed","logo","info","version","createProject","openProjectBrowser","recentProjects","_l","item","onProjectClick","openProject","directory","short","directives","rawName","placement","expression","modified","display","elapsed","$event","stopPropagation","removeFromRecent","class","connected","icon","$router","Vue","use","Router","base","process","routes","path","Home","VueTippy","TippyComponent","config","productionTip","router","render","h","App","$mount","getStep","matches","getSelectedStep","isStepQueued","queuedStepsToRun","isStepRunning","queueStepToRun","updated","removeStepFromQueue","queue","index","indexOf","addToQueue","stepNames","newSteps","setStepRunning","clearQueue","IGNORED_ERROR_CODES","addErrors","existing","existingCodes","map","newErrors","addError","addWarnings","existingWarnings","newWarnings","addWarning","size","themingClasses","thickness","half","radius","extent","floor","max","min","theme","statusCache","lastInvocationTimestamp","markStatusDirty","response","responseErrors","exceptions","responseWarnings","createGateway","root","axios","baseURL","headers","endpoint","catch","post","execute","command","executeAsync","handleStepRunningError","stepChanges","step_changes","hasRunningStepError","success","has_error","stepper","runStep","payload","notebook","step_renames","updateStatus","debounce","force","lastInvokedMillis","forceArg","lastTimestamp","last_timestamp","remote","isActiveAsync","is_active_async","lastHash","hash","runningSteps","syncing","sync","active","wasRunning","shouldBeRunning","previousRunningStepName","runningStepPossibilities","newRunningStepName","choice","shouldRunNextStep","abortExecution","createEmptyStatus","Vuex","Store","state","savingFile","loadingMessages","mutations"],"mappings":"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","file":"assets/js/app.3e473437.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"assets/js/\" + ({\"create~project\":\"create~project\",\"create\":\"create\",\"project\":\"project\"}[chunkId]||chunkId) + \".\" + {\"create~project\":\"3c27727e\",\"create\":\"1a08fe47\",\"project\":\"91478125\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"create~project\":1,\"create\":1,\"project\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"assets/css/\" + ({\"create~project\":\"create~project\",\"create\":\"create\",\"project\":\"project\"}[chunkId]||chunkId) + \".\" + {\"create~project\":\"783c2068\",\"create\":\"3d647978\",\"project\":\"fcf76b9e\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/v1/app/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","\n\nfunction thenWait(elapsedMilliseconds, args) {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve(args);\n }, elapsedMilliseconds);\n });\n}\n\nexport default { thenWait };\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=d43f3f76&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=d43f3f76&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=style&index=0&id=15015cde&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=style&index=0&id=15015cde&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"assets/img/logo-128.a32de47b.png\";","import utils from './utils';\nimport store from './store';\n\nlet cacheBuster = Math.round((new Date()).getTime() / 1000);\n\n/**\n * The URL to load as part of displaying the project.\n */\nfunction getUrl() {\n const { origin } = window.location;\n const myPath = window.location.pathname.replace('app/project', 'notebook');\n return `${origin}${myPath}/display.html?no-cache=${cacheBuster}`;\n}\n\n/**\n * The URL to display for showing viewer files within the UI.\n *\n * @returns {string}\n */\nfunction getViewUrl() {\n const { view } = store.getters;\n if (!view) {\n return '';\n }\n\n const { origin } = window.location;\n const myPath = window.location.pathname.replace('/app', '');\n const dataRoot = encodeURIComponent(`${myPath}/cache/${view.id}`);\n return `${origin}${myPath}/notebook/project.html?no-cache=${cacheBuster}&data_root=${dataRoot}`;\n}\n\nfunction getIframe() {\n return document.querySelector('.Notebook__frame');\n}\n\nfunction refresh() {\n cacheBuster = Math.round((new Date()).getTime() / 1000);\n const iframe = getIframe();\n if (iframe) {\n iframe.contentWindow.location.reload();\n }\n}\n\nfunction getCauldronObject() {\n try {\n const iframe = getIframe();\n return ((iframe || {}).contentWindow || {}).CAULDRON;\n } catch (ignore) {\n return null;\n }\n}\n\nfunction scrollToStep(stepName, position) {\n const cauldron = getCauldronObject();\n if (!cauldron) {\n return;\n }\n\n if (stepName) {\n cauldron.scrollToAnchor(stepName, position);\n return;\n }\n\n // Find the currently running AND selected step if it exists. That will be\n // where the default focusing will be applied.\n const steps = (store.getters.project || {}).steps || [];\n const targets = steps.filter((s) => {\n const isRunning = s.status.running || s.name === store.getters.runningStepName;\n return isRunning && (s.status.selected || store.getters.followSteps);\n });\n\n if (targets.length === 0) {\n return;\n }\n\n const defaultPosition = targets[0].status.error ? 'error' : 'end';\n cauldron.scrollToAnchor(targets[0].name, position || defaultPosition);\n}\n\n/**\n * We're only interested in step changes that are actually changes and that\n * occur more recently than the previous one. This filters down the source\n * changes into only significant and meaningful ones.\n *\n * @param changes\n * The source changes to filter down to meaningful ones.\n * @returns {*}\n * An array containing the significant changes.\n */\nfunction filterStepChanges(changes) {\n const { previousStepChanges } = store.getters;\n\n return changes.filter((c) => {\n const previous = previousStepChanges[c.name] || {};\n\n const newBody = (c.step || {}).body || '';\n const oldBody = (previous.step || {}).body || '';\n\n // Older Cauldron versions did not all have timestamps in changes, so we\n // use defaults here just in case.\n const newTimestamp = c.timestamp || 1;\n const oldTimestamp = previous.timestamp || 0;\n\n // If there is no step it's a remove operation and should be handled.\n // Otherwise, make sure the update is meaningful.\n return c.action === 'added'\n || c.action === 'removed'\n || (newBody !== oldBody && newTimestamp > oldTimestamp);\n });\n}\n\n/**\n *\n * @param renames\n * @param changes\n * @param stepName\n * @returns {Promise|Promise}\n */\nfunction applyStepModifications(renames, changes, stepName) {\n const newChanges = filterStepChanges(changes || []);\n const isUnmodified = (\n Object.keys(renames || {}).length === 0\n && (newChanges || []).length === 0\n );\n\n if (isUnmodified) {\n return Promise.resolve();\n }\n\n const cauldron = getCauldronObject();\n if (!cauldron) {\n return Promise.resolve();\n }\n\n return cauldron.processStepRenames(renames || {})\n .then(() => {\n cauldron.processStepUpdates(newChanges);\n\n // Update changes in the store for future reference to prevent insignificant\n // changes to steps where the body does not change from updating the dom and\n // wasting rendering resources.\n const { previousStepChanges } = store.getters;\n const updatedChanges = newChanges\n .reduce((all, c) => Object.assign(all, { [c.name]: c }), {});\n const combinedChanges = Object.assign({}, previousStepChanges, updatedChanges);\n store.commit('previousStepChanges', combinedChanges);\n\n return utils.thenWait(300);\n })\n .then(() => {\n if (!stepName && !store.getters.followSteps) {\n // Don't follow steps automatically if the `followSteps` setting isn't true.\n return;\n }\n\n const steps = (store.getters.project || {}).steps || [];\n const targetSteps = steps\n .filter(s => s.name === stepName)\n .concat(changes.filter(c => c.step).reverse());\n\n if (targetSteps.length === 0) {\n return;\n }\n\n const step = targetSteps[0];\n const hasError = (step.status || {}).error;\n scrollToStep(step.name, hasError ? 'error' : 'end');\n });\n}\n\nfunction onLoaded() {\n return new Promise((resolve, reject) => {\n // This first phase waits until the page has loaded to the point of\n // the html script tag having run, which sets up the CAULDRON obect\n // for initial use.\n let waitCount = 0;\n let retryCount = 0;\n const interval = setInterval(\n () => {\n const cauldron = getCauldronObject();\n const { project, view } = store.getters;\n\n if (!project && !view) {\n clearInterval(interval);\n reject();\n return;\n }\n\n // Wait until the cauldron object first becomes available and refresh if\n // it doesn't become available in a reasonable amount of time.\n if (!cauldron || !cauldron.on || !cauldron.on.ready) {\n waitCount += 1;\n if (waitCount > 10) {\n waitCount = 0;\n console.warn('Notebook load wait timeout reached. Refreshing...');\n refresh();\n }\n\n return;\n }\n\n // If cauldron enters the RUNNING state, which means that the main function\n // has been called, move onto the next on-ready phase.\n if (cauldron.RUNNING) {\n clearInterval(interval);\n cauldron.on.ready.then(() => resolve(cauldron));\n return;\n }\n\n // If cauldron has become available but main has not started running yet,\n // keep checking until too much time has passed after which the page should\n // be refreshed to avoid a failure to load.\n retryCount += 1;\n if (retryCount > 10) {\n retryCount = 0;\n console.warn('Notebook load running timeout reached. Refreshing...');\n refresh();\n }\n },\n 200,\n );\n });\n}\n\nexport default {\n applyStepModifications,\n getUrl,\n getViewUrl,\n getCauldronObject,\n getIframe,\n refresh,\n onLoaded,\n scrollToStep,\n};\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=style&index=0&id=48a6cff4&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=style&index=0&id=48a6cff4&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"App\",attrs:{\"id\":\"app\"}},[_c('router-view',{staticClass:\"App__routerView\"}),(_vm.warning)?_c('warning-overlay',{attrs:{\"warning\":_vm.warning},on:{\"close\":_vm.onDismissWarning}}):_vm._e(),(_vm.error)?_c('error-overlay',{attrs:{\"error\":_vm.error},on:{\"close\":_vm.onDismissError}}):_vm._e(),(_vm.showLostConnection)?_c('lost-connection-overlay'):_vm._e(),(_vm.loadingMessage.id)?_c('loader',{attrs:{\"message\":_vm.loadingMessage.message}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"WarningOverlay\"},[_c('div',{staticClass:\"WarningOverlay__focus\"},[_c('div',{staticClass:\"WarningOverlay__headerBox\"},[_c('i',{staticClass:\"WarningOverlay__icon material-icons md-36\"},[_vm._v(\"warning\")]),_c('div',{staticClass:\"WarningOverlay__titleBox\"},[_c('div',{staticClass:\"WarningOverlay__titleHeader\"},[_vm._v(\"Warning\")]),_c('div',{staticClass:\"WarningOverlay__title\"},[_vm._v(_vm._s(_vm.warning.code))])])]),_c('div',{staticClass:\"WarningOverlay__infoBox\"},[_c('div',{staticClass:\"WarningOverlay__message\"},[_vm._v(_vm._s(_vm.warning.message))])]),_c('div',{staticClass:\"WarningOverlay__buttonBox\"},[_c('div',{staticClass:\"WarningOverlay__spacer\"}),_c('button',{staticClass:\"WarningOverlay__button button is-small is-dark\",on:{\"click\":_vm.onDismiss}},[_vm._v(\"OK\")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WarningOverlay.vue?vue&type=template&id=15015cde&scoped=true&lang=pug&\"\nimport script from \"./WarningOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./WarningOverlay.vue?vue&type=script&lang=js&\"\nimport style0 from \"./WarningOverlay.vue?vue&type=style&index=0&id=15015cde&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"15015cde\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ErrorOverlay\"},[_c('div',{staticClass:\"ErrorOverlay__focus\"},[_c('div',{staticClass:\"ErrorOverlay__headerBox\"},[_c('i',{staticClass:\"ErrorOverlay__icon material-icons md-36\"},[_vm._v(\"error_outline\")]),_c('div',{staticClass:\"ErrorOverlay__titleBox\"},[_c('div',{staticClass:\"ErrorOverlay__titleHeader\"},[_vm._v(\"Error\")]),_c('div',{staticClass:\"ErrorOverlay__title\"},[_vm._v(_vm._s(_vm.error.code))])])]),_c('div',{staticClass:\"ErrorOverlay__infoBox\"},[_c('div',{staticClass:\"ErrorOverlay__message\"},[_vm._v(_vm._s(_vm.error.message))])]),_c('div',{staticClass:\"ErrorOverlay__buttonBox\"},[_c('div',{staticClass:\"ErrorOverlay__spacer\"}),_c('button',{staticClass:\"ErrorOverlay__button button is-small\",on:{\"click\":_vm.onDismiss}},[_vm._v(\"OK\")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ErrorOverlay.vue?vue&type=template&id=1dde40ec&scoped=true&lang=pug&\"\nimport script from \"./ErrorOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./ErrorOverlay.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ErrorOverlay.vue?vue&type=style&index=0&id=1dde40ec&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1dde40ec\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"LostConnectionOverlay\"},[_c('div',{staticClass:\"LostConnectionOverlay__focus\"},[_c('div',{staticClass:\"LostConnectionOverlay__headerBox\"},[_c('i',{staticClass:\"LostConnectionOverlay__icon material-icons md-36\"},[_vm._v(\"signal_wifi_off\")]),_c('div',{staticClass:\"LostConnectionOverlay__titleBox\"},[_c('div',{staticClass:\"LostConnectionOverlay__titleHeader\"},[_vm._v(\"No Response\")]),_c('div',{staticClass:\"LostConnectionOverlay__title\"},[_vm._v(\"Lost Kernel Connection\")])])]),_c('div',{staticClass:\"LostConnectionOverlay__infoBox\"},[_c('div',{staticClass:\"LostConnectionOverlay__message\"},[_vm._v(\"Trying to re-establish communication with the Cauldron kernel...\")])])])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LostConnectionOverlay.vue?vue&type=template&id=73a56477&scoped=true&lang=pug&\"\nimport script from \"./LostConnectionOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./LostConnectionOverlay.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LostConnectionOverlay.vue?vue&type=style&index=0&id=73a56477&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"73a56477\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=216580e3&lang=pug&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Home\"},[_c('div',{staticClass:\"Home__splash\"},[_c('div',{staticClass:\"Home__focus\"},[_c('img',{staticClass:\"Home__logo\",attrs:{\"src\":_vm.logo}}),_c('div',{staticClass:\"Home__title\"},[_vm._v(\"Cauldron\")]),_c('div',{staticClass:\"Home__tagline\"},[_c('div',[_vm._v(\"Interactive Computing Environment\")]),_c('div',{staticClass:\"Home__version\"},[_vm._v(\"v\"+_vm._s(_vm.info.version))])]),_c('div',{staticClass:\"Home__buttonBox\"},[_c('div',{staticClass:\"button Home__button tooltip\",attrs:{\"data-tooltip\":\"A new notebook project\"},on:{\"click\":_vm.createProject}},[_vm._v(\"Create\")]),_c('div',{staticClass:\"button Home__button tooltip\",attrs:{\"data-tooltip\":\"An existing notebook project from a local directory\"},on:{\"click\":_vm.openProjectBrowser}},[_vm._v(\"Open\")])])])]),(_vm.recentProjects.length > 0)?_c('div',{staticClass:\"Home__recent\"},_vm._l((_vm.recentProjects),function(item){return _c('recent-item',{attrs:{\"item\":item},on:{\"click\":_vm.onProjectClick}})}),1):_vm._e(),(_vm.loadingMessage)?_c('loader',{attrs:{\"message\":_vm.loadingMessage}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"RecentItem\",on:{\"click\":_vm.openProject}},[_vm._m(0),_c('div',{staticClass:\"RecentItem__box\"},[_c('div',{staticClass:\"RecentItem__title\"},[_vm._v(_vm._s(_vm.item.name))]),_c('div',{staticClass:\"RecentItem__path\"},[_vm._v(_vm._s(_vm.item.directory.short))]),_c('div',{directives:[{name:\"tippy\",rawName:\"v-tippy\",value:({ placement: 'top' }),expression:\"{ placement: 'top' }\"}],staticClass:\"RecentItem__date\",attrs:{\"content\":_vm.item.modified.display}},[_vm._v(_vm._s(_vm.item.modified.elapsed))])]),_c('div',{staticClass:\"RecentItem__rightBox\"},[_c('div',{staticClass:\"RecentItem__remove tooltip is-tooltip-left is-tooltip-danger\",attrs:{\"data-tooltip\":\"Remove from recent list\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.removeFromRecent($event)}}},[_c('i',{staticClass:\"material-icons md-18\"},[_vm._v(\"close\")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"RecentItem__leftBox\"},[_c('div',{staticClass:\"material-icons RecentItem__icon\"},[_vm._v(\"folder_open\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RecentItem.vue?vue&type=template&id=48a6cff4&scoped=true&lang=pug&\"\nimport script from \"./RecentItem.vue?vue&type=script&lang=js&\"\nexport * from \"./RecentItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RecentItem.vue?vue&type=style&index=0&id=48a6cff4&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"48a6cff4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"RemoteConnect tooltip is-tooltip-right\",class:{ 'RemoteConnect--connected': _vm.connected, 'RemoteConnect--disconnected': !_vm.connected },attrs:{\"data-tooltip\":\"Manage remote connection\"}},[_c('div',{staticClass:\"material-icons\"},[_vm._v(_vm._s(_vm.icon))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RemoteConnect.vue?vue&type=template&id=1504decf&scoped=true&lang=pug&\"\nimport script from \"./RemoteConnect.vue?vue&type=script&lang=js&\"\nexport * from \"./RemoteConnect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RemoteConnect.vue?vue&type=style&index=0&id=1504decf&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1504decf\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=5d9f75e5&scoped=true&lang=pug&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&id=5d9f75e5&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5d9f75e5\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport Router from 'vue-router';\nimport Home from './views/home/Home.vue';\n\nVue.use(Router);\n\nexport default new Router({\n mode: 'history',\n base: process.env.BASE_URL,\n routes: [\n {\n path: '/',\n name: 'home',\n component: Home,\n },\n {\n path: '/project',\n name: 'project',\n component: () => import(/* webpackChunkName: \"project\" */ './views/project/Project.vue'),\n },\n {\n path: '/create',\n name: 'create',\n component: () => import(/* webpackChunkName: \"create\" */ './views/create/Create.vue'),\n },\n {\n path: '/open',\n name: 'open',\n component: () => import(/* webpackChunkName: \"create\" */ './views/open/Open.vue'),\n },\n {\n path: '/view',\n name: 'viewer',\n component: () => import(/* webpackChunkName: \"create\" */ './views/viewer/Viewer.vue'),\n },\n ],\n});\n","import Vue from 'vue';\nimport VueTippy, { TippyComponent } from 'vue-tippy';\n\nimport App from './App.vue';\nimport router from './router';\nimport store from './store';\n\nVue.use(VueTippy);\nVue.component('tippy', TippyComponent);\n\nVue.config.productionTip = false;\n\nnew Vue({\n router,\n store,\n render: h => h(App),\n}).$mount('#app');\n","import store from './store';\n\nfunction getStep(stepName) {\n const steps = (store.getters.project || {}).steps || [];\n const matches = steps.filter(s => s.name === stepName);\n return matches.length > 0 ? matches[0] : null;\n}\n\nfunction getSelectedStep() {\n const steps = (store.getters.project || {}).steps || [];\n const matches = steps.filter(s => s.status.selected);\n return matches.length > 0 ? matches[0] : null;\n}\n\nfunction isStepQueued(stepName) {\n return store.getters.queuedStepsToRun.filter(s => s === stepName).length > 0;\n}\n\nfunction isStepRunning(stepName) {\n const step = getStep(stepName);\n return step !== null ? step.status.running : false;\n}\n\nfunction queueStepToRun(stepName) {\n if (isStepQueued(stepName) || isStepRunning(stepName)) {\n return;\n }\n\n const updated = store.getters.queuedStepsToRun.concat([stepName]);\n store.commit('queuedStepsToRun', updated);\n}\n\nfunction removeStepFromQueue(stepName) {\n const queue = store.getters.queuedStepsToRun.concat();\n const index = queue.indexOf(stepName);\n\n if (index < 0) {\n return false;\n }\n\n queue.splice(index, 1);\n store.commit('queuedStepsToRun', queue);\n return true;\n}\n\nfunction addToQueue(stepNames) {\n const queue = store.getters.queuedStepsToRun.concat();\n const newSteps = stepNames.filter(s => queue.indexOf(s) < 0);\n\n if (newSteps.length > 0) {\n store.commit('queuedStepsToRun', queue.concat(newSteps));\n }\n}\n\nfunction setStepRunning(stepName) {\n store.commit('runningStepName', stepName);\n store.commit('running', stepName !== null);\n}\n\nfunction clearQueue() {\n store.commit('queuedStepsToRun', []);\n}\n\nexport default {\n addToQueue,\n clearQueue,\n getStep,\n getSelectedStep,\n isStepQueued,\n isStepRunning,\n queueStepToRun,\n removeStepFromQueue,\n setStepRunning,\n};\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=style&index=0&id=1504decf&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=style&index=0&id=1504decf&scoped=true&lang=scss&\"","import store from './store';\n\n// These are error codes that should not result in the display of the\n// error overlay because they are displayed in other ways within\n// the application/notebook.\nconst IGNORED_ERROR_CODES = ['EXECUTION_ERROR'];\n\n/**\n * Mutate store with new errors, deduping as they are added.\n * @param errors\n * An array of errors to add to the stored errors for display.\n */\nfunction addErrors(errors) {\n const existing = store.getters.errors.concat();\n const existingCodes = existing.map(e => e.code).concat(IGNORED_ERROR_CODES);\n const newErrors = (errors || []).filter(e => existingCodes.indexOf(e.code) === -1);\n\n if (newErrors) {\n store.commit('errors', existing.concat(newErrors));\n }\n}\n\nfunction addError(error) {\n return addErrors([error]);\n}\n\n/**\n * Mutate store with new warnings, deduping as they are added.\n * @param warnings\n * The response object returned from a request to the kernel.\n */\nfunction addWarnings(warnings) {\n const existingWarnings = store.getters.warnings.concat();\n const existingCodes = existingWarnings.map(e => e.code);\n const newWarnings = (warnings || []).filter(e => existingCodes.indexOf(e.code) === -1);\n\n if (newWarnings) {\n store.commit('warnings', existingWarnings.concat(newWarnings));\n }\n}\n\nfunction addWarning(warning) {\n return addWarnings([warning]);\n}\n\nexport default {\n addErrors,\n addError,\n addWarnings,\n addWarning,\n};\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=style&index=0&id=73a56477&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=style&index=0&id=73a56477&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&id=5d9f75e5&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&id=5d9f75e5&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Spinner\"},[_c('svg',{staticClass:\"Spinner__box\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":_vm.size,\"height\":_vm.size}},[_c('circle',{staticClass:\"Spinner__path\",class:_vm.themingClasses,attrs:{\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-width\":_vm.thickness,\"cx\":_vm.half,\"cy\":_vm.half,\"r\":_vm.radius}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Spinner.vue?vue&type=template&id=38b6b456&scoped=true&lang=pug&\"\nimport script from \"./Spinner.vue?vue&type=script&lang=js&\"\nexport * from \"./Spinner.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Spinner.vue?vue&type=style&index=0&id=38b6b456&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"38b6b456\",\n null\n \n)\n\nexport default component.exports","import axios from 'axios';\nimport store from './store';\nimport stepper from './stepper';\nimport notebook from './notebook';\nimport exceptions from './exceptions';\nimport utils from './utils';\n\nconst statusCache = {\n lastInvocationTimestamp: 0,\n};\n\nfunction markStatusDirty() {\n store.commit('isStatusDirty', true);\n}\n\n/**\n * Mutate store with new errors, deduping as they are added.\n * @param response\n * The response object returned from a request to the kernel.\n */\nfunction addErrors(response) {\n const responseErrors = ((response || {}).data || {}).errors || [];\n exceptions.addErrors(responseErrors);\n}\n\n/**\n * Mutate store with new warnings, deduping as they are added.\n * @param response\n * The response object returned from a request to the kernel.\n */\nfunction addWarnings(response) {\n const responseWarnings = ((response || {}).data || {}).warnings || [];\n exceptions.addWarnings(responseWarnings);\n}\n\n/**\n * Creates an Axios instance configured to communicate with the Cauldron kernel hosting\n * the UI.\n * @returns {AxiosInstance}\n */\nfunction createGateway(timeout) {\n const root = window.location.origin;\n return axios.create({\n baseURL: `${root}/v1/api/`,\n timeout: timeout || 10000,\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n}\n\n/**\n * Generic GET method endpoint request and response execution.\n * @param endpoint\n * @param timeout\n * @returns {Promise}\n */\nfunction get(endpoint, timeout) {\n return createGateway(timeout)\n .get(endpoint)\n .catch((error) => {\n console.error(`FAILED GET::${endpoint}`, error);\n throw error;\n });\n}\n\nfunction post(endpoint, data, timeout) {\n return createGateway(timeout)\n .post(endpoint, data || {})\n .catch((error) => {\n console.error(`FAILED POST::${endpoint}`, data, error);\n throw error;\n });\n}\n\nfunction execute(command) {\n return post('/command/sync', { command }, 30000)\n .then((response) => {\n addErrors(response);\n addWarnings(response);\n return response;\n });\n}\n\nfunction executeAsync(command) {\n return post('/command/async', { command })\n .then((response) => {\n addErrors(response);\n addWarnings(response);\n return response;\n });\n}\n\nfunction handleStepRunningError(response) {\n const stepChanges = response.data.data.step_changes || [];\n const hasRunningStepError = (\n !response.data.success\n || (response.data.errors || []).length > 0\n || stepChanges.filter(c => ((c || {}).step || {}).has_error).length > 0\n );\n\n if (hasRunningStepError) {\n stepper.clearQueue();\n store.commit('running', false);\n markStatusDirty();\n }\n\n return hasRunningStepError;\n}\n\nfunction runStep(stepName) {\n store.commit('running', true);\n store.commit('runningStepName', stepName);\n\n return executeAsync(`run \"${stepName}\" --print-status`, stepName)\n .then((response) => {\n handleStepRunningError(response);\n\n const payload = response.data;\n return notebook\n .applyStepModifications(\n payload.data.step_renames,\n payload.data.step_changes,\n )\n .then(() => {\n markStatusDirty();\n return response;\n });\n });\n}\n\n/**\n * Update the Vuex store with all of the state information needed to keep the\n * UI in sync with the backend. A debounce argument can optionally be specified\n * with a number of milliseconds since the last update to prevent collisions\n * with fast updates.\n *\n * @param debounce\n * @param force\n * @returns {Promise|Promise<{data: *}>}\n */\nfunction updateStatus(debounce = 0, force = false) {\n const lastInvokedMillis = Math.max(statusCache.lastInvocationTimestamp, 0);\n if (debounce > 0) {\n const timestamp = (new Date()).getTime();\n const elapsed = timestamp - lastInvokedMillis;\n if (elapsed < debounce) {\n return Promise.resolve({ data: store.getters.status });\n }\n }\n\n const forceArg = force ? 'yes' : null;\n const lastTimestamp = (store.getters.status || {}).timestamp || 0;\n const data = { last_timestamp: lastTimestamp, force: forceArg };\n statusCache.lastInvocationTimestamp = (new Date()).getTime();\n\n return post('/status', data)\n .then((response) => {\n const payload = response.data;\n\n if (!payload) {\n // If there's no payload something went wrong and it's time to abort.\n return Promise.resolve(response);\n }\n\n if (!payload.success) {\n // This will force immediate retry to prevent transient failures from\n // causing longer-term synchronization errors with the kernel.\n statusCache.lastInvocationTimestamp = 0;\n }\n\n const { project, remote } = payload.data;\n\n // Whether or not an asynchronous command thread is currently running.\n const isActiveAsync = payload.data.is_active_async;\n\n const steps = (project || {}).steps || [];\n const hasRunningStepError = handleStepRunningError(response);\n const lastHash = (store.getters.status || {}).hash || '';\n const hash = payload.hash || '';\n\n const runningSteps = steps.filter(s => s.status.running);\n const running = !hasRunningStepError && runningSteps.length > 0;\n const syncing = ((remote || {}).sync || {}).active;\n\n // Only update status information if the information has\n // changed since the last update.\n if (lastHash !== hash) {\n store.commit('status', payload);\n store.commit('project', project);\n }\n\n // Update running status if needed.\n const wasRunning = store.getters.running;\n const shouldBeRunning = (\n syncing\n || running\n || isActiveAsync\n || store.getters.queuedStepsToRun.length > 0\n );\n if (wasRunning !== shouldBeRunning) {\n store.commit('running', shouldBeRunning);\n }\n\n // Update the running step name if necessary.\n const previousRunningStepName = store.getters.runningStepName;\n const runningStepPossibilities = [\n // If running, use the running steps name.\n running ? runningSteps[0].name : null,\n // If should be running, keep the previous running step name until that\n // is replaced by a new running step.\n shouldBeRunning ? previousRunningStepName : null,\n ];\n const newRunningStepName = runningStepPossibilities\n .reduce((choice, name) => name || choice, null);\n\n if (previousRunningStepName !== newRunningStepName) {\n store.commit('runningStepName', newRunningStepName);\n }\n\n // If running has just stopped mark status dirty to capture any post step changes\n // made after the running state change. This helps prevent the final dom updates\n // from mysteriously not appearing in the results.\n if (wasRunning && !shouldBeRunning) {\n markStatusDirty();\n }\n\n return notebook\n .applyStepModifications(\n payload.data.step_renames,\n payload.data.step_changes,\n )\n .then(() => {\n // If there's a running queue, go ahead and process the next step.\n const shouldRunNextStep = (\n !syncing\n && !running\n && !isActiveAsync\n && store.getters.queuedStepsToRun.length > 0\n );\n\n if (shouldRunNextStep) {\n const stepName = store.getters.queuedStepsToRun[0];\n store.commit('queuedStepsToRun', store.getters.queuedStepsToRun.slice(1));\n\n // Add a little bit of a wait to help prevent race conditions before running\n // a new step.\n return utils.thenWait(100)\n .then(() => runStep(stepName))\n .then(() => utils.thenWait(100))\n .then(() => response);\n }\n\n return response;\n });\n });\n}\n\nfunction abortExecution() {\n stepper.clearQueue();\n\n return post('/command/abort')\n .then((response) => {\n addErrors(response);\n addWarnings(response);\n\n store.commit('running', false);\n markStatusDirty();\n return response;\n });\n}\n\nexport default {\n abortExecution,\n get,\n post,\n execute,\n executeAsync,\n updateStatus,\n markStatusDirty,\n};\n","import Vue from 'vue';\nimport Vuex from 'vuex';\n\nVue.use(Vuex);\n\nfunction createEmptyStatus() {\n return { data: { success: true, timestamp: 0 } };\n}\n\nexport default new Vuex.Store({\n state: {\n followSteps: true,\n errors: [],\n warnings: [],\n isStatusDirty: true,\n project: null,\n queuedStepsToRun: [],\n running: false,\n runningStepName: null,\n savingFile: false,\n status: createEmptyStatus(),\n loadingMessages: [],\n isNotebookLoading: false,\n previousStepChanges: {},\n },\n mutations: {\n followSteps(state, value) {\n state.followSteps = value || false;\n },\n errors(state, value) {\n state.errors = value || [];\n },\n warnings(state, value) {\n state.warnings = value || [];\n },\n isStatusDirty(state, value) {\n state.isStatusDirty = value || false;\n },\n project(state, value) {\n state.project = value || null;\n },\n queuedStepsToRun(state, value) {\n state.queuedStepsToRun = value || [];\n },\n running(state, value) {\n state.running = value || false;\n },\n runningStepName(state, value) {\n state.runningStepName = value || null;\n },\n savingFile(state, value) {\n state.savingFile = value || false;\n },\n status(state, value) {\n state.status = value || createEmptyStatus();\n },\n loadingMessages(state, value) {\n state.loadingMessages = value || [];\n },\n isNotebookLoading(state, value) {\n state.isNotebookLoading = value || false;\n },\n previousStepChanges(state, value) {\n state.previousStepChanges = value || {};\n },\n },\n getters: {\n followSteps: state => state.followSteps,\n errors: state => state.errors,\n warnings: state => state.warnings,\n isStatusDirty: state => state.isStatusDirty,\n project: state => state.project,\n queuedStepsToRun: state => state.queuedStepsToRun,\n running: state => state.running,\n runningStepName: state => state.runningStepName,\n savingFile: state => state.savingFile,\n status: state => state.status,\n view: state => ((state.status || {}).data || {}).view || null,\n loadingMessages: state => state.loadingMessages,\n isNotebookLoading: state => state.isNotebookLoading,\n previousStepChanges: state => state.previousStepChanges,\n },\n});\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=style&index=0&id=38b6b456&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=style&index=0&id=38b6b456&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Loader\"},[_c('div',{staticClass:\"Loader__focus\"},[_c('spinner',{staticClass:\"Loader__spinner\"}),(_vm.message)?_c('div',{staticClass:\"Loader__message\"},[_vm._v(_vm._s(_vm.message))]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=d43f3f76&scoped=true&lang=pug&\"\nimport script from \"./Loader.vue?vue&type=script&lang=js&\"\nexport * from \"./Loader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Loader.vue?vue&type=style&index=0&id=d43f3f76&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d43f3f76\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=style&index=0&id=1dde40ec&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=style&index=0&id=1dde40ec&scoped=true&lang=scss&\""],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/utils.js","webpack:///./src/components/loader/Loader.vue?7af4","webpack:///./src/components/warningOverlay/WarningOverlay.vue?8966","webpack:///./src/views/home/logo-128.png","webpack:///./src/notebook.js","webpack:///./src/views/home/RecentItem.vue?992b","webpack:///./src/App.vue?cf1c","webpack:///./src/components/warningOverlay/WarningOverlay.vue?2f68","webpack:///src/components/warningOverlay/WarningOverlay.vue","webpack:///./src/components/warningOverlay/WarningOverlay.vue?52f4","webpack:///./src/components/warningOverlay/WarningOverlay.vue","webpack:///./src/components/errorOverlay/ErrorOverlay.vue?22c1","webpack:///src/components/errorOverlay/ErrorOverlay.vue","webpack:///./src/components/errorOverlay/ErrorOverlay.vue?b3ce","webpack:///./src/components/errorOverlay/ErrorOverlay.vue","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue?4c1e","webpack:///src/components/lostConnectionOverlay/LostConnectionOverlay.vue","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue?2bb6","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue","webpack:///src/App.vue","webpack:///./src/App.vue?382d","webpack:///./src/App.vue?a286","webpack:///./src/views/home/Home.vue?b292","webpack:///./src/views/home/RecentItem.vue?f406","webpack:///src/views/home/RecentItem.vue","webpack:///./src/views/home/RecentItem.vue?82a1","webpack:///./src/views/home/RecentItem.vue","webpack:///./src/views/home/RemoteConnect.vue?64ab","webpack:///src/views/home/RemoteConnect.vue","webpack:///./src/views/home/RemoteConnect.vue?01d0","webpack:///./src/views/home/RemoteConnect.vue","webpack:///src/views/home/Home.vue","webpack:///./src/views/home/Home.vue?47a0","webpack:///./src/views/home/Home.vue","webpack:///./src/router.js","webpack:///./src/main.js","webpack:///./src/stepper.js","webpack:///./src/App.vue?f711","webpack:///./src/views/home/RemoteConnect.vue?e788","webpack:///./src/exceptions.js","webpack:///./src/components/lostConnectionOverlay/LostConnectionOverlay.vue?e539","webpack:///./src/views/home/Home.vue?4bdf","webpack:///./src/components/spinner/Spinner.vue?d4ea","webpack:///src/components/spinner/Spinner.vue","webpack:///./src/components/spinner/Spinner.vue?1bf0","webpack:///./src/components/spinner/Spinner.vue","webpack:///./src/http.js","webpack:///./src/store.js","webpack:///./src/components/spinner/Spinner.vue?cbe1","webpack:///./src/components/loader/Loader.vue?505e","webpack:///src/components/loader/Loader.vue","webpack:///./src/components/loader/Loader.vue?2ee0","webpack:///./src/components/loader/Loader.vue","webpack:///./src/components/errorOverlay/ErrorOverlay.vue?493d"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","thenWait","elapsedMilliseconds","args","cacheBuster","Math","round","Date","getTime","getUrl","origin","location","myPath","pathname","replace","getViewUrl","view","store","getters","dataRoot","encodeURIComponent","id","getIframe","querySelector","refresh","iframe","contentWindow","reload","getCauldronObject","CAULDRON","ignore","scrollToStep","stepName","position","cauldron","scrollToAnchor","steps","project","targets","filter","isRunning","status","running","runningStepName","selected","followSteps","defaultPosition","filterStepChanges","changes","previousStepChanges","previous","newBody","step","body","oldBody","newTimestamp","timestamp","oldTimestamp","action","applyStepModifications","renames","newChanges","isUnmodified","keys","processStepRenames","processStepUpdates","updatedChanges","reduce","assign","combinedChanges","commit","utils","targetSteps","concat","reverse","hasError","onLoaded","waitCount","retryCount","interval","setInterval","on","ready","RUNNING","clearInterval","warn","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","warning","onDismissWarning","_e","onDismissError","loadingMessage","staticRenderFns","_v","_s","onDismiss","$emit","props","methods","component","_m","items","warnings","$store","errors","recordResponse","kind","responseOrError","recentResponses","updateStatusLoop","isStatusDirty","timeoutHandle","isNotebookLoading","http","showLostConnection","mounted","beforeDestroy","components","Loader","LostConnectionOverlay","ErrorOverlay","WarningOverlay","computed","logo","info","version","createProject","openProjectBrowser","recentProjects","_l","item","onProjectClick","openProject","directory","short","directives","rawName","placement","expression","modified","display","elapsed","$event","stopPropagation","removeFromRecent","class","connected","icon","$router","Vue","use","Router","base","process","routes","path","Home","VueTippy","TippyComponent","config","productionTip","router","render","h","App","$mount","getStep","matches","getSelectedStep","isStepQueued","queuedStepsToRun","isStepRunning","queueStepToRun","updated","removeStepFromQueue","queue","index","indexOf","addToQueue","stepNames","newSteps","setStepRunning","clearQueue","IGNORED_ERROR_CODES","addErrors","existing","existingCodes","map","newErrors","addError","addWarnings","existingWarnings","newWarnings","addWarning","size","themingClasses","thickness","half","radius","extent","floor","max","min","theme","statusCache","lastInvocationTimestamp","markStatusDirty","response","responseErrors","exceptions","responseWarnings","createGateway","root","axios","baseURL","headers","endpoint","catch","post","execute","command","executeAsync","handleStepRunningError","stepChanges","step_changes","hasRunningStepError","success","has_error","stepper","runStep","payload","notebook","step_renames","updateStatus","debounce","force","lastInvokedMillis","forceArg","lastTimestamp","last_timestamp","remote","isActiveAsync","is_active_async","lastHash","hash","runningSteps","syncing","sync","active","wasRunning","shouldBeRunning","previousRunningStepName","runningStepPossibilities","newRunningStepName","choice","shouldRunNextStep","abortExecution","createEmptyStatus","Vuex","Store","state","savingFile","loadingMessages","mutations"],"mappings":"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","file":"assets/js/app.ef2aa1b5.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"assets/js/\" + ({\"create~project\":\"create~project\",\"create\":\"create\",\"project\":\"project\"}[chunkId]||chunkId) + \".\" + {\"create~project\":\"1f76fa3c\",\"create\":\"1a08fe47\",\"project\":\"91478125\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"create~project\":1,\"create\":1,\"project\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"assets/css/\" + ({\"create~project\":\"create~project\",\"create\":\"create\",\"project\":\"project\"}[chunkId]||chunkId) + \".\" + {\"create~project\":\"e450811e\",\"create\":\"3d647978\",\"project\":\"fcf76b9e\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/v1/app/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","\n\nfunction thenWait(elapsedMilliseconds, args) {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve(args);\n }, elapsedMilliseconds);\n });\n}\n\nexport default { thenWait };\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=d43f3f76&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=d43f3f76&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=style&index=0&id=15015cde&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=style&index=0&id=15015cde&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"assets/img/logo-128.a32de47b.png\";","import utils from './utils';\nimport store from './store';\n\nlet cacheBuster = Math.round((new Date()).getTime() / 1000);\n\n/**\n * The URL to load as part of displaying the project.\n */\nfunction getUrl() {\n const { origin } = window.location;\n const myPath = window.location.pathname.replace('app/project', 'notebook');\n return `${origin}${myPath}/display.html?no-cache=${cacheBuster}`;\n}\n\n/**\n * The URL to display for showing viewer files within the UI.\n *\n * @returns {string}\n */\nfunction getViewUrl() {\n const { view } = store.getters;\n if (!view) {\n return '';\n }\n\n const { origin } = window.location;\n const myPath = window.location.pathname.replace('/app', '');\n const dataRoot = encodeURIComponent(`${myPath}/cache/${view.id}`);\n return `${origin}${myPath}/notebook/project.html?no-cache=${cacheBuster}&data_root=${dataRoot}`;\n}\n\nfunction getIframe() {\n return document.querySelector('.Notebook__frame');\n}\n\nfunction refresh() {\n cacheBuster = Math.round((new Date()).getTime() / 1000);\n const iframe = getIframe();\n if (iframe) {\n iframe.contentWindow.location.reload();\n }\n}\n\nfunction getCauldronObject() {\n try {\n const iframe = getIframe();\n return ((iframe || {}).contentWindow || {}).CAULDRON;\n } catch (ignore) {\n return null;\n }\n}\n\nfunction scrollToStep(stepName, position) {\n const cauldron = getCauldronObject();\n if (!cauldron) {\n return;\n }\n\n if (stepName) {\n cauldron.scrollToAnchor(stepName, position);\n return;\n }\n\n // Find the currently running AND selected step if it exists. That will be\n // where the default focusing will be applied.\n const steps = (store.getters.project || {}).steps || [];\n const targets = steps.filter((s) => {\n const isRunning = s.status.running || s.name === store.getters.runningStepName;\n return isRunning && (s.status.selected || store.getters.followSteps);\n });\n\n if (targets.length === 0) {\n return;\n }\n\n const defaultPosition = targets[0].status.error ? 'error' : 'end';\n cauldron.scrollToAnchor(targets[0].name, position || defaultPosition);\n}\n\n/**\n * We're only interested in step changes that are actually changes and that\n * occur more recently than the previous one. This filters down the source\n * changes into only significant and meaningful ones.\n *\n * @param changes\n * The source changes to filter down to meaningful ones.\n * @returns {*}\n * An array containing the significant changes.\n */\nfunction filterStepChanges(changes) {\n const { previousStepChanges } = store.getters;\n\n return changes.filter((c) => {\n const previous = previousStepChanges[c.name] || {};\n\n const newBody = (c.step || {}).body || '';\n const oldBody = (previous.step || {}).body || '';\n\n // Older Cauldron versions did not all have timestamps in changes, so we\n // use defaults here just in case.\n const newTimestamp = c.timestamp || 1;\n const oldTimestamp = previous.timestamp || 0;\n\n // If there is no step it's a remove operation and should be handled.\n // Otherwise, make sure the update is meaningful.\n return c.action === 'added'\n || c.action === 'removed'\n || (newBody !== oldBody && newTimestamp > oldTimestamp);\n });\n}\n\n/**\n *\n * @param renames\n * @param changes\n * @param stepName\n * @returns {Promise|Promise}\n */\nfunction applyStepModifications(renames, changes, stepName) {\n const newChanges = filterStepChanges(changes || []);\n const isUnmodified = (\n Object.keys(renames || {}).length === 0\n && (newChanges || []).length === 0\n );\n\n if (isUnmodified) {\n return Promise.resolve();\n }\n\n const cauldron = getCauldronObject();\n if (!cauldron) {\n return Promise.resolve();\n }\n\n return cauldron.processStepRenames(renames || {})\n .then(() => {\n cauldron.processStepUpdates(newChanges);\n\n // Update changes in the store for future reference to prevent insignificant\n // changes to steps where the body does not change from updating the dom and\n // wasting rendering resources.\n const { previousStepChanges } = store.getters;\n const updatedChanges = newChanges\n .reduce((all, c) => Object.assign(all, { [c.name]: c }), {});\n const combinedChanges = Object.assign({}, previousStepChanges, updatedChanges);\n store.commit('previousStepChanges', combinedChanges);\n\n return utils.thenWait(300);\n })\n .then(() => {\n if (!stepName && !store.getters.followSteps) {\n // Don't follow steps automatically if the `followSteps` setting isn't true.\n return;\n }\n\n const steps = (store.getters.project || {}).steps || [];\n const targetSteps = steps\n .filter(s => s.name === stepName)\n .concat(changes.filter(c => c.step).reverse());\n\n if (targetSteps.length === 0) {\n return;\n }\n\n const step = targetSteps[0];\n const hasError = (step.status || {}).error;\n scrollToStep(step.name, hasError ? 'error' : 'end');\n });\n}\n\nfunction onLoaded() {\n return new Promise((resolve, reject) => {\n // This first phase waits until the page has loaded to the point of\n // the html script tag having run, which sets up the CAULDRON obect\n // for initial use.\n let waitCount = 0;\n let retryCount = 0;\n const interval = setInterval(\n () => {\n const cauldron = getCauldronObject();\n const { project, view } = store.getters;\n\n if (!project && !view) {\n clearInterval(interval);\n reject();\n return;\n }\n\n // Wait until the cauldron object first becomes available and refresh if\n // it doesn't become available in a reasonable amount of time.\n if (!cauldron || !cauldron.on || !cauldron.on.ready) {\n waitCount += 1;\n if (waitCount > 10) {\n waitCount = 0;\n console.warn('Notebook load wait timeout reached. Refreshing...');\n refresh();\n }\n\n return;\n }\n\n // If cauldron enters the RUNNING state, which means that the main function\n // has been called, move onto the next on-ready phase.\n if (cauldron.RUNNING) {\n clearInterval(interval);\n cauldron.on.ready.then(() => resolve(cauldron));\n return;\n }\n\n // If cauldron has become available but main has not started running yet,\n // keep checking until too much time has passed after which the page should\n // be refreshed to avoid a failure to load.\n retryCount += 1;\n if (retryCount > 10) {\n retryCount = 0;\n console.warn('Notebook load running timeout reached. Refreshing...');\n refresh();\n }\n },\n 200,\n );\n });\n}\n\nexport default {\n applyStepModifications,\n getUrl,\n getViewUrl,\n getCauldronObject,\n getIframe,\n refresh,\n onLoaded,\n scrollToStep,\n};\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=style&index=0&id=48a6cff4&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=style&index=0&id=48a6cff4&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"App\",attrs:{\"id\":\"app\"}},[_c('router-view',{staticClass:\"App__routerView\"}),(_vm.warning)?_c('warning-overlay',{attrs:{\"warning\":_vm.warning},on:{\"close\":_vm.onDismissWarning}}):_vm._e(),(_vm.error)?_c('error-overlay',{attrs:{\"error\":_vm.error},on:{\"close\":_vm.onDismissError}}):_vm._e(),(_vm.showLostConnection)?_c('lost-connection-overlay'):_vm._e(),(_vm.loadingMessage.id)?_c('loader',{attrs:{\"message\":_vm.loadingMessage.message}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"WarningOverlay\"},[_c('div',{staticClass:\"WarningOverlay__focus\"},[_c('div',{staticClass:\"WarningOverlay__headerBox\"},[_c('i',{staticClass:\"WarningOverlay__icon material-icons md-36\"},[_vm._v(\"warning\")]),_c('div',{staticClass:\"WarningOverlay__titleBox\"},[_c('div',{staticClass:\"WarningOverlay__titleHeader\"},[_vm._v(\"Warning\")]),_c('div',{staticClass:\"WarningOverlay__title\"},[_vm._v(_vm._s(_vm.warning.code))])])]),_c('div',{staticClass:\"WarningOverlay__infoBox\"},[_c('div',{staticClass:\"WarningOverlay__message\"},[_vm._v(_vm._s(_vm.warning.message))])]),_c('div',{staticClass:\"WarningOverlay__buttonBox\"},[_c('div',{staticClass:\"WarningOverlay__spacer\"}),_c('button',{staticClass:\"WarningOverlay__button button is-small is-dark\",on:{\"click\":_vm.onDismiss}},[_vm._v(\"OK\")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WarningOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WarningOverlay.vue?vue&type=template&id=15015cde&scoped=true&lang=pug&\"\nimport script from \"./WarningOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./WarningOverlay.vue?vue&type=script&lang=js&\"\nimport style0 from \"./WarningOverlay.vue?vue&type=style&index=0&id=15015cde&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"15015cde\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ErrorOverlay\"},[_c('div',{staticClass:\"ErrorOverlay__focus\"},[_c('div',{staticClass:\"ErrorOverlay__headerBox\"},[_c('i',{staticClass:\"ErrorOverlay__icon material-icons md-36\"},[_vm._v(\"error_outline\")]),_c('div',{staticClass:\"ErrorOverlay__titleBox\"},[_c('div',{staticClass:\"ErrorOverlay__titleHeader\"},[_vm._v(\"Error\")]),_c('div',{staticClass:\"ErrorOverlay__title\"},[_vm._v(_vm._s(_vm.error.code))])])]),_c('div',{staticClass:\"ErrorOverlay__infoBox\"},[_c('div',{staticClass:\"ErrorOverlay__message\"},[_vm._v(_vm._s(_vm.error.message))])]),_c('div',{staticClass:\"ErrorOverlay__buttonBox\"},[_c('div',{staticClass:\"ErrorOverlay__spacer\"}),_c('button',{staticClass:\"ErrorOverlay__button button is-small\",on:{\"click\":_vm.onDismiss}},[_vm._v(\"OK\")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ErrorOverlay.vue?vue&type=template&id=1dde40ec&scoped=true&lang=pug&\"\nimport script from \"./ErrorOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./ErrorOverlay.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ErrorOverlay.vue?vue&type=style&index=0&id=1dde40ec&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1dde40ec\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"LostConnectionOverlay\"},[_c('div',{staticClass:\"LostConnectionOverlay__focus\"},[_c('div',{staticClass:\"LostConnectionOverlay__headerBox\"},[_c('i',{staticClass:\"LostConnectionOverlay__icon material-icons md-36\"},[_vm._v(\"signal_wifi_off\")]),_c('div',{staticClass:\"LostConnectionOverlay__titleBox\"},[_c('div',{staticClass:\"LostConnectionOverlay__titleHeader\"},[_vm._v(\"No Response\")]),_c('div',{staticClass:\"LostConnectionOverlay__title\"},[_vm._v(\"Lost Kernel Connection\")])])]),_c('div',{staticClass:\"LostConnectionOverlay__infoBox\"},[_c('div',{staticClass:\"LostConnectionOverlay__message\"},[_vm._v(\"Trying to re-establish communication with the Cauldron kernel...\")])])])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LostConnectionOverlay.vue?vue&type=template&id=73a56477&scoped=true&lang=pug&\"\nimport script from \"./LostConnectionOverlay.vue?vue&type=script&lang=js&\"\nexport * from \"./LostConnectionOverlay.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LostConnectionOverlay.vue?vue&type=style&index=0&id=73a56477&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"73a56477\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=216580e3&lang=pug&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Home\"},[_c('div',{staticClass:\"Home__splash\"},[_c('div',{staticClass:\"Home__focus\"},[_c('img',{staticClass:\"Home__logo\",attrs:{\"src\":_vm.logo}}),_c('div',{staticClass:\"Home__title\"},[_vm._v(\"Cauldron\")]),_c('div',{staticClass:\"Home__tagline\"},[_c('div',[_vm._v(\"Interactive Computing Environment\")]),_c('div',{staticClass:\"Home__version\"},[_vm._v(\"v\"+_vm._s(_vm.info.version))])]),_c('div',{staticClass:\"Home__buttonBox\"},[_c('div',{staticClass:\"button Home__button tooltip\",attrs:{\"data-tooltip\":\"A new notebook project\"},on:{\"click\":_vm.createProject}},[_vm._v(\"Create\")]),_c('div',{staticClass:\"button Home__button tooltip\",attrs:{\"data-tooltip\":\"An existing notebook project from a local directory\"},on:{\"click\":_vm.openProjectBrowser}},[_vm._v(\"Open\")])])])]),(_vm.recentProjects.length > 0)?_c('div',{staticClass:\"Home__recent\"},_vm._l((_vm.recentProjects),function(item){return _c('recent-item',{attrs:{\"item\":item},on:{\"click\":_vm.onProjectClick}})}),1):_vm._e(),(_vm.loadingMessage)?_c('loader',{attrs:{\"message\":_vm.loadingMessage}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"RecentItem\",on:{\"click\":_vm.openProject}},[_vm._m(0),_c('div',{staticClass:\"RecentItem__box\"},[_c('div',{staticClass:\"RecentItem__title\"},[_vm._v(_vm._s(_vm.item.name))]),_c('div',{staticClass:\"RecentItem__path\"},[_vm._v(_vm._s(_vm.item.directory.short))]),_c('div',{directives:[{name:\"tippy\",rawName:\"v-tippy\",value:({ placement: 'top' }),expression:\"{ placement: 'top' }\"}],staticClass:\"RecentItem__date\",attrs:{\"content\":_vm.item.modified.display}},[_vm._v(_vm._s(_vm.item.modified.elapsed))])]),_c('div',{staticClass:\"RecentItem__rightBox\"},[_c('div',{staticClass:\"RecentItem__remove tooltip is-tooltip-left is-tooltip-danger\",attrs:{\"data-tooltip\":\"Remove from recent list\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.removeFromRecent($event)}}},[_c('i',{staticClass:\"material-icons md-18\"},[_vm._v(\"close\")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"RecentItem__leftBox\"},[_c('div',{staticClass:\"material-icons RecentItem__icon\"},[_vm._v(\"folder_open\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RecentItem.vue?vue&type=template&id=48a6cff4&scoped=true&lang=pug&\"\nimport script from \"./RecentItem.vue?vue&type=script&lang=js&\"\nexport * from \"./RecentItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RecentItem.vue?vue&type=style&index=0&id=48a6cff4&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"48a6cff4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"RemoteConnect tooltip is-tooltip-right\",class:{ 'RemoteConnect--connected': _vm.connected, 'RemoteConnect--disconnected': !_vm.connected },attrs:{\"data-tooltip\":\"Manage remote connection\"}},[_c('div',{staticClass:\"material-icons\"},[_vm._v(_vm._s(_vm.icon))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RemoteConnect.vue?vue&type=template&id=1504decf&scoped=true&lang=pug&\"\nimport script from \"./RemoteConnect.vue?vue&type=script&lang=js&\"\nexport * from \"./RemoteConnect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RemoteConnect.vue?vue&type=style&index=0&id=1504decf&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1504decf\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=5d9f75e5&scoped=true&lang=pug&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&id=5d9f75e5&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5d9f75e5\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport Router from 'vue-router';\nimport Home from './views/home/Home.vue';\n\nVue.use(Router);\n\nexport default new Router({\n mode: 'history',\n base: process.env.BASE_URL,\n routes: [\n {\n path: '/',\n name: 'home',\n component: Home,\n },\n {\n path: '/project',\n name: 'project',\n component: () => import(/* webpackChunkName: \"project\" */ './views/project/Project.vue'),\n },\n {\n path: '/create',\n name: 'create',\n component: () => import(/* webpackChunkName: \"create\" */ './views/create/Create.vue'),\n },\n {\n path: '/open',\n name: 'open',\n component: () => import(/* webpackChunkName: \"create\" */ './views/open/Open.vue'),\n },\n {\n path: '/view',\n name: 'viewer',\n component: () => import(/* webpackChunkName: \"create\" */ './views/viewer/Viewer.vue'),\n },\n ],\n});\n","import Vue from 'vue';\nimport VueTippy, { TippyComponent } from 'vue-tippy';\n\nimport App from './App.vue';\nimport router from './router';\nimport store from './store';\n\nVue.use(VueTippy);\nVue.component('tippy', TippyComponent);\n\nVue.config.productionTip = false;\n\nnew Vue({\n router,\n store,\n render: h => h(App),\n}).$mount('#app');\n","import store from './store';\n\nfunction getStep(stepName) {\n const steps = (store.getters.project || {}).steps || [];\n const matches = steps.filter(s => s.name === stepName);\n return matches.length > 0 ? matches[0] : null;\n}\n\nfunction getSelectedStep() {\n const steps = (store.getters.project || {}).steps || [];\n const matches = steps.filter(s => s.status.selected);\n return matches.length > 0 ? matches[0] : null;\n}\n\nfunction isStepQueued(stepName) {\n return store.getters.queuedStepsToRun.filter(s => s === stepName).length > 0;\n}\n\nfunction isStepRunning(stepName) {\n const step = getStep(stepName);\n return step !== null ? step.status.running : false;\n}\n\nfunction queueStepToRun(stepName) {\n if (isStepQueued(stepName) || isStepRunning(stepName)) {\n return;\n }\n\n const updated = store.getters.queuedStepsToRun.concat([stepName]);\n store.commit('queuedStepsToRun', updated);\n}\n\nfunction removeStepFromQueue(stepName) {\n const queue = store.getters.queuedStepsToRun.concat();\n const index = queue.indexOf(stepName);\n\n if (index < 0) {\n return false;\n }\n\n queue.splice(index, 1);\n store.commit('queuedStepsToRun', queue);\n return true;\n}\n\nfunction addToQueue(stepNames) {\n const queue = store.getters.queuedStepsToRun.concat();\n const newSteps = stepNames.filter(s => queue.indexOf(s) < 0);\n\n if (newSteps.length > 0) {\n store.commit('queuedStepsToRun', queue.concat(newSteps));\n }\n}\n\nfunction setStepRunning(stepName) {\n store.commit('runningStepName', stepName);\n store.commit('running', stepName !== null);\n}\n\nfunction clearQueue() {\n store.commit('queuedStepsToRun', []);\n}\n\nexport default {\n addToQueue,\n clearQueue,\n getStep,\n getSelectedStep,\n isStepQueued,\n isStepRunning,\n queueStepToRun,\n removeStepFromQueue,\n setStepRunning,\n};\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=style&index=0&id=1504decf&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteConnect.vue?vue&type=style&index=0&id=1504decf&scoped=true&lang=scss&\"","import store from './store';\n\n// These are error codes that should not result in the display of the\n// error overlay because they are displayed in other ways within\n// the application/notebook.\nconst IGNORED_ERROR_CODES = ['EXECUTION_ERROR'];\n\n/**\n * Mutate store with new errors, deduping as they are added.\n * @param errors\n * An array of errors to add to the stored errors for display.\n */\nfunction addErrors(errors) {\n const existing = store.getters.errors.concat();\n const existingCodes = existing.map(e => e.code).concat(IGNORED_ERROR_CODES);\n const newErrors = (errors || []).filter(e => existingCodes.indexOf(e.code) === -1);\n\n if (newErrors) {\n store.commit('errors', existing.concat(newErrors));\n }\n}\n\nfunction addError(error) {\n return addErrors([error]);\n}\n\n/**\n * Mutate store with new warnings, deduping as they are added.\n * @param warnings\n * The response object returned from a request to the kernel.\n */\nfunction addWarnings(warnings) {\n const existingWarnings = store.getters.warnings.concat();\n const existingCodes = existingWarnings.map(e => e.code);\n const newWarnings = (warnings || []).filter(e => existingCodes.indexOf(e.code) === -1);\n\n if (newWarnings) {\n store.commit('warnings', existingWarnings.concat(newWarnings));\n }\n}\n\nfunction addWarning(warning) {\n return addWarnings([warning]);\n}\n\nexport default {\n addErrors,\n addError,\n addWarnings,\n addWarning,\n};\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=style&index=0&id=73a56477&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LostConnectionOverlay.vue?vue&type=style&index=0&id=73a56477&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&id=5d9f75e5&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&id=5d9f75e5&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Spinner\"},[_c('svg',{staticClass:\"Spinner__box\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":_vm.size,\"height\":_vm.size}},[_c('circle',{staticClass:\"Spinner__path\",class:_vm.themingClasses,attrs:{\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-width\":_vm.thickness,\"cx\":_vm.half,\"cy\":_vm.half,\"r\":_vm.radius}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Spinner.vue?vue&type=template&id=38b6b456&scoped=true&lang=pug&\"\nimport script from \"./Spinner.vue?vue&type=script&lang=js&\"\nexport * from \"./Spinner.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Spinner.vue?vue&type=style&index=0&id=38b6b456&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"38b6b456\",\n null\n \n)\n\nexport default component.exports","import axios from 'axios';\nimport store from './store';\nimport stepper from './stepper';\nimport notebook from './notebook';\nimport exceptions from './exceptions';\nimport utils from './utils';\n\nconst statusCache = {\n lastInvocationTimestamp: 0,\n};\n\nfunction markStatusDirty() {\n store.commit('isStatusDirty', true);\n}\n\n/**\n * Mutate store with new errors, deduping as they are added.\n * @param response\n * The response object returned from a request to the kernel.\n */\nfunction addErrors(response) {\n const responseErrors = ((response || {}).data || {}).errors || [];\n exceptions.addErrors(responseErrors);\n}\n\n/**\n * Mutate store with new warnings, deduping as they are added.\n * @param response\n * The response object returned from a request to the kernel.\n */\nfunction addWarnings(response) {\n const responseWarnings = ((response || {}).data || {}).warnings || [];\n exceptions.addWarnings(responseWarnings);\n}\n\n/**\n * Creates an Axios instance configured to communicate with the Cauldron kernel hosting\n * the UI.\n * @returns {AxiosInstance}\n */\nfunction createGateway(timeout) {\n const root = window.location.origin;\n return axios.create({\n baseURL: `${root}/v1/api/`,\n timeout: timeout || 10000,\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n}\n\n/**\n * Generic GET method endpoint request and response execution.\n * @param endpoint\n * @param timeout\n * @returns {Promise}\n */\nfunction get(endpoint, timeout) {\n return createGateway(timeout)\n .get(endpoint)\n .catch((error) => {\n console.error(`FAILED GET::${endpoint}`, error);\n throw error;\n });\n}\n\nfunction post(endpoint, data, timeout) {\n return createGateway(timeout)\n .post(endpoint, data || {})\n .catch((error) => {\n console.error(`FAILED POST::${endpoint}`, data, error);\n throw error;\n });\n}\n\nfunction execute(command) {\n return post('/command/sync', { command }, 30000)\n .then((response) => {\n addErrors(response);\n addWarnings(response);\n return response;\n });\n}\n\nfunction executeAsync(command) {\n return post('/command/async', { command })\n .then((response) => {\n addErrors(response);\n addWarnings(response);\n return response;\n });\n}\n\nfunction handleStepRunningError(response) {\n const stepChanges = response.data.data.step_changes || [];\n const hasRunningStepError = (\n !response.data.success\n || (response.data.errors || []).length > 0\n || stepChanges.filter(c => ((c || {}).step || {}).has_error).length > 0\n );\n\n if (hasRunningStepError) {\n stepper.clearQueue();\n store.commit('running', false);\n markStatusDirty();\n }\n\n return hasRunningStepError;\n}\n\nfunction runStep(stepName) {\n store.commit('running', true);\n store.commit('runningStepName', stepName);\n\n return executeAsync(`run \"${stepName}\" --print-status`, stepName)\n .then((response) => {\n handleStepRunningError(response);\n\n const payload = response.data;\n return notebook\n .applyStepModifications(\n payload.data.step_renames,\n payload.data.step_changes,\n )\n .then(() => {\n markStatusDirty();\n return response;\n });\n });\n}\n\n/**\n * Update the Vuex store with all of the state information needed to keep the\n * UI in sync with the backend. A debounce argument can optionally be specified\n * with a number of milliseconds since the last update to prevent collisions\n * with fast updates.\n *\n * @param debounce\n * @param force\n * @returns {Promise|Promise<{data: *}>}\n */\nfunction updateStatus(debounce = 0, force = false) {\n const lastInvokedMillis = Math.max(statusCache.lastInvocationTimestamp, 0);\n if (debounce > 0) {\n const timestamp = (new Date()).getTime();\n const elapsed = timestamp - lastInvokedMillis;\n if (elapsed < debounce) {\n return Promise.resolve({ data: store.getters.status });\n }\n }\n\n const forceArg = force ? 'yes' : null;\n const lastTimestamp = (store.getters.status || {}).timestamp || 0;\n const data = { last_timestamp: lastTimestamp, force: forceArg };\n statusCache.lastInvocationTimestamp = (new Date()).getTime();\n\n return post('/status', data)\n .then((response) => {\n const payload = response.data;\n\n if (!payload) {\n // If there's no payload something went wrong and it's time to abort.\n return Promise.resolve(response);\n }\n\n if (!payload.success) {\n // This will force immediate retry to prevent transient failures from\n // causing longer-term synchronization errors with the kernel.\n statusCache.lastInvocationTimestamp = 0;\n }\n\n const { project, remote } = payload.data;\n\n // Whether or not an asynchronous command thread is currently running.\n const isActiveAsync = payload.data.is_active_async;\n\n const steps = (project || {}).steps || [];\n const hasRunningStepError = handleStepRunningError(response);\n const lastHash = (store.getters.status || {}).hash || '';\n const hash = payload.hash || '';\n\n const runningSteps = steps.filter(s => s.status.running);\n const running = !hasRunningStepError && runningSteps.length > 0;\n const syncing = ((remote || {}).sync || {}).active;\n\n // Only update status information if the information has\n // changed since the last update.\n if (lastHash !== hash) {\n store.commit('status', payload);\n store.commit('project', project);\n }\n\n // Update running status if needed.\n const wasRunning = store.getters.running;\n const shouldBeRunning = (\n syncing\n || running\n || isActiveAsync\n || store.getters.queuedStepsToRun.length > 0\n );\n if (wasRunning !== shouldBeRunning) {\n store.commit('running', shouldBeRunning);\n }\n\n // Update the running step name if necessary.\n const previousRunningStepName = store.getters.runningStepName;\n const runningStepPossibilities = [\n // If running, use the running steps name.\n running ? runningSteps[0].name : null,\n // If should be running, keep the previous running step name until that\n // is replaced by a new running step.\n shouldBeRunning ? previousRunningStepName : null,\n ];\n const newRunningStepName = runningStepPossibilities\n .reduce((choice, name) => name || choice, null);\n\n if (previousRunningStepName !== newRunningStepName) {\n store.commit('runningStepName', newRunningStepName);\n }\n\n // If running has just stopped mark status dirty to capture any post step changes\n // made after the running state change. This helps prevent the final dom updates\n // from mysteriously not appearing in the results.\n if (wasRunning && !shouldBeRunning) {\n markStatusDirty();\n }\n\n return notebook\n .applyStepModifications(\n payload.data.step_renames,\n payload.data.step_changes,\n )\n .then(() => {\n // If there's a running queue, go ahead and process the next step.\n const shouldRunNextStep = (\n !syncing\n && !running\n && !isActiveAsync\n && store.getters.queuedStepsToRun.length > 0\n );\n\n if (shouldRunNextStep) {\n const stepName = store.getters.queuedStepsToRun[0];\n store.commit('queuedStepsToRun', store.getters.queuedStepsToRun.slice(1));\n\n // Add a little bit of a wait to help prevent race conditions before running\n // a new step.\n return utils.thenWait(100)\n .then(() => runStep(stepName))\n .then(() => utils.thenWait(100))\n .then(() => response);\n }\n\n return response;\n });\n });\n}\n\nfunction abortExecution() {\n stepper.clearQueue();\n\n return post('/command/abort')\n .then((response) => {\n addErrors(response);\n addWarnings(response);\n\n store.commit('running', false);\n markStatusDirty();\n return response;\n });\n}\n\nexport default {\n abortExecution,\n get,\n post,\n execute,\n executeAsync,\n updateStatus,\n markStatusDirty,\n};\n","import Vue from 'vue';\nimport Vuex from 'vuex';\n\nVue.use(Vuex);\n\nfunction createEmptyStatus() {\n return { data: { success: true, timestamp: 0 } };\n}\n\nexport default new Vuex.Store({\n state: {\n followSteps: true,\n errors: [],\n warnings: [],\n isStatusDirty: true,\n project: null,\n queuedStepsToRun: [],\n running: false,\n runningStepName: null,\n savingFile: false,\n status: createEmptyStatus(),\n loadingMessages: [],\n isNotebookLoading: false,\n previousStepChanges: {},\n },\n mutations: {\n followSteps(state, value) {\n state.followSteps = value || false;\n },\n errors(state, value) {\n state.errors = value || [];\n },\n warnings(state, value) {\n state.warnings = value || [];\n },\n isStatusDirty(state, value) {\n state.isStatusDirty = value || false;\n },\n project(state, value) {\n state.project = value || null;\n },\n queuedStepsToRun(state, value) {\n state.queuedStepsToRun = value || [];\n },\n running(state, value) {\n state.running = value || false;\n },\n runningStepName(state, value) {\n state.runningStepName = value || null;\n },\n savingFile(state, value) {\n state.savingFile = value || false;\n },\n status(state, value) {\n state.status = value || createEmptyStatus();\n },\n loadingMessages(state, value) {\n state.loadingMessages = value || [];\n },\n isNotebookLoading(state, value) {\n state.isNotebookLoading = value || false;\n },\n previousStepChanges(state, value) {\n state.previousStepChanges = value || {};\n },\n },\n getters: {\n followSteps: state => state.followSteps,\n errors: state => state.errors,\n warnings: state => state.warnings,\n isStatusDirty: state => state.isStatusDirty,\n project: state => state.project,\n queuedStepsToRun: state => state.queuedStepsToRun,\n running: state => state.running,\n runningStepName: state => state.runningStepName,\n savingFile: state => state.savingFile,\n status: state => state.status,\n view: state => ((state.status || {}).data || {}).view || null,\n loadingMessages: state => state.loadingMessages,\n isNotebookLoading: state => state.isNotebookLoading,\n previousStepChanges: state => state.previousStepChanges,\n },\n});\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=style&index=0&id=38b6b456&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=style&index=0&id=38b6b456&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Loader\"},[_c('div',{staticClass:\"Loader__focus\"},[_c('spinner',{staticClass:\"Loader__spinner\"}),(_vm.message)?_c('div',{staticClass:\"Loader__message\"},[_vm._v(_vm._s(_vm.message))]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=d43f3f76&scoped=true&lang=pug&\"\nimport script from \"./Loader.vue?vue&type=script&lang=js&\"\nexport * from \"./Loader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Loader.vue?vue&type=style&index=0&id=d43f3f76&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d43f3f76\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=style&index=0&id=1dde40ec&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorOverlay.vue?vue&type=style&index=0&id=1dde40ec&scoped=true&lang=scss&\""],"sourceRoot":""} \ No newline at end of file diff --git a/cauldron/resources/app/assets/js/create~project.1f76fa3c.js b/cauldron/resources/app/assets/js/create~project.1f76fa3c.js new file mode 100644 index 00000000..6f2ce15e --- /dev/null +++ b/cauldron/resources/app/assets/js/create~project.1f76fa3c.js @@ -0,0 +1,2 @@ +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["create~project"],{1676:function(t,e,n){"use strict";var o=n("fd3f"),i=n.n(o);i.a},"1d85":function(t,e,n){"use strict";var o=n("78a5"),i=n.n(o);i.a},"25a8":function(t,e,n){"use strict";var o=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Browser"},[n("div",{staticClass:"Browser__toolbar"},[t._l(t.location.standard_locations,(function(e){return n("standard-path-button",{attrs:{value:e},on:{select:t.onSelect}})})),t._l(t.extraLocations,(function(e){return n("standard-path-button",{attrs:{value:e},on:{select:t.onSelect}})}))],2),n("div",{staticClass:"Browser__path"},[t._v(t._s(t.location.current_directory))]),n("div",{ref:"scroller",staticClass:"Browser__box"},[t.showFolders?n("div",{staticClass:"Browser__folders"},[t.location.parent_directory?n("folder",{attrs:{value:t.parentFolder},on:{select:t.onSelect}}):t._e(),t._l(t.foldersToShow,(function(e){return n("folder",{attrs:{value:e},on:{select:t.onSelect}})})),t.projectSelection&&t.location.spec?n("project-folder",{attrs:{location:t.location},on:{select:t.onSelect}}):t._e()],2):t._e(),t.showFiles?n("div",{staticClass:"Browser__files"},t._l(t.filesToShow,(function(e){return n("file",{attrs:{value:e},on:{select:t.onSelect}})})),1):t._e(),n("div",{staticClass:"Browser__padding"})])])},i=[],r=(n("7f7f"),n("aef6"),function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Folder",on:{click:t.onClick}},[n("i",{staticClass:"Folder__icon material-icons md-14"},[t._v(t._s(t.icon))]),n("div",{staticClass:"Folder__label"},[t._v(t._s(t.value.folder))])])}),a=[];function s(){return{}}function l(){return this.value.spec?"folder_open":"folder"}function c(t){this.$emit("select",{event:t,value:this.value,type:"folder"})}var u={name:"Folder",props:{value:{type:Object,default:function(){}},highlightProject:{type:Boolean,default:!1}},data:s,computed:{icon:l},methods:{onClick:c}},d=u,f=(n("1676"),n("2877")),v=Object(f["a"])(d,r,a,!1,null,"84006e5e",null),h=v.exports,p=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"ProjectFolder",on:{click:t.onClick}},[n("i",{staticClass:"ProjectFolder__icon material-icons md-14"},[t._v("open_in_browser")]),n("div",{staticClass:"ProjectFolder__label"},[t._v(t._s(t.location.spec.name||t.location.spec.id))])])},_=[];function m(){return{}}function b(t){this.$emit("select",{event:t,value:this.location,type:"project"})}var g={name:"ProjectFolder",props:{location:{type:Object,default:function(){}}},data:m,methods:{onClick:b}},C=g,w=(n("34c8"),Object(f["a"])(C,p,_,!1,null,"70fb8706",null)),y=w.exports,k=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"File",on:{click:t.onClick}},[n("i",{staticClass:"File__icon material-icons md-14"},[t._v(t._s(t.icon))]),n("div",{staticClass:"File__label"},[t._v(t._s(t.value.name))])])},S=[];n("28a5");function $(){return{}}function j(){var t=((this.file||{}).name||"").split(".").slice(-1)[0].toLocaleLowerCase();return"cauldron"===t?"chrome_reader_mode":"insert_drive_file"}function x(t){var e=((this.file||{}).name||"").split(".").slice(-1)[0].toLocaleLowerCase();this.$emit("select",{event:t,value:this.value,type:"file",isReaderFile:"cauldron"===e})}var F={name:"File",props:{value:{type:Object,default:function(){}}},data:$,computed:{icon:j},methods:{onClick:x}},L=F,B=(n("1d85"),Object(f["a"])(L,k,S,!1,null,"c353654a",null)),O=B.exports,P=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{directives:[{name:"tippy",rawName:"v-tippy",value:{placement:"top"},expression:"{ placement: 'top' }"}],staticClass:"StandardPathButton",attrs:{content:t.value.label},on:{click:t.onClick}},[t.icon?n("i",{staticClass:"StandardPathButton__icon material-icons md-14"},[t._v(t._s(t.icon))]):t._e(),t.icon?t._e():n("div",{staticClass:"StandardPathButton__label"},[t._v(t._s(t.firstCharacter))])])},A=[];n("6762"),n("2fdb");function N(){var t=(this.value.label||"").toLocaleLowerCase();return t.includes("home")?"home":t.includes("parent")?"arrow_upward":t.includes("project")?"folder_open":null}function E(){return(this.value.label||"?").substr(0,1)}function D(t){this.$emit("select",{event:t,value:this.value})}function I(){return{}}var R={name:"StandardPathButton",props:{value:{type:Object,default:function(){}}},data:I,computed:{icon:N,firstCharacter:E},methods:{onClick:D}},T=R,M=(n("9539"),Object(f["a"])(T,P,A,!1,null,"aae35e30",null)),U=M.exports;function W(){return this.showFolders&&(this.location||{}).children||[]}function J(){var t=this;if(!this.showFiles)return[];var e=(this.location||{}).current_files||[];return this.extensions&&0!==this.extensions.length?e.filter((function(e){return t.extensions.filter((function(t){return e.name.endsWith(t)})).length>0})):e}function z(t){this.$emit("select",t)}function G(){return{folder:"..",directory:this.location.parent_directory,spec:null,parent:null}}function K(){this.$refs.scroller.scrollTop=0}var V={name:"Browser",components:{StandardPathButton:U,Folder:h,ProjectFolder:y,File:O},props:{location:{type:Object,default:function(){}},showFiles:{type:Boolean,default:!0},showFolders:{type:Boolean,default:!0},extraLocations:{type:Array,default:function(){return[]}},extensions:{type:Array,default:function(){return[]}},projectSelection:{type:Boolean,default:!1}},computed:{parentFolder:G,foldersToShow:W,filesToShow:J},watch:{location:K},methods:{onSelect:z}},q=V,H=(n("766f"),Object(f["a"])(q,o,i,!1,null,"30d102f5",null));e["a"]=H.exports},"28a5":function(t,e,n){"use strict";var o=n("aae3"),i=n("cb7c"),r=n("ebd6"),a=n("0390"),s=n("9def"),l=n("5f1b"),c=n("520a"),u=n("79e5"),d=Math.min,f=[].push,v="split",h="length",p="lastIndex",_=4294967295,m=!u((function(){RegExp(_,"y")}));n("214f")("split",2,(function(t,e,n,u){var b;return b="c"=="abbc"[v](/(b)*/)[1]||4!="test"[v](/(?:)/,-1)[h]||2!="ab"[v](/(?:ab)*/)[h]||4!="."[v](/(.?)(.?)/)[h]||"."[v](/()()/)[h]>1||""[v](/.?/)[h]?function(t,e){var i=String(this);if(void 0===t&&0===e)return[];if(!o(t))return n.call(i,t,e);var r,a,s,l=[],u=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),d=0,v=void 0===e?_:e>>>0,m=new RegExp(t.source,u+"g");while(r=c.call(m,i)){if(a=m[p],a>d&&(l.push(i.slice(d,r.index)),r[h]>1&&r.index=v))break;m[p]===r.index&&m[p]++}return d===i[h]?!s&&m.test("")||l.push(""):l.push(i.slice(d)),l[h]>v?l.slice(0,v):l}:"0"[v](void 0,0)[h]?function(t,e){return void 0===t&&0===e?[]:n.call(this,t,e)}:n,[function(n,o){var i=t(this),r=void 0==n?void 0:n[e];return void 0!==r?r.call(n,i,o):b.call(String(i),n,o)},function(t,e){var o=u(b,t,this,e,b!==n);if(o.done)return o.value;var c=i(t),f=String(this),v=r(c,RegExp),h=c.unicode,p=(c.ignoreCase?"i":"")+(c.multiline?"m":"")+(c.unicode?"u":"")+(m?"y":"g"),g=new v(m?c:"^(?:"+c.source+")",p),C=void 0===e?_:e>>>0;if(0===C)return[];if(0===f.length)return null===l(g,f)?[f]:[];var w=0,y=0,k=[];while(y1?arguments[1]:void 0)}})},"34c8":function(t,e,n){"use strict";var o=n("4c22"),i=n.n(o);i.a},"4c22":function(t,e,n){},5989:function(t,e,n){"use strict";var o=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"AlertDialog"},[n("div",{staticClass:"AlertDialog__title"},[t._v(t._s(t.title))]),t.message&&t.message.length>0?n("div",{staticClass:"AlertDialog__message"},[t._v(t._s(t.message))]):t._e(),n("div",{staticClass:"AlertDialog__slot"},[t._t("default")],2),n("div",{staticClass:"AlertDialog__buttonBox"},[n("div",{staticClass:"AlertDialog__spacer"}),n("button",{staticClass:"AlertDialog__button button is-small is-success",on:{click:t.onClick}},[t._v(t._s(t.okLabel))])])])},i=[];function r(){return{}}function a(){this.$emit("ok")}var s={name:"AlertDialog",props:{title:{type:String,default:"Alert!"},message:{type:String,default:null},okLabel:{type:String,default:"OK"}},data:r,methods:{onClick:a}},l=s,c=(n("bc71"),n("2877")),u=Object(c["a"])(l,o,i,!1,null,"5ad52046",null);e["a"]=u.exports},6762:function(t,e,n){"use strict";var o=n("5ca1"),i=n("c366")(!0);o(o.P,"Array",{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},"766f":function(t,e,n){"use strict";var o=n("dd66"),i=n.n(o);i.a},"78a5":function(t,e,n){},8371:function(t,e,n){},"8ce8":function(t,e,n){"use strict";var o=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Notebook"},[t.showIframe?n("iframe",{staticClass:"Notebook__frame",attrs:{src:t.notebookUrl}}):t._e()])},i=[],r=(n("7f7f"),n("3fa3")),a=n("a620"),s=n("ba6a"),l=n("025e");function c(){var t=this.$store.getters,e=t.project,n=t.view;return this.isMounted&&null!==(this.viewer?n:e)}function u(){return this.viewer?r["a"].getViewUrl():r["a"].getUrl()}function d(){var t=this.$store.getters.project||{},e=t.steps;return(e||[]).reduce((function(t,e){var n=e.status.selected?e.name:null;return t||n}),null)}function f(t,e){null!==t&&t!==e&&r["a"].scrollToStep(t)}function v(){return{isLoading:!0,isMounted:!1}}function h(){return this.isLoading=!0,this.$store.commit("isNotebookLoading",!0),this.$emit("loaded",{value:!1,source:"Notebook.refresh"}),r["a"].refresh(),this.onLoaded()}function p(){var t=r["a"].getCauldronObject();return t&&t.on&&t.on.ready&&!0}function _(){var t=r["a"].getCauldronObject()||{};return t.RUNNING||!1}function m(){var t=this;return r["a"].onLoaded().then((function(){t.isLoading=!1,t.$store.commit("isNotebookLoading",!1),t.$emit("loaded",{value:!0,source:"Notebook.onLoaded"}),s["a"].markStatusDirty()})).catch((function(){return null}))}function b(){var t=this;this.isLoading=!0,this.$store.commit("isNotebookLoading",!0),this.$emit("loaded",{value:!1,source:"Notebook.mounted"}),l["a"].thenWait(1e3).then((function(){t.isMounted=!0})).then((function(){return t.onLoaded()})).then((function(){a["a"].$on("refresh-notebook",t.refresh)})).catch((function(){return null}))}var g={name:"Notebook",props:{viewer:{type:Boolean,default:!1}},data:v,computed:{notebookUrl:u,selectedStep:d,isInitialized:p,isRunning:_,showIframe:c},watch:{selectedStep:f},mounted:b,methods:{onLoaded:m,refresh:h}},C=g,w=(n("93dc"),n("2877")),y=Object(w["a"])(C,o,i,!1,null,"136b1954",null);e["a"]=y.exports},"93dc":function(t,e,n){"use strict";var o=n("9dfd"),i=n.n(o);i.a},9539:function(t,e,n){"use strict";var o=n("ad59"),i=n.n(o);i.a},"9dfd":function(t,e,n){},a620:function(t,e,n){"use strict";var o=n("2b0e"),i=new o["a"];function r(t,e){return i.$on(t,e)}function a(t,e){return i.$off(t,e)}function s(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),o=1;o1?arguments[1]:void 0,o=i(e.length),l=void 0===n?o:Math.min(i(n),o),c=String(t);return s?s.call(e,c,l):e.slice(l-c.length,l)===c}})},bc71:function(t,e,n){"use strict";var o=n("8371"),i=n.n(o);i.a},dd66:function(t,e,n){},fd3f:function(t,e,n){}}]); +//# sourceMappingURL=create~project.1f76fa3c.js.map \ No newline at end of file diff --git a/cauldron/resources/app/assets/js/create~project.1f76fa3c.js.map b/cauldron/resources/app/assets/js/create~project.1f76fa3c.js.map new file mode 100644 index 00000000..1b6e0e8d --- /dev/null +++ b/cauldron/resources/app/assets/js/create~project.1f76fa3c.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/components/browser/Folder.vue?548b","webpack:///./src/components/browser/File.vue?b731","webpack:///./src/components/browser/Browser.vue?ce8a","webpack:///./src/components/browser/Folder.vue?24e5","webpack:///src/components/browser/Folder.vue","webpack:///./src/components/browser/Folder.vue?6b63","webpack:///./src/components/browser/Folder.vue","webpack:///./src/components/browser/ProjectFolder.vue?4515","webpack:///src/components/browser/ProjectFolder.vue","webpack:///./src/components/browser/ProjectFolder.vue?f1cf","webpack:///./src/components/browser/ProjectFolder.vue","webpack:///./src/components/browser/File.vue?2759","webpack:///src/components/browser/File.vue","webpack:///./src/components/browser/File.vue?15f4","webpack:///./src/components/browser/File.vue","webpack:///./src/components/browser/StandardPathButton.vue?27e7","webpack:///src/components/browser/StandardPathButton.vue","webpack:///./src/components/browser/StandardPathButton.vue?25b2","webpack:///./src/components/browser/StandardPathButton.vue","webpack:///src/components/browser/Browser.vue","webpack:///./src/components/browser/Browser.vue?6484","webpack:///./src/components/browser/Browser.vue","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./node_modules/core-js/modules/es6.string.includes.js","webpack:///./src/components/browser/ProjectFolder.vue?9a59","webpack:///./src/components/alertDialog/AlertDialog.vue?8a7b","webpack:///src/components/alertDialog/AlertDialog.vue","webpack:///./src/components/alertDialog/AlertDialog.vue?e091","webpack:///./src/components/alertDialog/AlertDialog.vue","webpack:///./node_modules/core-js/modules/es7.array.includes.js","webpack:///./src/components/browser/Browser.vue?ef03","webpack:///./src/components/Notebook/Notebook.vue?69e2","webpack:///src/components/Notebook/Notebook.vue","webpack:///./src/components/Notebook/Notebook.vue?0bc9","webpack:///./src/components/Notebook/Notebook.vue","webpack:///./src/components/Notebook/Notebook.vue?5da8","webpack:///./src/components/browser/StandardPathButton.vue?9e02","webpack:///./src/emitter.js","webpack:///./node_modules/core-js/modules/es6.string.ends-with.js","webpack:///./src/components/alertDialog/AlertDialog.vue?23ed"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","_l","location","attrs","on","onSelect","_v","_s","current_directory","ref","parentFolder","_e","child","projectSelection","spec","staticRenderFns","onClick","icon","value","folder","data","event","$emit","name","props","highlightProject","computed","methods","component","id","extension","type","isReaderFile","directives","rawName","placement","expression","label","firstCharacter","includes","substr","foldersToShow","showFolders","children","filesToShow","showFiles","extensions","length","files","filter","directory","parent_directory","parent","watchLocation","$refs","scroller","scrollTop","components","StandardPathButton","Folder","ProjectFolder","File","extraLocations","watch","isRegExp","anObject","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","regexpExec","fails","$min","Math","min","$push","push","$SPLIT","LENGTH","LAST_INDEX","MAX_UINT32","SUPPORTS_Y","RegExp","defined","SPLIT","$split","maybeCallNative","internalSplit","separator","limit","string","String","undefined","call","match","lastIndex","lastLength","output","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","splitLimit","separatorCopy","source","slice","index","apply","test","O","splitter","regexp","res","done","rx","S","C","unicodeMatching","lim","p","q","A","e","z","i","$export","context","INCLUDES","P","F","searchString","indexOf","arguments","title","message","_t","okLabel","$includes","el","notebookUrl","showIframe","isMounted","viewer","view","project","notebook","selectedStep","steps","reduce","acc","watchSelectedStep","newStepName","oldStepName","isLoading","refresh","$store","commit","onLoaded","isInitialized","isRunning","cauldron","RUNNING","mounted","utils","bus","Vue","$on","callback","$off","args","ENDS_WITH","$endsWith","endsWith","that","endPosition","len","end","search"],"mappings":"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","file":"assets/js/create~project.1f76fa3c.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=style&index=0&id=84006e5e&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=style&index=0&id=84006e5e&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=style&index=0&id=c353654a&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=style&index=0&id=c353654a&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Browser\"},[_c('div',{staticClass:\"Browser__toolbar\"},[_vm._l((_vm.location.standard_locations),function(location){return _c('standard-path-button',{attrs:{\"value\":location},on:{\"select\":_vm.onSelect}})}),_vm._l((_vm.extraLocations),function(location){return _c('standard-path-button',{attrs:{\"value\":location},on:{\"select\":_vm.onSelect}})})],2),_c('div',{staticClass:\"Browser__path\"},[_vm._v(_vm._s(_vm.location.current_directory))]),_c('div',{ref:\"scroller\",staticClass:\"Browser__box\"},[(_vm.showFolders)?_c('div',{staticClass:\"Browser__folders\"},[(_vm.location.parent_directory)?_c('folder',{attrs:{\"value\":_vm.parentFolder},on:{\"select\":_vm.onSelect}}):_vm._e(),_vm._l((_vm.foldersToShow),function(child){return _c('folder',{attrs:{\"value\":child},on:{\"select\":_vm.onSelect}})}),(_vm.projectSelection && _vm.location.spec)?_c('project-folder',{attrs:{\"location\":_vm.location},on:{\"select\":_vm.onSelect}}):_vm._e()],2):_vm._e(),(_vm.showFiles)?_c('div',{staticClass:\"Browser__files\"},_vm._l((_vm.filesToShow),function(child){return _c('file',{attrs:{\"value\":child},on:{\"select\":_vm.onSelect}})}),1):_vm._e(),_c('div',{staticClass:\"Browser__padding\"})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Folder\",on:{\"click\":_vm.onClick}},[_c('i',{staticClass:\"Folder__icon material-icons md-14\"},[_vm._v(_vm._s(_vm.icon))]),_c('div',{staticClass:\"Folder__label\"},[_vm._v(_vm._s(_vm.value.folder))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Folder.vue?vue&type=template&id=84006e5e&scoped=true&lang=pug&\"\nimport script from \"./Folder.vue?vue&type=script&lang=js&\"\nexport * from \"./Folder.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Folder.vue?vue&type=style&index=0&id=84006e5e&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"84006e5e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ProjectFolder\",on:{\"click\":_vm.onClick}},[_c('i',{staticClass:\"ProjectFolder__icon material-icons md-14\"},[_vm._v(\"open_in_browser\")]),_c('div',{staticClass:\"ProjectFolder__label\"},[_vm._v(_vm._s(_vm.location.spec.name || _vm.location.spec.id))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectFolder.vue?vue&type=template&id=70fb8706&scoped=true&lang=pug&\"\nimport script from \"./ProjectFolder.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectFolder.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProjectFolder.vue?vue&type=style&index=0&id=70fb8706&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"70fb8706\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"File\",on:{\"click\":_vm.onClick}},[_c('i',{staticClass:\"File__icon material-icons md-14\"},[_vm._v(_vm._s(_vm.icon))]),_c('div',{staticClass:\"File__label\"},[_vm._v(_vm._s(_vm.value.name))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=c353654a&scoped=true&lang=pug&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.vue?vue&type=script&lang=js&\"\nimport style0 from \"./File.vue?vue&type=style&index=0&id=c353654a&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c353654a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"tippy\",rawName:\"v-tippy\",value:({ placement: 'top' }),expression:\"{ placement: 'top' }\"}],staticClass:\"StandardPathButton\",attrs:{\"content\":_vm.value.label},on:{\"click\":_vm.onClick}},[(_vm.icon)?_c('i',{staticClass:\"StandardPathButton__icon material-icons md-14\"},[_vm._v(_vm._s(_vm.icon))]):_vm._e(),(!_vm.icon)?_c('div',{staticClass:\"StandardPathButton__label\"},[_vm._v(_vm._s(_vm.firstCharacter))]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StandardPathButton.vue?vue&type=template&id=aae35e30&scoped=true&lang=pug&\"\nimport script from \"./StandardPathButton.vue?vue&type=script&lang=js&\"\nexport * from \"./StandardPathButton.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StandardPathButton.vue?vue&type=style&index=0&id=aae35e30&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"aae35e30\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Browser.vue?vue&type=template&id=30d102f5&scoped=true&lang=pug&\"\nimport script from \"./Browser.vue?vue&type=script&lang=js&\"\nexport * from \"./Browser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Browser.vue?vue&type=style&index=0&id=30d102f5&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"30d102f5\",\n null\n \n)\n\nexport default component.exports","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar fails = require('./_fails');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\nvar MAX_UINT32 = 0xffffffff;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return $split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n});\n","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=style&index=0&id=70fb8706&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=style&index=0&id=70fb8706&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"AlertDialog\"},[_c('div',{staticClass:\"AlertDialog__title\"},[_vm._v(_vm._s(_vm.title))]),(_vm.message && _vm.message.length > 0)?_c('div',{staticClass:\"AlertDialog__message\"},[_vm._v(_vm._s(_vm.message))]):_vm._e(),_c('div',{staticClass:\"AlertDialog__slot\"},[_vm._t(\"default\")],2),_c('div',{staticClass:\"AlertDialog__buttonBox\"},[_c('div',{staticClass:\"AlertDialog__spacer\"}),_c('button',{staticClass:\"AlertDialog__button button is-small is-success\",on:{\"click\":_vm.onClick}},[_vm._v(_vm._s(_vm.okLabel))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AlertDialog.vue?vue&type=template&id=5ad52046&scoped=true&lang=pug&\"\nimport script from \"./AlertDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertDialog.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlertDialog.vue?vue&type=style&index=0&id=5ad52046&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5ad52046\",\n null\n \n)\n\nexport default component.exports","'use strict';\n// https://github.com/tc39/Array.prototype.includes\nvar $export = require('./_export');\nvar $includes = require('./_array-includes')(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\nrequire('./_add-to-unscopables')('includes');\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=style&index=0&id=30d102f5&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=style&index=0&id=30d102f5&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Notebook\"},[(_vm.showIframe)?_c('iframe',{staticClass:\"Notebook__frame\",attrs:{\"src\":_vm.notebookUrl}}):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notebook.vue?vue&type=template&id=136b1954&scoped=true&lang=pug&\"\nimport script from \"./Notebook.vue?vue&type=script&lang=js&\"\nexport * from \"./Notebook.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notebook.vue?vue&type=style&index=0&id=136b1954&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"136b1954\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=style&index=0&id=136b1954&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=style&index=0&id=136b1954&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=style&index=0&id=aae35e30&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=style&index=0&id=aae35e30&scoped=true&lang=scss&\"","import Vue from 'vue';\n\nconst bus = new Vue();\n\nfunction $on(event, callback) {\n return bus.$on(event, callback);\n}\n\nfunction $off(event, callback) {\n return bus.$off(event, callback);\n}\n\nfunction $emit(event, ...args) {\n return bus.$emit(event, ...args);\n}\n\nexport default { $on, $off, $emit };\n","// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar ENDS_WITH = 'endsWith';\nvar $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = context(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);\n var search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=style&index=0&id=5ad52046&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=style&index=0&id=5ad52046&scoped=true&lang=scss&\""],"sourceRoot":""} \ No newline at end of file diff --git a/cauldron/resources/app/assets/js/create~project.3c27727e.js b/cauldron/resources/app/assets/js/create~project.3c27727e.js deleted file mode 100644 index 056fc2a4..00000000 --- a/cauldron/resources/app/assets/js/create~project.3c27727e.js +++ /dev/null @@ -1,2 +0,0 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["create~project"],{"07b9":function(t,e,n){},1676:function(t,e,n){"use strict";var o=n("fd3f"),i=n.n(o);i.a},"1d85":function(t,e,n){"use strict";var o=n("78a5"),i=n.n(o);i.a},"25a8":function(t,e,n){"use strict";var o=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Browser"},[n("div",{staticClass:"Browser__toolbar"},[t._l(t.location.standard_locations,(function(e){return n("standard-path-button",{attrs:{value:e},on:{select:t.onSelect}})})),t._l(t.extraLocations,(function(e){return n("standard-path-button",{attrs:{value:e},on:{select:t.onSelect}})}))],2),n("div",{staticClass:"Browser__path"},[t._v(t._s(t.location.current_directory))]),n("div",{ref:"scroller",staticClass:"Browser__box"},[t.showFolders?n("div",{staticClass:"Browser__folders"},[t.location.parent_directory?n("folder",{attrs:{value:t.parentFolder},on:{select:t.onSelect}}):t._e(),t._l(t.foldersToShow,(function(e){return n("folder",{attrs:{value:e},on:{select:t.onSelect}})})),t.projectSelection&&t.location.spec?n("project-folder",{attrs:{location:t.location},on:{select:t.onSelect}}):t._e()],2):t._e(),t.showFiles?n("div",{staticClass:"Browser__files"},t._l(t.filesToShow,(function(e){return n("file",{attrs:{value:e},on:{select:t.onSelect}})})),1):t._e(),n("div",{staticClass:"Browser__padding"})])])},i=[],r=(n("7f7f"),n("aef6"),function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Folder",on:{click:t.onClick}},[n("i",{staticClass:"Folder__icon material-icons md-14"},[t._v(t._s(t.icon))]),n("div",{staticClass:"Folder__label"},[t._v(t._s(t.value.folder))])])}),a=[];function s(){return{}}function l(){return this.value.spec?"folder_open":"folder"}function c(t){this.$emit("select",{event:t,value:this.value,type:"folder"})}var u={name:"Folder",props:{value:{type:Object,default:function(){}},highlightProject:{type:Boolean,default:!1}},data:s,computed:{icon:l},methods:{onClick:c}},d=u,f=(n("1676"),n("2877")),v=Object(f["a"])(d,r,a,!1,null,"84006e5e",null),h=v.exports,p=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"ProjectFolder",on:{click:t.onClick}},[n("i",{staticClass:"ProjectFolder__icon material-icons md-14"},[t._v("open_in_browser")]),n("div",{staticClass:"ProjectFolder__label"},[t._v(t._s(t.location.spec.name||t.location.spec.id))])])},_=[];function m(){return{}}function b(t){this.$emit("select",{event:t,value:this.location,type:"project"})}var g={name:"ProjectFolder",props:{location:{type:Object,default:function(){}}},data:m,methods:{onClick:b}},C=g,w=(n("34c8"),Object(f["a"])(C,p,_,!1,null,"70fb8706",null)),y=w.exports,k=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"File",on:{click:t.onClick}},[n("i",{staticClass:"File__icon material-icons md-14"},[t._v(t._s(t.icon))]),n("div",{staticClass:"File__label"},[t._v(t._s(t.value.name))])])},S=[];n("28a5");function $(){return{}}function j(){var t=((this.file||{}).name||"").split(".").slice(-1)[0].toLocaleLowerCase();return"cauldron"===t?"chrome_reader_mode":"insert_drive_file"}function x(t){var e=((this.file||{}).name||"").split(".").slice(-1)[0].toLocaleLowerCase();this.$emit("select",{event:t,value:this.value,type:"file",isReaderFile:"cauldron"===e})}var F={name:"File",props:{value:{type:Object,default:function(){}}},data:$,computed:{icon:j},methods:{onClick:x}},L=F,B=(n("1d85"),Object(f["a"])(L,k,S,!1,null,"c353654a",null)),O=B.exports,P=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{directives:[{name:"tippy",rawName:"v-tippy",value:{placement:"top"},expression:"{ placement: 'top' }"}],staticClass:"StandardPathButton",attrs:{content:t.value.label},on:{click:t.onClick}},[t.icon?n("i",{staticClass:"StandardPathButton__icon material-icons md-14"},[t._v(t._s(t.icon))]):t._e(),t.icon?t._e():n("div",{staticClass:"StandardPathButton__label"},[t._v(t._s(t.firstCharacter))])])},A=[];n("6762"),n("2fdb");function N(){var t=(this.value.label||"").toLocaleLowerCase();return t.includes("home")?"home":t.includes("parent")?"arrow_upward":t.includes("project")?"folder_open":null}function E(){return(this.value.label||"?").substr(0,1)}function D(t){this.$emit("select",{event:t,value:this.value})}function I(){return{}}var R={name:"StandardPathButton",props:{value:{type:Object,default:function(){}}},data:I,computed:{icon:N,firstCharacter:E},methods:{onClick:D}},T=R,U=(n("9539"),Object(f["a"])(T,P,A,!1,null,"aae35e30",null)),W=U.exports;function J(){return this.showFolders&&(this.location||{}).children||[]}function M(){var t=this;if(!this.showFiles)return[];var e=(this.location||{}).current_files||[];return this.extensions&&0!==this.extensions.length?e.filter((function(e){return t.extensions.filter((function(t){return e.name.endsWith(t)})).length>0})):e}function z(t){this.$emit("select",t)}function G(){return{folder:"..",directory:this.location.parent_directory,spec:null,parent:null}}function K(){this.$refs.scroller.scrollTop=0}var V={name:"Browser",components:{StandardPathButton:W,Folder:h,ProjectFolder:y,File:O},props:{location:{type:Object,default:function(){}},showFiles:{type:Boolean,default:!0},showFolders:{type:Boolean,default:!0},extraLocations:{type:Array,default:function(){return[]}},extensions:{type:Array,default:function(){return[]}},projectSelection:{type:Boolean,default:!1}},computed:{parentFolder:G,foldersToShow:J,filesToShow:M},watch:{location:K},methods:{onSelect:z}},q=V,H=(n("766f"),Object(f["a"])(q,o,i,!1,null,"30d102f5",null));e["a"]=H.exports},"28a5":function(t,e,n){"use strict";var o=n("aae3"),i=n("cb7c"),r=n("ebd6"),a=n("0390"),s=n("9def"),l=n("5f1b"),c=n("520a"),u=n("79e5"),d=Math.min,f=[].push,v="split",h="length",p="lastIndex",_=4294967295,m=!u((function(){RegExp(_,"y")}));n("214f")("split",2,(function(t,e,n,u){var b;return b="c"=="abbc"[v](/(b)*/)[1]||4!="test"[v](/(?:)/,-1)[h]||2!="ab"[v](/(?:ab)*/)[h]||4!="."[v](/(.?)(.?)/)[h]||"."[v](/()()/)[h]>1||""[v](/.?/)[h]?function(t,e){var i=String(this);if(void 0===t&&0===e)return[];if(!o(t))return n.call(i,t,e);var r,a,s,l=[],u=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),d=0,v=void 0===e?_:e>>>0,m=new RegExp(t.source,u+"g");while(r=c.call(m,i)){if(a=m[p],a>d&&(l.push(i.slice(d,r.index)),r[h]>1&&r.index=v))break;m[p]===r.index&&m[p]++}return d===i[h]?!s&&m.test("")||l.push(""):l.push(i.slice(d)),l[h]>v?l.slice(0,v):l}:"0"[v](void 0,0)[h]?function(t,e){return void 0===t&&0===e?[]:n.call(this,t,e)}:n,[function(n,o){var i=t(this),r=void 0==n?void 0:n[e];return void 0!==r?r.call(n,i,o):b.call(String(i),n,o)},function(t,e){var o=u(b,t,this,e,b!==n);if(o.done)return o.value;var c=i(t),f=String(this),v=r(c,RegExp),h=c.unicode,p=(c.ignoreCase?"i":"")+(c.multiline?"m":"")+(c.unicode?"u":"")+(m?"y":"g"),g=new v(m?c:"^(?:"+c.source+")",p),C=void 0===e?_:e>>>0;if(0===C)return[];if(0===f.length)return null===l(g,f)?[f]:[];var w=0,y=0,k=[];while(y1?arguments[1]:void 0)}})},"34c8":function(t,e,n){"use strict";var o=n("4c22"),i=n.n(o);i.a},"4c22":function(t,e,n){},5989:function(t,e,n){"use strict";var o=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"AlertDialog"},[n("div",{staticClass:"AlertDialog__title"},[t._v(t._s(t.title))]),t.message&&t.message.length>0?n("div",{staticClass:"AlertDialog__message"},[t._v(t._s(t.message))]):t._e(),n("div",{staticClass:"AlertDialog__slot"},[t._t("default")],2),n("div",{staticClass:"AlertDialog__buttonBox"},[n("div",{staticClass:"AlertDialog__spacer"}),n("button",{staticClass:"AlertDialog__button button is-small is-success",on:{click:t.onClick}},[t._v(t._s(t.okLabel))])])])},i=[];function r(){return{}}function a(){this.$emit("ok")}var s={name:"AlertDialog",props:{title:{type:String,default:"Alert!"},message:{type:String,default:null},okLabel:{type:String,default:"OK"}},data:r,methods:{onClick:a}},l=s,c=(n("bc71"),n("2877")),u=Object(c["a"])(l,o,i,!1,null,"5ad52046",null);e["a"]=u.exports},"611c":function(t,e,n){"use strict";var o=n("07b9"),i=n.n(o);i.a},6762:function(t,e,n){"use strict";var o=n("5ca1"),i=n("c366")(!0);o(o.P,"Array",{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),n("9c6c")("includes")},"766f":function(t,e,n){"use strict";var o=n("dd66"),i=n.n(o);i.a},"78a5":function(t,e,n){},8371:function(t,e,n){},"8ce8":function(t,e,n){"use strict";var o=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"Notebook"},[t.showIframe?n("iframe",{staticClass:"Notebook__frame",attrs:{src:t.notebookUrl}}):t._e()])},i=[],r=(n("7f7f"),n("3fa3")),a=n("a620"),s=n("ba6a");function l(){var t=this.$store.getters,e=t.project,n=t.view;return null!==(this.viewer?n:e)}function c(){return this.viewer?r["a"].getViewUrl():r["a"].getUrl()}function u(){var t=this.$store.getters.project||{},e=t.steps;return(e||[]).reduce((function(t,e){var n=e.status.selected?e.name:null;return t||n}),null)}function d(t,e){null!==t&&t!==e&&r["a"].scrollToStep(t)}function f(){return{isLoading:!0}}function v(){return this.isLoading=!0,this.$store.commit("isNotebookLoading",!0),this.$emit("loaded",{value:!1,source:"Notebook.refresh"}),r["a"].refresh(),this.onLoaded()}function h(){var t=r["a"].getCauldronObject();return t&&t.on&&t.on.ready&&!0}function p(){var t=r["a"].getCauldronObject()||{};return t.RUNNING||!1}function _(){var t=this;return r["a"].onLoaded().then((function(){t.isLoading=!1,t.$store.commit("isNotebookLoading",!1),t.$emit("loaded",{value:!0,source:"Notebook.onLoaded"}),s["a"].markStatusDirty()})).catch((function(){return null}))}function m(){var t=this;this.isLoading=!0,this.$store.commit("isNotebookLoading",!0),this.$emit("loaded",{value:!1,source:"Notebook.mounted"}),this.onLoaded().then((function(){a["a"].$on("refresh-notebook",t.refresh)})).catch((function(){return null}))}var b={name:"Notebook",props:{viewer:{type:Boolean,default:!1}},data:f,computed:{notebookUrl:c,selectedStep:u,isInitialized:h,isRunning:p,showIframe:l},watch:{selectedStep:d},mounted:m,methods:{onLoaded:_,refresh:v}},g=b,C=(n("611c"),n("2877")),w=Object(C["a"])(g,o,i,!1,null,"69378d50",null);e["a"]=w.exports},9539:function(t,e,n){"use strict";var o=n("ad59"),i=n.n(o);i.a},a620:function(t,e,n){"use strict";var o=n("2b0e"),i=new o["a"];function r(t,e){return i.$on(t,e)}function a(t,e){return i.$off(t,e)}function s(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),o=1;o1?arguments[1]:void 0,o=i(e.length),l=void 0===n?o:Math.min(i(n),o),c=String(t);return s?s.call(e,c,l):e.slice(l-c.length,l)===c}})},bc71:function(t,e,n){"use strict";var o=n("8371"),i=n.n(o);i.a},dd66:function(t,e,n){},fd3f:function(t,e,n){}}]); -//# sourceMappingURL=create~project.3c27727e.js.map \ No newline at end of file diff --git a/cauldron/resources/app/assets/js/create~project.3c27727e.js.map b/cauldron/resources/app/assets/js/create~project.3c27727e.js.map deleted file mode 100644 index 5ac60d1d..00000000 --- a/cauldron/resources/app/assets/js/create~project.3c27727e.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/components/browser/Folder.vue?548b","webpack:///./src/components/browser/File.vue?b731","webpack:///./src/components/browser/Browser.vue?ce8a","webpack:///./src/components/browser/Folder.vue?24e5","webpack:///src/components/browser/Folder.vue","webpack:///./src/components/browser/Folder.vue?6b63","webpack:///./src/components/browser/Folder.vue","webpack:///./src/components/browser/ProjectFolder.vue?4515","webpack:///src/components/browser/ProjectFolder.vue","webpack:///./src/components/browser/ProjectFolder.vue?f1cf","webpack:///./src/components/browser/ProjectFolder.vue","webpack:///./src/components/browser/File.vue?2759","webpack:///src/components/browser/File.vue","webpack:///./src/components/browser/File.vue?15f4","webpack:///./src/components/browser/File.vue","webpack:///./src/components/browser/StandardPathButton.vue?27e7","webpack:///src/components/browser/StandardPathButton.vue","webpack:///./src/components/browser/StandardPathButton.vue?25b2","webpack:///./src/components/browser/StandardPathButton.vue","webpack:///src/components/browser/Browser.vue","webpack:///./src/components/browser/Browser.vue?6484","webpack:///./src/components/browser/Browser.vue","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./node_modules/core-js/modules/es6.string.includes.js","webpack:///./src/components/browser/ProjectFolder.vue?9a59","webpack:///./src/components/alertDialog/AlertDialog.vue?8a7b","webpack:///src/components/alertDialog/AlertDialog.vue","webpack:///./src/components/alertDialog/AlertDialog.vue?e091","webpack:///./src/components/alertDialog/AlertDialog.vue","webpack:///./src/components/Notebook/Notebook.vue?3ef6","webpack:///./node_modules/core-js/modules/es7.array.includes.js","webpack:///./src/components/browser/Browser.vue?ef03","webpack:///./src/components/Notebook/Notebook.vue?55b3","webpack:///src/components/Notebook/Notebook.vue","webpack:///./src/components/Notebook/Notebook.vue?0bc9","webpack:///./src/components/Notebook/Notebook.vue","webpack:///./src/components/browser/StandardPathButton.vue?9e02","webpack:///./src/emitter.js","webpack:///./node_modules/core-js/modules/es6.string.ends-with.js","webpack:///./src/components/alertDialog/AlertDialog.vue?23ed"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","_l","location","attrs","on","onSelect","_v","_s","current_directory","ref","parentFolder","_e","child","projectSelection","spec","staticRenderFns","onClick","icon","value","folder","data","event","$emit","name","props","highlightProject","computed","methods","component","id","extension","type","isReaderFile","directives","rawName","placement","expression","label","firstCharacter","includes","substr","foldersToShow","showFolders","children","filesToShow","showFiles","extensions","length","files","filter","directory","parent_directory","parent","watchLocation","$refs","scroller","scrollTop","components","StandardPathButton","Folder","ProjectFolder","File","extraLocations","watch","isRegExp","anObject","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","regexpExec","fails","$min","Math","min","$push","push","$SPLIT","LENGTH","LAST_INDEX","MAX_UINT32","SUPPORTS_Y","RegExp","defined","SPLIT","$split","maybeCallNative","internalSplit","separator","limit","string","String","undefined","call","match","lastIndex","lastLength","output","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","splitLimit","separatorCopy","source","slice","index","apply","test","O","splitter","regexp","res","done","rx","S","C","unicodeMatching","lim","p","q","A","e","z","i","$export","context","INCLUDES","P","F","searchString","indexOf","arguments","title","message","_t","okLabel","$includes","el","notebookUrl","showIframe","viewer","view","project","notebook","selectedStep","steps","reduce","acc","watchSelectedStep","newStepName","oldStepName","isLoading","refresh","$store","commit","onLoaded","isInitialized","isRunning","cauldron","RUNNING","mounted","bus","Vue","$on","callback","$off","args","ENDS_WITH","$endsWith","endsWith","that","endPosition","len","end","search"],"mappings":"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","file":"assets/js/create~project.3c27727e.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=style&index=0&id=84006e5e&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=style&index=0&id=84006e5e&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=style&index=0&id=c353654a&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=style&index=0&id=c353654a&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Browser\"},[_c('div',{staticClass:\"Browser__toolbar\"},[_vm._l((_vm.location.standard_locations),function(location){return _c('standard-path-button',{attrs:{\"value\":location},on:{\"select\":_vm.onSelect}})}),_vm._l((_vm.extraLocations),function(location){return _c('standard-path-button',{attrs:{\"value\":location},on:{\"select\":_vm.onSelect}})})],2),_c('div',{staticClass:\"Browser__path\"},[_vm._v(_vm._s(_vm.location.current_directory))]),_c('div',{ref:\"scroller\",staticClass:\"Browser__box\"},[(_vm.showFolders)?_c('div',{staticClass:\"Browser__folders\"},[(_vm.location.parent_directory)?_c('folder',{attrs:{\"value\":_vm.parentFolder},on:{\"select\":_vm.onSelect}}):_vm._e(),_vm._l((_vm.foldersToShow),function(child){return _c('folder',{attrs:{\"value\":child},on:{\"select\":_vm.onSelect}})}),(_vm.projectSelection && _vm.location.spec)?_c('project-folder',{attrs:{\"location\":_vm.location},on:{\"select\":_vm.onSelect}}):_vm._e()],2):_vm._e(),(_vm.showFiles)?_c('div',{staticClass:\"Browser__files\"},_vm._l((_vm.filesToShow),function(child){return _c('file',{attrs:{\"value\":child},on:{\"select\":_vm.onSelect}})}),1):_vm._e(),_c('div',{staticClass:\"Browser__padding\"})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Folder\",on:{\"click\":_vm.onClick}},[_c('i',{staticClass:\"Folder__icon material-icons md-14\"},[_vm._v(_vm._s(_vm.icon))]),_c('div',{staticClass:\"Folder__label\"},[_vm._v(_vm._s(_vm.value.folder))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Folder.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Folder.vue?vue&type=template&id=84006e5e&scoped=true&lang=pug&\"\nimport script from \"./Folder.vue?vue&type=script&lang=js&\"\nexport * from \"./Folder.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Folder.vue?vue&type=style&index=0&id=84006e5e&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"84006e5e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ProjectFolder\",on:{\"click\":_vm.onClick}},[_c('i',{staticClass:\"ProjectFolder__icon material-icons md-14\"},[_vm._v(\"open_in_browser\")]),_c('div',{staticClass:\"ProjectFolder__label\"},[_vm._v(_vm._s(_vm.location.spec.name || _vm.location.spec.id))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectFolder.vue?vue&type=template&id=70fb8706&scoped=true&lang=pug&\"\nimport script from \"./ProjectFolder.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectFolder.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProjectFolder.vue?vue&type=style&index=0&id=70fb8706&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"70fb8706\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"File\",on:{\"click\":_vm.onClick}},[_c('i',{staticClass:\"File__icon material-icons md-14\"},[_vm._v(_vm._s(_vm.icon))]),_c('div',{staticClass:\"File__label\"},[_vm._v(_vm._s(_vm.value.name))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=c353654a&scoped=true&lang=pug&\"\nimport script from \"./File.vue?vue&type=script&lang=js&\"\nexport * from \"./File.vue?vue&type=script&lang=js&\"\nimport style0 from \"./File.vue?vue&type=style&index=0&id=c353654a&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c353654a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"tippy\",rawName:\"v-tippy\",value:({ placement: 'top' }),expression:\"{ placement: 'top' }\"}],staticClass:\"StandardPathButton\",attrs:{\"content\":_vm.value.label},on:{\"click\":_vm.onClick}},[(_vm.icon)?_c('i',{staticClass:\"StandardPathButton__icon material-icons md-14\"},[_vm._v(_vm._s(_vm.icon))]):_vm._e(),(!_vm.icon)?_c('div',{staticClass:\"StandardPathButton__label\"},[_vm._v(_vm._s(_vm.firstCharacter))]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StandardPathButton.vue?vue&type=template&id=aae35e30&scoped=true&lang=pug&\"\nimport script from \"./StandardPathButton.vue?vue&type=script&lang=js&\"\nexport * from \"./StandardPathButton.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StandardPathButton.vue?vue&type=style&index=0&id=aae35e30&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"aae35e30\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Browser.vue?vue&type=template&id=30d102f5&scoped=true&lang=pug&\"\nimport script from \"./Browser.vue?vue&type=script&lang=js&\"\nexport * from \"./Browser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Browser.vue?vue&type=style&index=0&id=30d102f5&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"30d102f5\",\n null\n \n)\n\nexport default component.exports","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar fails = require('./_fails');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\nvar MAX_UINT32 = 0xffffffff;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return $split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n});\n","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=style&index=0&id=70fb8706&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProjectFolder.vue?vue&type=style&index=0&id=70fb8706&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"AlertDialog\"},[_c('div',{staticClass:\"AlertDialog__title\"},[_vm._v(_vm._s(_vm.title))]),(_vm.message && _vm.message.length > 0)?_c('div',{staticClass:\"AlertDialog__message\"},[_vm._v(_vm._s(_vm.message))]):_vm._e(),_c('div',{staticClass:\"AlertDialog__slot\"},[_vm._t(\"default\")],2),_c('div',{staticClass:\"AlertDialog__buttonBox\"},[_c('div',{staticClass:\"AlertDialog__spacer\"}),_c('button',{staticClass:\"AlertDialog__button button is-small is-success\",on:{\"click\":_vm.onClick}},[_vm._v(_vm._s(_vm.okLabel))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AlertDialog.vue?vue&type=template&id=5ad52046&scoped=true&lang=pug&\"\nimport script from \"./AlertDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./AlertDialog.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AlertDialog.vue?vue&type=style&index=0&id=5ad52046&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5ad52046\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=style&index=0&id=69378d50&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=style&index=0&id=69378d50&scoped=true&lang=scss&\"","'use strict';\n// https://github.com/tc39/Array.prototype.includes\nvar $export = require('./_export');\nvar $includes = require('./_array-includes')(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\nrequire('./_add-to-unscopables')('includes');\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=style&index=0&id=30d102f5&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Browser.vue?vue&type=style&index=0&id=30d102f5&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"Notebook\"},[(_vm.showIframe)?_c('iframe',{staticClass:\"Notebook__frame\",attrs:{\"src\":_vm.notebookUrl}}):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notebook.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notebook.vue?vue&type=template&id=69378d50&scoped=true&lang=pug&\"\nimport script from \"./Notebook.vue?vue&type=script&lang=js&\"\nexport * from \"./Notebook.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notebook.vue?vue&type=style&index=0&id=69378d50&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"69378d50\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=style&index=0&id=aae35e30&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StandardPathButton.vue?vue&type=style&index=0&id=aae35e30&scoped=true&lang=scss&\"","import Vue from 'vue';\n\nconst bus = new Vue();\n\nfunction $on(event, callback) {\n return bus.$on(event, callback);\n}\n\nfunction $off(event, callback) {\n return bus.$off(event, callback);\n}\n\nfunction $emit(event, ...args) {\n return bus.$emit(event, ...args);\n}\n\nexport default { $on, $off, $emit };\n","// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar ENDS_WITH = 'endsWith';\nvar $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = context(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);\n var search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=style&index=0&id=5ad52046&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertDialog.vue?vue&type=style&index=0&id=5ad52046&scoped=true&lang=scss&\""],"sourceRoot":""} \ No newline at end of file diff --git a/cauldron/resources/app/index.html b/cauldron/resources/app/index.html index 32c4a385..83c9ffd9 100644 --- a/cauldron/resources/app/index.html +++ b/cauldron/resources/app/index.html @@ -1 +1 @@ -Cauldron
\ No newline at end of file +Cauldron
\ No newline at end of file diff --git a/cauldron/settings.json b/cauldron/settings.json index a9695e37..0aa3cc95 100644 --- a/cauldron/settings.json +++ b/cauldron/settings.json @@ -1,4 +1,4 @@ { - "version": "1.0.2", + "version": "1.0.3", "notebookVersion": "v1" } diff --git a/cauldron/steptest/support.py b/cauldron/steptest/support.py index 3a5bdc02..8918e625 100644 --- a/cauldron/steptest/support.py +++ b/cauldron/steptest/support.py @@ -87,18 +87,25 @@ def find_matching_step( A fully or partial matching name of a step to find in the specified project. """ - methods = ( - lambda n: n == step_name, - lambda n: n.startswith(step_name), - lambda n: step_name in n - ) - matcher = ( - step - for method in methods - for step in project.steps - if method(step.name) - ) - return next(matcher, None) + comparison = (step_name or '').lower() + matches = [] + for step in project.steps: + name = step.name.lower() + identical = name == comparison + starts = name.startswith(comparison) + if identical or starts: + matches.append((step, 0)) + # If there is an identical or starting match, that will be + # the best fit and further steps should be ignored. + break + + contains = name.find(comparison) + if contains != -1: + matches.append((step, contains)) + + matches.sort(key=lambda m: m[1]) + matches.append((None, 0)) + return matches[0][0] def run_step( diff --git a/cauldron/test/steptesting/test_support.py b/cauldron/test/steptesting/test_support.py index 396cb543..9b0626a0 100644 --- a/cauldron/test/steptesting/test_support.py +++ b/cauldron/test/steptesting/test_support.py @@ -35,6 +35,8 @@ def test_open_project( 'S02-Bar.py', 'S03-FooBar.py', 'S04-Spam.py', + 'S05-Bar.py', + 'S06-Pam.py', ] FIND_SCENARIOS = ( @@ -43,7 +45,9 @@ def test_open_project( ('S04-Spam', MOCK_STEP_NAMES[3]), ('Spam', MOCK_STEP_NAMES[3]), ('Foo', MOCK_STEP_NAMES[0]), - ('S05', None), + ('S99', None), + ('Bar', MOCK_STEP_NAMES[1]), + ('Pam', MOCK_STEP_NAMES[5]), ) diff --git a/deployment.md b/deployment.md index 1dbd83ac..d0680b57 100644 --- a/deployment.md +++ b/deployment.md @@ -7,7 +7,7 @@ library. ## 1. Release the package -Mac OS/Linux: +### Mac OS/Linux ```bash $ rm -rf ./dist @@ -17,7 +17,8 @@ $ docker run --rm -it -v $(pwd):/cauldron continuumio/anaconda3 /bin/bash $ python3 conda-recipe/conda-builder.py ``` -WINDOWS: +### WINDOWS + ```powershell CMD> rmdir dist /s /q PS> rm dist -r -fo @@ -31,7 +32,7 @@ PS> rm dist -r -fo ## 2. Push new container images ```bash -$ python docker-builder --publish +$ python docker-builder.py --publish ``` ## 3. Update release information