frgen 0.3.6 → 0.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";function t(t,r){var e=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=e){var n,o,i,a,u=[],c=!0,l=!1;try{if(i=(e=e.call(t)).next,0===r){if(Object(e)!==e)return;c=!1}else for(;!(c=(n=i.call(e)).done)&&(u.push(n.value),u.length!==r);c=!0);}catch(t){l=!0,o=t}finally{try{if(!c&&null!=e.return&&(a=e.return(),Object(a)!==a))return}finally{if(l)throw o}}return u}}function r(){r=function(){return e};var t,e={},n=Object.prototype,o=n.hasOwnProperty,i=Object.defineProperty||function(t,r,e){t[r]=e.value},a="function"==typeof Symbol?Symbol:{},u=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function f(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{f({},"")}catch(t){f=function(t,r,e){return t[r]=e}}function s(t,r,e,n){var o=r&&r.prototype instanceof g?r:g,a=Object.create(o.prototype),u=new P(n||[]);return i(a,"_invoke",{value:A(t,e,u)}),a}function h(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var y="suspendedStart",p="suspendedYield",v="executing",d="completed",m={};function g(){}function b(){}function w(){}var x={};f(x,u,(function(){return this}));var L=Object.getPrototypeOf,E=L&&L(L(k([])));E&&E!==n&&o.call(E,u)&&(x=E);var S=w.prototype=g.prototype=Object.create(x);function j(t){["next","throw","return"].forEach((function(r){f(t,r,(function(t){return this._invoke(r,t)}))}))}function O(t,r){function e(n,i,a,u){var c=h(t[n],t,i);if("throw"!==c.type){var l=c.arg,f=l.value;return f&&"object"==typeof f&&o.call(f,"__await")?r.resolve(f.__await).then((function(t){e("next",t,a,u)}),(function(t){e("throw",t,a,u)})):r.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return e("throw",t,a,u)}))}u(c.arg)}var n;i(this,"_invoke",{value:function(t,o){function i(){return new r((function(r,n){e(t,o,r,n)}))}return n=n?n.then(i,i):i()}})}function A(r,e,n){var o=y;return function(i,a){if(o===v)throw Error("Generator is already running");if(o===d){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var u=n.delegate;if(u){var c=_(u,n);if(c){if(c===m)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===y)throw o=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=v;var l=h(r,e,n);if("normal"===l.type){if(o=n.done?d:p,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=d,n.method="throw",n.arg=l.arg)}}}function _(r,e){var n=e.method,o=r.iterator[n];if(o===t)return e.delegate=null,"throw"===n&&r.iterator.return&&(e.method="return",e.arg=t,_(r,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),m;var i=h(o,r.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,m;var a=i.arg;return a?a.done?(e[r.resultName]=a.value,e.next=r.nextLoc,"return"!==e.method&&(e.method="next",e.arg=t),e.delegate=null,m):a:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,m)}function T(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function I(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function P(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(T,this),this.reset(!0)}function k(r){if(r||""===r){var e=r[u];if(e)return e.call(r);if("function"==typeof r.next)return r;if(!isNaN(r.length)){var n=-1,i=function e(){for(;++n<r.length;)if(o.call(r,n))return e.value=r[n],e.done=!1,e;return e.value=t,e.done=!0,e};return i.next=i}}throw new TypeError(typeof r+" is not iterable")}return b.prototype=w,i(S,"constructor",{value:w,configurable:!0}),i(w,"constructor",{value:b,configurable:!0}),b.displayName=f(w,l,"GeneratorFunction"),e.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===b||"GeneratorFunction"===(r.displayName||r.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,f(t,l,"GeneratorFunction")),t.prototype=Object.create(S),t},e.awrap=function(t){return{__await:t}},j(O.prototype),f(O.prototype,c,(function(){return this})),e.AsyncIterator=O,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new O(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},j(S),f(S,l,"Generator"),f(S,u,(function(){return this})),f(S,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var r=Object(t),e=[];for(var n in r)e.push(n);return e.reverse(),function t(){for(;e.length;){var n=e.pop();if(n in r)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=k,P.prototype={constructor:P,reset:function(r){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(I),!r)for(var e in this)"t"===e.charAt(0)&&o.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(r){if(this.done)throw r;var e=this;function n(n,o){return u.type="throw",u.arg=r,e.next=n,o&&(e.method="next",e.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],u=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var c=o.call(a,"catchLoc"),l=o.call(a,"finallyLoc");if(c&&l){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(t,r){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),m},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),I(e),m}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;I(e)}return o}}throw Error("illegal catch attempt")},delegateYield:function(r,e,n){return this.delegate={iterator:k(r),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=t),m}},e}function e(t){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},e(t)}function n(t,r,e,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void e(t)}u.done?r(c):Promise.resolve(c).then(n,o)}function o(t){if(Array.isArray(t))return t}function i(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}function a(t,r){if(t){if("string"==typeof t)return u(t,r);var e=Object.prototype.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?u(t,r):void 0}}function u(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=new Array(r);e<r;e++)n[e]=t[e];return n}function c(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}Object.defineProperty(exports,"__esModule",{value:!0}),exports.arrayLikeToArray=u,exports.arrayWithHoles=o,exports.asyncToGenerator=function(t){return function(){var r=this,e=arguments;return new Promise((function(o,i){var a=t.apply(r,e);function u(t){n(a,o,i,u,c,"next",t)}function c(t){n(a,o,i,u,c,"throw",t)}u(void 0)}))}},exports.createForOfIteratorHelper=function(t,r){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=a(t))||r){e&&(t=e);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return u=t.done,t},e:function(t){c=!0,i=t},f:function(){try{u||null==e.return||e.return()}finally{if(c)throw i}}}},exports.iterableToArray=i,exports.iterableToArrayLimit=t,exports.nonIterableRest=c,exports.regeneratorRuntime=r,exports.slicedToArray=function(r,e){return o(r)||t(r,e)||a(r,e)||c()},exports.toArray=function(t){return o(t)||i(t)||a(t)||c()},exports.typeof=e,exports.unsupportedIterableToArray=a;
2
+ "use strict";function t(t,r){var e=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=e){var n,o,i,a,u=[],c=!0,f=!1;try{if(i=(e=e.call(t)).next,0===r){if(Object(e)!==e)return;c=!1}else for(;!(c=(n=i.call(e)).done)&&(u.push(n.value),u.length!==r);c=!0);}catch(t){f=!0,o=t}finally{try{if(!c&&null!=e.return&&(a=e.return(),Object(a)!==a))return}finally{if(f)throw o}}return u}}function r(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e.push.apply(e,n)}return e}function e(){e=function(){return r};var t,r={},n=Object.prototype,o=n.hasOwnProperty,i=Object.defineProperty||function(t,r,e){t[r]=e.value},a="function"==typeof Symbol?Symbol:{},u=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",f=a.toStringTag||"@@toStringTag";function l(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{l({},"")}catch(t){l=function(t,r,e){return t[r]=e}}function s(t,r,e,n){var o=r&&r.prototype instanceof b?r:b,a=Object.create(o.prototype),u=new I(n||[]);return i(a,"_invoke",{value:P(t,e,u)}),a}function y(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}r.wrap=s;var h="suspendedStart",p="suspendedYield",v="executing",d="completed",m={};function b(){}function g(){}function w(){}var x={};l(x,u,(function(){return this}));var O=Object.getPrototypeOf,j=O&&O(O(k([])));j&&j!==n&&o.call(j,u)&&(x=j);var L=w.prototype=b.prototype=Object.create(x);function E(t){["next","throw","return"].forEach((function(r){l(t,r,(function(t){return this._invoke(r,t)}))}))}function S(t,r){function e(n,i,a,u){var c=y(t[n],t,i);if("throw"!==c.type){var f=c.arg,l=f.value;return l&&"object"==typeof l&&o.call(l,"__await")?r.resolve(l.__await).then((function(t){e("next",t,a,u)}),(function(t){e("throw",t,a,u)})):r.resolve(l).then((function(t){f.value=t,a(f)}),(function(t){return e("throw",t,a,u)}))}u(c.arg)}var n;i(this,"_invoke",{value:function(t,o){function i(){return new r((function(r,n){e(t,o,r,n)}))}return n=n?n.then(i,i):i()}})}function P(r,e,n){var o=h;return function(i,a){if(o===v)throw Error("Generator is already running");if(o===d){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var u=n.delegate;if(u){var c=A(u,n);if(c){if(c===m)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=v;var f=y(r,e,n);if("normal"===f.type){if(o=n.done?d:p,f.arg===m)continue;return{value:f.arg,done:n.done}}"throw"===f.type&&(o=d,n.method="throw",n.arg=f.arg)}}}function A(r,e){var n=e.method,o=r.iterator[n];if(o===t)return e.delegate=null,"throw"===n&&r.iterator.return&&(e.method="return",e.arg=t,A(r,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),m;var i=y(o,r.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,m;var a=i.arg;return a?a.done?(e[r.resultName]=a.value,e.next=r.nextLoc,"return"!==e.method&&(e.method="next",e.arg=t),e.delegate=null,m):a:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,m)}function _(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function T(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(_,this),this.reset(!0)}function k(r){if(r||""===r){var e=r[u];if(e)return e.call(r);if("function"==typeof r.next)return r;if(!isNaN(r.length)){var n=-1,i=function e(){for(;++n<r.length;)if(o.call(r,n))return e.value=r[n],e.done=!1,e;return e.value=t,e.done=!0,e};return i.next=i}}throw new TypeError(typeof r+" is not iterable")}return g.prototype=w,i(L,"constructor",{value:w,configurable:!0}),i(w,"constructor",{value:g,configurable:!0}),g.displayName=l(w,f,"GeneratorFunction"),r.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===g||"GeneratorFunction"===(r.displayName||r.name))},r.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,l(t,f,"GeneratorFunction")),t.prototype=Object.create(L),t},r.awrap=function(t){return{__await:t}},E(S.prototype),l(S.prototype,c,(function(){return this})),r.AsyncIterator=S,r.async=function(t,e,n,o,i){void 0===i&&(i=Promise);var a=new S(s(t,e,n,o),i);return r.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},E(L),l(L,f,"Generator"),l(L,u,(function(){return this})),l(L,"toString",(function(){return"[object Generator]"})),r.keys=function(t){var r=Object(t),e=[];for(var n in r)e.push(n);return e.reverse(),function t(){for(;e.length;){var n=e.pop();if(n in r)return t.value=n,t.done=!1,t}return t.done=!0,t}},r.values=k,I.prototype={constructor:I,reset:function(r){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(T),!r)for(var e in this)"t"===e.charAt(0)&&o.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(r){if(this.done)throw r;var e=this;function n(n,o){return u.type="throw",u.arg=r,e.next=n,o&&(e.method="next",e.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],u=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var c=o.call(a,"catchLoc"),f=o.call(a,"finallyLoc");if(c&&f){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!f)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(t,r){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),m},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),T(e),m}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;T(e)}return o}}throw Error("illegal catch attempt")},delegateYield:function(r,e,n){return this.delegate={iterator:k(r),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=t),m}},r}function n(t,r){if("object"!=typeof t||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,r||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}function o(t){var r=n(t,"string");return"symbol"==typeof r?r:r+""}function i(t){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(t)}function a(t,r,e,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void e(t)}u.done?r(c):Promise.resolve(c).then(n,o)}function u(t,r,e){return(r=o(r))in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}function c(t){if(Array.isArray(t))return t}function f(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}function l(t,r){if(t){if("string"==typeof t)return s(t,r);var e=Object.prototype.toString.call(t).slice(8,-1);return"Object"===e&&t.constructor&&(e=t.constructor.name),"Map"===e||"Set"===e?Array.from(t):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?s(t,r):void 0}}function s(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=new Array(r);e<r;e++)n[e]=t[e];return n}function y(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}Object.defineProperty(exports,"__esModule",{value:!0}),exports.arrayLikeToArray=s,exports.arrayWithHoles=c,exports.asyncToGenerator=function(t){return function(){var r=this,e=arguments;return new Promise((function(n,o){var i=t.apply(r,e);function u(t){a(i,n,o,u,c,"next",t)}function c(t){a(i,n,o,u,c,"throw",t)}u(void 0)}))}},exports.createForOfIteratorHelper=function(t,r){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=l(t))||r){e&&(t=e);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==e.return||e.return()}finally{if(u)throw i}}}},exports.defineProperty=u,exports.iterableToArray=f,exports.iterableToArrayLimit=t,exports.nonIterableRest=y,exports.objectSpread2=function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?r(Object(n),!0).forEach((function(r){u(t,r,n[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))}))}return t},exports.regeneratorRuntime=e,exports.slicedToArray=function(r,e){return c(r)||t(r,e)||l(r,e)||y()},exports.toArray=function(t){return c(t)||f(t)||l(t)||y()},exports.toPrimitive=n,exports.toPropertyKey=o,exports.typeof=i,exports.unsupportedIterableToArray=l;
package/lib/mui.gen.js ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("./_virtual/_rollupPluginBabelHelpers.js"),e=require("fs"),t=require("path"),a=require("json-schema-to-typescript"),o=function(n){return n.replace(/[-_]+(.)?/g,(function(n,e){return e?e.toUpperCase():""})).replace(/^[A-Z]/,(function(n){return n.toLowerCase()}))},r=function(n){return n.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/[_\s]+/g,"-").toLowerCase()},c=function(n){return n.replace(/[_\-\s]+/g," ").replace(/([a-z])([A-Z])/g,"$1 $2").toLowerCase().split(" ").map((function(n){return n.charAt(0).toUpperCase()+n.slice(1)})).join("")},i=function(n){return n.replace(/[_\-\s]+/g," ").replace(/([a-z])([A-Z])/g,"$1 $2").toLowerCase().split(" ").filter(Boolean).map((function(n){return n.charAt(0).toUpperCase()+n.slice(1)})).join(" ")},s=function(n){return["string"].includes(n)},l=function(n){return["integer","number"].includes(n)},u=function(n){return["boolean"].includes(n)};exports.generateCreatePage=function(n){try{var a=n.title,o="create.page.tsx",s=c(a),l=t.join(process.cwd(),"src","pages",r(a),o),u=t.dirname(l),m='\nimport PageTemplate from "@components/templates/PageTemplate";\nimport Box from "@mui/material/Box";\nimport Form from "./partial/Form";\nimport Toolbar from "@mui/material/Toolbar";\nimport useMutation from "ezhooks/lib/useMutation";\nimport useZod from "@hooks/useZod";\nimport { input'.concat(c(a),'Schema } from "@commons/schema/').concat(r(a),'.schema";\nimport { post').concat(c(a),' } from "@services/').concat(r(a),'.service";\nimport { useNavigate } from "react-router";\nimport { useSnackbar } from "@contexts/SnackbarContext";\nimport { input').concat(c(a),' } from "@commons/dummy";\n\nconst ').concat(s,"CreatePage = () => {\n const navigate = useNavigate();\n const { setSnackbar } = useSnackbar();\n\n const mutation = useMutation({\n defaultValue: input").concat(c(a),",\n });\n\n const validation = useZod({\n data: mutation.data(),\n schema: input").concat(c(a),"Schema,\n });\n\n const onSubmit = () => {\n const validated = validation.validated();\n if (validated) {\n mutation.send({\n service: post").concat(c(a),',\n onSuccess: () => {\n setSnackbar("Data has been successfully added.");\n mutation.forceReset();\n const timer = setTimeout(() => {\n navigate("/').concat(r(a),'");\n clearTimeout(timer);\n }, 2000);\n },\n });\n }\n };\n\n return (\n <PageTemplate title="Create ').concat(i(a),'" onBack={() => navigate(-1)}>\n <Box\n sx={{\n overflow: "hidden auto",\n minHeight: "100%",\n position: "relative",\n }}\n >\n <Form mutation={mutation} validation={validation} onSubmit={onSubmit} />\n\n <Toolbar />\n <Toolbar />\n </Box>\n </PageTemplate>\n );\n};\n\nexport default ').concat(s,"CreatePage;\n ");e.existsSync(u)||e.mkdirSync(u,{recursive:!0}),e.writeFile(l,m,(function(n){n?console.error("err: ",n):console.log("file ".concat(a," ").concat(o," has been created"))}))}catch(n){console.log("err::",n)}},exports.generateDummy=function(a){try{var o=a.title,i="".concat(r(o),".schema"),m=t.join(process.cwd(),"src","commons","dummy.ts"),p="Input".concat(c(o),"Schema"),d="import {".concat(p,"} from '@commons/schema/").concat(i,"';"),g=Object.entries(a.properties).filter((function(e){return"id"!==n.slicedToArray(e,1)[0]})).map((function(e){var t=n.slicedToArray(e,2),a=t[0],o=t[1],r="''",c=Array.isArray(o.type)?o.type:[o.type];return c.forEach((function(n,e){var t;0==e&&(r=void 0!==o.default?null!==(t=o.default)&&void 0!==t?t:"":c.includes("null")?null:o.enum?"'".concat(o.enum[0],"'"):s(n)?"''":l(n)?0:!!u(n)||"''")})),"".concat(a,":").concat(r)})),v="\n \nexport const input".concat(c(o),":").concat(p," = {\n").concat(g.join(",\n"),"\n};\n"),f=e.readFileSync(m,"utf8");f.includes(d)||(f=d+"\n"+f),f.includes(v)||(f+="\n"+v),e.writeFileSync(m,f)}catch(n){console.log("err::",n)}},exports.generateForm=function(a){try{var o=a.title,m="".concat(r(o),".schema"),p="Form.tsx",d=t.join(process.cwd(),"src","pages",r(o),"partial",p),g=t.dirname(d),v="Input".concat(c(o),"Schema"),f="import {".concat(v,"} from '@commons/schema/").concat(m,"';"),h=Object.entries(a.properties).filter((function(e){return"id"!==n.slicedToArray(e,1)[0]})).map((function(e){var t=n.slicedToArray(e,2),o=t[0],r=t[1],c=[];return(Array.isArray(r.type)?r.type:[r.type]).forEach((function(n,e){var t;if(0==e)if(r.format&&["date-time","date"].includes(r.format))c=' \n <TextField\n label="'.concat(i(o),'"\n name="').concat(o,'"\n type="date"\n variant="standard"\n placeholder="Please ').concat(i(o).toLowerCase(),'"\n required={').concat((null!==(t=a.required)&&void 0!==t?t:[]).includes(o),'}\n value={mutation.value("').concat(o,'", "")}\n onChange={(e) => mutation.setData({ ').concat(o,': e.target.value })}\n slotProps={{ inputLabel: { shrink: true } }}\n disabled={mutation.processing}\n error={validation.error("').concat(o,'")}\n helperText={validation.message("').concat(o,'")}\n />');else if(r.enum)c='\n <InputSelect\n label="'.concat(i(o),'"\n items={[').concat(r.enum.map((function(n){return'{ primary: "'.concat(i(n),'", value: "').concat(n,'" }')})).join(", "),']}\n variant="standard"\n name="item"\n required\n selectText="Choose one"\n value={mutation.value("').concat(o,'", "00")}\n onChange={(e) => mutation.setData({ ').concat(o,': e.target.value === "00" ? "" : e.target.value })}\n slotProps={{\n inputLabel: { shrink: true },\n select: { native: true },\n }}\n disabled={mutation.processing}\n />\n ');else if(s(n)){var m;c=' \n <TextField\n label="'.concat(i(o),'"\n name="').concat(o,'"\n variant="standard"\n placeholder="Please ').concat(i(o).toLowerCase(),'"\n required={').concat((null!==(m=a.required)&&void 0!==m?m:[]).includes(o),'}\n value={mutation.value("').concat(o,'", "")}\n onChange={(e) => mutation.setData({ ').concat(o,': e.target.value })}\n slotProps={{ inputLabel: { shrink: true } }}\n disabled={mutation.processing}\n error={validation.error("').concat(o,'")}\n helperText={validation.message("').concat(o,'")}\n />')}else if(l(n)){var p;c=' \n <TextField\n label="'.concat(i(o),'"\n name="').concat(o,'"\n type="number"\n variant="standard"\n placeholder="Please ').concat(i(o).toLowerCase(),'"\n required={').concat((null!==(p=a.required)&&void 0!==p?p:[]).includes(o),'}\n value={mutation.value("').concat(o,'", "")}\n onChange={(e) => mutation.setData({ ').concat(o,': +e.target.value })}\n slotProps={{ inputLabel: { shrink: true } }}\n disabled={mutation.processing}\n error={validation.error("').concat(o,'")}\n helperText={validation.message("').concat(o,'")}\n />')}else c=u(n)?'\n <InputSelect\n label="'.concat(i(o),'"\n items={[{ primary: "Yes", value: true },{ primary: "No", value: false }]}\n variant="standard"\n name="item"\n required\n selectText="Choose one"\n value={mutation.value("').concat(o,'", "00")}\n onChange={(e) => mutation.setData({ ').concat(o,': e.target.value === "00" ? "" : e.target.value })}\n slotProps={{\n inputLabel: { shrink: true },\n select: { native: true },\n }}\n disabled={mutation.processing}\n />\n '):"''"})),c})),b='\nimport Stack from "@mui/material/Stack";\nimport LoadComponent from "@components/base/LoadComponent/LoadComponent";\nimport Divider from "@mui/material/Divider";\nimport Typography from "@mui/material/Typography";\nimport Button from "@mui/material/Button";\nimport InputSelect from "@components/base/Input/InputSelect";\nimport { UseZod } from "@hooks/useZod";\nimport { UseMutation } from "ezhooks/lib/useMutation";\n'.concat(f,'\n\nconst TextField = LoadComponent(() => import("@mui/material/TextField"));\n\ntype Props = {\n mutation: UseMutation<').concat(v,">;\n validation: UseZod<").concat(v,'>;\n onSubmit: () => void;\n};\nconst Form = ({ mutation, validation, onSubmit }: Props) => {\n return (\n <Stack\n direction={"column"}\n spacing={2.5}\n sx={{ margin: "0px auto", width: "50%", p: 3 }}\n >\n <Stack spacing={1}>\n <Typography component={"div"} variant="h6">\n Form ').concat(i(o),"\n </Typography>\n\n <Divider />\n </Stack>\n\n ").concat(h.join(" \n"),'\n\n <Stack direction={"row"}>\n <div>\n <Button\n loading={mutation.processing}\n disabled={mutation.processing}\n size="small"\n onClick={onSubmit}\n >\n Save\n </Button>\n </div>\n </Stack>\n </Stack>\n );\n};\n\nexport default Form;');e.existsSync(g)||e.mkdirSync(g,{recursive:!0}),e.writeFile(d,b,(function(n){n?console.error("err: ",n):console.log("file ".concat(o," ").concat(p," has been created"))}))}catch(n){console.log("err::",n)}},exports.generateIndexPage=function(a){try{var o=a.title,m="index.page.tsx",p=c(o),d="".concat(r(o),".service"),g=c(o),v=t.join(process.cwd(),"src","pages",r(o),m),f=t.dirname(v),h=Object.entries(a.properties).map((function(e){var t=n.slicedToArray(e,2),a=t[0],o=t[1],r=Array.isArray(o.type)?o.type.at(0):o.type,c=['label: "'.concat(i(a),'"'),'sortKey: "'.concat(a,'"'),"value: (v) => v.".concat(a)],m=['type: "text"','value: table.query("'.concat(a,'", "")'),'options: { placeholder: "Find '.concat(i(a),'..." }'),"onChange: (e) => table.setQuery({ ".concat(a,": e.target.value })")];return s(r)||(l(r)?m[3]="onChange: (e) => table.setQuery({ ".concat(a,": +e.target.value })"):u(r)&&(m[0]='type: "select"',m[1]='value: table.query("'.concat(a,'", "00")'),m[3]="onChange: (e) => {table.setQuery({ ".concat(a,': e.target.value === "00" ? "" : e.target.value })}'),m.splice(1,0,'items: [{ primary: "Yes", value: true },{ primary: "No", value: false }]'))),o.format&&["date","date-time"].includes(o.format)&&(m[0]='type: "date"',m=m.filter((function(n,e){return 2!==e}))),o.enum&&(m[0]='type: "select"',m[1]='value: table.query("'.concat(a,'", "00")'),m[3]="onChange: (e) => {table.setQuery({ ".concat(a,': e.target.value === "00" ? "" : e.target.value })}'),m.splice(1,0,"items: [".concat(o.enum.map((function(n){return'{ primary: "'.concat(i(n),'", value: "').concat(n,'" }')})).join(", "),"]"))),c.push("filter:{".concat(m.join(", "),"}")),"{\n ".concat(c.join(", "),"\n }")})),b='\nimport React from "react";\nimport PageTemplate from "@components/templates/PageTemplate";\nimport DataTablePage from "@components/base/DataTable/DataTablePage";\nimport Dropdown from "@components/base/Dropdown/Dropdown";\nimport useTable from "ezhooks/lib/useTable";\nimport { get'.concat(g,", delete").concat(g,' } from "@services/').concat(d,'";\n\nimport { getPagination } from "@utils/table";\nimport { useNavigate } from "react-router";\nimport { useAlert } from "@contexts/AlertContext";\nimport { useSnackbar } from "@contexts/SnackbarContext";\n\nconst ').concat(p,"Page = () => {\n const navigate = useNavigate();\n const alert = useAlert();\n const { setSnackbar } = useSnackbar();\n\n const table = useTable({\n service: get").concat(g,',\n selector: (resp) => resp.data,\n total: (resp) => resp.total,\n replaceUrl: true,\n pagination: {\n startPage: 0,\n },\n });\n\n const onClickEdit = (e: React.MouseEvent<HTMLLIElement, MouseEvent>) => {\n const value = e.currentTarget.value;\n navigate(`/edit/${value}`);\n };\n\n const onClickView = (e: React.MouseEvent<HTMLLIElement, MouseEvent>) => {\n const value = e.currentTarget.value;\n navigate(`/view/${value}`);\n };\n\n const onClickDelete = (e: React.MouseEvent<HTMLLIElement, MouseEvent>) => {\n const value = e.currentTarget.value;\n alert.set({\n open: true,\n title: "Delete Confirmation",\n message:\n "Are you sure you want to delete this item? This action cannot be undone.",\n type: "warning",\n confirm: {\n onClick: () => {\n alert.set({ loading: true });\n delete').concat(g,'({ params: { id: value } })\n .then(() => {\n setSnackbar("Data has been successfully deleted.");\n alert.reset();\n table.reload();\n })\n .catch((e) => {\n setSnackbar(e?.message, { severity: "error" });\n })\n .finally(() => {\n alert.set({ loading: false });\n });\n },\n },\n });\n };\n\n return (\n <PageTemplate title="').concat(p,' Page" onReload={table.reload}>\n <DataTablePage\n tableProps={{ size: "small" }}\n loading={table.loading}\n onOrder={table.onSort}\n order={table.order}\n orderBy={table.orderBy}\n column={[\n ').concat(h.join(", "),',\n {\n label: "",\n value: (v) => (\n <Dropdown\n menu={[\n { text: "View", value: v.id, onClick: onClickView },\n { text: "Edit", value: v.id, onClick: onClickEdit },\n { text: "Delete", value: v.id, onClick: onClickDelete },\n ]}\n />\n ),\n head: {\n padding: "checkbox",\n },\n },\n ]}\n data={table.data}\n pagination={getPagination(table.pagination)}\n />\n </PageTemplate>\n );\n};\n\nexport default ').concat(p,"Page;");e.existsSync(f)||e.mkdirSync(f,{recursive:!0}),e.writeFile(v,b,(function(n){n?console.error("err: ",n):console.log("file ".concat(o," ").concat(m," has been created"))}))}catch(n){console.log("err::",n)}},exports.generateRoute=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];try{var a="router.tsx",o=[{page:"Page",filename:"index.page",url:""},{page:"ViewPage",filename:"view.page",url:"/view/:id"},{page:"CreatePage",filename:"create.page",url:"/create"},{page:"Update",filename:"update.page",url:"/update/:id"}],i=[],s=[],l=t.join(process.cwd(),"src",a),u=t.dirname(l);n.forEach((function(n){o.forEach((function(e){i.push("const ".concat(c(n)).concat(e.page,' = LoadComponent(() => import("@pages/').concat(r(n),"/").concat(e.filename,'"));')),s.push('{ path: "'.concat(r(n)).concat(e.url,'", element: <').concat(c(n)).concat(e.page," /> }"))}))}));var m='\nimport { createBrowserRouter } from "react-router";\nimport { loader } from "@services/auth.service";\nimport LoadComponent from "@components/base/LoadComponent/LoadComponent";\n\nconst AppLayouts = LoadComponent(() => import("@components/layouts/AppLayout"));\nconst GuestLayout = LoadComponent(\n () => import("@components/layouts/GuestLayout")\n);\n\nconst NotFoundPage = LoadComponent(() => import("@pages/error/PageNotFound"));\nconst SignInPage = LoadComponent(() => import("@pages/auth/LoginPage"));\nconst RegisterPage = LoadComponent(() => import("@pages/auth/RegisterPage"));\nconst VerificationPage = LoadComponent(\n () => import("@pages/auth/VerificationPage")\n);\n\n'.concat(i.join(" \n"),'\n\nconst router = createBrowserRouter(\n [\n {\n path: "/login",\n element: <SignInPage />,\n },\n {\n element: <GuestLayout />,\n children: [\n { path: "/register", element: <RegisterPage /> },\n { path: "/verification", element: <VerificationPage /> },\n ],\n },\n {\n id: "root",\n path: "/",\n loader,\n element: <AppLayouts />,\n hydrateFallbackElement: <span>loading...</span>,\n children: [\n ').concat(s.join(", \n"),'\n ],\n },\n {\n path: "*",\n element: <NotFoundPage />,\n },\n ],\n {\n future: {\n v7_relativeSplatPath: true,\n v7_partialHydration: true,\n v7_skipActionErrorRevalidation: true,\n v7_fetcherPersist: true,\n v7_startTransition: true,\n },\n }\n);\n\nexport default router;\n\n ');e.existsSync(u)||e.mkdirSync(u,{recursive:!0}),e.writeFile(l,m,(function(n){n?console.error("err: ",n):console.log("file ".concat(a," has been created"))}))}catch(n){console.log("err::",n)}},exports.generateService=function(n){try{var a=n.title,i="".concat(r(a),".service.ts"),s=o(a),l=r(a),u=c(a),m=t.join(process.cwd(),"src","services",i),p=t.dirname(m),d="\nimport { ".concat(u,' } from "@typings/model";\nimport { EventSend } from "ezhooks";\nimport * as utils from "ezhooks/lib/utils";\n\nconst baseUrl = import.meta.env.VITE_APP_BASE_API_URL;\n\nexport const ').concat(s,"Url = {\n index: `${baseUrl}/").concat(l,"`,\n view: `${baseUrl}/").concat(l,"/:id`,\n remove: `${baseUrl}/").concat(l,"/:id`,\n};\n\nexport const get").concat(u," = async (event: EventSend): Promise<HttpResponse<").concat(u,"[]>> => {\n let url = ").concat(s,"Url.index;\n const params = new URLSearchParams(event.params);\n if (params.size > 0) {\n url += ").concat("`?${params.toString()}`",";\n }\n \n const resp = await fetch(url, {\n signal: event.ctr?.signal,\n });\n \n return resp.json();\n};\n\nexport const get").concat(u,"ID = (id: number) => async (event: EventSend): Promise<HttpResponse<").concat(u,">> => {\n const res = await fetch(utils.route(").concat(s,"Url.view, { id }), {\n signal: event.ctr?.signal,\n });\n return res.json();\n };\n\nexport const post").concat(u," = async (event: EventSend): Promise<HttpResponse<any>> => {\n const res = await fetch(").concat(s,'Url.index, {\n method: "post",\n signal: event.ctr?.signal,\n headers: {\n "content-type": "application/json",\n },\n body: JSON.stringify(event.data()),\n });\n return res.json();\n};\n\nexport const put').concat(u," = async (event: EventSend): Promise<HttpResponse<any>> => {\n const res = await fetch(").concat(s,'Url.index, {\n method: "put",\n signal: event.ctr?.signal,\n headers: {\n "content-type": "application/json",\n },\n body: JSON.stringify(event.data()),\n });\n return res.json();\n};\n\nexport const delete').concat(u," = async (event: EventSend) => {\n return fetch(utils.route(").concat(s,'Url.remove, { id: event.params.id }), {\n method: "delete",\n signal: event.ctr?.signal,\n });\n};\n ');e.existsSync(p)||e.mkdirSync(p,{recursive:!0}),e.writeFile(m,d,(function(n){n?console.error("err: ",n):console.log("file ".concat(i," has been created"))}))}catch(n){console.log("err::",n)}},exports.generateUpdatePage=function(n){try{var a=n.title,o="update.page.tsx",s=c(a),l=t.join(process.cwd(),"src","pages",r(a),o),u=t.dirname(l),m='\nimport React from "react";\nimport PageTemplate from "@components/templates/PageTemplate";\nimport Box from "@mui/material/Box";\nimport Form from "./partial/Form";\nimport Toolbar from "@mui/material/Toolbar";\nimport useMutation from "ezhooks/lib/useMutation";\nimport useZod from "@hooks/useZod";\nimport { input'.concat(c(a),'Schema } from "@commons/schema/').concat(r(a),'.schema";\nimport { put').concat(c(a),", get").concat(c(a),'ID } from "@services/').concat(r(a),'.service";\nimport { useNavigate, useParams } from "react-router";\nimport { useSnackbar } from "@contexts/SnackbarContext";\nimport { input').concat(c(a),' } from "@commons/dummy";\n\nconst ').concat(s,"UpdatePage = () => {\n const { id } = useParams();\n const navigate = useNavigate();\n const { setSnackbar } = useSnackbar();\n\n const mutation = useMutation({\n defaultValue: input").concat(c(a),",\n });\n\n const validation = useZod({\n data: mutation.data(),\n schema: (z) => input").concat(c(a),"Schema(z).extend({ id: z.number() }),\n });\n\n const onSubmit = () => {\n const validated = validation.validated();\n if (validated) {\n mutation.send({\n service: put").concat(c(a),',\n onSuccess: () => {\n setSnackbar("Your changes have been saved successfully.");\n mutation.forceReset();\n const timer = setTimeout(() => {\n navigate("/').concat(r(a),'");\n clearTimeout(timer);\n }, 2000);\n },\n });\n }\n };\n\n const fetchData = () => {\n mutation.send({\n service: get').concat(c(a),'ID(+id),\n onSuccess: (resp) => {\n mutation.setData(resp.data);\n },\n });\n };\n\n React.useEffect(() => {\n if (!id) return;\n fetchData();\n return () => {\n mutation.cancel();\n };\n }, [id]);\n\n return (\n <PageTemplate title="Update ').concat(i(a),'" onBack={() => navigate(-1)}>\n <Box\n sx={{\n overflow: "hidden auto",\n minHeight: "100%",\n position: "relative",\n }}\n >\n <Form mutation={mutation} validation={validation} onSubmit={onSubmit} />\n\n <Toolbar />\n <Toolbar />\n </Box>\n </PageTemplate>\n );\n};\n\nexport default ').concat(s,"UpdatePage;\n ");e.existsSync(u)||e.mkdirSync(u,{recursive:!0}),e.writeFile(l,m,(function(n){n?console.error("err: ",n):console.log("file ".concat(a," ").concat(o," has been created"))}))}catch(n){console.log("err::",n)}},exports.generateValidation=function(a){try{var o=a.title,i="".concat(r(o),".schema.ts"),m=t.join(process.cwd(),"src","commons","schema",i),p=t.dirname(m),d=Object.entries(a.properties).filter((function(e){return"id"!==n.slicedToArray(e,1)[0]})).map((function(e){var t=n.slicedToArray(e,2),o=t[0],r=t[1],c=["zod"];return(Array.isArray(r.type)?r.type:[r.type]).forEach((function(n,e){0==e&&(r.enum?c.push("enum([".concat(r.enum.map((function(n){return"'".concat(n,"'")})).join(", "),"])")):s(n)?c.push("string()"):l(n)?c.push("number()"):u(n)?c.push("boolean()"):c.push("any()"),a.required&&a.required.includes(o)&&s(n)&&c.push("nonempty()")),"null"===n&&(c.push("optional()"),c.push("nullish()"))})),void 0!==r.default&&(s(r.default)?c.push("default('".concat(r.default,"')")):c.push("default(".concat(r.default,")"))),"".concat(o,":").concat(c.join("."))})),g="input".concat(c(o),"Schema"),v='\nimport * as z from "zod";\n \nexport const '.concat(g," = (zod:typeof z) => zod.object({\n ").concat(d.map((function(n){return n})).join(",\n"),"\n});\n\nexport type ").concat(c(g)," = z.infer<ReturnType<typeof ").concat(g,">>;\n\n");e.existsSync(p)||e.mkdirSync(p,{recursive:!0}),e.writeFile(m,v,(function(n){n?console.error("err: ",n):console.log("file ".concat(o," ").concat(i," has been created"))}))}catch(n){console.log("err::",n)}},exports.generateViewPage=function(a){try{var o=a.title,s="view.page.tsx",l=c(o),u="".concat(r(o),".service"),m=c(o),p=t.join(process.cwd(),"src","pages",r(o),s),d=t.dirname(p),g=Object.entries(a.properties).map((function(e){var t=n.slicedToArray(e,1)[0],a=['label: "'.concat(i(t),'"'),"value: (v) => v.".concat(t)];return"{\n ".concat(a.join(", "),"\n }")})),v='\nimport React from "react";\nimport PageTemplate from "@components/templates/PageTemplate";\nimport TableView from "@components/base/Table/TableView";\nimport Box from "@mui/material/Box";\nimport Toolbar from "@mui/material/Toolbar"\n\nimport { get'.concat(m,"ID, delete").concat(m,' } from "@services/').concat(u,'";\nimport { useNavigate, useParams } from "react-router";\nimport { useAlert } from "@contexts/AlertContext";\nimport { useSnackbar } from "@contexts/SnackbarContext";\nimport useRequest from "ezhooks/lib/useRequest";\n\nconst ').concat(l,'ViewPage = () => {\n const { id } = useParams();\n const navigate = useNavigate();\n const alert = useAlert();\n const { setSnackbar } = useSnackbar();\n\n const client = useRequest({ data: {} });\n\n const onClickEdit = () => {\n navigate(`/edit/${id}`);\n };\n\n const onClickDelete = () => {\n alert.set({\n open: true,\n title: "Delete Confirmation",\n message:\n "Are you sure you want to delete this item? This action cannot be undone.",\n type: "warning",\n confirm: {\n onClick: () => {\n alert.set({ loading: true });\n delete').concat(m,'({ params: { id: +id } })\n .then(() => {\n setSnackbar("Data has been successfully deleted.");\n alert.reset();\n const timer = setTimeout(() => {\n navigate("/example");\n clearTimeout(timer);\n }, 1500);\n })\n .catch((e) => {\n setSnackbar(e?.message, { severity: "error" });\n })\n .finally(() => {\n alert.set({ loading: false });\n });\n },\n },\n });\n };\n\n const fetchData = () => {\n client.exec({\n service: get').concat(m,'ID(+id),\n onSuccess: (data) => {\n return data.data;\n },\n });\n };\n\n React.useEffect(() => {\n if (!id) return;\n fetchData();\n\n return () => {\n client.cancel();\n };\n }, [id]);\n\n return (\n <PageTemplate \n title="View ').concat(l,'" \n onBack={() => navigate(-1)}\n onUpdate={onClickEdit}\n onDelete={onClickDelete}\n onReload={fetchData}\n >\n <Box sx={{ overflow: "hidden auto", minHeight: "100%" }}>\n <TableView\n loading={client.loading}\n data={client.data}\n column={[').concat(g.join(", "),"]}\n />\n\n <Toolbar />\n <Toolbar />\n </Box>\n </PageTemplate>\n );\n};\n\nexport default ").concat(l,"ViewPage;");e.existsSync(d)||e.mkdirSync(d,{recursive:!0}),e.writeFile(p,v,(function(n){n?console.error("err: ",n):console.log("file ".concat(o," ").concat(s," has been created"))}))}catch(n){console.log("err::",n)}},exports.jsonToTS=function(n){a.compileFromFile(n,{inferStringEnumKeysFromValues:!0,bannerComment:"/* eslint-disable */\n/**\n* This file was automatically generated by json-schema-to-typescript.\n*.\n*/"}).then((function(n){var a=t.join(process.cwd(),"src","typings","model","index.d.ts"),o=t.dirname(a);e.existsSync(o)||e.mkdirSync(o,{recursive:!0}),e.writeFileSync(t.join(process.cwd(),"src","typings","model","index.d.ts"),n)})).catch(console.log)},exports.toCamelCase=o,exports.toKebabCase=r,exports.toPascalCase=c,exports.toPascalWithSpace=i;
package/lib/regen.js ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ "use strict";var e=require("./_virtual/_rollupPluginBabelHelpers.js"),r=require("fs"),t=require("path"),a=require("./mui.gen.js"),n=e.toArray(process.argv);n[0],n[1];var i=n[2],o=n.slice(3);i||(console.error("❌ action undefined."),process.exit(1));var c=t.join(process.cwd(),"json-schema.json");if(o.length>0){var s,u=e.createForOfIteratorHelper(o);try{for(u.s();!(s=u.n()).done;){var l=s.value.split("="),p=e.slicedToArray(l,2),d=p[0],f=p[1];"--mui"===d&&"mui","--file"===d&&(c=f)}}catch(e){u.e(e)}finally{u.f()}}(function(){var t=e.asyncToGenerator(e.regeneratorRuntime().mark((function t(){var n,o;return e.regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:t.prev=0,n=r.readFileSync(c,{encoding:"utf-8"}),o=JSON.parse(n),t.t0=i,t.next="make:page"===t.t0?6:"make:dummy"===t.t0?8:"make:route"===t.t0?10:12;break;case 6:return Object.entries(o.definitions).forEach((function(r){var t=e.slicedToArray(r,2),n=t[0],i=t[1];a.generateService(e.objectSpread2({title:n},i)),a.generateValidation(e.objectSpread2({title:n},i)),a.generateForm(e.objectSpread2({title:n},i)),a.generateIndexPage(e.objectSpread2({title:n},i)),a.generateCreatePage(e.objectSpread2({title:n},i)),a.generateUpdatePage(e.objectSpread2({title:n},i)),a.generateViewPage(e.objectSpread2({title:n},i)),a.jsonToTS(c)})),t.abrupt("break",14);case 8:return Object.entries(o.definitions).forEach((function(r){var t=e.slicedToArray(r,2),n=t[0],i=t[1];a.generateDummy(e.objectSpread2({title:n},i))})),t.abrupt("break",14);case 10:return a.generateRoute(Object.entries(o.definitions).map((function(r){return e.slicedToArray(r,1)[0]}))),t.abrupt("break",14);case 12:console.error("❌ Unknown action: ".concat(i)),process.exit(1);case 14:t.next=19;break;case 16:t.prev=16,t.t1=t.catch(0),console.error("❌ ERROR:",t.t1);case 19:return t.prev=19,t.finish(19);case 21:case"end":return t.stop()}}),t,null,[[0,16,19,21]])})));return function(){return t.apply(this,arguments)}})()();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "frgen",
3
- "version": "0.3.6",
3
+ "version": "0.3.7",
4
4
  "description": "helper generator",
5
5
  "main": "lib/main.jss",
6
6
  "types": "lib/index.d.ts",
@@ -10,7 +10,8 @@
10
10
  "rebuild": "rollup -c"
11
11
  },
12
12
  "bin": {
13
- "frgen": "./lib/main.js"
13
+ "frgen": "./lib/main.js",
14
+ "regen": "./lib/regen.js"
14
15
  },
15
16
  "repository": {
16
17
  "type": "git",
@@ -44,6 +45,7 @@
44
45
  "@rollup/plugin-node-resolve": "^15.2.3",
45
46
  "@rollup/plugin-terser": "^0.4.4",
46
47
  "dotenv": "^16.4.7",
48
+ "json-schema-to-typescript": "^15.0.4",
47
49
  "mysql2": "^3.14.2",
48
50
  "pg": "^8.13.1"
49
51
  }