@data-fair/dev-server 1.5.7 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/200.html CHANGED
@@ -1,9 +1,9 @@
1
1
  <!doctype html>
2
2
  <html>
3
3
  <head>
4
- <title>DataFair - Dev server</title><meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="application" name="application-name" content="DataFair - Dev server"><meta data-n-head="1" data-hid="description" name="description" content="A development server for optimal development experience of data-fair applications."><meta data-n-head="1" data-hid="robots" name="robots" content="noindex"><link rel="preload" href="/_nuxt/3dafdeb.js" as="script"><link rel="preload" href="/_nuxt/0c5f45a.js" as="script"><link rel="preload" href="/_nuxt/df98766.js" as="script"><link rel="preload" href="/_nuxt/b1b5217.js" as="script">
4
+ <title>DataFair - Dev server</title><meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="application" name="application-name" content="DataFair - Dev server"><meta data-n-head="1" data-hid="description" name="description" content="A development server for optimal development experience of data-fair applications."><meta data-n-head="1" data-hid="robots" name="robots" content="noindex"><link rel="preload" href="/_nuxt/c140857.js" as="script"><link rel="preload" href="/_nuxt/0c5f45a.js" as="script"><link rel="preload" href="/_nuxt/df98766.js" as="script"><link rel="preload" href="/_nuxt/b1b5217.js" as="script">
5
5
  </head>
6
6
  <body>
7
7
  <div id="__nuxt"><style>#nuxt-loading{background:#fff;visibility:hidden;opacity:0;position:absolute;left:0;right:0;top:0;bottom:0;display:flex;justify-content:center;align-items:center;flex-direction:column;animation:nuxtLoadingIn 10s ease;-webkit-animation:nuxtLoadingIn 10s ease;animation-fill-mode:forwards;overflow:hidden}@keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}@-webkit-keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}#nuxt-loading>div,#nuxt-loading>div:after{border-radius:50%;width:5rem;height:5rem}#nuxt-loading>div{font-size:10px;position:relative;text-indent:-9999em;border:.5rem solid #f5f5f5;border-left:.5rem solid #000;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:nuxtLoading 1.1s infinite linear;animation:nuxtLoading 1.1s infinite linear}#nuxt-loading.error>div{border-left:.5rem solid #ff4500;animation-duration:5s}@-webkit-keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}</style><script>window.addEventListener("error",function(){var e=document.getElementById("nuxt-loading");e&&(e.className+=" error")})</script><div id="nuxt-loading" aria-live="polite" role="status"><div>Loading...</div></div></div><script>window.__NUXT__={config:{_app:{basePath:"/",assetsPath:"/_nuxt/",cdnURL:null}}}</script>
8
- <script src="/_nuxt/3dafdeb.js"></script><script src="/_nuxt/0c5f45a.js"></script><script src="/_nuxt/df98766.js"></script><script src="/_nuxt/b1b5217.js"></script></body>
8
+ <script src="/_nuxt/c140857.js"></script><script src="/_nuxt/0c5f45a.js"></script><script src="/_nuxt/df98766.js"></script><script src="/_nuxt/b1b5217.js"></script></body>
9
9
  </html>
@@ -0,0 +1 @@
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[6,5],{308:function(e,t){e.exports=function(e){e.options.__i18n=e.options.__i18n||[],e.options.__i18n.push('{"en":{"metadata":"Metadata read from index.html","missingApplicationName":"Metadata \\"application-name\\" is missing. Add a tag <meta name=\\"application-name\\" content=\\"my-application\\">","missingThumbnail":"Metadata \\"thumbnail\\" is missing. Add a tag <meta name=\\"thumbnail\\" content=\\"http://my/thumbnail.png\\">","missingTitle":"Add a tag <title lang=\\"{locale}\\">My title</title>","missingDesc":"Metadata \\"description\\" is missing. Add a tag <meta name=\\"description\\" lang=\\"{locale}\\" content=\\"My description\\">","missingKeywords":"Metadata \\"keywords\\" is missing. Add a tag <meta name=\\"keywords\\" lang=\\"{locale}\\" content=\\"My keyword\\">","missingVocabAccept":"Metadata \\"vocabulary-accept\\" is missing. Add a tag <meta name=\\"vocabulary-accept\\" content=\\"http://www.w3.org/2000/01/rdf-schema#label\\">","missingVocabRequire":"Metadata \\"vocabulary-require\\" is missing. Add a tag <meta name=\\"vocabulary-require\\" content=\\"http://www.w3.org/2003/01/geo/wgs84_pos#lat_long\\">","config":"Configuration form created from config-schema.json"}}'),delete e.options._Ctor}},312:function(e,t,n){"use strict";n.r(t);var r={components:{VIframe:n(311).a},data:function(){return{dialog:!1}}},o=n(63),l=n(127),c=n.n(l),d=n(358),m=n(328),f=n(264),v=n(659),component=Object(o.a)(r,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-dialog",{attrs:{scrollable:"","max-width":"1100px"},scopedSlots:e._u([{key:"activator",fn:function(t){var r=t.on;return[n("v-btn",e._g({attrs:{color:"primary",text:""}},r),[e._v("\n Simulate screenshot\n ")])]}}]),model:{value:e.dialog,callback:function(t){e.dialog=t},expression:"dialog"}},[e._v(" "),n("v-card",[n("v-card-title",{attrs:{"primary-title":""}},[e._v("\n Screenshot simulation\n ")]),e._v(" "),n("v-card-text",[n("p",[e._v("Data Fair will automatically render the visualization after each configuration change and take a screenshot to be used as a thumbnail.")]),e._v(" "),n("p",[e._v("The screenshot will be rendered in a box of 1050x450 pixels (21/9 resolution) and the URL will have the query parameter ?thumbnail=true.")]),e._v(" "),n("p",[e._v('For performance it is a recommended to call the window.triggerCapture method as soon as the application is fully rendered. For guidance look for messages prefixed with "[capture]" in your browser developper\'s console.')]),e._v(" "),e.dialog?n("v-iframe",{staticStyle:{border:"1px solid grey",width:"1050px"},attrs:{"aspect-ratio":21/9,src:"http://localhost:5888/app?thumbnail=true"}}):e._e()],1)],1)],1)}),[],!1,null,"c87a3f30",null);t.default=component.exports;c()(component,{VBtn:d.a,VCard:m.a,VCardText:f.b,VCardTitle:f.c,VDialog:v.a})},356:function(e,t,n){var content=n(641);content.__esModule&&(content=content.default),"string"==typeof content&&(content=[[e.i,content,""]]),content.locals&&(e.exports=content.locals);(0,n(61).default)("1c80b324",content,!0,{sourceMap:!1})},357:function(e,t,n){"use strict";n.r(t);var r={computed:{locales:function(){return["en","fr"]}},methods:{setLocale:function(e){this.$i18n.setLocale(e),window.location.reload()}}},o=n(63),l=n(127),c=n.n(l),d=n(358),m=n(643),component=Object(o.a)(r,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.locales.length>1?n("v-speed-dial",{attrs:{direction:"bottom",transition:"fade-transition"},scopedSlots:e._u([{key:"activator",fn:function(){return[n("v-btn",{staticClass:"mx-2",attrs:{fab:"",small:""}},[e._v("\n "+e._s(e.$i18n.locale)+"\n ")])]},proxy:!0}],null,!1,4142082435)},[e._v(" "),e._l(e.locales.filter((function(t){return t!==e.$i18n.locale})),(function(t){return n("v-btn",{key:t,attrs:{fab:"",small:"",nuxt:""},on:{click:function(n){return e.setLocale(t)}}},[e._v("\n "+e._s(t)+"\n ")])}))],2):e._e()}),[],!1,null,null,null);t.default=component.exports;c()(component,{VBtn:d.a,VSpeedDial:m.a})},640:function(e,t,n){"use strict";n(356)},641:function(e,t,n){var r=n(60)(!1);r.push([e.i,".app-meta p[data-v-8fe84b72]{margin-bottom:4px}",""]),e.exports=r},642:function(e,t,n){"use strict";var r=n(308),o=n.n(r);t.default=o.a},658:function(e,t,n){"use strict";n.r(t);n(15),n(11),n(26),n(27),n(28),n(36),n(35),n(32);var r=n(3),o=n(4),l=(n(83),n(16),n(22),n(31),n(38),n(39),n(13),n(45),n(362)),c=n(644),d=(n(489),n(491),n(314)),m=n(620),f=n.n(m),v=(n(622),n(311)),h=n(312);function _(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return y(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,r=function(){};return{s:r,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,l=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return l=e.done,e},e:function(e){c=!0,o=e},f:function(){try{l||null==n.return||n.return()}finally{if(c)throw o}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=new Array(t);i<t;i++)n[i]=e[i];return n}function w(object,e){var t=Object.keys(object);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(object);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(object,e).enumerable}))),t.push.apply(t,n)}return t}var x=n(627),$=n(302),k=n(349),C=n(348),A=new $({strict:!1,allErrors:!0,messages:!1});A.addFormat("hexcolor",/^#[0-9A-Fa-f]{6,8}$/),k(A);var O={components:{VIframe:v.a,VJsf:c.a,ScreenshotSimulation:h.default},data:function(){return{error:null,schema:null,dataFair:null,editConfig:null,showPreview:!0,compileError:null,formValid:!1,iframeLog:!1,loading:!1,meta:null}},computed:{options:function(){return{context:{owner:this.dataFair&&this.dataFair.owner},locale:this.$i18n.locale,defaultLocale:this.$i18n.defaultLocale,rootDisplay:"expansion-panels",expansionPanelsProps:{value:0,hover:!0},dialogProps:{maxWidth:500,overlayOpacity:0},arrayItemCardProps:{outlined:!0,tile:!0},dialogCardProps:{outlined:!0}}},validationErrors:function(){if(this.schema&&this.schemaValidate)return this.schemaValidate(this.editConfig)?null:(C[this.$i18n.locale](this.schemaValidate.errors),this.schemaValidate.errors)}},created:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.dataFair={url:"https://STARTCONFIGALIAS-string-dataFair.url-ENDCONFIGALIAS",owner:{type:"STARTCONFIGALIAS-string-dataFair.owner.type-ENDCONFIGALIAS",id:"STARTCONFIGALIAS-string-dataFair.owner.id-ENDCONFIGALIAS"},apiKey:"STARTCONFIGALIAS-string-dataFair.apiKey-ENDCONFIGALIAS"},e.iframeLog="STARTCONFIGALIAS-boolean-iframeLog-ENDCONFIGALIAS",t.next=4,e.$axios.$get("http://localhost:5888/config");case 4:e.editConfig=t.sent,e.fetchInfo();case 6:case"end":return t.stop()}}),t)})))()},mounted:function(){var e=this;console.log("connect to to ws://localhost:5888"),this.socketDevServer=new l.a("ws://localhost:5888"),this.socketDevServer.onopen=function(){e.socketDevServer.onmessage=function(t){var data=JSON.parse(t.data);"app-error"===data.type&&(e.error=data.data.message),"ping"===data.type&&e.socketDevServer.send(JSON.stringify({type:"pong"}))}},window.addEventListener("message",(function(t){console.log("received message from iframe",t.data),"set-config"===t.data.type&&(e.editConfig=f.a.set(function(e){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{};i%2?w(Object(source),!0).forEach((function(t){Object(r.a)(e,t,source[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(source)):w(Object(source)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(source,t))}))}return e}({},e.editConfig),t.data.content.field,t.data.content.value),e.validate())}))},destroyed:function(){console.log("destroyed"),this.socketDevServer&&this.socketDevServer.close()},methods:{empty:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.editConfig=null,t.next=3,e.save({});case 3:e.editConfig={};case 4:case"end":return t.stop()}}),t)})))()},validate:function(){var e=arguments,t=this;return Object(o.a)(regeneratorRuntime.mark((function n(){var r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:r=!(e.length>0&&void 0!==e[0])||e[0],t.$refs.form.validate()&&(t.save(t.editConfig,r),t.error=null);case 2:case"end":return n.stop()}}),n)})))()},save:function(e){var t=this;return Object(o.a)(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t.$axios.$put("http://localhost:5888/config",e);case 2:return n.next=4,t.reloadIframe();case 4:case"end":return n.stop()}}),n)})))()},fetchInfo:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){var n,r,o,l,html,c,head,meta,m,f,v,h,y,w,$,k,C,O,S,I,V;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.loading=!0,t.next=3,e.$axios.$get("http://localhost:5888/app/index.html");case 3:if(o=t.sent,l=x.parse(o),html=l.childNodes.find((function(e){return"html"===e.tagName}))){t.next=8;break}throw new Error("broken HTML");case 8:if(c=(null===(n=html.attrs)||void 0===n||null===(r=n.find((function(a){return"lang"===a.name})))||void 0===r?void 0:r.value)||e.$i18n.defaultLocale,head=html.childNodes.find((function(e){return"head"===e.tagName}))){t.next=12;break}throw new Error("broken HTML, missing head tag");case 12:meta={title:{}},m=_(head.childNodes.filter((function(e){return"title"===e.tagName})));try{for(m.s();!(f=m.n()).done;)y=f.value,meta.title[(null==y||null===(v=y.attrs.find((function(a){return"lang"===a.name})))||void 0===v?void 0:v.value)||c]=null===(h=y.childNodes)||void 0===h?void 0:h[0].value}catch(e){m.e(e)}finally{m.f()}w=["application-name","description","keywords","vocabulary-accept","vocabulary-require","thumbnail"],$=["description","keywords"],k=["keywords","vocabulary-accept","vocabulary-require"],C=head.childNodes.filter((function(e){return"meta"===e.tagName})).map((function(e){var t,n,r;return{name:null===(t=e.attrs.find((function(a){return"name"===a.name})))||void 0===t?void 0:t.value,locale:(null===(n=e.attrs.find((function(a){return"lang"===a.name})))||void 0===n?void 0:n.value)||c,content:null===(r=e.attrs.find((function(a){return"content"===a.name})))||void 0===r?void 0:r.value}})).filter((function(e){return w.includes(e.name)})),O=_(C);try{for(O.s();!(S=O.n()).done;)I=S.value,$.includes(I.name)?(meta[I.name]=meta[I.name]||{},k.includes(I.name)?(meta[I.name][I.locale]=meta[I.name][I.locale]||[],I.content&&meta[I.name][I.locale].push(I.content)):meta[I.name][I.locale]=I.content):k.includes(I.name)?(meta[I.name]=meta[I.name]||[],I.content&&meta[I.name].push(I.content)):meta[I.name]=I.content}catch(e){O.e(e)}finally{O.f()}return e.meta=meta,e.schema=null,t.next=25,e.$axios.$get("http://localhost:5888/app/config-schema.json");case 25:(V=t.sent)["x-display"]="tabs",e.schema=d.a.resolve(V,{"~$locale~":e.$i18n.locale===e.$i18n.defaultLocale?e.$i18n.locale:[e.$i18n.locale,e.$i18n.defaultLocale]});try{e.schemaValidate=A.compile(e.schema),e.compileError=null}catch(t){console.error(t),e.compileError=t.message}e.loading=!1;case 30:case"end":return t.stop()}}),t)})))()},reloadIframe:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.showPreview=!1,t.next=3,new Promise((function(e){return setTimeout(e,10)}));case 3:e.showPreview=!0;case 4:case"end":return t.stop()}}),t)})))()}}},S=O,I=(n(640),n(63)),V=n(642),j=n(127),N=n.n(j),L=n(651),F=n(358),E=n(328),D=n(653),R=n(660),T=n(656),P=n(322),M=n(654),G=n(655),component=Object(I.a)(S,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-container",{staticClass:"pt-4",attrs:{fluid:""}},[n("v-row",[n("v-col",{attrs:{xs:"12",md:"6",lg:"4"}},[e.error?n("v-alert",{attrs:{color:"error"}},[e._v("\n "+e._s(e.error.message||e.error)+"\n ")]):e._e(),e._v(" "),n("v-row",{staticClass:"mb-2"},[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{fab:"",dark:"",small:"",color:"primary",loading:e.loading},on:{click:e.fetchInfo}},[n("v-icon",{attrs:{dark:""}},[e._v("\n mdi-refresh\n ")])],1)],1),e._v(" "),n("h2",{staticClass:"text-h6 mt-2"},[e._v("\n "+e._s(e.$t("config"))+"\n ")]),e._v(" "),n("v-form",{ref:"form",model:{value:e.formValid,callback:function(t){e.formValid=t},expression:"formValid"}},[n("v-alert",{attrs:{value:!!e.compileError,type:"error"}},[e._v("\n "+e._s(e.compileError)+"\n ")]),e._v(" "),n("v-alert",{attrs:{value:!!e.validationErrors&&e.formValid,type:"error"}},[e._v("\n Formulaire valide pourtant le modèle ne respecte pas le schéma:\n "),n("p",[e._v(e._s(e.validationErrors))])]),e._v(" "),e.schema&&e.editConfig?n("v-jsf",{attrs:{schema:e.schema,options:e.options},on:{change:e.validate},model:{value:e.editConfig,callback:function(t){e.editConfig=t},expression:"editConfig"}}):e._e()],1),e._v(" "),n("v-row",{staticClass:"ma-2"},[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{color:"warning"},on:{click:e.empty}},[e._v("\n Empty\n ")])],1),e._v(" "),e.meta?n("v-row",{staticClass:"mt-4"},[n("v-col",{staticClass:"app-meta"},[n("h2",{staticClass:"text-h6"},[e._v("\n "+e._s(e.$t("metadata"))+"\n ")]),e._v(" "),e.meta["application-name"]?n("p",[n("b",[e._v("application-name:")]),e._v(" "+e._s(e.meta["application-name"])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingApplicationName"))+"\n ")]),e._v(" "),e.meta.thumbnail?n("p",[n("b",[e._v("thumbnail:")]),e._v(" "),n("img",{attrs:{width:"25",src:e.meta.thumbnail.startsWith("http://")||e.meta.thumbnail.startsWith("https://")?e.meta.thumbnail:"http://localhost:5888/app/"+e.meta.thumbnail}})]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingThumbnail"))+"\n ")]),e._v(" "),e.meta.title&&e.meta.title[e.$i18n.locale]?n("p",[n("b",[e._v("title:")]),e._v(" "+e._s(e.meta.title[e.$i18n.locale])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingTitle",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta.description&&e.meta.description[e.$i18n.locale]?n("p",[n("b",[e._v("description:")]),e._v(" "+e._s(e.meta.description[e.$i18n.locale])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingDesc",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta.keywords&&e.meta.keywords[e.$i18n.locale]?n("p",[n("b",[e._v("keywords:")]),e._v(" "+e._s(e.meta.keywords[e.$i18n.locale])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingKeywords",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta["vocabulary-accept"]&&e.meta["vocabulary-accept"]?n("p",[n("b",[e._v("vocabulary-accept:")]),e._v(" "+e._s(e.meta["vocabulary-accept"])+"\n ")]):n("v-alert",{attrs:{type:"info",dense:""}},[e._v("\n "+e._s(e.$t("missingVocabAccept",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta["vocabulary-require"]&&e.meta["vocabulary-require"]?n("p",[n("b",[e._v("vocabulary-require:")]),e._v(" "+e._s(e.meta["vocabulary-require"])+"\n ")]):n("v-alert",{attrs:{type:"info",dense:""}},[e._v("\n "+e._s(e.$t("missingVocabRequire",{locale:e.$i18n.locale}))+"\n ")])],1)],1):e._e()],1),e._v(" "),n("v-col",{attrs:{xs:"12",md:"6",lg:"8"}},[n("v-row",{staticClass:"mb-2"},[n("v-spacer"),e._v(" "),n("screenshot-simulation"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{fab:"",dark:"",small:"",color:"primary"},on:{click:e.reloadIframe}},[n("v-icon",{attrs:{dark:""}},[e._v("\n mdi-refresh\n ")])],1),e._v(" "),n("lang-switcher")],1),e._v(" "),n("v-card",[e.showPreview?n("v-iframe",{attrs:{src:"http://localhost:5888/app?draft=true",log:e.iframeLog}}):e._e()],1)],1)],1)],1)}),[],!1,null,"8fe84b72",null);"function"==typeof V.default&&Object(V.default)(component);t.default=component.exports;N()(component,{ScreenshotSimulation:n(312).default,LangSwitcher:n(357).default}),N()(component,{VAlert:L.a,VBtn:F.a,VCard:E.a,VCol:D.a,VContainer:R.a,VForm:T.a,VIcon:P.a,VRow:M.a,VSpacer:G.a})}}]);
@@ -1 +1 @@
1
- !function(e){function r(data){for(var r,n,f=data[0],l=data[1],d=data[2],i=0,h=[];i<f.length;i++)n=f[i],Object.prototype.hasOwnProperty.call(o,n)&&o[n]&&h.push(o[n][0]),o[n]=0;for(r in l)Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);for(v&&v(data);h.length;)h.shift()();return c.push.apply(c,d||[]),t()}function t(){for(var e,i=0;i<c.length;i++){for(var r=c[i],t=!0,n=1;n<r.length;n++){var l=r[n];0!==o[l]&&(t=!1)}t&&(c.splice(i--,1),e=f(f.s=r[0]))}return e}var n={},o={7:0},c=[];function f(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,f),t.l=!0,t.exports}f.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var c,script=document.createElement("script");script.charset="utf-8",script.timeout=120,f.nc&&script.setAttribute("nonce",f.nc),script.src=function(e){return f.p+""+{0:"b68e30f",1:"553dac1",4:"d6dd90c",5:"898243c",6:"c3d8b5b",9:"5d119d6",10:"4f0f04d"}[e]+".js"}(e);var l=new Error;c=function(r){script.onerror=script.onload=null,clearTimeout(d);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),c=r&&r.target&&r.target.src;l.message="Loading chunk "+e+" failed.\n("+n+": "+c+")",l.name="ChunkLoadError",l.type=n,l.request=c,t[1](l)}o[e]=void 0}};var d=setTimeout((function(){c({type:"timeout",target:script})}),12e4);script.onerror=script.onload=c,document.head.appendChild(script)}return Promise.all(r)},f.m=e,f.c=n,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(e,r){if(1&r&&(e=f(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)f.d(t,n,function(r){return e[r]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(object,e){return Object.prototype.hasOwnProperty.call(object,e)},f.p="/_nuxt/",f.oe=function(e){throw console.error(e),e};var l=window.webpackJsonp=window.webpackJsonp||[],d=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var v=d;t()}([]);
1
+ !function(e){function r(data){for(var r,n,f=data[0],l=data[1],d=data[2],i=0,h=[];i<f.length;i++)n=f[i],Object.prototype.hasOwnProperty.call(o,n)&&o[n]&&h.push(o[n][0]),o[n]=0;for(r in l)Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);for(v&&v(data);h.length;)h.shift()();return c.push.apply(c,d||[]),t()}function t(){for(var e,i=0;i<c.length;i++){for(var r=c[i],t=!0,n=1;n<r.length;n++){var l=r[n];0!==o[l]&&(t=!1)}t&&(c.splice(i--,1),e=f(f.s=r[0]))}return e}var n={},o={7:0},c=[];function f(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,f),t.l=!0,t.exports}f.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var c,script=document.createElement("script");script.charset="utf-8",script.timeout=120,f.nc&&script.setAttribute("nonce",f.nc),script.src=function(e){return f.p+""+{0:"b68e30f",1:"553dac1",4:"d6dd90c",5:"898243c",6:"1d11d1a",9:"5d119d6",10:"4f0f04d"}[e]+".js"}(e);var l=new Error;c=function(r){script.onerror=script.onload=null,clearTimeout(d);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),c=r&&r.target&&r.target.src;l.message="Loading chunk "+e+" failed.\n("+n+": "+c+")",l.name="ChunkLoadError",l.type=n,l.request=c,t[1](l)}o[e]=void 0}};var d=setTimeout((function(){c({type:"timeout",target:script})}),12e4);script.onerror=script.onload=c,document.head.appendChild(script)}return Promise.all(r)},f.m=e,f.c=n,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(e,r){if(1&r&&(e=f(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)f.d(t,n,function(r){return e[r]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(object,e){return Object.prototype.hasOwnProperty.call(object,e)},f.p="/_nuxt/",f.oe=function(e){throw console.error(e),e};var l=window.webpackJsonp=window.webpackJsonp||[],d=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var v=d;t()}([]);
package/dist/index.html CHANGED
@@ -1,9 +1,9 @@
1
1
  <!doctype html>
2
2
  <html>
3
3
  <head>
4
- <title>DataFair - Dev server</title><meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="application" name="application-name" content="DataFair - Dev server"><meta data-n-head="1" data-hid="description" name="description" content="A development server for optimal development experience of data-fair applications."><meta data-n-head="1" data-hid="robots" name="robots" content="noindex"><link rel="preload" href="/_nuxt/3dafdeb.js" as="script"><link rel="preload" href="/_nuxt/0c5f45a.js" as="script"><link rel="preload" href="/_nuxt/df98766.js" as="script"><link rel="preload" href="/_nuxt/b1b5217.js" as="script">
4
+ <title>DataFair - Dev server</title><meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="application" name="application-name" content="DataFair - Dev server"><meta data-n-head="1" data-hid="description" name="description" content="A development server for optimal development experience of data-fair applications."><meta data-n-head="1" data-hid="robots" name="robots" content="noindex"><link rel="preload" href="/_nuxt/c140857.js" as="script"><link rel="preload" href="/_nuxt/0c5f45a.js" as="script"><link rel="preload" href="/_nuxt/df98766.js" as="script"><link rel="preload" href="/_nuxt/b1b5217.js" as="script">
5
5
  </head>
6
6
  <body>
7
7
  <div id="__nuxt"><style>#nuxt-loading{background:#fff;visibility:hidden;opacity:0;position:absolute;left:0;right:0;top:0;bottom:0;display:flex;justify-content:center;align-items:center;flex-direction:column;animation:nuxtLoadingIn 10s ease;-webkit-animation:nuxtLoadingIn 10s ease;animation-fill-mode:forwards;overflow:hidden}@keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}@-webkit-keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}#nuxt-loading>div,#nuxt-loading>div:after{border-radius:50%;width:5rem;height:5rem}#nuxt-loading>div{font-size:10px;position:relative;text-indent:-9999em;border:.5rem solid #f5f5f5;border-left:.5rem solid #000;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:nuxtLoading 1.1s infinite linear;animation:nuxtLoading 1.1s infinite linear}#nuxt-loading.error>div{border-left:.5rem solid #ff4500;animation-duration:5s}@-webkit-keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}</style><script>window.addEventListener("error",function(){var e=document.getElementById("nuxt-loading");e&&(e.className+=" error")})</script><div id="nuxt-loading" aria-live="polite" role="status"><div>Loading...</div></div></div><script>window.__NUXT__={config:{_app:{basePath:"/",assetsPath:"/_nuxt/",cdnURL:null}}}</script>
8
- <script src="/_nuxt/3dafdeb.js"></script><script src="/_nuxt/0c5f45a.js"></script><script src="/_nuxt/df98766.js"></script><script src="/_nuxt/b1b5217.js"></script></body>
8
+ <script src="/_nuxt/c140857.js"></script><script src="/_nuxt/0c5f45a.js"></script><script src="/_nuxt/df98766.js"></script><script src="/_nuxt/b1b5217.js"></script></body>
9
9
  </html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@data-fair/dev-server",
3
- "version": "1.5.7",
3
+ "version": "1.6.0",
4
4
  "description": "A development server for optimal development experience of data-fair applications.",
5
5
  "main": "server/index.js",
6
6
  "bin": {
@@ -58,7 +58,6 @@
58
58
  "express": "^4.17.2",
59
59
  "fs-extra": "^10.0.0",
60
60
  "http-proxy-middleware": "^2.0.1",
61
- "open": "^8.4.0",
62
61
  "parse5": "^6.0.1",
63
62
  "tree-kill": "^1.2.2",
64
63
  "ws": "^8.3.0"
package/server/app.js CHANGED
@@ -9,12 +9,12 @@ const http = require('http')
9
9
  const fs = require('fs-extra')
10
10
  const { createProxyMiddleware } = require('http-proxy-middleware')
11
11
  const cors = require('cors')
12
- const open = require('open')
13
12
  const kill = require('tree-kill')
14
13
  const escapeStringRegexp = require('escape-string-regexp')
15
14
  const parse5 = require('parse5')
16
15
  const WebSocket = require('ws')
17
16
  const debug = require('debug')('df-dev-server')
17
+ const chalk = require('chalk')
18
18
 
19
19
  const app = express()
20
20
  const server = http.createServer(app)
@@ -189,14 +189,6 @@ app.use('/data-fair', createProxyMiddleware({
189
189
 
190
190
  // run the dev-src command from current project
191
191
  let spawnedDevSrc
192
- if (fs.existsSync('package.json')) {
193
- const pJson = fs.readJsonSync('package.json')
194
- if (pJson.scripts && pJson.scripts['dev-src']) {
195
- spawnedDevSrc = spawn('npm', ['run', 'dev-src'], { stdio: 'inherit' }).on('error', () => {})
196
- } else {
197
- console.error('No script "dev-src" in package.json')
198
- }
199
- }
200
192
 
201
193
  // Run app and return it in a promise
202
194
  exports.run = async () => {
@@ -218,7 +210,18 @@ exports.run = async () => {
218
210
  }
219
211
  server.listen(config.port)
220
212
  await eventToPromise(server, 'listening')
221
- if (process.env.NODE_ENV !== 'development') open('http://localhost:5888')
213
+ console.log(chalk.bold.blue('\nDataFair dev server available on ') + chalk.underline.bold.blue(`http://localhost:${config.port}`))
214
+
215
+ if (fs.existsSync('package.json')) {
216
+ const pJson = fs.readJsonSync('package.json')
217
+ if (pJson.scripts && pJson.scripts['dev-src']) {
218
+ console.log(chalk.blue('running application with "npm run dev-src"'))
219
+ spawnedDevSrc = spawn('npm', ['run', 'dev-src'], { stdio: 'inherit' }).on('error', () => {})
220
+ } else {
221
+ console.error(chalk.red('No script "dev-src" in package.json'))
222
+ }
223
+ }
224
+ // if (process.env.NODE_ENV !== 'development') open('http://localhost:5888')
222
225
  return server
223
226
  }
224
227
 
package/server/index.js CHANGED
@@ -1,14 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- const chalk = require('chalk')
4
3
  const path = require('path')
5
4
  require('dotenv').config()
6
5
  process.env.NODE_CONFIG_DIR = path.join(__dirname, '../config')
7
- const config = require('config')
8
6
  const app = require('./app')
9
7
 
10
8
  app.run().then(app => {
11
- console.log(chalk.blue('\nDataFair dev server available on ') + chalk.underline.bold.blue(`http://localhost:${config.port}\n`))
9
+ // nothing to do
12
10
  }, error => {
13
11
  console.error('Failure in customers process', error)
14
12
  process.exit(-1)
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[6,5],{308:function(e,t){e.exports=function(e){e.options.__i18n=e.options.__i18n||[],e.options.__i18n.push('{"en":{"metadata":"Metadata read from index.html","missingApplicationName":"Metadata \\"application-name\\" is missing. Add a tag <meta name=\\"application-name\\" content=\\"my-application\\">","missingThumbnail":"Metadata \\"thumbnail\\" is missing. Add a tag <meta name=\\"thumbnail\\" content=\\"http://my/thumbnail.png\\">","missingTitle":"Add a tag <title lang=\\"{locale}\\">My title</title>","missingDesc":"Metadata \\"description\\" is missing. Add a tag <meta name=\\"description\\" lang=\\"{locale}\\" content=\\"My description\\">","missingKeywords":"Metadata \\"keywords\\" is missing. Add a tag <meta name=\\"keywords\\" lang=\\"{locale}\\" content=\\"My keyword\\">","missingVocabAccept":"Metadata \\"vocabulary-accept\\" is missing. Add a tag <meta name=\\"vocabulary-accept\\" content=\\"http://www.w3.org/2000/01/rdf-schema#label\\">","missingVocabRequire":"Metadata \\"vocabulary-require\\" is missing. Add a tag <meta name=\\"vocabulary-require\\" content=\\"http://www.w3.org/2003/01/geo/wgs84_pos#lat_long\\">","config":"Configuration form created from config-schema.json"}}'),delete e.options._Ctor}},312:function(e,t,n){"use strict";n.r(t);var r={components:{VIframe:n(311).a},data:function(){return{dialog:!1}}},o=n(63),l=n(127),c=n.n(l),d=n(358),m=n(328),v=n(264),f=n(659),component=Object(o.a)(r,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-dialog",{attrs:{scrollable:"","max-width":"1100px"},scopedSlots:e._u([{key:"activator",fn:function(t){var r=t.on;return[n("v-btn",e._g({attrs:{color:"primary",text:""}},r),[e._v("\n Simulate screenshot\n ")])]}}]),model:{value:e.dialog,callback:function(t){e.dialog=t},expression:"dialog"}},[e._v(" "),n("v-card",[n("v-card-title",{attrs:{"primary-title":""}},[e._v("\n Screenshot simulation\n ")]),e._v(" "),n("v-card-text",[n("p",[e._v("Data Fair will automatically render the visualization after each configuration change and take a screenshot to be used as a thumbnail.")]),e._v(" "),n("p",[e._v("The screenshot will be rendered in a box of 1050x450 pixels (21/9 resolution) and the URL will have the query parameter ?thumbnail=true.")]),e._v(" "),n("p",[e._v('For performance it is a recommended to call the window.triggerCapture method as soon as the application is fully rendered. For guidance look for messages prefixed with "[capture]" in your browser developper\'s console.')]),e._v(" "),e.dialog?n("v-iframe",{staticStyle:{border:"1px solid grey",width:"1050px"},attrs:{"aspect-ratio":21/9,src:"http://localhost:5888/app?thumbnail=true"}}):e._e()],1)],1)],1)}),[],!1,null,"c87a3f30",null);t.default=component.exports;c()(component,{VBtn:d.a,VCard:m.a,VCardText:v.b,VCardTitle:v.c,VDialog:f.a})},356:function(e,t,n){var content=n(641);content.__esModule&&(content=content.default),"string"==typeof content&&(content=[[e.i,content,""]]),content.locals&&(e.exports=content.locals);(0,n(61).default)("1b283daa",content,!0,{sourceMap:!1})},357:function(e,t,n){"use strict";n.r(t);var r={computed:{locales:function(){return["en","fr"]}},methods:{setLocale:function(e){this.$i18n.setLocale(e),window.location.reload()}}},o=n(63),l=n(127),c=n.n(l),d=n(358),m=n(643),component=Object(o.a)(r,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.locales.length>1?n("v-speed-dial",{attrs:{direction:"bottom",transition:"fade-transition"},scopedSlots:e._u([{key:"activator",fn:function(){return[n("v-btn",{staticClass:"mx-2",attrs:{fab:"",small:""}},[e._v("\n "+e._s(e.$i18n.locale)+"\n ")])]},proxy:!0}],null,!1,4142082435)},[e._v(" "),e._l(e.locales.filter((function(t){return t!==e.$i18n.locale})),(function(t){return n("v-btn",{key:t,attrs:{fab:"",small:"",nuxt:""},on:{click:function(n){return e.setLocale(t)}}},[e._v("\n "+e._s(t)+"\n ")])}))],2):e._e()}),[],!1,null,null,null);t.default=component.exports;c()(component,{VBtn:d.a,VSpeedDial:m.a})},640:function(e,t,n){"use strict";n(356)},641:function(e,t,n){var r=n(60)(!1);r.push([e.i,".app-meta p[data-v-a6a61bc6]{margin-bottom:4px}",""]),e.exports=r},642:function(e,t,n){"use strict";var r=n(308),o=n.n(r);t.default=o.a},658:function(e,t,n){"use strict";n.r(t);n(15),n(11),n(26),n(27),n(28),n(36),n(35),n(32);var r=n(3),o=n(4),l=(n(83),n(16),n(22),n(31),n(38),n(39),n(13),n(45),n(362)),c=n(644),d=(n(489),n(491),n(314)),m=n(620),v=n.n(m),f=(n(622),n(311)),h=n(312);function _(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return y(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,r=function(){};return{s:r,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,l=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return l=e.done,e},e:function(e){c=!0,o=e},f:function(){try{l||null==n.return||n.return()}finally{if(c)throw o}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=new Array(t);i<t;i++)n[i]=e[i];return n}function w(object,e){var t=Object.keys(object);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(object);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(object,e).enumerable}))),t.push.apply(t,n)}return t}var x=n(627),$=n(302),k=n(349),C=n(348),A=new $({strict:!1,allErrors:!0,messages:!1});A.addFormat("hexcolor",/^#[0-9A-Fa-f]{6,8}$/),k(A);var O={components:{VIframe:f.a,VJsf:c.a,ScreenshotSimulation:h.default},data:function(){return{error:null,schema:null,dataFair:null,editConfig:null,showPreview:!0,compileError:null,formValid:!1,iframeLog:!1,loading:!1,meta:null}},computed:{options:function(){return{context:{owner:this.dataFair&&this.dataFair.owner},locale:this.$i18n.locale,defaultLocale:this.$i18n.defaultLocale,rootDisplay:"expansion-panels",expansionPanelsProps:{value:0,hover:!0},dialogProps:{maxWidth:500,overlayOpacity:0},arrayItemCardProps:{outlined:!0,tile:!0},dialogCardProps:{outlined:!0}}},validationErrors:function(){if(this.schema&&this.schemaValidate)return this.schemaValidate(this.editConfig)?null:(C[this.$i18n.locale](this.schemaValidate.errors),this.schemaValidate.errors)}},created:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.dataFair={url:"https://STARTCONFIGALIAS-string-dataFair.url-ENDCONFIGALIAS",owner:{type:"STARTCONFIGALIAS-string-dataFair.owner.type-ENDCONFIGALIAS",id:"STARTCONFIGALIAS-string-dataFair.owner.id-ENDCONFIGALIAS"},apiKey:"STARTCONFIGALIAS-string-dataFair.apiKey-ENDCONFIGALIAS"},e.iframeLog="STARTCONFIGALIAS-boolean-iframeLog-ENDCONFIGALIAS",t.next=4,e.$axios.$get("http://localhost:5888/config");case 4:e.editConfig=t.sent,e.fetchInfo();case 6:case"end":return t.stop()}}),t)})))()},mounted:function(){var e=this;console.log("connect to to ws://localhost:5888"),this.socketDevServer=new l.a("ws://localhost:5888"),this.socketDevServer.onopen=function(){e.socketDevServer.onmessage=function(t){var data=JSON.parse(t.data);"app-error"===data.type&&(e.error=data.data.message),"ping"===data.type&&e.socketDevServer.send(JSON.stringify({type:"pong"}))}},window.addEventListener("message",(function(t){console.log("received message from iframe",t.data),"set-config"===t.data.type&&(e.editConfig=v.a.set(function(e){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{};i%2?w(Object(source),!0).forEach((function(t){Object(r.a)(e,t,source[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(source)):w(Object(source)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(source,t))}))}return e}({},e.editConfig),t.data.content.field,t.data.content.value),e.validate(!1))}))},destroyed:function(){console.log("destroyed"),this.socketDevServer&&this.socketDevServer.close()},methods:{empty:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.editConfig=null,t.next=3,e.save({});case 3:e.editConfig={};case 4:case"end":return t.stop()}}),t)})))()},validate:function(){var e=arguments,t=this;return Object(o.a)(regeneratorRuntime.mark((function n(){var r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:r=!(e.length>0&&void 0!==e[0])||e[0],t.$refs.form.validate()&&(t.save(t.editConfig,r),t.error=null);case 2:case"end":return n.stop()}}),n)})))()},save:function(e){var t=arguments,n=this;return Object(o.a)(regeneratorRuntime.mark((function r(){var o;return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o=!(t.length>1&&void 0!==t[1])||t[1],r.next=3,n.$axios.$put("http://localhost:5888/config",e);case 3:if(!o){r.next=6;break}return r.next=6,n.reloadIframe();case 6:case"end":return r.stop()}}),r)})))()},fetchInfo:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){var n,r,o,l,html,c,head,meta,m,v,f,h,y,w,$,k,C,O,S,I,V;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.loading=!0,t.next=3,e.$axios.$get("http://localhost:5888/app/index.html");case 3:if(o=t.sent,l=x.parse(o),html=l.childNodes.find((function(e){return"html"===e.tagName}))){t.next=8;break}throw new Error("broken HTML");case 8:if(c=(null===(n=html.attrs)||void 0===n||null===(r=n.find((function(a){return"lang"===a.name})))||void 0===r?void 0:r.value)||e.$i18n.defaultLocale,head=html.childNodes.find((function(e){return"head"===e.tagName}))){t.next=12;break}throw new Error("broken HTML, missing head tag");case 12:meta={title:{}},m=_(head.childNodes.filter((function(e){return"title"===e.tagName})));try{for(m.s();!(v=m.n()).done;)y=v.value,meta.title[(null==y||null===(f=y.attrs.find((function(a){return"lang"===a.name})))||void 0===f?void 0:f.value)||c]=null===(h=y.childNodes)||void 0===h?void 0:h[0].value}catch(e){m.e(e)}finally{m.f()}w=["application-name","description","keywords","vocabulary-accept","vocabulary-require","thumbnail"],$=["description","keywords"],k=["keywords","vocabulary-accept","vocabulary-require"],C=head.childNodes.filter((function(e){return"meta"===e.tagName})).map((function(e){var t,n,r;return{name:null===(t=e.attrs.find((function(a){return"name"===a.name})))||void 0===t?void 0:t.value,locale:(null===(n=e.attrs.find((function(a){return"lang"===a.name})))||void 0===n?void 0:n.value)||c,content:null===(r=e.attrs.find((function(a){return"content"===a.name})))||void 0===r?void 0:r.value}})).filter((function(e){return w.includes(e.name)})),O=_(C);try{for(O.s();!(S=O.n()).done;)I=S.value,$.includes(I.name)?(meta[I.name]=meta[I.name]||{},k.includes(I.name)?(meta[I.name][I.locale]=meta[I.name][I.locale]||[],I.content&&meta[I.name][I.locale].push(I.content)):meta[I.name][I.locale]=I.content):k.includes(I.name)?(meta[I.name]=meta[I.name]||[],I.content&&meta[I.name].push(I.content)):meta[I.name]=I.content}catch(e){O.e(e)}finally{O.f()}return e.meta=meta,e.schema=null,t.next=25,e.$axios.$get("http://localhost:5888/app/config-schema.json");case 25:(V=t.sent)["x-display"]="tabs",e.schema=d.a.resolve(V,{"~$locale~":e.$i18n.locale===e.$i18n.defaultLocale?e.$i18n.locale:[e.$i18n.locale,e.$i18n.defaultLocale]});try{e.schemaValidate=A.compile(e.schema),e.compileError=null}catch(t){console.error(t),e.compileError=t.message}e.loading=!1;case 30:case"end":return t.stop()}}),t)})))()},reloadIframe:function(){var e=this;return Object(o.a)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.showPreview=!1,t.next=3,new Promise((function(e){return setTimeout(e,10)}));case 3:e.showPreview=!0;case 4:case"end":return t.stop()}}),t)})))()}}},S=O,I=(n(640),n(63)),V=n(642),j=n(127),N=n.n(j),L=n(651),F=n(358),E=n(328),D=n(653),R=n(660),T=n(656),P=n(322),M=n(654),G=n(655),component=Object(I.a)(S,(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("v-container",{staticClass:"pt-4",attrs:{fluid:""}},[n("v-row",[n("v-col",{attrs:{xs:"12",md:"6",lg:"4"}},[e.error?n("v-alert",{attrs:{color:"error"}},[e._v("\n "+e._s(e.error.message||e.error)+"\n ")]):e._e(),e._v(" "),n("v-row",{staticClass:"mb-2"},[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{fab:"",dark:"",small:"",color:"primary",loading:e.loading},on:{click:e.fetchInfo}},[n("v-icon",{attrs:{dark:""}},[e._v("\n mdi-refresh\n ")])],1)],1),e._v(" "),n("h2",{staticClass:"text-h6 mt-2"},[e._v("\n "+e._s(e.$t("config"))+"\n ")]),e._v(" "),n("v-form",{ref:"form",model:{value:e.formValid,callback:function(t){e.formValid=t},expression:"formValid"}},[n("v-alert",{attrs:{value:!!e.compileError,type:"error"}},[e._v("\n "+e._s(e.compileError)+"\n ")]),e._v(" "),n("v-alert",{attrs:{value:!!e.validationErrors&&e.formValid,type:"error"}},[e._v("\n Formulaire valide pourtant le modèle ne respecte pas le schéma:\n "),n("p",[e._v(e._s(e.validationErrors))])]),e._v(" "),e.schema&&e.editConfig?n("v-jsf",{attrs:{schema:e.schema,options:e.options},on:{change:e.validate},model:{value:e.editConfig,callback:function(t){e.editConfig=t},expression:"editConfig"}}):e._e()],1),e._v(" "),n("v-row",{staticClass:"ma-2"},[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{color:"warning"},on:{click:e.empty}},[e._v("\n Empty\n ")])],1),e._v(" "),e.meta?n("v-row",{staticClass:"mt-4"},[n("v-col",{staticClass:"app-meta"},[n("h2",{staticClass:"text-h6"},[e._v("\n "+e._s(e.$t("metadata"))+"\n ")]),e._v(" "),e.meta["application-name"]?n("p",[n("b",[e._v("application-name:")]),e._v(" "+e._s(e.meta["application-name"])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingApplicationName"))+"\n ")]),e._v(" "),e.meta.thumbnail?n("p",[n("b",[e._v("thumbnail:")]),e._v(" "),n("img",{attrs:{width:"25",src:e.meta.thumbnail.startsWith("http://")||e.meta.thumbnail.startsWith("https://")?e.meta.thumbnail:"http://localhost:5888/app/"+e.meta.thumbnail}})]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingThumbnail"))+"\n ")]),e._v(" "),e.meta.title&&e.meta.title[e.$i18n.locale]?n("p",[n("b",[e._v("title:")]),e._v(" "+e._s(e.meta.title[e.$i18n.locale])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingTitle",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta.description&&e.meta.description[e.$i18n.locale]?n("p",[n("b",[e._v("description:")]),e._v(" "+e._s(e.meta.description[e.$i18n.locale])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingDesc",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta.keywords&&e.meta.keywords[e.$i18n.locale]?n("p",[n("b",[e._v("keywords:")]),e._v(" "+e._s(e.meta.keywords[e.$i18n.locale])+"\n ")]):n("v-alert",{attrs:{type:"error",dense:""}},[e._v("\n "+e._s(e.$t("missingKeywords",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta["vocabulary-accept"]&&e.meta["vocabulary-accept"]?n("p",[n("b",[e._v("vocabulary-accept:")]),e._v(" "+e._s(e.meta["vocabulary-accept"])+"\n ")]):n("v-alert",{attrs:{type:"info",dense:""}},[e._v("\n "+e._s(e.$t("missingVocabAccept",{locale:e.$i18n.locale}))+"\n ")]),e._v(" "),e.meta["vocabulary-require"]&&e.meta["vocabulary-require"]?n("p",[n("b",[e._v("vocabulary-require:")]),e._v(" "+e._s(e.meta["vocabulary-require"])+"\n ")]):n("v-alert",{attrs:{type:"info",dense:""}},[e._v("\n "+e._s(e.$t("missingVocabRequire",{locale:e.$i18n.locale}))+"\n ")])],1)],1):e._e()],1),e._v(" "),n("v-col",{attrs:{xs:"12",md:"6",lg:"8"}},[n("v-row",{staticClass:"mb-2"},[n("v-spacer"),e._v(" "),n("screenshot-simulation"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{fab:"",dark:"",small:"",color:"primary"},on:{click:e.reloadIframe}},[n("v-icon",{attrs:{dark:""}},[e._v("\n mdi-refresh\n ")])],1),e._v(" "),n("lang-switcher")],1),e._v(" "),n("v-card",[e.showPreview?n("v-iframe",{attrs:{src:"http://localhost:5888/app?draft=true",log:e.iframeLog}}):e._e()],1)],1)],1)],1)}),[],!1,null,"a6a61bc6",null);"function"==typeof V.default&&Object(V.default)(component);t.default=component.exports;N()(component,{ScreenshotSimulation:n(312).default,LangSwitcher:n(357).default}),N()(component,{VAlert:L.a,VBtn:F.a,VCard:E.a,VCol:D.a,VContainer:R.a,VForm:T.a,VIcon:P.a,VRow:M.a,VSpacer:G.a})}}]);