@uxda/appkit 4.0.0 → 4.0.2

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.
Files changed (108) hide show
  1. package/.eslintrc.mjs +7 -7
  2. package/README.md +187 -187
  3. package/babel.config.js +12 -12
  4. package/dist/appkit.css +855 -36
  5. package/dist/assets/asset-DcH8Kg-2 +1 -0
  6. package/dist/index.js +3355 -610
  7. package/package.json +80 -78
  8. package/project.config.json +15 -15
  9. package/project.tt.json +13 -13
  10. package/rollup.config.mjs +56 -54
  11. package/src/Appkit.ts +65 -65
  12. package/src/balance/api/endpoints.ts +126 -126
  13. package/src/balance/api/index.ts +82 -82
  14. package/src/balance/components/AccountView.vue +748 -748
  15. package/src/balance/components/BalanceCard.vue +209 -209
  16. package/src/balance/components/BalanceReminder.vue +85 -85
  17. package/src/balance/components/ConsumptionFilter.vue +218 -218
  18. package/src/balance/components/ConsumptionRules.vue +68 -68
  19. package/src/balance/components/DateFilter.vue +226 -236
  20. package/src/balance/components/SecondBalance.vue +71 -71
  21. package/src/balance/components/Tip.vue +45 -45
  22. package/src/balance/components/index.ts +9 -9
  23. package/src/balance/types.ts +90 -90
  24. package/src/components/bt-cropper/index.vue +774 -0
  25. package/src/components/bt-cropper/utils/calcCropper.js +42 -0
  26. package/src/components/bt-cropper/utils/calcImagePosition.js +23 -0
  27. package/src/components/bt-cropper/utils/calcImageSize.js +37 -0
  28. package/src/components/bt-cropper/utils/calcPointDistance.js +12 -0
  29. package/src/components/bt-cropper/utils/calcRightAndBottom.js +7 -0
  30. package/src/components/bt-cropper/utils/ratio.js +3 -0
  31. package/src/components/bt-cropper/utils/tools.js +25 -0
  32. package/src/components/dd-area/index.vue +225 -225
  33. package/src/components/dd-icon/doc.md +21 -21
  34. package/src/components/dd-icon/index.vue +23 -23
  35. package/src/components/dd-notice-bar/index.vue +78 -78
  36. package/src/components/dd-search/doc.md +34 -34
  37. package/src/components/dd-search/index.vue +168 -168
  38. package/src/components/dd-selector/index.vue +124 -124
  39. package/src/components/dd-skeleton/doc.md +19 -0
  40. package/src/components/dd-skeleton/index.vue +36 -0
  41. package/src/components/ocr-id/index.vue +114 -114
  42. package/src/components/ocr-id/types.d.ts +12 -12
  43. package/src/global.ts +6 -6
  44. package/src/index.ts +89 -88
  45. package/src/main.scss +1 -1
  46. package/src/notice/api/endpoints.ts +17 -17
  47. package/src/notice/api/index.ts +82 -82
  48. package/src/notice/components/NoticeBanner.vue +243 -243
  49. package/src/notice/components/NoticeEntry.vue +99 -99
  50. package/src/notice/components/NoticeList.vue +315 -278
  51. package/src/notice/components/NoticePopup.vue +161 -163
  52. package/src/notice/components/index.ts +5 -6
  53. package/src/notice/components/useCommonList.ts +86 -86
  54. package/src/notice/components/useNotice.ts +35 -35
  55. package/src/notice/index.ts +1 -1
  56. package/src/notice/types.ts +25 -25
  57. package/src/payment/api/config.ts +7 -7
  58. package/src/payment/api/endpoints.ts +103 -103
  59. package/src/payment/api/index.ts +71 -71
  60. package/src/payment/components/AmountPicker.vue +93 -93
  61. package/src/payment/components/RechargeResult.vue +69 -69
  62. package/src/payment/components/RechargeView.vue +154 -154
  63. package/src/payment/components/RightsPicker.vue +105 -105
  64. package/src/payment/components/TradeView.vue +298 -298
  65. package/src/payment/components/UserAgreement.vue +234 -142
  66. package/src/payment/components/index.ts +22 -22
  67. package/src/payment/index.ts +5 -5
  68. package/src/payment/services/index.ts +16 -16
  69. package/src/payment/services/invoke-recharge.ts +25 -25
  70. package/src/payment/services/request-payment.ts +58 -58
  71. package/src/payment/types.ts +28 -28
  72. package/src/register/components/SelfRegistration.vue +254 -228
  73. package/src/register/components/index.ts +2 -2
  74. package/src/shared/components/AppDrawer.vue +58 -58
  75. package/src/shared/components/DeviceVersion.vue +68 -67
  76. package/src/shared/components/EmptyView.vue +33 -33
  77. package/src/shared/components/PageHeader.vue +79 -79
  78. package/src/shared/components/index.ts +5 -5
  79. package/src/shared/composables/index.ts +5 -2
  80. package/src/shared/composables/useCountdown.ts +46 -0
  81. package/src/shared/composables/useDragBox.ts +97 -0
  82. package/src/shared/composables/useEncode.ts +43 -0
  83. package/src/shared/composables/useSafeArea.ts +46 -46
  84. package/src/shared/composables/useTabbar.ts +24 -24
  85. package/src/shared/composables/useValidator.ts +31 -0
  86. package/src/shared/http/Http.ts +136 -135
  87. package/src/shared/http/index.ts +1 -1
  88. package/src/shared/http/types.ts +157 -157
  89. package/src/shared/index.ts +3 -3
  90. package/src/shared/weixin/payment.ts +38 -38
  91. package/src/styles/fonts.scss +2 -2
  92. package/src/styles/vars.scss +3 -3
  93. package/src/user/api/endpoints.ts +17 -0
  94. package/src/user/api/index.ts +87 -0
  95. package/src/{notice → user}/components/LoginSetting.vue +114 -112
  96. package/src/user/components/UserBinding.vue +307 -0
  97. package/src/user/components/UserBindingSuccess.vue +80 -0
  98. package/src/user/components/UserEntry.vue +142 -0
  99. package/src/user/components/UserFeedback.vue +440 -0
  100. package/src/user/components/UserFeedbackEntry.vue +192 -0
  101. package/src/user/components/UserHeadCrop.vue +65 -0
  102. package/src/user/components/UserInfo.vue +632 -0
  103. package/src/user/components/UserResourceEmpty.vue +75 -0
  104. package/src/user/components/index.ts +21 -0
  105. package/src/user/index.ts +1 -0
  106. package/tsconfig.json +30 -30
  107. package/types/global.d.ts +21 -21
  108. package/types/vue.d.ts +10 -10
package/src/index.ts CHANGED
@@ -1,88 +1,89 @@
1
- import { App } from 'vue'
2
- import { components as paymentComponents } from './payment/components'
3
- import { services as paymentServices } from './payment'
4
- import // Grid,
5
- // GridItem,
6
- // Button,
7
- // Checkbox,
8
- // Popup,
9
- // OverLay,
10
- // DatePicker,
11
- // Form,
12
- // FormItem,
13
- // Cell,
14
- // CellGroup,
15
- // Dialog
16
- '@nutui/nutui-taro'
17
- import { type AppKitOptions, useAppKitOptions, DollarApp } from './Appkit'
18
- import { PaymentParams, RechargeParams } from './payment/types'
19
- import './main.scss'
20
-
21
- const nutComponents = [
22
- // Grid,
23
- // GridItem,
24
- // Button,
25
- // Checkbox,
26
- // Popup,
27
- // OverLay,
28
- // DatePicker,
29
- // Form,
30
- // FormItem,
31
- // Cell,
32
- // CellGroup,
33
- // Dialog
34
- ]
35
-
36
- const appComponents = {
37
- ...paymentComponents,
38
- }
39
-
40
- const services = [...paymentServices]
41
-
42
- const $app: DollarApp = {
43
- setToken: (token: () => string) => {
44
- const appKitOptions = useAppKitOptions()
45
- appKitOptions.token = token
46
- },
47
- setTempToken: (token: () => string) => {
48
- const appKitOptions = useAppKitOptions()
49
- appKitOptions.tempToken = token
50
- },
51
- requestPayment: (options: PaymentParams) => {},
52
- invokeRecharge: (options: RechargeParams) => {},
53
- }
54
-
55
- services.forEach((service) => {
56
- service.install($app)
57
- })
58
-
59
- export function useAppKit(): DollarApp {
60
- return $app
61
- }
62
-
63
- const AppKit = {
64
- install(app: App, options: AppKitOptions) {
65
- const appKitOptions = useAppKitOptions()
66
- appKitOptions.app = options.app
67
- appKitOptions.tenant = options.tenant
68
- appKitOptions.token = options.token
69
- appKitOptions.baseUrl = options.baseUrl
70
- appKitOptions[401] = options[401]
71
- appKitOptions.gray = options.gray
72
- nutComponents.forEach((component) => {
73
- app.use(component)
74
- })
75
- Object.entries(appComponents).forEach(([name, component]) => {
76
- app.component(name, component)
77
- })
78
- },
79
- }
80
-
81
- export default AppKit
82
-
83
- export * from './payment'
84
- export * from './balance'
85
- export * from './shared'
86
- export * from './register'
87
- export * from './notice'
88
- export { type AppKitOptions }
1
+ import { App } from 'vue'
2
+ import { components as paymentComponents } from './payment/components'
3
+ import { services as paymentServices } from './payment'
4
+ import // Grid,
5
+ // GridItem,
6
+ // Button,
7
+ // Checkbox,
8
+ // Popup,
9
+ // OverLay,
10
+ // DatePicker,
11
+ // Form,
12
+ // FormItem,
13
+ // Cell,
14
+ // CellGroup,
15
+ // Dialog
16
+ '@nutui/nutui-taro'
17
+ import { type AppKitOptions, useAppKitOptions, DollarApp } from './Appkit'
18
+ import { PaymentParams, RechargeParams } from './payment/types'
19
+ import './main.scss'
20
+
21
+ const nutComponents = [
22
+ // Grid,
23
+ // GridItem,
24
+ // Button,
25
+ // Checkbox,
26
+ // Popup,
27
+ // OverLay,
28
+ // DatePicker,
29
+ // Form,
30
+ // FormItem,
31
+ // Cell,
32
+ // CellGroup,
33
+ // Dialog
34
+ ]
35
+
36
+ const appComponents = {
37
+ ...paymentComponents,
38
+ }
39
+
40
+ const services = [...paymentServices]
41
+
42
+ const $app: DollarApp = {
43
+ setToken: (token: () => string) => {
44
+ const appKitOptions = useAppKitOptions()
45
+ appKitOptions.token = token
46
+ },
47
+ setTempToken: (token: () => string) => {
48
+ const appKitOptions = useAppKitOptions()
49
+ appKitOptions.tempToken = token
50
+ },
51
+ requestPayment: (options: PaymentParams) => {},
52
+ invokeRecharge: (options: RechargeParams) => {},
53
+ }
54
+
55
+ services.forEach((service) => {
56
+ service.install($app)
57
+ })
58
+
59
+ export function useAppKit(): DollarApp {
60
+ return $app
61
+ }
62
+
63
+ const AppKit = {
64
+ install(app: App, options: AppKitOptions) {
65
+ const appKitOptions = useAppKitOptions()
66
+ appKitOptions.app = options.app
67
+ appKitOptions.tenant = options.tenant
68
+ appKitOptions.token = options.token
69
+ appKitOptions.baseUrl = options.baseUrl
70
+ appKitOptions[401] = options[401]
71
+ appKitOptions.gray = options.gray
72
+ nutComponents.forEach((component) => {
73
+ app.use(component)
74
+ })
75
+ Object.entries(appComponents).forEach(([name, component]) => {
76
+ app.component(name, component)
77
+ })
78
+ },
79
+ }
80
+
81
+ export default AppKit
82
+
83
+ export * from './payment'
84
+ export * from './balance'
85
+ export * from './shared'
86
+ export * from './register'
87
+ export * from './notice'
88
+ export * from './user'
89
+ export { type AppKitOptions }
package/src/main.scss CHANGED
@@ -1,2 +1,2 @@
1
- @import url(./styles/vars.scss);
1
+ @import url(./styles/vars.scss);
2
2
  @import url(./styles/fonts.scss);
@@ -1,17 +1,17 @@
1
- import { HttpEndpoints } from '../../shared/http'
2
-
3
- const endpointsList: HttpEndpoints = {}
4
-
5
- const endpoints = Object.fromEntries(
6
- Object.entries(endpointsList).map(([name, def]) => [name, def.path])
7
- )
8
-
9
- const translates = Object.fromEntries(
10
- Object.entries(endpointsList).map(([, def]) => [def.path, def.translate])
11
- )
12
-
13
- const transforms = Object.fromEntries(
14
- Object.entries(endpointsList).map(([, def]) => [def.path, def.transform])
15
- )
16
-
17
- export { endpoints, translates, transforms }
1
+ import { HttpEndpoints } from '../../shared/http'
2
+
3
+ const endpointsList: HttpEndpoints = {}
4
+
5
+ const endpoints = Object.fromEntries(
6
+ Object.entries(endpointsList).map(([name, def]) => [name, def.path])
7
+ )
8
+
9
+ const translates = Object.fromEntries(
10
+ Object.entries(endpointsList).map(([, def]) => [def.path, def.translate])
11
+ )
12
+
13
+ const transforms = Object.fromEntries(
14
+ Object.entries(endpointsList).map(([, def]) => [def.path, def.transform])
15
+ )
16
+
17
+ export { endpoints, translates, transforms }
@@ -1,82 +1,82 @@
1
- import Taro from '@tarojs/taro'
2
- import { HttpRequestConfig, PagingData, PagingParams, ResponseRaw, createHttp } from '../../shared'
3
- import { translates, transforms } from './endpoints'
4
- import { useAppKitOptions } from '../../Appkit'
5
-
6
- /**
7
- * 小程序端 Http
8
- * 使用 Taro.request 实现
9
- */
10
- const vendor = {
11
- async request<T>(config: HttpRequestConfig) {
12
- return new Promise<ResponseRaw<T>>((resolve, reject) => {
13
- Taro.request({
14
- url: config.url,
15
- method: config.method,
16
- header: config.headers,
17
- data: config.data,
18
- })
19
- .then(({ data }) => {
20
- resolve({
21
- status: +data.code,
22
- message: data.msg,
23
- data: data.result as T,
24
- })
25
- })
26
- .catch((e: any) => {
27
- reject(e)
28
- })
29
- })
30
- },
31
- }
32
-
33
- function useHttp() {
34
- const appkitOptions = useAppKitOptions()
35
- const headers = {
36
- Token: appkitOptions.tempToken() || appkitOptions.token(),
37
- Appcode: appkitOptions.app(),
38
- cookie: `tid=${appkitOptions.tenant()}`,
39
- gray: appkitOptions.gray ? appkitOptions.gray() : '0',
40
- }
41
- /**
42
- * 传入配置获取 Http instanse
43
- */
44
- const $http = createHttp({
45
- vendor,
46
- baseUrl: appkitOptions.baseUrl(),
47
- headers,
48
- interceptors: [
49
- (raw) => {
50
- if (raw.status == 401) {
51
- appkitOptions[401]()
52
- return true
53
- }
54
- return false
55
- },
56
- (raw) => {
57
- if (raw.status > 500 && raw.status != 51015 && raw.status != 51014) {
58
- return true
59
- }
60
- return false
61
- },
62
- ],
63
- paging: {
64
- translate: (params: PagingParams) => ({
65
- pageNum: params.page,
66
- pageSize: params.pageSize,
67
- }),
68
- transform(data: any): PagingData {
69
- return {
70
- totalPages: data.pages,
71
- }
72
- },
73
- },
74
- translates,
75
- transforms,
76
- })
77
- return $http
78
- }
79
-
80
- export { useHttp }
81
-
82
- export * from './endpoints'
1
+ import Taro from '@tarojs/taro'
2
+ import { HttpRequestConfig, PagingData, PagingParams, ResponseRaw, createHttp } from '../../shared'
3
+ import { translates, transforms } from './endpoints'
4
+ import { useAppKitOptions } from '../../Appkit'
5
+
6
+ /**
7
+ * 小程序端 Http
8
+ * 使用 Taro.request 实现
9
+ */
10
+ const vendor = {
11
+ async request<T>(config: HttpRequestConfig) {
12
+ return new Promise<ResponseRaw<T>>((resolve, reject) => {
13
+ Taro.request({
14
+ url: config.url,
15
+ method: config.method,
16
+ header: config.headers,
17
+ data: config.data,
18
+ })
19
+ .then(({ data }) => {
20
+ resolve({
21
+ status: +data.code,
22
+ message: data.msg,
23
+ data: data.result as T,
24
+ })
25
+ })
26
+ .catch((e: any) => {
27
+ reject(e)
28
+ })
29
+ })
30
+ },
31
+ }
32
+
33
+ function useHttp() {
34
+ const appkitOptions = useAppKitOptions()
35
+ const headers = {
36
+ Token: appkitOptions.tempToken() || appkitOptions.token(),
37
+ Appcode: appkitOptions.app(),
38
+ cookie: `tid=${appkitOptions.tenant()}`,
39
+ gray: appkitOptions.gray ? appkitOptions.gray() : '0',
40
+ }
41
+ /**
42
+ * 传入配置获取 Http instanse
43
+ */
44
+ const $http = createHttp({
45
+ vendor,
46
+ baseUrl: appkitOptions.baseUrl(),
47
+ headers,
48
+ interceptors: [
49
+ (raw) => {
50
+ if (raw.status == 401) {
51
+ appkitOptions[401]()
52
+ return true
53
+ }
54
+ return false
55
+ },
56
+ (raw) => {
57
+ if (raw.status > 500 && raw.status != 51015 && raw.status != 51014) {
58
+ return true
59
+ }
60
+ return false
61
+ },
62
+ ],
63
+ paging: {
64
+ translate: (params: PagingParams) => ({
65
+ pageNum: params.page,
66
+ pageSize: params.pageSize,
67
+ }),
68
+ transform(data: any): PagingData {
69
+ return {
70
+ totalPages: data.pages,
71
+ }
72
+ },
73
+ },
74
+ translates,
75
+ transforms,
76
+ })
77
+ return $http
78
+ }
79
+
80
+ export { useHttp }
81
+
82
+ export * from './endpoints'