@ikas/storefront-cmd 4.0.0-alpha.5 → 4.0.0-alpha.50

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/build/ikas.cjs CHANGED
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var e=require("path"),t=require("fs"),n=require("@ikas/storefront-models");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=o(e),s=o(t),a=function(){return a=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},a.apply(this,arguments)};function i(e,t,n,o){return new(n||(n=Promise))((function(r,s){function a(e){try{c(o.next(e))}catch(e){s(e)}}function i(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,i)}c((o=o.apply(e,t||[])).next())}))}function c(e,t){var n,o,r,s,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function i(s){return function(i){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,o&&(r=2&s[0]?o.return:s[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;switch(o=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(r=a.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){a.label=s[1];break}if(6===s[0]&&a.label<r[1]){a.label=r[1],r=s;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(s);break}r[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,i])}}}var p="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},u=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,l=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,f="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",h="[\\ud800-\\udfff]",m="["+f+"]",d="[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]",g="\\d+",T="[\\u2700-\\u27bf]",y="[a-z\\xdf-\\xf6\\xf8-\\xff]",I="[^\\ud800-\\udfff"+f+g+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",k="\\ud83c[\\udffb-\\udfff]",v="[^\\ud800-\\udfff]",C="(?:\\ud83c[\\udde6-\\uddff]){2}",_="[\\ud800-\\udbff][\\udc00-\\udfff]",b="[A-Z\\xc0-\\xd6\\xd8-\\xde]",P="(?:"+y+"|"+I+")",x="(?:"+b+"|"+I+")",E="(?:"+d+"|"+k+")"+"?",N="[\\ufe0e\\ufe0f]?"+E+("(?:\\u200d(?:"+[v,C,_].join("|")+")[\\ufe0e\\ufe0f]?"+E+")*"),S="(?:"+[T,C,_].join("|")+")"+N,O="(?:"+[v+d+"?",d,C,_,h].join("|")+")",L=RegExp("['’]","g"),A=RegExp(d,"g"),w=RegExp(k+"(?="+k+")|"+O+N,"g"),D=RegExp([b+"?"+y+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[m,b,"$"].join("|")+")",x+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[m,b+P,"$"].join("|")+")",b+"?"+P+"+(?:['’](?:d|ll|m|re|s|t|ve))?",b+"+(?:['’](?:D|LL|M|RE|S|T|VE))?",g,S].join("|"),"g"),J=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0\\ufe0e\\ufe0f]"),R=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,j="object"==typeof p&&p&&p.Object===Object&&p,U="object"==typeof self&&self&&self.Object===Object&&self,B=j||U||Function("return this")();var F,G=(F={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"ss"},function(e){return null==F?void 0:F[e]});function M(e){return J.test(e)}function V(e){return M(e)?function(e){return e.match(w)||[]}(e):function(e){return e.split("")}(e)}var z=Object.prototype.toString,W=B.Symbol,q=W?W.prototype:void 0,X=q?q.toString:void 0;function Y(e){if("string"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==z.call(e)}(e))return X?X.call(e):"";var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}function $(e,t,n){var o=e.length;return n=void 0===n?o:n,!t&&n>=o?e:function(e,t,n){var o=-1,r=e.length;t<0&&(t=-t>r?0:r+t),(n=n>r?r:n)<0&&(n+=r),r=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(r);++o<r;)s[o]=e[o+t];return s}(e,t,n)}function Z(e){return null==e?"":Y(e)}var H,K=(H=function(e,t,n){return t=t.toLowerCase(),e+(n?ee(Z(t).toLowerCase()):t)},function(e){return function(e,t,n,o){var r=-1,s=e?e.length:0;for(o&&s&&(n=e[++r]);++r<s;)n=t(n,e[r],r,e);return n}(function(e,t,n){return e=Z(e),void 0===(t=n?void 0:t)?function(e){return R.test(e)}(e)?function(e){return e.match(D)||[]}(e):function(e){return e.match(u)||[]}(e):e.match(t)||[]}(function(e){return(e=Z(e))&&e.replace(l,G).replace(A,"")}(e).replace(L,"")),H,"")});var Q,ee=(Q="toUpperCase",function(e){var t=M(e=Z(e))?V(e):void 0,n=t?t[0]:e.charAt(0),o=t?$(t,1).join(""):e.slice(1);return n[Q]()+o});var te,ne=(te=K)&&"object"==typeof te&&"default"in te?te.default:te;function oe(e){return Array.isArray(e)?e:void 0===e?[]:function(e){return function(e){return"object"==typeof e&&null!==e}(e)&&"number"==typeof e.length}(e)||e instanceof Set?Array.from(e):[e]}function re(e){return Array.isArray(e)?e:void 0===e?[]:function(e){return function(e){return"object"==typeof e&&null!==e}(e)&&"number"==typeof e.length}(e)?Array.prototype.slice.call(e):[e]}function se(e,t){const n=[],o=re(arguments);return o.splice(0,2),re(e).forEach(((e,r)=>{let s=[];o.forEach((t=>{"function"==typeof t?s=s.concat(t(e)):s.push(t)})),t(e)&&n.push({index:r,replaceWithValue:s})})),n.reverse().forEach((t=>{const n=[t.index,1].concat(t.replaceWithValue);e.splice.apply(e,n)})),e}const ae={short:/^-([^\d-])$/,long:/^--(\S+)/,combinedShort:/^-[^\d-]{2,}$/,optEquals:/^(--\S+?)=(.*)/};class ie extends Array{load(e){if(this.clear(),e&&e!==process.argv)e=oe(e);else{e=process.argv.slice(0);const t=process.execArgv.some(he)?1:2;e.splice(0,t)}e.forEach((e=>this.push(String(e))))}clear(){this.length=0}expandOptionEqualsNotation(){if(this.some((e=>ae.optEquals.test(e)))){const e=[];this.forEach((t=>{const n=t.match(ae.optEquals);n?e.push(n[1],n[2]):e.push(t)})),this.clear(),this.load(e)}}expandGetoptNotation(){this.hasCombinedShortOptions()&&se(this,ae.combinedShort,ce)}hasCombinedShortOptions(){return this.some((e=>ae.combinedShort.test(e)))}static from(e){const t=new this;return t.load(e),t}}function ce(e){return(e=e.slice(1)).split("").map((e=>"-"+e))}function pe(e){return ae.optEquals.test(e)}function ue(e){return(ae.short.test(e)||ae.long.test(e))&&!ae.optEquals.test(e)}function le(e){return ae.short.test(e)?e.match(ae.short)[1]:function(e){return ae.long.test(e)&&!pe(e)}(e)?e.match(ae.long)[1]:pe(e)?e.match(ae.optEquals)[1].replace(/^--/,""):null}function fe(e){return!(ue(e)||ae.combinedShort.test(e)||ae.optEquals.test(e))}function he(e){return["--eval","-e"].indexOf(e)>-1||e.startsWith("--eval=")}function me(e){return"object"==typeof e&&null!==e}function de(e){return void 0!==e}function ge(e){return"function"==typeof e}var Te={isNumber:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},isString:function(e){return"string"==typeof e},isBoolean:function(e){return"boolean"==typeof e},isPlainObject:function(e){return null!==e&&"object"==typeof e&&e.constructor===Object},isArrayLike:function(e){return me(e)&&"number"==typeof e.length},isObject:me,isDefined:de,isFunction:ge,isClass:function(e){return!!ge(e)&&/^class /.test(Function.prototype.toString.call(e))},isPrimitive:function(e){if(null===e)return!0;switch(typeof e){case"string":case"number":case"symbol":case"undefined":case"boolean":return!0;default:return!1}},isPromise:function(e){if(e){const t=de(Promise)&&e instanceof Promise,n=e.then&&"function"==typeof e.then;return!(!t&&!n)}return!1},isIterable:function(e){return!(null===e||!de(e))&&("function"==typeof e[Symbol.iterator]||"function"==typeof e[Symbol.asyncIterator])}};class ye{constructor(e){this.name=e.name,this.type=e.type||String,this.alias=e.alias,this.multiple=e.multiple,this.lazyMultiple=e.lazyMultiple,this.defaultOption=e.defaultOption,this.defaultValue=e.defaultValue,this.group=e.group;for(const t in e)this[t]||(this[t]=e[t])}isBoolean(){return this.type===Boolean||Te.isFunction(this.type)&&"Boolean"===this.type.name}isMultiple(){return this.multiple||this.lazyMultiple}static create(e){return new this(e)}}class Ie extends Array{validate(e){this.some((e=>!e.name))&&ke("INVALID_DEFINITIONS","Invalid option definitions: the `name` property is required on each definition");let t;this.some((e=>e.type&&"function"!=typeof e.type))&&ke("INVALID_DEFINITIONS","Invalid option definitions: the `type` property must be a setter fuction (default: `Boolean`)");this.some((e=>(t=e,Te.isDefined(e.alias)&&Te.isNumber(e.alias))))&&ke("INVALID_DEFINITIONS","Invalid option definition: to avoid ambiguity an alias cannot be numeric [--"+t.name+" alias is -"+t.alias+"]");this.some((e=>(t=e,Te.isDefined(e.alias)&&1!==e.alias.length)))&&ke("INVALID_DEFINITIONS","Invalid option definition: an alias must be a single character");this.some((e=>(t=e,"-"===e.alias)))&&ke("INVALID_DEFINITIONS",'Invalid option definition: an alias cannot be "-"');Ce(this.map((t=>e?t.name.toLowerCase():t.name)))&&ke("INVALID_DEFINITIONS","Two or more option definitions have the same name");Ce(this.map((t=>e&&Te.isDefined(t.alias)?t.alias.toLowerCase():t.alias)))&&ke("INVALID_DEFINITIONS","Two or more option definitions have the same alias");this.filter((e=>!0===e.defaultOption)).length>1&&ke("INVALID_DEFINITIONS","Only one option definition can be the defaultOption");this.some((e=>(t=e,e.isBoolean()&&e.defaultOption)))&&ke("INVALID_DEFINITIONS",`A boolean option ["${t.name}"] can not also be the defaultOption.`)}get(e,t){if(ue(e)){if(ae.short.test(e)){const n=le(e);if(t){const e=n.toLowerCase();return this.find((t=>Te.isDefined(t.alias)&&t.alias.toLowerCase()===e))}return this.find((e=>e.alias===n))}{const n=le(e);if(t){const e=n.toLowerCase();return this.find((t=>t.name.toLowerCase()===e))}return this.find((e=>e.name===n))}}return this.find((t=>t.name===e))}getDefault(){return this.find((e=>!0===e.defaultOption))}isGrouped(){return this.some((e=>e.group))}whereGrouped(){return this.filter(ve)}whereNotGrouped(){return this.filter((e=>!ve(e)))}whereDefaultValueSet(){return this.filter((e=>Te.isDefined(e.defaultValue)))}static from(e,t){if(e instanceof this)return e;const n=super.from(oe(e),(e=>ye.create(e)));return n.validate(t),n}}function ke(e,t){const n=new Error(t);throw n.name=e,n}function ve(e){return oe(e.group).some((e=>e))}function Ce(e){const t={};for(let n=0;n<e.length;n++){const o=e[n];if(t[o])return!0;Te.isDefined(o)&&(t[o]=!0)}}class _e{constructor(e,t){this.options=Object.assign({},t),this.definitions=Ie.from(e,this.options.caseInsensitive),this.argv=ie.from(this.options.argv),this.argv.hasCombinedShortOptions()&&se(this.argv,ae.combinedShort.test.bind(ae.combinedShort),(e=>(e=e.slice(1)).split("").map((t=>({origArg:`-${e}`,arg:"-"+t})))))}*[Symbol.iterator](){const e=this.definitions;let t,n,o,r,s,a=!1,i=!1;for(let c of this.argv){if(Te.isPlainObject(c)&&(s=c.origArg,c=c.arg),i&&this.options.stopAtFirstUnknown){yield{event:"unknown_value",arg:c,name:"_unknown",value:void 0};continue}if(ue(c))t=e.get(c,this.options.caseInsensitive),n=void 0,t?(n=!!t.isBoolean()||null,r="set"):r="unknown_option";else if(pe(c)){const o=c.match(ae.optEquals);t=e.get(o[1],this.options.caseInsensitive),t?t.isBoolean()?(yield{event:"unknown_value",arg:c,name:"_unknown",value:n,def:t},r="set",n=!0):(r="set",n=o[2]):r="unknown_option"}else fe(c)&&(t?(n=c,r="set"):(t=this.definitions.getDefault(),t&&!a?(n=c,r="set"):(r="unknown_value",t=void 0)));o=t?t.name:"_unknown";const p={event:r,arg:c,name:o,value:n,def:t};s&&(p.subArg=c,p.arg=s),yield p,"_unknown"===o&&(i=!0),t&&t.defaultOption&&!t.isMultiple()&&"set"===r&&(a=!0),t&&t.isBoolean()&&(t=void 0),t&&!t.multiple&&Te.isDefined(n)&&null!==n&&(t=void 0),n=void 0,r=void 0,o=void 0,s=void 0}}}const be=new WeakMap;class Pe{constructor(e){this.definition=new ye(e),this.state=null,this.resetToDefault()}get(){return be.get(this)}set(e){this._set(e,"set")}_set(e,t){const n=this.definition;if(n.isMultiple()){if(null!=e){const o=this.get();"default"===this.state&&(o.length=0),o.push(n.type(e)),this.state=t}}else{if(!n.isMultiple()&&"set"===this.state){const t=new Error(`Singular option already set [${this.definition.name}=${this.get()}]`);throw t.name="ALREADY_SET",t.value=e,t.optionName=n.name,t}null==e?be.set(this,e):(be.set(this,n.type(e)),this.state=t)}}resetToDefault(){Te.isDefined(this.definition.defaultValue)?this.definition.isMultiple()?be.set(this,oe(this.definition.defaultValue).slice()):be.set(this,this.definition.defaultValue):this.definition.isMultiple()?be.set(this,[]):be.set(this,null),this.state="default"}static create(e){return(e=new ye(e)).isBoolean()?xe.create(e):new this(e)}}class xe extends Pe{set(e){super.set(!0)}static create(e){return new this(e)}}class Ee extends Map{constructor(e){super(),this.definitions=Ie.from(e),this.set("_unknown",Pe.create({name:"_unknown",multiple:!0}));for(const e of this.definitions.whereDefaultValueSet())this.set(e.name,Pe.create(e))}toObject(e){e=e||{};const t={};for(const n of this){const o=e.camelCase&&"_unknown"!==n[0]?ne(n[0]):n[0],r=n[1];("_unknown"!==o||r.get().length)&&(t[o]=r.get())}return e.skipUnknown&&delete t._unknown,t}}class Ne extends Ee{toObject(e){const t=super.toObject({skipUnknown:e.skipUnknown}),n=super.toObject(e),o=n._unknown;delete n._unknown;const r={_all:n};return o&&o.length&&(r._unknown=o),this.definitions.whereGrouped().forEach((n=>{const o=e.camelCase?ne(n.name):n.name,s=t[n.name];for(const e of oe(n.group))r[e]=r[e]||{},Te.isDefined(s)&&(r[e][o]=s)})),this.definitions.whereNotGrouped().forEach((n=>{const o=e.camelCase?ne(n.name):n.name,s=t[n.name];Te.isDefined(s)&&(r._none||(r._none={}),r._none[o]=s)})),r}}var Se=function(e,t){(t=t||{}).stopAtFirstUnknown&&(t.partial=!0),e=Ie.from(e,t.caseInsensitive);const n=new _e(e,{argv:t.argv,stopAtFirstUnknown:t.stopAtFirstUnknown,caseInsensitive:t.caseInsensitive}),o=new(e.isGrouped()?Ne:Ee)(e);for(const e of n){const n=e.subArg||e.arg;if(!t.partial){if("unknown_value"===e.event){const e=new Error(`Unknown value: ${n}`);throw e.name="UNKNOWN_VALUE",e.value=n,e}if("unknown_option"===e.event){const e=new Error(`Unknown option: ${n}`);throw e.name="UNKNOWN_OPTION",e.optionName=n,e}}let r;o.has(e.name)?r=o.get(e.name):(r=Pe.create(e.def),o.set(e.name,r)),"_unknown"===e.name?r.set(n):r.set(e.value)}return o.toObject({skipUnknown:!t.partial,camelCase:t.camelCase})};function Oe(e,t){return i(this,void 0,void 0,(function(){return c(this,(function(n){try{return s.default.readdirSync(e).forEach((function(n){(null==t?void 0:t.includes(n))||s.default.unlinkSync(r.default.join(e,n))})),[2,!0]}catch(e){return[2,!1]}return[2]}))}))}function Le(e,t,n){var o;return i(this,void 0,void 0,(function(){var a,i,p;return c(this,(function(c){try{return a=e,i=function(e){var t=e.split("/");return t.length>1?{dirParts:t.slice(0,t.length-1),filePart:t[t.length-1]}:{filePart:e}}(t),(null===(o=i.dirParts)||void 0===o?void 0:o.length)&&(a=r.default.join.apply(r.default,function(e,t,n){if(n||2===arguments.length)for(var o,r=0,s=t.length;r<s;r++)!o&&r in t||(o||(o=Array.prototype.slice.call(t,0,r)),o[r]=t[r]);return e.concat(o||Array.prototype.slice.call(t))}([a],i.dirParts,!1))),s.default.existsSync(a)||s.default.mkdirSync(a,{recursive:!0}),p=r.default.join(a,i.filePart),s.default.writeFileSync(p,n),[2,!0]}catch(e){return console.error(e),[2,!1]}return[2]}))}))}var Ae=[{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.GetComponentDirs.getComponentDirs;\nexport const config = IkasLocalThemeAPI.GetComponentDirs.config;\n',fileName:"getComponentDirs.ts"},{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.GetTheme.getTheme;\nexport const config = IkasLocalThemeAPI.GetTheme.config;\n',fileName:"getTheme.ts"},{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.UpdateTheme.updateTheme;\nexport const config = IkasLocalThemeAPI.UpdateTheme.config;\n',fileName:"updateTheme.ts"},{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.UploadTheme.uploadTheme;\nexport const config = IkasLocalThemeAPI.UploadTheme.config;\n',fileName:"uploadTheme.ts"}],we=function(){function e(){}return e.generate=function(){return i(this,void 0,void 0,(function(){var t,n,o,s,a;return c(this,(function(i){switch(i.label){case 0:return[4,Oe(r.default.join(process.cwd(),"src","pages","api"))];case 1:i.sent(),t=!0,n=0,o=Ae,i.label=2;case 2:return n<o.length?(s=o[n],(a=t)?[4,e.generateAPI(s)]:[3,4]):[3,6];case 3:a=i.sent(),i.label=4;case 4:t=a,i.label=5;case 5:return n++,[3,2];case 6:return[2,t]}}))}))},e.generateAPI=function(e){return Le(r.default.join(process.cwd(),"src","pages","api"),e.fileName,e.content)},e}();function De(e,t){return Object.entries(e||{}).reduce((function(e,n){var o=n[0],r=n[1];return o===t?e.concat(r):"object"==typeof r?e.concat(De(r,t)):e}),[])}var Je={next:"canary",react:"17.0.2","react-dom":"17.0.2",mobx:"^6.1.3",axios:"^0.26.0",lodash:"^4.17.20",archiver:"^5.3.0",cors:"^2.8.5","html-react-parser":"^1.4.0","mobx-react-lite":"^3.1.5","next-transpile-modules":"^9.0.0","@ikas/storefront":"^4.0.0-alpha.5","@ikas/storefront-api":"^4.0.0-alpha.5","@ikas/storefront-assets":"^4.0.0-alpha.5","@ikas/storefront-cmd":"^4.0.0-alpha.5","@ikas/storefront-config":"^4.0.0-alpha.5","@ikas/storefront-model-functions":"^4.0.0-alpha.5","@ikas/storefront-models":"^4.0.0-alpha.5","@ikas/storefront-next":"^4.0.0-alpha.5","@ikas/storefront-providers":"^4.0.0-alpha.5"},Re={"@types/node":"^14.14.6","@types/react":"^17.0.2","@types/react-dom":"^17.0.2","@typescript-eslint/eslint-plugin":"^2.10.0","@typescript-eslint/parser":"^2.10.0",eslint:"^6.6.0","eslint-config-react-app":"^5.2.1","eslint-loader":"3.0.3","eslint-plugin-flowtype":"4.6.0","eslint-plugin-import":"2.20.1","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-react":"7.19.0","eslint-plugin-react-hooks":"^1.6.1",sass:"^1.43.4",typescript:"^4.5.2"},je={"@types/react":"17.0.2","@types/react-dom":"17.0.2"},Ue={upgradeDependencies:"yarn upgrade @ikas/storefront @ikas/storefront-api @ikas/storefront-assets @ikas/storefront-cmd @ikas/storefront-config @ikas/storefront-model-functions @ikas/storefront-models @ikas/storefront-next @ikas/storefront-providers",dev:"next dev -p 3333",build:"next build",start:"next start",generate:"ikas --generate","prettier:all":"npx prettier@^2.1 './**/src/**/*.(ts|tsx|css|scss)' --write"},Be=function(){function e(){}return e.generate=function(t){return i(this,void 0,void 0,(function(){var n,o,r,s;return c(this,(function(a){switch(a.label){case 0:return[4,e.generateTsConfig()];case 1:return(s=a.sent())?[4,e.generateBabelRc()]:[3,3];case 2:s=a.sent(),a.label=3;case 3:return(r=s)?[4,e.generateNextConfig()]:[3,5];case 4:r=a.sent(),a.label=5;case 5:return(o=r)?[4,e.generatePackageJson()]:[3,7];case 6:o=a.sent(),a.label=7;case 7:return(n=o)?[4,e.generateEnv(t)]:[3,9];case 8:n=a.sent(),a.label=9;case 9:return[2,n]}}))}))},e.generateTsConfig=function(){return Le(process.cwd(),"tsconfig.json",'{\n "compilerOptions": {\n "target": "esnext",\n "lib": [\n "dom",\n "dom.iterable",\n "esnext"\n ],\n "allowJs": true,\n "skipLibCheck": true,\n "strict": true,\n "forceConsistentCasingInFileNames": true,\n "experimentalDecorators": true,\n "noEmit": true,\n "esModuleInterop": true,\n "module": "esnext",\n "moduleResolution": "node",\n "resolveJsonModule": true,\n "isolatedModules": true,\n "jsx": "preserve",\n "baseUrl": ".",\n "useUnknownInCatchVariables": false,\n "incremental": true\n },\n "typeRoots": [\n "./node_modules/@types"\n ],\n "include": [\n "next-env.d.ts",\n "**/*.ts",\n "**/*.tsx",\n "**/typings/global.d.ts",\n ],\n "exclude": [\n "node_modules",\n "./src/pages/api",\n ]\n}')},e.generateBabelRc=function(){return Le(process.cwd(),".babelrc",'{\n "presets": [\n [\n "next/babel",\n {\n "preset-react": { "throwIfNamespace": false },\n }\n ]\n ],\n "plugins": []\n}')},e.generateNextConfig=function(){return Le(process.cwd(),"next.config.js",'const withTM = require("next-transpile-modules")([\n "@ikas/storefront",\n "@ikas/storefront-api",\n "@ikas/storefront-assets",\n "@ikas/storefront-cmd",\n "@ikas/storefront-config",\n "@ikas/storefront-model-functions",\n "@ikas/storefront-models",\n "@ikas/storefront-next",\n "@ikas/storefront-providers",\n]);\n\nconst config = {\n i18n: {\n defaultLocale: "en",\n locales: ["en"],\n localeDetection: false,\n },\n basePath: process.env.NEXTJS_BASE_PATH || "",\n\n images: {\n deviceSizes: [\n 180, 360, 540, 720, 900, 1080, 1296, 1512, 1728, 1950, 2560, 3840,\n ],\n },\n\n webpack: (config, { buildId, dev, isServer, defaultLoaders, webpack }) => {\n if (!isServer) {\n config.resolve.fallback.fs = false;\n config.resolve.fallback.net = false;\n config.resolve.fallback.encoding = false;\n config.resolve.fallback.crypto = false;\n config.resolve.fallback.assert = false;\n config.resolve.fallback.stream = false;\n config.module.rules = [\n ...config.module.rules,\n {\n test: /@ikas/i,\n sideEffects: false,\n },\n ];\n }\n return config;\n },\n};\n\nmodule.exports = withTM(config);')},e.generatePackageJson=function(){return i(this,void 0,void 0,(function(){var e,t,n,o,i;return c(this,(function(c){switch(c.label){case 0:return c.trys.push([0,3,,4]),e=r.default.join(process.cwd(),"package.json"),(t=s.default.readFileSync(e)).length?(n=JSON.parse(t.toString()),(o=function(e){var t="dev"===e?Re:Je,o="dev"===e?"devDependencies":"dependencies";n[o]&&"object"==typeof n[o]?n[o]=a(a({},n[o]),t):n[o]=t;var r,s=(r=n[o],Object.keys(r).sort().reduce((function(e,t){return e[t]=r[t],e}),{}));n[o]=s})("dev"),o("normal"),n.scripts&&"object"==typeof n.scripts?n.scripts=a(a({},n.scripts),Ue):n.scripts=Ue,n.resolutions=a(a({},n.resolutions),je),[4,Le(e,"",JSON.stringify(n,null,2))]):[3,2];case 1:return[2,c.sent()];case 2:return[3,4];case 3:return i=c.sent(),console.error(i),[2,!1];case 4:return[2]}}))}))},e.generateEnv=function(e){var t="dev"===e?"NEXT_PUBLIC_ENV=local\nNEXT_PUBLIC_BASE_URL=https://api.myikas.dev/api/sf\nNEXT_PUBLIC_IMG_BASE_URL=https://cdn.myikas.dev/\nNEXT_PUBLIC_UPLOAD_GQL_URL=https://api.myikas.dev/api/admin/graphql\nNEXT_PUBLIC_GQL_URL=https://api.myikas.dev/api/sf/graphql\n":"NEXT_PUBLIC_ENV=local\nNEXT_PUBLIC_BASE_URL=https://api.myikas.com/api/sf\nNEXT_PUBLIC_IMG_BASE_URL=https://cdn.myikas.com/\nNEXT_PUBLIC_UPLOAD_GQL_URL=https://api.myikas.com/api/admin/graphql\nNEXT_PUBLIC_GQL_URL=https://api.myikas.com/api/sf/graphql\n";return Le(process.cwd(),".env",t)},e}(),Fe=function(){function e(){}return e.generate=function(e){return Le(r.default.join(process.cwd(),"src","theme.json"),"",JSON.stringify(e,null,2))},e.generateInitialThemeJsonFile=function(){var t={pages:[],components:[],name:"My Theme",customData:[],settings:{colors:[],favicon:{id:null},fontFamily:{name:null,variants:null},stockPreference:n.IkasThemeJsonStockPreference.SHOW_ALL}};return t.pages.push({id:"1",components:[],canonicals:null,description:null,disableIndex:null,name:null,pageTitle:null,slug:null,specifications:[],type:n.IkasThemeJsonPageType.INDEX}),e.generate(t)},e.getTheme=function(){return i(this,void 0,void 0,(function(){var e,t;return c(this,(function(n){try{return e=r.default.join(process.cwd(),"src","theme.json"),[2,(t=s.default.readFileSync(e)).length?JSON.parse(t.toString()):null]}catch(e){console.error(e)}return[2]}))}))},e}(),Ge=[{path:"[slug]/index.tsx",pageComponentName:"SlugPage",pageTypes:[n.IkasThemeJsonPageType.PRODUCT,n.IkasThemeJsonPageType.CATEGORY,n.IkasThemeJsonPageType.BRAND],isDynamicSSG:!0},{path:"account/orders/[id].tsx",pageComponentName:"OrderDetailPage",pageTypes:[n.IkasThemeJsonPageType.ORDER_DETAIL],isSSR:!0},{path:"account/orders/index.tsx",pageComponentName:"OrdersPage",pageTypes:[n.IkasThemeJsonPageType.ORDERS]},{path:"account/addresses.tsx",pageComponentName:"AddressesPage",pageTypes:[n.IkasThemeJsonPageType.ADDRESSES]},{path:"account/favorite-products.tsx",pageComponentName:"FavoriteProductsPage",pageTypes:[n.IkasThemeJsonPageType.FAVORITE_PRODUCTS]},{path:"account/forgot-password.tsx",pageComponentName:"ForgotPasswordPage",pageTypes:[n.IkasThemeJsonPageType.FORGOT_PASSWORD]},{path:"account/index.tsx",pageComponentName:"AccountPage",pageTypes:[n.IkasThemeJsonPageType.ACCOUNT]},{path:"account/login.tsx",pageComponentName:"LoginPage",pageTypes:[n.IkasThemeJsonPageType.LOGIN]},{path:"account/raffles.tsx",pageComponentName:"AccountRafflesPage",pageTypes:[n.IkasThemeJsonPageType.RAFFLE_ACCOUNT]},{path:"account/recover-password.tsx",pageComponentName:"RecoverPasswordPage",pageTypes:[n.IkasThemeJsonPageType.RECOVER_PASSWORD]},{path:"account/register.tsx",pageComponentName:"RegisterPage",pageTypes:[n.IkasThemeJsonPageType.REGISTER]},{path:"blog/[slug].tsx",pageComponentName:"BlogSlugPage",pageTypes:[n.IkasThemeJsonPageType.BLOG,n.IkasThemeJsonPageType.BLOG_CATEGORY],isDynamicSSG:!0},{path:"blog/index.tsx",pageComponentName:"BlogPage",pageTypes:[n.IkasThemeJsonPageType.BLOG_INDEX]},{path:"pages/[slug].tsx",pageComponentName:"CustomPage",pageTypes:[n.IkasThemeJsonPageType.CUSTOM],isDynamicSSG:!0},{path:"raffle/[slug].tsx",pageComponentName:"RafflePage",pageTypes:[n.IkasThemeJsonPageType.RAFFLE_DETAIL],isDynamicSSG:!0},{path:"raffle/index.tsx",pageComponentName:"RafflesPage",pageTypes:[n.IkasThemeJsonPageType.RAFFLE]},{path:"404.tsx",pageComponentName:"NotFoundPage",pageTypes:[n.IkasThemeJsonPageType.NOT_FOUND]},{path:"cart.tsx",pageComponentName:"CartPage",pageTypes:[n.IkasThemeJsonPageType.CART]},{path:"index.tsx",pageComponentName:"IndexPage",pageTypes:[n.IkasThemeJsonPageType.INDEX]},{path:"search.tsx",pageComponentName:"SearchPage",pageTypes:[n.IkasThemeJsonPageType.SEARCH]},{path:"checkout.tsx",pageComponentName:"CheckoutPage",pageTypes:[],isCheckout:!0},{path:"editor.tsx",pageComponentName:"EditorPage",pageTypes:[],isEditor:!0}],Me=function(){function e(){}return e.generate=function(t){return i(this,void 0,void 0,(function(){var n;return c(this,(function(o){switch(o.label){case 0:return[4,Oe(r.default.join(process.cwd(),"src","components","__generated__"))];case 1:return o.sent(),[4,e.generateAllPageComponentImportsFiles(t)];case 2:return(n=o.sent())?[4,e.generateAllComponentImportsFileForEditor(t)]:[3,4];case 3:n=o.sent(),o.label=4;case 4:return[2,n]}}))}))},e.generateAllPageComponentImportsFiles=function(t){return i(this,void 0,void 0,(function(){var n,o,r,s,a;return c(this,(function(i){switch(i.label){case 0:n=!0,o=0,r=Ge,i.label=1;case 1:return o<r.length?(s=r[o],(a=n)?[4,e.generatePageComponentImportsFileWithInfo(s,t)]:[3,3]):[3,5];case 2:a=i.sent(),i.label=3;case 3:n=a,i.label=4;case 4:return o++,[3,1];case 5:return[2,n]}}))}))},e.generatePageComponentImportsFileWithInfo=function(t,n){return i(this,void 0,void 0,(function(){var o,r,s,a;return c(this,(function(i){switch(i.label){case 0:if(t.isCheckout||t.isEditor)return[2,!0];i.label=1;case 1:return i.trys.push([1,3,,4]),o=n.components,r=[],t.pageTypes.forEach((function(e){var t=n.pages.filter((function(t){return t.type===e}));t.length&&t.forEach((function(e){var t,n=e.components;(null===(t=e.specifications)||void 0===t?void 0:t.length)&&e.specifications.forEach((function(e){n.push.apply(n,e.components)})),r.push.apply(r,n.map((function(e){return e.componentId}))),n.forEach((function(e){if(o.find((function(t){return t.id===e.componentId}))){var t=De(e.propValues,"componentId");r.push.apply(r,t)}}))}))})),s=o.filter((function(e){return r.includes(e.id)&&"checkout"!==e.id})),[4,e.generateComponentImportsFile(s,t)];case 2:return[2,i.sent()];case 3:return a=i.sent(),console.error(a),[2,!1];case 4:return[2]}}))}))},e.generatePageComponentImportsFileWithType=function(t,o){if(t!==n.IkasThemeJsonPageType.CHECKOUT){try{var r=Ge.find((function(e){return e.pageTypes.includes(t)}));if(r)return e.generatePageComponentImportsFileWithInfo(r,o)}catch(e){console.error(e)}return!1}},e.generateComponentImportsFile=function(e,t){try{var n="";return e.filter((function(e){return"checkout"!==e.id})).forEach((function(e,t){n+="import Component".concat(t,' from "src/components/').concat(e.dir,'";\r\n')})),n+="\n const Components = {\n ".concat(e.map((function(e,t){return'"'.concat(e.id,'": Component').concat(t)})),"\n };\n "),n+="\r\n",n+="export default Components;",Le(r.default.join(process.cwd(),"src","components","__generated__","pages"),t.path.replace("tsx","ts"),n)}catch(e){return console.error(e),!1}},e.generateAllComponentImportsFileForEditor=function(e){return i(this,void 0,void 0,(function(){var t,n,o;return c(this,(function(s){switch(s.label){case 0:return s.trys.push([0,2,,3]),t='import dynamic from "next/dynamic";\r\n',t+='import { IkasEditorComponentLoader } from "@ikas/storefront";\r\n',t+="\r\n",t+="\r\n",(n=e.components.filter((function(e){return"checkout"!==e.id}))).filter((function(e){return"checkout"!==e.id})).forEach((function(e,n){t+="const Component".concat(n,' = dynamic(() => import("../').concat(e.dir,'"), { loading: () => <IkasEditorComponentLoader /> });\r\n')})),t+="\r\n",t+="\nconst Components = {\n ".concat(n.map((function(e,t){return'"'.concat(e.id,'": Component').concat(t)})),"\n};\n"),t+="\r\n",t+="export default Components;",[4,Le(r.default.join(process.cwd(),"src","components","__generated__"),"editor.tsx",t)];case 1:return[2,s.sent()];case 2:return o=s.sent(),console.error(o),[2,!1];case 3:return[2]}}))}))},e.generateAllComponentImportsFile=function(e){return i(this,void 0,void 0,(function(){var t,n,o;return c(this,(function(s){switch(s.label){case 0:return s.trys.push([0,2,,3]),t="",(n=e.components.filter((function(e){return"checkout"!==e.id}))).filter((function(e){return"checkout"!==e.id})).forEach((function(e,n){t+="import Component".concat(n,' from "../').concat(e.dir,'";\r\n')})),t+="\r\n",t+="\nconst Components = {\n ".concat(n.map((function(e,t){return'"'.concat(e.id,'": Component').concat(t)})),"\n};\n"),t+="\r\n",t+="export default Components;",[4,Le(r.default.join(process.cwd(),"src","components","__generated__"),"index.tsx",t)];case 1:return[2,s.sent()];case 2:return o=s.sent(),console.error(o),[2,!1];case 3:return[2]}}))}))},e}(),Ve=function(){function e(){}return e.generate=function(){return i(this,void 0,void 0,(function(){var t,n,o,s,a,i,p,u,l,f,h;return c(this,(function(c){switch(c.label){case 0:return[4,Oe(r.default.join(process.cwd(),"src","pages"),["_app.tsx","_document.tsx","api"])];case 1:c.sent(),t=!0,n=0,o=Ge,c.label=2;case 2:return n<o.length?(s=o[n],(a=t)?[4,e.generatePageWithInfo(s)]:[3,4]):[3,6];case 3:a=c.sent(),c.label=4;case 4:t=a,c.label=5;case 5:return n++,[3,2];case 6:return i=Ge.find((function(e){return e.isCheckout})),p=Ge.find((function(e){return e.isEditor})),i?[4,e.generatePageWithInfo(i)]:[3,8];case 7:return l=c.sent(),[3,9];case 8:l=!1,c.label=9;case 9:return u=l,p?[4,e.generatePageWithInfo(p)]:[3,11];case 10:return h=c.sent(),[3,12];case 11:h=!1,c.label=12;case 12:return f=h,[2,t&&u&&f]}}))}))},e.generatePageWithInfo=function(e){return i(this,void 0,void 0,(function(){var t,n,o,s,a,i,p,u,l;return c(this,(function(c){switch(c.label){case 0:return c.trys.push([0,2,,3]),t="",e.isCheckout?t='import { CheckoutPage } from "@ikas/storefront";\nimport { CheckoutPage as CheckoutPageNext } from "@ikas/storefront-next";\n\nexport default CheckoutPage.default;\nexport const getStaticProps = CheckoutPageNext.getStaticProps;\n':e.isEditor?t='import { EditorPage } from "@ikas/storefront";\nimport { EditorPage as EditorPageNext } from "@ikas/storefront-next";\nimport Components from "../components/__generated__/editor";\n\nconst PageComponent = EditorPage.default;\n\nconst Page = (props: any) => {\n return <PageComponent components={Components} {...props} />;\n};\n\nexport default Page;\nexport const getStaticProps = EditorPageNext.getStaticProps;\n':(n=e.pageComponentName+"Next",o="import { ".concat(e.pageComponentName,' } from "@ikas/storefront";\r\n'),s="import { ".concat(e.pageComponentName," as ").concat(n,' } from "@ikas/storefront-next";\r\n'),a='import Components from "src/components/__generated__/pages/'.concat(e.path.replace(".tsx",""),'";\r\n'),i="\nconst PageComponent = ".concat(e.pageComponentName,".default;\n\nconst Page = (props: any) => {\n return <PageComponent components={Components} {...props} />;\n};\n\nexport default Page;\r\n"),p=e.isDynamicSSG?"export const getStaticPaths = ".concat(n,".getStaticPaths;\r\n"):"",u=e.isSSR?"export const getServerSideProps = ".concat(n,".getServerSideProps;\r\n"):"export const getStaticProps = ".concat(n,".getStaticProps;\r\n"),t=o+s+a+i+p+u),[4,Le(r.default.join(process.cwd(),"src","pages"),e.path,t)];case 1:return[2,c.sent()];case 2:return l=c.sent(),console.error(l),[2,!1];case 3:return[2]}}))}))},e.generatePageWithType=function(t){return i(this,void 0,void 0,(function(){var n;return c(this,(function(o){switch(o.label){case 0:return(n=Ge.find((function(e){return e.pageTypes.includes(t)})))?[4,e.generatePageWithInfo(n)]:[3,2];case 1:return[2,o.sent()];case 2:return[2,!1]}}))}))},e}(),ze="object"==typeof p&&p&&p.Object===Object&&p,We="object"==typeof self&&self&&self.Object===Object&&self,qe=ze||We||Function("return this")(),Xe=qe.Symbol,Ye=Xe,$e=Object.prototype,Ze=$e.hasOwnProperty,He=$e.toString,Ke=Ye?Ye.toStringTag:void 0;var Qe=function(e){var t=Ze.call(e,Ke),n=e[Ke];try{e[Ke]=void 0;var o=!0}catch(e){}var r=He.call(e);return o&&(t?e[Ke]=n:delete e[Ke]),r},et=Object.prototype.toString;var tt=Qe,nt=function(e){return et.call(e)},ot=Xe?Xe.toStringTag:void 0;var rt=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},st=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":ot&&ot in Object(e)?tt(e):nt(e)},at=rt;var it,ct=function(e){if(!at(e))return!1;var t=st(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},pt=qe["__core-js_shared__"],ut=(it=/[^.]+$/.exec(pt&&pt.keys&&pt.keys.IE_PROTO||""))?"Symbol(src)_1."+it:"";var lt=function(e){return!!ut&&ut in e},ft=Function.prototype.toString;var ht=ct,mt=lt,dt=rt,gt=function(e){if(null!=e){try{return ft.call(e)}catch(e){}try{return e+""}catch(e){}}return""},Tt=/^\[object .+?Constructor\]$/,yt=Function.prototype,It=Object.prototype,kt=yt.toString,vt=It.hasOwnProperty,Ct=RegExp("^"+kt.call(vt).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var _t=function(e,t){return null==e?void 0:e[t]},bt=function(e){return!(!dt(e)||mt(e))&&(ht(e)?Ct:Tt).test(gt(e))},Pt=_t;var xt=function(e,t){var n=Pt(e,t);return bt(n)?n:void 0},Et=xt(Object,"create"),Nt=Et;var St=function(){this.__data__=Nt?Nt(null):{},this.size=0};var Ot=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Lt=Et,At=Object.prototype.hasOwnProperty;var wt=function(e){var t=this.__data__;if(Lt){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return At.call(t,e)?t[e]:void 0},Dt=Et,Jt=Object.prototype.hasOwnProperty;var Rt=Et;var jt=St,Ut=Ot,Bt=wt,Ft=function(e){var t=this.__data__;return Dt?void 0!==t[e]:Jt.call(t,e)},Gt=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Rt&&void 0===t?"__lodash_hash_undefined__":t,this};function Mt(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var o=e[t];this.set(o[0],o[1])}}Mt.prototype.clear=jt,Mt.prototype.delete=Ut,Mt.prototype.get=Bt,Mt.prototype.has=Ft,Mt.prototype.set=Gt;var Vt=Mt;var zt=function(){this.__data__=[],this.size=0};var Wt=function(e,t){return e===t||e!=e&&t!=t};var qt=function(e,t){for(var n=e.length;n--;)if(Wt(e[n][0],t))return n;return-1},Xt=qt,Yt=Array.prototype.splice;var $t=qt;var Zt=qt;var Ht=qt;var Kt=zt,Qt=function(e){var t=this.__data__,n=Xt(t,e);return!(n<0)&&(n==t.length-1?t.pop():Yt.call(t,n,1),--this.size,!0)},en=function(e){var t=this.__data__,n=$t(t,e);return n<0?void 0:t[n][1]},tn=function(e){return Zt(this.__data__,e)>-1},nn=function(e,t){var n=this.__data__,o=Ht(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this};function on(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var o=e[t];this.set(o[0],o[1])}}on.prototype.clear=Kt,on.prototype.delete=Qt,on.prototype.get=en,on.prototype.has=tn,on.prototype.set=nn;var rn=on,sn=xt(qe,"Map"),an=Vt,cn=rn,pn=sn;var un=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e};var ln=function(e,t){var n=e.__data__;return un(t)?n["string"==typeof t?"string":"hash"]:n.map},fn=ln;var hn=ln;var mn=ln;var dn=ln;var gn=function(){this.size=0,this.__data__={hash:new an,map:new(pn||cn),string:new an}},Tn=function(e){var t=fn(this,e).delete(e);return this.size-=t?1:0,t},yn=function(e){return hn(this,e).get(e)},In=function(e){return mn(this,e).has(e)},kn=function(e,t){var n=dn(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this};function vn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var o=e[t];this.set(o[0],o[1])}}vn.prototype.clear=gn,vn.prototype.delete=Tn,vn.prototype.get=yn,vn.prototype.has=In,vn.prototype.set=kn;var Cn=vn,_n=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},bn=function(e){return this.__data__.has(e)};function Pn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Cn;++t<n;)this.add(e[t])}Pn.prototype.add=Pn.prototype.push=_n,Pn.prototype.has=bn;var xn=Pn;var En=function(e,t,n,o){for(var r=e.length,s=n+(o?1:-1);o?s--:++s<r;)if(t(e[s],s,e))return s;return-1},Nn=function(e){return e!=e},Sn=function(e,t,n){for(var o=n-1,r=e.length;++o<r;)if(e[o]===t)return o;return-1};var On=function(e,t,n){return t==t?Sn(e,t,n):En(e,Nn,n)};var Ln=function(e,t){return!!(null==e?0:e.length)&&On(e,t,0)>-1};var An=function(e,t,n){for(var o=-1,r=null==e?0:e.length;++o<r;)if(n(t,e[o]))return!0;return!1};var wn=function(e,t){return e.has(t)};var Dn=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n},Jn=xt(qe,"Set"),Rn=function(){},jn=Jn&&1/Dn(new Jn([,-0]))[1]==1/0?function(e){return new Jn(e)}:Rn,Un=xn,Bn=Ln,Fn=An,Gn=wn,Mn=jn,Vn=Dn;var zn=function(e,t,n){var o=-1,r=Bn,s=e.length,a=!0,i=[],c=i;if(n)a=!1,r=Fn;else if(s>=200){var p=t?null:Mn(e);if(p)return Vn(p);a=!1,r=Gn,c=new Un}else c=t?[]:i;e:for(;++o<s;){var u=e[o],l=t?t(u):u;if(u=n||0!==u?u:0,a&&l==l){for(var f=c.length;f--;)if(c[f]===l)continue e;t&&c.push(l),i.push(u)}else r(c,l,n)||(c!==i&&c.push(l),i.push(u))}return i};var Wn=function(e){return e&&e.length?zn(e):[]},qn=function(){function e(){}return e.generate=function(t){return i(this,void 0,void 0,(function(){var n,o,s,a,i,p,u;return c(this,(function(c){switch(c.label){case 0:return[4,Oe(r.default.join(process.cwd(),"src","components","__generated__","types"))];case 1:c.sent(),n={content:"",imports:[],internalCustomDatas:[]},c.label=2;case 2:c.trys.push([2,5,,6]),t.customData.forEach((function(o){e.generateAllCustomDataTypes(o,n,t)})),o=0,s=0;do{o=n.internalCustomDatas.length,n.internalCustomDatas.forEach((function(o){e.generateAllCustomDataTypes(o,n,t)})),(s=n.internalCustomDatas.length)!==o&&(n.internalCustomDatas=n.internalCustomDatas.splice(o,s))}while(o!==s);return[4,Xn.generate(t,n)];case 3:return c.sent(),a=r.default.join(process.cwd(),"src","components","__generated__"),n.imports=Wn(n.imports),i="import {\r\n",n.imports.forEach((function(e){i+="\t".concat(e,",\r\n")})),p=(i+='} from "@ikas/storefront"\r\n\r\n')+n.content,[4,Le(a,"types.ts",p)];case 4:return[2,c.sent()];case 5:return u=c.sent(),console.log(u),[2,!1];case 6:return[2]}}))}))},e.generateAllCustomDataTypes=function(t,o,r){var s=t.type===n.IkasThemeJsonComponentPropType.ENUM,a="export ".concat(s?"enum":"type"," ").concat(e.generateTypeName(t)).concat(s?"":" = ","{ \r\n"),i="};\r\n\r\n";t.type!==n.IkasThemeJsonComponentPropType.DYNAMIC_LIST&&t.type!==n.IkasThemeJsonComponentPropType.STATIC_LIST||!t.nestedData?t.type===n.IkasThemeJsonComponentPropType.ENUM&&t.enumOptions?(o.content+=a,t.enumOptions.forEach((function(e){var t=e.value;e.value&&!isNaN(parseInt(e.value))&&(t="_"+e.value),o.content+='\t"'.concat(t,'" = "').concat(null==e?void 0:e.value,'",'),o.content+="\r\n"})),o.content+=i):(o.content+=a,t.nestedData&&t.nestedData.forEach((function(t){e.genenateCustomDataType(t,o,r),o.content+="\r\n"})),o.content+=i):e.generateAllCustomDataTypes(t.nestedData[0],o,r)},e.genenateCustomDataType=function(t,o,r){var s=e.getType(t,o,r);t.key&&t.key[0].match(/^\d/)&&(t.key="_"+t.key),o.content+="\t".concat(t.key).concat(t.isRequired?"":"?",": ").concat(s).concat([n.IkasThemeJsonComponentPropType.DYNAMIC_LIST,n.IkasThemeJsonComponentPropType.STATIC_LIST].includes(t.type)?"[]":"").concat(t.type===n.IkasThemeJsonComponentPropType.ENUM?",":";")},e.getType=function(t,o,r){var s="";switch(t.type){case n.IkasThemeJsonComponentPropType.TEXT:case n.IkasThemeJsonComponentPropType.RICH_TEXT:case n.IkasThemeJsonComponentPropType.COLOR:s="string";break;case n.IkasThemeJsonComponentPropType.BOOLEAN:s="boolean";break;case n.IkasThemeJsonComponentPropType.IMAGE:s="IkasImage",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.IMAGE_LIST:s="IkasImage[]",o.imports.push("IkasImage");break;case n.IkasThemeJsonComponentPropType.LINK:s="IkasNavigationLink",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.LIST_OF_LINK:s="IkasNavigationLink[]",o.imports.push("IkasNavigationLink");break;case n.IkasThemeJsonComponentPropType.PRODUCT_DETAIL:s="IkasProduct",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.PRODUCT_LIST:s="IkasProductList",o.imports.push("IkasProductList");break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE:s="IkasProductAttribute",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE_LIST:s="IkasProductAttribute[]",o.imports.push("IkasProductAttribute");break;case n.IkasThemeJsonComponentPropType.BRAND:s="IkasBrand",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BRAND_LIST:s="IkasBrandList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.CATEGORY:s="IkasCategory",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.CATEGORY_LIST:s="IkasCategoryList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.CUSTOM:var a=r.customData.find((function(e){return e.id===t.customDataId}));a&&(s=e.generateTypeName(a));break;case n.IkasThemeJsonComponentPropType.COMPONENT:s="IkasComponentRenderer",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.COMPONENT_LIST:s="IkasComponentRenderer[]",o.imports.push("IkasComponentRenderer");break;case n.IkasThemeJsonComponentPropType.BLOG:s="IkasBlog",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BLOG_LIST:s="IkasBlogList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY:s="IkasBlogCategory",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY_LIST:s="IkasBlogCategoryList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.RAFFLE:s="IkasRaffle",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.RAFFLE_LIST:s="IkasRaffleList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.SLIDER:s="IkasSlider",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.ENUM:s=e.generateTypeName(t),o.content.includes("export enum ".concat(s))||o.internalCustomDatas.push(t);break;case n.IkasThemeJsonComponentPropType.OBJECT:s=e.generateTypeName(t);break;case n.IkasThemeJsonComponentPropType.DYNAMIC_LIST:case n.IkasThemeJsonComponentPropType.STATIC_LIST:t.nestedData&&(t.nestedData[0].type===n.IkasThemeJsonComponentPropType.OBJECT||t.nestedData[0].type===n.IkasThemeJsonComponentPropType.ENUM?(s=e.generateTypeName(t.nestedData[0]),o.content.includes("export type ".concat(s))||o.internalCustomDatas.push(t.nestedData[0])):s=e.getType(t.nestedData[0],o,r))}return s},e.generateTypeName=function(e){if(e.typescriptName)return e.typescriptName;var t=e.name||"";return(t=(t=t.replace(/\s/g,"")).replace(/\W/g,""))[0].match(/^\d/)&&(t="_"+t),e.type===n.IkasThemeJsonComponentPropType.ENUM&&(t+="Enum"),t},e}(),Xn=function(){function e(){}return e.generate=function(t,n){return i(this,void 0,void 0,(function(){return c(this,(function(o){return t.components.forEach((function(o){o.props.length>0&&"checkout"!==o.id&&(n.content+="export type ".concat(e.generatePropTypeName(o),"Props = {\n"),o.props.forEach((function(o){n.content+="\t".concat(o.name,": ").concat(e.getType(o,t,n),";\n")})),n.content+="};\r\n\r\n")})),[2]}))}))},e.getType=function(e,t,o){var r="";switch(e.type){case n.IkasThemeJsonComponentPropType.TEXT:case n.IkasThemeJsonComponentPropType.RICH_TEXT:case n.IkasThemeJsonComponentPropType.COLOR:r="string";break;case n.IkasThemeJsonComponentPropType.BOOLEAN:r="boolean";break;case n.IkasThemeJsonComponentPropType.IMAGE:r="IkasImage",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.IMAGE_LIST:r="IkasImage[]",o.imports.push("IkasImage");break;case n.IkasThemeJsonComponentPropType.LINK:r="IkasNavigationLink",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.LIST_OF_LINK:r="IkasNavigationLink[]",o.imports.push("IkasNavigationLink");break;case n.IkasThemeJsonComponentPropType.PRODUCT_DETAIL:r="IkasProduct",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.PRODUCT_LIST:r="IkasProductList",o.imports.push("IkasProductList");break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE:r="IkasProductAttribute",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE_LIST:r="IkasProductAttribute[]",o.imports.push("IkasProductAttribute");break;case n.IkasThemeJsonComponentPropType.BRAND:r="IkasBrand",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BRAND_LIST:r="IkasBrandList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.CATEGORY:r="IkasCategory",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.CATEGORY_LIST:r="IkasCategoryList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.CUSTOM:var s=t.customData.find((function(t){return t.id===e.customDataId}));s&&(r=qn.getType(s,o,t),s.type!==n.IkasThemeJsonComponentPropType.DYNAMIC_LIST&&s.type!==n.IkasThemeJsonComponentPropType.STATIC_LIST||(r+="[]"));break;case n.IkasThemeJsonComponentPropType.COMPONENT:r="IkasComponentRenderer",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.COMPONENT_LIST:r="IkasComponentRenderer[]",o.imports.push("IkasComponentRenderer");break;case n.IkasThemeJsonComponentPropType.BLOG:r="IkasBlog",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BLOG_LIST:r="IkasBlogList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY:r="IkasBlogCategory",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY_LIST:r="IkasBlogCategoryList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.RAFFLE:r="IkasRaffle",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.RAFFLE_LIST:r="IkasRaffleList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.SLIDER:r="IkasSlider",o.imports.push(r)}return r},e.generatePropTypeName=function(e){if(""!==e.displayName){var t=(e.dir||"").split("-"),n="";return t.forEach((function(e,t){return n+=e.charAt(0).toUpperCase()+e.slice(1)})),n[0].match(/^\d/)&&(n="_"+n),n}},e}();function Yn(e){return i(this,void 0,void 0,(function(){var t,n,o,r,s,a;return c(this,(function(i){switch(i.label){case 0:return[4,Fe.getTheme()];case 1:return(t=i.sent())?[3,3]:[4,Fe.generateInitialThemeJsonFile()];case 2:i.sent(),i.label=3;case 3:return[4,Fe.getTheme()];case 4:return t=i.sent(),[4,Fe.generate(t)];case 5:return(a=i.sent())?[4,Me.generate(t)]:[3,7];case 6:a=i.sent(),i.label=7;case 7:return(s=a)?[4,Ve.generate()]:[3,9];case 8:s=i.sent(),i.label=9;case 9:return(r=s)?[4,we.generate()]:[3,11];case 10:r=i.sent(),i.label=11;case 11:return(o=r)?[4,Be.generate(e)]:[3,13];case 12:o=i.sent(),i.label=13;case 13:return(n=o)?[4,qn.generate(t)]:[3,15];case 14:n=i.sent(),i.label=15;case 15:return[2,n]}}))}))}!function(){i(this,void 0,void 0,(function(){var e,t;return c(this,(function(n){switch(n.label){case 0:return e=[{name:"generate",alias:"g",type:Boolean},{name:"dev",alias:"d",type:Boolean}],(t=Se(e)).generate?[4,Yn(!!t.dev?"dev":"prod")]:[3,2];case 1:n.sent()?console.log("Project files generated successfully!"):console.log("Project files generate failed!"),n.label=2;case 2:return[2]}}))}))}();
3
- //# sourceMappingURL=ikas.cjs.map
2
+ "use strict";var e=require("path"),t=require("fs"),n=require("@ikas/storefront-models");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=o(e),s=o(t),a=function(){return a=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},a.apply(this,arguments)};function i(e,t,n,o){return new(n||(n=Promise))((function(r,s){function a(e){try{c(o.next(e))}catch(e){s(e)}}function i(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,i)}c((o=o.apply(e,t||[])).next())}))}function c(e,t){var n,o,r,s,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function i(s){return function(i){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,o&&(r=2&s[0]?o.return:s[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;switch(o=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(r=a.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){a.label=s[1];break}if(6===s[0]&&a.label<r[1]){a.label=r[1],r=s;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(s);break}r[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,i])}}}var p="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},u=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,l=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,f="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",h="[\\ud800-\\udfff]",m="["+f+"]",d="[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]",g="\\d+",T="[\\u2700-\\u27bf]",y="[a-z\\xdf-\\xf6\\xf8-\\xff]",I="[^\\ud800-\\udfff"+f+g+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",k="\\ud83c[\\udffb-\\udfff]",v="[^\\ud800-\\udfff]",C="(?:\\ud83c[\\udde6-\\uddff]){2}",_="[\\ud800-\\udbff][\\udc00-\\udfff]",b="[A-Z\\xc0-\\xd6\\xd8-\\xde]",P="(?:"+y+"|"+I+")",x="(?:"+b+"|"+I+")",E="(?:"+d+"|"+k+")"+"?",N="[\\ufe0e\\ufe0f]?"+E+("(?:\\u200d(?:"+[v,C,_].join("|")+")[\\ufe0e\\ufe0f]?"+E+")*"),S="(?:"+[T,C,_].join("|")+")"+N,O="(?:"+[v+d+"?",d,C,_,h].join("|")+")",L=RegExp("['’]","g"),A=RegExp(d,"g"),w=RegExp(k+"(?="+k+")|"+O+N,"g"),D=RegExp([b+"?"+y+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[m,b,"$"].join("|")+")",x+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[m,b+P,"$"].join("|")+")",b+"?"+P+"+(?:['’](?:d|ll|m|re|s|t|ve))?",b+"+(?:['’](?:D|LL|M|RE|S|T|VE))?",g,S].join("|"),"g"),J=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0\\ufe0e\\ufe0f]"),R=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,j="object"==typeof p&&p&&p.Object===Object&&p,U="object"==typeof self&&self&&self.Object===Object&&self,B=j||U||Function("return this")();var F,G=(F={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"ss"},function(e){return null==F?void 0:F[e]});function M(e){return J.test(e)}function V(e){return M(e)?function(e){return e.match(w)||[]}(e):function(e){return e.split("")}(e)}var z=Object.prototype.toString,W=B.Symbol,q=W?W.prototype:void 0,X=q?q.toString:void 0;function Y(e){if("string"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==z.call(e)}(e))return X?X.call(e):"";var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}function $(e,t,n){var o=e.length;return n=void 0===n?o:n,!t&&n>=o?e:function(e,t,n){var o=-1,r=e.length;t<0&&(t=-t>r?0:r+t),(n=n>r?r:n)<0&&(n+=r),r=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(r);++o<r;)s[o]=e[o+t];return s}(e,t,n)}function Z(e){return null==e?"":Y(e)}var H,K=(H=function(e,t,n){return t=t.toLowerCase(),e+(n?ee(Z(t).toLowerCase()):t)},function(e){return function(e,t,n,o){var r=-1,s=e?e.length:0;for(o&&s&&(n=e[++r]);++r<s;)n=t(n,e[r],r,e);return n}(function(e,t,n){return e=Z(e),void 0===(t=n?void 0:t)?function(e){return R.test(e)}(e)?function(e){return e.match(D)||[]}(e):function(e){return e.match(u)||[]}(e):e.match(t)||[]}(function(e){return(e=Z(e))&&e.replace(l,G).replace(A,"")}(e).replace(L,"")),H,"")});var Q,ee=(Q="toUpperCase",function(e){var t=M(e=Z(e))?V(e):void 0,n=t?t[0]:e.charAt(0),o=t?$(t,1).join(""):e.slice(1);return n[Q]()+o});var te,ne=(te=K)&&"object"==typeof te&&"default"in te?te.default:te;function oe(e){return Array.isArray(e)?e:void 0===e?[]:function(e){return function(e){return"object"==typeof e&&null!==e}(e)&&"number"==typeof e.length}(e)||e instanceof Set?Array.from(e):[e]}function re(e){return Array.isArray(e)?e:void 0===e?[]:function(e){return function(e){return"object"==typeof e&&null!==e}(e)&&"number"==typeof e.length}(e)?Array.prototype.slice.call(e):[e]}function se(e,t){const n=[],o=re(arguments);return o.splice(0,2),re(e).forEach(((e,r)=>{let s=[];o.forEach((t=>{"function"==typeof t?s=s.concat(t(e)):s.push(t)})),t(e)&&n.push({index:r,replaceWithValue:s})})),n.reverse().forEach((t=>{const n=[t.index,1].concat(t.replaceWithValue);e.splice.apply(e,n)})),e}const ae={short:/^-([^\d-])$/,long:/^--(\S+)/,combinedShort:/^-[^\d-]{2,}$/,optEquals:/^(--\S+?)=(.*)/};class ie extends Array{load(e){if(this.clear(),e&&e!==process.argv)e=oe(e);else{e=process.argv.slice(0);const t=process.execArgv.some(he)?1:2;e.splice(0,t)}e.forEach((e=>this.push(String(e))))}clear(){this.length=0}expandOptionEqualsNotation(){if(this.some((e=>ae.optEquals.test(e)))){const e=[];this.forEach((t=>{const n=t.match(ae.optEquals);n?e.push(n[1],n[2]):e.push(t)})),this.clear(),this.load(e)}}expandGetoptNotation(){this.hasCombinedShortOptions()&&se(this,ae.combinedShort,ce)}hasCombinedShortOptions(){return this.some((e=>ae.combinedShort.test(e)))}static from(e){const t=new this;return t.load(e),t}}function ce(e){return(e=e.slice(1)).split("").map((e=>"-"+e))}function pe(e){return ae.optEquals.test(e)}function ue(e){return(ae.short.test(e)||ae.long.test(e))&&!ae.optEquals.test(e)}function le(e){return ae.short.test(e)?e.match(ae.short)[1]:function(e){return ae.long.test(e)&&!pe(e)}(e)?e.match(ae.long)[1]:pe(e)?e.match(ae.optEquals)[1].replace(/^--/,""):null}function fe(e){return!(ue(e)||ae.combinedShort.test(e)||ae.optEquals.test(e))}function he(e){return["--eval","-e"].indexOf(e)>-1||e.startsWith("--eval=")}function me(e){return"object"==typeof e&&null!==e}function de(e){return void 0!==e}function ge(e){return"function"==typeof e}var Te={isNumber:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},isString:function(e){return"string"==typeof e},isBoolean:function(e){return"boolean"==typeof e},isPlainObject:function(e){return null!==e&&"object"==typeof e&&e.constructor===Object},isArrayLike:function(e){return me(e)&&"number"==typeof e.length},isObject:me,isDefined:de,isFunction:ge,isClass:function(e){return!!ge(e)&&/^class /.test(Function.prototype.toString.call(e))},isPrimitive:function(e){if(null===e)return!0;switch(typeof e){case"string":case"number":case"symbol":case"undefined":case"boolean":return!0;default:return!1}},isPromise:function(e){if(e){const t=de(Promise)&&e instanceof Promise,n=e.then&&"function"==typeof e.then;return!(!t&&!n)}return!1},isIterable:function(e){return!(null===e||!de(e))&&("function"==typeof e[Symbol.iterator]||"function"==typeof e[Symbol.asyncIterator])}};class ye{constructor(e){this.name=e.name,this.type=e.type||String,this.alias=e.alias,this.multiple=e.multiple,this.lazyMultiple=e.lazyMultiple,this.defaultOption=e.defaultOption,this.defaultValue=e.defaultValue,this.group=e.group;for(const t in e)this[t]||(this[t]=e[t])}isBoolean(){return this.type===Boolean||Te.isFunction(this.type)&&"Boolean"===this.type.name}isMultiple(){return this.multiple||this.lazyMultiple}static create(e){return new this(e)}}class Ie extends Array{validate(e){this.some((e=>!e.name))&&ke("INVALID_DEFINITIONS","Invalid option definitions: the `name` property is required on each definition");let t;this.some((e=>e.type&&"function"!=typeof e.type))&&ke("INVALID_DEFINITIONS","Invalid option definitions: the `type` property must be a setter fuction (default: `Boolean`)");this.some((e=>(t=e,Te.isDefined(e.alias)&&Te.isNumber(e.alias))))&&ke("INVALID_DEFINITIONS","Invalid option definition: to avoid ambiguity an alias cannot be numeric [--"+t.name+" alias is -"+t.alias+"]");this.some((e=>(t=e,Te.isDefined(e.alias)&&1!==e.alias.length)))&&ke("INVALID_DEFINITIONS","Invalid option definition: an alias must be a single character");this.some((e=>(t=e,"-"===e.alias)))&&ke("INVALID_DEFINITIONS",'Invalid option definition: an alias cannot be "-"');Ce(this.map((t=>e?t.name.toLowerCase():t.name)))&&ke("INVALID_DEFINITIONS","Two or more option definitions have the same name");Ce(this.map((t=>e&&Te.isDefined(t.alias)?t.alias.toLowerCase():t.alias)))&&ke("INVALID_DEFINITIONS","Two or more option definitions have the same alias");this.filter((e=>!0===e.defaultOption)).length>1&&ke("INVALID_DEFINITIONS","Only one option definition can be the defaultOption");this.some((e=>(t=e,e.isBoolean()&&e.defaultOption)))&&ke("INVALID_DEFINITIONS",`A boolean option ["${t.name}"] can not also be the defaultOption.`)}get(e,t){if(ue(e)){if(ae.short.test(e)){const n=le(e);if(t){const e=n.toLowerCase();return this.find((t=>Te.isDefined(t.alias)&&t.alias.toLowerCase()===e))}return this.find((e=>e.alias===n))}{const n=le(e);if(t){const e=n.toLowerCase();return this.find((t=>t.name.toLowerCase()===e))}return this.find((e=>e.name===n))}}return this.find((t=>t.name===e))}getDefault(){return this.find((e=>!0===e.defaultOption))}isGrouped(){return this.some((e=>e.group))}whereGrouped(){return this.filter(ve)}whereNotGrouped(){return this.filter((e=>!ve(e)))}whereDefaultValueSet(){return this.filter((e=>Te.isDefined(e.defaultValue)))}static from(e,t){if(e instanceof this)return e;const n=super.from(oe(e),(e=>ye.create(e)));return n.validate(t),n}}function ke(e,t){const n=new Error(t);throw n.name=e,n}function ve(e){return oe(e.group).some((e=>e))}function Ce(e){const t={};for(let n=0;n<e.length;n++){const o=e[n];if(t[o])return!0;Te.isDefined(o)&&(t[o]=!0)}}class _e{constructor(e,t){this.options=Object.assign({},t),this.definitions=Ie.from(e,this.options.caseInsensitive),this.argv=ie.from(this.options.argv),this.argv.hasCombinedShortOptions()&&se(this.argv,ae.combinedShort.test.bind(ae.combinedShort),(e=>(e=e.slice(1)).split("").map((t=>({origArg:`-${e}`,arg:"-"+t})))))}*[Symbol.iterator](){const e=this.definitions;let t,n,o,r,s,a=!1,i=!1;for(let c of this.argv){if(Te.isPlainObject(c)&&(s=c.origArg,c=c.arg),i&&this.options.stopAtFirstUnknown){yield{event:"unknown_value",arg:c,name:"_unknown",value:void 0};continue}if(ue(c))t=e.get(c,this.options.caseInsensitive),n=void 0,t?(n=!!t.isBoolean()||null,r="set"):r="unknown_option";else if(pe(c)){const o=c.match(ae.optEquals);t=e.get(o[1],this.options.caseInsensitive),t?t.isBoolean()?(yield{event:"unknown_value",arg:c,name:"_unknown",value:n,def:t},r="set",n=!0):(r="set",n=o[2]):r="unknown_option"}else fe(c)&&(t?(n=c,r="set"):(t=this.definitions.getDefault(),t&&!a?(n=c,r="set"):(r="unknown_value",t=void 0)));o=t?t.name:"_unknown";const p={event:r,arg:c,name:o,value:n,def:t};s&&(p.subArg=c,p.arg=s),yield p,"_unknown"===o&&(i=!0),t&&t.defaultOption&&!t.isMultiple()&&"set"===r&&(a=!0),t&&t.isBoolean()&&(t=void 0),t&&!t.multiple&&Te.isDefined(n)&&null!==n&&(t=void 0),n=void 0,r=void 0,o=void 0,s=void 0}}}const be=new WeakMap;class Pe{constructor(e){this.definition=new ye(e),this.state=null,this.resetToDefault()}get(){return be.get(this)}set(e){this._set(e,"set")}_set(e,t){const n=this.definition;if(n.isMultiple()){if(null!=e){const o=this.get();"default"===this.state&&(o.length=0),o.push(n.type(e)),this.state=t}}else{if(!n.isMultiple()&&"set"===this.state){const t=new Error(`Singular option already set [${this.definition.name}=${this.get()}]`);throw t.name="ALREADY_SET",t.value=e,t.optionName=n.name,t}null==e?be.set(this,e):(be.set(this,n.type(e)),this.state=t)}}resetToDefault(){Te.isDefined(this.definition.defaultValue)?this.definition.isMultiple()?be.set(this,oe(this.definition.defaultValue).slice()):be.set(this,this.definition.defaultValue):this.definition.isMultiple()?be.set(this,[]):be.set(this,null),this.state="default"}static create(e){return(e=new ye(e)).isBoolean()?xe.create(e):new this(e)}}class xe extends Pe{set(e){super.set(!0)}static create(e){return new this(e)}}class Ee extends Map{constructor(e){super(),this.definitions=Ie.from(e),this.set("_unknown",Pe.create({name:"_unknown",multiple:!0}));for(const e of this.definitions.whereDefaultValueSet())this.set(e.name,Pe.create(e))}toObject(e){e=e||{};const t={};for(const n of this){const o=e.camelCase&&"_unknown"!==n[0]?ne(n[0]):n[0],r=n[1];("_unknown"!==o||r.get().length)&&(t[o]=r.get())}return e.skipUnknown&&delete t._unknown,t}}class Ne extends Ee{toObject(e){const t=super.toObject({skipUnknown:e.skipUnknown}),n=super.toObject(e),o=n._unknown;delete n._unknown;const r={_all:n};return o&&o.length&&(r._unknown=o),this.definitions.whereGrouped().forEach((n=>{const o=e.camelCase?ne(n.name):n.name,s=t[n.name];for(const e of oe(n.group))r[e]=r[e]||{},Te.isDefined(s)&&(r[e][o]=s)})),this.definitions.whereNotGrouped().forEach((n=>{const o=e.camelCase?ne(n.name):n.name,s=t[n.name];Te.isDefined(s)&&(r._none||(r._none={}),r._none[o]=s)})),r}}var Se=function(e,t){(t=t||{}).stopAtFirstUnknown&&(t.partial=!0),e=Ie.from(e,t.caseInsensitive);const n=new _e(e,{argv:t.argv,stopAtFirstUnknown:t.stopAtFirstUnknown,caseInsensitive:t.caseInsensitive}),o=new(e.isGrouped()?Ne:Ee)(e);for(const e of n){const n=e.subArg||e.arg;if(!t.partial){if("unknown_value"===e.event){const e=new Error(`Unknown value: ${n}`);throw e.name="UNKNOWN_VALUE",e.value=n,e}if("unknown_option"===e.event){const e=new Error(`Unknown option: ${n}`);throw e.name="UNKNOWN_OPTION",e.optionName=n,e}}let r;o.has(e.name)?r=o.get(e.name):(r=Pe.create(e.def),o.set(e.name,r)),"_unknown"===e.name?r.set(n):r.set(e.value)}return o.toObject({skipUnknown:!t.partial,camelCase:t.camelCase})};function Oe(e,t){return i(this,void 0,void 0,(function(){return c(this,(function(n){try{return s.default.readdirSync(e).forEach((function(n){(null==t?void 0:t.includes(n))||s.default.unlinkSync(r.default.join(e,n))})),[2,!0]}catch(e){return[2,!1]}return[2]}))}))}function Le(e,t,n){var o;return i(this,void 0,void 0,(function(){var a,i,p;return c(this,(function(c){try{return a=e,i=function(e){var t=e.split("/");return t.length>1?{dirParts:t.slice(0,t.length-1),filePart:t[t.length-1]}:{filePart:e}}(t),(null===(o=i.dirParts)||void 0===o?void 0:o.length)&&(a=r.default.join.apply(r.default,function(e,t,n){if(n||2===arguments.length)for(var o,r=0,s=t.length;r<s;r++)!o&&r in t||(o||(o=Array.prototype.slice.call(t,0,r)),o[r]=t[r]);return e.concat(o||Array.prototype.slice.call(t))}([a],i.dirParts,!1))),s.default.existsSync(a)||s.default.mkdirSync(a,{recursive:!0}),p=r.default.join(a,i.filePart),s.default.writeFileSync(p,n),[2,!0]}catch(e){return console.error(e),[2,!1]}return[2]}))}))}var Ae=[{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.GetComponentDirs.getComponentDirs;\nexport const config = IkasLocalThemeAPI.GetComponentDirs.config;\n',fileName:"getComponentDirs.ts"},{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.GetTheme.getTheme;\nexport const config = IkasLocalThemeAPI.GetTheme.config;\n',fileName:"getTheme.ts"},{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.UpdateTheme.updateTheme;\nexport const config = IkasLocalThemeAPI.UpdateTheme.config;\n',fileName:"updateTheme.ts"},{content:'import { IkasLocalThemeAPI } from "@ikas/storefront-next";\n\nexport default IkasLocalThemeAPI.UploadTheme.uploadTheme;\nexport const config = IkasLocalThemeAPI.UploadTheme.config;\n',fileName:"uploadTheme.ts"}],we=function(){function e(){}return e.generate=function(){return i(this,void 0,void 0,(function(){var t,n,o,s,a;return c(this,(function(i){switch(i.label){case 0:return[4,Oe(r.default.join(process.cwd(),"src","pages","api"))];case 1:i.sent(),t=!0,n=0,o=Ae,i.label=2;case 2:return n<o.length?(s=o[n],(a=t)?[4,e.generateAPI(s)]:[3,4]):[3,6];case 3:a=i.sent(),i.label=4;case 4:t=a,i.label=5;case 5:return n++,[3,2];case 6:return[2,t]}}))}))},e.generateAPI=function(e){return Le(r.default.join(process.cwd(),"src","pages","api"),e.fileName,e.content)},e}();function De(e,t){return Object.entries(e||{}).reduce((function(e,n){var o=n[0],r=n[1];return o===t?e.concat(r):"object"==typeof r?e.concat(De(r,t)):e}),[])}var Je={next:"12.2.0",react:"17.0.2","react-dom":"17.0.2",mobx:"^6.1.3",axios:"^0.26.0",lodash:"^4.17.20",archiver:"^5.3.0",cors:"^2.8.5","html-react-parser":"^1.4.0","mobx-react-lite":"^3.1.5","next-transpile-modules":"^9.0.0","@ikas/storefront":"^4.0.0-alpha.48","@ikas/storefront-api":"^4.0.0-alpha.48","@ikas/storefront-assets":"^4.0.0-alpha.48","@ikas/storefront-cmd":"^4.0.0-alpha.48","@ikas/storefront-config":"^4.0.0-alpha.48","@ikas/storefront-model-functions":"^4.0.0-alpha.48","@ikas/storefront-models":"^4.0.0-alpha.48","@ikas/storefront-next":"^4.0.0-alpha.48","@ikas/storefront-providers":"^4.0.0-alpha.48"},Re={"@types/node":"^14.14.6","@types/react":"^17.0.2","@types/react-dom":"^17.0.2","@types/cors":"^2.8.9","@types/archiver":"^5.1.0","@typescript-eslint/eslint-plugin":"^2.10.0","@typescript-eslint/parser":"^2.10.0",eslint:"^6.6.0","eslint-config-react-app":"^5.2.1","eslint-loader":"3.0.3","eslint-plugin-flowtype":"4.6.0","eslint-plugin-import":"2.20.1","eslint-plugin-jsx-a11y":"6.2.3","eslint-plugin-react":"7.19.0","eslint-plugin-react-hooks":"^1.6.1",sass:"^1.43.4",typescript:"^4.5.2"},je={"@types/react":"17.0.2","@types/react-dom":"17.0.2"},Ue={upgradeDependencies:"yarn upgrade @ikas/storefront @ikas/storefront-api @ikas/storefront-assets @ikas/storefront-cmd @ikas/storefront-config @ikas/storefront-model-functions @ikas/storefront-models @ikas/storefront-next @ikas/storefront-providers",dev:"next dev -p 3333",build:"next build",start:"next start",generate:"ikas --generate","prettier:all":"npx prettier@^2.1 './**/src/**/*.(ts|tsx|css|scss)' --write"},Be=function(){function e(){}return e.generate=function(t,n){return i(this,void 0,void 0,(function(){var o,r,s,a;return c(this,(function(i){switch(i.label){case 0:return[4,e.generateTsConfig(n)];case 1:return(a=i.sent())?[4,e.generateBabelRc(n)]:[3,3];case 2:a=i.sent(),i.label=3;case 3:return(s=a)?[4,e.generateNextConfig(n)]:[3,5];case 4:s=i.sent(),i.label=5;case 5:return(r=s)?[4,e.generatePackageJson(n)]:[3,7];case 6:r=i.sent(),i.label=7;case 7:return(o=r)?[4,e.generateEnv(t,n)]:[3,9];case 8:o=i.sent(),i.label=9;case 9:return[2,o]}}))}))},e.generateTsConfig=function(e){return Le(e||process.cwd(),"tsconfig.json",'{\n "compilerOptions": {\n "target": "esnext",\n "lib": [\n "dom",\n "dom.iterable",\n "esnext"\n ],\n "allowJs": true,\n "skipLibCheck": true,\n "strict": true,\n "forceConsistentCasingInFileNames": true,\n "experimentalDecorators": true,\n "noEmit": true,\n "esModuleInterop": true,\n "module": "esnext",\n "moduleResolution": "node",\n "resolveJsonModule": true,\n "isolatedModules": true,\n "jsx": "preserve",\n "baseUrl": ".",\n "useUnknownInCatchVariables": false,\n "incremental": true\n },\n "typeRoots": [\n "./node_modules/@types"\n ],\n "include": [\n "next-env.d.ts",\n "**/*.ts",\n "**/*.tsx",\n "**/typings/global.d.ts",\n ],\n "exclude": [\n "node_modules",\n "./src/pages/api",\n ]\n}')},e.generateBabelRc=function(e){return Le(e||process.cwd(),".babelrc",'{\n "presets": [\n [\n "next/babel",\n {\n "preset-react": { "throwIfNamespace": false },\n }\n ]\n ],\n "plugins": []\n}')},e.generateNextConfig=function(e){return Le(e||process.cwd(),"next.config.js",'const withTM = require("next-transpile-modules")([\n "@ikas/storefront",\n "@ikas/storefront-api",\n "@ikas/storefront-assets",\n "@ikas/storefront-cmd",\n "@ikas/storefront-config",\n "@ikas/storefront-model-functions",\n "@ikas/storefront-models",\n "@ikas/storefront-next",\n "@ikas/storefront-providers",\n]);\n\nconst config = {\n i18n: {\n defaultLocale: "en",\n locales: ["en"],\n localeDetection: false,\n },\n basePath: process.env.NEXTJS_BASE_PATH || "",\n\n images: {\n deviceSizes: [\n 180, 360, 540, 720, 900, 1080, 1296, 1512, 1728, 1950, 2560, 3840,\n ],\n },\n\n webpack: (config, { buildId, dev, isServer, defaultLoaders, webpack }) => {\n if (!isServer) {\n config.resolve.fallback.fs = false;\n config.resolve.fallback.net = false;\n config.resolve.fallback.encoding = false;\n config.resolve.fallback.crypto = false;\n config.resolve.fallback.assert = false;\n config.resolve.fallback.stream = false;\n config.module.rules = [\n ...config.module.rules,\n {\n test: /@ikas/i,\n sideEffects: false,\n },\n ];\n }\n return config;\n },\n};\n\nmodule.exports = withTM(config);')},e.generatePackageJson=function(e){return i(this,void 0,void 0,(function(){var t,n,o,i,p;return c(this,(function(c){switch(c.label){case 0:return c.trys.push([0,3,,4]),t=r.default.join(e||process.cwd(),"package.json"),(n=s.default.readFileSync(t)).length?(o=JSON.parse(n.toString()),(i=function(e){var t="dev"===e?Re:Je,n="dev"===e?"devDependencies":"dependencies";o[n]&&"object"==typeof o[n]?o[n]=a(a({},o[n]),t):o[n]=t;var r,s=(r=o[n],Object.keys(r).sort().reduce((function(e,t){return e[t]=r[t],e}),{}));o[n]=s})("dev"),i("normal"),o.scripts&&"object"==typeof o.scripts?o.scripts=a(a({},o.scripts),Ue):o.scripts=Ue,o.resolutions=a(a({},o.resolutions),je),[4,Le(t,"",JSON.stringify(o,null,2))]):[3,2];case 1:return[2,c.sent()];case 2:return[3,4];case 3:return p=c.sent(),console.error(p),[2,!1];case 4:return[2]}}))}))},e.generateEnv=function(e,t){var n="dev"===e?"NEXT_PUBLIC_ENV=local\nNEXT_PUBLIC_BASE_URL=https://api.myikas.dev/api/sf\nNEXT_PUBLIC_IMG_BASE_URL=https://cdn.myikas.dev/\nNEXT_PUBLIC_UPLOAD_GQL_URL=https://api.myikas.dev/api/admin/graphql\nNEXT_PUBLIC_GQL_URL=https://api.myikas.dev/api/sf/graphql\n":"NEXT_PUBLIC_ENV=local\nNEXT_PUBLIC_BASE_URL=https://api.myikas.com/api/sf\nNEXT_PUBLIC_IMG_BASE_URL=https://cdn.myikas.com/\nNEXT_PUBLIC_UPLOAD_GQL_URL=https://api.myikas.com/api/admin/graphql\nNEXT_PUBLIC_GQL_URL=https://api.myikas.com/api/sf/graphql\n";return Le(t||process.cwd(),".env",n)},e}(),Fe=function(){function e(){}return e.generate=function(e){return Le(r.default.join(process.cwd(),"src","theme.json"),"",JSON.stringify(e,null,2))},e.generateInitialThemeJsonFile=function(){var t={pages:[],components:[],name:"My Theme",customData:[],settings:{colors:[],favicon:{id:null},fontFamily:{name:null,variants:null},stockPreference:n.IkasThemeJsonStockPreference.SHOW_ALL}};return t.pages.push({id:"1",components:[],canonicals:null,description:null,disableIndex:null,name:null,pageTitle:null,slug:null,specifications:[],type:n.IkasThemeJsonPageType.INDEX}),e.generate(t)},e.getTheme=function(){return i(this,void 0,void 0,(function(){var e,t;return c(this,(function(n){try{return e=r.default.join(process.cwd(),"src","theme.json"),[2,(t=s.default.readFileSync(e)).length?JSON.parse(t.toString()):null]}catch(e){console.error(e)}return[2]}))}))},e}(),Ge=[{path:"[slug]/index.tsx",pageComponentName:"SlugPage",pageTypes:[n.IkasThemeJsonPageType.PRODUCT,n.IkasThemeJsonPageType.CATEGORY,n.IkasThemeJsonPageType.BRAND],isDynamicSSG:!0},{path:"account/orders/[id].tsx",pageComponentName:"OrderDetailPage",pageTypes:[n.IkasThemeJsonPageType.ORDER_DETAIL],isSSR:!0},{path:"account/orders/index.tsx",pageComponentName:"OrdersPage",pageTypes:[n.IkasThemeJsonPageType.ORDERS]},{path:"account/addresses.tsx",pageComponentName:"AddressesPage",pageTypes:[n.IkasThemeJsonPageType.ADDRESSES]},{path:"account/favorite-products.tsx",pageComponentName:"FavoriteProductsPage",pageTypes:[n.IkasThemeJsonPageType.FAVORITE_PRODUCTS]},{path:"account/forgot-password.tsx",pageComponentName:"ForgotPasswordPage",pageTypes:[n.IkasThemeJsonPageType.FORGOT_PASSWORD]},{path:"account/index.tsx",pageComponentName:"AccountPage",pageTypes:[n.IkasThemeJsonPageType.ACCOUNT]},{path:"account/login.tsx",pageComponentName:"LoginPage",pageTypes:[n.IkasThemeJsonPageType.LOGIN]},{path:"account/raffles.tsx",pageComponentName:"AccountRafflesPage",pageTypes:[n.IkasThemeJsonPageType.RAFFLE_ACCOUNT]},{path:"account/recover-password.tsx",pageComponentName:"RecoverPasswordPage",pageTypes:[n.IkasThemeJsonPageType.RECOVER_PASSWORD]},{path:"account/register.tsx",pageComponentName:"RegisterPage",pageTypes:[n.IkasThemeJsonPageType.REGISTER]},{path:"blog/[slug].tsx",pageComponentName:"BlogSlugPage",pageTypes:[n.IkasThemeJsonPageType.BLOG,n.IkasThemeJsonPageType.BLOG_CATEGORY],isDynamicSSG:!0},{path:"blog/index.tsx",pageComponentName:"BlogPage",pageTypes:[n.IkasThemeJsonPageType.BLOG_INDEX]},{path:"pages/[slug].tsx",pageComponentName:"CustomPage",pageTypes:[n.IkasThemeJsonPageType.CUSTOM],isDynamicSSG:!0},{path:"raffle/[slug].tsx",pageComponentName:"RafflePage",pageTypes:[n.IkasThemeJsonPageType.RAFFLE_DETAIL],isDynamicSSG:!0},{path:"raffle/index.tsx",pageComponentName:"RafflesPage",pageTypes:[n.IkasThemeJsonPageType.RAFFLE]},{path:"404.tsx",pageComponentName:"NotFoundPage",pageTypes:[n.IkasThemeJsonPageType.NOT_FOUND]},{path:"cart.tsx",pageComponentName:"CartPage",pageTypes:[n.IkasThemeJsonPageType.CART]},{path:"index.tsx",pageComponentName:"IndexPage",pageTypes:[n.IkasThemeJsonPageType.INDEX]},{path:"search.tsx",pageComponentName:"SearchPage",pageTypes:[n.IkasThemeJsonPageType.SEARCH]},{path:"checkout.tsx",pageComponentName:"CheckoutPage",pageTypes:[],isCheckout:!0},{path:"editor.tsx",pageComponentName:"EditorPage",pageTypes:[],isEditor:!0}],Me=function(){function e(){}return e.generate=function(t,n){return i(this,void 0,void 0,(function(){var o;return c(this,(function(s){switch(s.label){case 0:return[4,Oe(r.default.join(n||process.cwd(),"src","components","__generated__"))];case 1:return s.sent(),[4,e.generateAllPageComponentImportsFiles(t,n)];case 2:return(o=s.sent())?[4,e.generateAllComponentImportsFileForEditor(t,n)]:[3,4];case 3:o=s.sent(),s.label=4;case 4:return[2,o]}}))}))},e.generateAllPageComponentImportsFiles=function(t,n){return i(this,void 0,void 0,(function(){var o,r,s,a,i;return c(this,(function(c){switch(c.label){case 0:o=!0,r=0,s=Ge,c.label=1;case 1:return r<s.length?(a=s[r],(i=o)?[4,e.generatePageComponentImportsFileWithInfo(a,t,n)]:[3,3]):[3,5];case 2:i=c.sent(),c.label=3;case 3:o=i,c.label=4;case 4:return r++,[3,1];case 5:return[2,o]}}))}))},e.generatePageComponentImportsFileWithInfo=function(t,n,o){return i(this,void 0,void 0,(function(){var r,s,a,i;return c(this,(function(c){switch(c.label){case 0:if(t.isCheckout||t.isEditor)return[2,!0];c.label=1;case 1:return c.trys.push([1,3,,4]),r=n.components,s=[],t.pageTypes.forEach((function(e){var t=n.pages.filter((function(t){return t.type===e}));t.length&&t.forEach((function(e){var t,n=e.components;(null===(t=e.specifications)||void 0===t?void 0:t.length)&&e.specifications.forEach((function(e){n.push.apply(n,e.components)})),s.push.apply(s,n.map((function(e){return e.componentId}))),n.forEach((function(e){if(r.find((function(t){return t.id===e.componentId}))){var t=De(e.propValues,"componentId");s.push.apply(s,t)}}))}))})),a=r.filter((function(e){return s.includes(e.id)&&"checkout"!==e.id})),[4,e.generateComponentImportsFile(a,t,o)];case 2:return[2,c.sent()];case 3:return i=c.sent(),console.error(i),[2,!1];case 4:return[2]}}))}))},e.generatePageComponentImportsFileWithType=function(t,o,r){if(t!==n.IkasThemeJsonPageType.CHECKOUT){try{var s=Ge.find((function(e){return e.pageTypes.includes(t)}));if(s)return e.generatePageComponentImportsFileWithInfo(s,o,r)}catch(e){console.error(e)}return!1}},e.generateComponentImportsFile=function(e,t,n){try{var o="";return e.filter((function(e){return"checkout"!==e.id})).forEach((function(e,t){o+="import Component".concat(t,' from "src/components/').concat(e.dir,'";\r\n')})),o+="\n const Components = {\n ".concat(e.map((function(e,t){return'"'.concat(e.id,'": Component').concat(t)})),"\n };\n "),o+="\r\n",o+="export default Components;",Le(r.default.join(n||process.cwd(),"src","components","__generated__","pages"),t.path.replace("tsx","ts"),o)}catch(e){return console.error(e),!1}},e.generateAllComponentImportsFileForEditor=function(e,t){return i(this,void 0,void 0,(function(){var n,o,s;return c(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,,3]),n='import dynamic from "next/dynamic";\r\n',n+='import { IkasEditorComponentLoader } from "@ikas/storefront";\r\n',n+="\r\n",n+="\r\n",(o=e.components.filter((function(e){return"checkout"!==e.id}))).filter((function(e){return"checkout"!==e.id})).forEach((function(e,t){n+="const Component".concat(t,' = dynamic(() => import("../').concat(e.dir,'"), { loading: () => <IkasEditorComponentLoader /> });\r\n')})),n+="\r\n",n+="\nconst Components = {\n ".concat(o.map((function(e,t){return'"'.concat(e.id,'": Component').concat(t)})),"\n};\n"),n+="\r\n",n+="export default Components;",[4,Le(r.default.join(t||process.cwd(),"src","components","__generated__"),"editor.tsx",n)];case 1:return[2,a.sent()];case 2:return s=a.sent(),console.error(s),[2,!1];case 3:return[2]}}))}))},e.generateAllComponentImportsFile=function(e,t){return i(this,void 0,void 0,(function(){var n,o,s;return c(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,,3]),n="",(o=e.components.filter((function(e){return"checkout"!==e.id}))).filter((function(e){return"checkout"!==e.id})).forEach((function(e,t){n+="import Component".concat(t,' from "../').concat(e.dir,'";\r\n')})),n+="\r\n",n+="\nconst Components = {\n ".concat(o.map((function(e,t){return'"'.concat(e.id,'": Component').concat(t)})),"\n};\n"),n+="\r\n",n+="export default Components;",[4,Le(r.default.join(t||process.cwd(),"src","components","__generated__"),"index.tsx",n)];case 1:return[2,a.sent()];case 2:return s=a.sent(),console.error(s),[2,!1];case 3:return[2]}}))}))},e}(),Ve=function(){function e(){}return e.generate=function(t){return i(this,void 0,void 0,(function(){var n,o,s,a,i,p,u,l,f,h,m;return c(this,(function(c){switch(c.label){case 0:return[4,Oe(r.default.join(t||process.cwd(),"src","pages"),["_app.tsx","_document.tsx","api"])];case 1:c.sent(),n=!0,o=0,s=Ge,c.label=2;case 2:return o<s.length?(a=s[o],(i=n)?[4,e.generatePageWithInfo(a,t)]:[3,4]):[3,6];case 3:i=c.sent(),c.label=4;case 4:n=i,c.label=5;case 5:return o++,[3,2];case 6:return p=Ge.find((function(e){return e.isCheckout})),u=Ge.find((function(e){return e.isEditor})),p?[4,e.generatePageWithInfo(p,t)]:[3,8];case 7:return f=c.sent(),[3,9];case 8:f=!1,c.label=9;case 9:return l=f,u?[4,e.generatePageWithInfo(u,t)]:[3,11];case 10:return m=c.sent(),[3,12];case 11:m=!1,c.label=12;case 12:return h=m,[2,n&&l&&h]}}))}))},e.generatePageWithInfo=function(e,t){return i(this,void 0,void 0,(function(){var n,o,s,a,i,p,u,l,f;return c(this,(function(c){switch(c.label){case 0:return c.trys.push([0,2,,3]),n="",e.isCheckout?n='import { CheckoutPage } from "@ikas/storefront";\nimport { CheckoutPage as CheckoutPageNext } from "@ikas/storefront-next";\n\nexport default CheckoutPage.default;\nexport const getStaticProps = CheckoutPageNext.getStaticProps;\n':e.isEditor?n='import { EditorPage } from "@ikas/storefront";\nimport { EditorPage as EditorPageNext } from "@ikas/storefront-next";\nimport Components from "../components/__generated__/editor";\n\nconst PageComponent = EditorPage.default;\n\nconst Page = (props: any) => {\n return <PageComponent components={Components} {...props} />;\n};\n\nexport default Page;\nexport const getStaticProps = EditorPageNext.getStaticProps;\n':(o=e.pageComponentName+"Next",s="import { ".concat(e.pageComponentName,' } from "@ikas/storefront";\r\n'),a="import { ".concat(e.pageComponentName," as ").concat(o,' } from "@ikas/storefront-next";\r\n'),i='import Components from "src/components/__generated__/pages/'.concat(e.path.replace(".tsx",""),'";\r\n'),p="\nconst PageComponent = ".concat(e.pageComponentName,".default;\n\nconst Page = (props: any) => {\n return <PageComponent components={Components} {...props} />;\n};\n\nexport default Page;\r\n"),u=e.isDynamicSSG?"export const getStaticPaths = ".concat(o,".getStaticPaths;\r\n"):"",l=e.isSSR?"export const getServerSideProps = ".concat(o,".getServerSideProps;\r\n"):"export const getStaticProps = ".concat(o,".getStaticProps;\r\n"),n=s+a+i+p+u+l),[4,Le(r.default.join(t||process.cwd(),"src","pages"),e.path,n)];case 1:return[2,c.sent()];case 2:return f=c.sent(),console.error(f),[2,!1];case 3:return[2]}}))}))},e.generatePageWithType=function(t){return i(this,void 0,void 0,(function(){var n;return c(this,(function(o){switch(o.label){case 0:return(n=Ge.find((function(e){return e.pageTypes.includes(t)})))?[4,e.generatePageWithInfo(n)]:[3,2];case 1:return[2,o.sent()];case 2:return[2,!1]}}))}))},e}(),ze="object"==typeof p&&p&&p.Object===Object&&p,We="object"==typeof self&&self&&self.Object===Object&&self,qe=ze||We||Function("return this")(),Xe=qe.Symbol,Ye=Xe,$e=Object.prototype,Ze=$e.hasOwnProperty,He=$e.toString,Ke=Ye?Ye.toStringTag:void 0;var Qe=function(e){var t=Ze.call(e,Ke),n=e[Ke];try{e[Ke]=void 0;var o=!0}catch(e){}var r=He.call(e);return o&&(t?e[Ke]=n:delete e[Ke]),r},et=Object.prototype.toString;var tt=Qe,nt=function(e){return et.call(e)},ot=Xe?Xe.toStringTag:void 0;var rt=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},st=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":ot&&ot in Object(e)?tt(e):nt(e)},at=rt;var it,ct=function(e){if(!at(e))return!1;var t=st(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},pt=qe["__core-js_shared__"],ut=(it=/[^.]+$/.exec(pt&&pt.keys&&pt.keys.IE_PROTO||""))?"Symbol(src)_1."+it:"";var lt=function(e){return!!ut&&ut in e},ft=Function.prototype.toString;var ht=ct,mt=lt,dt=rt,gt=function(e){if(null!=e){try{return ft.call(e)}catch(e){}try{return e+""}catch(e){}}return""},Tt=/^\[object .+?Constructor\]$/,yt=Function.prototype,It=Object.prototype,kt=yt.toString,vt=It.hasOwnProperty,Ct=RegExp("^"+kt.call(vt).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var _t=function(e,t){return null==e?void 0:e[t]},bt=function(e){return!(!dt(e)||mt(e))&&(ht(e)?Ct:Tt).test(gt(e))},Pt=_t;var xt=function(e,t){var n=Pt(e,t);return bt(n)?n:void 0},Et=xt(Object,"create"),Nt=Et;var St=function(){this.__data__=Nt?Nt(null):{},this.size=0};var Ot=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Lt=Et,At=Object.prototype.hasOwnProperty;var wt=function(e){var t=this.__data__;if(Lt){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return At.call(t,e)?t[e]:void 0},Dt=Et,Jt=Object.prototype.hasOwnProperty;var Rt=Et;var jt=St,Ut=Ot,Bt=wt,Ft=function(e){var t=this.__data__;return Dt?void 0!==t[e]:Jt.call(t,e)},Gt=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Rt&&void 0===t?"__lodash_hash_undefined__":t,this};function Mt(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var o=e[t];this.set(o[0],o[1])}}Mt.prototype.clear=jt,Mt.prototype.delete=Ut,Mt.prototype.get=Bt,Mt.prototype.has=Ft,Mt.prototype.set=Gt;var Vt=Mt;var zt=function(){this.__data__=[],this.size=0};var Wt=function(e,t){return e===t||e!=e&&t!=t};var qt=function(e,t){for(var n=e.length;n--;)if(Wt(e[n][0],t))return n;return-1},Xt=qt,Yt=Array.prototype.splice;var $t=qt;var Zt=qt;var Ht=qt;var Kt=zt,Qt=function(e){var t=this.__data__,n=Xt(t,e);return!(n<0)&&(n==t.length-1?t.pop():Yt.call(t,n,1),--this.size,!0)},en=function(e){var t=this.__data__,n=$t(t,e);return n<0?void 0:t[n][1]},tn=function(e){return Zt(this.__data__,e)>-1},nn=function(e,t){var n=this.__data__,o=Ht(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this};function on(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var o=e[t];this.set(o[0],o[1])}}on.prototype.clear=Kt,on.prototype.delete=Qt,on.prototype.get=en,on.prototype.has=tn,on.prototype.set=nn;var rn=on,sn=xt(qe,"Map"),an=Vt,cn=rn,pn=sn;var un=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e};var ln=function(e,t){var n=e.__data__;return un(t)?n["string"==typeof t?"string":"hash"]:n.map},fn=ln;var hn=ln;var mn=ln;var dn=ln;var gn=function(){this.size=0,this.__data__={hash:new an,map:new(pn||cn),string:new an}},Tn=function(e){var t=fn(this,e).delete(e);return this.size-=t?1:0,t},yn=function(e){return hn(this,e).get(e)},In=function(e){return mn(this,e).has(e)},kn=function(e,t){var n=dn(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this};function vn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var o=e[t];this.set(o[0],o[1])}}vn.prototype.clear=gn,vn.prototype.delete=Tn,vn.prototype.get=yn,vn.prototype.has=In,vn.prototype.set=kn;var Cn=vn,_n=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},bn=function(e){return this.__data__.has(e)};function Pn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Cn;++t<n;)this.add(e[t])}Pn.prototype.add=Pn.prototype.push=_n,Pn.prototype.has=bn;var xn=Pn;var En=function(e,t,n,o){for(var r=e.length,s=n+(o?1:-1);o?s--:++s<r;)if(t(e[s],s,e))return s;return-1},Nn=function(e){return e!=e},Sn=function(e,t,n){for(var o=n-1,r=e.length;++o<r;)if(e[o]===t)return o;return-1};var On=function(e,t,n){return t==t?Sn(e,t,n):En(e,Nn,n)};var Ln=function(e,t){return!!(null==e?0:e.length)&&On(e,t,0)>-1};var An=function(e,t,n){for(var o=-1,r=null==e?0:e.length;++o<r;)if(n(t,e[o]))return!0;return!1};var wn=function(e,t){return e.has(t)};var Dn=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n},Jn=xt(qe,"Set"),Rn=function(){},jn=Jn&&1/Dn(new Jn([,-0]))[1]==1/0?function(e){return new Jn(e)}:Rn,Un=xn,Bn=Ln,Fn=An,Gn=wn,Mn=jn,Vn=Dn;var zn=function(e,t,n){var o=-1,r=Bn,s=e.length,a=!0,i=[],c=i;if(n)a=!1,r=Fn;else if(s>=200){var p=t?null:Mn(e);if(p)return Vn(p);a=!1,r=Gn,c=new Un}else c=t?[]:i;e:for(;++o<s;){var u=e[o],l=t?t(u):u;if(u=n||0!==u?u:0,a&&l==l){for(var f=c.length;f--;)if(c[f]===l)continue e;t&&c.push(l),i.push(u)}else r(c,l,n)||(c!==i&&c.push(l),i.push(u))}return i};var Wn=function(e){return e&&e.length?zn(e):[]},qn=function(){function e(){}return e.generate=function(t,n){return i(this,void 0,void 0,(function(){var o,s,a,i,p,u,l;return c(this,(function(c){switch(c.label){case 0:return[4,Oe(r.default.join(n||process.cwd(),"src","components","__generated__","types"))];case 1:c.sent(),o={content:"",imports:[],internalCustomDatas:[]},c.label=2;case 2:c.trys.push([2,5,,6]),t.customData.forEach((function(n){e.generateAllCustomDataTypes(n,o,t)})),s=0,a=0;do{s=o.internalCustomDatas.length,o.internalCustomDatas.forEach((function(n){e.generateAllCustomDataTypes(n,o,t)})),(a=o.internalCustomDatas.length)!==s&&(o.internalCustomDatas=o.internalCustomDatas.splice(s,a))}while(s!==a);return[4,Xn.generate(t,o)];case 3:return c.sent(),i=r.default.join(n||process.cwd(),"src","components","__generated__"),o.imports=Wn(o.imports),p="import {\r\n",o.imports.forEach((function(e){p+="\t".concat(e,",\r\n")})),u=(p+='} from "@ikas/storefront"\r\n\r\n')+o.content,[4,Le(i,"types.ts",u)];case 4:return[2,c.sent()];case 5:return l=c.sent(),console.log(l),[2,!1];case 6:return[2]}}))}))},e.generateAllCustomDataTypes=function(t,o,r){var s=t.type===n.IkasThemeJsonComponentPropType.ENUM,a="export ".concat(s?"enum":"type"," ").concat(e.generateTypeName(t)).concat(s?"":" = ","{ \r\n"),i="};\r\n\r\n";t.type!==n.IkasThemeJsonComponentPropType.DYNAMIC_LIST&&t.type!==n.IkasThemeJsonComponentPropType.STATIC_LIST||!t.nestedData?t.type===n.IkasThemeJsonComponentPropType.ENUM&&t.enumOptions?(o.content+=a,t.enumOptions.forEach((function(e){var t=e.value;e.value&&!isNaN(parseInt(e.value))&&(t="_"+e.value),o.content+='\t"'.concat(t,'" = "').concat(null==e?void 0:e.value,'",'),o.content+="\r\n"})),o.content+=i):(o.content+=a,t.nestedData&&t.nestedData.forEach((function(t){e.genenateCustomDataType(t,o,r),o.content+="\r\n"})),o.content+=i):e.generateAllCustomDataTypes(t.nestedData[0],o,r)},e.genenateCustomDataType=function(t,o,r){var s=e.getType(t,o,r);t.key&&t.key[0].match(/^\d/)&&(t.key="_"+t.key),o.content+="\t".concat(t.key).concat(t.isRequired?"":"?",": ").concat(s).concat([n.IkasThemeJsonComponentPropType.DYNAMIC_LIST,n.IkasThemeJsonComponentPropType.STATIC_LIST].includes(t.type)?"[]":"").concat(t.type===n.IkasThemeJsonComponentPropType.ENUM?",":";")},e.getType=function(t,o,r){var s="";switch(t.type){case n.IkasThemeJsonComponentPropType.TEXT:case n.IkasThemeJsonComponentPropType.RICH_TEXT:case n.IkasThemeJsonComponentPropType.COLOR:s="string";break;case n.IkasThemeJsonComponentPropType.BOOLEAN:s="boolean";break;case n.IkasThemeJsonComponentPropType.IMAGE:s="IkasImage",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.IMAGE_LIST:s="IkasImage[]",o.imports.push("IkasImage");break;case n.IkasThemeJsonComponentPropType.LINK:s="IkasNavigationLink",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.LIST_OF_LINK:s="IkasNavigationLink[]",o.imports.push("IkasNavigationLink");break;case n.IkasThemeJsonComponentPropType.PRODUCT_DETAIL:s="IkasProduct",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.PRODUCT_LIST:s="IkasProductList",o.imports.push("IkasProductList");break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE:s="IkasProductAttribute",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE_LIST:s="IkasProductAttribute[]",o.imports.push("IkasProductAttribute");break;case n.IkasThemeJsonComponentPropType.BRAND:s="IkasBrand",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BRAND_LIST:s="IkasBrandList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.CATEGORY:s="IkasCategory",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.CATEGORY_LIST:s="IkasCategoryList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.CUSTOM:var a=r.customData.find((function(e){return e.id===t.customDataId}));a&&(s=e.generateTypeName(a));break;case n.IkasThemeJsonComponentPropType.COMPONENT:s="IkasComponentRenderer",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.COMPONENT_LIST:s="IkasComponentRenderer[]",o.imports.push("IkasComponentRenderer");break;case n.IkasThemeJsonComponentPropType.BLOG:s="IkasBlog",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BLOG_LIST:s="IkasBlogList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY:s="IkasBlogCategory",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY_LIST:s="IkasBlogCategoryList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.RAFFLE:s="IkasRaffle",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.RAFFLE_LIST:s="IkasRaffleList",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.SLIDER:s="IkasSlider",o.imports.push(s);break;case n.IkasThemeJsonComponentPropType.ENUM:s=e.generateTypeName(t),o.content.includes("export enum ".concat(s))||o.internalCustomDatas.push(t);break;case n.IkasThemeJsonComponentPropType.OBJECT:s=e.generateTypeName(t);break;case n.IkasThemeJsonComponentPropType.DYNAMIC_LIST:case n.IkasThemeJsonComponentPropType.STATIC_LIST:t.nestedData&&(t.nestedData[0].type===n.IkasThemeJsonComponentPropType.OBJECT||t.nestedData[0].type===n.IkasThemeJsonComponentPropType.ENUM?(s=e.generateTypeName(t.nestedData[0]),o.content.includes("export type ".concat(s))||o.internalCustomDatas.push(t.nestedData[0])):s=e.getType(t.nestedData[0],o,r))}return s},e.generateTypeName=function(e){if(e.typescriptName)return e.typescriptName;var t=e.name||"";return(t=(t=t.replace(/\s/g,"")).replace(/\W/g,""))[0].match(/^\d/)&&(t="_"+t),e.type===n.IkasThemeJsonComponentPropType.ENUM&&(t+="Enum"),t},e}(),Xn=function(){function e(){}return e.generate=function(t,n){return i(this,void 0,void 0,(function(){return c(this,(function(o){return t.components.forEach((function(o){o.props.length>0&&"checkout"!==o.id&&(n.content+="export type ".concat(e.generatePropTypeName(o),"Props = {\n"),o.props.forEach((function(o){n.content+="\t".concat(o.name,": ").concat(e.getType(o,t,n),";\n")})),n.content+="};\r\n\r\n")})),[2]}))}))},e.getType=function(e,t,o){var r="";switch(e.type){case n.IkasThemeJsonComponentPropType.TEXT:case n.IkasThemeJsonComponentPropType.RICH_TEXT:case n.IkasThemeJsonComponentPropType.COLOR:r="string";break;case n.IkasThemeJsonComponentPropType.BOOLEAN:r="boolean";break;case n.IkasThemeJsonComponentPropType.IMAGE:r="IkasImage",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.IMAGE_LIST:r="IkasImage[]",o.imports.push("IkasImage");break;case n.IkasThemeJsonComponentPropType.LINK:r="IkasNavigationLink",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.LIST_OF_LINK:r="IkasNavigationLink[]",o.imports.push("IkasNavigationLink");break;case n.IkasThemeJsonComponentPropType.PRODUCT_DETAIL:r="IkasProduct",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.PRODUCT_LIST:r="IkasProductList",o.imports.push("IkasProductList");break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE:r="IkasProductAttribute",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.PRODUCT_ATTRIBUTE_LIST:r="IkasProductAttribute[]",o.imports.push("IkasProductAttribute");break;case n.IkasThemeJsonComponentPropType.BRAND:r="IkasBrand",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BRAND_LIST:r="IkasBrandList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.CATEGORY:r="IkasCategory",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.CATEGORY_LIST:r="IkasCategoryList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.CUSTOM:var s=t.customData.find((function(t){return t.id===e.customDataId}));s&&(r=qn.getType(s,o,t),s.type!==n.IkasThemeJsonComponentPropType.DYNAMIC_LIST&&s.type!==n.IkasThemeJsonComponentPropType.STATIC_LIST||(r+="[]"));break;case n.IkasThemeJsonComponentPropType.COMPONENT:r="IkasComponentRenderer",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.COMPONENT_LIST:r="IkasComponentRenderer[]",o.imports.push("IkasComponentRenderer");break;case n.IkasThemeJsonComponentPropType.BLOG:r="IkasBlog",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BLOG_LIST:r="IkasBlogList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY:r="IkasBlogCategory",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.BLOG_CATEGORY_LIST:r="IkasBlogCategoryList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.RAFFLE:r="IkasRaffle",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.RAFFLE_LIST:r="IkasRaffleList",o.imports.push(r);break;case n.IkasThemeJsonComponentPropType.SLIDER:r="IkasSlider",o.imports.push(r)}return r},e.generatePropTypeName=function(e){if(""!==e.displayName){var t=(e.dir||"").split("-"),n="";return t.forEach((function(e,t){return n+=e.charAt(0).toUpperCase()+e.slice(1)})),n[0].match(/^\d/)&&(n="_"+n),n}},e}();function Yn(e){return i(this,void 0,void 0,(function(){var t,n,o,r,s,a;return c(this,(function(i){switch(i.label){case 0:return[4,Fe.getTheme()];case 1:return(t=i.sent())?[3,3]:[4,Fe.generateInitialThemeJsonFile()];case 2:i.sent(),i.label=3;case 3:return[4,Fe.getTheme()];case 4:return t=i.sent(),[4,Fe.generate(t)];case 5:return(a=i.sent())?[4,Me.generate(t)]:[3,7];case 6:a=i.sent(),i.label=7;case 7:return(s=a)?[4,Ve.generate()]:[3,9];case 8:s=i.sent(),i.label=9;case 9:return(r=s)?[4,we.generate()]:[3,11];case 10:r=i.sent(),i.label=11;case 11:return(o=r)?[4,Be.generate(e)]:[3,13];case 12:o=i.sent(),i.label=13;case 13:return(n=o)?[4,qn.generate(t)]:[3,15];case 14:n=i.sent(),i.label=15;case 15:return[2,n]}}))}))}!function(){i(this,void 0,void 0,(function(){var e,t;return c(this,(function(n){switch(n.label){case 0:return e=[{name:"generate",alias:"g",type:Boolean},{name:"dev",alias:"d",type:Boolean}],(t=Se(e)).generate?[4,Yn(!!t.dev?"dev":"prod")]:[3,2];case 1:n.sent()?console.log("Project files generated successfully!"):console.log("Project files generate failed!"),n.label=2;case 2:return[2]}}))}))}();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikas/storefront-cmd",
3
- "version": "4.0.0-alpha.5",
3
+ "version": "4.0.0-alpha.50",
4
4
  "description": "Command line tool for ikas storefront themes.",
5
5
  "author": "Umut Ozan Yıldırım",
6
6
  "license": "ISC",
@@ -24,7 +24,7 @@
24
24
  "lodash": "^4.17.21"
25
25
  },
26
26
  "devDependencies": {
27
- "@ikas/storefront-models": "^4.0.0-alpha.5",
27
+ "@ikas/storefront-models": "^4.0.0-alpha.50",
28
28
  "@rollup/plugin-commonjs": "^22.0.0",
29
29
  "@rollup/plugin-node-resolve": "^13.3.0",
30
30
  "rollup-plugin-typescript2": "^0.32.1",
@@ -40,6 +40,6 @@
40
40
  "typescript-transform-paths": "^2.2.2"
41
41
  },
42
42
  "peerDependencies": {
43
- "@ikas/storefront-models": "^4.0.0-alpha.5"
43
+ "@ikas/storefront-models": "^4.0.0-alpha.50"
44
44
  }
45
45
  }
@@ -9,22 +9,32 @@ import { CHECKOUT_COMPONENT_ID, PageInfo, PAGE_INFO } from "../pages/info";
9
9
  import { findAllByKey } from "../../../utils/helper";
10
10
 
11
11
  export class ComponentImportsGenerator {
12
- static async generate(themeJson: IkasThemeJson) {
12
+ static async generate(themeJson: IkasThemeJson, workingDir?: string) {
13
13
  await deleteDirContent(
14
- path.join(process.cwd(), "src", "components", "__generated__")
14
+ path.join(
15
+ workingDir || process.cwd(),
16
+ "src",
17
+ "components",
18
+ "__generated__"
19
+ )
15
20
  );
16
21
 
17
22
  return (
18
23
  (await ComponentImportsGenerator.generateAllPageComponentImportsFiles(
19
- themeJson
24
+ themeJson,
25
+ workingDir
20
26
  )) &&
21
27
  (await ComponentImportsGenerator.generateAllComponentImportsFileForEditor(
22
- themeJson
28
+ themeJson,
29
+ workingDir
23
30
  ))
24
31
  );
25
32
  }
26
33
 
27
- static async generateAllPageComponentImportsFiles(themeJson: IkasThemeJson) {
34
+ static async generateAllPageComponentImportsFiles(
35
+ themeJson: IkasThemeJson,
36
+ workingDir?: string
37
+ ) {
28
38
  let isSuccess = true;
29
39
 
30
40
  for (const pageInfo of PAGE_INFO) {
@@ -37,7 +47,8 @@ export class ComponentImportsGenerator {
37
47
  isSuccess &&
38
48
  (await ComponentImportsGenerator.generatePageComponentImportsFileWithInfo(
39
49
  pageInfo,
40
- themeJson
50
+ themeJson,
51
+ workingDir
41
52
  ));
42
53
  }
43
54
 
@@ -46,7 +57,8 @@ export class ComponentImportsGenerator {
46
57
 
47
58
  static async generatePageComponentImportsFileWithInfo(
48
59
  pageInfo: PageInfo,
49
- themeJson: IkasThemeJson
60
+ themeJson: IkasThemeJson,
61
+ workingDir?: string
50
62
  ) {
51
63
  if (pageInfo.isCheckout || pageInfo.isEditor) return true;
52
64
 
@@ -91,7 +103,8 @@ export class ComponentImportsGenerator {
91
103
 
92
104
  return await ComponentImportsGenerator.generateComponentImportsFile(
93
105
  componentsInPage,
94
- pageInfo
106
+ pageInfo,
107
+ workingDir
95
108
  );
96
109
  } catch (err) {
97
110
  console.error(err);
@@ -101,7 +114,8 @@ export class ComponentImportsGenerator {
101
114
 
102
115
  static generatePageComponentImportsFileWithType(
103
116
  pageType: IkasThemeJsonPageType,
104
- themeJson: IkasThemeJson
117
+ themeJson: IkasThemeJson,
118
+ workingDir?: string
105
119
  ) {
106
120
  if (pageType === IkasThemeJsonPageType.CHECKOUT) return;
107
121
 
@@ -110,7 +124,8 @@ export class ComponentImportsGenerator {
110
124
  if (pageInfo) {
111
125
  return ComponentImportsGenerator.generatePageComponentImportsFileWithInfo(
112
126
  pageInfo,
113
- themeJson
127
+ themeJson,
128
+ workingDir
114
129
  );
115
130
  }
116
131
  } catch (err) {
@@ -122,7 +137,8 @@ export class ComponentImportsGenerator {
122
137
 
123
138
  static generateComponentImportsFile(
124
139
  components: IkasThemeJsonComponent[],
125
- pageInfo: PageInfo
140
+ pageInfo: PageInfo,
141
+ workingDir?: string
126
142
  ) {
127
143
  try {
128
144
  let fileStr = "";
@@ -145,7 +161,13 @@ export class ComponentImportsGenerator {
145
161
  fileStr += "export default Components;";
146
162
 
147
163
  return createFile(
148
- path.join(process.cwd(), "src", "components", "__generated__", "pages"),
164
+ path.join(
165
+ workingDir || process.cwd(),
166
+ "src",
167
+ "components",
168
+ "__generated__",
169
+ "pages"
170
+ ),
149
171
  pageInfo.path.replace("tsx", "ts"),
150
172
  fileStr
151
173
  );
@@ -156,7 +178,8 @@ export class ComponentImportsGenerator {
156
178
  }
157
179
 
158
180
  static async generateAllComponentImportsFileForEditor(
159
- themeJson: IkasThemeJson
181
+ themeJson: IkasThemeJson,
182
+ workingDir?: string
160
183
  ) {
161
184
  try {
162
185
  let fileStr = `import dynamic from "next/dynamic";\r\n`;
@@ -188,7 +211,7 @@ const Components = {
188
211
  fileStr += "export default Components;";
189
212
 
190
213
  const generatedFolderPath = path.join(
191
- process.cwd(),
214
+ workingDir || process.cwd(),
192
215
  "src",
193
216
  "components",
194
217
  "__generated__"
@@ -201,7 +224,10 @@ const Components = {
201
224
  }
202
225
  }
203
226
 
204
- static async generateAllComponentImportsFile(themeJson: IkasThemeJson) {
227
+ static async generateAllComponentImportsFile(
228
+ themeJson: IkasThemeJson,
229
+ workingDir?: string
230
+ ) {
205
231
  try {
206
232
  let fileStr = ``;
207
233
 
@@ -229,7 +255,7 @@ const Components = {
229
255
  fileStr += "export default Components;";
230
256
 
231
257
  const generatedFolderPath = path.join(
232
- process.cwd(),
258
+ workingDir || process.cwd(),
233
259
  "src",
234
260
  "components",
235
261
  "__generated__"
@@ -1,5 +1,5 @@
1
1
  export const DEPENDENCIES = {
2
- next: "canary",
2
+ next: "12.2.0",
3
3
  react: "17.0.2",
4
4
  "react-dom": "17.0.2",
5
5
  mobx: "^6.1.3",
@@ -10,21 +10,23 @@ export const DEPENDENCIES = {
10
10
  "html-react-parser": "^1.4.0",
11
11
  "mobx-react-lite": "^3.1.5",
12
12
  "next-transpile-modules": "^9.0.0",
13
- "@ikas/storefront": "^4.0.0-alpha.5",
14
- "@ikas/storefront-api": "^4.0.0-alpha.5",
15
- "@ikas/storefront-assets": "^4.0.0-alpha.5",
16
- "@ikas/storefront-cmd": "^4.0.0-alpha.5",
17
- "@ikas/storefront-config": "^4.0.0-alpha.5",
18
- "@ikas/storefront-model-functions": "^4.0.0-alpha.5",
19
- "@ikas/storefront-models": "^4.0.0-alpha.5",
20
- "@ikas/storefront-next": "^4.0.0-alpha.5",
21
- "@ikas/storefront-providers": "^4.0.0-alpha.5",
13
+ "@ikas/storefront": "^4.0.0-alpha.48",
14
+ "@ikas/storefront-api": "^4.0.0-alpha.48",
15
+ "@ikas/storefront-assets": "^4.0.0-alpha.48",
16
+ "@ikas/storefront-cmd": "^4.0.0-alpha.48",
17
+ "@ikas/storefront-config": "^4.0.0-alpha.48",
18
+ "@ikas/storefront-model-functions": "^4.0.0-alpha.48",
19
+ "@ikas/storefront-models": "^4.0.0-alpha.48",
20
+ "@ikas/storefront-next": "^4.0.0-alpha.48",
21
+ "@ikas/storefront-providers": "^4.0.0-alpha.48",
22
22
  };
23
23
 
24
24
  export const DEV_DEPENDENCIES = {
25
25
  "@types/node": "^14.14.6",
26
26
  "@types/react": "^17.0.2",
27
27
  "@types/react-dom": "^17.0.2",
28
+ "@types/cors": "^2.8.9",
29
+ "@types/archiver": "^5.1.0",
28
30
  "@typescript-eslint/eslint-plugin": "^2.10.0",
29
31
  "@typescript-eslint/parser": "^2.10.0",
30
32
  eslint: "^6.6.0",
@@ -17,32 +17,39 @@ import {
17
17
  export type ENV = "dev" | "prod";
18
18
 
19
19
  export class ConfigGenerator {
20
- static async generate(env: ENV) {
20
+ static async generate(env: ENV, workingDir?: string) {
21
21
  return (
22
- (await ConfigGenerator.generateTsConfig()) &&
23
- (await ConfigGenerator.generateBabelRc()) &&
24
- (await ConfigGenerator.generateNextConfig()) &&
25
- (await ConfigGenerator.generatePackageJson()) &&
26
- (await ConfigGenerator.generateEnv(env))
22
+ (await ConfigGenerator.generateTsConfig(workingDir)) &&
23
+ (await ConfigGenerator.generateBabelRc(workingDir)) &&
24
+ (await ConfigGenerator.generateNextConfig(workingDir)) &&
25
+ (await ConfigGenerator.generatePackageJson(workingDir)) &&
26
+ (await ConfigGenerator.generateEnv(env, workingDir))
27
27
  );
28
28
  }
29
29
 
30
- static generateTsConfig() {
31
- return createFile(process.cwd(), "tsconfig.json", TS_CONFIG);
30
+ static generateTsConfig(workingDir?: string) {
31
+ return createFile(workingDir || process.cwd(), "tsconfig.json", TS_CONFIG);
32
32
  }
33
33
 
34
- static generateBabelRc() {
35
- return createFile(process.cwd(), ".babelrc", BABEL_RC);
34
+ static generateBabelRc(workingDir?: string) {
35
+ return createFile(workingDir || process.cwd(), ".babelrc", BABEL_RC);
36
36
  }
37
37
 
38
- static generateNextConfig() {
39
- return createFile(process.cwd(), "next.config.js", NEXT_CONFIG);
38
+ static generateNextConfig(workingDir?: string) {
39
+ return createFile(
40
+ workingDir || process.cwd(),
41
+ "next.config.js",
42
+ NEXT_CONFIG
43
+ );
40
44
  }
41
45
 
42
- static async generatePackageJson() {
46
+ static async generatePackageJson(workingDir?: string) {
43
47
  try {
44
48
  // const fs = await import("fs-extra");
45
- const packageJsonPath = path.join(process.cwd(), "package.json");
49
+ const packageJsonPath = path.join(
50
+ workingDir || process.cwd(),
51
+ "package.json"
52
+ );
46
53
  const packageJsonBuffer = fs.readFileSync(packageJsonPath);
47
54
 
48
55
  if (packageJsonBuffer.length) {
@@ -99,8 +106,8 @@ export class ConfigGenerator {
99
106
  }
100
107
  }
101
108
 
102
- static generateEnv(env: ENV) {
109
+ static generateEnv(env: ENV, workingDir?: string) {
103
110
  const envFileContent = env === "dev" ? DEV_ENV : PROD_ENV;
104
- return createFile(process.cwd(), ".env", envFileContent);
111
+ return createFile(workingDir || process.cwd(), ".env", envFileContent);
105
112
  }
106
113
  }
@@ -9,25 +9,25 @@ import {
9
9
  } from "./info";
10
10
 
11
11
  export class PageGenerator {
12
- static async generate() {
13
- const pagesDir = path.join(process.cwd(), "src", "pages");
12
+ static async generate(workingDir?: string) {
13
+ const pagesDir = path.join(workingDir || process.cwd(), "src", "pages");
14
14
  await deleteDirContent(pagesDir, ["_app.tsx", "_document.tsx", "api"]);
15
15
 
16
16
  let pagesGenerateSuccess = true;
17
17
  for (const pageInfo of PAGE_INFO) {
18
18
  pagesGenerateSuccess =
19
19
  pagesGenerateSuccess &&
20
- (await PageGenerator.generatePageWithInfo(pageInfo));
20
+ (await PageGenerator.generatePageWithInfo(pageInfo, workingDir));
21
21
  }
22
22
 
23
23
  const checkoutPageInfo = PAGE_INFO.find((pi) => pi.isCheckout);
24
24
  const editorPageInfo = PAGE_INFO.find((pi) => pi.isEditor);
25
25
 
26
26
  const checkoutPageGenerateSuccess = checkoutPageInfo
27
- ? await PageGenerator.generatePageWithInfo(checkoutPageInfo)
27
+ ? await PageGenerator.generatePageWithInfo(checkoutPageInfo, workingDir)
28
28
  : false;
29
29
  const editorPageGenerateSuccess = editorPageInfo
30
- ? await PageGenerator.generatePageWithInfo(editorPageInfo)
30
+ ? await PageGenerator.generatePageWithInfo(editorPageInfo, workingDir)
31
31
  : false;
32
32
 
33
33
  return (
@@ -37,7 +37,7 @@ export class PageGenerator {
37
37
  );
38
38
  }
39
39
 
40
- static async generatePageWithInfo(pageInfo: PageInfo) {
40
+ static async generatePageWithInfo(pageInfo: PageInfo, workingDir?: string) {
41
41
  try {
42
42
  let fileStr = "";
43
43
 
@@ -81,7 +81,7 @@ export default Page;\r\n`;
81
81
  }
82
82
 
83
83
  return await createFile(
84
- path.join(process.cwd(), "src", "pages"),
84
+ path.join(workingDir || process.cwd(), "src", "pages"),
85
85
  pageInfo.path,
86
86
  fileStr
87
87
  );
@@ -16,9 +16,15 @@ type File = {
16
16
  };
17
17
 
18
18
  export class CustomDataTypesGenerator {
19
- static async generate(themeJson: IkasThemeJson) {
19
+ static async generate(themeJson: IkasThemeJson, workingDir?: string) {
20
20
  await deleteDirContent(
21
- path.join(process.cwd(), "src", "components", "__generated__", "types")
21
+ path.join(
22
+ workingDir || process.cwd(),
23
+ "src",
24
+ "components",
25
+ "__generated__",
26
+ "types"
27
+ )
22
28
  );
23
29
  const file: File = {
24
30
  content: "",
@@ -60,7 +66,7 @@ export class CustomDataTypesGenerator {
60
66
  await PropTypeGenarator.generate(themeJson, file);
61
67
 
62
68
  const generatedFolderPath = path.join(
63
- process.cwd(),
69
+ workingDir || process.cwd(),
64
70
  "src",
65
71
  "components",
66
72
  "__generated__"
@@ -60,7 +60,7 @@ export function shouldDeploy(
60
60
 
61
61
  export async function generate(
62
62
  themeJsonList: IkasThemeJson[],
63
- env: "dev" | "prod"
63
+ workingDir: string
64
64
  ) {
65
65
  const _themeJsonList = _cloneDeep(themeJsonList);
66
66
  const themeJson: IkasThemeJson = {
@@ -91,9 +91,9 @@ export async function generate(
91
91
  });
92
92
 
93
93
  return (
94
- (await ComponentImportsGenerator.generate(themeJson)) &&
95
- (await PageGenerator.generate()) &&
96
- (await CustomDataTypesGenerator.generate(themeJson)) &&
97
- (await ConfigGenerator.generate(env))
94
+ (await ComponentImportsGenerator.generate(themeJson, workingDir)) &&
95
+ (await PageGenerator.generate(workingDir)) &&
96
+ (await CustomDataTypesGenerator.generate(themeJson, workingDir)) &&
97
+ (await ConfigGenerator.generate("prod", workingDir))
98
98
  );
99
99
  }