@pisell/private-materials 3.4.44 → 3.4.46

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 (193) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +2 -2
  6. package/build/lowcode/preview.js +150 -164
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +9 -9
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +9 -9
  11. package/es/components/booking/addons/model.d.ts +1 -10
  12. package/es/components/booking/forms/model.d.ts +1 -10
  13. package/es/components/booking/forms/sendModal/useSendModal.d.ts +1 -1
  14. package/es/components/booking/info/model.d.ts +1 -10
  15. package/es/components/booking/info/service/addService/utils.d.ts +1 -1
  16. package/es/components/booking/info/service2/utils.d.ts +1 -1
  17. package/es/components/booking/info2/service/addService/utils.d.ts +1 -1
  18. package/es/components/booking/model.d.ts +1 -9
  19. package/es/components/booking/notes/model.d.ts +1 -10
  20. package/es/components/booking/payments/model.d.ts +1 -10
  21. package/es/components/booking/utils.d.ts +2 -2
  22. package/es/components/eftposPay/amount.d.ts +1 -1
  23. package/es/components/eftposPay/device.d.ts +1 -1
  24. package/es/components/eftposPay/hooks.d.ts +2 -2
  25. package/es/components/eftposPay/store/index.d.ts +4 -4
  26. package/es/components/pay/toC/index.js +23 -20
  27. package/es/components/pay/toC/model.d.ts +1 -9
  28. package/es/components/schedules/model.d.ts +1 -9
  29. package/es/components/wallet/Detail/model.d.ts +1 -13
  30. package/es/components/wallet/DiscountCard/model.d.ts +1 -14
  31. package/es/components/wallet/PointCard/model.d.ts +1 -13
  32. package/es/components/wallet/RechargeableCard/model.d.ts +1 -29
  33. package/es/components/wallet/Voucher/model.d.ts +1 -13
  34. package/es/components/wallet/model.d.ts +1 -9
  35. package/es/index.d.ts +1 -0
  36. package/es/index.js +2 -1
  37. package/es/pro/Login2.0/AuthModal.d.ts +143 -0
  38. package/es/pro/Login2.0/AuthModal.js +630 -0
  39. package/es/pro/Login2.0/Login2.d.ts +61 -0
  40. package/es/pro/Login2.0/Login2.js +2235 -0
  41. package/es/pro/Login2.0/Register2.d.ts +65 -0
  42. package/es/pro/Login2.0/Register2.js +1501 -0
  43. package/es/pro/Login2.0/components/ForgotPasswordFlow.d.ts +31 -0
  44. package/es/pro/Login2.0/components/ForgotPasswordFlow.js +330 -0
  45. package/es/pro/Login2.0/components/LegalTerms.d.ts +8 -0
  46. package/es/pro/Login2.0/components/LegalTerms.js +51 -0
  47. package/es/pro/Login2.0/components/LegalTerms.less +74 -0
  48. package/es/pro/Login2.0/components/LoginCodeInput.d.ts +27 -0
  49. package/es/pro/Login2.0/components/LoginCodeInput.js +207 -0
  50. package/es/pro/Login2.0/components/OAuthButtonGroup.d.ts +22 -0
  51. package/es/pro/Login2.0/components/OAuthButtonGroup.js +55 -0
  52. package/es/pro/Login2.0/components/PhoneInput.d.ts +53 -0
  53. package/es/pro/Login2.0/components/PhoneInput.js +414 -0
  54. package/es/pro/Login2.0/components/PhoneInput.less +148 -0
  55. package/es/pro/Login2.0/components/phoneValidation.d.ts +17 -0
  56. package/es/pro/Login2.0/components/phoneValidation.js +228 -0
  57. package/es/pro/Login2.0/hooks/index.d.ts +2 -0
  58. package/es/pro/Login2.0/hooks/index.js +1 -0
  59. package/es/pro/Login2.0/hooks/usePasswordValidationRules.d.ts +24 -0
  60. package/es/pro/Login2.0/hooks/usePasswordValidationRules.js +87 -0
  61. package/es/pro/Login2.0/hooks/useRegisterFlow.d.ts +39 -0
  62. package/es/pro/Login2.0/hooks/useRegisterFlow.js +158 -0
  63. package/es/pro/Login2.0/hooks/useRegistrationMethods.d.ts +9 -0
  64. package/es/pro/Login2.0/hooks/useRegistrationMethods.js +31 -0
  65. package/es/pro/Login2.0/index.js +8 -0
  66. package/es/pro/Login2.0/index.less +1002 -0
  67. package/es/pro/Login2.0/locales.d.ts +543 -0
  68. package/es/pro/Login2.0/locales.js +622 -0
  69. package/es/pro/Login2.0/shared/Header.d.ts +11 -0
  70. package/es/pro/Login2.0/shared/Header.js +42 -0
  71. package/es/pro/Login2.0/shared/OAuthButtons.d.ts +11 -0
  72. package/es/pro/Login2.0/shared/OAuthButtons.js +59 -0
  73. package/es/pro/Login2.0/shared/registerFlow.d.ts +116 -0
  74. package/es/pro/Login2.0/shared/registerFlow.js +171 -0
  75. package/es/pro/Login2.0/shared/types.d.ts +232 -0
  76. package/es/pro/Login2.0/shared/types.js +1 -0
  77. package/es/pro/Login2.0/steps/CodeInput.d.ts +24 -0
  78. package/es/pro/Login2.0/steps/CodeInput.js +209 -0
  79. package/es/pro/Login2.0/steps/EmailAlreadyRegistered.d.ts +12 -0
  80. package/es/pro/Login2.0/steps/EmailAlreadyRegistered.js +35 -0
  81. package/es/pro/Login2.0/steps/EmailLinkAlreadyUsed.d.ts +7 -0
  82. package/es/pro/Login2.0/steps/EmailLinkAlreadyUsed.js +25 -0
  83. package/es/pro/Login2.0/steps/EmailLinkExpired.d.ts +9 -0
  84. package/es/pro/Login2.0/steps/EmailLinkExpired.js +33 -0
  85. package/es/pro/Login2.0/steps/SetPassword.d.ts +19 -0
  86. package/es/pro/Login2.0/steps/SetPassword.js +148 -0
  87. package/es/pro/Login2.0/steps/VerificationSuccess.d.ts +8 -0
  88. package/es/pro/Login2.0/steps/VerificationSuccess.js +35 -0
  89. package/es/pro/Login2.0/steps/VerifyingEmailLink.d.ts +7 -0
  90. package/es/pro/Login2.0/steps/VerifyingEmailLink.js +17 -0
  91. package/es/pro/Login2.0/steps/WaitEmailLink.d.ts +18 -0
  92. package/es/pro/Login2.0/steps/WaitEmailLink.js +54 -0
  93. package/es/pro/Login2.0/steps/index.d.ts +19 -0
  94. package/es/pro/Login2.0/steps/index.js +11 -0
  95. package/es/pro/Login2.0/steps/steps.less +423 -0
  96. package/es/pro/Login2.0/types.d.ts +167 -0
  97. package/es/pro/Login2.0/types.js +1 -0
  98. package/lib/components/booking/addons/model.d.ts +1 -10
  99. package/lib/components/booking/forms/model.d.ts +1 -10
  100. package/lib/components/booking/forms/sendModal/useSendModal.d.ts +1 -1
  101. package/lib/components/booking/info/model.d.ts +1 -10
  102. package/lib/components/booking/info/service/addService/utils.d.ts +1 -1
  103. package/lib/components/booking/info/service2/utils.d.ts +1 -1
  104. package/lib/components/booking/info2/service/addService/utils.d.ts +1 -1
  105. package/lib/components/booking/model.d.ts +1 -9
  106. package/lib/components/booking/notes/model.d.ts +1 -10
  107. package/lib/components/booking/payments/model.d.ts +1 -10
  108. package/lib/components/booking/utils.d.ts +2 -2
  109. package/lib/components/eftposPay/amount.d.ts +1 -1
  110. package/lib/components/eftposPay/device.d.ts +1 -1
  111. package/lib/components/eftposPay/hooks.d.ts +2 -2
  112. package/lib/components/eftposPay/store/index.d.ts +4 -4
  113. package/lib/components/pay/toC/index.js +9 -1
  114. package/lib/components/pay/toC/model.d.ts +1 -9
  115. package/lib/components/schedules/model.d.ts +1 -9
  116. package/lib/components/wallet/Detail/model.d.ts +1 -13
  117. package/lib/components/wallet/DiscountCard/model.d.ts +1 -14
  118. package/lib/components/wallet/PointCard/model.d.ts +1 -13
  119. package/lib/components/wallet/RechargeableCard/model.d.ts +1 -29
  120. package/lib/components/wallet/Voucher/model.d.ts +1 -13
  121. package/lib/components/wallet/model.d.ts +1 -9
  122. package/lib/index.d.ts +1 -0
  123. package/lib/index.js +7 -0
  124. package/lib/pro/Login2.0/AuthModal.d.ts +143 -0
  125. package/lib/pro/Login2.0/AuthModal.js +503 -0
  126. package/lib/pro/Login2.0/Login2.d.ts +61 -0
  127. package/lib/pro/Login2.0/Login2.js +1544 -0
  128. package/lib/pro/Login2.0/Register2.d.ts +65 -0
  129. package/lib/pro/Login2.0/Register2.js +1062 -0
  130. package/lib/pro/Login2.0/components/ForgotPasswordFlow.d.ts +31 -0
  131. package/lib/pro/Login2.0/components/ForgotPasswordFlow.js +213 -0
  132. package/lib/pro/Login2.0/components/LegalTerms.d.ts +8 -0
  133. package/lib/pro/Login2.0/components/LegalTerms.js +76 -0
  134. package/lib/pro/Login2.0/components/LegalTerms.less +74 -0
  135. package/lib/pro/Login2.0/components/LoginCodeInput.d.ts +27 -0
  136. package/lib/pro/Login2.0/components/LoginCodeInput.js +161 -0
  137. package/lib/pro/Login2.0/components/OAuthButtonGroup.d.ts +22 -0
  138. package/lib/pro/Login2.0/components/OAuthButtonGroup.js +87 -0
  139. package/lib/pro/Login2.0/components/PhoneInput.d.ts +53 -0
  140. package/lib/pro/Login2.0/components/PhoneInput.js +263 -0
  141. package/lib/pro/Login2.0/components/PhoneInput.less +148 -0
  142. package/lib/pro/Login2.0/components/phoneValidation.d.ts +17 -0
  143. package/lib/pro/Login2.0/components/phoneValidation.js +153 -0
  144. package/lib/pro/Login2.0/hooks/index.d.ts +2 -0
  145. package/lib/pro/Login2.0/hooks/index.js +29 -0
  146. package/lib/pro/Login2.0/hooks/usePasswordValidationRules.d.ts +24 -0
  147. package/lib/pro/Login2.0/hooks/usePasswordValidationRules.js +140 -0
  148. package/lib/pro/Login2.0/hooks/useRegisterFlow.d.ts +39 -0
  149. package/lib/pro/Login2.0/hooks/useRegisterFlow.js +149 -0
  150. package/lib/pro/Login2.0/hooks/useRegistrationMethods.d.ts +9 -0
  151. package/lib/pro/Login2.0/hooks/useRegistrationMethods.js +51 -0
  152. package/lib/pro/Login2.0/index.js +45 -0
  153. package/lib/pro/Login2.0/index.less +1002 -0
  154. package/lib/pro/Login2.0/locales.d.ts +543 -0
  155. package/lib/pro/Login2.0/locales.js +646 -0
  156. package/lib/pro/Login2.0/shared/Header.d.ts +11 -0
  157. package/lib/pro/Login2.0/shared/Header.js +81 -0
  158. package/lib/pro/Login2.0/shared/OAuthButtons.d.ts +11 -0
  159. package/lib/pro/Login2.0/shared/OAuthButtons.js +78 -0
  160. package/lib/pro/Login2.0/shared/registerFlow.d.ts +116 -0
  161. package/lib/pro/Login2.0/shared/registerFlow.js +235 -0
  162. package/lib/pro/Login2.0/shared/types.d.ts +232 -0
  163. package/lib/pro/Login2.0/shared/types.js +17 -0
  164. package/lib/pro/Login2.0/steps/CodeInput.d.ts +24 -0
  165. package/lib/pro/Login2.0/steps/CodeInput.js +160 -0
  166. package/lib/pro/Login2.0/steps/EmailAlreadyRegistered.d.ts +12 -0
  167. package/lib/pro/Login2.0/steps/EmailAlreadyRegistered.js +46 -0
  168. package/lib/pro/Login2.0/steps/EmailLinkAlreadyUsed.d.ts +7 -0
  169. package/lib/pro/Login2.0/steps/EmailLinkAlreadyUsed.js +51 -0
  170. package/lib/pro/Login2.0/steps/EmailLinkExpired.d.ts +9 -0
  171. package/lib/pro/Login2.0/steps/EmailLinkExpired.js +51 -0
  172. package/lib/pro/Login2.0/steps/SetPassword.d.ts +19 -0
  173. package/lib/pro/Login2.0/steps/SetPassword.js +131 -0
  174. package/lib/pro/Login2.0/steps/VerificationSuccess.d.ts +8 -0
  175. package/lib/pro/Login2.0/steps/VerificationSuccess.js +49 -0
  176. package/lib/pro/Login2.0/steps/VerifyingEmailLink.d.ts +7 -0
  177. package/lib/pro/Login2.0/steps/VerifyingEmailLink.js +41 -0
  178. package/lib/pro/Login2.0/steps/WaitEmailLink.d.ts +18 -0
  179. package/lib/pro/Login2.0/steps/WaitEmailLink.js +67 -0
  180. package/lib/pro/Login2.0/steps/index.d.ts +19 -0
  181. package/lib/pro/Login2.0/steps/index.js +60 -0
  182. package/lib/pro/Login2.0/steps/steps.less +423 -0
  183. package/lib/pro/Login2.0/types.d.ts +167 -0
  184. package/lib/pro/Login2.0/types.js +17 -0
  185. package/lowcode/authmodal/meta.ts +395 -0
  186. package/lowcode/login2/CONFIG.md +447 -0
  187. package/lowcode/login2/TEST_CONFIG.md +324 -0
  188. package/lowcode/login2/VERIFICATION_METHODS.md +364 -0
  189. package/lowcode/login2/meta.ts +560 -0
  190. package/lowcode/login2/snippets.ts +124 -0
  191. package/lowcode/register2/meta.ts +562 -0
  192. package/lowcode/register2/snippets.ts +257 -0
  193. package/package.json +5 -5
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { UIConfig } from './types';
3
+ interface HeaderProps {
4
+ ui?: UIConfig;
5
+ }
6
+ /**
7
+ * 共享的头部组件
8
+ * 包含 Logo、标题、副标题、描述
9
+ */
10
+ declare const Header: React.FC<HeaderProps>;
11
+ export default Header;
@@ -0,0 +1,81 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/pro/Login2.0/shared/Header.tsx
30
+ var Header_exports = {};
31
+ __export(Header_exports, {
32
+ default: () => Header_default
33
+ });
34
+ module.exports = __toCommonJS(Header_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_classnames = __toESM(require("classnames"));
37
+ var Header = ({ ui }) => {
38
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
39
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-header" }, ((_a = ui == null ? void 0 : ui.logo) == null ? void 0 : _a.show) && ((_b = ui == null ? void 0 : ui.logo) == null ? void 0 : _b.url) || ((_c = ui == null ? void 0 : ui.title) == null ? void 0 : _c.show) ? /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-header-top" }, ((_d = ui == null ? void 0 : ui.logo) == null ? void 0 : _d.show) && ((_e = ui == null ? void 0 : ui.logo) == null ? void 0 : _e.url) && /* @__PURE__ */ import_react.default.createElement(
40
+ "div",
41
+ {
42
+ className: (0, import_classnames.default)(
43
+ "login2-logo",
44
+ ui.logo.position || "center"
45
+ )
46
+ },
47
+ /* @__PURE__ */ import_react.default.createElement(
48
+ "img",
49
+ {
50
+ src: ui.logo.url,
51
+ alt: "logo",
52
+ style: {
53
+ width: ((_f = ui.logo.size) == null ? void 0 : _f.width) || 48,
54
+ height: ((_g = ui.logo.size) == null ? void 0 : _g.height) || 48
55
+ }
56
+ }
57
+ )
58
+ ), ((_h = ui == null ? void 0 : ui.title) == null ? void 0 : _h.show) && /* @__PURE__ */ import_react.default.createElement(
59
+ "div",
60
+ {
61
+ className: "login2-title",
62
+ style: { textAlign: ui.title.align || "center" }
63
+ },
64
+ ui.title.text || "Welcome"
65
+ )) : null, ((_i = ui == null ? void 0 : ui.subtitle) == null ? void 0 : _i.show) || ((_j = ui == null ? void 0 : ui.desc) == null ? void 0 : _j.show) ? /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-header-bottom" }, ((_k = ui == null ? void 0 : ui.subtitle) == null ? void 0 : _k.show) && /* @__PURE__ */ import_react.default.createElement(
66
+ "p",
67
+ {
68
+ className: "login2-subtitle",
69
+ style: { textAlign: ui.subtitle.align || "center" }
70
+ },
71
+ ui.subtitle.text || "Please login to continue"
72
+ ), ((_l = ui == null ? void 0 : ui.desc) == null ? void 0 : _l.show) && /* @__PURE__ */ import_react.default.createElement(
73
+ "p",
74
+ {
75
+ className: "login2-desc",
76
+ style: { textAlign: ui.desc.align || "center" }
77
+ },
78
+ ui.desc.text || "Welcome back! Please enter your details."
79
+ )) : null);
80
+ };
81
+ var Header_default = Header;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { OAuthConfig } from './types';
3
+ interface OAuthButtonsProps {
4
+ oauth?: OAuthConfig;
5
+ onOAuthLogin?: (provider: 'google' | 'facebook' | 'apple') => Promise<void> | void;
6
+ }
7
+ /**
8
+ * 共享的三方登录按钮组件
9
+ */
10
+ declare const OAuthButtons: React.FC<OAuthButtonsProps>;
11
+ export default OAuthButtons;
@@ -0,0 +1,78 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/pro/Login2.0/shared/OAuthButtons.tsx
30
+ var OAuthButtons_exports = {};
31
+ __export(OAuthButtons_exports, {
32
+ default: () => OAuthButtons_default
33
+ });
34
+ module.exports = __toCommonJS(OAuthButtons_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_materials = require("@pisell/materials");
37
+ var import_icons = require("@ant-design/icons");
38
+ var OAuthButtons = ({ oauth, onOAuthLogin }) => {
39
+ var _a, _b, _c;
40
+ const oauthMethods = [];
41
+ if ((_a = oauth == null ? void 0 : oauth.google) == null ? void 0 : _a.enabled) {
42
+ oauthMethods.push({
43
+ key: "google",
44
+ icon: /* @__PURE__ */ import_react.default.createElement(import_icons.GoogleOutlined, null),
45
+ text: "Continue with Google"
46
+ });
47
+ }
48
+ if ((_b = oauth == null ? void 0 : oauth.facebook) == null ? void 0 : _b.enabled) {
49
+ oauthMethods.push({
50
+ key: "facebook",
51
+ icon: /* @__PURE__ */ import_react.default.createElement(import_icons.FacebookOutlined, null),
52
+ text: "Continue with Facebook"
53
+ });
54
+ }
55
+ if ((_c = oauth == null ? void 0 : oauth.apple) == null ? void 0 : _c.enabled) {
56
+ oauthMethods.push({
57
+ key: "apple",
58
+ icon: /* @__PURE__ */ import_react.default.createElement(import_icons.AppleOutlined, null),
59
+ text: "Continue with Apple"
60
+ });
61
+ }
62
+ if (oauthMethods.length === 0) {
63
+ return null;
64
+ }
65
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "oauth-section" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "divider" }, /* @__PURE__ */ import_react.default.createElement("span", null, "OR")), /* @__PURE__ */ import_react.default.createElement(import_materials.Space, { direction: "vertical", size: 12, style: { width: "100%" } }, oauthMethods.map((method) => /* @__PURE__ */ import_react.default.createElement(
66
+ import_materials.Button,
67
+ {
68
+ key: method.key,
69
+ size: "large",
70
+ block: true,
71
+ icon: method.icon,
72
+ onClick: () => onOAuthLogin == null ? void 0 : onOAuthLogin(method.key),
73
+ className: `oauth-button ${method.key}`
74
+ },
75
+ method.text
76
+ ))));
77
+ };
78
+ var OAuthButtons_default = OAuthButtons;
@@ -0,0 +1,116 @@
1
+ /**
2
+ * 注册流程配置和状态管理
3
+ * 支持多种验证方式的不同步骤流程
4
+ */
5
+ /** 注册步骤类型 */
6
+ export declare enum RegisterStep {
7
+ /** 初始表单 - 输入账号密码 */
8
+ INITIAL_FORM = "INITIAL_FORM",
9
+ /** 等待邮件链接验证 */
10
+ WAIT_EMAIL_LINK = "WAIT_EMAIL_LINK",
11
+ /** 输入验证码 */
12
+ INPUT_VERIFICATION_CODE = "INPUT_VERIFICATION_CODE",
13
+ /** 验证成功提示 */
14
+ VERIFICATION_SUCCESS = "VERIFICATION_SUCCESS",
15
+ /** 设置密码 */
16
+ SET_PASSWORD = "SET_PASSWORD",
17
+ /** 邮箱已注册错误 */
18
+ EMAIL_ALREADY_REGISTERED = "EMAIL_ALREADY_REGISTERED",
19
+ /** 注册完成 */
20
+ COMPLETE = "COMPLETE"
21
+ }
22
+ /** 验证方式类型 */
23
+ export declare enum VerificationMethod {
24
+ /** 邮件链接验证 */
25
+ EMAIL_LINK = "EMAIL_LINK",
26
+ /** 邮箱验证码验证 */
27
+ EMAIL_CODE = "EMAIL_CODE",
28
+ /** 手机验证码验证 */
29
+ PHONE_CODE = "PHONE_CODE",
30
+ /** 密码验证(无需验证码) */
31
+ PASSWORD_ONLY = "PASSWORD_ONLY"
32
+ }
33
+ /** 注册流程配置 */
34
+ export interface RegisterFlowConfig {
35
+ /** 验证方式 */
36
+ verificationMethod: VerificationMethod;
37
+ /** 是否需要密码(某些流程可能在验证后才设置密码) */
38
+ requirePasswordAtStart?: boolean;
39
+ /** 自动跳转设置(某些步骤后自动跳转到下一步) */
40
+ autoTransition?: {
41
+ [key in RegisterStep]?: {
42
+ delay: number;
43
+ nextStep: RegisterStep;
44
+ };
45
+ };
46
+ }
47
+ /** 注册流程步骤定义 */
48
+ export interface RegisterStepDefinition {
49
+ /** 步骤标识 */
50
+ step: RegisterStep;
51
+ /** 步骤显示的组件类型 */
52
+ component: 'form' | 'waiting' | 'error' | 'success' | 'code-input' | 'password-set';
53
+ /** 步骤配置 */
54
+ config?: {
55
+ /** 是否显示返回按钮 */
56
+ showBack?: boolean;
57
+ /** 是否显示关闭按钮 */
58
+ showClose?: boolean;
59
+ /** 是否可以编辑账号 */
60
+ canEditAccount?: boolean;
61
+ /** 是否显示重发按钮 */
62
+ showResend?: boolean;
63
+ };
64
+ }
65
+ /** 注册流程数据 */
66
+ export interface RegisterFlowData {
67
+ /** 当前步骤 */
68
+ currentStep: RegisterStep;
69
+ /** 账号(邮箱或手机号) */
70
+ account: string;
71
+ /** 账号类型 */
72
+ accountType: 'email' | 'phone';
73
+ /** 密码(如果在第一步就输入了) */
74
+ password?: string;
75
+ /** 验证码 */
76
+ verificationCode?: string;
77
+ /** 邮件链接验证码 */
78
+ emailLinkCode?: string;
79
+ /** 验证方式 */
80
+ verificationMethod: VerificationMethod;
81
+ /** 错误信息 */
82
+ error?: {
83
+ code: string;
84
+ message: string;
85
+ };
86
+ /** 额外数据 */
87
+ extraData?: Record<string, any>;
88
+ }
89
+ /** 预定义流程配置 */
90
+ export declare const REGISTER_FLOW_CONFIGS: Record<VerificationMethod, RegisterFlowConfig>;
91
+ /** 步骤流转映射 */
92
+ export declare const STEP_TRANSITIONS: Record<VerificationMethod, Record<RegisterStep, RegisterStep[]>>;
93
+ /** 步骤定义映射 */
94
+ export declare const STEP_DEFINITIONS: Record<RegisterStep, RegisterStepDefinition>;
95
+ /**
96
+ * 验证步骤流转是否合法
97
+ */
98
+ export declare function isValidTransition(verificationMethod: VerificationMethod, fromStep: RegisterStep, toStep: RegisterStep): boolean;
99
+ /**
100
+ * 获取步骤配置
101
+ */
102
+ export declare function getStepDefinition(step: RegisterStep): RegisterStepDefinition;
103
+ /**
104
+ * 获取流程配置
105
+ */
106
+ export declare function getFlowConfig(verificationMethod: VerificationMethod): RegisterFlowConfig;
107
+ /**
108
+ * 根据认证配置决定使用哪种验证方式
109
+ */
110
+ export declare function determineVerificationMethod(accountType: 'email' | 'phone', emailConfig?: {
111
+ enable_email?: boolean;
112
+ require_email_verification?: boolean;
113
+ }, phoneConfig?: {
114
+ enable_phone_number?: boolean;
115
+ require_phone_verification?: boolean;
116
+ }): VerificationMethod;
@@ -0,0 +1,235 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/pro/Login2.0/shared/registerFlow.ts
20
+ var registerFlow_exports = {};
21
+ __export(registerFlow_exports, {
22
+ REGISTER_FLOW_CONFIGS: () => REGISTER_FLOW_CONFIGS,
23
+ RegisterStep: () => RegisterStep,
24
+ STEP_DEFINITIONS: () => STEP_DEFINITIONS,
25
+ STEP_TRANSITIONS: () => STEP_TRANSITIONS,
26
+ VerificationMethod: () => VerificationMethod,
27
+ determineVerificationMethod: () => determineVerificationMethod,
28
+ getFlowConfig: () => getFlowConfig,
29
+ getStepDefinition: () => getStepDefinition,
30
+ isValidTransition: () => isValidTransition
31
+ });
32
+ module.exports = __toCommonJS(registerFlow_exports);
33
+ var RegisterStep = /* @__PURE__ */ ((RegisterStep2) => {
34
+ RegisterStep2["INITIAL_FORM"] = "INITIAL_FORM";
35
+ RegisterStep2["WAIT_EMAIL_LINK"] = "WAIT_EMAIL_LINK";
36
+ RegisterStep2["INPUT_VERIFICATION_CODE"] = "INPUT_VERIFICATION_CODE";
37
+ RegisterStep2["VERIFICATION_SUCCESS"] = "VERIFICATION_SUCCESS";
38
+ RegisterStep2["SET_PASSWORD"] = "SET_PASSWORD";
39
+ RegisterStep2["EMAIL_ALREADY_REGISTERED"] = "EMAIL_ALREADY_REGISTERED";
40
+ RegisterStep2["COMPLETE"] = "COMPLETE";
41
+ return RegisterStep2;
42
+ })(RegisterStep || {});
43
+ var VerificationMethod = /* @__PURE__ */ ((VerificationMethod2) => {
44
+ VerificationMethod2["EMAIL_LINK"] = "EMAIL_LINK";
45
+ VerificationMethod2["EMAIL_CODE"] = "EMAIL_CODE";
46
+ VerificationMethod2["PHONE_CODE"] = "PHONE_CODE";
47
+ VerificationMethod2["PASSWORD_ONLY"] = "PASSWORD_ONLY";
48
+ return VerificationMethod2;
49
+ })(VerificationMethod || {});
50
+ var REGISTER_FLOW_CONFIGS = {
51
+ ["EMAIL_LINK" /* EMAIL_LINK */]: {
52
+ verificationMethod: "EMAIL_LINK" /* EMAIL_LINK */,
53
+ requirePasswordAtStart: true
54
+ },
55
+ ["EMAIL_CODE" /* EMAIL_CODE */]: {
56
+ verificationMethod: "EMAIL_CODE" /* EMAIL_CODE */,
57
+ requirePasswordAtStart: false,
58
+ autoTransition: {
59
+ ["VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */]: {
60
+ delay: 1500,
61
+ nextStep: "SET_PASSWORD" /* SET_PASSWORD */
62
+ }
63
+ }
64
+ },
65
+ ["PHONE_CODE" /* PHONE_CODE */]: {
66
+ verificationMethod: "PHONE_CODE" /* PHONE_CODE */,
67
+ requirePasswordAtStart: false,
68
+ autoTransition: {
69
+ ["VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */]: {
70
+ delay: 1500,
71
+ nextStep: "SET_PASSWORD" /* SET_PASSWORD */
72
+ }
73
+ }
74
+ },
75
+ ["PASSWORD_ONLY" /* PASSWORD_ONLY */]: {
76
+ verificationMethod: "PASSWORD_ONLY" /* PASSWORD_ONLY */,
77
+ requirePasswordAtStart: true
78
+ }
79
+ };
80
+ var STEP_TRANSITIONS = {
81
+ // 邮件链接验证流程
82
+ ["EMAIL_LINK" /* EMAIL_LINK */]: {
83
+ ["INITIAL_FORM" /* INITIAL_FORM */]: ["WAIT_EMAIL_LINK" /* WAIT_EMAIL_LINK */, "EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */],
84
+ ["WAIT_EMAIL_LINK" /* WAIT_EMAIL_LINK */]: ["COMPLETE" /* COMPLETE */, "INITIAL_FORM" /* INITIAL_FORM */],
85
+ ["EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */]: ["INITIAL_FORM" /* INITIAL_FORM */],
86
+ ["INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */]: [],
87
+ ["VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */]: [],
88
+ ["SET_PASSWORD" /* SET_PASSWORD */]: [],
89
+ ["COMPLETE" /* COMPLETE */]: []
90
+ },
91
+ // 邮箱验证码验证流程
92
+ ["EMAIL_CODE" /* EMAIL_CODE */]: {
93
+ ["INITIAL_FORM" /* INITIAL_FORM */]: ["INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */, "EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */],
94
+ ["INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */]: [
95
+ "VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */,
96
+ "INITIAL_FORM" /* INITIAL_FORM */
97
+ ],
98
+ ["VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */]: ["SET_PASSWORD" /* SET_PASSWORD */],
99
+ ["SET_PASSWORD" /* SET_PASSWORD */]: ["COMPLETE" /* COMPLETE */],
100
+ ["EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */]: ["INITIAL_FORM" /* INITIAL_FORM */],
101
+ ["WAIT_EMAIL_LINK" /* WAIT_EMAIL_LINK */]: [],
102
+ ["COMPLETE" /* COMPLETE */]: []
103
+ },
104
+ // 手机验证码验证流程
105
+ ["PHONE_CODE" /* PHONE_CODE */]: {
106
+ ["INITIAL_FORM" /* INITIAL_FORM */]: ["INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */, "EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */],
107
+ ["INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */]: [
108
+ "VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */,
109
+ "INITIAL_FORM" /* INITIAL_FORM */
110
+ ],
111
+ ["VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */]: ["SET_PASSWORD" /* SET_PASSWORD */],
112
+ ["SET_PASSWORD" /* SET_PASSWORD */]: ["COMPLETE" /* COMPLETE */],
113
+ ["EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */]: ["INITIAL_FORM" /* INITIAL_FORM */],
114
+ ["WAIT_EMAIL_LINK" /* WAIT_EMAIL_LINK */]: [],
115
+ ["COMPLETE" /* COMPLETE */]: []
116
+ },
117
+ // 仅密码验证流程(无验证码)
118
+ ["PASSWORD_ONLY" /* PASSWORD_ONLY */]: {
119
+ ["INITIAL_FORM" /* INITIAL_FORM */]: ["COMPLETE" /* COMPLETE */, "EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */],
120
+ ["EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */]: ["INITIAL_FORM" /* INITIAL_FORM */],
121
+ ["INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */]: [],
122
+ ["VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */]: [],
123
+ ["SET_PASSWORD" /* SET_PASSWORD */]: [],
124
+ ["WAIT_EMAIL_LINK" /* WAIT_EMAIL_LINK */]: [],
125
+ ["COMPLETE" /* COMPLETE */]: []
126
+ }
127
+ };
128
+ var STEP_DEFINITIONS = {
129
+ ["INITIAL_FORM" /* INITIAL_FORM */]: {
130
+ step: "INITIAL_FORM" /* INITIAL_FORM */,
131
+ component: "form",
132
+ config: {
133
+ showBack: true,
134
+ showClose: true,
135
+ canEditAccount: true,
136
+ showResend: false
137
+ }
138
+ },
139
+ ["WAIT_EMAIL_LINK" /* WAIT_EMAIL_LINK */]: {
140
+ step: "WAIT_EMAIL_LINK" /* WAIT_EMAIL_LINK */,
141
+ component: "waiting",
142
+ config: {
143
+ showBack: true,
144
+ showClose: true,
145
+ canEditAccount: true,
146
+ showResend: true
147
+ }
148
+ },
149
+ ["INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */]: {
150
+ step: "INPUT_VERIFICATION_CODE" /* INPUT_VERIFICATION_CODE */,
151
+ component: "code-input",
152
+ config: {
153
+ showBack: true,
154
+ showClose: true,
155
+ canEditAccount: false,
156
+ showResend: true
157
+ }
158
+ },
159
+ ["VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */]: {
160
+ step: "VERIFICATION_SUCCESS" /* VERIFICATION_SUCCESS */,
161
+ component: "success",
162
+ config: {
163
+ showBack: false,
164
+ showClose: false,
165
+ canEditAccount: false,
166
+ showResend: false
167
+ }
168
+ },
169
+ ["SET_PASSWORD" /* SET_PASSWORD */]: {
170
+ step: "SET_PASSWORD" /* SET_PASSWORD */,
171
+ component: "password-set",
172
+ config: {
173
+ showBack: true,
174
+ showClose: true,
175
+ canEditAccount: false,
176
+ showResend: false
177
+ }
178
+ },
179
+ ["EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */]: {
180
+ step: "EMAIL_ALREADY_REGISTERED" /* EMAIL_ALREADY_REGISTERED */,
181
+ component: "error",
182
+ config: {
183
+ showBack: true,
184
+ showClose: true,
185
+ canEditAccount: true,
186
+ showResend: false
187
+ }
188
+ },
189
+ ["COMPLETE" /* COMPLETE */]: {
190
+ step: "COMPLETE" /* COMPLETE */,
191
+ component: "success",
192
+ config: {
193
+ showBack: false,
194
+ showClose: false,
195
+ canEditAccount: false,
196
+ showResend: false
197
+ }
198
+ }
199
+ };
200
+ function isValidTransition(verificationMethod, fromStep, toStep) {
201
+ var _a;
202
+ const validNextSteps = ((_a = STEP_TRANSITIONS[verificationMethod]) == null ? void 0 : _a[fromStep]) || [];
203
+ return validNextSteps.includes(toStep);
204
+ }
205
+ function getStepDefinition(step) {
206
+ return STEP_DEFINITIONS[step];
207
+ }
208
+ function getFlowConfig(verificationMethod) {
209
+ return REGISTER_FLOW_CONFIGS[verificationMethod];
210
+ }
211
+ function determineVerificationMethod(accountType, emailConfig, phoneConfig) {
212
+ if (accountType === "email") {
213
+ if ((emailConfig == null ? void 0 : emailConfig.require_email_verification) !== false) {
214
+ return "EMAIL_CODE" /* EMAIL_CODE */;
215
+ }
216
+ return "PASSWORD_ONLY" /* PASSWORD_ONLY */;
217
+ } else {
218
+ if ((phoneConfig == null ? void 0 : phoneConfig.require_phone_verification) !== false) {
219
+ return "PHONE_CODE" /* PHONE_CODE */;
220
+ }
221
+ return "PASSWORD_ONLY" /* PASSWORD_ONLY */;
222
+ }
223
+ }
224
+ // Annotate the CommonJS export names for ESM import in node:
225
+ 0 && (module.exports = {
226
+ REGISTER_FLOW_CONFIGS,
227
+ RegisterStep,
228
+ STEP_DEFINITIONS,
229
+ STEP_TRANSITIONS,
230
+ VerificationMethod,
231
+ determineVerificationMethod,
232
+ getFlowConfig,
233
+ getStepDefinition,
234
+ isValidTransition
235
+ });