@pisell/private-materials 6.6.1 → 6.7.1

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 (815) 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 +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +23 -8
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +23 -8
  11. package/es/components/Sales/Event/Detail.js +4 -3
  12. package/es/components/appointmentBooking/components/Cart/Item/index.js +0 -1
  13. package/es/components/appointmentBooking/components/Services/index.js +22 -8
  14. package/es/components/appointmentBooking/hooks.js +5 -0
  15. package/es/components/authentication/admin/AuthMethods/AuthMethods.less +136 -0
  16. package/es/components/authentication/admin/AuthMethods/SettingList.d.ts +5 -0
  17. package/es/components/authentication/admin/AuthMethods/SettingList.js +62 -0
  18. package/es/components/authentication/admin/AuthMethods/SettingList.less +85 -0
  19. package/es/components/authentication/admin/AuthMethods/SettingsDrawer.d.ts +22 -0
  20. package/es/components/authentication/admin/AuthMethods/SettingsDrawer.js +121 -0
  21. package/es/components/authentication/admin/AuthMethods/SettingsDrawer.less +163 -0
  22. package/es/components/authentication/admin/AuthMethods/components/DefaultSettingsContent.d.ts +11 -0
  23. package/es/components/authentication/admin/AuthMethods/components/DefaultSettingsContent.js +15 -0
  24. package/es/components/authentication/admin/AuthMethods/components/EmailSettingsContent.d.ts +13 -0
  25. package/es/components/authentication/admin/AuthMethods/components/EmailSettingsContent.js +152 -0
  26. package/es/components/authentication/admin/AuthMethods/components/LoginMethodsList.d.ts +13 -0
  27. package/es/components/authentication/admin/AuthMethods/components/LoginMethodsList.js +114 -0
  28. package/es/components/authentication/admin/AuthMethods/components/PasswordRulesSettingsContent.d.ts +14 -0
  29. package/es/components/authentication/admin/AuthMethods/components/PasswordRulesSettingsContent.js +170 -0
  30. package/es/components/authentication/admin/AuthMethods/components/PhoneSettingsContent.d.ts +13 -0
  31. package/es/components/authentication/admin/AuthMethods/components/PhoneSettingsContent.js +116 -0
  32. package/es/components/authentication/admin/AuthMethods/components/index.d.ts +10 -0
  33. package/es/components/authentication/admin/AuthMethods/components/index.js +5 -0
  34. package/es/components/authentication/admin/AuthMethods/constants.d.ts +22 -0
  35. package/es/components/authentication/admin/AuthMethods/constants.js +121 -0
  36. package/es/components/authentication/admin/AuthMethods/index.d.ts +8 -0
  37. package/es/components/authentication/admin/AuthMethods/index.js +233 -0
  38. package/es/components/authentication/admin/AuthMethods/locales.d.ts +249 -0
  39. package/es/components/authentication/admin/AuthMethods/locales.js +290 -0
  40. package/es/components/authentication/admin/AuthMethods/types.d.ts +76 -0
  41. package/es/components/authentication/admin/AuthMethods/types.js +23 -0
  42. package/es/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/AuthenticationMethods.less +231 -0
  43. package/es/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/index.d.ts +6 -0
  44. package/es/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/index.js +447 -0
  45. package/es/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/locales.d.ts +84 -0
  46. package/es/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/locales.js +107 -0
  47. package/es/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/types.d.ts +41 -0
  48. package/es/components/authentication/admin/ChannelAuthSetting/ChannelAuthSetting.less +111 -0
  49. package/es/components/authentication/admin/ChannelAuthSetting/CollectInfo/CollectInfo.less +259 -0
  50. package/es/components/authentication/admin/ChannelAuthSetting/CollectInfo/index.d.ts +6 -0
  51. package/es/components/authentication/admin/ChannelAuthSetting/CollectInfo/index.js +530 -0
  52. package/es/components/authentication/admin/ChannelAuthSetting/CollectInfo/locales.d.ts +72 -0
  53. package/es/components/authentication/admin/ChannelAuthSetting/CollectInfo/locales.js +86 -0
  54. package/es/components/authentication/admin/ChannelAuthSetting/CollectInfo/types.d.ts +33 -0
  55. package/es/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.d.ts +6 -0
  56. package/es/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.js +460 -0
  57. package/es/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.less +111 -0
  58. package/es/components/authentication/admin/ChannelAuthSetting/PageSetting/PageSetting.less +105 -0
  59. package/es/components/authentication/admin/ChannelAuthSetting/PageSetting/index.d.ts +8 -0
  60. package/es/{pro/multiDayTimeSelect/MultiDayTimeSelect.js → components/authentication/admin/ChannelAuthSetting/PageSetting/index.js} +149 -321
  61. package/es/components/authentication/admin/ChannelAuthSetting/PageSetting/locales.d.ts +27 -0
  62. package/es/components/authentication/admin/ChannelAuthSetting/PageSetting/locales.js +32 -0
  63. package/es/components/authentication/admin/ChannelAuthSetting/PageSetting/types.d.ts +25 -0
  64. package/es/components/authentication/admin/ChannelAuthSetting/PageSetting/types.js +1 -0
  65. package/es/components/authentication/admin/ChannelAuthSetting/PageSettingItem/PageSettingItem.less +272 -0
  66. package/es/components/authentication/admin/ChannelAuthSetting/PageSettingItem/index.d.ts +8 -0
  67. package/es/components/authentication/admin/ChannelAuthSetting/PageSettingItem/index.js +214 -0
  68. package/es/components/authentication/admin/ChannelAuthSetting/PageSettingItem/locales.d.ts +66 -0
  69. package/es/components/authentication/admin/ChannelAuthSetting/PageSettingItem/locales.js +71 -0
  70. package/es/components/authentication/admin/ChannelAuthSetting/PageSettingItem/types.d.ts +26 -0
  71. package/es/components/authentication/admin/ChannelAuthSetting/PageSettingItem/types.js +1 -0
  72. package/es/components/authentication/admin/ChannelAuthSetting/SaaSManagermentAuth/index.d.ts +6 -0
  73. package/es/components/authentication/admin/ChannelAuthSetting/SaaSManagermentAuth/index.js +287 -0
  74. package/es/components/authentication/admin/ChannelAuthSetting/SaaSManagermentAuth/index.less +111 -0
  75. package/es/components/authentication/admin/ChannelAuthSetting/index.d.ts +6 -0
  76. package/es/components/authentication/admin/ChannelAuthSetting/index.js +228 -0
  77. package/es/components/authentication/admin/ChannelAuthSetting/locales.d.ts +39 -0
  78. package/es/components/authentication/admin/ChannelAuthSetting/locales.js +50 -0
  79. package/es/components/authentication/admin/ChannelAuthSetting/types.d.ts +36 -0
  80. package/es/components/authentication/admin/ChannelAuthSetting/types.js +1 -0
  81. package/es/components/authentication/admin/CustomerAuth/CustomerAuth.less +104 -0
  82. package/es/components/authentication/admin/CustomerAuth/index.d.ts +6 -0
  83. package/es/components/authentication/admin/CustomerAuth/index.js +711 -0
  84. package/es/components/authentication/admin/CustomerAuth/locales.d.ts +66 -0
  85. package/es/components/authentication/admin/CustomerAuth/locales.js +86 -0
  86. package/es/components/authentication/admin/CustomerAuth/types.d.ts +16 -0
  87. package/es/components/authentication/admin/CustomerAuth/types.js +1 -0
  88. package/es/components/authentication/admin/CustomerOAuthConfig/CustomerOAuthConfig.less +164 -0
  89. package/es/components/authentication/admin/CustomerOAuthConfig/index.d.ts +6 -0
  90. package/es/components/authentication/admin/CustomerOAuthConfig/index.js +545 -0
  91. package/es/components/authentication/admin/CustomerOAuthConfig/locales.d.ts +108 -0
  92. package/es/components/authentication/admin/CustomerOAuthConfig/locales.js +137 -0
  93. package/es/components/authentication/admin/CustomerOAuthConfig/types.d.ts +22 -0
  94. package/es/components/authentication/admin/CustomerOAuthConfig/types.js +1 -0
  95. package/es/components/authentication/admin/DeviceAuth/DeviceAuth.less +104 -0
  96. package/es/components/authentication/admin/DeviceAuth/index.d.ts +6 -0
  97. package/es/components/authentication/admin/DeviceAuth/index.js +366 -0
  98. package/es/components/authentication/admin/DeviceAuth/locales.d.ts +57 -0
  99. package/es/components/authentication/admin/DeviceAuth/locales.js +74 -0
  100. package/es/components/authentication/admin/DeviceAuth/types.d.ts +16 -0
  101. package/es/components/authentication/admin/DeviceAuth/types.js +1 -0
  102. package/es/components/authentication/admin/OAuthConfig/OAuthConfig.less +165 -0
  103. package/es/components/authentication/admin/OAuthConfig/index.d.ts +6 -0
  104. package/es/components/authentication/admin/OAuthConfig/index.js +347 -0
  105. package/es/components/authentication/admin/OAuthConfig/locales.d.ts +90 -0
  106. package/es/components/authentication/admin/OAuthConfig/locales.js +116 -0
  107. package/es/components/authentication/admin/OAuthConfig/types.d.ts +22 -0
  108. package/es/components/authentication/admin/OAuthConfig/types.js +1 -0
  109. package/es/components/authentication/admin/OrgAdminAuth/OrgAdminAuth.less +104 -0
  110. package/es/components/authentication/admin/OrgAdminAuth/index.d.ts +6 -0
  111. package/es/components/authentication/admin/OrgAdminAuth/index.js +543 -0
  112. package/es/components/authentication/admin/OrgAdminAuth/locales.d.ts +54 -0
  113. package/es/components/authentication/admin/OrgAdminAuth/locales.js +74 -0
  114. package/es/components/authentication/admin/OrgAdminAuth/types.d.ts +16 -0
  115. package/es/components/authentication/admin/OrgAdminAuth/types.js +1 -0
  116. package/es/components/authentication/admin/POSOperatorAuth/POSOperatorAuth.less +104 -0
  117. package/es/components/authentication/admin/POSOperatorAuth/index.d.ts +6 -0
  118. package/es/components/authentication/admin/POSOperatorAuth/index.js +374 -0
  119. package/es/components/authentication/admin/POSOperatorAuth/locales.d.ts +48 -0
  120. package/es/components/authentication/admin/POSOperatorAuth/locales.js +65 -0
  121. package/es/components/authentication/admin/POSOperatorAuth/types.d.ts +16 -0
  122. package/es/components/authentication/admin/POSOperatorAuth/types.js +1 -0
  123. package/es/components/authentication/admin/SaaSAdminAuth/SaaSAdminAuth.less +104 -0
  124. package/es/components/authentication/admin/SaaSAdminAuth/index.d.ts +6 -0
  125. package/es/components/authentication/admin/SaaSAdminAuth/index.js +625 -0
  126. package/es/components/authentication/admin/SaaSAdminAuth/locales.d.ts +54 -0
  127. package/es/components/authentication/admin/SaaSAdminAuth/locales.js +74 -0
  128. package/es/components/authentication/admin/SaaSAdminAuth/types.d.ts +16 -0
  129. package/es/components/authentication/admin/SaaSAdminAuth/types.js +1 -0
  130. package/es/components/authentication/admin/index.d.ts +26 -0
  131. package/es/components/authentication/admin/index.js +23 -0
  132. package/es/components/booking/components/actionButtons/index.js +20 -34
  133. package/es/components/booking/components/customSelect/index.js +22 -3
  134. package/es/components/booking/components/footer/amount.js +8 -25
  135. package/es/components/booking/components/footer/index.js +32 -62
  136. package/es/components/booking/components/footer/utils.d.ts +0 -7
  137. package/es/components/booking/components/footer/utils.js +87 -101
  138. package/es/components/booking/components/voucher/index.js +9 -25
  139. package/es/components/booking/dashboard/serve.js +6 -1
  140. package/es/components/booking/forms/sendModal/useSendModal.d.ts +1 -1
  141. package/es/components/booking/forms/serve.js +12 -2
  142. package/es/components/booking/hooks/useQuotation.js +21 -69
  143. package/es/components/booking/info/client/serve.js +11 -2
  144. package/es/components/booking/info/hooks/useHolderConfig.d.ts +0 -1
  145. package/es/components/booking/info/hooks/useHolderConfig.js +2 -9
  146. package/es/components/booking/info/pet/serve.js +6 -1
  147. package/es/components/booking/info/service/Lists.d.ts +1 -1
  148. package/es/components/booking/info/service/Lists.js +4 -10
  149. package/es/components/booking/info/service/addService/utils.d.ts +1 -1
  150. package/es/components/booking/info/service/addTimeModal/serve.js +11 -1
  151. package/es/components/booking/info/service/serve.d.ts +0 -14
  152. package/es/components/booking/info/service/serve.js +18 -25
  153. package/es/components/booking/info/service2/Group/utils.js +0 -2
  154. package/es/components/booking/info/service2/utils.d.ts +33 -1
  155. package/es/components/booking/info/service2/utils.js +56 -92
  156. package/es/components/booking/info/utils.js +0 -5
  157. package/es/components/booking/info2/cartClientCard/index.js +9 -49
  158. package/es/components/booking/info2/index.js +1 -1
  159. package/es/components/booking/info2/serve.js +6 -1
  160. package/es/components/booking/info2/service/addService/index.js +89 -146
  161. package/es/components/booking/info2/service/addService/utils.d.ts +1 -9
  162. package/es/components/booking/info2/service/addService/utils.js +14 -83
  163. package/es/components/booking/info2/service/editService/index.js +57 -313
  164. package/es/components/booking/info2/utilsByBooking.js +14 -19
  165. package/es/components/booking/locales.d.ts +0 -30
  166. package/es/components/booking/locales.js +3 -39
  167. package/es/components/booking/utils.d.ts +7 -16
  168. package/es/components/booking/utils.js +37 -26
  169. package/es/components/checkout/PaymentModal.js +30 -61
  170. package/es/components/checkout/components/CashPaymentModule/index.js +7 -1
  171. package/es/components/checkout/components/ScrollableList/index.js +1 -0
  172. package/es/components/checkout/hooks/useWalletPass.d.ts +1 -1
  173. package/es/components/checkout/locales.d.ts +0 -3
  174. package/es/components/checkout/locales.js +0 -3
  175. package/es/components/eftposPay/amount.d.ts +1 -1
  176. package/es/components/eftposPay/device.d.ts +1 -1
  177. package/es/components/eftposPay/hooks.d.ts +2 -2
  178. package/es/components/eftposPay/store/index.d.ts +4 -4
  179. package/es/components/eftposPay/tyro/index.js +0 -12
  180. package/es/components/index.d.ts +3 -2
  181. package/es/components/index.js +3 -2
  182. package/es/components/list/List.js +0 -3
  183. package/es/components/pay/toB/components/MX51/index.js +44 -14
  184. package/es/components/pay/toB/types/index.d.ts +12 -0
  185. package/es/components/pay/toB/types/index.js +4 -0
  186. package/es/components/pay/toC/PaymentMethods/ApplePay/index.js +68 -35
  187. package/es/components/pay/toC/PaymentMethods/GooglePay/index.js +70 -42
  188. package/es/components/pay/toC/PaymentMethods/SuperPayAliPayH5/index.js +72 -41
  189. package/es/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.d.ts +15 -0
  190. package/es/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.js +143 -0
  191. package/es/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.less +34 -0
  192. package/es/components/pay/toC/PaymentMethods/hooks/index.d.ts +19 -0
  193. package/es/components/{ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.js → pay/toC/PaymentMethods/hooks/index.js} +98 -91
  194. package/es/components/pay/toC/index.js +26 -22
  195. package/es/components/pay/toC/locales.d.ts +9 -0
  196. package/es/components/pay/toC/locales.js +12 -3
  197. package/es/components/pay/toC/model.d.ts +1 -0
  198. package/es/components/pay/toC/serve.d.ts +5 -0
  199. package/es/components/pay/toC/serve.js +9 -1
  200. package/es/components/pisellSelectCustomerModal/RightPanel/serve.js +5 -1
  201. package/es/components/shoppingCart/components/Cart/Product.js +3 -6
  202. package/es/components/shoppingCart/type.d.ts +0 -1
  203. package/es/components/ticketBooking/components/ProductDisplayAdapter/index.less +12 -0
  204. package/es/components/ticketBooking/components/addServiceVariant/addService.d.ts +2 -0
  205. package/es/components/ticketBooking/components/addServiceVariant/addService.js +794 -419
  206. package/es/components/ticketBooking/components/addServiceVariant/index.d.ts +2 -0
  207. package/es/components/ticketBooking/components/addServiceVariant/index.js +4 -4
  208. package/es/components/ticketBooking/components/addServiceVariant/utils.js +2 -1
  209. package/es/components/ticketBooking/components/menuBar/index.js +12 -109
  210. package/es/components/ticketBooking/components/ticketBooking/index.d.ts +4 -2
  211. package/es/components/ticketBooking/components/ticketBooking/index.js +61 -32
  212. package/es/components/ticketBooking/components/timeBar/index.d.ts +1 -0
  213. package/es/components/ticketBooking/components/timeBar/index.js +4 -1
  214. package/es/components/ticketBooking/hooks/pisellos/useProducts.d.ts +4 -0
  215. package/es/components/ticketBooking/hooks/pisellos/useProducts.js +170 -122
  216. package/es/components/ticketBooking/index.d.ts +1 -0
  217. package/es/components/ticketBooking/index.js +2 -0
  218. package/es/components/ticketBooking/serve.js +119 -17
  219. package/es/components/ticketBooking/utils/index.d.ts +2 -8
  220. package/es/components/ticketBooking/utils/index.js +28 -44
  221. package/es/components/walletList/index.js +92 -56
  222. package/es/components/walletList/serve.d.ts +4 -0
  223. package/es/components/walletList/serve.js +46 -13
  224. package/es/components/walletList/types/index.d.ts +12 -12
  225. package/es/components/walletList/types/index.js +2 -2
  226. package/es/hooks/printer.d.ts +4 -0
  227. package/es/hooks/printer.js +35 -0
  228. package/es/hooks/useEngineContext.d.ts +1 -0
  229. package/es/hooks/useEngineContext.js +7 -0
  230. package/es/index.d.ts +5 -3
  231. package/es/index.js +4 -3
  232. package/es/plus/clientCard/locales.js +3 -3
  233. package/es/plus/clinetSearch/index.js +30 -28
  234. package/es/plus/clinetSearch/locales.d.ts +0 -3
  235. package/es/plus/clinetSearch/locales.js +4 -7
  236. package/es/plus/clinetSearch/types.d.ts +0 -12
  237. package/es/plus/productSelect/CategoryTabs/index.d.ts +2 -0
  238. package/es/plus/productSelect/CategoryTabs/index.js +6 -3
  239. package/es/plus/productSelect/ProductCard/SkuCard/components/Capacity/index.d.ts +1 -1
  240. package/es/plus/productSelect/ProductCard/SkuCard/components/CardMask/index.d.ts +1 -1
  241. package/es/plus/productSelect/ProductCard/SkuCard/components/CardWrapper/index.js +1 -1
  242. package/es/plus/productSelect/ProductCard/SkuCard/components/Countdown/index.d.ts +1 -1
  243. package/es/plus/productSelect/ProductCard/SkuCard/components/Duration/index.d.ts +1 -1
  244. package/es/plus/productSelect/ProductCard/SkuCard/components/MemberPrice/index.d.ts +1 -1
  245. package/es/plus/productSelect/ProductCard/SkuCard/components/Resource/index.d.ts +1 -1
  246. package/es/plus/productSelect/ProductCard/SkuCard/components/Stock/index.d.ts +1 -1
  247. package/es/plus/productSelect/ProductCard/SkuCard/components/Time/index.d.ts +1 -1
  248. package/es/plus/productSelect/ProductCard/index.d.ts +3 -1
  249. package/es/plus/productSelect/ProductCard/index.js +10 -2
  250. package/es/plus/productSelect/components/TabsStructure/TabsStructure.less +0 -11
  251. package/es/plus/productSelect/index.d.ts +3 -2
  252. package/es/plus/productSelect/index.js +33 -8
  253. package/es/plus/productSelect/index.less +4 -0
  254. package/es/plus/walletEditor/WalletEditor.d.ts +5 -0
  255. package/es/plus/walletEditor/WalletEditor.js +316 -0
  256. package/es/plus/walletEditor/WalletEditor.less +129 -0
  257. package/es/plus/walletEditor/components/ImageUpload/index.d.ts +8 -0
  258. package/es/plus/walletEditor/components/ImageUpload/index.js +223 -0
  259. package/es/plus/walletEditor/components/JsonEditor/index.d.ts +11 -0
  260. package/es/plus/walletEditor/components/JsonEditor/index.js +68 -0
  261. package/es/plus/walletEditor/components/JsonEditor/index.less +4 -0
  262. package/es/plus/walletEditor/components/ValidityPeriodSelector/index.d.ts +20 -0
  263. package/es/plus/walletEditor/components/ValidityPeriodSelector/index.js +222 -0
  264. package/es/plus/walletEditor/components/ValidityPeriodSelector/index.less +4 -0
  265. package/es/plus/walletEditor/components/relationProduct/index.d.ts +6 -0
  266. package/es/plus/walletEditor/components/relationProduct/index.js +49 -0
  267. package/es/plus/walletEditor/components/relationProduct/index.less +15 -0
  268. package/es/plus/walletEditor/components/sortableWalletPassTypes/index.d.ts +37 -0
  269. package/es/plus/walletEditor/components/sortableWalletPassTypes/index.js +193 -0
  270. package/es/plus/walletEditor/components/sortableWalletPassTypes/index.less +110 -0
  271. package/es/plus/walletEditor/index.d.ts +3 -0
  272. package/es/plus/walletEditor/index.js +3 -0
  273. package/es/plus/walletEditor/locales.d.ts +126 -0
  274. package/es/plus/walletEditor/locales.js +143 -0
  275. package/es/plus/walletEditor/types.d.ts +52 -0
  276. package/es/plus/walletEditor/types.js +1 -0
  277. package/es/plus/walletPassGallery/components/footerButton/index.d.ts +14 -0
  278. package/es/{components/booking/info2/service/editService/Holder → plus/walletPassGallery/components/footerButton}/index.js +220 -166
  279. package/es/plus/walletPassGallery/components/footerButton/index.less +93 -0
  280. package/es/plus/walletPassGallery/components/passDetail/index.d.ts +8 -0
  281. package/es/plus/walletPassGallery/components/passDetail/index.js +274 -0
  282. package/es/plus/walletPassGallery/components/passDetail/index.less +57 -0
  283. package/es/plus/walletPassGallery/components/passList/index.d.ts +11 -0
  284. package/es/plus/walletPassGallery/components/passList/index.js +115 -0
  285. package/es/plus/walletPassGallery/components/recharge/index.d.ts +11 -0
  286. package/es/plus/walletPassGallery/components/recharge/index.js +134 -0
  287. package/es/plus/walletPassGallery/components/recharge/index.less +16 -0
  288. package/es/plus/walletPassGallery/components/timelineSection/index.d.ts +8 -0
  289. package/es/plus/walletPassGallery/components/timelineSection/index.js +176 -0
  290. package/es/plus/walletPassGallery/components/timelineSection/index.less +67 -0
  291. package/es/plus/walletPassGallery/components/usageRule/index.d.ts +9 -0
  292. package/es/plus/walletPassGallery/components/usageRule/index.js +248 -0
  293. package/es/plus/walletPassGallery/components/usageRule/index.less +157 -0
  294. package/es/plus/walletPassGallery/index.d.ts +6 -0
  295. package/es/plus/walletPassGallery/index.js +602 -0
  296. package/es/plus/walletPassGallery/index.less +115 -0
  297. package/es/plus/walletPassGallery/locales.d.ts +270 -0
  298. package/es/plus/walletPassGallery/locales.js +279 -0
  299. package/es/plus/walletPassGallery/serve.d.ts +218 -0
  300. package/es/plus/walletPassGallery/serve.js +289 -0
  301. package/es/pro/Login2.0/AuthModal.d.ts +143 -0
  302. package/es/pro/Login2.0/AuthModal.js +630 -0
  303. package/es/pro/Login2.0/Login2.d.ts +61 -0
  304. package/es/pro/Login2.0/Login2.js +2236 -0
  305. package/es/pro/Login2.0/Register2.d.ts +65 -0
  306. package/es/pro/Login2.0/Register2.js +1502 -0
  307. package/es/pro/Login2.0/components/ForgotPasswordFlow.d.ts +31 -0
  308. package/es/pro/Login2.0/components/ForgotPasswordFlow.js +330 -0
  309. package/es/pro/Login2.0/components/LegalTerms.d.ts +8 -0
  310. package/es/pro/Login2.0/components/LegalTerms.js +51 -0
  311. package/es/pro/Login2.0/components/LegalTerms.less +74 -0
  312. package/es/pro/Login2.0/components/LoginCodeInput.d.ts +27 -0
  313. package/es/pro/Login2.0/components/LoginCodeInput.js +207 -0
  314. package/es/pro/Login2.0/components/OAuthButtonGroup.d.ts +22 -0
  315. package/es/pro/Login2.0/components/OAuthButtonGroup.js +55 -0
  316. package/es/pro/Login2.0/components/PhoneInput.d.ts +53 -0
  317. package/es/pro/Login2.0/components/PhoneInput.js +414 -0
  318. package/es/pro/Login2.0/components/PhoneInput.less +148 -0
  319. package/es/pro/Login2.0/components/phoneValidation.d.ts +17 -0
  320. package/es/pro/Login2.0/components/phoneValidation.js +228 -0
  321. package/es/pro/Login2.0/hooks/index.d.ts +2 -0
  322. package/es/pro/Login2.0/hooks/index.js +1 -0
  323. package/es/pro/Login2.0/hooks/usePasswordValidationRules.d.ts +24 -0
  324. package/es/pro/Login2.0/hooks/usePasswordValidationRules.js +87 -0
  325. package/es/pro/Login2.0/hooks/useRegisterFlow.d.ts +39 -0
  326. package/es/pro/Login2.0/hooks/useRegisterFlow.js +158 -0
  327. package/es/pro/Login2.0/hooks/useRegistrationMethods.d.ts +9 -0
  328. package/es/pro/Login2.0/hooks/useRegistrationMethods.js +31 -0
  329. package/es/pro/Login2.0/index.js +8 -0
  330. package/es/pro/Login2.0/index.less +1002 -0
  331. package/es/pro/Login2.0/locales.d.ts +543 -0
  332. package/es/pro/Login2.0/locales.js +622 -0
  333. package/es/pro/Login2.0/shared/Header.d.ts +11 -0
  334. package/es/pro/Login2.0/shared/Header.js +42 -0
  335. package/es/pro/Login2.0/shared/OAuthButtons.d.ts +11 -0
  336. package/es/pro/Login2.0/shared/OAuthButtons.js +59 -0
  337. package/es/pro/Login2.0/shared/registerFlow.d.ts +116 -0
  338. package/es/pro/Login2.0/shared/registerFlow.js +171 -0
  339. package/es/pro/Login2.0/shared/types.d.ts +232 -0
  340. package/es/pro/Login2.0/shared/types.js +1 -0
  341. package/es/pro/Login2.0/steps/CodeInput.d.ts +24 -0
  342. package/es/pro/Login2.0/steps/CodeInput.js +209 -0
  343. package/es/pro/Login2.0/steps/EmailAlreadyRegistered.d.ts +12 -0
  344. package/es/pro/Login2.0/steps/EmailAlreadyRegistered.js +35 -0
  345. package/es/pro/Login2.0/steps/EmailLinkAlreadyUsed.d.ts +7 -0
  346. package/es/pro/Login2.0/steps/EmailLinkAlreadyUsed.js +25 -0
  347. package/es/pro/Login2.0/steps/EmailLinkExpired.d.ts +9 -0
  348. package/es/pro/Login2.0/steps/EmailLinkExpired.js +33 -0
  349. package/es/pro/Login2.0/steps/SetPassword.d.ts +19 -0
  350. package/es/pro/Login2.0/steps/SetPassword.js +148 -0
  351. package/es/pro/Login2.0/steps/VerificationSuccess.d.ts +8 -0
  352. package/es/pro/Login2.0/steps/VerificationSuccess.js +35 -0
  353. package/es/pro/Login2.0/steps/VerifyingEmailLink.d.ts +7 -0
  354. package/es/pro/Login2.0/steps/VerifyingEmailLink.js +17 -0
  355. package/es/pro/Login2.0/steps/WaitEmailLink.d.ts +18 -0
  356. package/es/pro/Login2.0/steps/WaitEmailLink.js +54 -0
  357. package/es/pro/Login2.0/steps/index.d.ts +19 -0
  358. package/es/pro/Login2.0/steps/index.js +11 -0
  359. package/es/pro/Login2.0/steps/steps.less +423 -0
  360. package/es/pro/Login2.0/types.d.ts +167 -0
  361. package/es/pro/Login2.0/types.js +1 -0
  362. package/es/pro/comprehensiveSearch/components/searchSection/locales.js +3 -3
  363. package/es/pro/comprehensiveSearch/locales.js +1 -1
  364. package/es/pro/pisellPaymentList/example.d.ts +19 -0
  365. package/es/pro/pisellPaymentList/example.js +434 -0
  366. package/es/pro/skuDetailModal/types.d.ts +0 -1
  367. package/lib/components/Sales/Event/Detail.js +3 -2
  368. package/lib/components/appointmentBooking/components/Cart/Item/index.js +0 -1
  369. package/lib/components/appointmentBooking/components/Services/index.js +8 -3
  370. package/lib/components/appointmentBooking/hooks.js +3 -0
  371. package/lib/components/authentication/admin/AuthMethods/AuthMethods.less +136 -0
  372. package/lib/components/authentication/admin/AuthMethods/SettingList.d.ts +5 -0
  373. package/lib/components/authentication/admin/AuthMethods/SettingList.js +75 -0
  374. package/lib/components/authentication/admin/AuthMethods/SettingList.less +85 -0
  375. package/lib/components/authentication/admin/AuthMethods/SettingsDrawer.d.ts +22 -0
  376. package/lib/components/authentication/admin/AuthMethods/SettingsDrawer.js +126 -0
  377. package/lib/components/authentication/admin/AuthMethods/SettingsDrawer.less +163 -0
  378. package/lib/components/authentication/admin/AuthMethods/components/DefaultSettingsContent.d.ts +11 -0
  379. package/lib/{plus/selectHolder/components/HolderList/index.js → components/authentication/admin/AuthMethods/components/DefaultSettingsContent.js} +10 -31
  380. package/lib/components/authentication/admin/AuthMethods/components/EmailSettingsContent.d.ts +13 -0
  381. package/lib/components/authentication/admin/AuthMethods/components/EmailSettingsContent.js +108 -0
  382. package/lib/components/authentication/admin/AuthMethods/components/LoginMethodsList.d.ts +13 -0
  383. package/lib/components/authentication/admin/AuthMethods/components/LoginMethodsList.js +108 -0
  384. package/lib/components/authentication/admin/AuthMethods/components/PasswordRulesSettingsContent.d.ts +14 -0
  385. package/lib/components/authentication/admin/AuthMethods/components/PasswordRulesSettingsContent.js +93 -0
  386. package/lib/components/authentication/admin/AuthMethods/components/PhoneSettingsContent.d.ts +13 -0
  387. package/lib/components/authentication/admin/AuthMethods/components/PhoneSettingsContent.js +85 -0
  388. package/lib/components/authentication/admin/AuthMethods/components/index.d.ts +10 -0
  389. package/lib/components/authentication/admin/AuthMethods/components/index.js +51 -0
  390. package/lib/components/authentication/admin/AuthMethods/constants.d.ts +22 -0
  391. package/lib/components/authentication/admin/AuthMethods/constants.js +115 -0
  392. package/lib/components/authentication/admin/AuthMethods/index.d.ts +8 -0
  393. package/lib/components/authentication/admin/AuthMethods/index.js +196 -0
  394. package/lib/components/authentication/admin/AuthMethods/locales.d.ts +249 -0
  395. package/lib/components/authentication/admin/AuthMethods/locales.js +314 -0
  396. package/lib/components/authentication/admin/AuthMethods/types.d.ts +76 -0
  397. package/lib/components/authentication/admin/AuthMethods/types.js +53 -0
  398. package/lib/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/AuthenticationMethods.less +231 -0
  399. package/lib/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/index.d.ts +6 -0
  400. package/lib/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/index.js +311 -0
  401. package/lib/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/locales.d.ts +84 -0
  402. package/lib/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/locales.js +131 -0
  403. package/lib/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/types.d.ts +41 -0
  404. package/lib/components/authentication/admin/ChannelAuthSetting/AuthenticationMethods/types.js +17 -0
  405. package/lib/components/authentication/admin/ChannelAuthSetting/ChannelAuthSetting.less +111 -0
  406. package/lib/components/authentication/admin/ChannelAuthSetting/CollectInfo/CollectInfo.less +259 -0
  407. package/lib/components/authentication/admin/ChannelAuthSetting/CollectInfo/index.d.ts +6 -0
  408. package/lib/components/authentication/admin/ChannelAuthSetting/CollectInfo/index.js +410 -0
  409. package/lib/components/authentication/admin/ChannelAuthSetting/CollectInfo/locales.d.ts +72 -0
  410. package/lib/components/authentication/admin/ChannelAuthSetting/CollectInfo/locales.js +110 -0
  411. package/lib/components/authentication/admin/ChannelAuthSetting/CollectInfo/types.d.ts +33 -0
  412. package/lib/components/authentication/admin/ChannelAuthSetting/CollectInfo/types.js +17 -0
  413. package/lib/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.d.ts +6 -0
  414. package/lib/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.js +383 -0
  415. package/lib/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.less +111 -0
  416. package/lib/components/authentication/admin/ChannelAuthSetting/PageSetting/PageSetting.less +105 -0
  417. package/lib/components/authentication/admin/ChannelAuthSetting/PageSetting/index.d.ts +8 -0
  418. package/lib/components/authentication/admin/ChannelAuthSetting/PageSetting/index.js +148 -0
  419. package/lib/components/authentication/admin/ChannelAuthSetting/PageSetting/locales.d.ts +27 -0
  420. package/lib/components/authentication/admin/ChannelAuthSetting/PageSetting/locales.js +56 -0
  421. package/lib/components/authentication/admin/ChannelAuthSetting/PageSetting/types.d.ts +25 -0
  422. package/lib/components/authentication/admin/ChannelAuthSetting/PageSetting/types.js +17 -0
  423. package/lib/components/authentication/admin/ChannelAuthSetting/PageSettingItem/PageSettingItem.less +272 -0
  424. package/lib/components/authentication/admin/ChannelAuthSetting/PageSettingItem/index.d.ts +8 -0
  425. package/lib/components/authentication/admin/ChannelAuthSetting/PageSettingItem/index.js +206 -0
  426. package/lib/components/authentication/admin/ChannelAuthSetting/PageSettingItem/locales.d.ts +66 -0
  427. package/lib/components/authentication/admin/ChannelAuthSetting/PageSettingItem/locales.js +95 -0
  428. package/lib/components/authentication/admin/ChannelAuthSetting/PageSettingItem/types.d.ts +26 -0
  429. package/lib/components/authentication/admin/ChannelAuthSetting/PageSettingItem/types.js +17 -0
  430. package/lib/components/authentication/admin/ChannelAuthSetting/SaaSManagermentAuth/index.d.ts +6 -0
  431. package/lib/components/authentication/admin/ChannelAuthSetting/SaaSManagermentAuth/index.js +246 -0
  432. package/lib/components/authentication/admin/ChannelAuthSetting/SaaSManagermentAuth/index.less +111 -0
  433. package/lib/components/authentication/admin/ChannelAuthSetting/index.d.ts +6 -0
  434. package/lib/components/authentication/admin/ChannelAuthSetting/index.js +177 -0
  435. package/lib/components/authentication/admin/ChannelAuthSetting/locales.d.ts +39 -0
  436. package/lib/components/authentication/admin/ChannelAuthSetting/locales.js +74 -0
  437. package/lib/components/authentication/admin/ChannelAuthSetting/types.d.ts +36 -0
  438. package/lib/components/authentication/admin/ChannelAuthSetting/types.js +17 -0
  439. package/lib/components/authentication/admin/CustomerAuth/CustomerAuth.less +104 -0
  440. package/lib/components/authentication/admin/CustomerAuth/index.d.ts +6 -0
  441. package/lib/components/authentication/admin/CustomerAuth/index.js +507 -0
  442. package/lib/components/authentication/admin/CustomerAuth/locales.d.ts +66 -0
  443. package/lib/components/authentication/admin/CustomerAuth/locales.js +110 -0
  444. package/lib/components/authentication/admin/CustomerAuth/types.d.ts +16 -0
  445. package/lib/components/authentication/admin/CustomerAuth/types.js +17 -0
  446. package/lib/components/authentication/admin/CustomerOAuthConfig/CustomerOAuthConfig.less +164 -0
  447. package/lib/components/authentication/admin/CustomerOAuthConfig/index.d.ts +6 -0
  448. package/lib/components/authentication/admin/CustomerOAuthConfig/index.js +331 -0
  449. package/lib/components/authentication/admin/CustomerOAuthConfig/locales.d.ts +108 -0
  450. package/lib/components/authentication/admin/CustomerOAuthConfig/locales.js +161 -0
  451. package/lib/components/authentication/admin/CustomerOAuthConfig/types.d.ts +22 -0
  452. package/lib/components/authentication/admin/CustomerOAuthConfig/types.js +17 -0
  453. package/lib/components/authentication/admin/DeviceAuth/DeviceAuth.less +104 -0
  454. package/lib/components/authentication/admin/DeviceAuth/index.d.ts +6 -0
  455. package/lib/components/authentication/admin/DeviceAuth/index.js +254 -0
  456. package/lib/components/authentication/admin/DeviceAuth/locales.d.ts +57 -0
  457. package/lib/components/authentication/admin/DeviceAuth/locales.js +98 -0
  458. package/lib/components/authentication/admin/DeviceAuth/types.d.ts +16 -0
  459. package/lib/components/authentication/admin/DeviceAuth/types.js +17 -0
  460. package/lib/components/authentication/admin/OAuthConfig/OAuthConfig.less +165 -0
  461. package/lib/components/authentication/admin/OAuthConfig/index.d.ts +6 -0
  462. package/lib/components/authentication/admin/OAuthConfig/index.js +226 -0
  463. package/lib/components/authentication/admin/OAuthConfig/locales.d.ts +90 -0
  464. package/lib/components/authentication/admin/OAuthConfig/locales.js +140 -0
  465. package/lib/components/authentication/admin/OAuthConfig/types.d.ts +22 -0
  466. package/lib/components/authentication/admin/OAuthConfig/types.js +17 -0
  467. package/lib/components/authentication/admin/OrgAdminAuth/OrgAdminAuth.less +104 -0
  468. package/lib/components/authentication/admin/OrgAdminAuth/index.d.ts +6 -0
  469. package/lib/components/authentication/admin/OrgAdminAuth/index.js +398 -0
  470. package/lib/components/authentication/admin/OrgAdminAuth/locales.d.ts +54 -0
  471. package/lib/components/authentication/admin/OrgAdminAuth/locales.js +98 -0
  472. package/lib/components/authentication/admin/OrgAdminAuth/types.d.ts +16 -0
  473. package/lib/components/authentication/admin/OrgAdminAuth/types.js +17 -0
  474. package/lib/components/authentication/admin/POSOperatorAuth/POSOperatorAuth.less +104 -0
  475. package/lib/components/authentication/admin/POSOperatorAuth/index.d.ts +6 -0
  476. package/lib/components/authentication/admin/POSOperatorAuth/index.js +262 -0
  477. package/lib/components/authentication/admin/POSOperatorAuth/locales.d.ts +48 -0
  478. package/lib/components/authentication/admin/POSOperatorAuth/locales.js +89 -0
  479. package/lib/components/authentication/admin/POSOperatorAuth/types.d.ts +16 -0
  480. package/lib/components/authentication/admin/POSOperatorAuth/types.js +17 -0
  481. package/lib/components/authentication/admin/SaaSAdminAuth/SaaSAdminAuth.less +104 -0
  482. package/lib/components/authentication/admin/SaaSAdminAuth/index.d.ts +6 -0
  483. package/lib/components/authentication/admin/SaaSAdminAuth/index.js +481 -0
  484. package/lib/components/authentication/admin/SaaSAdminAuth/locales.d.ts +54 -0
  485. package/lib/components/authentication/admin/SaaSAdminAuth/locales.js +98 -0
  486. package/lib/components/authentication/admin/SaaSAdminAuth/types.d.ts +16 -0
  487. package/lib/components/authentication/admin/SaaSAdminAuth/types.js +17 -0
  488. package/lib/components/authentication/admin/index.d.ts +26 -0
  489. package/lib/components/authentication/admin/index.js +83 -0
  490. package/lib/components/authentication/index.d.ts +0 -0
  491. package/lib/components/authentication/index.js +0 -0
  492. package/lib/components/booking/components/actionButtons/index.js +2 -11
  493. package/lib/components/booking/components/customSelect/index.js +26 -3
  494. package/lib/components/booking/components/footer/amount.js +6 -23
  495. package/lib/components/booking/components/footer/index.js +4 -22
  496. package/lib/components/booking/components/footer/utils.d.ts +0 -7
  497. package/lib/components/booking/components/footer/utils.js +72 -79
  498. package/lib/components/booking/components/voucher/index.js +1 -10
  499. package/lib/components/booking/dashboard/serve.js +6 -1
  500. package/lib/components/booking/forms/sendModal/useSendModal.d.ts +1 -1
  501. package/lib/components/booking/forms/serve.js +12 -2
  502. package/lib/components/booking/hooks/useQuotation.js +13 -45
  503. package/lib/components/booking/info/client/serve.js +13 -2
  504. package/lib/components/booking/info/hooks/useHolderConfig.d.ts +0 -1
  505. package/lib/components/booking/info/hooks/useHolderConfig.js +3 -8
  506. package/lib/components/booking/info/pet/serve.js +6 -1
  507. package/lib/components/booking/info/service/Lists.d.ts +1 -1
  508. package/lib/components/booking/info/service/Lists.js +3 -5
  509. package/lib/components/booking/info/service/addService/utils.d.ts +1 -1
  510. package/lib/components/booking/info/service/addTimeModal/serve.js +7 -1
  511. package/lib/components/booking/info/service/serve.d.ts +0 -14
  512. package/lib/components/booking/info/service/serve.js +17 -8
  513. package/lib/components/booking/info/service2/Group/utils.js +0 -2
  514. package/lib/components/booking/info/service2/utils.d.ts +33 -1
  515. package/lib/components/booking/info/service2/utils.js +29 -38
  516. package/lib/components/booking/info/utils.js +0 -4
  517. package/lib/components/booking/info2/cartClientCard/index.js +5 -34
  518. package/lib/components/booking/info2/index.js +2 -7
  519. package/lib/components/booking/info2/serve.js +6 -1
  520. package/lib/components/booking/info2/service/addService/index.js +3 -22
  521. package/lib/components/booking/info2/service/addService/utils.d.ts +1 -9
  522. package/lib/components/booking/info2/service/addService/utils.js +11 -48
  523. package/lib/components/booking/info2/service/editService/index.js +32 -254
  524. package/lib/components/booking/info2/utilsByBooking.js +19 -26
  525. package/lib/components/booking/locales.d.ts +0 -30
  526. package/lib/components/booking/locales.js +3 -33
  527. package/lib/components/booking/utils.d.ts +7 -16
  528. package/lib/components/booking/utils.js +21 -18
  529. package/lib/components/checkout/PaymentModal.js +18 -41
  530. package/lib/components/checkout/components/CashPaymentModule/index.js +7 -1
  531. package/lib/components/checkout/components/ScrollableList/index.js +1 -0
  532. package/lib/components/checkout/hooks/useWalletPass.d.ts +1 -1
  533. package/lib/components/checkout/locales.d.ts +0 -3
  534. package/lib/components/checkout/locales.js +0 -3
  535. package/lib/components/eftposPay/amount.d.ts +1 -1
  536. package/lib/components/eftposPay/device.d.ts +1 -1
  537. package/lib/components/eftposPay/hooks.d.ts +2 -2
  538. package/lib/components/eftposPay/store/index.d.ts +4 -4
  539. package/lib/components/eftposPay/tyro/index.js +0 -12
  540. package/lib/components/index.d.ts +3 -2
  541. package/lib/components/index.js +20 -1
  542. package/lib/components/list/List.js +0 -3
  543. package/lib/components/pay/toB/components/MX51/index.js +37 -12
  544. package/lib/components/pay/toB/types/index.d.ts +12 -0
  545. package/lib/components/pay/toC/PaymentMethods/ApplePay/index.js +27 -7
  546. package/lib/components/pay/toC/PaymentMethods/GooglePay/index.js +32 -8
  547. package/lib/components/pay/toC/PaymentMethods/SuperPayAliPayH5/index.js +30 -4
  548. package/lib/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.d.ts +15 -0
  549. package/lib/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.js +88 -0
  550. package/lib/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.less +34 -0
  551. package/lib/components/pay/toC/PaymentMethods/hooks/index.d.ts +19 -0
  552. package/lib/components/pay/toC/PaymentMethods/hooks/index.js +90 -0
  553. package/lib/components/pay/toC/index.js +11 -2
  554. package/lib/components/pay/toC/locales.d.ts +9 -0
  555. package/lib/components/pay/toC/locales.js +12 -3
  556. package/lib/components/pay/toC/model.d.ts +1 -0
  557. package/lib/components/pay/toC/serve.d.ts +5 -0
  558. package/lib/components/pay/toC/serve.js +3 -0
  559. package/lib/components/pisellSelectCustomerModal/RightPanel/serve.js +8 -1
  560. package/lib/components/shoppingCart/components/Cart/Product.js +3 -7
  561. package/lib/components/shoppingCart/type.d.ts +0 -1
  562. package/lib/components/ticketBooking/components/ProductDisplayAdapter/index.less +12 -0
  563. package/lib/components/ticketBooking/components/addServiceVariant/addService.d.ts +2 -0
  564. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +313 -279
  565. package/lib/components/ticketBooking/components/addServiceVariant/index.d.ts +2 -0
  566. package/lib/components/ticketBooking/components/addServiceVariant/index.js +3 -5
  567. package/lib/components/ticketBooking/components/addServiceVariant/utils.js +2 -1
  568. package/lib/components/ticketBooking/components/menuBar/index.js +6 -42
  569. package/lib/components/ticketBooking/components/ticketBooking/index.d.ts +4 -2
  570. package/lib/components/ticketBooking/components/ticketBooking/index.js +49 -12
  571. package/lib/components/ticketBooking/components/timeBar/index.d.ts +1 -0
  572. package/lib/components/ticketBooking/components/timeBar/index.js +3 -1
  573. package/lib/components/ticketBooking/hooks/pisellos/useProducts.d.ts +4 -0
  574. package/lib/components/ticketBooking/hooks/pisellos/useProducts.js +98 -69
  575. package/lib/components/ticketBooking/index.d.ts +1 -0
  576. package/lib/components/ticketBooking/index.js +2 -0
  577. package/lib/components/ticketBooking/serve.js +117 -15
  578. package/lib/components/ticketBooking/utils/index.d.ts +2 -8
  579. package/lib/components/ticketBooking/utils/index.js +23 -29
  580. package/lib/components/walletList/index.js +88 -47
  581. package/lib/components/walletList/serve.d.ts +4 -0
  582. package/lib/components/walletList/serve.js +12 -0
  583. package/lib/components/walletList/types/index.d.ts +12 -12
  584. package/lib/hooks/printer.d.ts +4 -0
  585. package/lib/hooks/printer.js +60 -0
  586. package/lib/hooks/useEngineContext.d.ts +1 -0
  587. package/lib/hooks/useEngineContext.js +10 -2
  588. package/lib/index.d.ts +5 -3
  589. package/lib/index.js +32 -9
  590. package/lib/plus/clientCard/locales.js +3 -3
  591. package/lib/plus/clinetSearch/index.js +8 -17
  592. package/lib/plus/clinetSearch/locales.d.ts +0 -3
  593. package/lib/plus/clinetSearch/locales.js +4 -7
  594. package/lib/plus/clinetSearch/types.d.ts +0 -12
  595. package/lib/plus/productSelect/CategoryTabs/index.d.ts +2 -0
  596. package/lib/plus/productSelect/CategoryTabs/index.js +86 -71
  597. package/lib/plus/productSelect/ProductCard/SkuCard/components/Capacity/index.d.ts +1 -1
  598. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardMask/index.d.ts +1 -1
  599. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardWrapper/index.js +1 -1
  600. package/lib/plus/productSelect/ProductCard/SkuCard/components/Countdown/index.d.ts +1 -1
  601. package/lib/plus/productSelect/ProductCard/SkuCard/components/Duration/index.d.ts +1 -1
  602. package/lib/plus/productSelect/ProductCard/SkuCard/components/MemberPrice/index.d.ts +1 -1
  603. package/lib/plus/productSelect/ProductCard/SkuCard/components/Resource/index.d.ts +1 -1
  604. package/lib/plus/productSelect/ProductCard/SkuCard/components/Stock/index.d.ts +1 -1
  605. package/lib/plus/productSelect/ProductCard/SkuCard/components/Time/index.d.ts +1 -1
  606. package/lib/plus/productSelect/ProductCard/index.d.ts +3 -1
  607. package/lib/plus/productSelect/ProductCard/index.js +19 -2
  608. package/lib/plus/productSelect/components/TabsStructure/TabsStructure.less +0 -11
  609. package/lib/plus/productSelect/index.d.ts +3 -2
  610. package/lib/plus/productSelect/index.js +20 -6
  611. package/lib/plus/productSelect/index.less +4 -0
  612. package/lib/plus/walletEditor/WalletEditor.d.ts +5 -0
  613. package/lib/plus/walletEditor/WalletEditor.js +354 -0
  614. package/lib/plus/walletEditor/WalletEditor.less +129 -0
  615. package/lib/plus/walletEditor/components/ImageUpload/index.d.ts +8 -0
  616. package/lib/plus/walletEditor/components/ImageUpload/index.js +201 -0
  617. package/lib/plus/walletEditor/components/JsonEditor/index.d.ts +11 -0
  618. package/lib/plus/walletEditor/components/JsonEditor/index.js +89 -0
  619. package/lib/plus/walletEditor/components/JsonEditor/index.less +4 -0
  620. package/lib/plus/walletEditor/components/ValidityPeriodSelector/index.d.ts +20 -0
  621. package/lib/plus/walletEditor/components/ValidityPeriodSelector/index.js +176 -0
  622. package/lib/plus/walletEditor/components/ValidityPeriodSelector/index.less +4 -0
  623. package/lib/plus/walletEditor/components/relationProduct/index.d.ts +6 -0
  624. package/lib/plus/walletEditor/components/relationProduct/index.js +73 -0
  625. package/lib/plus/walletEditor/components/relationProduct/index.less +15 -0
  626. package/lib/plus/walletEditor/components/sortableWalletPassTypes/index.d.ts +37 -0
  627. package/lib/plus/walletEditor/components/sortableWalletPassTypes/index.js +211 -0
  628. package/lib/plus/walletEditor/components/sortableWalletPassTypes/index.less +110 -0
  629. package/lib/plus/walletEditor/index.d.ts +3 -0
  630. package/lib/plus/walletEditor/index.js +42 -0
  631. package/lib/plus/walletEditor/locales.d.ts +126 -0
  632. package/lib/plus/walletEditor/locales.js +167 -0
  633. package/lib/plus/walletEditor/types.d.ts +52 -0
  634. package/lib/plus/{selectHolder → walletEditor}/types.js +1 -1
  635. package/lib/plus/walletPassGallery/components/footerButton/index.d.ts +14 -0
  636. package/lib/plus/walletPassGallery/components/footerButton/index.js +187 -0
  637. package/lib/plus/walletPassGallery/components/footerButton/index.less +93 -0
  638. package/lib/plus/walletPassGallery/components/passDetail/index.d.ts +8 -0
  639. package/lib/plus/walletPassGallery/components/passDetail/index.js +287 -0
  640. package/lib/plus/walletPassGallery/components/passDetail/index.less +57 -0
  641. package/lib/plus/walletPassGallery/components/passList/index.d.ts +11 -0
  642. package/lib/plus/walletPassGallery/components/passList/index.js +136 -0
  643. package/lib/plus/walletPassGallery/components/recharge/index.d.ts +11 -0
  644. package/lib/plus/walletPassGallery/components/recharge/index.js +146 -0
  645. package/lib/plus/walletPassGallery/components/recharge/index.less +16 -0
  646. package/lib/plus/walletPassGallery/components/timelineSection/index.d.ts +8 -0
  647. package/lib/plus/walletPassGallery/components/timelineSection/index.js +212 -0
  648. package/lib/plus/walletPassGallery/components/timelineSection/index.less +67 -0
  649. package/lib/plus/walletPassGallery/components/usageRule/index.d.ts +9 -0
  650. package/lib/plus/walletPassGallery/components/usageRule/index.js +209 -0
  651. package/lib/plus/walletPassGallery/components/usageRule/index.less +157 -0
  652. package/lib/plus/walletPassGallery/index.d.ts +6 -0
  653. package/lib/plus/walletPassGallery/index.js +498 -0
  654. package/lib/plus/walletPassGallery/index.less +115 -0
  655. package/lib/plus/walletPassGallery/locales.d.ts +270 -0
  656. package/lib/plus/walletPassGallery/locales.js +299 -0
  657. package/lib/plus/walletPassGallery/serve.d.ts +218 -0
  658. package/lib/plus/walletPassGallery/serve.js +98 -0
  659. package/lib/pro/Login2.0/AuthModal.d.ts +143 -0
  660. package/lib/pro/Login2.0/AuthModal.js +503 -0
  661. package/lib/pro/Login2.0/Login2.d.ts +61 -0
  662. package/lib/pro/Login2.0/Login2.js +1545 -0
  663. package/lib/pro/Login2.0/Register2.d.ts +65 -0
  664. package/lib/pro/Login2.0/Register2.js +1063 -0
  665. package/lib/pro/Login2.0/components/ForgotPasswordFlow.d.ts +31 -0
  666. package/lib/pro/Login2.0/components/ForgotPasswordFlow.js +213 -0
  667. package/lib/pro/Login2.0/components/LegalTerms.d.ts +8 -0
  668. package/lib/pro/Login2.0/components/LegalTerms.js +76 -0
  669. package/lib/pro/Login2.0/components/LegalTerms.less +74 -0
  670. package/lib/pro/Login2.0/components/LoginCodeInput.d.ts +27 -0
  671. package/lib/pro/Login2.0/components/LoginCodeInput.js +161 -0
  672. package/lib/pro/Login2.0/components/OAuthButtonGroup.d.ts +22 -0
  673. package/lib/pro/Login2.0/components/OAuthButtonGroup.js +87 -0
  674. package/lib/pro/Login2.0/components/PhoneInput.d.ts +53 -0
  675. package/lib/pro/Login2.0/components/PhoneInput.js +263 -0
  676. package/lib/pro/Login2.0/components/PhoneInput.less +148 -0
  677. package/lib/pro/Login2.0/components/phoneValidation.d.ts +17 -0
  678. package/lib/pro/Login2.0/components/phoneValidation.js +153 -0
  679. package/lib/pro/Login2.0/hooks/index.d.ts +2 -0
  680. package/lib/{plus/selectHolder/utils.js → pro/Login2.0/hooks/index.js} +7 -12
  681. package/lib/pro/Login2.0/hooks/usePasswordValidationRules.d.ts +24 -0
  682. package/lib/pro/Login2.0/hooks/usePasswordValidationRules.js +140 -0
  683. package/lib/pro/Login2.0/hooks/useRegisterFlow.d.ts +39 -0
  684. package/lib/pro/Login2.0/hooks/useRegisterFlow.js +149 -0
  685. package/lib/pro/Login2.0/hooks/useRegistrationMethods.d.ts +9 -0
  686. package/lib/pro/Login2.0/hooks/useRegistrationMethods.js +51 -0
  687. package/lib/pro/{multiDayTimeSelect → Login2.0}/index.js +16 -6
  688. package/lib/pro/Login2.0/index.less +1002 -0
  689. package/lib/pro/Login2.0/locales.d.ts +543 -0
  690. package/lib/pro/Login2.0/locales.js +646 -0
  691. package/lib/pro/Login2.0/shared/Header.d.ts +11 -0
  692. package/lib/pro/Login2.0/shared/Header.js +81 -0
  693. package/lib/pro/Login2.0/shared/OAuthButtons.d.ts +11 -0
  694. package/lib/pro/Login2.0/shared/OAuthButtons.js +78 -0
  695. package/lib/pro/Login2.0/shared/registerFlow.d.ts +116 -0
  696. package/lib/pro/Login2.0/shared/registerFlow.js +235 -0
  697. package/lib/pro/Login2.0/shared/types.d.ts +232 -0
  698. package/lib/pro/{multiDayTimeSelect → Login2.0/shared}/types.js +1 -1
  699. package/lib/pro/Login2.0/steps/CodeInput.d.ts +24 -0
  700. package/lib/pro/Login2.0/steps/CodeInput.js +160 -0
  701. package/lib/pro/Login2.0/steps/EmailAlreadyRegistered.d.ts +12 -0
  702. package/lib/pro/Login2.0/steps/EmailAlreadyRegistered.js +46 -0
  703. package/lib/pro/Login2.0/steps/EmailLinkAlreadyUsed.d.ts +7 -0
  704. package/lib/pro/Login2.0/steps/EmailLinkAlreadyUsed.js +51 -0
  705. package/lib/pro/Login2.0/steps/EmailLinkExpired.d.ts +9 -0
  706. package/lib/pro/Login2.0/steps/EmailLinkExpired.js +51 -0
  707. package/lib/pro/Login2.0/steps/SetPassword.d.ts +19 -0
  708. package/lib/pro/Login2.0/steps/SetPassword.js +131 -0
  709. package/lib/pro/Login2.0/steps/VerificationSuccess.d.ts +8 -0
  710. package/lib/pro/Login2.0/steps/VerificationSuccess.js +49 -0
  711. package/lib/pro/Login2.0/steps/VerifyingEmailLink.d.ts +7 -0
  712. package/lib/pro/Login2.0/steps/VerifyingEmailLink.js +41 -0
  713. package/lib/pro/Login2.0/steps/WaitEmailLink.d.ts +18 -0
  714. package/lib/pro/Login2.0/steps/WaitEmailLink.js +67 -0
  715. package/lib/pro/Login2.0/steps/index.d.ts +19 -0
  716. package/lib/pro/Login2.0/steps/index.js +60 -0
  717. package/lib/pro/Login2.0/steps/steps.less +423 -0
  718. package/lib/pro/Login2.0/types.d.ts +167 -0
  719. package/lib/pro/Login2.0/types.js +17 -0
  720. package/lib/pro/comprehensiveSearch/components/searchSection/locales.js +3 -3
  721. package/lib/pro/comprehensiveSearch/locales.js +1 -1
  722. package/lib/pro/pisellPaymentList/example.d.ts +19 -0
  723. package/lib/pro/pisellPaymentList/example.js +416 -0
  724. package/lib/pro/skuDetailModal/types.d.ts +0 -1
  725. package/lowcode/admin-auth-customer-auth/meta.ts +29 -0
  726. package/lowcode/admin-auth-customer-oauth-config/meta.ts +55 -0
  727. package/lowcode/admin-auth-device-auth/meta.ts +30 -0
  728. package/lowcode/admin-auth-methods/meta.ts +385 -0
  729. package/lowcode/admin-auth-oauth-config/meta.ts +29 -0
  730. package/lowcode/admin-auth-online-shop-auth/meta.ts +29 -0
  731. package/lowcode/admin-auth-org-admin-auth/meta.ts +29 -0
  732. package/lowcode/admin-auth-pos-operator-auth/meta.ts +30 -0
  733. package/lowcode/admin-auth-saas-admin-auth/meta.ts +29 -0
  734. package/lowcode/admin-auth-saas-managerment-auth/meta.ts +30 -0
  735. package/lowcode/admin-setting-list/meta.ts +125 -0
  736. package/lowcode/authmodal/meta.ts +395 -0
  737. package/lowcode/event-select-holder/meta.ts +2 -2
  738. package/lowcode/login2/CONFIG.md +447 -0
  739. package/lowcode/login2/TEST_CONFIG.md +324 -0
  740. package/lowcode/login2/VERIFICATION_METHODS.md +364 -0
  741. package/lowcode/login2/meta.ts +560 -0
  742. package/lowcode/login2/snippets.ts +124 -0
  743. package/lowcode/pro-register/meta.ts +385 -0
  744. package/lowcode/register2/meta.ts +562 -0
  745. package/lowcode/register2/snippets.ts +257 -0
  746. package/lowcode/sortable-wallet-pass-types/meta.ts +267 -0
  747. package/lowcode/wallet-editor/meta.ts +57 -0
  748. package/lowcode/wallet-editor/snippets.ts +13 -0
  749. package/lowcode/wallet-pass-gallery/meta.ts +35 -0
  750. package/package.json +13 -13
  751. package/es/components/booking/info2/service/editService/Holder/index.d.ts +0 -12
  752. package/es/components/booking/info2/service/editService/Holder/index.less +0 -63
  753. package/es/components/booking/utils/confirmHolderModal.d.ts +0 -13
  754. package/es/components/booking/utils/confirmHolderModal.js +0 -318
  755. package/es/components/booking/utils/confirmHolderModal.less +0 -40
  756. package/es/components/booking/utils/selectHolderModal.d.ts +0 -24
  757. package/es/components/booking/utils/selectHolderModal.js +0 -407
  758. package/es/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.d.ts +0 -18
  759. package/es/plus/selectHolder/components/ErrorTip/index.d.ts +0 -3
  760. package/es/plus/selectHolder/components/ErrorTip/index.js +0 -14
  761. package/es/plus/selectHolder/components/ErrorTip/index.less +0 -51
  762. package/es/plus/selectHolder/components/HolderItem/index.d.ts +0 -6
  763. package/es/plus/selectHolder/components/HolderItem/index.js +0 -77
  764. package/es/plus/selectHolder/components/HolderItem/index.less +0 -105
  765. package/es/plus/selectHolder/components/HolderList/index.d.ts +0 -30
  766. package/es/plus/selectHolder/components/HolderList/index.js +0 -43
  767. package/es/plus/selectHolder/index.d.ts +0 -7
  768. package/es/plus/selectHolder/index.js +0 -273
  769. package/es/plus/selectHolder/index.less +0 -137
  770. package/es/plus/selectHolder/locales.d.ts +0 -24
  771. package/es/plus/selectHolder/locales.js +0 -29
  772. package/es/plus/selectHolder/types.d.ts +0 -104
  773. package/es/plus/selectHolder/utils.d.ts +0 -9
  774. package/es/plus/selectHolder/utils.js +0 -16
  775. package/es/pro/multiDayTimeSelect/MultiDayTimeSelect.d.ts +0 -9
  776. package/es/pro/multiDayTimeSelect/MultiDayTimeSelect.less +0 -8
  777. package/es/pro/multiDayTimeSelect/index.d.ts +0 -3
  778. package/es/pro/multiDayTimeSelect/index.js +0 -1
  779. package/es/pro/multiDayTimeSelect/types.d.ts +0 -28
  780. package/lib/components/booking/info2/service/editService/Holder/index.d.ts +0 -12
  781. package/lib/components/booking/info2/service/editService/Holder/index.js +0 -199
  782. package/lib/components/booking/info2/service/editService/Holder/index.less +0 -63
  783. package/lib/components/booking/utils/confirmHolderModal.d.ts +0 -13
  784. package/lib/components/booking/utils/confirmHolderModal.js +0 -253
  785. package/lib/components/booking/utils/confirmHolderModal.less +0 -40
  786. package/lib/components/booking/utils/selectHolderModal.d.ts +0 -24
  787. package/lib/components/booking/utils/selectHolderModal.js +0 -319
  788. package/lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.d.ts +0 -18
  789. package/lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.js +0 -118
  790. package/lib/plus/selectHolder/components/ErrorTip/index.d.ts +0 -3
  791. package/lib/plus/selectHolder/components/ErrorTip/index.js +0 -30
  792. package/lib/plus/selectHolder/components/ErrorTip/index.less +0 -51
  793. package/lib/plus/selectHolder/components/HolderItem/index.d.ts +0 -6
  794. package/lib/plus/selectHolder/components/HolderItem/index.js +0 -101
  795. package/lib/plus/selectHolder/components/HolderItem/index.less +0 -105
  796. package/lib/plus/selectHolder/components/HolderList/index.d.ts +0 -30
  797. package/lib/plus/selectHolder/index.d.ts +0 -7
  798. package/lib/plus/selectHolder/index.js +0 -223
  799. package/lib/plus/selectHolder/index.less +0 -137
  800. package/lib/plus/selectHolder/locales.d.ts +0 -24
  801. package/lib/plus/selectHolder/locales.js +0 -47
  802. package/lib/plus/selectHolder/types.d.ts +0 -104
  803. package/lib/plus/selectHolder/utils.d.ts +0 -9
  804. package/lib/pro/multiDayTimeSelect/MultiDayTimeSelect.d.ts +0 -9
  805. package/lib/pro/multiDayTimeSelect/MultiDayTimeSelect.js +0 -304
  806. package/lib/pro/multiDayTimeSelect/MultiDayTimeSelect.less +0 -8
  807. package/lib/pro/multiDayTimeSelect/index.d.ts +0 -3
  808. package/lib/pro/multiDayTimeSelect/types.d.ts +0 -28
  809. package/lowcode/select-holder/meta.ts +0 -220
  810. package/lowcode/select-holder/snippets.ts +0 -41
  811. package/lowcode/wallet/meta.ts +0 -79
  812. /package/es/{plus/selectHolder → components/authentication/admin/ChannelAuthSetting/AuthenticationMethods}/types.js +0 -0
  813. /package/es/{pro/multiDayTimeSelect → components/authentication/admin/ChannelAuthSetting/CollectInfo}/types.js +0 -0
  814. /package/es/components/{ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.less → authentication/index.d.ts} +0 -0
  815. /package/{lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.less → es/components/authentication/index.js} +0 -0
@@ -0,0 +1,1545 @@
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/Login2.tsx
30
+ var Login2_exports = {};
31
+ __export(Login2_exports, {
32
+ default: () => Login2_default
33
+ });
34
+ module.exports = __toCommonJS(Login2_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_antd = require("antd");
37
+ var import_materials = require("@pisell/materials");
38
+ var import_classnames = __toESM(require("classnames"));
39
+ var import_utils = require("@pisell/utils");
40
+ var import_ahooks = require("ahooks");
41
+ var import_locales = __toESM(require("./locales"));
42
+ var import_Header = __toESM(require("./shared/Header"));
43
+ var import_LoginCodeInput = __toESM(require("./components/LoginCodeInput"));
44
+ var import_ForgotPasswordFlow = __toESM(require("./components/ForgotPasswordFlow"));
45
+ var import_SetPassword = __toESM(require("./steps/SetPassword"));
46
+ var import_PhoneInput = __toESM(require("./components/PhoneInput"));
47
+ var import_phoneValidation = require("./components/phoneValidation");
48
+ var import_LegalTerms = __toESM(require("./components/LegalTerms"));
49
+ var import_index = require("./index.less");
50
+ var import_useEngineContext = require("../../hooks/useEngineContext");
51
+ var import_useEngineContext2 = __toESM(require("../../hooks/useEngineContext"));
52
+ var import_materials2 = require("@pisell/materials");
53
+ var import_usePasswordValidationRules = __toESM(require("./hooks/usePasswordValidationRules"));
54
+ var import_OAuthButtonGroup = __toESM(require("./components/OAuthButtonGroup"));
55
+ var Login2 = ({
56
+ config,
57
+ visible = true,
58
+ onClose,
59
+ className,
60
+ style,
61
+ onLogin,
62
+ onOAuthLogin,
63
+ onSendVerificationCode,
64
+ onForgotPassword,
65
+ onSwitchToRegister,
66
+ onError
67
+ }) => {
68
+ var _a, _b, _c, _d, _e, _f;
69
+ const [form] = import_antd.Form.useForm();
70
+ const [loading, setLoading] = (0, import_react.useState)(false);
71
+ const [countdown, setCountdown] = (0, import_react.useState)(0);
72
+ const [countries, setCountries] = (0, import_react.useState)([]);
73
+ const pisellOS = (0, import_useEngineContext.usePisellOS)();
74
+ const registerAndLogin = pisellOS == null ? void 0 : pisellOS.getModule("registerAndLogin");
75
+ const context = (0, import_useEngineContext2.default)();
76
+ const storage = (_b = (_a = context == null ? void 0 : context.appHelper) == null ? void 0 : _a.utils) == null ? void 0 : _b.storage;
77
+ (0, import_react.useEffect)(() => {
78
+ var _a2, _b2, _c2, _d2, _e2, _f2, _g;
79
+ import_utils.locales.init(
80
+ import_locales.default,
81
+ ((_e2 = (_d2 = (_c2 = (_b2 = (_a2 = context.appHelper.utils) == null ? void 0 : _a2.getApp) == null ? void 0 : _b2.call(_a2)) == null ? void 0 : _c2.locales) == null ? void 0 : _d2.getLocale) == null ? void 0 : _e2.call(_d2)) || ((_g = (_f2 = context.appHelper.utils) == null ? void 0 : _f2.storage) == null ? void 0 : _g.get("umi_locale")) || "en"
82
+ );
83
+ }, []);
84
+ const loginMethods = config.loginMethods || [];
85
+ const passwordValidationRules = (0, import_usePasswordValidationRules.default)(
86
+ (_c = config.ui) == null ? void 0 : _c.passwordRules,
87
+ {
88
+ translate: import_utils.locales.getText,
89
+ fallbackMinLength: 6,
90
+ messageKeys: {
91
+ required: import_utils.locales.getText("pisell-login2-password-required"),
92
+ minLength: import_utils.locales.getText("pisell-set-password-min-length"),
93
+ requireUppercase: import_utils.locales.getText("pisell-set-password-require-uppercase"),
94
+ requireLowercase: import_utils.locales.getText("pisell-set-password-require-lowercase"),
95
+ requireNumber: import_utils.locales.getText("pisell-set-password-require-number"),
96
+ requireSpecialCharacters: import_utils.locales.getText("pisell-set-password-require-special"),
97
+ summary: import_utils.locales.getText("pisell-set-password-must-contain")
98
+ }
99
+ }
100
+ );
101
+ const [currentLoginMethod, setCurrentLoginMethod] = (0, import_react.useState)(null);
102
+ const [currentVerificationMethod, setCurrentVerificationMethod] = (0, import_react.useState)("password");
103
+ const hasTriggeredGuestLoginRef = (0, import_react.useRef)(false);
104
+ (0, import_react.useEffect)(() => {
105
+ var _a2;
106
+ if (loginMethods.length > 0 && !currentLoginMethod) {
107
+ const initialMethod = loginMethods[0];
108
+ setCurrentLoginMethod(initialMethod);
109
+ if ((initialMethod == null ? void 0 : initialMethod.type) === "email" || (initialMethod == null ? void 0 : initialMethod.type) === "phone") {
110
+ setCurrentVerificationMethod(
111
+ ((_a2 = initialMethod.verificationMethods) == null ? void 0 : _a2[0]) || "password"
112
+ );
113
+ }
114
+ }
115
+ if (hasTriggeredGuestLoginRef.current) return;
116
+ const hasOnlyGuest = loginMethods.length === 1 && loginMethods[0].type === "guest";
117
+ if (!hasOnlyGuest) return;
118
+ hasTriggeredGuestLoginRef.current = true;
119
+ handleGuestLogin();
120
+ }, [loginMethods, currentLoginMethod]);
121
+ (0, import_react.useEffect)(() => {
122
+ if (((currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" || (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "phone") && currentVerificationMethod === "password") {
123
+ const storedRememberMe = storage.get("login_remember_me") === "true";
124
+ setRememberMe(storedRememberMe);
125
+ let account = storage.get("login_account");
126
+ try {
127
+ account = JSON.parse(account || "{}");
128
+ } catch (e) {
129
+ console.error(e);
130
+ }
131
+ if (account && storedRememberMe) {
132
+ const accountString = typeof account === "string" ? account : account.phone || account.email || "";
133
+ const isEmail = accountString.includes("@");
134
+ const isPhone = /^\d+$/.test(accountString.replace(/\+/g, "").replace(/\s/g, ""));
135
+ const shouldUseStoredAccount = currentLoginMethod.type === "email" && isEmail || currentLoginMethod.type === "phone" && isPhone;
136
+ if (shouldUseStoredAccount) {
137
+ setEnteredAccount(account);
138
+ setHasStoredCredentials(true);
139
+ if (isEmail && !form.getFieldValue("email")) {
140
+ form.setFieldsValue({
141
+ email: account
142
+ });
143
+ }
144
+ if (isPhone && !form.getFieldValue("phone")) {
145
+ form.setFieldsValue({
146
+ phone: account
147
+ });
148
+ }
149
+ if (currentLoginMethod == null ? void 0 : currentLoginMethod.stepByStep) {
150
+ setLoginStep("password");
151
+ }
152
+ } else {
153
+ setHasStoredCredentials(false);
154
+ setEnteredAccount("");
155
+ }
156
+ } else {
157
+ setHasStoredCredentials(false);
158
+ }
159
+ }
160
+ }, [currentLoginMethod, currentVerificationMethod]);
161
+ (0, import_react.useEffect)(() => {
162
+ if (!visible) {
163
+ form.setFieldsValue({ password: "" });
164
+ }
165
+ }, [visible, form]);
166
+ const [loginStep, setLoginStep] = (0, import_react.useState)(
167
+ "account"
168
+ );
169
+ const [enteredAccount, setEnteredAccount] = (0, import_react.useState)("");
170
+ const [codeError, setCodeError] = (0, import_react.useState)("");
171
+ const [rememberMe, setRememberMe] = (0, import_react.useState)(false);
172
+ const [hasStoredCredentials, setHasStoredCredentials] = (0, import_react.useState)(false);
173
+ const [lastLoginMethod, setLastLoginMethod] = (0, import_react.useState)(null);
174
+ const [showForgotPassword, setShowForgotPassword] = (0, import_react.useState)(false);
175
+ const [emailLinkVerifyStatus, setEmailLinkVerifyStatus] = (0, import_react.useState)(null);
176
+ const [emailLinkError, setEmailLinkError] = (0, import_react.useState)("");
177
+ const [resetPasswordUserEmail, setResetPasswordUserEmail] = (0, import_react.useState)("");
178
+ const isEmailLinkVerification = ((_d = config.emailLinkVerification) == null ? void 0 : _d.enabled) && ((_e = config.emailLinkVerification) == null ? void 0 : _e.code);
179
+ (0, import_react.useEffect)(() => {
180
+ var _a2;
181
+ if (isEmailLinkVerification && ((_a2 = config.emailLinkVerification) == null ? void 0 : _a2.code)) {
182
+ setEmailLinkVerifyStatus("verifying");
183
+ const checkCode = async () => {
184
+ var _a3;
185
+ try {
186
+ if (registerAndLogin == null ? void 0 : registerAndLogin.checkResetPasswordCode) {
187
+ const result = await registerAndLogin.checkResetPasswordCode({
188
+ code: config.emailLinkVerification.code
189
+ });
190
+ if (result.status) {
191
+ setEmailLinkVerifyStatus("success");
192
+ if ((_a3 = result.data) == null ? void 0 : _a3.email) {
193
+ setResetPasswordUserEmail(result.data.email);
194
+ }
195
+ } else {
196
+ setEmailLinkVerifyStatus("error");
197
+ setEmailLinkError(result.message || "验证码无效或已过期");
198
+ }
199
+ } else {
200
+ setEmailLinkVerifyStatus("error");
201
+ setEmailLinkError("系统错误,请稍后重试");
202
+ }
203
+ } catch (error) {
204
+ setEmailLinkVerifyStatus("error");
205
+ setEmailLinkError("网络错误,请稍后重试");
206
+ }
207
+ };
208
+ checkCode();
209
+ }
210
+ }, [
211
+ isEmailLinkVerification,
212
+ (_f = config.emailLinkVerification) == null ? void 0 : _f.code,
213
+ registerAndLogin
214
+ ]);
215
+ (0, import_react.useEffect)(() => {
216
+ if (countdown > 0) {
217
+ const timer = setTimeout(() => {
218
+ setCountdown(countdown - 1);
219
+ }, 1e3);
220
+ return () => clearTimeout(timer);
221
+ }
222
+ }, [countdown]);
223
+ (0, import_react.useEffect)(() => {
224
+ const fetchCountries = async () => {
225
+ try {
226
+ if (registerAndLogin == null ? void 0 : registerAndLogin.getCountries) {
227
+ const countriesList = await registerAndLogin.getCountries();
228
+ setCountries(countriesList || []);
229
+ }
230
+ } catch (error) {
231
+ console.error("Failed to fetch countries:", error);
232
+ }
233
+ };
234
+ fetchCountries();
235
+ }, [registerAndLogin]);
236
+ (0, import_react.useEffect)(() => {
237
+ try {
238
+ const storedLoginMethod = storage.get("pisell_last_login_method");
239
+ if (storedLoginMethod) {
240
+ const parsedMethod = JSON.parse(storedLoginMethod);
241
+ setLastLoginMethod(parsedMethod);
242
+ }
243
+ const rememberMe2 = storage.get("login_remember_me") === "true";
244
+ const account = storage.get("login_account");
245
+ const password = storage.get("login_password");
246
+ if (rememberMe2 && account && password) {
247
+ let accountData;
248
+ try {
249
+ accountData = JSON.parse(account || "{}");
250
+ } catch (e) {
251
+ accountData = account;
252
+ }
253
+ const isEmail = typeof accountData === "string" && accountData.includes("@");
254
+ const loginMethod = loginMethods.find((m) => m.type === (isEmail ? "email" : "phone"));
255
+ if (loginMethod) {
256
+ setCurrentLoginMethod(loginMethod);
257
+ setCurrentVerificationMethod("password");
258
+ setEnteredAccount(accountData);
259
+ const accountFieldName = isEmail ? "email" : "phone";
260
+ form.setFieldsValue({ [accountFieldName]: accountData, password, remember_me: true });
261
+ setLoginStep("password");
262
+ setRememberMe(true);
263
+ }
264
+ }
265
+ } catch (error) {
266
+ console.error("Failed to parse last login method:", error);
267
+ }
268
+ }, [loginMethods]);
269
+ const isLastLoginMethod = (0, import_react.useCallback)((methodType) => {
270
+ if (!lastLoginMethod) return false;
271
+ return lastLoginMethod.type === methodType;
272
+ }, [lastLoginMethod]);
273
+ const switchVerificationMethod = (0, import_react.useCallback)(
274
+ (method) => {
275
+ form.resetFields();
276
+ setLoginStep("account");
277
+ setEnteredAccount("");
278
+ setCurrentVerificationMethod(method);
279
+ },
280
+ [form]
281
+ );
282
+ const switchLoginMethod = (0, import_react.useCallback)(
283
+ (method) => {
284
+ form.resetFields();
285
+ setLoginStep("account");
286
+ setEnteredAccount("");
287
+ setHasStoredCredentials(false);
288
+ setCurrentLoginMethod(method);
289
+ if (method.type === "email" || method.type === "phone") {
290
+ setCurrentVerificationMethod(method.verificationMethods[0]);
291
+ }
292
+ },
293
+ [form]
294
+ );
295
+ const handleContinueWithAccountInternal = async () => {
296
+ var _a2, _b2, _c2, _d2, _e2, _f2, _g;
297
+ try {
298
+ setLoading(true);
299
+ const accountFieldName = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
300
+ const accountValues = await form.validateFields([accountFieldName]);
301
+ const account = accountValues[accountFieldName];
302
+ if ((currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" && registerAndLogin) {
303
+ const utils = ((_a2 = context == null ? void 0 : context.appHelper) == null ? void 0 : _a2.utils) || {};
304
+ const shopId = ((_g = (_f2 = (_e2 = (_d2 = (_c2 = (_b2 = utils.getStore) == null ? void 0 : _b2.call(utils)) == null ? void 0 : _c2.getState) == null ? void 0 : _d2.call(_c2)) == null ? void 0 : _e2.global) == null ? void 0 : _f2.shop) == null ? void 0 : _g.id) || 9;
305
+ const result = await registerAndLogin.checkEmailExists({
306
+ email: account,
307
+ shop_id: shopId
308
+ });
309
+ if (result.status && result.data) {
310
+ if (result.data.exists) {
311
+ setEnteredAccount(account);
312
+ setLoginStep("password");
313
+ form.setFieldsValue({ [accountFieldName]: account });
314
+ } else {
315
+ import_antd.message.error(
316
+ import_utils.locales.getText("pisell-login2-email-not-registered")
317
+ );
318
+ return;
319
+ }
320
+ } else {
321
+ import_antd.message.error(
322
+ result.message || import_utils.locales.getText("pisell-login2-check-email-failed")
323
+ );
324
+ return;
325
+ }
326
+ } else {
327
+ setEnteredAccount(account);
328
+ setLoginStep("password");
329
+ form.setFieldsValue({ [accountFieldName]: account });
330
+ }
331
+ } catch (error) {
332
+ if (error.errorFields) {
333
+ return;
334
+ }
335
+ console.error("Continue with account error:", error);
336
+ import_antd.message.error(
337
+ (error == null ? void 0 : error.message) || import_utils.locales.getText("pisell-login2-continue-failed")
338
+ );
339
+ } finally {
340
+ setLoading(false);
341
+ }
342
+ };
343
+ const { run: handleContinueWithAccount } = (0, import_ahooks.useDebounceFn)(handleContinueWithAccountInternal, {
344
+ wait: 200,
345
+ leading: true,
346
+ trailing: false
347
+ });
348
+ const handleBackToAccountInternal = () => {
349
+ setLoginStep("account");
350
+ form.resetFields(["password"]);
351
+ };
352
+ const { run: handleBackToAccount } = (0, import_ahooks.useDebounceFn)(handleBackToAccountInternal, {
353
+ wait: 200,
354
+ leading: true,
355
+ trailing: false
356
+ });
357
+ const handleSendCode = async () => {
358
+ var _a2;
359
+ try {
360
+ const accountFieldName = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
361
+ await form.validateFields([accountFieldName]);
362
+ const account = form.getFieldValue(accountFieldName);
363
+ if (!account) {
364
+ import_antd.message.error(import_utils.locales.getText("pisell-login2-account-required"));
365
+ return;
366
+ }
367
+ setLoading(true);
368
+ const type = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
369
+ if (registerAndLogin) {
370
+ let res;
371
+ if (type === "email") {
372
+ res = await registerAndLogin.sendEmailLoginCode({
373
+ type: "email",
374
+ target: account,
375
+ purpose: "login"
376
+ });
377
+ } else {
378
+ let phoneData;
379
+ if (typeof account === "string") {
380
+ phoneData = {
381
+ phone: account,
382
+ country_calling_code: ((_a2 = countries.find((country) => country.value === account)) == null ? void 0 : _a2.calling_code) || ""
383
+ };
384
+ } else {
385
+ phoneData = account;
386
+ }
387
+ res = await registerAndLogin.sendSmsLoginCode(phoneData);
388
+ }
389
+ if ((res == null ? void 0 : res.code) !== 200) {
390
+ throw new Error(
391
+ (res == null ? void 0 : res.message) || import_utils.locales.getText("pisell-login2-code-send-failed")
392
+ );
393
+ }
394
+ }
395
+ await (onSendVerificationCode == null ? void 0 : onSendVerificationCode(account, type, config.channel));
396
+ setEnteredAccount(account);
397
+ setLoginStep("code");
398
+ setCountdown(60);
399
+ import_antd.message.success(import_utils.locales.getText("pisell-login2-code-sent"));
400
+ } catch (error) {
401
+ if (error == null ? void 0 : error.errorFields) return;
402
+ import_antd.message.error(
403
+ (error == null ? void 0 : error.message) || import_utils.locales.getText("pisell-login2-code-send-failed")
404
+ );
405
+ } finally {
406
+ setLoading(false);
407
+ }
408
+ };
409
+ const handleCodeSubmit = async (code) => {
410
+ var _a2;
411
+ try {
412
+ setLoading(true);
413
+ setCodeError("");
414
+ const method = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) || "email";
415
+ let result;
416
+ if (registerAndLogin) {
417
+ if (method === "email") {
418
+ result = await registerAndLogin.emailCodeLogin({
419
+ email: enteredAccount,
420
+ code
421
+ });
422
+ } else if (method === "phone") {
423
+ let phoneData;
424
+ if (typeof enteredAccount === "string") {
425
+ phoneData = {
426
+ phone: enteredAccount,
427
+ country_calling_code: ((_a2 = countries.find((country) => country.value === enteredAccount)) == null ? void 0 : _a2.calling_code) || ""
428
+ };
429
+ } else {
430
+ phoneData = enteredAccount;
431
+ }
432
+ result = await registerAndLogin.phoneCodeLogin({
433
+ phone: phoneData.phone,
434
+ country_calling_code: phoneData.country_calling_code,
435
+ code
436
+ });
437
+ }
438
+ if ((result == null ? void 0 : result.code) !== 200) {
439
+ const errorMessage = (result == null ? void 0 : result.message) || import_utils.locales.getText("pisell-login2-login-failed");
440
+ const error = new Error(errorMessage);
441
+ onError == null ? void 0 : onError(error, method);
442
+ setCodeError(errorMessage);
443
+ return;
444
+ }
445
+ }
446
+ const loginData = {
447
+ account: enteredAccount,
448
+ password: void 0,
449
+ verification_code: code,
450
+ remember_me: false
451
+ };
452
+ await (onLogin == null ? void 0 : onLogin(result.data, method, loginData, config.channel));
453
+ import_antd.message.success(import_utils.locales.getText("pisell-login2-login-success"));
454
+ } catch (error) {
455
+ setCodeError(
456
+ (error == null ? void 0 : error.message) || import_utils.locales.getText("pisell-login2-login-failed")
457
+ );
458
+ } finally {
459
+ setLoading(false);
460
+ }
461
+ };
462
+ const handleBackFromCode = () => {
463
+ setLoginStep("account");
464
+ form.resetFields();
465
+ setCodeError("");
466
+ };
467
+ const handleForgotPasswordClickInternal = () => {
468
+ const accountFieldName = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
469
+ const account = form.getFieldValue(accountFieldName);
470
+ setEnteredAccount(account || "");
471
+ setShowForgotPassword(true);
472
+ };
473
+ const { run: handleForgotPasswordClick } = (0, import_ahooks.useDebounceFn)(handleForgotPasswordClickInternal, {
474
+ wait: 200,
475
+ leading: true,
476
+ trailing: false
477
+ });
478
+ const handleCloseForgotPassword = () => {
479
+ setShowForgotPassword(false);
480
+ setCountdown(0);
481
+ };
482
+ const handleForgotPasswordSendLink = async (account) => {
483
+ try {
484
+ setLoading(true);
485
+ if (registerAndLogin) {
486
+ const res = await registerAndLogin.sendResetPasswordLink({
487
+ email: account
488
+ });
489
+ if (!res.status) {
490
+ throw new Error(res.message || "发送重置密码链接失败");
491
+ }
492
+ }
493
+ import_antd.message.success(import_utils.locales.getText("pisell-forgot-password-link-sent"));
494
+ } catch (error) {
495
+ import_antd.message.error((error == null ? void 0 : error.message) || "发送重置密码链接失败");
496
+ throw error;
497
+ } finally {
498
+ setLoading(false);
499
+ }
500
+ };
501
+ const handleForgotPasswordSendCode = async (account) => {
502
+ try {
503
+ setLoading(true);
504
+ const type = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
505
+ if (registerAndLogin) {
506
+ if (type === "email") {
507
+ const res = await registerAndLogin.sendPasswordResetEmail({
508
+ email: account
509
+ });
510
+ if (!res.status) {
511
+ throw new Error(
512
+ res.message || import_utils.locales.getText("pisell-login2-code-send-failed")
513
+ );
514
+ }
515
+ } else {
516
+ const phoneAccount = account;
517
+ const res = await registerAndLogin.sendPasswordResetSms({
518
+ phone: phoneAccount.phone,
519
+ country_calling_code: phoneAccount.country_calling_code
520
+ });
521
+ if (!res.status) {
522
+ throw new Error(
523
+ res.message || import_utils.locales.getText("pisell-login2-code-send-failed")
524
+ );
525
+ }
526
+ }
527
+ }
528
+ setCountdown(60);
529
+ import_antd.message.success(import_utils.locales.getText("pisell-login2-code-sent"));
530
+ } catch (error) {
531
+ import_antd.message.error(
532
+ (error == null ? void 0 : error.message) || import_utils.locales.getText("pisell-login2-code-send-failed")
533
+ );
534
+ throw error;
535
+ } finally {
536
+ setLoading(false);
537
+ }
538
+ };
539
+ const handleForgotPasswordVerifyCode = async (account, code) => {
540
+ var _a2, _b2, _c2, _d2, _e2, _f2, _g;
541
+ try {
542
+ setLoading(true);
543
+ if (registerAndLogin) {
544
+ const utils = ((_a2 = context == null ? void 0 : context.appHelper) == null ? void 0 : _a2.utils) || {};
545
+ const shopId = ((_g = (_f2 = (_e2 = (_d2 = (_c2 = (_b2 = utils.getStore) == null ? void 0 : _b2.call(utils)) == null ? void 0 : _c2.getState) == null ? void 0 : _d2.call(_c2)) == null ? void 0 : _e2.global) == null ? void 0 : _f2.shop) == null ? void 0 : _g.id) || 9;
546
+ const isPhoneAccount = typeof account === "object" && "phone" in account;
547
+ let res;
548
+ if (!isPhoneAccount) {
549
+ res = await registerAndLogin.checkEmailCode({
550
+ email: account,
551
+ shop_id: shopId,
552
+ code,
553
+ action: "customer_reset_password_code"
554
+ });
555
+ } else {
556
+ const phoneData = account;
557
+ res = await registerAndLogin.checkMobileCode({
558
+ phone: phoneData.phone,
559
+ country_calling_code: phoneData.country_calling_code,
560
+ code,
561
+ action: "forget"
562
+ });
563
+ }
564
+ if (!res.status) {
565
+ throw new Error(res.message || "验证码验证失败");
566
+ }
567
+ if (!res.data.valid) {
568
+ throw new Error(import_utils.locales.getText("pisell-login2-code-verify-failed"));
569
+ }
570
+ }
571
+ } catch (error) {
572
+ import_antd.message.error((error == null ? void 0 : error.message) || "验证码验证失败");
573
+ throw error;
574
+ } finally {
575
+ setLoading(false);
576
+ }
577
+ };
578
+ const handleForgotPasswordReset = async (account, password, code) => {
579
+ try {
580
+ setLoading(true);
581
+ if (registerAndLogin) {
582
+ const isPhoneAccount2 = typeof account === "object" && "phone" in account;
583
+ let resetPasswordParams;
584
+ if (isPhoneAccount2) {
585
+ resetPasswordParams = {
586
+ type: "phone",
587
+ target: {
588
+ phone: account.phone,
589
+ country_calling_code: account.country_calling_code
590
+ },
591
+ password,
592
+ code
593
+ };
594
+ } else {
595
+ resetPasswordParams = {
596
+ type: "email",
597
+ target: {
598
+ email: account
599
+ },
600
+ password,
601
+ code
602
+ };
603
+ }
604
+ const res = await registerAndLogin.resetPassword(resetPasswordParams);
605
+ if ((res == null ? void 0 : res.code) !== 200) {
606
+ throw new Error((res == null ? void 0 : res.message) || "密码重置失败");
607
+ }
608
+ }
609
+ handleCloseForgotPassword();
610
+ const isPhoneAccount = typeof account === "object" && "phone" in account;
611
+ if (isPhoneAccount) {
612
+ const phoneMethod = config.loginMethods.find((method) => method.type === "phone");
613
+ if (phoneMethod) {
614
+ setCurrentLoginMethod(phoneMethod);
615
+ setCurrentVerificationMethod(phoneMethod.verificationMethods[0]);
616
+ }
617
+ form.setFieldsValue({ phone: account });
618
+ setEnteredAccount(account);
619
+ } else {
620
+ const emailMethod = config.loginMethods.find((method) => method.type === "email");
621
+ if (emailMethod) {
622
+ setCurrentLoginMethod(emailMethod);
623
+ setCurrentVerificationMethod(emailMethod.verificationMethods[0]);
624
+ }
625
+ form.setFieldsValue({ email: account });
626
+ setEnteredAccount(account);
627
+ }
628
+ setLoginStep("account");
629
+ } catch (error) {
630
+ import_antd.message.error((error == null ? void 0 : error.message) || "密码重置失败");
631
+ } finally {
632
+ setLoading(false);
633
+ }
634
+ };
635
+ const handleEmailLinkResetPassword = async (account, password, code) => {
636
+ try {
637
+ setLoading(true);
638
+ if (registerAndLogin) {
639
+ const res = await registerAndLogin.resetPasswordByCode({
640
+ code: config.emailLinkVerification.code,
641
+ password
642
+ });
643
+ if ((res == null ? void 0 : res.code) !== 200) {
644
+ throw new Error((res == null ? void 0 : res.message) || "密码重置失败");
645
+ }
646
+ }
647
+ handleCloseForgotPassword();
648
+ setEmailLinkVerifyStatus(null);
649
+ import_antd.message.success("密码重置成功");
650
+ } catch (error) {
651
+ import_antd.message.error((error == null ? void 0 : error.message) || "密码重置失败");
652
+ throw error;
653
+ } finally {
654
+ setLoading(false);
655
+ }
656
+ };
657
+ const handleGuestLoginInternal = async () => {
658
+ try {
659
+ setLoading(true);
660
+ if (registerAndLogin) {
661
+ const result = await registerAndLogin.guestLogin();
662
+ if (result.code === 200) {
663
+ import_antd.message.success(import_utils.locales.getText("pisell-login2-login-success"));
664
+ const loginMethodInfo = {
665
+ type: "guest",
666
+ verificationMethod: null,
667
+ timestamp: Date.now()
668
+ };
669
+ storage.set("pisell_last_login_method", JSON.stringify(loginMethodInfo));
670
+ onLogin == null ? void 0 : onLogin(
671
+ result.data,
672
+ "guest",
673
+ {
674
+ account: "guest",
675
+ password: void 0
676
+ },
677
+ config.channel
678
+ );
679
+ } else {
680
+ import_antd.message.error(
681
+ result.message || import_utils.locales.getText("pisell-login2-login-failed")
682
+ );
683
+ }
684
+ }
685
+ } catch (error) {
686
+ console.error("Guest login error:", error);
687
+ import_antd.message.error(import_utils.locales.getText("pisell-login2-login-failed"));
688
+ } finally {
689
+ setLoading(false);
690
+ }
691
+ };
692
+ const { run: handleGuestLogin } = (0, import_ahooks.useDebounceFn)(handleGuestLoginInternal, {
693
+ wait: 200,
694
+ leading: true,
695
+ trailing: false
696
+ });
697
+ const oauthProviders = (0, import_react.useMemo)(() => {
698
+ return loginMethods.filter(
699
+ (method) => ["google", "facebook", "apple", "guest"].includes(method.type)
700
+ ).map((method) => {
701
+ const isLast = isLastLoginMethod(method.type);
702
+ const commonConfig = {
703
+ className: (0, import_classnames.default)("login2-oauth-button", method.type, {
704
+ "has-last-login-badge": isLast
705
+ }),
706
+ badge: isLast ? import_utils.locales.getText("pisell-login2-last-login-badge") : void 0,
707
+ badgeClassName: "last-login-badge"
708
+ };
709
+ switch (method.type) {
710
+ case "google":
711
+ return {
712
+ key: "google",
713
+ label: /* @__PURE__ */ import_react.default.createElement("span", null, import_utils.locales.getText("pisell-login2-continue-with"), " Google"),
714
+ icon: /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-google" }),
715
+ onClick: () => handleOAuthClick("google"),
716
+ ...commonConfig
717
+ };
718
+ case "facebook":
719
+ return {
720
+ key: "facebook",
721
+ label: /* @__PURE__ */ import_react.default.createElement("span", null, import_utils.locales.getText("pisell-login2-continue-with"), " Facebook"),
722
+ icon: /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-facebook" }),
723
+ onClick: () => handleOAuthClick("facebook"),
724
+ ...commonConfig
725
+ };
726
+ case "apple":
727
+ return {
728
+ key: "apple",
729
+ label: /* @__PURE__ */ import_react.default.createElement("span", null, import_utils.locales.getText("pisell-login2-continue-with"), " Apple"),
730
+ icon: /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-apple" }),
731
+ onClick: () => handleOAuthClick("apple"),
732
+ ...commonConfig
733
+ };
734
+ case "guest":
735
+ return {
736
+ key: "guest",
737
+ label: import_utils.locales.getText("pisell-login2-login-as-guest"),
738
+ icon: /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-user-01" }),
739
+ onClick: handleGuestLogin,
740
+ ...commonConfig
741
+ };
742
+ default:
743
+ return null;
744
+ }
745
+ }).filter(Boolean);
746
+ }, [handleGuestLogin, handleOAuthClick, isLastLoginMethod, loginMethods]);
747
+ const handleLoginInternal = async () => {
748
+ var _a2;
749
+ try {
750
+ setLoading(true);
751
+ const values = await form.validateFields();
752
+ const accountFieldName = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
753
+ const account = values[accountFieldName] || values.account;
754
+ const loginData = {
755
+ account,
756
+ password: currentVerificationMethod === "password" ? values.password : void 0,
757
+ verification_code: currentVerificationMethod === "verification_code" ? values.verification_code : void 0,
758
+ remember_me: values.remember_me
759
+ };
760
+ const method = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) || "email";
761
+ let result;
762
+ if (registerAndLogin) {
763
+ if (method === "email") {
764
+ if (currentVerificationMethod === "password") {
765
+ result = await registerAndLogin.emailPasswordLogin({
766
+ email: account,
767
+ password: values.password
768
+ });
769
+ } else {
770
+ result = await registerAndLogin.emailCodeLogin({
771
+ email: account,
772
+ code: values.verification_code
773
+ });
774
+ }
775
+ } else if (method === "phone") {
776
+ let phoneData;
777
+ if (typeof account === "string") {
778
+ phoneData = {
779
+ phone: account,
780
+ country_calling_code: ((_a2 = countries.find((country) => country.value === account)) == null ? void 0 : _a2.calling_code) || ""
781
+ };
782
+ } else {
783
+ phoneData = account;
784
+ }
785
+ if (currentVerificationMethod === "password") {
786
+ result = await registerAndLogin.phonePasswordLogin({
787
+ phone: phoneData.phone,
788
+ country_calling_code: phoneData.country_calling_code,
789
+ password: values.password
790
+ });
791
+ } else {
792
+ result = await registerAndLogin.phoneCodeLogin({
793
+ phone: phoneData.phone,
794
+ country_calling_code: phoneData.country_calling_code,
795
+ code: values.verification_code
796
+ });
797
+ }
798
+ }
799
+ if ((result == null ? void 0 : result.code) !== 200) {
800
+ throw new Error(
801
+ (result == null ? void 0 : result.message) || import_utils.locales.getText("pisell-login2-login-failed")
802
+ );
803
+ }
804
+ }
805
+ await (onLogin == null ? void 0 : onLogin(result.data, method, loginData, config.channel));
806
+ const loginMethodInfo = {
807
+ type: method,
808
+ verificationMethod: currentVerificationMethod,
809
+ timestamp: Date.now()
810
+ };
811
+ storage.set("pisell_last_login_method", JSON.stringify(loginMethodInfo));
812
+ if (values.remember_me && account) {
813
+ storage.set("login_account", JSON.stringify(account));
814
+ storage.set("login_remember_me", "true");
815
+ if (currentVerificationMethod === "password") {
816
+ storage.set("login_password", values.password);
817
+ }
818
+ setEnteredAccount(account);
819
+ } else {
820
+ storage.remove("login_account");
821
+ storage.remove("login_remember_me");
822
+ storage.remove("login_password");
823
+ }
824
+ import_antd.message.success(import_utils.locales.getText("pisell-login2-login-success"));
825
+ } catch (error) {
826
+ if (error.errorFields) {
827
+ return;
828
+ }
829
+ import_antd.message.error(
830
+ (error == null ? void 0 : error.message) || import_utils.locales.getText("pisell-login2-login-failed")
831
+ );
832
+ } finally {
833
+ setLoading(false);
834
+ }
835
+ };
836
+ const { run: handleLogin } = (0, import_ahooks.useDebounceFn)(handleLoginInternal, {
837
+ wait: 1e3,
838
+ leading: true,
839
+ trailing: false
840
+ });
841
+ const handleOAuthClickInternal = async (provider) => {
842
+ var _a2, _b2;
843
+ try {
844
+ setLoading(true);
845
+ if (provider === "facebook") {
846
+ const fbConfig = (_a2 = config == null ? void 0 : config.loginMethods) == null ? void 0 : _a2.find((n) => n.type === "facebook");
847
+ const token = fbConfig == null ? void 0 : fbConfig.appId;
848
+ if (token) {
849
+ const res = await registerAndLogin.loginWithFacebook(token);
850
+ if (res.status) {
851
+ onLogin == null ? void 0 : onLogin(res.data, "facebook", { account: "", password: "" }, config.channel);
852
+ }
853
+ } else {
854
+ throw new Error("Facebook app_id not configured");
855
+ }
856
+ } else if (provider === "apple") {
857
+ const appleConfig = (_b2 = config == null ? void 0 : config.loginMethods) == null ? void 0 : _b2.find((n) => n.type === "apple");
858
+ const token = appleConfig == null ? void 0 : appleConfig.clientId;
859
+ if (token) {
860
+ const res = await registerAndLogin.loginWithApple(token);
861
+ onLogin == null ? void 0 : onLogin(res.data, "apple", { account: "", password: "" }, config.channel);
862
+ } else {
863
+ throw new Error("Apple client_id not configured");
864
+ }
865
+ } else {
866
+ await (onOAuthLogin == null ? void 0 : onOAuthLogin(provider, config.channel));
867
+ }
868
+ } catch (error) {
869
+ if (error.message === "facebook_login_cancel") {
870
+ return import_antd.message.error(import_utils.locales.getText("pisell-register2-facebook-login-canceled"));
871
+ }
872
+ import_antd.message.error(
873
+ (error == null ? void 0 : error.message) || import_utils.locales.getText("pisell-login2-login-failed")
874
+ );
875
+ } finally {
876
+ setLoading(false);
877
+ }
878
+ };
879
+ const { run: handleOAuthClick } = (0, import_ahooks.useDebounceFn)(handleOAuthClickInternal, {
880
+ wait: 200,
881
+ leading: true,
882
+ trailing: false
883
+ });
884
+ const renderMainLoginForm = () => {
885
+ var _a2, _b2, _c2, _d2, _e2, _f2, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
886
+ if (!currentLoginMethod) return null;
887
+ const { type } = currentLoginMethod;
888
+ if (type === "google" || type === "facebook" || type === "apple" || type === "guest") {
889
+ return null;
890
+ }
891
+ const hasEmailOrPhoneMethod = loginMethods.some(
892
+ (method) => method.type === "email" || method.type === "phone"
893
+ );
894
+ if (!hasEmailOrPhoneMethod) {
895
+ return null;
896
+ }
897
+ const isEmail = type === "email";
898
+ const isPhone = type === "phone";
899
+ const accountFieldName = isEmail ? "email" : "phone";
900
+ const getAccountValue = (values) => {
901
+ if (values) {
902
+ return values[accountFieldName] || values.account;
903
+ }
904
+ return form.getFieldValue(accountFieldName) || form.getFieldValue("account");
905
+ };
906
+ const accountLabel = isEmail ? ((_c2 = (_b2 = (_a2 = config.ui) == null ? void 0 : _a2.formLabels) == null ? void 0 : _b2.email) == null ? void 0 : _c2.show) !== false ? ((_f2 = (_e2 = (_d2 = config.ui) == null ? void 0 : _d2.formLabels) == null ? void 0 : _e2.email) == null ? void 0 : _f2.text) || import_utils.locales.getText("pisell-login2-email-label") : void 0 : ((_i = (_h = (_g = config.ui) == null ? void 0 : _g.formLabels) == null ? void 0 : _h.phone) == null ? void 0 : _i.show) !== false ? ((_l = (_k = (_j = config.ui) == null ? void 0 : _j.formLabels) == null ? void 0 : _k.phone) == null ? void 0 : _l.text) || import_utils.locales.getText("pisell-login2-phone-label") : void 0;
907
+ const accountPlaceholder = isEmail ? import_utils.locales.getText("pisell-login2-email-placeholder") : import_utils.locales.getText("pisell-login2-phone-placeholder");
908
+ const accountRules = isEmail ? [
909
+ {
910
+ required: true,
911
+ message: import_utils.locales.getText("pisell-login2-email-required")
912
+ },
913
+ {
914
+ type: "email",
915
+ message: import_utils.locales.getText("pisell-login2-email-invalid")
916
+ }
917
+ ] : (0, import_phoneValidation.createPhoneValidationRules)(import_utils.locales.getText, true);
918
+ const useStepByStep = (currentLoginMethod == null ? void 0 : currentLoginMethod.stepByStep) && currentVerificationMethod === "password";
919
+ if (useStepByStep) {
920
+ const isPasswordStep = loginStep === "password";
921
+ const showPasswordField = isPasswordStep;
922
+ const handleFormSubmit = (e) => {
923
+ e == null ? void 0 : e.preventDefault();
924
+ if (isPasswordStep) {
925
+ handleLogin();
926
+ } else {
927
+ handleContinueWithAccount();
928
+ }
929
+ };
930
+ return /* @__PURE__ */ import_react.default.createElement(
931
+ import_antd.Form,
932
+ {
933
+ form,
934
+ layout: "vertical",
935
+ className: "login2-form",
936
+ size: "large"
937
+ },
938
+ (isEmail || isPhone) && !showPasswordField && /* @__PURE__ */ import_react.default.createElement("div", { style: { position: "absolute", left: "-9999px", opacity: 0, pointerEvents: "none" } }, /* @__PURE__ */ import_react.default.createElement(
939
+ "input",
940
+ {
941
+ type: "text",
942
+ name: "username",
943
+ autoComplete: "username",
944
+ tabIndex: -1,
945
+ readOnly: true,
946
+ "aria-hidden": "true"
947
+ }
948
+ )),
949
+ showPasswordField && /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-account-show-text-edit" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "login2-account-show-text-edit-text" }, isPhone && `+${(_m = getAccountValue()) == null ? void 0 : _m.country_calling_code}${(_n = getAccountValue()) == null ? void 0 : _n.phone}` || "", isEmail && getAccountValue() || ""), /* @__PURE__ */ import_react.default.createElement("span", { className: "login2-account-show-text-edit-icon", onClick: handleBackToAccount }, /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-edit-05" }))),
950
+ /* @__PURE__ */ import_react.default.createElement(
951
+ import_antd.Form.Item,
952
+ {
953
+ style: { display: showPasswordField ? "none" : "block" },
954
+ label: accountLabel,
955
+ name: isEmail ? "email" : "phone",
956
+ rules: accountRules,
957
+ validateTrigger: ["onBlur", "onSubmit"],
958
+ className: isPhone ? "phone-input-form-item" : ""
959
+ },
960
+ isPhone ? /* @__PURE__ */ import_react.default.createElement(
961
+ import_PhoneInput.default,
962
+ {
963
+ size: "large",
964
+ placeholder: accountPlaceholder,
965
+ className: "login2-phone-input",
966
+ countries,
967
+ valueFormat: "object",
968
+ value: isPasswordStep ? enteredAccount : getAccountValue() || void 0,
969
+ onChange: (value) => {
970
+ if (isPasswordStep) {
971
+ setEnteredAccount(value);
972
+ }
973
+ form.setFieldsValue({ [accountFieldName]: value });
974
+ }
975
+ }
976
+ ) : /* @__PURE__ */ import_react.default.createElement(
977
+ import_materials.Input,
978
+ {
979
+ size: "large",
980
+ placeholder: accountPlaceholder,
981
+ className: "login2-input",
982
+ type: "email",
983
+ autoComplete: "email",
984
+ value: getAccountValue() || enteredAccount || "",
985
+ onChange: (e) => {
986
+ const newValue = e.target.value;
987
+ if (isPasswordStep) {
988
+ setEnteredAccount(newValue);
989
+ }
990
+ form.setFieldsValue({ [accountFieldName]: newValue });
991
+ },
992
+ onKeyDown: (e) => {
993
+ if (e.key === "Enter" && !e.shiftKey && !e.ctrlKey && !e.metaKey) {
994
+ e.preventDefault();
995
+ handleFormSubmit(e);
996
+ }
997
+ }
998
+ }
999
+ )
1000
+ ),
1001
+ /* @__PURE__ */ import_react.default.createElement(
1002
+ import_antd.Form.Item,
1003
+ {
1004
+ style: { display: showPasswordField ? "block" : "none" },
1005
+ label: ((_q = (_p = (_o = config.ui) == null ? void 0 : _o.formLabels) == null ? void 0 : _p.password) == null ? void 0 : _q.show) !== false ? ((_t = (_s = (_r = config.ui) == null ? void 0 : _r.formLabels) == null ? void 0 : _s.password) == null ? void 0 : _t.text) || import_utils.locales.getText("pisell-login2-password-label") : void 0,
1006
+ name: "password",
1007
+ validateTrigger: ["onBlur", "onSubmit"],
1008
+ rules: passwordValidationRules
1009
+ },
1010
+ /* @__PURE__ */ import_react.default.createElement(
1011
+ import_materials.Input.Password,
1012
+ {
1013
+ size: "large",
1014
+ placeholder: import_utils.locales.getText(
1015
+ "pisell-login2-password-placeholder"
1016
+ ),
1017
+ className: "login2-input",
1018
+ name: "password",
1019
+ autoComplete: "current-password",
1020
+ type: "password",
1021
+ autoFocus: hasStoredCredentials,
1022
+ onKeyDown: (e) => {
1023
+ if (e.key === "Enter" && !e.shiftKey && !e.ctrlKey && !e.metaKey) {
1024
+ e.preventDefault();
1025
+ handleFormSubmit(e);
1026
+ }
1027
+ }
1028
+ }
1029
+ )
1030
+ ),
1031
+ showPasswordField && /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-form-footer" }, /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { name: "remember_me", valuePropName: "checked", noStyle: true }, /* @__PURE__ */ import_react.default.createElement(import_materials.Checkbox, { defaultChecked: rememberMe }, import_utils.locales.getText("pisell-login2-remember-me"))), /* @__PURE__ */ import_react.default.createElement("a", { className: "login2-link", onClick: handleForgotPasswordClick }, import_utils.locales.getText("pisell-login2-forgot-password"))),
1032
+ /* @__PURE__ */ import_react.default.createElement(
1033
+ import_materials.Button,
1034
+ {
1035
+ type: "primary",
1036
+ size: "large",
1037
+ block: true,
1038
+ htmlType: "button",
1039
+ loading,
1040
+ onClick: handleFormSubmit,
1041
+ className: "login2-submit-button"
1042
+ },
1043
+ isPasswordStep ? import_utils.locales.getText("pisell-login2-login-button") : isEmail ? import_utils.locales.getText("pisell-login2-continue-with-email") : import_utils.locales.getText("pisell-login2-continue-with-phone")
1044
+ ),
1045
+ showPasswordField && /* @__PURE__ */ import_react.default.createElement(
1046
+ import_materials.Button,
1047
+ {
1048
+ size: "large",
1049
+ block: true,
1050
+ onClick: handleBackToAccount,
1051
+ className: "login2-back-button"
1052
+ },
1053
+ import_utils.locales.getText("pisell-login2-back")
1054
+ )
1055
+ );
1056
+ }
1057
+ if (currentVerificationMethod === "verification_code" && loginStep === "account") {
1058
+ const handleFormSubmit = (e) => {
1059
+ e == null ? void 0 : e.preventDefault();
1060
+ handleSendCode();
1061
+ };
1062
+ return /* @__PURE__ */ import_react.default.createElement(
1063
+ import_antd.Form,
1064
+ {
1065
+ form,
1066
+ layout: "vertical",
1067
+ className: "login2-form",
1068
+ size: "large"
1069
+ },
1070
+ isEmail && /* @__PURE__ */ import_react.default.createElement("div", { style: { position: "absolute", left: "-9999px", opacity: 0, pointerEvents: "none" } }, /* @__PURE__ */ import_react.default.createElement(
1071
+ "input",
1072
+ {
1073
+ type: "text",
1074
+ name: "username",
1075
+ autoComplete: "username",
1076
+ tabIndex: -1,
1077
+ readOnly: true,
1078
+ "aria-hidden": "true"
1079
+ }
1080
+ )),
1081
+ /* @__PURE__ */ import_react.default.createElement(
1082
+ import_antd.Form.Item,
1083
+ {
1084
+ label: accountLabel,
1085
+ name: accountFieldName,
1086
+ rules: accountRules,
1087
+ className: isPhone ? "phone-input-form-item" : "",
1088
+ validateTrigger: ["onBlur", "onSubmit"]
1089
+ },
1090
+ isPhone ? /* @__PURE__ */ import_react.default.createElement(
1091
+ import_PhoneInput.default,
1092
+ {
1093
+ size: "large",
1094
+ placeholder: accountPlaceholder,
1095
+ className: "login2-phone-input",
1096
+ countries,
1097
+ valueFormat: "object",
1098
+ onKeyDown: (e) => {
1099
+ if (e.key === "Enter" && !e.shiftKey && !e.ctrlKey && !e.metaKey) {
1100
+ e.preventDefault();
1101
+ handleFormSubmit(e);
1102
+ }
1103
+ }
1104
+ }
1105
+ ) : /* @__PURE__ */ import_react.default.createElement(
1106
+ import_materials.Input,
1107
+ {
1108
+ size: "large",
1109
+ placeholder: accountPlaceholder,
1110
+ className: "login2-input",
1111
+ type: "email",
1112
+ autoComplete: "email",
1113
+ onKeyDown: (e) => {
1114
+ if (e.key === "Enter" && !e.shiftKey && !e.ctrlKey && !e.metaKey) {
1115
+ e.preventDefault();
1116
+ handleFormSubmit(e);
1117
+ }
1118
+ }
1119
+ }
1120
+ )
1121
+ ),
1122
+ /* @__PURE__ */ import_react.default.createElement(
1123
+ import_materials.Button,
1124
+ {
1125
+ type: "primary",
1126
+ size: "large",
1127
+ block: true,
1128
+ htmlType: "button",
1129
+ loading,
1130
+ onClick: handleFormSubmit,
1131
+ className: "login2-submit-button"
1132
+ },
1133
+ isEmail ? import_utils.locales.getText("pisell-login2-continue-with-email") : import_utils.locales.getText("pisell-login2-continue-with-phone")
1134
+ )
1135
+ );
1136
+ }
1137
+ return /* @__PURE__ */ import_react.default.createElement(
1138
+ import_antd.Form,
1139
+ {
1140
+ form,
1141
+ layout: "vertical",
1142
+ className: "login2-form",
1143
+ size: "large",
1144
+ onFinish: handleLogin
1145
+ },
1146
+ isEmail && /* @__PURE__ */ import_react.default.createElement("div", { style: { position: "absolute", left: "-9999px", opacity: 0, pointerEvents: "none" } }, /* @__PURE__ */ import_react.default.createElement(
1147
+ "input",
1148
+ {
1149
+ type: "text",
1150
+ name: "username",
1151
+ autoComplete: "username",
1152
+ tabIndex: -1,
1153
+ readOnly: true,
1154
+ "aria-hidden": "true"
1155
+ }
1156
+ )),
1157
+ isEmail ? /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { label: accountLabel, name: accountFieldName, rules: accountRules, validateTrigger: ["onBlur", "onSubmit"] }, /* @__PURE__ */ import_react.default.createElement(
1158
+ import_materials.Input,
1159
+ {
1160
+ size: "large",
1161
+ placeholder: accountPlaceholder,
1162
+ className: "login2-input",
1163
+ type: "email",
1164
+ autoComplete: "email",
1165
+ value: getAccountValue() || enteredAccount || "",
1166
+ onChange: (e) => {
1167
+ const newValue = e.target.value;
1168
+ setEnteredAccount(newValue);
1169
+ form.setFieldsValue({ [accountFieldName]: newValue });
1170
+ }
1171
+ }
1172
+ )) : /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { label: accountLabel, name: accountFieldName, rules: accountRules, validateTrigger: ["onBlur", "onSubmit"] }, /* @__PURE__ */ import_react.default.createElement(
1173
+ import_PhoneInput.default,
1174
+ {
1175
+ size: "large",
1176
+ placeholder: accountPlaceholder,
1177
+ className: "login2-phone-input",
1178
+ countries,
1179
+ valueFormat: "object"
1180
+ }
1181
+ )),
1182
+ /* @__PURE__ */ import_react.default.createElement(
1183
+ import_antd.Form.Item,
1184
+ {
1185
+ label: ((_w = (_v = (_u = config.ui) == null ? void 0 : _u.formLabels) == null ? void 0 : _v.password) == null ? void 0 : _w.show) !== false ? ((_z = (_y = (_x = config.ui) == null ? void 0 : _x.formLabels) == null ? void 0 : _y.password) == null ? void 0 : _z.text) || import_utils.locales.getText("pisell-login2-password-label") : void 0,
1186
+ name: "password",
1187
+ rules: passwordValidationRules,
1188
+ validateTrigger: ["onBlur", "onSubmit"]
1189
+ },
1190
+ /* @__PURE__ */ import_react.default.createElement(
1191
+ import_materials.Input.Password,
1192
+ {
1193
+ size: "large",
1194
+ placeholder: import_utils.locales.getText("pisell-login2-password-placeholder"),
1195
+ className: "login2-input",
1196
+ name: "password",
1197
+ autoComplete: "current-password",
1198
+ type: "password"
1199
+ }
1200
+ )
1201
+ ),
1202
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-form-footer" }, /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { name: "remember_me", valuePropName: "checked", noStyle: true }, /* @__PURE__ */ import_react.default.createElement(import_materials.Checkbox, null, import_utils.locales.getText("pisell-login2-remember-me"))), currentVerificationMethod === "password" && /* @__PURE__ */ import_react.default.createElement("a", { className: "login2-link", onClick: handleForgotPasswordClick }, import_utils.locales.getText("pisell-login2-forgot-password"))),
1203
+ /* @__PURE__ */ import_react.default.createElement(
1204
+ import_materials.Button,
1205
+ {
1206
+ type: "primary",
1207
+ size: "large",
1208
+ block: true,
1209
+ htmlType: "submit",
1210
+ loading,
1211
+ onClick: handleLogin,
1212
+ className: "login2-submit-button"
1213
+ },
1214
+ import_utils.locales.getText("pisell-login2-login-button")
1215
+ )
1216
+ );
1217
+ };
1218
+ const renderSwitchOptions = () => {
1219
+ if (!currentLoginMethod) return null;
1220
+ const primaryMethod = loginMethods[0];
1221
+ const currentIsFormMethod = currentLoginMethod.type === "email" || currentLoginMethod.type === "phone";
1222
+ const primaryIsFormMethod = (primaryMethod == null ? void 0 : primaryMethod.type) === "email" || (primaryMethod == null ? void 0 : primaryMethod.type) === "phone";
1223
+ const shouldUseFormLayout = currentIsFormMethod || primaryIsFormMethod;
1224
+ const verificationSwitchButtons = [];
1225
+ if (currentIsFormMethod) {
1226
+ (currentLoginMethod.verificationMethods || []).filter((method) => method !== currentVerificationMethod).forEach((method) => {
1227
+ if (method === "verification_code") {
1228
+ const text = currentLoginMethod.type === "email" ? import_utils.locales.getText("pisell-login2-switch-to-email-code") : import_utils.locales.getText("pisell-login2-switch-to-sms-code");
1229
+ verificationSwitchButtons.push(
1230
+ /* @__PURE__ */ import_react.default.createElement(
1231
+ "button",
1232
+ {
1233
+ key: "switch-to-code",
1234
+ className: "login2-switch-option-button",
1235
+ onClick: () => switchVerificationMethod("verification_code")
1236
+ },
1237
+ currentLoginMethod.type === "email" ? /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-mail-01" }) : /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-phone" }),
1238
+ /* @__PURE__ */ import_react.default.createElement("span", { className: "option-text" }, text)
1239
+ )
1240
+ );
1241
+ } else {
1242
+ verificationSwitchButtons.push(
1243
+ /* @__PURE__ */ import_react.default.createElement(
1244
+ "button",
1245
+ {
1246
+ key: "switch-to-password",
1247
+ className: "login2-switch-option-button",
1248
+ onClick: () => switchVerificationMethod("password")
1249
+ },
1250
+ /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-key-01" }),
1251
+ /* @__PURE__ */ import_react.default.createElement("span", { className: "option-text" }, import_utils.locales.getText("pisell-login2-switch-to-password"))
1252
+ )
1253
+ );
1254
+ }
1255
+ });
1256
+ }
1257
+ const emailPhoneSwitchButtons = [];
1258
+ loginMethods.forEach((method, index) => {
1259
+ if (method.type === "email" || method.type === "phone") {
1260
+ if (method.type === currentLoginMethod.type) return;
1261
+ const isLast = isLastLoginMethod(method.type);
1262
+ const className2 = (0, import_classnames.default)("login2-switch-option-button", {
1263
+ "has-last-login-badge": isLast
1264
+ });
1265
+ emailPhoneSwitchButtons.push(
1266
+ /* @__PURE__ */ import_react.default.createElement(
1267
+ "button",
1268
+ {
1269
+ key: `${method.type}-${index}`,
1270
+ className: className2,
1271
+ onClick: () => switchLoginMethod(method)
1272
+ },
1273
+ isLast && /* @__PURE__ */ import_react.default.createElement("div", { className: "last-login-badge" }, import_utils.locales.getText("pisell-login2-last-login-badge")),
1274
+ /* @__PURE__ */ import_react.default.createElement(
1275
+ import_materials2.Iconfont,
1276
+ {
1277
+ type: method.type === "email" ? "pisell2-mail-01" : "pisell2-phone"
1278
+ }
1279
+ ),
1280
+ /* @__PURE__ */ import_react.default.createElement("span", { className: "option-text" }, method.type === "email" ? import_utils.locales.getText("pisell-login2-switch-to-email") : import_utils.locales.getText("pisell-login2-switch-to-phone"))
1281
+ )
1282
+ );
1283
+ }
1284
+ });
1285
+ const nonOauthButtons = [
1286
+ ...verificationSwitchButtons,
1287
+ ...emailPhoneSwitchButtons
1288
+ ];
1289
+ const registerPrompt = onSwitchToRegister && /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-register-prompt" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "register-prompt-text" }, import_utils.locales.getText("pisell-login2-no-account")), /* @__PURE__ */ import_react.default.createElement(
1290
+ "button",
1291
+ {
1292
+ className: "register-prompt-link",
1293
+ onClick: onSwitchToRegister
1294
+ },
1295
+ import_utils.locales.getText("pisell-login2-register-link")
1296
+ ));
1297
+ if (!nonOauthButtons.length && !oauthProviders.length) {
1298
+ return registerPrompt;
1299
+ }
1300
+ if (shouldUseFormLayout) {
1301
+ const groups = [];
1302
+ if (nonOauthButtons.length > 0) {
1303
+ groups.push(
1304
+ /* @__PURE__ */ import_react.default.createElement("div", { key: "non-oauth", className: "login2-switch-options" }, nonOauthButtons)
1305
+ );
1306
+ }
1307
+ if (oauthProviders.length > 0) {
1308
+ groups.push(
1309
+ /* @__PURE__ */ import_react.default.createElement(
1310
+ import_OAuthButtonGroup.default,
1311
+ {
1312
+ key: "oauth",
1313
+ providers: oauthProviders,
1314
+ wrapperClassName: "login2-oauth-buttons",
1315
+ buttonClassName: "login2-oauth-button",
1316
+ gap: 12
1317
+ }
1318
+ )
1319
+ );
1320
+ }
1321
+ if (!groups.length) {
1322
+ return registerPrompt;
1323
+ }
1324
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-divider" }, import_utils.locales.getText("pisell-login2-or")), /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-switch-groups" }, groups), registerPrompt);
1325
+ }
1326
+ const primaryProvider = oauthProviders.find(
1327
+ (provider) => provider.key === (primaryMethod == null ? void 0 : primaryMethod.type)
1328
+ );
1329
+ const secondaryOauthProviders = oauthProviders.filter(
1330
+ (provider) => provider.key !== (primaryMethod == null ? void 0 : primaryMethod.type)
1331
+ );
1332
+ const hasSecondaryButtons = nonOauthButtons.length > 0 || secondaryOauthProviders.length > 0;
1333
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-switch-groups" }, primaryProvider ? /* @__PURE__ */ import_react.default.createElement(
1334
+ import_OAuthButtonGroup.default,
1335
+ {
1336
+ providers: [primaryProvider],
1337
+ wrapperClassName: "login2-oauth-buttons",
1338
+ buttonClassName: "login2-oauth-button",
1339
+ gap: 12
1340
+ }
1341
+ ) : /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-switch-options" }, /* @__PURE__ */ import_react.default.createElement(
1342
+ "button",
1343
+ {
1344
+ key: "primary-fallback",
1345
+ className: "login2-switch-option-button",
1346
+ onClick: () => {
1347
+ if ((primaryMethod == null ? void 0 : primaryMethod.type) === "guest") {
1348
+ handleGuestLogin();
1349
+ } else if ((primaryMethod == null ? void 0 : primaryMethod.type) === "google" || (primaryMethod == null ? void 0 : primaryMethod.type) === "facebook" || (primaryMethod == null ? void 0 : primaryMethod.type) === "apple") {
1350
+ handleOAuthClick(primaryMethod.type);
1351
+ }
1352
+ }
1353
+ },
1354
+ /* @__PURE__ */ import_react.default.createElement(
1355
+ import_materials2.Iconfont,
1356
+ {
1357
+ type: (primaryMethod == null ? void 0 : primaryMethod.type) === "guest" ? "pisell2-user-01" : (primaryMethod == null ? void 0 : primaryMethod.type) === "google" ? "pisell2-google" : (primaryMethod == null ? void 0 : primaryMethod.type) === "facebook" ? "pisell2-facebook" : "pisell2-apple"
1358
+ }
1359
+ ),
1360
+ /* @__PURE__ */ import_react.default.createElement("span", { className: "option-text" }, (primaryMethod == null ? void 0 : primaryMethod.type) === "guest" ? import_utils.locales.getText("pisell-login2-login-as-guest") : `${import_utils.locales.getText("pisell-login2-continue-with")} ${(primaryMethod == null ? void 0 : primaryMethod.type) ? primaryMethod.type.charAt(0).toUpperCase() + primaryMethod.type.slice(1) : ""}`)
1361
+ )), hasSecondaryButtons && /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-divider" }, import_utils.locales.getText("pisell-login2-or")), nonOauthButtons.length > 0 && /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-switch-options" }, nonOauthButtons), secondaryOauthProviders.length > 0 && /* @__PURE__ */ import_react.default.createElement(
1362
+ import_OAuthButtonGroup.default,
1363
+ {
1364
+ providers: secondaryOauthProviders,
1365
+ wrapperClassName: "login2-oauth-buttons",
1366
+ buttonClassName: "login2-oauth-button",
1367
+ gap: 12
1368
+ }
1369
+ ))), registerPrompt);
1370
+ };
1371
+ if (!visible) {
1372
+ return null;
1373
+ }
1374
+ const { ui } = config;
1375
+ if (isEmailLinkVerification) {
1376
+ if (emailLinkVerifyStatus === "verifying") {
1377
+ return /* @__PURE__ */ import_react.default.createElement(
1378
+ "div",
1379
+ {
1380
+ className: (0, import_classnames.default)("login2-container", className),
1381
+ style: {
1382
+ ...style,
1383
+ "--theme-color": (ui == null ? void 0 : ui.themeColor) || "#7F56D9"
1384
+ }
1385
+ },
1386
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-email-link-verifying" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "verifying-content" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "verifying-icon" }, /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "icon-loading", spin: true })), /* @__PURE__ */ import_react.default.createElement("h2", { className: "verifying-title" }, "Verifying your email..."), /* @__PURE__ */ import_react.default.createElement("p", { className: "verifying-desc" }, "Please wait while we verify your email link.")))
1387
+ );
1388
+ }
1389
+ if (emailLinkVerifyStatus === "success") {
1390
+ return /* @__PURE__ */ import_react.default.createElement(
1391
+ "div",
1392
+ {
1393
+ className: (0, import_classnames.default)("login2-container", className),
1394
+ style: {
1395
+ ...style,
1396
+ "--theme-color": (ui == null ? void 0 : ui.themeColor) || "#7F56D9"
1397
+ }
1398
+ },
1399
+ /* @__PURE__ */ import_react.default.createElement(
1400
+ import_SetPassword.default,
1401
+ {
1402
+ scenario: "reset",
1403
+ flowData: {
1404
+ account: resetPasswordUserEmail || "",
1405
+ accountType: "email",
1406
+ verificationMethod: "verification_code"
1407
+ },
1408
+ onSubmit: async (password, confirmPassword) => {
1409
+ try {
1410
+ if (registerAndLogin == null ? void 0 : registerAndLogin.resetPasswordByCode) {
1411
+ const result = await registerAndLogin.resetPasswordByCode({
1412
+ code: config.emailLinkVerification.code,
1413
+ password
1414
+ });
1415
+ if (result.status) {
1416
+ import_antd.message.success("密码重置成功");
1417
+ setEmailLinkVerifyStatus(null);
1418
+ setEmailLinkError("");
1419
+ if (resetPasswordUserEmail) {
1420
+ const emailMethod = config.loginMethods.find((method) => method.type === "email");
1421
+ if (emailMethod) {
1422
+ setCurrentLoginMethod(emailMethod);
1423
+ setCurrentVerificationMethod(emailMethod.verificationMethods[0]);
1424
+ }
1425
+ form.setFieldsValue({ email: resetPasswordUserEmail });
1426
+ setEnteredAccount(resetPasswordUserEmail);
1427
+ setLoginStep("account");
1428
+ }
1429
+ } else {
1430
+ import_antd.message.error(result.message || "密码重置失败");
1431
+ }
1432
+ } else {
1433
+ import_antd.message.error("系统错误,请稍后重试");
1434
+ }
1435
+ } catch (error) {
1436
+ import_antd.message.error((error == null ? void 0 : error.message) || "密码重置失败");
1437
+ }
1438
+ },
1439
+ onBack: () => {
1440
+ setEmailLinkVerifyStatus(null);
1441
+ setEmailLinkError("");
1442
+ },
1443
+ loading
1444
+ }
1445
+ )
1446
+ );
1447
+ }
1448
+ if (emailLinkVerifyStatus === "error") {
1449
+ return /* @__PURE__ */ import_react.default.createElement(
1450
+ "div",
1451
+ {
1452
+ className: (0, import_classnames.default)("login2-container", className),
1453
+ style: {
1454
+ ...style,
1455
+ "--theme-color": (ui == null ? void 0 : ui.themeColor) || "#7F56D9"
1456
+ }
1457
+ },
1458
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-email-link-error" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "error-content" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "error-icon" }, /* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "icon-error" })), /* @__PURE__ */ import_react.default.createElement("h2", { className: "error-title" }, import_utils.locales.getText("pisell-login2-verification-failed-title")), /* @__PURE__ */ import_react.default.createElement("p", { className: "error-desc" }, emailLinkError), /* @__PURE__ */ import_react.default.createElement(
1459
+ import_materials.Button,
1460
+ {
1461
+ type: "primary",
1462
+ size: "large",
1463
+ block: true,
1464
+ className: "login2-error-main-button",
1465
+ onClick: () => {
1466
+ setEmailLinkVerifyStatus(null);
1467
+ setEmailLinkError("");
1468
+ }
1469
+ },
1470
+ import_utils.locales.getText("pisell-login2-login-button")
1471
+ )))
1472
+ );
1473
+ }
1474
+ }
1475
+ if (showForgotPassword) {
1476
+ const accountType = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
1477
+ return /* @__PURE__ */ import_react.default.createElement(
1478
+ "div",
1479
+ {
1480
+ className: (0, import_classnames.default)("login2-container", className),
1481
+ style: {
1482
+ ...style,
1483
+ "--theme-color": (ui == null ? void 0 : ui.themeColor) || "#7F56D9"
1484
+ }
1485
+ },
1486
+ /* @__PURE__ */ import_react.default.createElement(
1487
+ import_ForgotPasswordFlow.default,
1488
+ {
1489
+ initialEmail: enteredAccount,
1490
+ accountType,
1491
+ onSendCode: handleForgotPasswordSendCode,
1492
+ onVerifyCode: handleForgotPasswordVerifyCode,
1493
+ onResetPassword: isEmailLinkVerification ? handleEmailLinkResetPassword : handleForgotPasswordReset,
1494
+ onSendResetLink: handleForgotPasswordSendLink,
1495
+ onBack: handleCloseForgotPassword,
1496
+ loading,
1497
+ countdown,
1498
+ countries
1499
+ }
1500
+ )
1501
+ );
1502
+ }
1503
+ if (loginStep === "code") {
1504
+ const accountType = (currentLoginMethod == null ? void 0 : currentLoginMethod.type) === "email" ? "email" : "phone";
1505
+ return /* @__PURE__ */ import_react.default.createElement(
1506
+ "div",
1507
+ {
1508
+ className: (0, import_classnames.default)("login2-container", className),
1509
+ style: {
1510
+ ...style,
1511
+ "--theme-color": (ui == null ? void 0 : ui.themeColor) || "#7F56D9"
1512
+ }
1513
+ },
1514
+ /* @__PURE__ */ import_react.default.createElement(
1515
+ import_LoginCodeInput.default,
1516
+ {
1517
+ account: typeof enteredAccount === "string" ? enteredAccount : enteredAccount.phone,
1518
+ accountType,
1519
+ codeLength: 4,
1520
+ onSubmit: handleCodeSubmit,
1521
+ onResend: handleSendCode,
1522
+ onBack: handleBackFromCode,
1523
+ countdown,
1524
+ loading,
1525
+ error: codeError,
1526
+ onClearError: () => setCodeError("")
1527
+ }
1528
+ )
1529
+ );
1530
+ }
1531
+ return /* @__PURE__ */ import_react.default.createElement(
1532
+ "div",
1533
+ {
1534
+ className: (0, import_classnames.default)("login2-container", "register2-container", className),
1535
+ style: {
1536
+ ...style,
1537
+ "--theme-color": (ui == null ? void 0 : ui.themeColor) || "#7F56D9"
1538
+ }
1539
+ },
1540
+ /* @__PURE__ */ import_react.default.createElement(import_Header.default, { ui }),
1541
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "login2-content" }, renderMainLoginForm(), renderSwitchOptions()),
1542
+ /* @__PURE__ */ import_react.default.createElement(import_LegalTerms.default, { config: { ...config.legalTerms, mode: "login" } })
1543
+ );
1544
+ };
1545
+ var Login2_default = Login2;