@_tc/template-core 0.0.2 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.skills/tc-generator/SKILL.md +62 -0
- package/.skills/tc-generator/reference/example.md +357 -0
- package/.skills/tc-generator/reference/model-schema.md +326 -0
- package/.skills/tc-generator/reference/project-template/app/controller/product.js +73 -0
- package/.skills/tc-generator/reference/project-template/app/router/product.js +9 -0
- package/.skills/tc-generator/reference/project-template/config/config.default.js +3 -0
- package/.skills/tc-generator/reference/project-template/index.js +17 -0
- package/.skills/tc-generator/reference/project-template/model/product/mode.js +179 -0
- package/.skills/tc-generator/reference/project-template/model/product/project/default.js +4 -0
- package/.skills/tc-generator/reference/project-template/package.json +10 -0
- package/README.md +239 -17
- package/cjs/_virtual/_rolldown/runtime.js +1 -1
- package/cjs/app/controller/base.js +1 -1
- package/cjs/app/controller/project.js +1 -1
- package/cjs/app/controller/view.js +1 -1
- package/cjs/app/extend/$fetch.js +1 -1
- package/cjs/app/extend/db.js +1 -1
- package/cjs/app/extend/generateErrorMessage.js +1 -1
- package/cjs/app/extend/logger.js +1 -1
- package/cjs/app/extend/parsingParamsOnUrl.js +1 -1
- package/cjs/app/middleware/api-sign-verify.js +1 -1
- package/cjs/app/middleware/error-handle.js +1 -1
- package/cjs/app/middleware/project-handler.js +1 -1
- package/cjs/app/middleware.js +1 -1
- package/cjs/app/router/project.js +1 -1
- package/cjs/app/router/view.js +1 -1
- package/cjs/app/router-schema/project.js +1 -1
- package/cjs/app/service/base.js +1 -1
- package/cjs/app/service/project.js +1 -1
- package/cjs/app/type.js +0 -1
- package/cjs/app/typings.js +0 -1
- package/cjs/app/view/entry.tpl +27 -28
- package/cjs/bundler/defaultAlias.js +1 -1
- package/cjs/bundler/dev.js +1 -1
- package/cjs/bundler/index.js +1 -1
- package/cjs/bundler/prod.js +1 -1
- package/cjs/bundler/state.js +1 -1
- package/cjs/config/config.default.js +1 -0
- package/cjs/index.js +1 -1
- package/cjs/packages/common/LRUCache.js +1 -1
- package/cjs/packages/common/array/index.js +1 -1
- package/cjs/packages/common/cache/LRUCache.js +1 -1
- package/cjs/packages/common/cache/index.js +1 -1
- package/cjs/packages/common/guards/index.js +1 -1
- package/cjs/packages/common/http/index.js +1 -1
- package/cjs/packages/common/i18n/default.js +1 -1
- package/cjs/packages/common/i18n/en-US.js +1 -1
- package/cjs/packages/common/i18n/index.js +1 -1
- package/cjs/packages/common/i18n/locales.js +1 -1
- package/cjs/packages/common/i18n/types.js +0 -1
- package/cjs/packages/common/index.js +1 -1
- package/cjs/packages/common/log/index.js +1 -1
- package/cjs/packages/common/number/index.js +1 -1
- package/cjs/packages/common/object/filterEmpty.js +1 -1
- package/cjs/packages/common/object/filtereEmpty.js +1 -1
- package/cjs/packages/common/object/index.js +1 -1
- package/cjs/packages/common/string/index.js +1 -1
- package/cjs/packages/common/types/index.js +0 -1
- package/cjs/packages/core/env.js +1 -1
- package/cjs/packages/core/index.js +1 -1
- package/cjs/packages/core/loader/config.js +1 -1
- package/cjs/packages/core/loader/controller.js +1 -1
- package/cjs/packages/core/loader/extend.js +1 -1
- package/cjs/packages/core/loader/middleware.js +1 -1
- package/cjs/packages/core/loader/router-schema.js +1 -1
- package/cjs/packages/core/loader/service.js +1 -1
- package/cjs/packages/core/paths.js +1 -1
- package/cjs/packages/core/types.js +0 -1
- package/cjs/packages/utils/getAllFnReturnValue.js +0 -1
- package/cjs/packages/utils/index.js +1 -1
- package/esm/_virtual/_rolldown/runtime.js +2 -15
- package/esm/app/controller/view.js +13 -11
- package/esm/app/middleware/api-sign-verify.js +9 -11
- package/esm/app/middleware.js +6 -6
- package/esm/app/view/entry.tpl +27 -28
- package/esm/config/config.default.js +9 -0
- package/esm/index.js +1 -1
- package/esm/packages/core/index.js +24 -26
- package/esm/packages/core/loader/config.js +11 -10
- package/esm/packages/core/loader/extend.js +13 -8
- package/fe/frontend/apps/dash/Dashboard.js +100 -1
- package/fe/frontend/apps/dash/dash.entry.js +2 -2
- package/fe/frontend/apps/ui-components/index.js +8 -0
- package/fe/frontend/apps/ui-components/ui-components.entry.d.ts +2 -0
- package/fe/frontend/src/api/baseInfo.d.ts +2 -2
- package/fe/frontend/src/common/fetchErrorShow.js +2 -1
- package/fe/frontend/src/common/generateMenuData.js +2 -1
- package/fe/frontend/src/common/importComponent.js +5 -2
- package/fe/frontend/src/common/language.d.ts +2 -1
- package/fe/frontend/src/common/language.js +7 -5
- package/fe/frontend/src/common/logFn/index.js +6 -4
- package/fe/frontend/src/common/request.js +6 -4
- package/fe/frontend/src/components/BasePage/HeaderView.d.ts +2 -1
- package/fe/frontend/src/components/BasePage/HeaderView.js +9 -4
- package/fe/frontend/src/defaultPages/Iframe/index.js +1 -7
- package/fe/frontend/src/defaultPages/NotFoundPage/index.d.ts +3 -0
- package/fe/frontend/src/defaultPages/NotFoundPage/index.js +7 -0
- package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/DetailPanel.js +3 -2
- package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/PopFrom.js +8 -2
- package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaTable/index.js +4 -3
- package/fe/frontend/src/defaultPages/SchemaPage/index.css +0 -55
- package/fe/frontend/src/defaultPages/SchemaPage/index.js +3 -1
- package/fe/frontend/src/defaultPages/SchemaPage/utils/validator.d.ts +5 -1
- package/fe/frontend/src/defaultPages/SchemaPage/utils/validator.js +142 -7
- package/fe/frontend/src/defaultPages/SidebarSlotPage/index.js +2 -1
- package/fe/frontend/src/defaultPages/SidebarSlotPageTmp.js +1 -1
- package/fe/frontend/src/defaultPages/SlotPage/index.js +2 -1
- package/fe/frontend/src/hooks/useCurrentMenuData.js +1 -1
- package/fe/frontend/src/index.d.ts +4 -0
- package/fe/frontend/src/index.js +4 -0
- package/fe/frontend/src/language/en-US.d.ts +76 -0
- package/fe/frontend/src/language/en-US.js +75 -0
- package/fe/frontend/src/language/index.d.ts +66 -0
- package/fe/frontend/src/language/index.js +69 -0
- package/fe/frontend/src/language/zh-CN.d.ts +76 -0
- package/fe/frontend/src/language/zh-CN.js +75 -0
- package/fe/frontend/src/main.css +1 -1
- package/fe/frontend/src/typing/window.d.ts +2 -0
- package/fe/model/types/data/button.d.ts +2 -2
- package/fe/model/types/data/button.js +1 -1
- package/fe/model/types/model.d.ts +19 -12
- package/fe/packages/ui/react/components/Card/Card.d.ts +10 -0
- package/fe/packages/ui/react/components/Card/Card.js +8 -0
- package/fe/packages/ui/react/components/Card/index.d.ts +2 -0
- package/fe/packages/ui/react/components/Card/index.js +1 -0
- package/fe/packages/ui/react/components/DataTable/index.js +7 -3
- package/fe/packages/ui/react/components/ImagePreview/ImagePreview.js +3 -3
- package/fe/packages/ui/react/components/Layout/Layout.d.ts +11 -0
- package/fe/packages/ui/react/components/Layout/Layout.js +8 -0
- package/fe/packages/ui/react/components/Layout/index.d.ts +2 -0
- package/fe/packages/ui/react/components/Layout/index.js +1 -0
- package/fe/packages/ui/react/components/Loading/Loading.d.ts +9 -0
- package/fe/packages/ui/react/components/Loading/Loading.js +13 -0
- package/fe/packages/ui/react/components/Loading/index.d.ts +2 -0
- package/fe/packages/ui/react/components/Loading/index.js +1 -0
- package/fe/packages/ui/react/components/Menu/Menu.js +3 -2
- package/fe/packages/ui/react/components/Notification/Notification.d.ts +14 -0
- package/fe/packages/ui/react/components/Notification/Notification.js +29 -0
- package/fe/packages/ui/react/components/Notification/index.d.ts +2 -0
- package/fe/packages/ui/react/components/Notification/index.js +1 -0
- package/fe/packages/ui/react/components/Radio/Radio.d.ts +9 -0
- package/fe/packages/ui/react/components/Radio/Radio.js +20 -0
- package/fe/packages/ui/react/components/Radio/RadioGroup.d.ts +19 -0
- package/fe/packages/ui/react/components/Radio/RadioGroup.js +21 -0
- package/fe/packages/ui/react/components/Radio/index.d.ts +3 -0
- package/fe/packages/ui/react/components/Radio/index.js +2 -0
- package/fe/packages/ui/react/components/Search/Search.d.ts +1 -1
- package/fe/packages/ui/react/components/Search/Search.js +1 -5
- package/fe/packages/ui/react/components/Tabs/Tabs.d.ts +16 -0
- package/fe/packages/ui/react/components/Tabs/Tabs.js +19 -0
- package/fe/packages/ui/react/components/Tabs/index.d.ts +2 -0
- package/fe/packages/ui/react/components/Tabs/index.js +1 -0
- package/fe/packages/ui/react/components/hooks/useInputController.js +0 -1
- package/fe/packages/ui/react/components/index.d.ts +6 -0
- package/fe/packages/ui/react/components/index.js +6 -0
- package/fe/packages/ui/react/components/table/table.d.ts +3 -0
- package/fe/packages/ui/react/components/table/table.js +6 -6
- package/fe/packages/ui/react/components/testPage/index.js +54 -11
- package/fe/packages/ui/react/index.css +4 -0
- package/model/index.d.ts +1 -1
- package/model/types/data/button.d.ts +2 -2
- package/model/types/index.d.ts +1 -1
- package/model/types/model.d.ts +19 -12
- package/package.json +15 -16
- package/types/config/config.default.d.ts +2 -1
- package/types/index.d.ts +1 -1
- package/types/packages/core/index.d.ts +3 -3
- package/types/packages/core/loader/extend.d.ts +1 -1
- package/types/packages/core/paths.d.ts +4 -7
- package/types/packages/core/types.d.ts +31 -6
- package/cjs/app/data/signKey.js +0 -1
- package/esm/app/data/signKey.js +0 -8
- package/fe/frontend/apps/testPage/index.js +0 -6
- package/fe/frontend/apps/testPage/testPage.entry.d.ts +0 -2
- package/types/app/data/signKey.d.ts +0 -1
- /package/fe/frontend/apps/{testPage → ui-components}/index.d.ts +0 -0
- /package/fe/frontend/apps/{testPage/testPage.entry.js → ui-components/ui-components.entry.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}})
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});var e=e=>globalThis[e],t=()=>globalThis,n=class{headers=new Map;constructor(e={}){Object.entries(e).forEach(([e,t])=>{this.set(e,t)})}forEach(e){this.headers.forEach((t,n)=>{e(t,n)})}has(e){return this.headers.has(this.normalizeName(e))}set(e,t){this.headers.set(this.normalizeName(e),t)}toRecord(){return Object.fromEntries(this.headers)}normalizeName(e){return e.toLowerCase()}},r=class{handlers=[];nextId=0;use(e,t){let n=this.nextId++;return this.handlers.push({id:n,fulfilled:e,rejected:t}),n}eject(e){let t=this.handlers.findIndex(t=>t.id===e);t!==-1&&this.handlers.splice(t,1)}clear(){this.handlers=[]}getHandlers(){return[...this.handlers]}};function i(t){let r=e(`Headers`);return r?new r(t):new n(t)}function a(e){return e instanceof n?e.toRecord():e}function o(t){let n=e(`URLSearchParams`);if(n){let e=new n;for(let[n,r]of Object.entries(t))r!=null&&e.append(n,String(r));return e.toString()}return Object.entries(t).filter(e=>e[1]!==void 0&&e[1]!==null).map(([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(String(t))}`).join(`&`)}function s(e,t,n){let r=t?`${t.replace(/\/+$/,``)}/${e.replace(/^\/+/,``)}`:e;if(n){let e=o(n);e&&(r+=(r.includes(`?`)?`&`:`?`)+e)}return r}function c(e){let t={};return e.forEach((e,n)=>{t[n]=e}),t}function l(e,t){return{...t,...e,headers:{...t?.headers,...e.headers}}}function u(e){return Object.prototype.toString.call(e)===`[object Object]`}function d(t,n){let r=e(n);return typeof r==`function`&&t instanceof r}function f(e){return typeof e==`string`||e instanceof ArrayBuffer||ArrayBuffer.isView(e)?!0:d(e,`Blob`)||d(e,`FormData`)||d(e,`URLSearchParams`)||d(e,`ReadableStream`)}function p(e,t){return t?.length?t.reduce((e,t)=>t(e),e):e}function m(e,t,n){return n?(Array.isArray(n)?n:[n]).reduce((e,n)=>n(e,t),e):e}function h(){let t=e(`fetch`);if(!t)throw Error(`FetchAxios requires globalThis.fetch. Use Node.js 18+ or provide a fetch polyfill.`);return t}function g(){let t=e(`AbortController`);if(t)return new t}var _=class{defaults;interceptors={request:new r,response:new r};constructor(e={}){this.defaults=e}async request(e){let t=l(this.defaults,e);try{let e=await this.applyRequestInterceptors(t),n=await this._doRequest(e);return this.applyResponseInterceptors(n)}catch(e){return this.applyResponseErrorInterceptors(e)}}async applyRequestInterceptors(e){let t=e,n=this.interceptors.request.getHandlers().reverse();for(let e of n)if(e.fulfilled)try{t=await e.fulfilled(t)}catch(n){if(!e.rejected)throw n;t=await e.rejected(n)}return t}async applyResponseInterceptors(e){let t=e;for(let e of this.interceptors.response.getHandlers())e.fulfilled&&(t=await e.fulfilled(t));return t}async applyResponseErrorInterceptors(e){let t=e;for(let e of this.interceptors.response.getHandlers())if(e.rejected)try{return await e.rejected(t)}catch(e){t=e}throw t}async _doRequest(e){let{method:n=`GET`,baseURL:r,headers:o={},params:l,data:d,timeout:_,credentials:v,cache:y,redirect:b,referrer:x,referrerPolicy:S,transformRequest:C,transformResponse:w,validateStatus:T}=e,E=s(e.url??``,r,l),D=i(o),O=d;C&&(n===`POST`||n===`PUT`||n===`PATCH`)&&(O=m(d,D,C),(u(O)||Array.isArray(O))&&!D.has(`Content-Type`)&&D.set(`Content-Type`,`application/json`));let k={method:n,headers:a(D),credentials:v??`same-origin`,cache:y,redirect:b,referrer:x,referrerPolicy:S};O!==void 0&&n!==`GET`&&n!==`HEAD`&&(k.body=f(O)?O:JSON.stringify(O));let A=e.signal?void 0:g();k.signal=e.signal??A?.signal;let j;if(_){if(!A&&!e.signal)throw this.createError(Error(`FetchAxios timeout requires globalThis.AbortController.`),`ERR_ABORT_CONTROLLER_UNAVAILABLE`,e);let n=t();if(!n.setTimeout||!n.clearTimeout)throw this.createError(Error(`FetchAxios timeout requires globalThis.setTimeout and globalThis.clearTimeout.`),`ERR_TIMER_UNAVAILABLE`,e);j=n.setTimeout(()=>A?.abort(),_)}let M;try{M=await h()(E,k)}catch(n){throw j&&t().clearTimeout?.(j),this.createError(n instanceof Error?n:Error(String(n)),`ECONNABORTED`,e)}j&&t().clearTimeout?.(j);let N=c(M.headers),P={data:null,status:M.status,statusText:M.statusText,headers:N,config:e};if(!T||T(M.status)){let e=await M.text(),t=e?JSON.parse(e):null;return P.data=w?p(t,Array.isArray(w)?w:[w]):t,P}let F=M.body?await M.text():null;throw P.data=F?JSON.parse(F):null,this.createError(Error(`Request failed with status ${M.status}`),void 0,e,P)}createError(e,t,n,r){let i=e;return i.config=n,i.code=t,i.response=r,i.isAxiosError=!0,i}get(e,t){return this.request({...t,url:e,method:`GET`})}post(e,t,n){return this.request({...n,url:e,method:`POST`,data:t})}put(e,t,n){return this.request({...n,url:e,method:`PUT`,data:t})}patch(e,t,n){return this.request({...n,url:e,method:`PATCH`,data:t})}delete(e,t){return this.request({...t,url:e,method:`DELETE`})}head(e,t){return this.request({...t,url:e,method:`HEAD`})}options(e,t){return this.request({...t,url:e,method:`OPTIONS`})}},v=new _,y=e=>new _(e);exports.FetchAxios=_,exports.default=_,exports.axios=v,exports.createInstance=y;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e={common:{tip:`提示`,confirm:`确认`,cancel:`取消`,close:`关闭`,submit:`提交`,reset:`重置`},components:{breadcrumb:{close:`关闭`},confirmDialog:{title:`提示`,okText:`确认`,cancelText:`取消`},dataTable:{noData:`暂无数据`},date:{placeholder:`请选择日期`,placeholderDateTime:`请选择日期时间`,placeholderRange:`选择日期范围`,placeholderDateTimeRange:`选择日期时间范围`,weekDays:[`日`,`一`,`二`,`三`,`四`,`五`,`六`],selectTime:`选择时间`,startTime:`开始时间`,endTime:`结束时间`,confirm:`确认`,monthFormat:`yyyy年 M月`,quickRanges:`快速选择`,quickRangeToday:`今天`,quickRangeYesterday:`昨天`,quickRangeLast7Days:`近7天`,quickRangeLast30Days:`近30天`,quickRangeThisMonth:`本月`,quickRangeLastYear:`最近一年`,clear:`清除`},form:{submit:`提交`,cancel:`取消`},imagePreview:{closePreview:`关闭预览`,previousImage:`上一张`,nextImage:`下一张`,zoomOut:`缩小`,zoomIn:`放大`,reset:`重置`,rotateLeft:`左旋转`,rotateRight:`右旋转`,flipHorizontal:`左右镜像`,flipVertical:`上下镜像`,previewImage:`预览第{index}张`},modal:{close:`关闭`,confirmTitle:`提示`,okText:`确认`,cancelText:`取消`},message:{close:`关闭`},select:{empty:`暂无选项`},tableSearch:{reset:`重置`,search:`查询`,export:`导出Excel`,expand:`展开`,collapse:`收起`,exportCurrentPage:`当前页`,exportCurrentQuery:`当前查询条件`},upload:{deleteImage:`删除图片`,upload:`上传`}}};exports.defaultLanguageResources=e;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e={common:{tip:`Prompt`,confirm:`Confirm`,cancel:`Cancel`,close:`Close`,submit:`Submit`,reset:`Reset`},components:{breadcrumb:{close:`Close`},confirmDialog:{title:`Prompt`,okText:`Confirm`,cancelText:`Cancel`},dataTable:{noData:`No Data`},date:{placeholder:`Select date`,placeholderDateTime:`Select date and time`,placeholderRange:`Select date range`,placeholderDateTimeRange:`Select date and time range`,weekDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],selectTime:`Select time`,startTime:`Start time`,endTime:`End time`,confirm:`Confirm`,monthFormat:`MMM yyyy`,quickRanges:`Quick ranges`,quickRangeToday:`Today`,quickRangeYesterday:`Yesterday`,quickRangeLast7Days:`Last 7 days`,quickRangeLast30Days:`Last 30 days`,quickRangeThisMonth:`This month`,quickRangeLastYear:`Last year`,clear:`Clear`},form:{submit:`Submit`,cancel:`Cancel`},imagePreview:{closePreview:`Close preview`,previousImage:`Previous image`,nextImage:`Next image`,zoomOut:`Zoom out`,zoomIn:`Zoom in`,reset:`Reset`,rotateLeft:`Rotate left`,rotateRight:`Rotate right`,flipHorizontal:`Flip horizontal`,flipVertical:`Flip vertical`,previewImage:`Preview image {index}`},modal:{close:`Close`,confirmTitle:`Prompt`,okText:`Confirm`,cancelText:`Cancel`},message:{close:`Close`},select:{empty:`No options`},tableSearch:{reset:`Reset`,search:`Search`,export:`Export Excel`,expand:`Expand`,collapse:`Collapse`,exportCurrentPage:`Current Page`,exportCurrentQuery:`Current Filters`},upload:{deleteImage:`Delete image`,upload:`Upload`}}};exports.defaultEnglishResources=e;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./default.js`),t=require(`./en-US.js`),n=require(`./locales.js`);var r=e=>!!e&&typeof e==`object`&&!Array.isArray(e),i=(e={},t={})=>{let n={...e};return Object.entries(t).forEach(([e,t])=>{let a=n[e];if(r(a)&&r(t)){n[e]=i(a,t);return}n[e]=t}),n},a=(e={},t={})=>{let n={...e};return Object.entries(t).forEach(([e,t])=>{t&&(n[e]=i(n[e],t))}),n},o=(e,t)=>{if(e)return t.split(`.`).reduce((e,t)=>{if(r(e))return e[t]},e)},s=(e,t)=>t?e.replace(/\{([A-Za-z0-9_]+)\}/g,(e,n)=>{let r=t[n];return r==null?e:String(r)}):e,c=(e,t,n,r)=>{let i=r?.language||e.language,a=r?.fallbackLanguage||e.fallbackLanguage,c=o(e.resources[i],t)??o(e.resources[a],t)??r?.fallback??t;return typeof c==`string`?s(c,n):c},l=()=>globalThis.window,u=e=>{let t=l();return t?t.localStorage.getItem(e)||`zh-CN`:n.defaultLanguage},d=(e,t)=>{let n=l();n&&n.localStorage.setItem(e,t)},f=()=>({language:u(n.languageLocalKey),fallbackLanguage:n.defaultLanguage,resources:n.translations,storageKey:n.languageLocalKey,persist:!0}),p=(()=>{let e,t=new Set,n=n=>{let r=e,i=typeof n==`function`?n(e):n;e={...e,...i},t.forEach(t=>t(e,r))};e={...f(),t:(e,t,n)=>m(e,t,n),setLanguage:t=>{n({language:t});let{persist:r,storageKey:i}=e;r&&d(i,t)},setFallbackLanguage:e=>{n({fallbackLanguage:e})},setResources:(e,t)=>{n(n=>({resources:t?.merge?a(n.resources,e):e}))},addResources:(e,t,r)=>{n(n=>{let a=r?.merge??!0,o=n.resources[e];return{resources:{...n.resources,[e]:a?i(o,t):t}}})},configureI18n:e=>{n(e)},resetI18n:()=>{n(f())}};let r=e;return{getState:()=>e,getInitialState:()=>r,setState:n,subscribe:e=>(t.add(e),()=>{t.delete(e)})}})(),m=(e,t,n)=>c(p.getState(),e,t,n),h=m,g=m;exports.defaultEnglishResources=t.defaultEnglishResources,exports.defaultLanguage=n.defaultLanguage,exports.defaultLanguageResources=e.defaultLanguageResources,exports.getI18nPathValue=o,exports.getLanguage=g,exports.i18n=m,exports.i18nStore=p,exports.interpolateI18nMessage=s,exports.isPlainI18nDictionary=r,exports.languageLocalKey=n.languageLocalKey,exports.mergeI18nDictionary=i,exports.mergeI18nResources=a,exports.t=h,exports.translate=c,exports.translations=n.translations;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./default.js`),t=require(`./en-US.js`);var n=`zh-CN`,r=`tc_language`,i={"zh-CN":e.defaultLanguageResources,"en-US":t.defaultEnglishResources};exports.defaultEnglishResources=t.defaultEnglishResources,exports.defaultLanguage=n,exports.defaultLanguageResources=e.defaultLanguageResources,exports.languageLocalKey=r,exports.translations=i;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require(`../../../_virtual/_rolldown/runtime.js`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./http/index.js`),t=require(`./guards/index.js`),n=require(`./array/index.js`),r=require(`./cache/LRUCache.js`),i=require(`./i18n/default.js`),a=require(`./i18n/en-US.js`),o=require(`./i18n/locales.js`),s=require(`./i18n/index.js`),c=require(`./log/index.js`),l=require(`./number/index.js`),u=require(`./object/filterEmpty.js`),d=require(`./object/index.js`),f=require(`./string/index.js`);exports.ANSI_RESET=c.ANSI_RESET,exports.FetchAxios=e.FetchAxios,exports.LRUCache=r.LRUCache,exports.ansiColors=c.ansiColors,exports.axios=e.axios,exports.capitalize=f.capitalize,exports.chunk=n.chunk,exports.clamp=l.clamp,exports.colorLog=c.colorLog,exports.colorize=c.colorize,exports.compact=n.compact,exports.createInstance=e.createInstance,exports.defaultEnglishResources=a.defaultEnglishResources,exports.defaultLanguage=o.defaultLanguage,exports.defaultLanguageResources=i.defaultLanguageResources,exports.filterEmpty=u.filterEmpty,exports.filtereEmpty=u.filtereEmpty,exports.getI18nPathValue=s.getI18nPathValue,exports.getLanguage=s.getLanguage,exports.groupBy=n.groupBy,exports.i18n=s.i18n,exports.i18nStore=s.i18nStore,exports.interpolateI18nMessage=s.interpolateI18nMessage,exports.isBlank=f.isBlank,exports.isBoolean=t.isBoolean,exports.isFunction=t.isFunction,exports.isNil=t.isNil,exports.isNonNullable=t.isNonNullable,exports.isNumber=t.isNumber,exports.isPlainI18nDictionary=s.isPlainI18nDictionary,exports.isPlainObject=t.isPlainObject,exports.isString=t.isString,exports.joinColorized=c.joinColorized,exports.kebabCase=f.kebabCase,exports.languageLocalKey=o.languageLocalKey,exports.logColor=c.logColor,exports.logColorized=c.logColorized,exports.logGreen=c.logGreen,exports.logJoinColorized=c.logJoinColorized,exports.logPink=c.logPink,exports.logRed=c.logRed,exports.logWhite=c.logWhite,exports.logYellow=c.logYellow,exports.mapValues=d.mapValues,exports.mergeI18nDictionary=s.mergeI18nDictionary,exports.mergeI18nResources=s.mergeI18nResources,exports.omit=d.omit,exports.pick=d.pick,exports.t=s.t,exports.toArray=n.toArray,exports.toFiniteNumber=l.toFiniteNumber,exports.translate=s.translate,exports.translations=o.translations,exports.uniqueBy=n.uniqueBy;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`\x1B[0m`,t={black:`\x1B[30m`,red:`\x1B[31m`,green:`\x1B[32m`,yellow:`\x1B[33m`,blue:`\x1B[34m`,magenta:`\x1B[35m`,pink:`\x1B[95m`,cyan:`\x1B[36m`,white:`\x1B[37m`,gray:`\x1B[90m`},n=()=>globalThis.console,r=(n,r=`green`)=>`${t[r]}${String(n)}${e}`,i=(...e)=>e.map(String).join(``),a=(...e)=>{n()?.log(e.map(String).join(``))},o=e=>typeof e==`string`?`'${e}'`:typeof e==`bigint`?`${e}n`:typeof e==`symbol`?String(e):typeof e==`function`?`[Function${e.name?`: ${e.name}`:``}]`:e===void 0?`undefined`:e===null?`null`:String(e),s=(e,t,n=0)=>{if(typeof e!=`object`||!e)return o(e);if(t.seen.has(e))return`[Circular]`;if(e instanceof Date)return e.toISOString();if(e instanceof Error)return e.stack??`${e.name}: ${e.message}`;if(t.seen.add(e),Array.isArray(e)){let r=e.map(e=>s(e,t,n+1));return t.seen.delete(e),`[${r.join(`, `)}]`}let r=Object.entries(e);if(r.length===0)return t.seen.delete(e),`{}`;let i=` `.repeat(n),a=` `.repeat(n+1),c=r.map(([e,r])=>`${a}${e}: ${s(r,t,n+1)}`).join(`,
|
|
2
2
|
`);return t.seen.delete(e),`{\n${c}\n${i}}`},c=e=>typeof e==`string`?e:s(e,{seen:new WeakSet}),l=(e,t)=>{if(e===`%%`)return`%`;if(e===`%s`)return String(t);if(e===`%d`||e===`%i`)return Number.parseInt(String(t),10).toString();if(e===`%f`)return Number.parseFloat(String(t)).toString();if(e===`%j`)try{return JSON.stringify(t)}catch{return`[Circular]`}return e===`%o`||e===`%O`?c(t):e===`%c`?``:e},u=e=>{if(e.length===0)return``;let[t,...n]=e;if(typeof t!=`string`)return e.map(c).join(` `);let r=0;return[t.replace(/%[sdifjoOc%]/g,e=>{if(e===`%%`)return`%`;if(r>=n.length)return e;let t=n[r];return r+=1,l(e,t)}),...n.slice(r).map(c)].join(` `)},d=e=>typeof e==`string`&&e in t,f=e=>{if(typeof e!=`object`||!e||!Object.keys(e).some(e=>e===`color`||e===`prefix`||e===`suffix`))return!1;let t=e;return t.color===void 0||d(t.color)},p=(n,r,i={})=>{let a=i.prefix??``,o=i.suffix??``,s=u(r);return[`${t[n]}${a}${s}${o}${e}`]},m=(e,t)=>{let r=t.color??`green`;n()?.log(...p(r,e,t))};function h(...e){let[t,...n]=e,r=e.at(-1);if(d(t)&&e.length>=2){m(n,{color:t});return}if(d(r)&&e.length===2){m([t],{color:r});return}if(f(r)&&e.length>=2){m(e.slice(0,-1),r);return}m(e,{color:`green`})}var g=(e,...t)=>{m(t,{color:e})},_=(...e)=>{n()?.log(...e)},v=(...e)=>{g(`green`,...e)},y=(...e)=>{g(`yellow`,...e)},b=(...e)=>{g(`pink`,...e)},x=(...e)=>{g(`white`,...e)},S=(...e)=>{g(`red`,...e)};exports.ANSI_RESET=e,exports.ansiColors=t,exports.colorLog=h,exports.colorize=r,exports.joinColorized=i,exports.logColor=g,exports.logColorized=_,exports.logGreen=v,exports.logJoinColorized=a,exports.logPink=b,exports.logRed=S,exports.logWhite=x,exports.logYellow=y;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=(e,t,n)=>{if(t>n)throw RangeError(`min must be less than or equal to max`);return Math.min(Math.max(e,t),n)},t=(e,t=0)=>{let n=typeof e==`number`?e:Number(e);return Number.isFinite(n)?n:t};exports.clamp=e,exports.toFiniteNumber=t;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../guards/index.js`);var t=t=>t===void 0?!0:Array.isArray(t)?t.length===0:e.isPlainObject(t)?Object.keys(t).length===0:!1,n=r=>{if(Array.isArray(r)){let e=r.map(e=>n(e)).filter(e=>!t(e));return e.length>0?e:void 0}if(e.isPlainObject(r)){let e={};for(let[i,a]of Object.entries(r)){let r=n(a);t(r)||(e[i]=r)}return Object.keys(e).length>0?e:void 0}return r};function r(e){return n(e)}var i=r;exports.filterEmpty=r,exports.filtereEmpty=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./filterEmpty.js`);exports.filterEmpty=e.filterEmpty,exports.filtereEmpty=e.filtereEmpty;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./filterEmpty.js`);var t=(e,t)=>{let n={};for(let r of t)r in e&&(n[r]=e[r]);return n},n=(e,t)=>{let n={...e};for(let e of t)delete n[e];return n},r=(e,t)=>{let n={},r=Object.keys(e);for(let i of r)n[i]=t(e[i],i);return n};exports.filterEmpty=e.filterEmpty,exports.filtereEmpty=e.filtereEmpty,exports.mapValues=r,exports.omit=n,exports.pick=t;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>e==null||e.trim().length===0,t=e=>e.length===0?e:`${e.charAt(0).toUpperCase()}${e.slice(1)}`,n=e=>e.trim().replace(/([a-z0-9])([A-Z])/g,`$1-$2`).replace(/[\s_]+/g,`-`).replace(/-+/g,`-`).toLowerCase();exports.capitalize=t,exports.isBlank=e,exports.kebabCase=n;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require(`../../../_virtual/_rolldown/runtime.js`);
|
package/cjs/packages/core/env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
var e=()=>({isLocal(){return process.env._ENV===`local`},isBate(){return process.env._ENV===`bate`},isProd(){return process.env._ENV===`prod`},get(){return process.env._ENV??`local`},getEnvKeys(){return{local:`local`,bate:`bate`,prod:`prod`}}});module.exports=e;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../../_virtual/_rolldown/runtime.js`),t=require(`./env.js`),n=require(`../utils/path.js`),r=require(`../utils/runFileFn.js`);require(`../utils/index.js`);const i=require(`./loader/
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../../_virtual/_rolldown/runtime.js`),t=require(`./env.js`),n=require(`../utils/path.js`),r=require(`../utils/runFileFn.js`);require(`../utils/index.js`);const i=require(`./loader/config.js`),a=require(`./loader/controller.js`),o=require(`./loader/extend.js`),s=require(`./loader/middleware.js`),c=require(`./loader/model.js`),l=require(`./loader/router.js`),u=require(`./loader/router-schema.js`),d=require(`./loader/service.js`);let f=require(`koa`);f=e.__toESM(f,1);var p=c,m=async(e={})=>{let r=new f.default;r.hooks={},r.hooks.initing?.();let{frameBaseDir:c,baseDir:p,...m}=e;r.options=m,r.options.pageBasePage=r.options.pageBasePage??`/`;let g=r.baseDir=p??process.cwd(),_=r.frameBaseDir=c??n.resolve(__dirname,`..`);r.businessAppPath=n.resolve(g,`app`),r.frameAppPath=n.resolve(_,`app`),r.paths=[{type:`frame`,path:r.frameAppPath},{type:`business`,path:r.businessAppPath}],r.envs=t(),console.log(`-- [init] env: ${r.envs.get()} --`),i(r),console.log(`-- [init] loader config done --`),await o(r),console.log(`-- [init] loader extend done --`),u(r),console.log(`-- [init] loader routerSchema done --`),d(r),console.log(`-- [init] loader service done --`),a(r),console.log(`-- [init] loader controller done --`),s(r),console.log(`-- [init] loader middleware done --`),h(r),l(r),console.log(`-- [init] loader router done --`);try{let e=r.config.port||process.env.PORT||`8080`,n=parseInt(e+``,10),i=process.env.IP||`0.0.0.0`;r.listen(n,i),console.log(`Server port: http://localhost:${n}`),console.log(`run env is ${t().get()}`)}catch(e){console.error(e)}return r.hooks.inited?.(),r},h=e=>{e.paths.forEach(t=>{for(let i of[`ts`,`js`]){let a=`middleware.${i}`,o=n.resolve(t.path,a);try{r.runFileFn(o)?.(e),console.log(`-- [init] loader ${t.type} appMiddleware ${a} done -- (${t.path})`);break}catch(e){let n=e;if(!(n?.code===`MODULE_NOT_FOUND`&&typeof n?.message==`string`&&(n.message.includes(`Cannot find module '${o}'`)||n.message.includes(`Cannot find module "${o}"`))))throw console.log(`-- [error] loader ${t.type} appMiddleware ${a} error -- (${o})`),e}}})};exports.loaderModel=p,exports.start=m;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../../_virtual/_rolldown/runtime.js`);const e=require(`../../utils/path.js`),t=require(`../../utils/getAllFilesInFolder.js`),n=require(`../../utils/runFileFn.js`);require(`../../utils/index.js`);var r=r=>{let
|
|
1
|
+
require(`../../../_virtual/_rolldown/runtime.js`);const e=require(`../../utils/path.js`),t=require(`../../utils/getAllFilesInFolder.js`),n=require(`../../utils/runFileFn.js`);require(`../../utils/index.js`);let r=require(`path`);var i=(e,t)=>[`config.${t}.ts`,`config.${t}.js`].includes((0,r.basename)(e)),a=r=>{let a=t.getAllFilesInFolder(r.baseDir,`config`),o=t.getAllFilesInFolder(r.frameBaseDir,`config`),s=r.envs.get(),c={default:!1,[s]:!1},l={};Object.keys(c).forEach(t=>{let r=[...o,...a].filter(e=>i(e,t));if(r.length){c[t]=!0;let i=r.reduce((t,r)=>({...t,...n.runFileFn(e.resolve(r))}),{});l=[l,i][t===`default`?`reduceRight`:`reduce`]((e,t)=>({...e,...t}),{})}}),(!c.default||!c[s])&&console.error(c.default?`[excption] Missing [env] configuration`:`[excption] Missing default configuration`),r.config=l};module.exports=a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../paths.js`),t=require(`../../utils/loadFile.js`),n=require(`../../utils/runFileFn.js`);require(`../../utils/index.js`);var r=r=>{r.controller=e.getAppPaths(r).reduce((e,i)=>({...e,...t.loadFileFn(i,`controller`,{loadFileCallback:e=>new(n.runFileFn(e)(r))})}),{})};module.exports=r;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../paths.js`),t=require(`../../utils/loadFile.js`),n=require(`../../utils/runFileFn.js`);require(`../../utils/index.js`);var r=async r=>{r.extends={...r.extends};let i=[];e.getAppPaths(r).forEach(e=>{t.loadFileFn(e,`extend`,{processingFileCallback:((e,t,a)=>{if(!a){for(let t in r)if(t===e){console.log(`\x1B[31m%s\x1B[0m`,`[extend loader error] name:${e} is already in app`);return}let a=n.runFileFn(t)(r);i.push(Promise.resolve(a).then(t=>({fileName:e,value:t})))}})})}),(await Promise.all(i)).forEach(({fileName:e,value:t})=>{r.extends[e]=t})};module.exports=r;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../paths.js`),t=require(`../../utils/loadFile.js`),n=require(`../../utils/runFileFn.js`);require(`../../utils/index.js`);var r=r=>{r.middlewares=e.getAppPaths(r).reduce((e,i)=>{let a=t.loadFileFn(i,`middleware`,{loadFileCallback:e=>n.runFileFn(e)(r)});return{...e,...a}},{})};module.exports=r;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../paths.js`),t=require(`../../utils/path.js`),n=require(`../../utils/loadFile.js`),r=require(`../../utils/runFileFn.js`);require(`../../utils/index.js`);var i=i=>{let a={};e.getAppPaths(i).forEach(e=>{n.loadFileFn(e,`router-schema`,{preProcessingFileCallback(e){a={...a,...r.runFileFn(t.resolve(e))}}})}),i.routerSchema=a};module.exports=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../paths.js`),t=require(`../../utils/loadFile.js`),n=require(`../../utils/runFileFn.js`);require(`../../utils/index.js`);var r=r=>{r.service=e.getAppPaths(r).reduce((e,i)=>({...e,...t.loadFileFn(i,`service`,{loadFileCallback:e=>new(n.runFileFn(e)(r))})}),{})};module.exports=r;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});function e(e,t){return e.paths?.find(e=>e.type===t)?.path}function t(e){return(e.paths??[]).map(e=>e.path)}exports.getAppPath=e,exports.getAppPaths=t;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require(`../../_virtual/_rolldown/runtime.js`);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require(`../../_virtual/_rolldown/runtime.js`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`})
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./path.js`),t=require(`./getAllFilesInFolder.js`),n=require(`./loadFile.js`),r=require(`./runFileFn.js`);exports.getAllFilesInFolder=t.getAllFilesInFolder,exports.loadFileFn=n.loadFileFn,exports.resolve=e.resolve,exports.runFileFn=r.runFileFn,exports.splicing=e.splicing;
|
|
@@ -1,20 +1,7 @@
|
|
|
1
1
|
//#region \0rolldown/runtime.js
|
|
2
|
-
var e =
|
|
3
|
-
let r = {};
|
|
4
|
-
for (var i in t) e(r, i, {
|
|
5
|
-
get: t[i],
|
|
6
|
-
enumerable: !0
|
|
7
|
-
});
|
|
8
|
-
return n || e(r, Symbol.toStringTag, { value: "Module" }), r;
|
|
9
|
-
}, o = (i, a, o, s) => {
|
|
10
|
-
if (a && typeof a == "object" || typeof a == "function") for (var c = n(a), l = 0, u = c.length, d; l < u; l++) d = c[l], !r.call(i, d) && d !== o && e(i, d, {
|
|
11
|
-
get: ((e) => a[e]).bind(null, d),
|
|
12
|
-
enumerable: !(s = t(a, d)) || s.enumerable
|
|
13
|
-
});
|
|
14
|
-
return i;
|
|
15
|
-
}, s = (t) => r.call(t, "module.exports") ? t["module.exports"] : o(e({}, "__esModule", { value: !0 }), t), c = /* @__PURE__ */ ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, { get: (e, t) => (typeof require < "u" ? require : e)[t] }) : e)(function(e) {
|
|
2
|
+
var e = /* @__PURE__ */ ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, { get: (e, t) => (typeof require < "u" ? require : e)[t] }) : e)(function(e) {
|
|
16
3
|
if (typeof require < "u") return require.apply(this, arguments);
|
|
17
4
|
throw Error("Calling `require` for \"" + e + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.");
|
|
18
5
|
});
|
|
19
6
|
//#endregion
|
|
20
|
-
export {
|
|
7
|
+
export { e as __require };
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
//#region app/controller/view.ts
|
|
2
|
-
var e = ((e) => class {
|
|
3
|
-
async renderPage(
|
|
4
|
-
|
|
2
|
+
var e = (e) => JSON.stringify(e).replace(/</g, "\\u003c").replace(/>/g, "\\u003e").replace(/&/g, "\\u0026").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029"), t = ((t) => class {
|
|
3
|
+
async renderPage(n) {
|
|
4
|
+
t.extends.logger.log(" - render page: " + n.params.page);
|
|
5
5
|
try {
|
|
6
|
-
|
|
7
|
-
projKey:
|
|
8
|
-
name:
|
|
9
|
-
env:
|
|
10
|
-
basePath: `${
|
|
11
|
-
|
|
6
|
+
t.extends.renderView(`dist/${n.params.page}.entry.tpl`, n, {
|
|
7
|
+
projKey: n.query.projk,
|
|
8
|
+
name: t.options?.name,
|
|
9
|
+
env: t.envs.get(),
|
|
10
|
+
basePath: e(`${t.options.pageBasePage}${n.params.page}`),
|
|
11
|
+
projKeyJson: e(String(n.query.projk ?? "")),
|
|
12
|
+
signKey: e(t.config.signKey),
|
|
13
|
+
options: e(t.options)
|
|
12
14
|
});
|
|
13
15
|
} catch {
|
|
14
|
-
|
|
16
|
+
t.extends.generateErrorMessage("template not found", {
|
|
15
17
|
status: 404,
|
|
16
18
|
showError: !0,
|
|
17
19
|
code: 0
|
|
@@ -20,4 +22,4 @@ var e = ((e) => class {
|
|
|
20
22
|
}
|
|
21
23
|
});
|
|
22
24
|
//#endregion
|
|
23
|
-
export {
|
|
25
|
+
export { t as default };
|
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { init_signKey as t, signKey_exports as n } from "../data/signKey.js";
|
|
3
|
-
import r from "md5";
|
|
1
|
+
import e from "md5";
|
|
4
2
|
//#region app/middleware/api-sign-verify.ts
|
|
5
|
-
var
|
|
6
|
-
let { path:
|
|
7
|
-
if (
|
|
8
|
-
|
|
9
|
-
let { s_sign:
|
|
10
|
-
|
|
3
|
+
var t = 1e3 * 60 * 10, n = (n) => async (r, i) => {
|
|
4
|
+
let { path: a, method: o } = r;
|
|
5
|
+
if (a.includes("api") && !n.config?.apiSignVerify?.whiteList?.includes(a)) {
|
|
6
|
+
n.extends.logger?.info("--[api-sign-verify]--");
|
|
7
|
+
let { s_sign: i, s_t: s } = r.request.header, { signKey: c } = n.config, l = e(`${c}_${s}`);
|
|
8
|
+
n.extends.logger?.info(`[${o} ${a}] signature: ${l}`), (!s || !i || i.toLowerCase() !== l || Date.now() - Number(s) > t) && n.extends.generateErrorMessage("signature not correct or api timeout", {
|
|
11
9
|
showError: !0,
|
|
12
10
|
code: 100014
|
|
13
11
|
});
|
|
14
12
|
}
|
|
15
|
-
await
|
|
13
|
+
await i();
|
|
16
14
|
};
|
|
17
15
|
//#endregion
|
|
18
|
-
export {
|
|
16
|
+
export { n as default };
|
package/esm/app/middleware.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { resolve as e } from "path";
|
|
2
2
|
import t from "koa-compress";
|
|
3
|
-
import n from "koa-
|
|
4
|
-
import r from "koa-
|
|
3
|
+
import n from "koa-bodyparser";
|
|
4
|
+
import r from "koa-static";
|
|
5
5
|
//#region app/middleware.ts
|
|
6
|
-
var i =
|
|
6
|
+
var i = n({
|
|
7
7
|
formLimit: "1000mb",
|
|
8
8
|
enableTypes: [
|
|
9
9
|
"form",
|
|
10
10
|
"json",
|
|
11
11
|
"text"
|
|
12
12
|
]
|
|
13
|
-
}), a = (
|
|
14
|
-
let a = { ...
|
|
15
|
-
|
|
13
|
+
}), a = (n) => {
|
|
14
|
+
let a = { ...n.envs.isLocal() ? { maxage: 60 * 1e3 } : { maxage: 365 * 24 * 60 * 60 * 1e3 } }, o = e(n.baseDir, "./app/public"), s = e(n.frameBaseDir, "./app/public"), c = n.options.additionalPublicPaths ?? [];
|
|
15
|
+
c = Array.isArray(c) ? c : [c], n.use(n.middlewares.errorHandle), n.use(t({ threshold: 2048 })), n.use(r(s, a)), n.use(r(o, a)), c.forEach((e) => n.use(r(e, a))), n.use(i), n.use(n.middlewares.projectHandler), !n.envs.isLocal() && n.use(n.middlewares.apiSignVerify), n.use(n.middlewares.apiParamsVerify);
|
|
16
16
|
};
|
|
17
17
|
//#endregion
|
|
18
18
|
export { a as default };
|
package/esm/app/view/entry.tpl
CHANGED
|
@@ -1,30 +1,29 @@
|
|
|
1
1
|
<!DOCTYPE html>
|
|
2
2
|
<html lang="en" class="dark">
|
|
3
|
-
|
|
4
|
-
<
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
</script>
|
|
23
|
-
|
|
24
|
-
<body>
|
|
25
|
-
|
|
26
|
-
</body>
|
|
27
|
-
|
|
28
|
-
<!-- {{InsertScript}} -->
|
|
29
|
-
|
|
30
|
-
</html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<link rel="icon" type="image/x-icon" href="/static/logo.png" />
|
|
7
|
+
<title>{{ name }}</title>
|
|
8
|
+
</head>
|
|
9
|
+
|
|
10
|
+
<script id="input">
|
|
11
|
+
window['_basePath'] = {{basePath | safe}}
|
|
12
|
+
window['_projKey'] = {{projKeyJson | safe}}
|
|
13
|
+
window['_signKey'] = {{signKey | safe}}
|
|
14
|
+
const s = document.getElementById('input')
|
|
15
|
+
s.parentElement.removeChild(s)
|
|
16
|
+
</script>
|
|
17
|
+
<script type="application/json" id="app-options-data">{{ options | safe }}</script>
|
|
18
|
+
<script>
|
|
19
|
+
const appOptionsScript = document.getElementById('app-options-data')
|
|
20
|
+
window['appOptions'] = JSON.parse(appOptionsScript.textContent || '{}')
|
|
21
|
+
appOptionsScript.parentElement.removeChild(appOptionsScript)
|
|
22
|
+
</script>
|
|
23
|
+
|
|
24
|
+
<body>
|
|
25
|
+
<div id="root"></div>
|
|
26
|
+
</body>
|
|
27
|
+
|
|
28
|
+
<!-- {{InsertScript}} -->
|
|
29
|
+
</html>
|
package/esm/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import "./packages/utils/index.js";
|
|
|
5
5
|
import r from "./packages/core/loader/model.js";
|
|
6
6
|
import { start as i } from "./packages/core/index.js";
|
|
7
7
|
//#region index.ts
|
|
8
|
-
var a = (e) => i({
|
|
8
|
+
var a = async (e) => i({
|
|
9
9
|
...e,
|
|
10
10
|
frameBaseDir: n(__dirname, ".")
|
|
11
11
|
}), o = {
|
|
@@ -2,50 +2,48 @@ import e from "./env.js";
|
|
|
2
2
|
import { resolve as t } from "../utils/path.js";
|
|
3
3
|
import { runFileFn as n } from "../utils/runFileFn.js";
|
|
4
4
|
import "../utils/index.js";
|
|
5
|
-
import r from "./loader/
|
|
6
|
-
import i from "./loader/
|
|
7
|
-
import a from "./loader/
|
|
8
|
-
import o from "./loader/
|
|
9
|
-
import s from "./loader/
|
|
10
|
-
import c from "./loader/
|
|
11
|
-
import l from "./loader/
|
|
12
|
-
import u from "./loader/
|
|
5
|
+
import r from "./loader/config.js";
|
|
6
|
+
import i from "./loader/controller.js";
|
|
7
|
+
import a from "./loader/extend.js";
|
|
8
|
+
import o from "./loader/middleware.js";
|
|
9
|
+
import s from "./loader/model.js";
|
|
10
|
+
import c from "./loader/router.js";
|
|
11
|
+
import l from "./loader/router-schema.js";
|
|
12
|
+
import u from "./loader/service.js";
|
|
13
13
|
import d from "koa";
|
|
14
14
|
//#region packages/core/index.ts
|
|
15
|
-
var f =
|
|
16
|
-
let
|
|
17
|
-
|
|
15
|
+
var f = s, p = async (n = {}) => {
|
|
16
|
+
let s = new d();
|
|
17
|
+
s.hooks = {}, s.hooks.initing?.();
|
|
18
18
|
let { frameBaseDir: f, baseDir: p, ...h } = n;
|
|
19
|
-
|
|
20
|
-
let g =
|
|
21
|
-
|
|
19
|
+
s.options = h, s.options.pageBasePage = s.options.pageBasePage ?? "/";
|
|
20
|
+
let g = s.baseDir = p ?? process.cwd(), _ = s.frameBaseDir = f ?? t(__dirname, "..");
|
|
21
|
+
s.businessAppPath = t(g, "app"), s.frameAppPath = t(_, "app"), s.paths = [{
|
|
22
22
|
type: "frame",
|
|
23
|
-
path:
|
|
23
|
+
path: s.frameAppPath
|
|
24
24
|
}, {
|
|
25
25
|
type: "business",
|
|
26
|
-
path:
|
|
27
|
-
}],
|
|
26
|
+
path: s.businessAppPath
|
|
27
|
+
}], s.envs = e(), console.log(`-- [init] env: ${s.envs.get()} --`), r(s), console.log("-- [init] loader config done --"), await a(s), console.log("-- [init] loader extend done --"), l(s), console.log("-- [init] loader routerSchema done --"), u(s), console.log("-- [init] loader service done --"), i(s), console.log("-- [init] loader controller done --"), o(s), console.log("-- [init] loader middleware done --"), m(s), c(s), console.log("-- [init] loader router done --");
|
|
28
28
|
try {
|
|
29
|
-
let t =
|
|
30
|
-
|
|
29
|
+
let t = s.config.port || process.env.PORT || "8080", n = parseInt(t + "", 10), r = process.env.IP || "0.0.0.0";
|
|
30
|
+
s.listen(n, r), console.log(`Server port: http://localhost:${n}`), console.log(`run env is ${e().get()}`);
|
|
31
31
|
} catch (e) {
|
|
32
32
|
console.error(e);
|
|
33
33
|
}
|
|
34
|
-
return
|
|
34
|
+
return s.hooks.inited?.(), s;
|
|
35
35
|
}, m = (e) => {
|
|
36
36
|
e.paths.forEach((r) => {
|
|
37
|
-
let i
|
|
38
|
-
|
|
39
|
-
let s = `middleware.${o}`;
|
|
37
|
+
for (let i of ["ts", "js"]) {
|
|
38
|
+
let a = `middleware.${i}`, o = t(r.path, a);
|
|
40
39
|
try {
|
|
41
|
-
n(
|
|
40
|
+
n(o)?.(e), console.log(`-- [init] loader ${r.type} appMiddleware ${a} done -- (${r.path})`);
|
|
42
41
|
break;
|
|
43
42
|
} catch (e) {
|
|
44
43
|
let t = e;
|
|
45
|
-
t?.code === "MODULE_NOT_FOUND" && typeof t?.message == "string" && t.message.includes(
|
|
44
|
+
if (!(t?.code === "MODULE_NOT_FOUND" && typeof t?.message == "string" && (t.message.includes(`Cannot find module '${o}'`) || t.message.includes(`Cannot find module "${o}"`)))) throw console.log(`-- [error] loader ${r.type} appMiddleware ${a} error -- (${o})`), e;
|
|
46
45
|
}
|
|
47
46
|
}
|
|
48
|
-
!i && a && (console.log(`-- [error] loader ${r.type} appMiddlerare middleware.(ts|js) error -- (${r.path})`), console.log(a));
|
|
49
47
|
});
|
|
50
48
|
};
|
|
51
49
|
//#endregion
|
|
@@ -2,26 +2,27 @@ import { resolve as e } from "../../utils/path.js";
|
|
|
2
2
|
import { getAllFilesInFolder as t } from "../../utils/getAllFilesInFolder.js";
|
|
3
3
|
import { runFileFn as n } from "../../utils/runFileFn.js";
|
|
4
4
|
import "../../utils/index.js";
|
|
5
|
+
import { basename as r } from "path";
|
|
5
6
|
//#region packages/core/loader/config.ts
|
|
6
|
-
var r = (r) => {
|
|
7
|
-
let
|
|
7
|
+
var i = (e, t) => [`config.${t}.ts`, `config.${t}.js`].includes(r(e)), a = (r) => {
|
|
8
|
+
let a = t(r.baseDir, "config"), o = t(r.frameBaseDir, "config"), s = r.envs.get(), c = {
|
|
8
9
|
default: !1,
|
|
9
|
-
[
|
|
10
|
-
},
|
|
11
|
-
Object.keys(
|
|
12
|
-
let r = [...
|
|
10
|
+
[s]: !1
|
|
11
|
+
}, l = {};
|
|
12
|
+
Object.keys(c).forEach((t) => {
|
|
13
|
+
let r = [...o, ...a].filter((e) => i(e, t));
|
|
13
14
|
if (r.length) {
|
|
14
|
-
|
|
15
|
+
c[t] = !0;
|
|
15
16
|
let i = r.reduce((t, r) => ({
|
|
16
17
|
...t,
|
|
17
18
|
...n(e(r))
|
|
18
19
|
}), {});
|
|
19
|
-
|
|
20
|
+
l = [l, i][t === "default" ? "reduceRight" : "reduce"]((e, t) => ({
|
|
20
21
|
...e,
|
|
21
22
|
...t
|
|
22
23
|
}), {});
|
|
23
24
|
}
|
|
24
|
-
}), (!
|
|
25
|
+
}), (!c.default || !c[s]) && console.error(c.default ? "[excption] Missing [env] configuration" : "[excption] Missing default configuration"), r.config = l;
|
|
25
26
|
};
|
|
26
27
|
//#endregion
|
|
27
|
-
export {
|
|
28
|
+
export { a as default };
|
|
@@ -3,20 +3,25 @@ import { loadFileFn as t } from "../../utils/loadFile.js";
|
|
|
3
3
|
import { runFileFn as n } from "../../utils/runFileFn.js";
|
|
4
4
|
import "../../utils/index.js";
|
|
5
5
|
//#region packages/core/loader/extend.ts
|
|
6
|
-
var r = (r) => {
|
|
7
|
-
r.extends = { ...r.extends }
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
var r = async (r) => {
|
|
7
|
+
r.extends = { ...r.extends };
|
|
8
|
+
let i = [];
|
|
9
|
+
e(r).forEach((e) => {
|
|
10
|
+
t(e, "extend", { processingFileCallback: ((e, t, a) => {
|
|
11
|
+
if (!a) {
|
|
10
12
|
for (let t in r) if (t === e) {
|
|
11
13
|
console.log("\x1B[31m%s\x1B[0m", `[extend loader error] name:${e} is already in app`);
|
|
12
14
|
return;
|
|
13
15
|
}
|
|
14
|
-
let
|
|
15
|
-
i
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
let a = n(t)(r);
|
|
17
|
+
i.push(Promise.resolve(a).then((t) => ({
|
|
18
|
+
fileName: e,
|
|
19
|
+
value: t
|
|
20
|
+
})));
|
|
18
21
|
}
|
|
19
22
|
}) });
|
|
23
|
+
}), (await Promise.all(i)).forEach(({ fileName: e, value: t }) => {
|
|
24
|
+
r.extends[e] = t;
|
|
20
25
|
});
|
|
21
26
|
};
|
|
22
27
|
//#endregion
|