@usecsv/vuejs 1.1.26 → 1.2.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.
@@ -1,7 +1,7 @@
1
1
  import Vue from 'vue';
2
2
 
3
3
  /*!
4
- * @usecsv/js v0.14.4
4
+ * @usecsv/js v0.15.0
5
5
  * (c) layercode
6
6
  * Released under the MIT License.
7
7
  */
@@ -682,7 +682,7 @@ var insertIframe = function (id, importerDisplay) {
682
682
  return iframe;
683
683
  };
684
684
  var useCsvPlugin = function (_a) {
685
- var importerKey = _a.importerKey, user = _a.user, metadata = _a.metadata, onData = _a.onData, onRecordsInitial = _a.onRecordsInitial, onRecordEdit = _a.onRecordEdit, _b = _a.importerDisplay, importerDisplay = _b === void 0 ? "modal" : _b, onClose = _a.onClose, theme = _a.theme, batchSize = _a.batchSize, sampleFileURL = _a.sampleFileURL, _c = _a.downloadExampleButton, downloadExampleButton = _c === void 0 ? true : _c, dynamicColumns = _a.dynamicColumns;
685
+ var importerKey = _a.importerKey, user = _a.user, metadata = _a.metadata, onData = _a.onData, onRecordsInitial = _a.onRecordsInitial, onRecordEdit = _a.onRecordEdit, _b = _a.importerDisplay, importerDisplay = _b === void 0 ? "modal" : _b, onClose = _a.onClose, theme = _a.theme, batchSize = _a.batchSize, sampleFileURL = _a.sampleFileURL, _c = _a.downloadExampleButton, downloadExampleButton = _c === void 0 ? true : _c, dynamicColumns = _a.dynamicColumns, defaultLanguage = _a.defaultLanguage;
686
686
  var id = "usecsv-".concat(Math.round(Math.random() * 100000000));
687
687
  return whenDomReady().then(function () {
688
688
  var iframe = insertIframe(id, importerDisplay);
@@ -726,6 +726,7 @@ var useCsvPlugin = function (_a) {
726
726
  sampleFileURL: sampleFileURL,
727
727
  downloadExampleButton: downloadExampleButton,
728
728
  dynamicColumns: dynamicColumns,
729
+ defaultLanguage: defaultLanguage,
729
730
  });
730
731
  });
731
732
  return iframeConnection;
@@ -747,7 +748,8 @@ var script = /*#__PURE__*/Vue.extend({
747
748
  batchSize: {},
748
749
  sampleFileURL: {},
749
750
  downloadExampleButton: {},
750
- dynamicColumns: {}
751
+ dynamicColumns: {},
752
+ defaultLanguage: {}
751
753
  },
752
754
  data() {
753
755
  return {
@@ -769,7 +771,8 @@ var script = /*#__PURE__*/Vue.extend({
769
771
  batchSize: this.batchSize,
770
772
  sampleFileURL: this.sampleFileURL,
771
773
  downloadExampleButton: this.downloadExampleButton,
772
- dynamicColumns: this.dynamicColumns
774
+ dynamicColumns: this.dynamicColumns,
775
+ defaultLanguage: this.defaultLanguage
773
776
  });
774
777
  },
775
778
  hasScopedSlot() {
@@ -935,14 +938,14 @@ var __vue_staticRenderFns__ = [];
935
938
  /* style */
936
939
  const __vue_inject_styles__ = function (inject) {
937
940
  if (!inject) return;
938
- inject("data-v-433de40e_0", {
939
- source: "#usecsv-button[data-v-433de40e]{background-color:#fff;color:#000;border:2px solid #000;border-radius:6px;padding:10px 15px;text-align:center;font-size:16px;cursor:pointer}",
941
+ inject("data-v-6d765bb0_0", {
942
+ source: "#usecsv-button[data-v-6d765bb0]{background-color:#fff;color:#000;border:2px solid #000;border-radius:6px;padding:10px 15px;text-align:center;font-size:16px;cursor:pointer}",
940
943
  map: undefined,
941
944
  media: undefined
942
945
  });
943
946
  };
944
947
  /* scoped */
945
- const __vue_scope_id__ = "data-v-433de40e";
948
+ const __vue_scope_id__ = "data-v-6d765bb0";
946
949
  /* module identifier */
947
950
  const __vue_module_identifier__ = undefined;
948
951
  /* functional template */
@@ -1,6 +1,6 @@
1
- var UseCSVButton=function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=t(e);function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,i,s,a=[],c=!0,d=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(o=i.call(n)).done)&&(a.push(o.value),a.length!==t);c=!0);}catch(e){d=!0,r=e}finally{try{if(!c&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(d)throw r}}return a}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return r(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 r(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}
1
+ var UseCSVButton=function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=t(e);function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,i,a,s=[],c=!0,d=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(o=i.call(n)).done)&&(s.push(o.value),s.length!==t);c=!0);}catch(e){d=!0,r=e}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(d)throw r}}return s}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return r(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 r(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}
2
2
  /*!
3
- * @usecsv/js v0.14.4
3
+ * @usecsv/js v0.15.0
4
4
  * (c) layercode
5
5
  * Released under the MIT License.
6
- */()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}var i=function(){return i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},i.apply(this,arguments)},s=[],a=[];function c(e,t){if(t=t||{},void 0===e)throw new Error("insert-css: You need to provide a CSS string. Usage: insertCss(cssString[, options]).");var n,o=!0===t.prepend?"prepend":"append",r=void 0!==t.container?t.container:document.querySelector("head"),i=s.indexOf(r);return-1===i&&(i=s.push(r)-1,a[i]={}),void 0!==a[i]&&void 0!==a[i][o]?n=a[i][o]:(n=a[i][o]=function(){var e=document.createElement("style");return e.setAttribute("type","text/css"),e}(),"prepend"===o?r.insertBefore(n,r.childNodes[0]):r.appendChild(n)),65279===e.charCodeAt(0)&&(e=e.substr(1,e.length)),n.styleSheet?n.styleSheet.cssText+=e:n.textContent+=e,n}var d,l,u,m,p,f=c;c.insertCss=f,function(e){e.Call="call",e.Reply="reply",e.Syn="syn",e.SynAck="synAck",e.Ack="ack"}(d||(d={})),function(e){e.Fulfilled="fulfilled",e.Rejected="rejected"}(l||(l={})),function(e){e.ConnectionDestroyed="ConnectionDestroyed",e.ConnectionTimeout="ConnectionTimeout",e.NoIframeSrc="NoIframeSrc"}(u||(u={})),function(e){e.DataCloneError="DataCloneError"}(m||(m={})),function(e){e.Message="message"}(p||(p={}));const h={"http:":"80","https:":"443"},v=/^(https?:)?\/\/([^/:]+)?(:(\d+))?/,y=["file:","data:"];const g=({name:e,message:t,stack:n})=>({name:e,message:t,stack:n});let b=0;var C=()=>++b;const E=e=>e?e.split("."):[],S=(e,t,n)=>{const o=E(t);return o.reduce(((e,t,r)=>(void 0===e[t]&&(e[t]={}),r===o.length-1&&(e[t]=n),e[t])),e),e},w=(e,t)=>{const n={};return Object.keys(e).forEach((o=>{const r=e[o],i=((e,t)=>{const n=E(t||"");return n.push(e),(e=>e.join("."))(n)})(o,t);"object"==typeof r&&Object.assign(n,w(r,i)),"function"==typeof r&&(n[i]=r)})),n};var R=(e,t,n,o,r)=>{const{localName:i,local:s,remote:a,originForSending:c,originForReceiving:m}=t;let f=!1;r(`${i}: Connecting call sender`);const h=e=>(...t)=>{let n;r(`${i}: Sending ${e}() call`);try{a.closed&&(n=!0)}catch(e){n=!0}if(n&&o(),f){const t=new Error(`Unable to send ${e}() call due to destroyed connection`);throw t.code=u.ConnectionDestroyed,t}return new Promise(((n,o)=>{const u=C(),f=t=>{if(t.source!==a||t.data.penpal!==d.Reply||t.data.id!==u)return;if("*"!==m&&t.origin!==m)return void r(`${i} received message from origin ${t.origin} which did not match expected origin ${m}`);const c=t.data;r(`${i}: Received ${e}() reply`),s.removeEventListener(p.Message,f);let h=c.returnValue;c.returnValueIsError&&(h=(e=>{const t=new Error;return Object.keys(e).forEach((n=>t[n]=e[n])),t})(h)),(c.resolution===l.Fulfilled?n:o)(h)};s.addEventListener(p.Message,f);const h={penpal:d.Call,id:u,methodName:e,args:t};a.postMessage(h,c)}))},v=n.reduce(((e,t)=>(e[t]=h(t),e)),{});return Object.assign(e,(e=>{const t={};for(const n in e)S(t,n,e[n]);return t})(v)),()=>{f=!0}},$=(e,t,n,o,r)=>{const{destroy:i,onDestroy:s}=o;let a,c;const u={};return o=>{if("*"!==t&&o.origin!==t)return void r(`Parent: Handshake - Received ACK message from origin ${o.origin} which did not match expected origin ${t}`);r("Parent: Handshake - Received ACK");const f={localName:"Parent",local:window,remote:o.source,originForSending:n,originForReceiving:t};a&&a(),a=((e,t,n)=>{const{localName:o,local:r,remote:i,originForSending:s,originForReceiving:a}=e;let c=!1;const u=e=>{if(e.source!==i||e.data.penpal!==d.Call)return;if("*"!==a&&e.origin!==a)return void n(`${o} received message from origin ${e.origin} which did not match expected origin ${a}`);const r=e.data,{methodName:u,args:p,id:f}=r;n(`${o}: Received ${u}() call`);const h=e=>t=>{if(n(`${o}: Sending ${u}() reply`),c)return void n(`${o}: Unable to send ${u}() reply due to destroyed connection`);const r={penpal:d.Reply,id:f,resolution:e,returnValue:t};e===l.Rejected&&t instanceof Error&&(r.returnValue=g(t),r.returnValueIsError=!0);try{i.postMessage(r,s)}catch(e){if(e.name===m.DataCloneError){const t={penpal:d.Reply,id:f,resolution:l.Rejected,returnValue:g(e),returnValueIsError:!0};i.postMessage(t,s)}throw e}};new Promise((e=>e(t[u].apply(t,p)))).then(h(l.Fulfilled),h(l.Rejected))};return r.addEventListener(p.Message,u),()=>{c=!0,r.removeEventListener(p.Message,u)}})(f,e,r),s(a),c&&c.forEach((e=>{delete u[e]})),c=o.data.methodNames;const h=R(u,f,c,i,r);return s(h),u}};var x=e=>{let{iframe:t,methods:n={},childOrigin:o,timeout:r,debug:i=!1}=e;const s=(e=>(...t)=>{e&&console.log("[Penpal]",...t)})(i),a=((e,t)=>{const n=[];let o=!1;return{destroy(r){o||(o=!0,t(`${e}: Destroying connection`),n.forEach((e=>{e(r)})))},onDestroy(e){o?e():n.push(e)}}})("Parent",s),{onDestroy:c,destroy:l}=a;o||((e=>{if(!e.src&&!e.srcdoc){const e=new Error("Iframe must have src or srcdoc property defined.");throw e.code=u.NoIframeSrc,e}})(t),o=(e=>{if(e&&y.find((t=>e.startsWith(t))))return"null";const t=document.location,n=v.exec(e);let o,r,i;return n?(o=n[1]?n[1]:t.protocol,r=n[2],i=n[4]):(o=t.protocol,r=t.hostname,i=t.port),`${o}//${r}${i&&i!==h[o]?`:${i}`:""}`})(t.src));const m="null"===o?"*":o,f=w(n),g=((e,t,n,o)=>r=>{if(!r.source)return;if("*"!==n&&r.origin!==n)return void e(`Parent: Handshake - Received SYN message from origin ${r.origin} which did not match expected origin ${n}`);e("Parent: Handshake - Received SYN, responding with SYN-ACK");const i={penpal:d.SynAck,methodNames:Object.keys(t)};r.source.postMessage(i,o)})(s,f,o,m),b=$(f,o,m,a,s),C=new Promise(((e,n)=>{const o=((e,t)=>{let n;return void 0!==e&&(n=window.setTimeout((()=>{const n=new Error(`Connection timed out after ${e}ms`);n.code=u.ConnectionTimeout,t(n)}),e)),()=>{clearTimeout(n)}})(r,l),i=n=>{if(n.source===t.contentWindow&&n.data)if(n.data.penpal!==d.Syn)if(n.data.penpal!==d.Ack);else{const t=b(n);t&&(o(),e(t))}else g(n)};window.addEventListener(p.Message,i),s("Parent: Awaiting handshake"),((e,t)=>{const{destroy:n,onDestroy:o}=t,r=setInterval((()=>{e.isConnected||(clearInterval(r),n())}),6e4);o((()=>{clearInterval(r)}))})(t,a),c((e=>{window.removeEventListener(p.Message,i),e&&n(e)}))}));return{promise:C,destroy(){l()}}},_=["interactive","complete"],j=function(e,t){return new Promise((function(n){e&&"function"!=typeof e&&(t=e,e=null),t=t||window.document;var o=function(){return n(void(e&&setTimeout(e)))};-1!==_.indexOf(t.readyState)?o():t.addEventListener("DOMContentLoaded",o)}))};j.resume=function(e){return function(t){return j(e).then((function(){return t}))}};var I=function(e){var t=e.importerKey,n=e.user,o=e.metadata,r=e.onData,s=e.onRecordsInitial,a=e.onRecordEdit,c=e.importerDisplay,d=void 0===c?"modal":c,l=e.onClose,u=e.theme,m=e.batchSize,p=e.sampleFileURL,h=e.downloadExampleButton,v=void 0===h||h,y=e.dynamicColumns,g="usecsv-".concat(Math.round(1e8*Math.random()));return j().then((function(){var e=function(e,t){var n=document.getElementById("usecsv-importer-inline-wrapper");f("\n ".concat("modal"!==t&&n?"":".usecsv_container { position: fixed; top: 0px; bottom: 0; right: 0; left: 0; z-index: 100000; }","\n .usecsv_container iframe {\n width: 100%;\n height: 100%;\n position: absolute;\n border-width: 0;\n }\n .usecsv_container {\n overflow: hidden;\n overscroll-behavior-x: none;\n }\n")),document.body.insertAdjacentHTML("beforeend","<div id=".concat(e,' class="usecsv_container loading"></div>'));var o=document.createElement("iframe");o.setAttribute("src","https://app.usecsv.com/importer");var r=document.getElementById(e);return null==r||r.appendChild(o),"inline"===t&&n&&(null==n||n.appendChild(r)),o}(g,d),c=function(){var e;null===(e=document.getElementById(g))||void 0===e||e.remove()},h=x({iframe:e,methods:i(i(i(i({closeIframe:c},r?{onData:function(e){return r(e,c)}}:{}),s?{onRecordsInitial:s}:{}),a?{onRecordEdit:a}:{}),l?{onClose:l}:{})});return h.promise.then((function(e){var r;null===(r=document.getElementById(g))||void 0===r||r.classList.remove("loading"),e.setParams&&e.setParams({importerKey:t,user:n,metadata:o,importerDisplay:d,theme:u,batchSize:m,sampleFileURL:p,downloadExampleButton:v,dynamicColumns:y})})),h}))},D=n.default.extend({name:"usecsv-button",props:{importerKey:{},user:{},metadata:{},onData:{},importerDisplay:{},onRecordsInitial:{},onRecordEdit:{},onClose:{},theme:{},batchSize:{},sampleFileURL:{},downloadExampleButton:{},dynamicColumns:{}},data:function(){return{hasSlot:!!this.$slots.default}},methods:{openModal:function(){I({importerKey:this.importerKey,user:this.user,metadata:this.metadata,onData:this.onData,importerDisplay:this.importerDisplay,onRecordsInitial:this.onRecordsInitial,onRecordEdit:this.onRecordEdit,onClose:this.onClose,theme:this.theme,batchSize:this.batchSize,sampleFileURL:this.sampleFileURL,downloadExampleButton:this.downloadExampleButton,dynamicColumns:this.dynamicColumns})},hasScopedSlot:function(){return"normalized"===(this.$scopedSlots.default&&this.$scopedSlots.default.name)}}});function A(e,t,n,o,r,i,s,a,c,d){"boolean"!=typeof s&&(c=a,a=s,s=!1);const l="function"==typeof n?n.options:n;let u;if(e&&e.render&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns,l._compiled=!0,r&&(l.functional=!0)),o&&(l._scopeId=o),i?(u=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),t&&t.call(this,c(e)),e&&e._registeredComponents&&e._registeredComponents.add(i)},l._ssrRegister=u):t&&(u=s?function(e){t.call(this,d(e,this.$root.$options.shadowRoot))}:function(e){t.call(this,a(e))}),u)if(l.functional){const e=l.render;l.render=function(t,n){return u.call(n),e(t,n)}}else{const e=l.beforeCreate;l.beforeCreate=e?[].concat(e,u):[u]}return n}const M="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function O(e){return(e,t)=>function(e,t){const n=M?t.media||"default":e,o=k[n]||(k[n]={ids:new Set,styles:[]});if(!o.ids.has(e)){o.ids.add(e);let n=t.source;if(t.map&&(n+="\n/*# sourceURL="+t.map.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t.map))))+" */"),o.element||(o.element=document.createElement("style"),o.element.type="text/css",t.media&&o.element.setAttribute("media",t.media),void 0===N&&(N=document.head||document.getElementsByTagName("head")[0]),N.appendChild(o.element)),"styleSheet"in o.element)o.styles.push(n),o.element.styleSheet.cssText=o.styles.filter(Boolean).join("\n");else{const e=o.ids.size-1,t=document.createTextNode(n),r=o.element.childNodes;r[e]&&o.element.removeChild(r[e]),r.length?o.element.insertBefore(t,r[e]):o.element.appendChild(t)}}}(e,t)}let N;const k={};var L=A({render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"usecsv"},[e.hasScopedSlot()?n("div",[e._t("default",null,{openModal:e.openModal})],2):n("div",[n("button",{attrs:{type:"button",id:"usecsv-button"},on:{click:e.openModal}},[e._t("default",(function(){return[e._v(" open usecsv ")]}))],2)])])},staticRenderFns:[]},(function(e){e&&e("data-v-433de40e_0",{source:"#usecsv-button[data-v-433de40e]{background-color:#fff;color:#000;border:2px solid #000;border-radius:6px;padding:10px 15px;text-align:center;font-size:16px;cursor:pointer}",map:void 0,media:void 0})}),D,"data-v-433de40e",false,undefined,!1,O,void 0,void 0),F=function(){var e=L;return e.install=function(t){t.component("usecsv-button",e)},e}(),T=Object.freeze({__proto__:null,default:F});return Object.entries(T).forEach((function(e){var t=o(e,2),n=t[0],r=t[1];"default"!==n&&(F[n]=r)})),F}(Vue);
6
+ */()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}var i=function(){return i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},i.apply(this,arguments)},a=[],s=[];function c(e,t){if(t=t||{},void 0===e)throw new Error("insert-css: You need to provide a CSS string. Usage: insertCss(cssString[, options]).");var n,o=!0===t.prepend?"prepend":"append",r=void 0!==t.container?t.container:document.querySelector("head"),i=a.indexOf(r);return-1===i&&(i=a.push(r)-1,s[i]={}),void 0!==s[i]&&void 0!==s[i][o]?n=s[i][o]:(n=s[i][o]=function(){var e=document.createElement("style");return e.setAttribute("type","text/css"),e}(),"prepend"===o?r.insertBefore(n,r.childNodes[0]):r.appendChild(n)),65279===e.charCodeAt(0)&&(e=e.substr(1,e.length)),n.styleSheet?n.styleSheet.cssText+=e:n.textContent+=e,n}var d,l,u,m,p,f=c;c.insertCss=f,function(e){e.Call="call",e.Reply="reply",e.Syn="syn",e.SynAck="synAck",e.Ack="ack"}(d||(d={})),function(e){e.Fulfilled="fulfilled",e.Rejected="rejected"}(l||(l={})),function(e){e.ConnectionDestroyed="ConnectionDestroyed",e.ConnectionTimeout="ConnectionTimeout",e.NoIframeSrc="NoIframeSrc"}(u||(u={})),function(e){e.DataCloneError="DataCloneError"}(m||(m={})),function(e){e.Message="message"}(p||(p={}));const h={"http:":"80","https:":"443"},v=/^(https?:)?\/\/([^/:]+)?(:(\d+))?/,g=["file:","data:"];const y=({name:e,message:t,stack:n})=>({name:e,message:t,stack:n});let b=0;var C=()=>++b;const E=e=>e?e.split("."):[],S=(e,t,n)=>{const o=E(t);return o.reduce(((e,t,r)=>(void 0===e[t]&&(e[t]={}),r===o.length-1&&(e[t]=n),e[t])),e),e},w=(e,t)=>{const n={};return Object.keys(e).forEach((o=>{const r=e[o],i=((e,t)=>{const n=E(t||"");return n.push(e),(e=>e.join("."))(n)})(o,t);"object"==typeof r&&Object.assign(n,w(r,i)),"function"==typeof r&&(n[i]=r)})),n};var R=(e,t,n,o,r)=>{const{localName:i,local:a,remote:s,originForSending:c,originForReceiving:m}=t;let f=!1;r(`${i}: Connecting call sender`);const h=e=>(...t)=>{let n;r(`${i}: Sending ${e}() call`);try{s.closed&&(n=!0)}catch(e){n=!0}if(n&&o(),f){const t=new Error(`Unable to send ${e}() call due to destroyed connection`);throw t.code=u.ConnectionDestroyed,t}return new Promise(((n,o)=>{const u=C(),f=t=>{if(t.source!==s||t.data.penpal!==d.Reply||t.data.id!==u)return;if("*"!==m&&t.origin!==m)return void r(`${i} received message from origin ${t.origin} which did not match expected origin ${m}`);const c=t.data;r(`${i}: Received ${e}() reply`),a.removeEventListener(p.Message,f);let h=c.returnValue;c.returnValueIsError&&(h=(e=>{const t=new Error;return Object.keys(e).forEach((n=>t[n]=e[n])),t})(h)),(c.resolution===l.Fulfilled?n:o)(h)};a.addEventListener(p.Message,f);const h={penpal:d.Call,id:u,methodName:e,args:t};s.postMessage(h,c)}))},v=n.reduce(((e,t)=>(e[t]=h(t),e)),{});return Object.assign(e,(e=>{const t={};for(const n in e)S(t,n,e[n]);return t})(v)),()=>{f=!0}},$=(e,t,n,o,r)=>{const{destroy:i,onDestroy:a}=o;let s,c;const u={};return o=>{if("*"!==t&&o.origin!==t)return void r(`Parent: Handshake - Received ACK message from origin ${o.origin} which did not match expected origin ${t}`);r("Parent: Handshake - Received ACK");const f={localName:"Parent",local:window,remote:o.source,originForSending:n,originForReceiving:t};s&&s(),s=((e,t,n)=>{const{localName:o,local:r,remote:i,originForSending:a,originForReceiving:s}=e;let c=!1;const u=e=>{if(e.source!==i||e.data.penpal!==d.Call)return;if("*"!==s&&e.origin!==s)return void n(`${o} received message from origin ${e.origin} which did not match expected origin ${s}`);const r=e.data,{methodName:u,args:p,id:f}=r;n(`${o}: Received ${u}() call`);const h=e=>t=>{if(n(`${o}: Sending ${u}() reply`),c)return void n(`${o}: Unable to send ${u}() reply due to destroyed connection`);const r={penpal:d.Reply,id:f,resolution:e,returnValue:t};e===l.Rejected&&t instanceof Error&&(r.returnValue=y(t),r.returnValueIsError=!0);try{i.postMessage(r,a)}catch(e){if(e.name===m.DataCloneError){const t={penpal:d.Reply,id:f,resolution:l.Rejected,returnValue:y(e),returnValueIsError:!0};i.postMessage(t,a)}throw e}};new Promise((e=>e(t[u].apply(t,p)))).then(h(l.Fulfilled),h(l.Rejected))};return r.addEventListener(p.Message,u),()=>{c=!0,r.removeEventListener(p.Message,u)}})(f,e,r),a(s),c&&c.forEach((e=>{delete u[e]})),c=o.data.methodNames;const h=R(u,f,c,i,r);return a(h),u}};var x=e=>{let{iframe:t,methods:n={},childOrigin:o,timeout:r,debug:i=!1}=e;const a=(e=>(...t)=>{e&&console.log("[Penpal]",...t)})(i),s=((e,t)=>{const n=[];let o=!1;return{destroy(r){o||(o=!0,t(`${e}: Destroying connection`),n.forEach((e=>{e(r)})))},onDestroy(e){o?e():n.push(e)}}})("Parent",a),{onDestroy:c,destroy:l}=s;o||((e=>{if(!e.src&&!e.srcdoc){const e=new Error("Iframe must have src or srcdoc property defined.");throw e.code=u.NoIframeSrc,e}})(t),o=(e=>{if(e&&g.find((t=>e.startsWith(t))))return"null";const t=document.location,n=v.exec(e);let o,r,i;return n?(o=n[1]?n[1]:t.protocol,r=n[2],i=n[4]):(o=t.protocol,r=t.hostname,i=t.port),`${o}//${r}${i&&i!==h[o]?`:${i}`:""}`})(t.src));const m="null"===o?"*":o,f=w(n),y=((e,t,n,o)=>r=>{if(!r.source)return;if("*"!==n&&r.origin!==n)return void e(`Parent: Handshake - Received SYN message from origin ${r.origin} which did not match expected origin ${n}`);e("Parent: Handshake - Received SYN, responding with SYN-ACK");const i={penpal:d.SynAck,methodNames:Object.keys(t)};r.source.postMessage(i,o)})(a,f,o,m),b=$(f,o,m,s,a),C=new Promise(((e,n)=>{const o=((e,t)=>{let n;return void 0!==e&&(n=window.setTimeout((()=>{const n=new Error(`Connection timed out after ${e}ms`);n.code=u.ConnectionTimeout,t(n)}),e)),()=>{clearTimeout(n)}})(r,l),i=n=>{if(n.source===t.contentWindow&&n.data)if(n.data.penpal!==d.Syn)if(n.data.penpal!==d.Ack);else{const t=b(n);t&&(o(),e(t))}else y(n)};window.addEventListener(p.Message,i),a("Parent: Awaiting handshake"),((e,t)=>{const{destroy:n,onDestroy:o}=t,r=setInterval((()=>{e.isConnected||(clearInterval(r),n())}),6e4);o((()=>{clearInterval(r)}))})(t,s),c((e=>{window.removeEventListener(p.Message,i),e&&n(e)}))}));return{promise:C,destroy(){l()}}},_=["interactive","complete"],j=function(e,t){return new Promise((function(n){e&&"function"!=typeof e&&(t=e,e=null),t=t||window.document;var o=function(){return n(void(e&&setTimeout(e)))};-1!==_.indexOf(t.readyState)?o():t.addEventListener("DOMContentLoaded",o)}))};j.resume=function(e){return function(t){return j(e).then((function(){return t}))}};var I=function(e){var t=e.importerKey,n=e.user,o=e.metadata,r=e.onData,a=e.onRecordsInitial,s=e.onRecordEdit,c=e.importerDisplay,d=void 0===c?"modal":c,l=e.onClose,u=e.theme,m=e.batchSize,p=e.sampleFileURL,h=e.downloadExampleButton,v=void 0===h||h,g=e.dynamicColumns,y=e.defaultLanguage,b="usecsv-".concat(Math.round(1e8*Math.random()));return j().then((function(){var e=function(e,t){var n=document.getElementById("usecsv-importer-inline-wrapper");f("\n ".concat("modal"!==t&&n?"":".usecsv_container { position: fixed; top: 0px; bottom: 0; right: 0; left: 0; z-index: 100000; }","\n .usecsv_container iframe {\n width: 100%;\n height: 100%;\n position: absolute;\n border-width: 0;\n }\n .usecsv_container {\n overflow: hidden;\n overscroll-behavior-x: none;\n }\n")),document.body.insertAdjacentHTML("beforeend","<div id=".concat(e,' class="usecsv_container loading"></div>'));var o=document.createElement("iframe");o.setAttribute("src","https://app.usecsv.com/importer");var r=document.getElementById(e);return null==r||r.appendChild(o),"inline"===t&&n&&(null==n||n.appendChild(r)),o}(b,d),c=function(){var e;null===(e=document.getElementById(b))||void 0===e||e.remove()},h=x({iframe:e,methods:i(i(i(i({closeIframe:c},r?{onData:function(e){return r(e,c)}}:{}),a?{onRecordsInitial:a}:{}),s?{onRecordEdit:s}:{}),l?{onClose:l}:{})});return h.promise.then((function(e){var r;null===(r=document.getElementById(b))||void 0===r||r.classList.remove("loading"),e.setParams&&e.setParams({importerKey:t,user:n,metadata:o,importerDisplay:d,theme:u,batchSize:m,sampleFileURL:p,downloadExampleButton:v,dynamicColumns:g,defaultLanguage:y})})),h}))},L=n.default.extend({name:"usecsv-button",props:{importerKey:{},user:{},metadata:{},onData:{},importerDisplay:{},onRecordsInitial:{},onRecordEdit:{},onClose:{},theme:{},batchSize:{},sampleFileURL:{},downloadExampleButton:{},dynamicColumns:{},defaultLanguage:{}},data:function(){return{hasSlot:!!this.$slots.default}},methods:{openModal:function(){I({importerKey:this.importerKey,user:this.user,metadata:this.metadata,onData:this.onData,importerDisplay:this.importerDisplay,onRecordsInitial:this.onRecordsInitial,onRecordEdit:this.onRecordEdit,onClose:this.onClose,theme:this.theme,batchSize:this.batchSize,sampleFileURL:this.sampleFileURL,downloadExampleButton:this.downloadExampleButton,dynamicColumns:this.dynamicColumns,defaultLanguage:this.defaultLanguage})},hasScopedSlot:function(){return"normalized"===(this.$scopedSlots.default&&this.$scopedSlots.default.name)}}});function D(e,t,n,o,r,i,a,s,c,d){"boolean"!=typeof a&&(c=s,s=a,a=!1);const l="function"==typeof n?n.options:n;let u;if(e&&e.render&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns,l._compiled=!0,r&&(l.functional=!0)),o&&(l._scopeId=o),i?(u=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),t&&t.call(this,c(e)),e&&e._registeredComponents&&e._registeredComponents.add(i)},l._ssrRegister=u):t&&(u=a?function(e){t.call(this,d(e,this.$root.$options.shadowRoot))}:function(e){t.call(this,s(e))}),u)if(l.functional){const e=l.render;l.render=function(t,n){return u.call(n),e(t,n)}}else{const e=l.beforeCreate;l.beforeCreate=e?[].concat(e,u):[u]}return n}const A="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function M(e){return(e,t)=>function(e,t){const n=A?t.media||"default":e,o=N[n]||(N[n]={ids:new Set,styles:[]});if(!o.ids.has(e)){o.ids.add(e);let n=t.source;if(t.map&&(n+="\n/*# sourceURL="+t.map.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t.map))))+" */"),o.element||(o.element=document.createElement("style"),o.element.type="text/css",t.media&&o.element.setAttribute("media",t.media),void 0===O&&(O=document.head||document.getElementsByTagName("head")[0]),O.appendChild(o.element)),"styleSheet"in o.element)o.styles.push(n),o.element.styleSheet.cssText=o.styles.filter(Boolean).join("\n");else{const e=o.ids.size-1,t=document.createTextNode(n),r=o.element.childNodes;r[e]&&o.element.removeChild(r[e]),r.length?o.element.insertBefore(t,r[e]):o.element.appendChild(t)}}}(e,t)}let O;const N={};var k=D({render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"usecsv"},[e.hasScopedSlot()?n("div",[e._t("default",null,{openModal:e.openModal})],2):n("div",[n("button",{attrs:{type:"button",id:"usecsv-button"},on:{click:e.openModal}},[e._t("default",(function(){return[e._v(" open usecsv ")]}))],2)])])},staticRenderFns:[]},(function(e){e&&e("data-v-6d765bb0_0",{source:"#usecsv-button[data-v-6d765bb0]{background-color:#fff;color:#000;border:2px solid #000;border-radius:6px;padding:10px 15px;text-align:center;font-size:16px;cursor:pointer}",map:void 0,media:void 0})}),L,"data-v-6d765bb0",false,undefined,!1,M,void 0,void 0),F=function(){var e=k;return e.install=function(t){t.component("usecsv-button",e)},e}(),T=Object.freeze({__proto__:null,default:F});return Object.entries(T).forEach((function(e){var t=o(e,2),n=t[0],r=t[1];"default"!==n&&(F[n]=r)})),F}(Vue);
@@ -47,7 +47,7 @@ function _arrayLikeToArray(arr, len) {
47
47
  function _nonIterableRest() {
48
48
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
49
49
  }/*!
50
- * @usecsv/js v0.14.4
50
+ * @usecsv/js v0.15.0
51
51
  * (c) layercode
52
52
  * Released under the MIT License.
53
53
  */
@@ -728,7 +728,7 @@ var insertIframe = function (id, importerDisplay) {
728
728
  return iframe;
729
729
  };
730
730
  var useCsvPlugin = function (_a) {
731
- var importerKey = _a.importerKey, user = _a.user, metadata = _a.metadata, onData = _a.onData, onRecordsInitial = _a.onRecordsInitial, onRecordEdit = _a.onRecordEdit, _b = _a.importerDisplay, importerDisplay = _b === void 0 ? "modal" : _b, onClose = _a.onClose, theme = _a.theme, batchSize = _a.batchSize, sampleFileURL = _a.sampleFileURL, _c = _a.downloadExampleButton, downloadExampleButton = _c === void 0 ? true : _c, dynamicColumns = _a.dynamicColumns;
731
+ var importerKey = _a.importerKey, user = _a.user, metadata = _a.metadata, onData = _a.onData, onRecordsInitial = _a.onRecordsInitial, onRecordEdit = _a.onRecordEdit, _b = _a.importerDisplay, importerDisplay = _b === void 0 ? "modal" : _b, onClose = _a.onClose, theme = _a.theme, batchSize = _a.batchSize, sampleFileURL = _a.sampleFileURL, _c = _a.downloadExampleButton, downloadExampleButton = _c === void 0 ? true : _c, dynamicColumns = _a.dynamicColumns, defaultLanguage = _a.defaultLanguage;
732
732
  var id = "usecsv-".concat(Math.round(Math.random() * 100000000));
733
733
  return whenDomReady().then(function () {
734
734
  var iframe = insertIframe(id, importerDisplay);
@@ -772,6 +772,7 @@ var useCsvPlugin = function (_a) {
772
772
  sampleFileURL: sampleFileURL,
773
773
  downloadExampleButton: downloadExampleButton,
774
774
  dynamicColumns: dynamicColumns,
775
+ defaultLanguage: defaultLanguage,
775
776
  });
776
777
  });
777
778
  return iframeConnection;
@@ -792,7 +793,8 @@ var useCsvPlugin = function (_a) {
792
793
  batchSize: {},
793
794
  sampleFileURL: {},
794
795
  downloadExampleButton: {},
795
- dynamicColumns: {}
796
+ dynamicColumns: {},
797
+ defaultLanguage: {}
796
798
  },
797
799
  data: function data() {
798
800
  return {
@@ -814,7 +816,8 @@ var useCsvPlugin = function (_a) {
814
816
  batchSize: this.batchSize,
815
817
  sampleFileURL: this.sampleFileURL,
816
818
  downloadExampleButton: this.downloadExampleButton,
817
- dynamicColumns: this.dynamicColumns
819
+ dynamicColumns: this.dynamicColumns,
820
+ defaultLanguage: this.defaultLanguage
818
821
  });
819
822
  },
820
823
  hasScopedSlot: function hasScopedSlot() {
@@ -944,9 +947,9 @@ var __vue_render__ = function __vue_render__() {
944
947
  var _c = _vm._self._c || _h;
945
948
  return _c('div', {
946
949
  staticClass: "usecsv"
947
- }, [_vm.hasScopedSlot() ? _vm._ssrNode("<div data-v-433de40e>", "</div>", [_vm._t("default", null, {
950
+ }, [_vm.hasScopedSlot() ? _vm._ssrNode("<div data-v-6d765bb0>", "</div>", [_vm._t("default", null, {
948
951
  "openModal": _vm.openModal
949
- })], 2) : _vm._ssrNode("<div data-v-433de40e>", "</div>", [_vm._ssrNode("<button type=\"button\" id=\"usecsv-button\" data-v-433de40e>", "</button>", [_vm._t("default", function () {
952
+ })], 2) : _vm._ssrNode("<div data-v-6d765bb0>", "</div>", [_vm._ssrNode("<button type=\"button\" id=\"usecsv-button\" data-v-6d765bb0>", "</button>", [_vm._t("default", function () {
950
953
  return [_vm._v(" open usecsv ")];
951
954
  })], 2)])]);
952
955
  };
@@ -955,16 +958,16 @@ var __vue_staticRenderFns__ = [];
955
958
  /* style */
956
959
  var __vue_inject_styles__ = function __vue_inject_styles__(inject) {
957
960
  if (!inject) return;
958
- inject("data-v-433de40e_0", {
959
- source: "#usecsv-button[data-v-433de40e]{background-color:#fff;color:#000;border:2px solid #000;border-radius:6px;padding:10px 15px;text-align:center;font-size:16px;cursor:pointer}",
961
+ inject("data-v-6d765bb0_0", {
962
+ source: "#usecsv-button[data-v-6d765bb0]{background-color:#fff;color:#000;border:2px solid #000;border-radius:6px;padding:10px 15px;text-align:center;font-size:16px;cursor:pointer}",
960
963
  map: undefined,
961
964
  media: undefined
962
965
  });
963
966
  };
964
967
  /* scoped */
965
- var __vue_scope_id__ = "data-v-433de40e";
968
+ var __vue_scope_id__ = "data-v-6d765bb0";
966
969
  /* module identifier */
967
- var __vue_module_identifier__ = "data-v-433de40e";
970
+ var __vue_module_identifier__ = "data-v-6d765bb0";
968
971
  /* functional template */
969
972
  var __vue_is_functional_template__ = false;
970
973
  /* style inject shadow dom */
@@ -18,5 +18,6 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
18
18
  sampleFileURL?: string | undefined;
19
19
  downloadExampleButton?: boolean | undefined;
20
20
  dynamicColumns?: import("@usecsv/js/build/types/lib/types").DynamicColumnsType | undefined;
21
+ defaultLanguage?: import("@usecsv/js/build/types/lib/types").Language | undefined;
21
22
  }, {}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin>;
22
23
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@usecsv/vuejs",
3
- "version": "1.1.26",
3
+ "version": "1.2.0",
4
4
  "description": "",
5
5
  "main": "dist/UseCSVButton.ssr.js",
6
6
  "browser": "dist/UseCSVButton.esm.js",
@@ -24,7 +24,7 @@
24
24
  "prepublishOnly": "yarn build"
25
25
  },
26
26
  "dependencies": {
27
- "@usecsv/js": "^0.14.4"
27
+ "@usecsv/js": "^0.15.0"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@babel/core": "^7.21.8",
@@ -37,10 +37,10 @@
37
37
  "@rollup/plugin-replace": "^5.0.2",
38
38
  "@rushstack/eslint-patch": "^1.2.0",
39
39
  "@semantic-release/changelog": "^6.0.3",
40
- "@semantic-release/commit-analyzer": "^10.0.1",
40
+ "@semantic-release/commit-analyzer": "^10.0.4",
41
41
  "@semantic-release/git": "^10.0.1",
42
42
  "@semantic-release/github": "^9.0.4",
43
- "@semantic-release/release-notes-generator": "^11.0.4",
43
+ "@semantic-release/release-notes-generator": "^11.0.7",
44
44
  "@vue/cli-plugin-babel": "^5.0.8",
45
45
  "@vue/cli-plugin-typescript": "^5.0.8",
46
46
  "@vue/cli-service": "^5.0.8",
@@ -55,7 +55,7 @@
55
55
  "rollup-plugin-terser": "^7.0.2",
56
56
  "rollup-plugin-typescript2": "^0.34.1",
57
57
  "rollup-plugin-vue": "^5.1.9",
58
- "semantic-release": "^21.0.7",
58
+ "semantic-release": "^21.1.1",
59
59
  "ttypescript": "^1.5.15",
60
60
  "typescript": "<4.8",
61
61
  "vue": "^2.6.14",
@@ -25,6 +25,7 @@ export default /*#__PURE__*/ Vue.extend<
25
25
  sampleFileURL: {},
26
26
  downloadExampleButton: {},
27
27
  dynamicColumns: {},
28
+ defaultLanguage: {},
28
29
  },
29
30
  data() {
30
31
  return {
@@ -47,6 +48,7 @@ export default /*#__PURE__*/ Vue.extend<
47
48
  sampleFileURL: this.sampleFileURL,
48
49
  downloadExampleButton: this.downloadExampleButton,
49
50
  dynamicColumns: this.dynamicColumns,
51
+ defaultLanguage: this.defaultLanguage,
50
52
  });
51
53
  },
52
54
  hasScopedSlot(): boolean {