@tuya-sat/sdf-main-sdk 0.4.0-alpha.6 → 0.4.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/README.md +167 -1
- package/dist/{131.6f6bcf5e.chunk.js → 131.a4000031.chunk.js} +1 -1
- package/dist/{131.6f6bcf5e.chunk.js.map → 131.a4000031.chunk.js.map} +1 -1
- package/dist/components/Expiration/index.d.ts +4 -0
- package/dist/en.json +15 -1
- package/dist/hooks/index.d.ts +7 -4
- package/dist/index.d.ts +7 -3
- package/dist/main.bundle.js +1 -1
- package/dist/main.bundle.js.map +1 -1
- package/dist/main.css +1219 -0
- package/dist/main.css.map +1 -1
- package/dist/manifest.json +6 -3
- package/dist/static/img/38f4e4f2c758741685d0.png +0 -0
- package/dist/static/img/72dd80e82e7a8baf135c.png +0 -0
- package/dist/static/img/a69c3be28e47eaaf341d.png +0 -0
- package/dist/static/img/df1e1d9e5f564d47f521.png +0 -0
- package/dist/utils/common.d.ts +2 -0
- package/dist/utils/theme/index.d.ts +0 -3
- package/dist/utils/theme/store.d.ts +4 -24
- package/dist/zh.json +16 -1
- package/package.json +1 -1
- package/dist/pages/expiration.d.ts +0 -1
- package/dist/static/img/ddf3e1f8ec8350445a4a.png +0 -0
package/README.md
CHANGED
|
@@ -1 +1,167 @@
|
|
|
1
|
-
# sdf-main-sdk
|
|
1
|
+
# [@tuya-sat/sdf-main-sdk](https://www.npmjs.com/package/@tuya-sat/sdf-main-sdk)
|
|
2
|
+
|
|
3
|
+
涂鸦 SaaS 开发框架的主应用 SDK,核心逻辑有开发框架团队维护并保障稳定性。业务方只需要基于此 SDK,进行要少量的业务开发,就可以定制符合自己业务诉求的主应用
|
|
4
|
+
|
|
5
|
+
## 如何使用
|
|
6
|
+
1. 快速初始化主应用项目
|
|
7
|
+
```shell
|
|
8
|
+
# 创建项目 `saas-main-app`
|
|
9
|
+
npx @tuya-sat/create-micro-app@latest saas-main-app -t main
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
2. 配置调试 SaaS
|
|
13
|
+
打开 `./micro.config.js`,配置需要调试的 saas 域名。如下:
|
|
14
|
+
```javascript
|
|
15
|
+
module.exports = {
|
|
16
|
+
debuggerConfig: {
|
|
17
|
+
target: 'https://<my-first-saas-host>', // SaaS 域名
|
|
18
|
+
isMainApp: true,
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
3. 启动项目
|
|
24
|
+
```shell
|
|
25
|
+
yarn start
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## 功能介绍
|
|
29
|
+
### Hooks
|
|
30
|
+
|
|
31
|
+
hooks 的定义和功能如下,将 hooks 存放到 `./src/hooks` 目录下,sdk 会读取并加载
|
|
32
|
+
|
|
33
|
+
```typescript
|
|
34
|
+
interface IHooks {
|
|
35
|
+
/**
|
|
36
|
+
* 功能:SaaS 页面渲染前钩子,主应用生命周期中最早的钩子
|
|
37
|
+
*/
|
|
38
|
+
enterAppHook?: () => void;
|
|
39
|
+
|
|
40
|
+
httpHook?: {
|
|
41
|
+
/**
|
|
42
|
+
* 功能:请求前拦截处理。可以在此处添加自定义的请求头
|
|
43
|
+
* 示例:
|
|
44
|
+
* ```
|
|
45
|
+
* before: (req) => {
|
|
46
|
+
* req.headers && (req.headers["abc"] = "sdf-main-sdk");
|
|
47
|
+
* }
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
before?: (req) => void;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* 功能:响应拦截处理。可以在这里统一格式化数据
|
|
54
|
+
* 示例:
|
|
55
|
+
* ```
|
|
56
|
+
* after: (data) => {
|
|
57
|
+
* // ....数据格式化逻辑
|
|
58
|
+
* return data;
|
|
59
|
+
* }
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
after?: (data) => any;
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* 功能:未登录时,对 SaaS 信息拦截处理
|
|
67
|
+
*/
|
|
68
|
+
unLoginSaaSHook?: (saas: any) => Promise<any>;
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* 功能:登录成功后,对 SaaS 信息拦截处理
|
|
72
|
+
*/
|
|
73
|
+
loginedSaaSHook?: (saasInfo: any) => Promise<any>;
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 页面 UI 配置
|
|
78
|
+
相关的配置,是以 props 属性的方式透传到组件内。具体配置项与使用方法如下
|
|
79
|
+
|
|
80
|
+
#### 1. 登录页
|
|
81
|
+
|
|
82
|
+
```tsx
|
|
83
|
+
import { LoginPage } from "@tuya-sat/sdf-main-sdk";
|
|
84
|
+
|
|
85
|
+
interface LoginPageProps {
|
|
86
|
+
extra?: {
|
|
87
|
+
// 标题
|
|
88
|
+
TitleSolt?: React.FC<{ logo: string; title: string }>;
|
|
89
|
+
|
|
90
|
+
// 背景图
|
|
91
|
+
BgSlot?: React.FC<{ bg: string }>;
|
|
92
|
+
|
|
93
|
+
// 三要素
|
|
94
|
+
ClauseSlot?: React.FC;
|
|
95
|
+
|
|
96
|
+
// 右上角导航
|
|
97
|
+
ExtraNavSlot?: React.FC;
|
|
98
|
+
};
|
|
99
|
+
customStyle?: {
|
|
100
|
+
// 自定义表单样式
|
|
101
|
+
formStyle?: React.CSSProperties;
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
// 示例:
|
|
106
|
+
export default (props: LoginPageProps) => {
|
|
107
|
+
return <LoginPage {...props} />
|
|
108
|
+
}
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
#### 2. 忘记密码页
|
|
112
|
+
|
|
113
|
+
```tsx
|
|
114
|
+
import { ForgetPage } from "@tuya-sat/sdf-main-sdk";
|
|
115
|
+
|
|
116
|
+
interface ForgetPageProps {
|
|
117
|
+
extra?: {
|
|
118
|
+
// 背景图
|
|
119
|
+
BgSlot?: React.FC<{ bg: string }>;
|
|
120
|
+
};
|
|
121
|
+
customStyle?: {
|
|
122
|
+
// 自定义表单样式
|
|
123
|
+
formStyle?: React.CSSProperties;
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// 示例:
|
|
128
|
+
export default (props: ForgetPageProps) => {
|
|
129
|
+
return <ForgetPage {...props} />
|
|
130
|
+
}
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
#### 3. 注册页
|
|
134
|
+
|
|
135
|
+
```tsx
|
|
136
|
+
import { RegisterPage } from "@tuya-sat/sdf-main-sdk";
|
|
137
|
+
|
|
138
|
+
interface RegisterPageProps {
|
|
139
|
+
extra?: {
|
|
140
|
+
// 背景图
|
|
141
|
+
BgSlot?: React.FC<{ bg: string }>;
|
|
142
|
+
};
|
|
143
|
+
customStyle?: {
|
|
144
|
+
// 自定义表单样式
|
|
145
|
+
formStyle?: React.CSSProperties;
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
// 示例:
|
|
150
|
+
export default (props: RegisterPageProps) => {
|
|
151
|
+
return <RegisterPage {...props} />
|
|
152
|
+
}
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### 多语言
|
|
156
|
+
如果新增了自定义组件,那其多语言需要存放到 `./src/lang` 目录下,并且在组件内部需要引用 sdk 暴露的 i18n 方法进行翻译。如下:
|
|
157
|
+
|
|
158
|
+
```tsx
|
|
159
|
+
import { i18n } from '@tuya-sat/sdf-main-sdk';
|
|
160
|
+
|
|
161
|
+
export default function CustomComponent() {
|
|
162
|
+
return (
|
|
163
|
+
// 注意:必须使用 sdk 暴露的 i18n 方法
|
|
164
|
+
<div>{i18n.t('some key')}</div>
|
|
165
|
+
)
|
|
166
|
+
}
|
|
167
|
+
```
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";(self.webpackChunk_SDF=self.webpackChunk_SDF||[]).push([[131],{82131:function(e,t,n){n.r(t),n.d(t,{getCLS:function(){return v},getFCP:function(){return g},getFID:function(){return F},getLCP:function(){return k},getTTFB:function(){return C}});var i,a,r,o,u=function(e,t){return{name:e,value:void 0===t?-1:t,delta:0,entries:[],id:"v1-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12)}},c=function(e,t){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){if("first-input"===e&&!("PerformanceEventTiming"in self))return;var n=new PerformanceObserver((function(e){return e.getEntries().map(t)}));return n.observe({type:e,buffered:!0}),n}}catch(e){}},f=function(e,t){var n=function n(i){"pagehide"!==i.type&&"hidden"!==document.visibilityState||(e(i),t&&(removeEventListener("visibilitychange",n,!0),removeEventListener("pagehide",n,!0)))};addEventListener("visibilitychange",n,!0),addEventListener("pagehide",n,!0)},s=function(e){addEventListener("pageshow",(function(t){t.persisted&&e(t)}),!0)},m="function"==typeof WeakSet?new WeakSet:new Set,p=function(e,t,n){var i;return function(){t.value>=0&&(n||m.has(t)||"hidden"===document.visibilityState)&&(t.delta=t.value-(i||0),(t.delta||void 0===i)&&(i=t.value,e(t)))}},v=function(e,t){var n,i=u("CLS",0),a=function(e){e.hadRecentInput||(i.value+=e.value,i.entries.push(e),n())},r=c("layout-shift",a);r&&(n=p(e,i,t),f((function(){r.takeRecords().map(a),n()})),s((function(){i=u("CLS",0),n=p(e,i,t)})))},d=-1,l=function(){return"hidden"===document.visibilityState?0:1/0},h=function(){f((function(e){var t=e.timeStamp;d=t}),!0)},S=function(){return d<0&&(d=l(),h(),s((function(){setTimeout((function(){d=l(),h()}),0)}))),{get timeStamp(){return d}}},g=function(e,t){var n,i=S(),a=u("FCP"),r=function(e){"first-contentful-paint"===e.name&&(f&&f.disconnect(),e.startTime<i.timeStamp&&(a.value=e.startTime,a.entries.push(e),m.add(a),n()))},o=performance.getEntriesByName("first-contentful-paint")[0],f=o?null:c("paint",r);(o||f)&&(n=p(e,a,t),o&&r(o),s((function(i){a=u("FCP"),n=p(e,a,t),requestAnimationFrame((function(){requestAnimationFrame((function(){a.value=performance.now()-i.timeStamp,m.add(a),n()}))}))})))},y={passive:!0,capture:!0},E=new Date,w=function(e,t){i||(i=t,a=e,r=new Date,b(removeEventListener),L())},L=function(){if(a>=0&&a<r-E){var e={entryType:"first-input",name:i.type,target:i.target,cancelable:i.cancelable,startTime:i.timeStamp,processingStart:i.timeStamp+a};o.forEach((function(t){t(e)})),o=[]}},T=function(e){if(e.cancelable){var t=(e.timeStamp>1e12?new Date:performance.now())-e.timeStamp;"pointerdown"==e.type?function(e,t){var n=function(){w(e,t),a()},i=function(){a()},a=function(){removeEventListener("pointerup",n,y),removeEventListener("pointercancel",i,y)};addEventListener("pointerup",n,y),addEventListener("pointercancel",i,y)}(t,e):w(t,e)}},b=function(e){["mousedown","keydown","touchstart","pointerdown"].forEach((function(t){return e(t,T,y)}))},F=function(e,t){var n,r=S(),v=u("FID"),d=function(e){e.startTime<r.timeStamp&&(v.value=e.processingStart-e.startTime,v.entries.push(e),m.add(v),n())},l=c("first-input",d);n=p(e,v,t),l&&f((function(){l.takeRecords().map(d),l.disconnect()}),!0),l&&s((function(){var r;v=u("FID"),n=p(e,v,t),o=[],a=-1,i=null,b(addEventListener),r=d,o.push(r),L()}))},k=function(e,t){var n,i=S(),a=u("LCP"),r=function(e){var t=e.startTime;t<i.timeStamp&&(a.value=t,a.entries.push(e)),n()},o=c("largest-contentful-paint",r);if(o){n=p(e,a,t);var v=function(){m.has(a)||(o.takeRecords().map(r),o.disconnect(),m.add(a),n())};["keydown","click"].forEach((function(e){addEventListener(e,v,{once:!0,capture:!0})})),f(v,!0),s((function(i){a=u("LCP"),n=p(e,a,t),requestAnimationFrame((function(){requestAnimationFrame((function(){a.value=performance.now()-i.timeStamp,m.add(a),n()}))}))}))}},C=function(e){var t,n=u("TTFB");t=function(){try{var t=performance.getEntriesByType("navigation")[0]||function(){var e=performance.timing,t={entryType:"navigation",startTime:0};for(var n in e)"navigationStart"!==n&&"toJSON"!==n&&(t[n]=Math.max(e[n]-e.navigationStart,0));return t}();if(n.value=n.delta=t.responseStart,n.value<0)return;n.entries=[t],e(n)}catch(e){}},"complete"===document.readyState?setTimeout(t,0):addEventListener("pageshow",t)}}}]);
|
|
2
|
-
//# sourceMappingURL=131.
|
|
2
|
+
//# sourceMappingURL=131.a4000031.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"131.
|
|
1
|
+
{"version":3,"file":"131.a4000031.chunk.js","mappings":"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","sources":["webpack://_SDF/./node_modules/web-vitals/dist/web-vitals.js"],"sourcesContent":["var e,t,n,i,a=function(e,t){return{name:e,value:void 0===t?-1:t,delta:0,entries:[],id:\"v1-\".concat(Date.now(),\"-\").concat(Math.floor(8999999999999*Math.random())+1e12)}},r=function(e,t){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){if(\"first-input\"===e&&!(\"PerformanceEventTiming\"in self))return;var n=new PerformanceObserver((function(e){return e.getEntries().map(t)}));return n.observe({type:e,buffered:!0}),n}}catch(e){}},o=function(e,t){var n=function n(i){\"pagehide\"!==i.type&&\"hidden\"!==document.visibilityState||(e(i),t&&(removeEventListener(\"visibilitychange\",n,!0),removeEventListener(\"pagehide\",n,!0)))};addEventListener(\"visibilitychange\",n,!0),addEventListener(\"pagehide\",n,!0)},c=function(e){addEventListener(\"pageshow\",(function(t){t.persisted&&e(t)}),!0)},u=\"function\"==typeof WeakSet?new WeakSet:new Set,f=function(e,t,n){var i;return function(){t.value>=0&&(n||u.has(t)||\"hidden\"===document.visibilityState)&&(t.delta=t.value-(i||0),(t.delta||void 0===i)&&(i=t.value,e(t)))}},s=function(e,t){var n,i=a(\"CLS\",0),u=function(e){e.hadRecentInput||(i.value+=e.value,i.entries.push(e),n())},s=r(\"layout-shift\",u);s&&(n=f(e,i,t),o((function(){s.takeRecords().map(u),n()})),c((function(){i=a(\"CLS\",0),n=f(e,i,t)})))},m=-1,p=function(){return\"hidden\"===document.visibilityState?0:1/0},v=function(){o((function(e){var t=e.timeStamp;m=t}),!0)},d=function(){return m<0&&(m=p(),v(),c((function(){setTimeout((function(){m=p(),v()}),0)}))),{get timeStamp(){return m}}},l=function(e,t){var n,i=d(),o=a(\"FCP\"),s=function(e){\"first-contentful-paint\"===e.name&&(p&&p.disconnect(),e.startTime<i.timeStamp&&(o.value=e.startTime,o.entries.push(e),u.add(o),n()))},m=performance.getEntriesByName(\"first-contentful-paint\")[0],p=m?null:r(\"paint\",s);(m||p)&&(n=f(e,o,t),m&&s(m),c((function(i){o=a(\"FCP\"),n=f(e,o,t),requestAnimationFrame((function(){requestAnimationFrame((function(){o.value=performance.now()-i.timeStamp,u.add(o),n()}))}))})))},h={passive:!0,capture:!0},S=new Date,y=function(i,a){e||(e=a,t=i,n=new Date,w(removeEventListener),g())},g=function(){if(t>=0&&t<n-S){var a={entryType:\"first-input\",name:e.type,target:e.target,cancelable:e.cancelable,startTime:e.timeStamp,processingStart:e.timeStamp+t};i.forEach((function(e){e(a)})),i=[]}},E=function(e){if(e.cancelable){var t=(e.timeStamp>1e12?new Date:performance.now())-e.timeStamp;\"pointerdown\"==e.type?function(e,t){var n=function(){y(e,t),a()},i=function(){a()},a=function(){removeEventListener(\"pointerup\",n,h),removeEventListener(\"pointercancel\",i,h)};addEventListener(\"pointerup\",n,h),addEventListener(\"pointercancel\",i,h)}(t,e):y(t,e)}},w=function(e){[\"mousedown\",\"keydown\",\"touchstart\",\"pointerdown\"].forEach((function(t){return e(t,E,h)}))},L=function(n,s){var m,p=d(),v=a(\"FID\"),l=function(e){e.startTime<p.timeStamp&&(v.value=e.processingStart-e.startTime,v.entries.push(e),u.add(v),m())},h=r(\"first-input\",l);m=f(n,v,s),h&&o((function(){h.takeRecords().map(l),h.disconnect()}),!0),h&&c((function(){var r;v=a(\"FID\"),m=f(n,v,s),i=[],t=-1,e=null,w(addEventListener),r=l,i.push(r),g()}))},T=function(e,t){var n,i=d(),s=a(\"LCP\"),m=function(e){var t=e.startTime;t<i.timeStamp&&(s.value=t,s.entries.push(e)),n()},p=r(\"largest-contentful-paint\",m);if(p){n=f(e,s,t);var v=function(){u.has(s)||(p.takeRecords().map(m),p.disconnect(),u.add(s),n())};[\"keydown\",\"click\"].forEach((function(e){addEventListener(e,v,{once:!0,capture:!0})})),o(v,!0),c((function(i){s=a(\"LCP\"),n=f(e,s,t),requestAnimationFrame((function(){requestAnimationFrame((function(){s.value=performance.now()-i.timeStamp,u.add(s),n()}))}))}))}},b=function(e){var t,n=a(\"TTFB\");t=function(){try{var t=performance.getEntriesByType(\"navigation\")[0]||function(){var e=performance.timing,t={entryType:\"navigation\",startTime:0};for(var n in e)\"navigationStart\"!==n&&\"toJSON\"!==n&&(t[n]=Math.max(e[n]-e.navigationStart,0));return t}();if(n.value=n.delta=t.responseStart,n.value<0)return;n.entries=[t],e(n)}catch(e){}},\"complete\"===document.readyState?setTimeout(t,0):addEventListener(\"pageshow\",t)};export{s as getCLS,l as getFCP,L as getFID,T as getLCP,b as getTTFB};\n"],"names":["e","t","n","i","a","name","value","delta","entries","id","concat","Date","now","Math","floor","random","r","PerformanceObserver","supportedEntryTypes","includes","self","getEntries","map","observe","type","buffered","o","document","visibilityState","removeEventListener","addEventListener","c","persisted","u","WeakSet","Set","f","has","s","hadRecentInput","push","takeRecords","m","p","v","timeStamp","d","setTimeout","l","disconnect","startTime","add","performance","getEntriesByName","requestAnimationFrame","h","passive","capture","S","y","w","g","entryType","target","cancelable","processingStart","forEach","E","L","T","once","b","getEntriesByType","timing","max","navigationStart","responseStart","readyState"],"sourceRoot":""}
|
package/dist/en.json
CHANGED
|
@@ -173,6 +173,20 @@
|
|
|
173
173
|
"relogin.tip": "The account has been logged in on another device (browser) or has expired",
|
|
174
174
|
"relogin.btn": "Re-Login",
|
|
175
175
|
"relogin.pwd": "If it is not your operation, it is recommended to go to the account settings to change the password",
|
|
176
|
-
"
|
|
176
|
+
"microApp.expired.result.title1": "You have not purchased this micro-app.",
|
|
177
|
+
"microApp.expired.result.title2": "Micro-app has expired.",
|
|
178
|
+
"microApp.expired.result.title3": "SaaS has expired.",
|
|
179
|
+
"microApp.expired.result.subTitle": "After successful purchase, you can continue to use it.",
|
|
180
|
+
"microApp.expired.result.purchaseBtn": "Buy It Now",
|
|
181
|
+
"microApp.purchaseModal.product1.btn": " Purchase the MicroApp",
|
|
182
|
+
"microApp.purchaseModal.product1.desc": " Single MicroApp ¥10,000 per year, all-inclusive, no longer separately calculating various service resource consumption.",
|
|
183
|
+
"microApp.purchaseModal.product1.price": " ¥10,000 <span>per year</span>",
|
|
184
|
+
"microApp.purchaseModal.product1.title": " Option One",
|
|
185
|
+
"microApp.purchaseModal.product2.btn": "Purchase IoT Core",
|
|
186
|
+
"microApp.purchaseModal.product2.desc": " Annual usage rights for device control MicroApp, resource consumption is accounted for in the IoT Core service, no need to purchase mini-applications separately.",
|
|
187
|
+
"microApp.purchaseModal.product2.title": " Option Two",
|
|
188
|
+
"microApp.purchaseModal.title": "Solution selection",
|
|
189
|
+
"global.saas.expired.tips1": "Your SaaS service has expired. To continue using it, please visit the Tuya Developer Platform to renew your subscription.",
|
|
190
|
+
"global.saas.expired.tips2": "Your SaaS service will expire in {{day}} days. To continue using it, please visit the Tuya Developer Platform to renew your subscription."
|
|
177
191
|
}
|
|
178
192
|
}
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -22,8 +22,11 @@ export declare const useQrCode: () => {
|
|
|
22
22
|
enable: boolean;
|
|
23
23
|
tip: string;
|
|
24
24
|
qrCode: string;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
qrCodeHasFavicon: boolean;
|
|
26
|
+
qrCodeLayout: string;
|
|
27
|
+
};
|
|
28
|
+
export declare const useMicroAppExpiration: (apps: any) => {
|
|
29
|
+
needPurchaseApp: boolean;
|
|
30
|
+
isAppExpiration: boolean;
|
|
31
|
+
isSaasExpiration: boolean;
|
|
28
32
|
};
|
|
29
|
-
export declare const useMicroAppExpiration: (apps: any) => boolean;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import './index.css';
|
|
2
2
|
import './public-path.js';
|
|
3
3
|
import { FC } from 'react';
|
|
4
|
+
import * as _langUtils from './lang/utils';
|
|
4
5
|
export { api, URLS } from './api';
|
|
5
6
|
export { useYRule } from './utils/yrule';
|
|
6
7
|
export { default as i18n } from './lang';
|
|
8
|
+
export declare const langUtils: typeof _langUtils;
|
|
7
9
|
export interface IHooks {
|
|
8
10
|
/**
|
|
9
11
|
* 功能:SaaS 页面渲染前钩子,主应用生命周期中最早的钩子
|
|
@@ -28,15 +30,16 @@ export interface IHooks {
|
|
|
28
30
|
*/
|
|
29
31
|
after?: (res: any, cb: any) => void;
|
|
30
32
|
};
|
|
31
|
-
unLoginSaaSHook?: (
|
|
32
|
-
|
|
33
|
+
unLoginSaaSHook?: (saasBasicInfo: any) => Promise<any>;
|
|
34
|
+
loginedSaaSHook?: (saasInfo: any) => Promise<any>;
|
|
33
35
|
}
|
|
34
36
|
export type { LoginProps } from './pages/login';
|
|
35
37
|
export { default as LoginPage } from './pages/login';
|
|
36
38
|
export { default as ForgetPage } from './pages/forgot';
|
|
37
39
|
export { default as RegisterPage } from './pages/register';
|
|
38
40
|
export { default as SettingPage } from './pages/home/setting';
|
|
39
|
-
export { default as MBdb
|
|
41
|
+
export { default as MBdb } from './components/MicroComponent/Header';
|
|
42
|
+
export type { IBdbInfo } from './components/MicroComponent/Header';
|
|
40
43
|
export type { IMenus } from './components/BLayout/components/Layout';
|
|
41
44
|
export { MMenu } from './components/BLayout/components/Layout';
|
|
42
45
|
export type { Dmenus } from './components/BLayout/components/Header';
|
|
@@ -46,6 +49,7 @@ interface IPages {
|
|
|
46
49
|
needLogin?: boolean;
|
|
47
50
|
isHideMultiLang?: boolean;
|
|
48
51
|
isHidePhoneRegionNum?: boolean;
|
|
52
|
+
showClauseInModal?: boolean;
|
|
49
53
|
};
|
|
50
54
|
Forget: FC;
|
|
51
55
|
Register: FC & {
|